Introduction to Jupyter

Jupyter is a web version of the python shell. It's useful to write text like this, or can also write python code and execute them block by block. It can also be used for other languages like Julia, R, Java, Javascript, and so on (pretty much anything!). This notebook introduces the basic blocks that help us use the notebook.

It provides an interactive interface to be able to run blocks of code and also to write documentation to understand the code.

1. Cells

Jupyter's basic building block is a cell. There are majorly two different types of cells in jupyter:

  • Code cells - Code cells have code which is executed by the kernel. Hence, the also have an output section right underneath the cell.
  • Markdown cells - Markdown cells are parsed into HTML and using markdown stylization.

Focusing on cells: Cells can be selected by clicking on them. The currently focused cell is shown with a blue border. It is also possible to change the focused cell by using the arrow keys.

2. Editing cells

There are two modes that are available on Jupyter notebooks (Similar to vim or emacs):

  • Edit mode - If a cell is in an edit mode, it is possible to type content into it. When a cell is in the edit mode, it has a **green border**.
  • Command mode - If a cell is in the command mode, it can't be edited. But it's easier to move, copy, cut, run, etc. and perform operations on the cell itself. When a cell is in a command mode, it has a **blue border**.

Creating a new cell

To create a new cell, you can either:

  • Choose the "Insert" > "Insert cell below" or "Insert cell above" option in the menubar on the top.
  • Type b to add a cell below the focused cell. Type a to add a cell above the focused cell. This needs to be done in the command mode.

Deleting a cell

To delete a cell, you can either:

  • Choose the "Edit" > "Delete a cell" option in the menubar on the top.
  • Type dd to delete the cell in the command mode. (2 times d)

3. Running Code

Code cells allow you to enter and run code in them, unline markdown cells.

Run a code cell by:

  1. Focus on the cell by clicking on it.
  2. Then, press Shift-Enter or press the button in the toolbar above to run the cell.
# This creates a variable a. Hence, there's no output.
a = 10
print("The value of a is =", a)
The value of a is = 10

There are two other keyboard shortcuts for running code:

  • Alt-Enter runs the current cell and inserts a new cell below the one that was executed.
  • Ctrl-Enter run the current cell and enters the edit mode of the cell to edit it.

You can check if a cell is running by looking on it's left. If it shows In [*]:, it means that the cell is still being run. Once the cell has completed running, it is assigned a number. For example: In [4]:. The number denotes the order in which the cells are run. Hence, if 4 is shown, the cell was the fourth to be run in the notebook.

Code cells show the output of the code below the cell. If there is no output (Like in a = 10) there is no output shown. If there is an error, it shows the error with helpful debugging information instead:

a =
  File "<ipython-input-3-aa268cd80993>", line 1
    a =
       ^
SyntaxError: invalid syntax

4. The Kernel

 

All code is run using a kernel. The kernel is a separate process which links the notebook with the compiler/interpreter of the appropriate type (based on the language). The Kernel can be interrupted or restarted.

When you stop the execution of a kernel, python throws a KeyboardInterrupt exception.

Try running the following cell. It pauses and sleeps for 30 seconds. While it is running, hit the (stop) button in the toolbar above. It should give the KeyboardInterrupt exception:

import time
time.sleep(10)

Restarting the kernels

The kernel maintains the state of a notebook's computations. You can reset this state by restarting the kernel. This is done by clicking on the in the toolbar above. On doing this, all your stored variables will be deleted from the session and will need to be redefined.

5. Output formatting

Handling sys.stdout and sys.stderr

The stdout and stderr streams are displayed as text in the output area.

print("hi, stdout")
from __future__ import print_function
import sys
print('hi, stderr', file=sys.stderr)

Output is asynchronous

All output is displayed asynchronously as it is generated in the Kernel. If you execute the next cell, you will see the output one piece at a time, not all at the end.

import time, sys
for i in range(5):
    print(i)
    time.sleep(0.5)

Large outputs

Beyond a certain point, output will scroll automatically:

for i in range(500):
    print(2**i)
1
2
4
8
16
32
64
128
256
512
1024
2048
4096
8192
16384
32768
65536
131072
262144
524288
1048576
2097152
4194304
8388608
16777216
33554432
67108864
134217728
268435456
536870912
1073741824
2147483648
4294967296
8589934592
17179869184
34359738368
68719476736
137438953472
274877906944
549755813888
1099511627776
2199023255552
4398046511104
8796093022208
17592186044416
35184372088832
70368744177664
140737488355328
281474976710656
562949953421312
1125899906842624
2251799813685248
4503599627370496
9007199254740992
18014398509481984
36028797018963968
72057594037927936
144115188075855872
288230376151711744
576460752303423488
1152921504606846976
2305843009213693952
4611686018427387904
9223372036854775808
18446744073709551616
36893488147419103232
73786976294838206464
147573952589676412928
295147905179352825856
590295810358705651712
1180591620717411303424
2361183241434822606848
4722366482869645213696
9444732965739290427392
18889465931478580854784
37778931862957161709568
75557863725914323419136
151115727451828646838272
302231454903657293676544
604462909807314587353088
1208925819614629174706176
2417851639229258349412352
4835703278458516698824704
9671406556917033397649408
19342813113834066795298816
38685626227668133590597632
77371252455336267181195264
154742504910672534362390528
309485009821345068724781056
618970019642690137449562112
1237940039285380274899124224
2475880078570760549798248448
4951760157141521099596496896
9903520314283042199192993792
19807040628566084398385987584
39614081257132168796771975168
79228162514264337593543950336
158456325028528675187087900672
316912650057057350374175801344
633825300114114700748351602688
1267650600228229401496703205376
2535301200456458802993406410752
5070602400912917605986812821504
10141204801825835211973625643008
20282409603651670423947251286016
40564819207303340847894502572032
81129638414606681695789005144064
162259276829213363391578010288128
324518553658426726783156020576256
649037107316853453566312041152512
1298074214633706907132624082305024
2596148429267413814265248164610048
5192296858534827628530496329220096
10384593717069655257060992658440192
20769187434139310514121985316880384
41538374868278621028243970633760768
83076749736557242056487941267521536
166153499473114484112975882535043072
332306998946228968225951765070086144
664613997892457936451903530140172288
1329227995784915872903807060280344576
2658455991569831745807614120560689152
5316911983139663491615228241121378304
10633823966279326983230456482242756608
21267647932558653966460912964485513216
42535295865117307932921825928971026432
85070591730234615865843651857942052864
170141183460469231731687303715884105728
340282366920938463463374607431768211456
680564733841876926926749214863536422912
1361129467683753853853498429727072845824
2722258935367507707706996859454145691648
5444517870735015415413993718908291383296
10889035741470030830827987437816582766592
21778071482940061661655974875633165533184
43556142965880123323311949751266331066368
87112285931760246646623899502532662132736
174224571863520493293247799005065324265472
348449143727040986586495598010130648530944
696898287454081973172991196020261297061888
1393796574908163946345982392040522594123776
2787593149816327892691964784081045188247552
5575186299632655785383929568162090376495104
11150372599265311570767859136324180752990208
22300745198530623141535718272648361505980416
44601490397061246283071436545296723011960832
89202980794122492566142873090593446023921664
178405961588244985132285746181186892047843328
356811923176489970264571492362373784095686656
713623846352979940529142984724747568191373312
1427247692705959881058285969449495136382746624
2854495385411919762116571938898990272765493248
5708990770823839524233143877797980545530986496
11417981541647679048466287755595961091061972992
22835963083295358096932575511191922182123945984
45671926166590716193865151022383844364247891968
91343852333181432387730302044767688728495783936
182687704666362864775460604089535377456991567872
365375409332725729550921208179070754913983135744
730750818665451459101842416358141509827966271488
1461501637330902918203684832716283019655932542976
2923003274661805836407369665432566039311865085952
5846006549323611672814739330865132078623730171904
11692013098647223345629478661730264157247460343808
23384026197294446691258957323460528314494920687616
46768052394588893382517914646921056628989841375232
93536104789177786765035829293842113257979682750464
187072209578355573530071658587684226515959365500928
374144419156711147060143317175368453031918731001856
748288838313422294120286634350736906063837462003712
1496577676626844588240573268701473812127674924007424
2993155353253689176481146537402947624255349848014848
5986310706507378352962293074805895248510699696029696
11972621413014756705924586149611790497021399392059392
23945242826029513411849172299223580994042798784118784
47890485652059026823698344598447161988085597568237568
95780971304118053647396689196894323976171195136475136
191561942608236107294793378393788647952342390272950272
383123885216472214589586756787577295904684780545900544
766247770432944429179173513575154591809369561091801088
1532495540865888858358347027150309183618739122183602176
3064991081731777716716694054300618367237478244367204352
6129982163463555433433388108601236734474956488734408704
12259964326927110866866776217202473468949912977468817408
24519928653854221733733552434404946937899825954937634816
49039857307708443467467104868809893875799651909875269632
98079714615416886934934209737619787751599303819750539264
196159429230833773869868419475239575503198607639501078528
392318858461667547739736838950479151006397215279002157056
784637716923335095479473677900958302012794430558004314112
1569275433846670190958947355801916604025588861116008628224
3138550867693340381917894711603833208051177722232017256448
6277101735386680763835789423207666416102355444464034512896
12554203470773361527671578846415332832204710888928069025792
25108406941546723055343157692830665664409421777856138051584
50216813883093446110686315385661331328818843555712276103168
100433627766186892221372630771322662657637687111424552206336
200867255532373784442745261542645325315275374222849104412672
401734511064747568885490523085290650630550748445698208825344
803469022129495137770981046170581301261101496891396417650688
1606938044258990275541962092341162602522202993782792835301376
3213876088517980551083924184682325205044405987565585670602752
6427752177035961102167848369364650410088811975131171341205504
12855504354071922204335696738729300820177623950262342682411008
25711008708143844408671393477458601640355247900524685364822016
51422017416287688817342786954917203280710495801049370729644032
102844034832575377634685573909834406561420991602098741459288064
205688069665150755269371147819668813122841983204197482918576128
411376139330301510538742295639337626245683966408394965837152256
822752278660603021077484591278675252491367932816789931674304512
1645504557321206042154969182557350504982735865633579863348609024
3291009114642412084309938365114701009965471731267159726697218048
6582018229284824168619876730229402019930943462534319453394436096
13164036458569648337239753460458804039861886925068638906788872192
26328072917139296674479506920917608079723773850137277813577744384
52656145834278593348959013841835216159447547700274555627155488768
105312291668557186697918027683670432318895095400549111254310977536
210624583337114373395836055367340864637790190801098222508621955072
421249166674228746791672110734681729275580381602196445017243910144
842498333348457493583344221469363458551160763204392890034487820288
1684996666696914987166688442938726917102321526408785780068975640576
3369993333393829974333376885877453834204643052817571560137951281152
6739986666787659948666753771754907668409286105635143120275902562304
13479973333575319897333507543509815336818572211270286240551805124608
26959946667150639794667015087019630673637144422540572481103610249216
53919893334301279589334030174039261347274288845081144962207220498432
107839786668602559178668060348078522694548577690162289924414440996864
215679573337205118357336120696157045389097155380324579848828881993728
431359146674410236714672241392314090778194310760649159697657763987456
862718293348820473429344482784628181556388621521298319395315527974912
1725436586697640946858688965569256363112777243042596638790631055949824
3450873173395281893717377931138512726225554486085193277581262111899648
6901746346790563787434755862277025452451108972170386555162524223799296
13803492693581127574869511724554050904902217944340773110325048447598592
27606985387162255149739023449108101809804435888681546220650096895197184
55213970774324510299478046898216203619608871777363092441300193790394368
110427941548649020598956093796432407239217743554726184882600387580788736
220855883097298041197912187592864814478435487109452369765200775161577472
441711766194596082395824375185729628956870974218904739530401550323154944
883423532389192164791648750371459257913741948437809479060803100646309888
1766847064778384329583297500742918515827483896875618958121606201292619776
3533694129556768659166595001485837031654967793751237916243212402585239552
7067388259113537318333190002971674063309935587502475832486424805170479104
14134776518227074636666380005943348126619871175004951664972849610340958208
28269553036454149273332760011886696253239742350009903329945699220681916416
56539106072908298546665520023773392506479484700019806659891398441363832832
113078212145816597093331040047546785012958969400039613319782796882727665664
226156424291633194186662080095093570025917938800079226639565593765455331328
452312848583266388373324160190187140051835877600158453279131187530910662656
904625697166532776746648320380374280103671755200316906558262375061821325312
1809251394333065553493296640760748560207343510400633813116524750123642650624
3618502788666131106986593281521497120414687020801267626233049500247285301248
7237005577332262213973186563042994240829374041602535252466099000494570602496
14474011154664524427946373126085988481658748083205070504932198000989141204992
28948022309329048855892746252171976963317496166410141009864396001978282409984
57896044618658097711785492504343953926634992332820282019728792003956564819968
115792089237316195423570985008687907853269984665640564039457584007913129639936
231584178474632390847141970017375815706539969331281128078915168015826259279872
463168356949264781694283940034751631413079938662562256157830336031652518559744
926336713898529563388567880069503262826159877325124512315660672063305037119488
1852673427797059126777135760139006525652319754650249024631321344126610074238976
3705346855594118253554271520278013051304639509300498049262642688253220148477952
7410693711188236507108543040556026102609279018600996098525285376506440296955904
14821387422376473014217086081112052205218558037201992197050570753012880593911808
29642774844752946028434172162224104410437116074403984394101141506025761187823616
59285549689505892056868344324448208820874232148807968788202283012051522375647232
118571099379011784113736688648896417641748464297615937576404566024103044751294464
237142198758023568227473377297792835283496928595231875152809132048206089502588928
474284397516047136454946754595585670566993857190463750305618264096412179005177856
948568795032094272909893509191171341133987714380927500611236528192824358010355712
1897137590064188545819787018382342682267975428761855001222473056385648716020711424
3794275180128377091639574036764685364535950857523710002444946112771297432041422848
7588550360256754183279148073529370729071901715047420004889892225542594864082845696
15177100720513508366558296147058741458143803430094840009779784451085189728165691392
30354201441027016733116592294117482916287606860189680019559568902170379456331382784
60708402882054033466233184588234965832575213720379360039119137804340758912662765568
121416805764108066932466369176469931665150427440758720078238275608681517825325531136
242833611528216133864932738352939863330300854881517440156476551217363035650651062272
485667223056432267729865476705879726660601709763034880312953102434726071301302124544
971334446112864535459730953411759453321203419526069760625906204869452142602604249088
1942668892225729070919461906823518906642406839052139521251812409738904285205208498176
3885337784451458141838923813647037813284813678104279042503624819477808570410416996352
7770675568902916283677847627294075626569627356208558085007249638955617140820833992704
15541351137805832567355695254588151253139254712417116170014499277911234281641667985408
31082702275611665134711390509176302506278509424834232340028998555822468563283335970816
62165404551223330269422781018352605012557018849668464680057997111644937126566671941632
124330809102446660538845562036705210025114037699336929360115994223289874253133343883264
248661618204893321077691124073410420050228075398673858720231988446579748506266687766528
497323236409786642155382248146820840100456150797347717440463976893159497012533375533056
994646472819573284310764496293641680200912301594695434880927953786318994025066751066112
1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224
3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448
7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896
15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792
31828687130226345097944463881396533766429193651030253916189694521162207808802136034115584
63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168
127314748520905380391777855525586135065716774604121015664758778084648831235208544136462336
254629497041810760783555711051172270131433549208242031329517556169297662470417088272924672
509258994083621521567111422102344540262867098416484062659035112338595324940834176545849344
1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688
2037035976334486086268445688409378161051468393665936250636140449354381299763336706183397376
4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794752
8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504
16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008
32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016
65185151242703554760590262029100101153646988597309960020356494379340201592426774597868716032
130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064
260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128
521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256
1042962419883256876169444192465601618458351817556959360325703910069443225478828393565899456512
2085924839766513752338888384931203236916703635113918720651407820138886450957656787131798913024
4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048
8343699359066055009355553539724812947666814540455674882605631280555545803830627148527195652096
16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192
33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384
66749594872528440074844428317798503581334516323645399060845050244444366430645017188217565216768
133499189745056880149688856635597007162669032647290798121690100488888732861290034376435130433536
266998379490113760299377713271194014325338065294581596243380200977777465722580068752870260867072
533996758980227520598755426542388028650676130589163192486760401955554931445160137505740521734144
1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288
2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576
4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152
8543948143683640329580086824678208458410818089426611079788166431288878903122562200091848347746304
17087896287367280659160173649356416916821636178853222159576332862577757806245124400183696695492608
34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216
68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432
136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864
273406340597876490546562778389702670669146178861651554553221325801244124899921990402939147127881728
546812681195752981093125556779405341338292357723303109106442651602488249799843980805878294255763456
1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912
2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824
4374501449566023848745004454235242730706338861786424872851541212819905998398751846447026354046107648
8749002899132047697490008908470485461412677723572849745703082425639811996797503692894052708092215296
17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430592
34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184
69992023193056381579920071267763883691301421788582797965624659405118495974380029543152421664737722368
139984046386112763159840142535527767382602843577165595931249318810236991948760059086304843329475444736
279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472
559936185544451052639360570142111069530411374308662383724997275240947967795040236345219373317901778944
1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888
2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776
4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231552
8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463104
17917957937422433684459538244547554224973163977877196279199912807710334969441287563047019946172856926208
35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416
71671831749689734737838152978190216899892655911508785116799651230841339877765150252188079784691427704832
143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664
286687326998758938951352611912760867599570623646035140467198604923365359511060601008752319138765710819328
573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638656
1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312
2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554624
4586997231980143023221641790604173881593129978336562247475177678773845752176969616140037106220251373109248
9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496
18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992
36695977855841144185773134324833391052745039826692497979801421430190766017415756929120296849762010984873984
73391955711682288371546268649666782105490079653384995959602842860381532034831513858240593699524021969747968
146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936
293567822846729153486185074598667128421960318613539983838411371441526128139326055432962374798096087878991872
587135645693458306972370149197334256843920637227079967676822742883052256278652110865924749596192175757983744
1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488
2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934976
4697085165547666455778961193578674054751365097816639741414581943064418050229216886927397996769537406063869952
9394170331095332911557922387157348109502730195633279482829163886128836100458433773854795993539074812127739904
18788340662190665823115844774314696219005460391266558965658327772257672200916867547709591987078149624255479808
37576681324381331646231689548629392438010920782533117931316655544515344401833735095419183974156299248510959616
75153362648762663292463379097258784876021841565066235862633311089030688803667470190838367948312598497021919232
150306725297525326584926758194517569752043683130132471725266622178061377607334940381676735896625196994043838464
300613450595050653169853516389035139504087366260264943450533244356122755214669880763353471793250393988087676928
601226901190101306339707032778070279008174732520529886901066488712245510429339761526706943586500787976175353856
1202453802380202612679414065556140558016349465041059773802132977424491020858679523053413887173001575952350707712
2404907604760405225358828131112281116032698930082119547604265954848982041717359046106827774346003151904701415424
4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848
9619630419041620901435312524449124464130795720328478190417063819395928166869436184427311097384012607618805661696
19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392
38478521676166483605741250097796497856523182881313912761668255277583712667477744737709244389536050430475222646784
76957043352332967211482500195592995713046365762627825523336510555167425334955489475418488779072100860950445293568
153914086704665934422965000391185991426092731525255651046673021110334850669910978950836977558144201721900890587136
307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272
615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544
1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088
2462625387274654950767440006258975862817483704404090416746768337765357610718575663213391640930307227550414249394176
4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788352
9850501549098619803069760025035903451269934817616361666987073351061430442874302652853566563721228910201656997576704
19701003098197239606139520050071806902539869635232723333974146702122860885748605305707133127442457820403313995153408
39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816
78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632
157608024785577916849116160400574455220318957081861786671793173616982887085988842445657065019539662563226511961227264
315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528
630432099142311667396464641602297820881275828327447146687172694467931548343955369782628260078158650252906047844909056
1260864198284623334792929283204595641762551656654894293374345388935863096687910739565256520156317300505812095689818112
2521728396569246669585858566409191283525103313309788586748690777871726193375821479130513040312634601011624191379636224
5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448
10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896
20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792
40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584
80695308690215893426747474125094121072803306025913234775958104891895238188026287332176417290004307232371974124148359168
161390617380431786853494948250188242145606612051826469551916209783790476376052574664352834580008614464743948248296718336
322781234760863573706989896500376484291213224103652939103832419567580952752105149328705669160017228929487896496593436672
645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344
1291124939043454294827959586001505937164852896414611756415329678270323811008420597314822676640068915717951585986373746688
2582249878086908589655919172003011874329705792829223512830659356540647622016841194629645353280137831435903171972747493376
5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752
10328999512347634358623676688012047497318823171316894051322637426162590488067364778518581413120551325743612687890989973504
20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008
41315998049390537434494706752048189989275292685267576205290549704650361952269459114074325652482205302974450751563959894016
82631996098781074868989413504096379978550585370535152410581099409300723904538918228148651304964410605948901503127919788032
165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064
330527984395124299475957654016385519914202341482140609642324397637202895618155672912594605219857642423795606012511679152128
661055968790248598951915308032771039828404682964281219284648795274405791236311345825189210439715284847591212025023358304256
1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512
2644223875160994395807661232131084159313618731857124877138595181097623164945245383300756841758861139390364848100093433217024
5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048
10576895500643977583230644928524336637254474927428499508554380724390492659780981533203027367035444557561459392400373732868096
21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192
42307582002575910332922579714097346549017899709713998034217522897561970639123926132812109468141778230245837569601494931472384
84615164005151820665845159428194693098035799419427996068435045795123941278247852265624218936283556460491675139202989862944768
169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536
338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072
676921312041214565326761275425557544784286395355423968547480366360991530225982818124993751490268451683933401113623918903558144
1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288
2707685248164858261307045101702230179137145581421695874189921465443966120903931272499975005961073806735733604454495675614232576
5415370496329716522614090203404460358274291162843391748379842930887932241807862544999950011922147613471467208908991351228465152
10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304
21661481985318866090456360813617841433097164651373566993519371723551728967231450179999800047688590453885868835635965404913860608
43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721216
86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442432
173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864
346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728
693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456
1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912
2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824
5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648
11090678776483259438313656736572334813745748301503266300681918322458485231222502492159897624416558312389564843845614287315896631296
22181357552966518876627313473144669627491496603006532601363836644916970462445004984319795248833116624779129687691228574631793262592
44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525184
88725430211866075506509253892578678509965986412026130405455346579667881849780019937279180995332466499116518750764914298527173050368
177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100736
354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472
709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402944
1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888
2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776
5678427533559428832416592249125035424637823130369672345949142181098744438385921275985867583701277855943457200048954515105739075223552
11356855067118857664833184498250070849275646260739344691898284362197488876771842551971735167402555711886914400097909030211478150447104
22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208
45427420268475430659332737993000283397102585042957378767593137448789955507087370207886940669610222847547657600391636120845912601788416
90854840536950861318665475986000566794205170085914757535186274897579911014174740415773881339220445695095315200783272241691825203576832
181709681073901722637330951972001133588410340171829515070372549795159822028349480831547762678440891390190630401566544483383650407153664
363419362147803445274661903944002267176820680343659030140745099590319644056698961663095525356881782780381260803133088966767300814307328
726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656
1453677448591213781098647615776009068707282721374636120562980398361278576226795846652382101427527131121525043212532355867069203257229312
2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458624
5814709794364855124394590463104036274829130885498544482251921593445114304907183386609528405710108524486100172850129423468276813028917248
11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834496
23258839177459420497578361852416145099316523541994177929007686373780457219628733546438113622840434097944400691400517693873107252115668992
46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984
93035356709837681990313447409664580397266094167976711716030745495121828878514934185752454491361736391777602765602070775492429008462675968
186070713419675363980626894819329160794532188335953423432061490990243657757029868371504908982723472783555205531204141550984858016925351936
372141426839350727961253789638658321589064376671906846864122981980487315514059736743009817965446945567110411062408283101969716033850703872
744282853678701455922507579277316643178128753343813693728245963960974631028119473486019635930893891134220822124816566203939432067701407744
1488565707357402911845015158554633286356257506687627387456491927921949262056238946972039271861787782268441644249633132407878864135402815488
2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976
5954262829429611647380060634218533145425030026750509549825967711687797048224955787888157087447151129073766576998532529631515456541611261952
11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904
23817051317718446589520242536874132581700120107002038199303870846751188192899823151552628349788604516295066307994130118526061826166445047808
47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095616
95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232
190536410541747572716161940294993060653600960856016305594430966774009505543198585212421026798308836130360530463953040948208494609331560382464
381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928
762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856
1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712
3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424
6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848
12194330274671844653834364178879555881830461494785043558043581873536608354764709453594945715091765512343073949692994620685343654997219864477696
24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955392
48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784
97554642197374757230674913431036447054643691958280348464348654988292866838117675628759565720734124098744591597543956965482749239977758915821568
195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643136
390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272
780437137578998057845399307448291576437149535666242787714789239906342934704941405030076525765872992789956732780351655723861993919822071326572544
1560874275157996115690798614896583152874299071332485575429578479812685869409882810060153051531745985579913465560703311447723987839644142653145088
3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176
6243497100631984462763194459586332611497196285329942301718313919250743477639531240240612206126983942319653862242813245790895951358576570612580352
12486994201263968925526388919172665222994392570659884603436627838501486955279062480481224412253967884639307724485626491581791902717153141225160704
24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408
49947976805055875702105555676690660891977570282639538413746511354005947821116249921924897649015871538557230897942505966327167610868612564900642816
99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285632
199791907220223502808422222706762643567910281130558153654986045416023791284464999687699590596063486154228923591770023865308670443474450259602571264
399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528
799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056
1598335257761788022467377781654101148543282249044465229239888363328190330275719997501596724768507889233831388734160190922469363547795602076820570112
3196670515523576044934755563308202297086564498088930458479776726656380660551439995003193449537015778467662777468320381844938727095591204153641140224
6393341031047152089869511126616404594173128996177860916959553453312761321102879990006386899074031556935325554936640763689877454191182408307282280448
12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896
25573364124188608359478044506465618376692515984711443667838213813251045284411519960025547596296126227741302219746563054759509816764729633229129121792
51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584
102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168
204586912993508866875824356051724947013540127877691549342705710506008362275292159680204380770369009821930417757972504438076078534117837065833032974336
409173825987017733751648712103449894027080255755383098685411421012016724550584319360408761540738019643860835515945008876152157068235674131666065948672
818347651974035467503297424206899788054160511510766197370822842024033449101168638720817523081476039287721671031890017752304314136471348263332131897344
1636695303948070935006594848413799576108321023021532394741645684048066898202337277441635046162952078575443342063780035504608628272942696526664263794688
for i in range(500):
    print(2**i)
1
2
4
8
16
32
64
128
256
512
1024
2048
4096
8192
16384
32768
65536
131072
262144
524288
1048576
2097152
4194304
8388608
16777216
33554432
67108864
134217728
268435456
536870912
1073741824
2147483648
4294967296
8589934592
17179869184
34359738368
68719476736
137438953472
274877906944
549755813888
1099511627776
2199023255552
4398046511104
8796093022208
17592186044416
35184372088832
70368744177664
140737488355328
281474976710656
562949953421312
1125899906842624
2251799813685248
4503599627370496
9007199254740992
18014398509481984
36028797018963968
72057594037927936
144115188075855872
288230376151711744
576460752303423488
1152921504606846976
2305843009213693952
4611686018427387904
9223372036854775808
18446744073709551616
36893488147419103232
73786976294838206464
147573952589676412928
295147905179352825856
590295810358705651712
1180591620717411303424
2361183241434822606848
4722366482869645213696
9444732965739290427392
18889465931478580854784
37778931862957161709568
75557863725914323419136
151115727451828646838272
302231454903657293676544
604462909807314587353088
1208925819614629174706176
2417851639229258349412352
4835703278458516698824704
9671406556917033397649408
19342813113834066795298816
38685626227668133590597632
77371252455336267181195264
154742504910672534362390528
309485009821345068724781056
618970019642690137449562112
1237940039285380274899124224
2475880078570760549798248448
4951760157141521099596496896
9903520314283042199192993792
19807040628566084398385987584
39614081257132168796771975168
79228162514264337593543950336
158456325028528675187087900672
316912650057057350374175801344
633825300114114700748351602688
1267650600228229401496703205376
2535301200456458802993406410752
5070602400912917605986812821504
10141204801825835211973625643008
20282409603651670423947251286016
40564819207303340847894502572032
81129638414606681695789005144064
162259276829213363391578010288128
324518553658426726783156020576256
649037107316853453566312041152512
1298074214633706907132624082305024
2596148429267413814265248164610048
5192296858534827628530496329220096
10384593717069655257060992658440192
20769187434139310514121985316880384
41538374868278621028243970633760768
83076749736557242056487941267521536
166153499473114484112975882535043072
332306998946228968225951765070086144
664613997892457936451903530140172288
1329227995784915872903807060280344576
2658455991569831745807614120560689152
5316911983139663491615228241121378304
10633823966279326983230456482242756608
21267647932558653966460912964485513216
42535295865117307932921825928971026432
85070591730234615865843651857942052864
170141183460469231731687303715884105728
340282366920938463463374607431768211456
680564733841876926926749214863536422912
1361129467683753853853498429727072845824
2722258935367507707706996859454145691648
5444517870735015415413993718908291383296
10889035741470030830827987437816582766592
21778071482940061661655974875633165533184
43556142965880123323311949751266331066368
87112285931760246646623899502532662132736
174224571863520493293247799005065324265472
348449143727040986586495598010130648530944
696898287454081973172991196020261297061888
1393796574908163946345982392040522594123776
2787593149816327892691964784081045188247552
5575186299632655785383929568162090376495104
11150372599265311570767859136324180752990208
22300745198530623141535718272648361505980416
44601490397061246283071436545296723011960832
89202980794122492566142873090593446023921664
178405961588244985132285746181186892047843328
356811923176489970264571492362373784095686656
713623846352979940529142984724747568191373312
1427247692705959881058285969449495136382746624
2854495385411919762116571938898990272765493248
5708990770823839524233143877797980545530986496
11417981541647679048466287755595961091061972992
22835963083295358096932575511191922182123945984
45671926166590716193865151022383844364247891968
91343852333181432387730302044767688728495783936
182687704666362864775460604089535377456991567872
365375409332725729550921208179070754913983135744
730750818665451459101842416358141509827966271488
1461501637330902918203684832716283019655932542976
2923003274661805836407369665432566039311865085952
5846006549323611672814739330865132078623730171904
11692013098647223345629478661730264157247460343808
23384026197294446691258957323460528314494920687616
46768052394588893382517914646921056628989841375232
93536104789177786765035829293842113257979682750464
187072209578355573530071658587684226515959365500928
374144419156711147060143317175368453031918731001856
748288838313422294120286634350736906063837462003712
1496577676626844588240573268701473812127674924007424
2993155353253689176481146537402947624255349848014848
5986310706507378352962293074805895248510699696029696
11972621413014756705924586149611790497021399392059392
23945242826029513411849172299223580994042798784118784
47890485652059026823698344598447161988085597568237568
95780971304118053647396689196894323976171195136475136
191561942608236107294793378393788647952342390272950272
383123885216472214589586756787577295904684780545900544
766247770432944429179173513575154591809369561091801088
1532495540865888858358347027150309183618739122183602176
3064991081731777716716694054300618367237478244367204352
6129982163463555433433388108601236734474956488734408704
12259964326927110866866776217202473468949912977468817408
24519928653854221733733552434404946937899825954937634816
49039857307708443467467104868809893875799651909875269632
98079714615416886934934209737619787751599303819750539264
196159429230833773869868419475239575503198607639501078528
392318858461667547739736838950479151006397215279002157056
784637716923335095479473677900958302012794430558004314112
1569275433846670190958947355801916604025588861116008628224
3138550867693340381917894711603833208051177722232017256448
6277101735386680763835789423207666416102355444464034512896
12554203470773361527671578846415332832204710888928069025792
25108406941546723055343157692830665664409421777856138051584
50216813883093446110686315385661331328818843555712276103168
100433627766186892221372630771322662657637687111424552206336
200867255532373784442745261542645325315275374222849104412672
401734511064747568885490523085290650630550748445698208825344
803469022129495137770981046170581301261101496891396417650688
1606938044258990275541962092341162602522202993782792835301376
3213876088517980551083924184682325205044405987565585670602752
6427752177035961102167848369364650410088811975131171341205504
12855504354071922204335696738729300820177623950262342682411008
25711008708143844408671393477458601640355247900524685364822016
51422017416287688817342786954917203280710495801049370729644032
102844034832575377634685573909834406561420991602098741459288064
205688069665150755269371147819668813122841983204197482918576128
411376139330301510538742295639337626245683966408394965837152256
822752278660603021077484591278675252491367932816789931674304512
1645504557321206042154969182557350504982735865633579863348609024
3291009114642412084309938365114701009965471731267159726697218048
6582018229284824168619876730229402019930943462534319453394436096
13164036458569648337239753460458804039861886925068638906788872192
26328072917139296674479506920917608079723773850137277813577744384
52656145834278593348959013841835216159447547700274555627155488768
105312291668557186697918027683670432318895095400549111254310977536
210624583337114373395836055367340864637790190801098222508621955072
421249166674228746791672110734681729275580381602196445017243910144
842498333348457493583344221469363458551160763204392890034487820288
1684996666696914987166688442938726917102321526408785780068975640576
3369993333393829974333376885877453834204643052817571560137951281152
6739986666787659948666753771754907668409286105635143120275902562304
13479973333575319897333507543509815336818572211270286240551805124608
26959946667150639794667015087019630673637144422540572481103610249216
53919893334301279589334030174039261347274288845081144962207220498432
107839786668602559178668060348078522694548577690162289924414440996864
215679573337205118357336120696157045389097155380324579848828881993728
431359146674410236714672241392314090778194310760649159697657763987456
862718293348820473429344482784628181556388621521298319395315527974912
1725436586697640946858688965569256363112777243042596638790631055949824
3450873173395281893717377931138512726225554486085193277581262111899648
6901746346790563787434755862277025452451108972170386555162524223799296
13803492693581127574869511724554050904902217944340773110325048447598592
27606985387162255149739023449108101809804435888681546220650096895197184
55213970774324510299478046898216203619608871777363092441300193790394368
110427941548649020598956093796432407239217743554726184882600387580788736
220855883097298041197912187592864814478435487109452369765200775161577472
441711766194596082395824375185729628956870974218904739530401550323154944
883423532389192164791648750371459257913741948437809479060803100646309888
1766847064778384329583297500742918515827483896875618958121606201292619776
3533694129556768659166595001485837031654967793751237916243212402585239552
7067388259113537318333190002971674063309935587502475832486424805170479104
14134776518227074636666380005943348126619871175004951664972849610340958208
28269553036454149273332760011886696253239742350009903329945699220681916416
56539106072908298546665520023773392506479484700019806659891398441363832832
113078212145816597093331040047546785012958969400039613319782796882727665664
226156424291633194186662080095093570025917938800079226639565593765455331328
452312848583266388373324160190187140051835877600158453279131187530910662656
904625697166532776746648320380374280103671755200316906558262375061821325312
1809251394333065553493296640760748560207343510400633813116524750123642650624
3618502788666131106986593281521497120414687020801267626233049500247285301248
7237005577332262213973186563042994240829374041602535252466099000494570602496
14474011154664524427946373126085988481658748083205070504932198000989141204992
28948022309329048855892746252171976963317496166410141009864396001978282409984
57896044618658097711785492504343953926634992332820282019728792003956564819968
115792089237316195423570985008687907853269984665640564039457584007913129639936
231584178474632390847141970017375815706539969331281128078915168015826259279872
463168356949264781694283940034751631413079938662562256157830336031652518559744
926336713898529563388567880069503262826159877325124512315660672063305037119488
1852673427797059126777135760139006525652319754650249024631321344126610074238976
3705346855594118253554271520278013051304639509300498049262642688253220148477952
7410693711188236507108543040556026102609279018600996098525285376506440296955904
14821387422376473014217086081112052205218558037201992197050570753012880593911808
29642774844752946028434172162224104410437116074403984394101141506025761187823616
59285549689505892056868344324448208820874232148807968788202283012051522375647232
118571099379011784113736688648896417641748464297615937576404566024103044751294464
237142198758023568227473377297792835283496928595231875152809132048206089502588928
474284397516047136454946754595585670566993857190463750305618264096412179005177856
948568795032094272909893509191171341133987714380927500611236528192824358010355712
1897137590064188545819787018382342682267975428761855001222473056385648716020711424
3794275180128377091639574036764685364535950857523710002444946112771297432041422848
7588550360256754183279148073529370729071901715047420004889892225542594864082845696
15177100720513508366558296147058741458143803430094840009779784451085189728165691392
30354201441027016733116592294117482916287606860189680019559568902170379456331382784
60708402882054033466233184588234965832575213720379360039119137804340758912662765568
121416805764108066932466369176469931665150427440758720078238275608681517825325531136
242833611528216133864932738352939863330300854881517440156476551217363035650651062272
485667223056432267729865476705879726660601709763034880312953102434726071301302124544
971334446112864535459730953411759453321203419526069760625906204869452142602604249088
1942668892225729070919461906823518906642406839052139521251812409738904285205208498176
3885337784451458141838923813647037813284813678104279042503624819477808570410416996352
7770675568902916283677847627294075626569627356208558085007249638955617140820833992704
15541351137805832567355695254588151253139254712417116170014499277911234281641667985408
31082702275611665134711390509176302506278509424834232340028998555822468563283335970816
62165404551223330269422781018352605012557018849668464680057997111644937126566671941632
124330809102446660538845562036705210025114037699336929360115994223289874253133343883264
248661618204893321077691124073410420050228075398673858720231988446579748506266687766528
497323236409786642155382248146820840100456150797347717440463976893159497012533375533056
994646472819573284310764496293641680200912301594695434880927953786318994025066751066112
1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224
3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448
7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896
15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792
31828687130226345097944463881396533766429193651030253916189694521162207808802136034115584
63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168
127314748520905380391777855525586135065716774604121015664758778084648831235208544136462336
254629497041810760783555711051172270131433549208242031329517556169297662470417088272924672
509258994083621521567111422102344540262867098416484062659035112338595324940834176545849344
1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688
2037035976334486086268445688409378161051468393665936250636140449354381299763336706183397376
4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794752
8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504
16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008
32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016
65185151242703554760590262029100101153646988597309960020356494379340201592426774597868716032
130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064
260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128
521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256
1042962419883256876169444192465601618458351817556959360325703910069443225478828393565899456512
2085924839766513752338888384931203236916703635113918720651407820138886450957656787131798913024
4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048
8343699359066055009355553539724812947666814540455674882605631280555545803830627148527195652096
16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192
33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384
66749594872528440074844428317798503581334516323645399060845050244444366430645017188217565216768
133499189745056880149688856635597007162669032647290798121690100488888732861290034376435130433536
266998379490113760299377713271194014325338065294581596243380200977777465722580068752870260867072
533996758980227520598755426542388028650676130589163192486760401955554931445160137505740521734144
1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288
2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576
4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152
8543948143683640329580086824678208458410818089426611079788166431288878903122562200091848347746304
17087896287367280659160173649356416916821636178853222159576332862577757806245124400183696695492608
34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216
68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432
136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864
273406340597876490546562778389702670669146178861651554553221325801244124899921990402939147127881728
546812681195752981093125556779405341338292357723303109106442651602488249799843980805878294255763456
1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912
2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824
4374501449566023848745004454235242730706338861786424872851541212819905998398751846447026354046107648
8749002899132047697490008908470485461412677723572849745703082425639811996797503692894052708092215296
17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430592
34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184
69992023193056381579920071267763883691301421788582797965624659405118495974380029543152421664737722368
139984046386112763159840142535527767382602843577165595931249318810236991948760059086304843329475444736
279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472
559936185544451052639360570142111069530411374308662383724997275240947967795040236345219373317901778944
1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888
2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776
4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231552
8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463104
17917957937422433684459538244547554224973163977877196279199912807710334969441287563047019946172856926208
35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416
71671831749689734737838152978190216899892655911508785116799651230841339877765150252188079784691427704832
143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664
286687326998758938951352611912760867599570623646035140467198604923365359511060601008752319138765710819328
573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638656
1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312
2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554624
4586997231980143023221641790604173881593129978336562247475177678773845752176969616140037106220251373109248
9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496
18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992
36695977855841144185773134324833391052745039826692497979801421430190766017415756929120296849762010984873984
73391955711682288371546268649666782105490079653384995959602842860381532034831513858240593699524021969747968
146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936
293567822846729153486185074598667128421960318613539983838411371441526128139326055432962374798096087878991872
587135645693458306972370149197334256843920637227079967676822742883052256278652110865924749596192175757983744
1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488
2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934976
4697085165547666455778961193578674054751365097816639741414581943064418050229216886927397996769537406063869952
9394170331095332911557922387157348109502730195633279482829163886128836100458433773854795993539074812127739904
18788340662190665823115844774314696219005460391266558965658327772257672200916867547709591987078149624255479808
37576681324381331646231689548629392438010920782533117931316655544515344401833735095419183974156299248510959616
75153362648762663292463379097258784876021841565066235862633311089030688803667470190838367948312598497021919232
150306725297525326584926758194517569752043683130132471725266622178061377607334940381676735896625196994043838464
300613450595050653169853516389035139504087366260264943450533244356122755214669880763353471793250393988087676928
601226901190101306339707032778070279008174732520529886901066488712245510429339761526706943586500787976175353856
1202453802380202612679414065556140558016349465041059773802132977424491020858679523053413887173001575952350707712
2404907604760405225358828131112281116032698930082119547604265954848982041717359046106827774346003151904701415424
4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848
9619630419041620901435312524449124464130795720328478190417063819395928166869436184427311097384012607618805661696
19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392
38478521676166483605741250097796497856523182881313912761668255277583712667477744737709244389536050430475222646784
76957043352332967211482500195592995713046365762627825523336510555167425334955489475418488779072100860950445293568
153914086704665934422965000391185991426092731525255651046673021110334850669910978950836977558144201721900890587136
307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272
615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544
1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088
2462625387274654950767440006258975862817483704404090416746768337765357610718575663213391640930307227550414249394176
4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788352
9850501549098619803069760025035903451269934817616361666987073351061430442874302652853566563721228910201656997576704
19701003098197239606139520050071806902539869635232723333974146702122860885748605305707133127442457820403313995153408
39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816
78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632
157608024785577916849116160400574455220318957081861786671793173616982887085988842445657065019539662563226511961227264
315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528
630432099142311667396464641602297820881275828327447146687172694467931548343955369782628260078158650252906047844909056
1260864198284623334792929283204595641762551656654894293374345388935863096687910739565256520156317300505812095689818112
2521728396569246669585858566409191283525103313309788586748690777871726193375821479130513040312634601011624191379636224
5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448
10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896
20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792
40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584
80695308690215893426747474125094121072803306025913234775958104891895238188026287332176417290004307232371974124148359168
161390617380431786853494948250188242145606612051826469551916209783790476376052574664352834580008614464743948248296718336
322781234760863573706989896500376484291213224103652939103832419567580952752105149328705669160017228929487896496593436672
645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344
1291124939043454294827959586001505937164852896414611756415329678270323811008420597314822676640068915717951585986373746688
2582249878086908589655919172003011874329705792829223512830659356540647622016841194629645353280137831435903171972747493376
5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752
10328999512347634358623676688012047497318823171316894051322637426162590488067364778518581413120551325743612687890989973504
20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008
41315998049390537434494706752048189989275292685267576205290549704650361952269459114074325652482205302974450751563959894016
82631996098781074868989413504096379978550585370535152410581099409300723904538918228148651304964410605948901503127919788032
165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064
330527984395124299475957654016385519914202341482140609642324397637202895618155672912594605219857642423795606012511679152128
661055968790248598951915308032771039828404682964281219284648795274405791236311345825189210439715284847591212025023358304256
1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512
2644223875160994395807661232131084159313618731857124877138595181097623164945245383300756841758861139390364848100093433217024
5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048
10576895500643977583230644928524336637254474927428499508554380724390492659780981533203027367035444557561459392400373732868096
21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192
42307582002575910332922579714097346549017899709713998034217522897561970639123926132812109468141778230245837569601494931472384
84615164005151820665845159428194693098035799419427996068435045795123941278247852265624218936283556460491675139202989862944768
169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536
338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072
676921312041214565326761275425557544784286395355423968547480366360991530225982818124993751490268451683933401113623918903558144
1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288
2707685248164858261307045101702230179137145581421695874189921465443966120903931272499975005961073806735733604454495675614232576
5415370496329716522614090203404460358274291162843391748379842930887932241807862544999950011922147613471467208908991351228465152
10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304
21661481985318866090456360813617841433097164651373566993519371723551728967231450179999800047688590453885868835635965404913860608
43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721216
86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442432
173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864
346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728
693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456
1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912
2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824
5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648
11090678776483259438313656736572334813745748301503266300681918322458485231222502492159897624416558312389564843845614287315896631296
22181357552966518876627313473144669627491496603006532601363836644916970462445004984319795248833116624779129687691228574631793262592
44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525184
88725430211866075506509253892578678509965986412026130405455346579667881849780019937279180995332466499116518750764914298527173050368
177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100736
354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472
709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402944
1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888
2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776
5678427533559428832416592249125035424637823130369672345949142181098744438385921275985867583701277855943457200048954515105739075223552
11356855067118857664833184498250070849275646260739344691898284362197488876771842551971735167402555711886914400097909030211478150447104
22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208
45427420268475430659332737993000283397102585042957378767593137448789955507087370207886940669610222847547657600391636120845912601788416
90854840536950861318665475986000566794205170085914757535186274897579911014174740415773881339220445695095315200783272241691825203576832
181709681073901722637330951972001133588410340171829515070372549795159822028349480831547762678440891390190630401566544483383650407153664
363419362147803445274661903944002267176820680343659030140745099590319644056698961663095525356881782780381260803133088966767300814307328
726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656
1453677448591213781098647615776009068707282721374636120562980398361278576226795846652382101427527131121525043212532355867069203257229312
2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458624
5814709794364855124394590463104036274829130885498544482251921593445114304907183386609528405710108524486100172850129423468276813028917248
11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834496
23258839177459420497578361852416145099316523541994177929007686373780457219628733546438113622840434097944400691400517693873107252115668992
46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984
93035356709837681990313447409664580397266094167976711716030745495121828878514934185752454491361736391777602765602070775492429008462675968
186070713419675363980626894819329160794532188335953423432061490990243657757029868371504908982723472783555205531204141550984858016925351936
372141426839350727961253789638658321589064376671906846864122981980487315514059736743009817965446945567110411062408283101969716033850703872
744282853678701455922507579277316643178128753343813693728245963960974631028119473486019635930893891134220822124816566203939432067701407744
1488565707357402911845015158554633286356257506687627387456491927921949262056238946972039271861787782268441644249633132407878864135402815488
2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976
5954262829429611647380060634218533145425030026750509549825967711687797048224955787888157087447151129073766576998532529631515456541611261952
11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904
23817051317718446589520242536874132581700120107002038199303870846751188192899823151552628349788604516295066307994130118526061826166445047808
47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095616
95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232
190536410541747572716161940294993060653600960856016305594430966774009505543198585212421026798308836130360530463953040948208494609331560382464
381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928
762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856
1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712
3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424
6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848
12194330274671844653834364178879555881830461494785043558043581873536608354764709453594945715091765512343073949692994620685343654997219864477696
24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955392
48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784
97554642197374757230674913431036447054643691958280348464348654988292866838117675628759565720734124098744591597543956965482749239977758915821568
195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643136
390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272
780437137578998057845399307448291576437149535666242787714789239906342934704941405030076525765872992789956732780351655723861993919822071326572544
1560874275157996115690798614896583152874299071332485575429578479812685869409882810060153051531745985579913465560703311447723987839644142653145088
3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176
6243497100631984462763194459586332611497196285329942301718313919250743477639531240240612206126983942319653862242813245790895951358576570612580352
12486994201263968925526388919172665222994392570659884603436627838501486955279062480481224412253967884639307724485626491581791902717153141225160704
24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408
49947976805055875702105555676690660891977570282639538413746511354005947821116249921924897649015871538557230897942505966327167610868612564900642816
99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285632
199791907220223502808422222706762643567910281130558153654986045416023791284464999687699590596063486154228923591770023865308670443474450259602571264
399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528
799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056
1598335257761788022467377781654101148543282249044465229239888363328190330275719997501596724768507889233831388734160190922469363547795602076820570112
3196670515523576044934755563308202297086564498088930458479776726656380660551439995003193449537015778467662777468320381844938727095591204153641140224
6393341031047152089869511126616404594173128996177860916959553453312761321102879990006386899074031556935325554936640763689877454191182408307282280448
12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896
25573364124188608359478044506465618376692515984711443667838213813251045284411519960025547596296126227741302219746563054759509816764729633229129121792
51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584
102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168
204586912993508866875824356051724947013540127877691549342705710506008362275292159680204380770369009821930417757972504438076078534117837065833032974336
409173825987017733751648712103449894027080255755383098685411421012016724550584319360408761540738019643860835515945008876152157068235674131666065948672
818347651974035467503297424206899788054160511510766197370822842024033449101168638720817523081476039287721671031890017752304314136471348263332131897344
1636695303948070935006594848413799576108321023021532394741645684048066898202337277441635046162952078575443342063780035504608628272942696526664263794688
for i in range(1500):
    print(2**i)
1
2
4
8
16
32
64
128
256
512
1024
2048
4096
8192
16384
32768
65536
131072
262144
524288
1048576
2097152
4194304
8388608
16777216
33554432
67108864
134217728
268435456
536870912
1073741824
2147483648
4294967296
8589934592
17179869184
34359738368
68719476736
137438953472
274877906944
549755813888
1099511627776
2199023255552
4398046511104
8796093022208
17592186044416
35184372088832
70368744177664
140737488355328
281474976710656
562949953421312
1125899906842624
2251799813685248
4503599627370496
9007199254740992
18014398509481984
36028797018963968
72057594037927936
144115188075855872
288230376151711744
576460752303423488
1152921504606846976
2305843009213693952
4611686018427387904
9223372036854775808
18446744073709551616
36893488147419103232
73786976294838206464
147573952589676412928
295147905179352825856
590295810358705651712
1180591620717411303424
2361183241434822606848
4722366482869645213696
9444732965739290427392
18889465931478580854784
37778931862957161709568
75557863725914323419136
151115727451828646838272
302231454903657293676544
604462909807314587353088
1208925819614629174706176
2417851639229258349412352
4835703278458516698824704
9671406556917033397649408
19342813113834066795298816
38685626227668133590597632
77371252455336267181195264
154742504910672534362390528
309485009821345068724781056
618970019642690137449562112
1237940039285380274899124224
2475880078570760549798248448
4951760157141521099596496896
9903520314283042199192993792
19807040628566084398385987584
39614081257132168796771975168
79228162514264337593543950336
158456325028528675187087900672
316912650057057350374175801344
633825300114114700748351602688
1267650600228229401496703205376
2535301200456458802993406410752
5070602400912917605986812821504
10141204801825835211973625643008
20282409603651670423947251286016
40564819207303340847894502572032
81129638414606681695789005144064
162259276829213363391578010288128
324518553658426726783156020576256
649037107316853453566312041152512
1298074214633706907132624082305024
2596148429267413814265248164610048
5192296858534827628530496329220096
10384593717069655257060992658440192
20769187434139310514121985316880384
41538374868278621028243970633760768
83076749736557242056487941267521536
166153499473114484112975882535043072
332306998946228968225951765070086144
664613997892457936451903530140172288
1329227995784915872903807060280344576
2658455991569831745807614120560689152
5316911983139663491615228241121378304
10633823966279326983230456482242756608
21267647932558653966460912964485513216
42535295865117307932921825928971026432
85070591730234615865843651857942052864
170141183460469231731687303715884105728
340282366920938463463374607431768211456
680564733841876926926749214863536422912
1361129467683753853853498429727072845824
2722258935367507707706996859454145691648
5444517870735015415413993718908291383296
10889035741470030830827987437816582766592
21778071482940061661655974875633165533184
43556142965880123323311949751266331066368
87112285931760246646623899502532662132736
174224571863520493293247799005065324265472
348449143727040986586495598010130648530944
696898287454081973172991196020261297061888
1393796574908163946345982392040522594123776
2787593149816327892691964784081045188247552
5575186299632655785383929568162090376495104
11150372599265311570767859136324180752990208
22300745198530623141535718272648361505980416
44601490397061246283071436545296723011960832
89202980794122492566142873090593446023921664
178405961588244985132285746181186892047843328
356811923176489970264571492362373784095686656
713623846352979940529142984724747568191373312
1427247692705959881058285969449495136382746624
2854495385411919762116571938898990272765493248
5708990770823839524233143877797980545530986496
11417981541647679048466287755595961091061972992
22835963083295358096932575511191922182123945984
45671926166590716193865151022383844364247891968
91343852333181432387730302044767688728495783936
182687704666362864775460604089535377456991567872
365375409332725729550921208179070754913983135744
730750818665451459101842416358141509827966271488
1461501637330902918203684832716283019655932542976
2923003274661805836407369665432566039311865085952
5846006549323611672814739330865132078623730171904
11692013098647223345629478661730264157247460343808
23384026197294446691258957323460528314494920687616
46768052394588893382517914646921056628989841375232
93536104789177786765035829293842113257979682750464
187072209578355573530071658587684226515959365500928
374144419156711147060143317175368453031918731001856
748288838313422294120286634350736906063837462003712
1496577676626844588240573268701473812127674924007424
2993155353253689176481146537402947624255349848014848
5986310706507378352962293074805895248510699696029696
11972621413014756705924586149611790497021399392059392
23945242826029513411849172299223580994042798784118784
47890485652059026823698344598447161988085597568237568
95780971304118053647396689196894323976171195136475136
191561942608236107294793378393788647952342390272950272
383123885216472214589586756787577295904684780545900544
766247770432944429179173513575154591809369561091801088
1532495540865888858358347027150309183618739122183602176
3064991081731777716716694054300618367237478244367204352
6129982163463555433433388108601236734474956488734408704
12259964326927110866866776217202473468949912977468817408
24519928653854221733733552434404946937899825954937634816
49039857307708443467467104868809893875799651909875269632
98079714615416886934934209737619787751599303819750539264
196159429230833773869868419475239575503198607639501078528
392318858461667547739736838950479151006397215279002157056
784637716923335095479473677900958302012794430558004314112
1569275433846670190958947355801916604025588861116008628224
3138550867693340381917894711603833208051177722232017256448
6277101735386680763835789423207666416102355444464034512896
12554203470773361527671578846415332832204710888928069025792
25108406941546723055343157692830665664409421777856138051584
50216813883093446110686315385661331328818843555712276103168
100433627766186892221372630771322662657637687111424552206336
200867255532373784442745261542645325315275374222849104412672
401734511064747568885490523085290650630550748445698208825344
803469022129495137770981046170581301261101496891396417650688
1606938044258990275541962092341162602522202993782792835301376
3213876088517980551083924184682325205044405987565585670602752
6427752177035961102167848369364650410088811975131171341205504
12855504354071922204335696738729300820177623950262342682411008
25711008708143844408671393477458601640355247900524685364822016
51422017416287688817342786954917203280710495801049370729644032
102844034832575377634685573909834406561420991602098741459288064
205688069665150755269371147819668813122841983204197482918576128
411376139330301510538742295639337626245683966408394965837152256
822752278660603021077484591278675252491367932816789931674304512
1645504557321206042154969182557350504982735865633579863348609024
3291009114642412084309938365114701009965471731267159726697218048
6582018229284824168619876730229402019930943462534319453394436096
13164036458569648337239753460458804039861886925068638906788872192
26328072917139296674479506920917608079723773850137277813577744384
52656145834278593348959013841835216159447547700274555627155488768
105312291668557186697918027683670432318895095400549111254310977536
210624583337114373395836055367340864637790190801098222508621955072
421249166674228746791672110734681729275580381602196445017243910144
842498333348457493583344221469363458551160763204392890034487820288
1684996666696914987166688442938726917102321526408785780068975640576
3369993333393829974333376885877453834204643052817571560137951281152
6739986666787659948666753771754907668409286105635143120275902562304
13479973333575319897333507543509815336818572211270286240551805124608
26959946667150639794667015087019630673637144422540572481103610249216
53919893334301279589334030174039261347274288845081144962207220498432
107839786668602559178668060348078522694548577690162289924414440996864
215679573337205118357336120696157045389097155380324579848828881993728
431359146674410236714672241392314090778194310760649159697657763987456
862718293348820473429344482784628181556388621521298319395315527974912
1725436586697640946858688965569256363112777243042596638790631055949824
3450873173395281893717377931138512726225554486085193277581262111899648
6901746346790563787434755862277025452451108972170386555162524223799296
13803492693581127574869511724554050904902217944340773110325048447598592
27606985387162255149739023449108101809804435888681546220650096895197184
55213970774324510299478046898216203619608871777363092441300193790394368
110427941548649020598956093796432407239217743554726184882600387580788736
220855883097298041197912187592864814478435487109452369765200775161577472
441711766194596082395824375185729628956870974218904739530401550323154944
883423532389192164791648750371459257913741948437809479060803100646309888
1766847064778384329583297500742918515827483896875618958121606201292619776
3533694129556768659166595001485837031654967793751237916243212402585239552
7067388259113537318333190002971674063309935587502475832486424805170479104
14134776518227074636666380005943348126619871175004951664972849610340958208
28269553036454149273332760011886696253239742350009903329945699220681916416
56539106072908298546665520023773392506479484700019806659891398441363832832
113078212145816597093331040047546785012958969400039613319782796882727665664
226156424291633194186662080095093570025917938800079226639565593765455331328
452312848583266388373324160190187140051835877600158453279131187530910662656
904625697166532776746648320380374280103671755200316906558262375061821325312
1809251394333065553493296640760748560207343510400633813116524750123642650624
3618502788666131106986593281521497120414687020801267626233049500247285301248
7237005577332262213973186563042994240829374041602535252466099000494570602496
14474011154664524427946373126085988481658748083205070504932198000989141204992
28948022309329048855892746252171976963317496166410141009864396001978282409984
57896044618658097711785492504343953926634992332820282019728792003956564819968
115792089237316195423570985008687907853269984665640564039457584007913129639936
231584178474632390847141970017375815706539969331281128078915168015826259279872
463168356949264781694283940034751631413079938662562256157830336031652518559744
926336713898529563388567880069503262826159877325124512315660672063305037119488
1852673427797059126777135760139006525652319754650249024631321344126610074238976
3705346855594118253554271520278013051304639509300498049262642688253220148477952
7410693711188236507108543040556026102609279018600996098525285376506440296955904
14821387422376473014217086081112052205218558037201992197050570753012880593911808
29642774844752946028434172162224104410437116074403984394101141506025761187823616
59285549689505892056868344324448208820874232148807968788202283012051522375647232
118571099379011784113736688648896417641748464297615937576404566024103044751294464
237142198758023568227473377297792835283496928595231875152809132048206089502588928
474284397516047136454946754595585670566993857190463750305618264096412179005177856
948568795032094272909893509191171341133987714380927500611236528192824358010355712
1897137590064188545819787018382342682267975428761855001222473056385648716020711424
3794275180128377091639574036764685364535950857523710002444946112771297432041422848
7588550360256754183279148073529370729071901715047420004889892225542594864082845696
15177100720513508366558296147058741458143803430094840009779784451085189728165691392
30354201441027016733116592294117482916287606860189680019559568902170379456331382784
60708402882054033466233184588234965832575213720379360039119137804340758912662765568
121416805764108066932466369176469931665150427440758720078238275608681517825325531136
242833611528216133864932738352939863330300854881517440156476551217363035650651062272
485667223056432267729865476705879726660601709763034880312953102434726071301302124544
971334446112864535459730953411759453321203419526069760625906204869452142602604249088
1942668892225729070919461906823518906642406839052139521251812409738904285205208498176
3885337784451458141838923813647037813284813678104279042503624819477808570410416996352
7770675568902916283677847627294075626569627356208558085007249638955617140820833992704
15541351137805832567355695254588151253139254712417116170014499277911234281641667985408
31082702275611665134711390509176302506278509424834232340028998555822468563283335970816
62165404551223330269422781018352605012557018849668464680057997111644937126566671941632
124330809102446660538845562036705210025114037699336929360115994223289874253133343883264
248661618204893321077691124073410420050228075398673858720231988446579748506266687766528
497323236409786642155382248146820840100456150797347717440463976893159497012533375533056
994646472819573284310764496293641680200912301594695434880927953786318994025066751066112
1989292945639146568621528992587283360401824603189390869761855907572637988050133502132224
3978585891278293137243057985174566720803649206378781739523711815145275976100267004264448
7957171782556586274486115970349133441607298412757563479047423630290551952200534008528896
15914343565113172548972231940698266883214596825515126958094847260581103904401068017057792
31828687130226345097944463881396533766429193651030253916189694521162207808802136034115584
63657374260452690195888927762793067532858387302060507832379389042324415617604272068231168
127314748520905380391777855525586135065716774604121015664758778084648831235208544136462336
254629497041810760783555711051172270131433549208242031329517556169297662470417088272924672
509258994083621521567111422102344540262867098416484062659035112338595324940834176545849344
1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688
2037035976334486086268445688409378161051468393665936250636140449354381299763336706183397376
4074071952668972172536891376818756322102936787331872501272280898708762599526673412366794752
8148143905337944345073782753637512644205873574663745002544561797417525199053346824733589504
16296287810675888690147565507275025288411747149327490005089123594835050398106693649467179008
32592575621351777380295131014550050576823494298654980010178247189670100796213387298934358016
65185151242703554760590262029100101153646988597309960020356494379340201592426774597868716032
130370302485407109521180524058200202307293977194619920040712988758680403184853549195737432064
260740604970814219042361048116400404614587954389239840081425977517360806369707098391474864128
521481209941628438084722096232800809229175908778479680162851955034721612739414196782949728256
1042962419883256876169444192465601618458351817556959360325703910069443225478828393565899456512
2085924839766513752338888384931203236916703635113918720651407820138886450957656787131798913024
4171849679533027504677776769862406473833407270227837441302815640277772901915313574263597826048
8343699359066055009355553539724812947666814540455674882605631280555545803830627148527195652096
16687398718132110018711107079449625895333629080911349765211262561111091607661254297054391304192
33374797436264220037422214158899251790667258161822699530422525122222183215322508594108782608384
66749594872528440074844428317798503581334516323645399060845050244444366430645017188217565216768
133499189745056880149688856635597007162669032647290798121690100488888732861290034376435130433536
266998379490113760299377713271194014325338065294581596243380200977777465722580068752870260867072
533996758980227520598755426542388028650676130589163192486760401955554931445160137505740521734144
1067993517960455041197510853084776057301352261178326384973520803911109862890320275011481043468288
2135987035920910082395021706169552114602704522356652769947041607822219725780640550022962086936576
4271974071841820164790043412339104229205409044713305539894083215644439451561281100045924173873152
8543948143683640329580086824678208458410818089426611079788166431288878903122562200091848347746304
17087896287367280659160173649356416916821636178853222159576332862577757806245124400183696695492608
34175792574734561318320347298712833833643272357706444319152665725155515612490248800367393390985216
68351585149469122636640694597425667667286544715412888638305331450311031224980497600734786781970432
136703170298938245273281389194851335334573089430825777276610662900622062449960995201469573563940864
273406340597876490546562778389702670669146178861651554553221325801244124899921990402939147127881728
546812681195752981093125556779405341338292357723303109106442651602488249799843980805878294255763456
1093625362391505962186251113558810682676584715446606218212885303204976499599687961611756588511526912
2187250724783011924372502227117621365353169430893212436425770606409952999199375923223513177023053824
4374501449566023848745004454235242730706338861786424872851541212819905998398751846447026354046107648
8749002899132047697490008908470485461412677723572849745703082425639811996797503692894052708092215296
17498005798264095394980017816940970922825355447145699491406164851279623993595007385788105416184430592
34996011596528190789960035633881941845650710894291398982812329702559247987190014771576210832368861184
69992023193056381579920071267763883691301421788582797965624659405118495974380029543152421664737722368
139984046386112763159840142535527767382602843577165595931249318810236991948760059086304843329475444736
279968092772225526319680285071055534765205687154331191862498637620473983897520118172609686658950889472
559936185544451052639360570142111069530411374308662383724997275240947967795040236345219373317901778944
1119872371088902105278721140284222139060822748617324767449994550481895935590080472690438746635803557888
2239744742177804210557442280568444278121645497234649534899989100963791871180160945380877493271607115776
4479489484355608421114884561136888556243290994469299069799978201927583742360321890761754986543214231552
8958978968711216842229769122273777112486581988938598139599956403855167484720643781523509973086428463104
17917957937422433684459538244547554224973163977877196279199912807710334969441287563047019946172856926208
35835915874844867368919076489095108449946327955754392558399825615420669938882575126094039892345713852416
71671831749689734737838152978190216899892655911508785116799651230841339877765150252188079784691427704832
143343663499379469475676305956380433799785311823017570233599302461682679755530300504376159569382855409664
286687326998758938951352611912760867599570623646035140467198604923365359511060601008752319138765710819328
573374653997517877902705223825521735199141247292070280934397209846730719022121202017504638277531421638656
1146749307995035755805410447651043470398282494584140561868794419693461438044242404035009276555062843277312
2293498615990071511610820895302086940796564989168281123737588839386922876088484808070018553110125686554624
4586997231980143023221641790604173881593129978336562247475177678773845752176969616140037106220251373109248
9173994463960286046443283581208347763186259956673124494950355357547691504353939232280074212440502746218496
18347988927920572092886567162416695526372519913346248989900710715095383008707878464560148424881005492436992
36695977855841144185773134324833391052745039826692497979801421430190766017415756929120296849762010984873984
73391955711682288371546268649666782105490079653384995959602842860381532034831513858240593699524021969747968
146783911423364576743092537299333564210980159306769991919205685720763064069663027716481187399048043939495936
293567822846729153486185074598667128421960318613539983838411371441526128139326055432962374798096087878991872
587135645693458306972370149197334256843920637227079967676822742883052256278652110865924749596192175757983744
1174271291386916613944740298394668513687841274454159935353645485766104512557304221731849499192384351515967488
2348542582773833227889480596789337027375682548908319870707290971532209025114608443463698998384768703031934976
4697085165547666455778961193578674054751365097816639741414581943064418050229216886927397996769537406063869952
9394170331095332911557922387157348109502730195633279482829163886128836100458433773854795993539074812127739904
18788340662190665823115844774314696219005460391266558965658327772257672200916867547709591987078149624255479808
37576681324381331646231689548629392438010920782533117931316655544515344401833735095419183974156299248510959616
75153362648762663292463379097258784876021841565066235862633311089030688803667470190838367948312598497021919232
150306725297525326584926758194517569752043683130132471725266622178061377607334940381676735896625196994043838464
300613450595050653169853516389035139504087366260264943450533244356122755214669880763353471793250393988087676928
601226901190101306339707032778070279008174732520529886901066488712245510429339761526706943586500787976175353856
1202453802380202612679414065556140558016349465041059773802132977424491020858679523053413887173001575952350707712
2404907604760405225358828131112281116032698930082119547604265954848982041717359046106827774346003151904701415424
4809815209520810450717656262224562232065397860164239095208531909697964083434718092213655548692006303809402830848
9619630419041620901435312524449124464130795720328478190417063819395928166869436184427311097384012607618805661696
19239260838083241802870625048898248928261591440656956380834127638791856333738872368854622194768025215237611323392
38478521676166483605741250097796497856523182881313912761668255277583712667477744737709244389536050430475222646784
76957043352332967211482500195592995713046365762627825523336510555167425334955489475418488779072100860950445293568
153914086704665934422965000391185991426092731525255651046673021110334850669910978950836977558144201721900890587136
307828173409331868845930000782371982852185463050511302093346042220669701339821957901673955116288403443801781174272
615656346818663737691860001564743965704370926101022604186692084441339402679643915803347910232576806887603562348544
1231312693637327475383720003129487931408741852202045208373384168882678805359287831606695820465153613775207124697088
2462625387274654950767440006258975862817483704404090416746768337765357610718575663213391640930307227550414249394176
4925250774549309901534880012517951725634967408808180833493536675530715221437151326426783281860614455100828498788352
9850501549098619803069760025035903451269934817616361666987073351061430442874302652853566563721228910201656997576704
19701003098197239606139520050071806902539869635232723333974146702122860885748605305707133127442457820403313995153408
39402006196394479212279040100143613805079739270465446667948293404245721771497210611414266254884915640806627990306816
78804012392788958424558080200287227610159478540930893335896586808491443542994421222828532509769831281613255980613632
157608024785577916849116160400574455220318957081861786671793173616982887085988842445657065019539662563226511961227264
315216049571155833698232320801148910440637914163723573343586347233965774171977684891314130039079325126453023922454528
630432099142311667396464641602297820881275828327447146687172694467931548343955369782628260078158650252906047844909056
1260864198284623334792929283204595641762551656654894293374345388935863096687910739565256520156317300505812095689818112
2521728396569246669585858566409191283525103313309788586748690777871726193375821479130513040312634601011624191379636224
5043456793138493339171717132818382567050206626619577173497381555743452386751642958261026080625269202023248382759272448
10086913586276986678343434265636765134100413253239154346994763111486904773503285916522052161250538404046496765518544896
20173827172553973356686868531273530268200826506478308693989526222973809547006571833044104322501076808092993531037089792
40347654345107946713373737062547060536401653012956617387979052445947619094013143666088208645002153616185987062074179584
80695308690215893426747474125094121072803306025913234775958104891895238188026287332176417290004307232371974124148359168
161390617380431786853494948250188242145606612051826469551916209783790476376052574664352834580008614464743948248296718336
322781234760863573706989896500376484291213224103652939103832419567580952752105149328705669160017228929487896496593436672
645562469521727147413979793000752968582426448207305878207664839135161905504210298657411338320034457858975792993186873344
1291124939043454294827959586001505937164852896414611756415329678270323811008420597314822676640068915717951585986373746688
2582249878086908589655919172003011874329705792829223512830659356540647622016841194629645353280137831435903171972747493376
5164499756173817179311838344006023748659411585658447025661318713081295244033682389259290706560275662871806343945494986752
10328999512347634358623676688012047497318823171316894051322637426162590488067364778518581413120551325743612687890989973504
20657999024695268717247353376024094994637646342633788102645274852325180976134729557037162826241102651487225375781979947008
41315998049390537434494706752048189989275292685267576205290549704650361952269459114074325652482205302974450751563959894016
82631996098781074868989413504096379978550585370535152410581099409300723904538918228148651304964410605948901503127919788032
165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064
330527984395124299475957654016385519914202341482140609642324397637202895618155672912594605219857642423795606012511679152128
661055968790248598951915308032771039828404682964281219284648795274405791236311345825189210439715284847591212025023358304256
1322111937580497197903830616065542079656809365928562438569297590548811582472622691650378420879430569695182424050046716608512
2644223875160994395807661232131084159313618731857124877138595181097623164945245383300756841758861139390364848100093433217024
5288447750321988791615322464262168318627237463714249754277190362195246329890490766601513683517722278780729696200186866434048
10576895500643977583230644928524336637254474927428499508554380724390492659780981533203027367035444557561459392400373732868096
21153791001287955166461289857048673274508949854856999017108761448780985319561963066406054734070889115122918784800747465736192
42307582002575910332922579714097346549017899709713998034217522897561970639123926132812109468141778230245837569601494931472384
84615164005151820665845159428194693098035799419427996068435045795123941278247852265624218936283556460491675139202989862944768
169230328010303641331690318856389386196071598838855992136870091590247882556495704531248437872567112920983350278405979725889536
338460656020607282663380637712778772392143197677711984273740183180495765112991409062496875745134225841966700556811959451779072
676921312041214565326761275425557544784286395355423968547480366360991530225982818124993751490268451683933401113623918903558144
1353842624082429130653522550851115089568572790710847937094960732721983060451965636249987502980536903367866802227247837807116288
2707685248164858261307045101702230179137145581421695874189921465443966120903931272499975005961073806735733604454495675614232576
5415370496329716522614090203404460358274291162843391748379842930887932241807862544999950011922147613471467208908991351228465152
10830740992659433045228180406808920716548582325686783496759685861775864483615725089999900023844295226942934417817982702456930304
21661481985318866090456360813617841433097164651373566993519371723551728967231450179999800047688590453885868835635965404913860608
43322963970637732180912721627235682866194329302747133987038743447103457934462900359999600095377180907771737671271930809827721216
86645927941275464361825443254471365732388658605494267974077486894206915868925800719999200190754361815543475342543861619655442432
173291855882550928723650886508942731464777317210988535948154973788413831737851601439998400381508723631086950685087723239310884864
346583711765101857447301773017885462929554634421977071896309947576827663475703202879996800763017447262173901370175446478621769728
693167423530203714894603546035770925859109268843954143792619895153655326951406405759993601526034894524347802740350892957243539456
1386334847060407429789207092071541851718218537687908287585239790307310653902812811519987203052069789048695605480701785914487078912
2772669694120814859578414184143083703436437075375816575170479580614621307805625623039974406104139578097391210961403571828974157824
5545339388241629719156828368286167406872874150751633150340959161229242615611251246079948812208279156194782421922807143657948315648
11090678776483259438313656736572334813745748301503266300681918322458485231222502492159897624416558312389564843845614287315896631296
22181357552966518876627313473144669627491496603006532601363836644916970462445004984319795248833116624779129687691228574631793262592
44362715105933037753254626946289339254982993206013065202727673289833940924890009968639590497666233249558259375382457149263586525184
88725430211866075506509253892578678509965986412026130405455346579667881849780019937279180995332466499116518750764914298527173050368
177450860423732151013018507785157357019931972824052260810910693159335763699560039874558361990664932998233037501529828597054346100736
354901720847464302026037015570314714039863945648104521621821386318671527399120079749116723981329865996466075003059657194108692201472
709803441694928604052074031140629428079727891296209043243642772637343054798240159498233447962659731992932150006119314388217384402944
1419606883389857208104148062281258856159455782592418086487285545274686109596480318996466895925319463985864300012238628776434768805888
2839213766779714416208296124562517712318911565184836172974571090549372219192960637992933791850638927971728600024477257552869537611776
5678427533559428832416592249125035424637823130369672345949142181098744438385921275985867583701277855943457200048954515105739075223552
11356855067118857664833184498250070849275646260739344691898284362197488876771842551971735167402555711886914400097909030211478150447104
22713710134237715329666368996500141698551292521478689383796568724394977753543685103943470334805111423773828800195818060422956300894208
45427420268475430659332737993000283397102585042957378767593137448789955507087370207886940669610222847547657600391636120845912601788416
90854840536950861318665475986000566794205170085914757535186274897579911014174740415773881339220445695095315200783272241691825203576832
181709681073901722637330951972001133588410340171829515070372549795159822028349480831547762678440891390190630401566544483383650407153664
363419362147803445274661903944002267176820680343659030140745099590319644056698961663095525356881782780381260803133088966767300814307328
726838724295606890549323807888004534353641360687318060281490199180639288113397923326191050713763565560762521606266177933534601628614656
1453677448591213781098647615776009068707282721374636120562980398361278576226795846652382101427527131121525043212532355867069203257229312
2907354897182427562197295231552018137414565442749272241125960796722557152453591693304764202855054262243050086425064711734138406514458624
5814709794364855124394590463104036274829130885498544482251921593445114304907183386609528405710108524486100172850129423468276813028917248
11629419588729710248789180926208072549658261770997088964503843186890228609814366773219056811420217048972200345700258846936553626057834496
23258839177459420497578361852416145099316523541994177929007686373780457219628733546438113622840434097944400691400517693873107252115668992
46517678354918840995156723704832290198633047083988355858015372747560914439257467092876227245680868195888801382801035387746214504231337984
93035356709837681990313447409664580397266094167976711716030745495121828878514934185752454491361736391777602765602070775492429008462675968
186070713419675363980626894819329160794532188335953423432061490990243657757029868371504908982723472783555205531204141550984858016925351936
372141426839350727961253789638658321589064376671906846864122981980487315514059736743009817965446945567110411062408283101969716033850703872
744282853678701455922507579277316643178128753343813693728245963960974631028119473486019635930893891134220822124816566203939432067701407744
1488565707357402911845015158554633286356257506687627387456491927921949262056238946972039271861787782268441644249633132407878864135402815488
2977131414714805823690030317109266572712515013375254774912983855843898524112477893944078543723575564536883288499266264815757728270805630976
5954262829429611647380060634218533145425030026750509549825967711687797048224955787888157087447151129073766576998532529631515456541611261952
11908525658859223294760121268437066290850060053501019099651935423375594096449911575776314174894302258147533153997065059263030913083222523904
23817051317718446589520242536874132581700120107002038199303870846751188192899823151552628349788604516295066307994130118526061826166445047808
47634102635436893179040485073748265163400240214004076398607741693502376385799646303105256699577209032590132615988260237052123652332890095616
95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232
190536410541747572716161940294993060653600960856016305594430966774009505543198585212421026798308836130360530463953040948208494609331560382464
381072821083495145432323880589986121307201921712032611188861933548019011086397170424842053596617672260721060927906081896416989218663120764928
762145642166990290864647761179972242614403843424065222377723867096038022172794340849684107193235344521442121855812163792833978437326241529856
1524291284333980581729295522359944485228807686848130444755447734192076044345588681699368214386470689042884243711624327585667956874652483059712
3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424
6097165137335922326917182089439777940915230747392521779021790936768304177382354726797472857545882756171536974846497310342671827498609932238848
12194330274671844653834364178879555881830461494785043558043581873536608354764709453594945715091765512343073949692994620685343654997219864477696
24388660549343689307668728357759111763660922989570087116087163747073216709529418907189891430183531024686147899385989241370687309994439728955392
48777321098687378615337456715518223527321845979140174232174327494146433419058837814379782860367062049372295798771978482741374619988879457910784
97554642197374757230674913431036447054643691958280348464348654988292866838117675628759565720734124098744591597543956965482749239977758915821568
195109284394749514461349826862072894109287383916560696928697309976585733676235351257519131441468248197489183195087913930965498479955517831643136
390218568789499028922699653724145788218574767833121393857394619953171467352470702515038262882936496394978366390175827861930996959911035663286272
780437137578998057845399307448291576437149535666242787714789239906342934704941405030076525765872992789956732780351655723861993919822071326572544
1560874275157996115690798614896583152874299071332485575429578479812685869409882810060153051531745985579913465560703311447723987839644142653145088
3121748550315992231381597229793166305748598142664971150859156959625371738819765620120306103063491971159826931121406622895447975679288285306290176
6243497100631984462763194459586332611497196285329942301718313919250743477639531240240612206126983942319653862242813245790895951358576570612580352
12486994201263968925526388919172665222994392570659884603436627838501486955279062480481224412253967884639307724485626491581791902717153141225160704
24973988402527937851052777838345330445988785141319769206873255677002973910558124960962448824507935769278615448971252983163583805434306282450321408
49947976805055875702105555676690660891977570282639538413746511354005947821116249921924897649015871538557230897942505966327167610868612564900642816
99895953610111751404211111353381321783955140565279076827493022708011895642232499843849795298031743077114461795885011932654335221737225129801285632
199791907220223502808422222706762643567910281130558153654986045416023791284464999687699590596063486154228923591770023865308670443474450259602571264
399583814440447005616844445413525287135820562261116307309972090832047582568929999375399181192126972308457847183540047730617340886948900519205142528
799167628880894011233688890827050574271641124522232614619944181664095165137859998750798362384253944616915694367080095461234681773897801038410285056
1598335257761788022467377781654101148543282249044465229239888363328190330275719997501596724768507889233831388734160190922469363547795602076820570112
3196670515523576044934755563308202297086564498088930458479776726656380660551439995003193449537015778467662777468320381844938727095591204153641140224
6393341031047152089869511126616404594173128996177860916959553453312761321102879990006386899074031556935325554936640763689877454191182408307282280448
12786682062094304179739022253232809188346257992355721833919106906625522642205759980012773798148063113870651109873281527379754908382364816614564560896
25573364124188608359478044506465618376692515984711443667838213813251045284411519960025547596296126227741302219746563054759509816764729633229129121792
51146728248377216718956089012931236753385031969422887335676427626502090568823039920051095192592252455482604439493126109519019633529459266458258243584
102293456496754433437912178025862473506770063938845774671352855253004181137646079840102190385184504910965208878986252219038039267058918532916516487168
204586912993508866875824356051724947013540127877691549342705710506008362275292159680204380770369009821930417757972504438076078534117837065833032974336
409173825987017733751648712103449894027080255755383098685411421012016724550584319360408761540738019643860835515945008876152157068235674131666065948672
818347651974035467503297424206899788054160511510766197370822842024033449101168638720817523081476039287721671031890017752304314136471348263332131897344
1636695303948070935006594848413799576108321023021532394741645684048066898202337277441635046162952078575443342063780035504608628272942696526664263794688
3273390607896141870013189696827599152216642046043064789483291368096133796404674554883270092325904157150886684127560071009217256545885393053328527589376
6546781215792283740026379393655198304433284092086129578966582736192267592809349109766540184651808314301773368255120142018434513091770786106657055178752
13093562431584567480052758787310396608866568184172259157933165472384535185618698219533080369303616628603546736510240284036869026183541572213314110357504
26187124863169134960105517574620793217733136368344518315866330944769070371237396439066160738607233257207093473020480568073738052367083144426628220715008
52374249726338269920211035149241586435466272736689036631732661889538140742474792878132321477214466514414186946040961136147476104734166288853256441430016
104748499452676539840422070298483172870932545473378073263465323779076281484949585756264642954428933028828373892081922272294952209468332577706512882860032
209496998905353079680844140596966345741865090946756146526930647558152562969899171512529285908857866057656747784163844544589904418936665155413025765720064
418993997810706159361688281193932691483730181893512293053861295116305125939798343025058571817715732115313495568327689089179808837873330310826051531440128
837987995621412318723376562387865382967460363787024586107722590232610251879596686050117143635431464230626991136655378178359617675746660621652103062880256
1675975991242824637446753124775730765934920727574049172215445180465220503759193372100234287270862928461253982273310756356719235351493321243304206125760512
3351951982485649274893506249551461531869841455148098344430890360930441007518386744200468574541725856922507964546621512713438470702986642486608412251521024
6703903964971298549787012499102923063739682910296196688861780721860882015036773488400937149083451713845015929093243025426876941405973284973216824503042048
13407807929942597099574024998205846127479365820592393377723561443721764030073546976801874298166903427690031858186486050853753882811946569946433649006084096
26815615859885194199148049996411692254958731641184786755447122887443528060147093953603748596333806855380063716372972101707507765623893139892867298012168192
53631231719770388398296099992823384509917463282369573510894245774887056120294187907207497192667613710760127432745944203415015531247786279785734596024336384
107262463439540776796592199985646769019834926564739147021788491549774112240588375814414994385335227421520254865491888406830031062495572559571469192048672768
214524926879081553593184399971293538039669853129478294043576983099548224481176751628829988770670454843040509730983776813660062124991145119142938384097345536
429049853758163107186368799942587076079339706258956588087153966199096448962353503257659977541340909686081019461967553627320124249982290238285876768194691072
858099707516326214372737599885174152158679412517913176174307932398192897924707006515319955082681819372162038923935107254640248499964580476571753536389382144
1716199415032652428745475199770348304317358825035826352348615864796385795849414013030639910165363638744324077847870214509280496999929160953143507072778764288
3432398830065304857490950399540696608634717650071652704697231729592771591698828026061279820330727277488648155695740429018560993999858321906287014145557528576
6864797660130609714981900799081393217269435300143305409394463459185543183397656052122559640661454554977296311391480858037121987999716643812574028291115057152
13729595320261219429963801598162786434538870600286610818788926918371086366795312104245119281322909109954592622782961716074243975999433287625148056582230114304
27459190640522438859927603196325572869077741200573221637577853836742172733590624208490238562645818219909185245565923432148487951998866575250296113164460228608
54918381281044877719855206392651145738155482401146443275155707673484345467181248416980477125291636439818370491131846864296975903997733150500592226328920457216
109836762562089755439710412785302291476310964802292886550311415346968690934362496833960954250583272879636740982263693728593951807995466301001184452657840914432
219673525124179510879420825570604582952621929604585773100622830693937381868724993667921908501166545759273481964527387457187903615990932602002368905315681828864
439347050248359021758841651141209165905243859209171546201245661387874763737449987335843817002333091518546963929054774914375807231981865204004737810631363657728
878694100496718043517683302282418331810487718418343092402491322775749527474899974671687634004666183037093927858109549828751614463963730408009475621262727315456
1757388200993436087035366604564836663620975436836686184804982645551499054949799949343375268009332366074187855716219099657503228927927460816018951242525454630912
3514776401986872174070733209129673327241950873673372369609965291102998109899599898686750536018664732148375711432438199315006457855854921632037902485050909261824
7029552803973744348141466418259346654483901747346744739219930582205996219799199797373501072037329464296751422864876398630012915711709843264075804970101818523648
14059105607947488696282932836518693308967803494693489478439861164411992439598399594747002144074658928593502845729752797260025831423419686528151609940203637047296
28118211215894977392565865673037386617935606989386978956879722328823984879196799189494004288149317857187005691459505594520051662846839373056303219880407274094592
56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184
112472844863579909570263462692149546471742427957547915827518889315295939516787196757976017152597271428748022765838022378080206651387357492225212879521629096378368
224945689727159819140526925384299092943484855915095831655037778630591879033574393515952034305194542857496045531676044756160413302774714984450425759043258192756736
449891379454319638281053850768598185886969711830191663310075557261183758067148787031904068610389085714992091063352089512320826605549429968900851518086516385513472
899782758908639276562107701537196371773939423660383326620151114522367516134297574063808137220778171429984182126704179024641653211098859937801703036173032771026944
1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888
3599131035634557106248430806148785487095757694641533306480604458089470064537190296255232548883112685719936728506816716098566612844395439751206812144692131084107776
7198262071269114212496861612297570974191515389283066612961208916178940129074380592510465097766225371439873457013633432197133225688790879502413624289384262168215552
14396524142538228424993723224595141948383030778566133225922417832357880258148761185020930195532450742879746914027266864394266451377581759004827248578768524336431104
28793048285076456849987446449190283896766061557132266451844835664715760516297522370041860391064901485759493828054533728788532902755163518009654497157537048672862208
57586096570152913699974892898380567793532123114264532903689671329431521032595044740083720782129802971518987656109067457577065805510327036019308994315074097345724416
115172193140305827399949785796761135587064246228529065807379342658863042065190089480167441564259605943037975312218134915154131611020654072038617988630148194691448832
230344386280611654799899571593522271174128492457058131614758685317726084130380178960334883128519211886075950624436269830308263222041308144077235977260296389382897664
460688772561223309599799143187044542348256984914116263229517370635452168260760357920669766257038423772151901248872539660616526444082616288154471954520592778765795328
921377545122446619199598286374089084696513969828232526459034741270904336521520715841339532514076847544303802497745079321233052888165232576308943909041185557531590656
1842755090244893238399196572748178169393027939656465052918069482541808673043041431682679065028153695088607604995490158642466105776330465152617887818082371115063181312
3685510180489786476798393145496356338786055879312930105836138965083617346086082863365358130056307390177215209990980317284932211552660930305235775636164742230126362624
7371020360979572953596786290992712677572111758625860211672277930167234692172165726730716260112614780354430419981960634569864423105321860610471551272329484460252725248
14742040721959145907193572581985425355144223517251720423344555860334469384344331453461432520225229560708860839963921269139728846210643721220943102544658968920505450496
29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992
58968162887836583628774290327941701420576894069006881693378223441337877537377325813845730080900918242835443359855685076558915384842574884883772410178635875682021801984
117936325775673167257548580655883402841153788138013763386756446882675755074754651627691460161801836485670886719711370153117830769685149769767544820357271751364043603968
235872651551346334515097161311766805682307576276027526773512893765351510149509303255382920323603672971341773439422740306235661539370299539535089640714543502728087207936
471745303102692669030194322623533611364615152552055053547025787530703020299018606510765840647207345942683546878845480612471323078740599079070179281429087005456174415872
943490606205385338060388645247067222729230305104110107094051575061406040598037213021531681294414691885367093757690961224942646157481198158140358562858174010912348831744
1886981212410770676120777290494134445458460610208220214188103150122812081196074426043063362588829383770734187515381922449885292314962396316280717125716348021824697663488
3773962424821541352241554580988268890916921220416440428376206300245624162392148852086126725177658767541468375030763844899770584629924792632561434251432696043649395326976
7547924849643082704483109161976537781833842440832880856752412600491248324784297704172253450355317535082936750061527689799541169259849585265122868502865392087298790653952
15095849699286165408966218323953075563667684881665761713504825200982496649568595408344506900710635070165873500123055379599082338519699170530245737005730784174597581307904
30191699398572330817932436647906151127335369763331523427009650401964993299137190816689013801421270140331747000246110759198164677039398341060491474011461568349195162615808
60383398797144661635864873295812302254670739526663046854019300803929986598274381633378027602842540280663494000492221518396329354078796682120982948022923136698390325231616
120766797594289323271729746591624604509341479053326093708038601607859973196548763266756055205685080561326988000984443036792658708157593364241965896045846273396780650463232
241533595188578646543459493183249209018682958106652187416077203215719946393097526533512110411370161122653976001968886073585317416315186728483931792091692546793561300926464
483067190377157293086918986366498418037365916213304374832154406431439892786195053067024220822740322245307952003937772147170634832630373456967863584183385093587122601852928
966134380754314586173837972732996836074731832426608749664308812862879785572390106134048441645480644490615904007875544294341269665260746913935727168366770187174245203705856
1932268761508629172347675945465993672149463664853217499328617625725759571144780212268096883290961288981231808015751088588682539330521493827871454336733540374348490407411712
3864537523017258344695351890931987344298927329706434998657235251451519142289560424536193766581922577962463616031502177177365078661042987655742908673467080748696980814823424
7729075046034516689390703781863974688597854659412869997314470502903038284579120849072387533163845155924927232063004354354730157322085975311485817346934161497393961629646848
15458150092069033378781407563727949377195709318825739994628941005806076569158241698144775066327690311849854464126008708709460314644171950622971634693868322994787923259293696
30916300184138066757562815127455898754391418637651479989257882011612153138316483396289550132655380623699708928252017417418920629288343901245943269387736645989575846518587392
61832600368276133515125630254911797508782837275302959978515764023224306276632966792579100265310761247399417856504034834837841258576687802491886538775473291979151693037174784
123665200736552267030251260509823595017565674550605919957031528046448612553265933585158200530621522494798835713008069669675682517153375604983773077550946583958303386074349568
247330401473104534060502521019647190035131349101211839914063056092897225106531867170316401061243044989597671426016139339351365034306751209967546155101893167916606772148699136
494660802946209068121005042039294380070262698202423679828126112185794450213063734340632802122486089979195342852032278678702730068613502419935092310203786335833213544297398272
989321605892418136242010084078588760140525396404847359656252224371588900426127468681265604244972179958390685704064557357405460137227004839870184620407572671666427088594796544
1978643211784836272484020168157177520281050792809694719312504448743177800852254937362531208489944359916781371408129114714810920274454009679740369240815145343332854177189593088
3957286423569672544968040336314355040562101585619389438625008897486355601704509874725062416979888719833562742816258229429621840548908019359480738481630290686665708354379186176
7914572847139345089936080672628710081124203171238778877250017794972711203409019749450124833959777439667125485632516458859243681097816038718961476963260581373331416708758372352
15829145694278690179872161345257420162248406342477557754500035589945422406818039498900249667919554879334250971265032917718487362195632077437922953926521162746662833417516744704
31658291388557380359744322690514840324496812684955115509000071179890844813636078997800499335839109758668501942530065835436974724391264154875845907853042325493325666835033489408
63316582777114760719488645381029680648993625369910231018000142359781689627272157995600998671678219517337003885060131670873949448782528309751691815706084650986651333670066978816
126633165554229521438977290762059361297987250739820462036000284719563379254544315991201997343356439034674007770120263341747898897565056619503383631412169301973302667340133957632
253266331108459042877954581524118722595974501479640924072000569439126758509088631982403994686712878069348015540240526683495797795130113239006767262824338603946605334680267915264
506532662216918085755909163048237445191949002959281848144001138878253517018177263964807989373425756138696031080481053366991595590260226478013534525648677207893210669360535830528
1013065324433836171511818326096474890383898005918563696288002277756507034036354527929615978746851512277392062160962106733983191180520452956027069051297354415786421338721071661056
2026130648867672343023636652192949780767796011837127392576004555513014068072709055859231957493703024554784124321924213467966382361040905912054138102594708831572842677442143322112
4052261297735344686047273304385899561535592023674254785152009111026028136145418111718463914987406049109568248643848426935932764722081811824108276205189417663145685354884286644224
8104522595470689372094546608771799123071184047348509570304018222052056272290836223436927829974812098219136497287696853871865529444163623648216552410378835326291370709768573288448
16209045190941378744189093217543598246142368094697019140608036444104112544581672446873855659949624196438272994575393707743731058888327247296433104820757670652582741419537146576896
32418090381882757488378186435087196492284736189394038281216072888208225089163344893747711319899248392876545989150787415487462117776654494592866209641515341305165482839074293153792
64836180763765514976756372870174392984569472378788076562432145776416450178326689787495422639798496785753091978301574830974924235553308989185732419283030682610330965678148586307584
129672361527531029953512745740348785969138944757576153124864291552832900356653379574990845279596993571506183956603149661949848471106617978371464838566061365220661931356297172615168
259344723055062059907025491480697571938277889515152306249728583105665800713306759149981690559193987143012367913206299323899696942213235956742929677132122730441323862712594345230336
518689446110124119814050982961395143876555779030304612499457166211331601426613518299963381118387974286024735826412598647799393884426471913485859354264245460882647725425188690460672
1037378892220248239628101965922790287753111558060609224998914332422663202853227036599926762236775948572049471652825197295598787768852943826971718708528490921765295450850377380921344
2074757784440496479256203931845580575506223116121218449997828664845326405706454073199853524473551897144098943305650394591197575537705887653943437417056981843530590901700754761842688
4149515568880992958512407863691161151012446232242436899995657329690652811412908146399707048947103794288197886611300789182395151075411775307886874834113963687061181803401509523685376
8299031137761985917024815727382322302024892464484873799991314659381305622825816292799414097894207588576395773222601578364790302150823550615773749668227927374122363606803019047370752
16598062275523971834049631454764644604049784928969747599982629318762611245651632585598828195788415177152791546445203156729580604301647101231547499336455854748244727213606038094741504
33196124551047943668099262909529289208099569857939495199965258637525222491303265171197656391576830354305583092890406313459161208603294202463094998672911709496489454427212076189483008
66392249102095887336198525819058578416199139715878990399930517275050444982606530342395312783153660708611166185780812626918322417206588404926189997345823418992978908854424152378966016
132784498204191774672397051638117156832398279431757980799861034550100889965213060684790625566307321417222332371561625253836644834413176809852379994691646837985957817708848304757932032
265568996408383549344794103276234313664796558863515961599722069100201779930426121369581251132614642834444664743123250507673289668826353619704759989383293675971915635417696609515864064
531137992816767098689588206552468627329593117727031923199444138200403559860852242739162502265229285668889329486246501015346579337652707239409519978766587351943831270835393219031728128
1062275985633534197379176413104937254659186235454063846398888276400807119721704485478325004530458571337778658972493002030693158675305414478819039957533174703887662541670786438063456256
2124551971267068394758352826209874509318372470908127692797776552801614239443408970956650009060917142675557317944986004061386317350610828957638079915066349407775325083341572876126912512
4249103942534136789516705652419749018636744941816255385595553105603228478886817941913300018121834285351114635889972008122772634701221657915276159830132698815550650166683145752253825024
8498207885068273579033411304839498037273489883632510771191106211206456957773635883826600036243668570702229271779944016245545269402443315830552319660265397631101300333366291504507650048
16996415770136547158066822609678996074546979767265021542382212422412913915547271767653200072487337141404458543559888032491090538804886631661104639320530795262202600666732583009015300096
33992831540273094316133645219357992149093959534530043084764424844825827831094543535306400144974674282808917087119776064982181077609773263322209278641061590524405201333465166018030600192
67985663080546188632267290438715984298187919069060086169528849689651655662189087070612800289949348565617834174239552129964362155219546526644418557282123181048810402666930332036061200384
135971326161092377264534580877431968596375838138120172339057699379303311324378174141225600579898697131235668348479104259928724310439093053288837114564246362097620805333860664072122400768
271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536
543885304644369509058138323509727874385503352552480689356230797517213245297512696564902402319594788524942673393916417039714897241756372213155348458256985448390483221335442656288489603072
1087770609288739018116276647019455748771006705104961378712461595034426490595025393129804804639189577049885346787832834079429794483512744426310696916513970896780966442670885312576979206144
2175541218577478036232553294038911497542013410209922757424923190068852981190050786259609609278379154099770693575665668158859588967025488852621393833027941793561932885341770625153958412288
4351082437154956072465106588077822995084026820419845514849846380137705962380101572519219218556758308199541387151331336317719177934050977705242787666055883587123865770683541250307916824576
8702164874309912144930213176155645990168053640839691029699692760275411924760203145038438437113516616399082774302662672635438355868101955410485575332111767174247731541367082500615833649152
17404329748619824289860426352311291980336107281679382059399385520550823849520406290076876874227033232798165548605325345270876711736203910820971150664223534348495463082734165001231667298304
34808659497239648579720852704622583960672214563358764118798771041101647699040812580153753748454066465596331097210650690541753423472407821641942301328447068696990926165468330002463334596608
69617318994479297159441705409245167921344429126717528237597542082203295398081625160307507496908132931192662194421301381083506846944815643283884602656894137393981852330936660004926669193216
139234637988958594318883410818490335842688858253435056475195084164406590796163250320615014993816265862385324388842602762167013693889631286567769205313788274787963704661873320009853338386432
278469275977917188637766821636980671685377716506870112950390168328813181592326500641230029987632531724770648777685205524334027387779262573135538410627576549575927409323746640019706676772864
556938551955834377275533643273961343370755433013740225900780336657626363184653001282460059975265063449541297555370411048668054775558525146271076821255153099151854818647493280039413353545728
1113877103911668754551067286547922686741510866027480451801560673315252726369306002564920119950530126899082595110740822097336109551117050292542153642510306198303709637294986560078826707091456
2227754207823337509102134573095845373483021732054960903603121346630505452738612005129840239901060253798165190221481644194672219102234100585084307285020612396607419274589973120157653414182912
4455508415646675018204269146191690746966043464109921807206242693261010905477224010259680479802120507596330380442963288389344438204468201170168614570041224793214838549179946240315306828365824
8911016831293350036408538292383381493932086928219843614412485386522021810954448020519360959604241015192660760885926576778688876408936402340337229140082449586429677098359892480630613656731648
17822033662586700072817076584766762987864173856439687228824970773044043621908896041038721919208482030385321521771853153557377752817872804680674458280164899172859354196719784961261227313463296
35644067325173400145634153169533525975728347712879374457649941546088087243817792082077443838416964060770643043543706307114755505635745609361348916560329798345718708393439569922522454626926592
71288134650346800291268306339067051951456695425758748915299883092176174487635584164154887676833928121541286087087412614229511011271491218722697833120659596691437416786879139845044909253853184
142576269300693600582536612678134103902913390851517497830599766184352348975271168328309775353667856243082572174174825228459022022542982437445395666241319193382874833573758279690089818507706368
285152538601387201165073225356268207805826781703034995661199532368704697950542336656619550707335712486165144348349650456918044045085964874890791332482638386765749667147516559380179637015412736
570305077202774402330146450712536415611653563406069991322399064737409395901084673313239101414671424972330288696699300913836088090171929749781582664965276773531499334295033118760359274030825472
1140610154405548804660292901425072831223307126812139982644798129474818791802169346626478202829342849944660577393398601827672176180343859499563165329930553547062998668590066237520718548061650944
2281220308811097609320585802850145662446614253624279965289596258949637583604338693252956405658685699889321154786797203655344352360687718999126330659861107094125997337180132475041437096123301888
4562440617622195218641171605700291324893228507248559930579192517899275167208677386505912811317371399778642309573594407310688704721375437998252661319722214188251994674360264950082874192246603776
9124881235244390437282343211400582649786457014497119861158385035798550334417354773011825622634742799557284619147188814621377409442750875996505322639444428376503989348720529900165748384493207552
18249762470488780874564686422801165299572914028994239722316770071597100668834709546023651245269485599114569238294377629242754818885501751993010645278888856753007978697441059800331496768986415104
36499524940977561749129372845602330599145828057988479444633540143194201337669419092047302490538971198229138476588755258485509637771003503986021290557777713506015957394882119600662993537972830208
72999049881955123498258745691204661198291656115976958889267080286388402675338838184094604981077942396458276953177510516971019275542007007972042581115555427012031914789764239201325987075945660416
145998099763910246996517491382409322396583312231953917778534160572776805350677676368189209962155884792916553906355021033942038551084014015944085162231110854024063829579528478402651974151891320832
291996199527820493993034982764818644793166624463907835557068321145553610701355352736378419924311769585833107812710042067884077102168028031888170324462221708048127659159056956805303948303782641664
583992399055640987986069965529637289586333248927815671114136642291107221402710705472756839848623539171666215625420084135768154204336056063776340648924443416096255318318113913610607896607565283328
1167984798111281975972139931059274579172666497855631342228273284582214442805421410945513679697247078343332431250840168271536308408672112127552681297848886832192510636636227827221215793215130566656
2335969596222563951944279862118549158345332995711262684456546569164428885610842821891027359394494156686664862501680336543072616817344224255105362595697773664385021273272455654442431586430261133312
4671939192445127903888559724237098316690665991422525368913093138328857771221685643782054718788988313373329725003360673086145233634688448510210725191395547328770042546544911308884863172860522266624
9343878384890255807777119448474196633381331982845050737826186276657715542443371287564109437577976626746659450006721346172290467269376897020421450382791094657540085093089822617769726345721044533248
18687756769780511615554238896948393266762663965690101475652372553315431084886742575128218875155953253493318900013442692344580934538753794040842900765582189315080170186179645235539452691442089066496
37375513539561023231108477793896786533525327931380202951304745106630862169773485150256437750311906506986637800026885384689161869077507588081685801531164378630160340372359290471078905382884178132992
74751027079122046462216955587793573067050655862760405902609490213261724339546970300512875500623813013973275600053770769378323738155015176163371603062328757260320680744718580942157810765768356265984
149502054158244092924433911175587146134101311725520811805218980426523448679093940601025751001247626027946551200107541538756647476310030352326743206124657514520641361489437161884315621531536712531968
299004108316488185848867822351174292268202623451041623610437960853046897358187881202051502002495252055893102400215083077513294952620060704653486412249315029041282722978874323768631243063073425063936
598008216632976371697735644702348584536405246902083247220875921706093794716375762404103004004990504111786204800430166155026589905240121409306972824498630058082565445957748647537262486126146850127872
1196016433265952743395471289404697169072810493804166494441751843412187589432751524808206008009981008223572409600860332310053179810480242818613945648997260116165130891915497295074524972252293700255744
2392032866531905486790942578809394338145620987608332988883503686824375178865503049616412016019962016447144819201720664620106359620960485637227891297994520232330261783830994590149049944504587400511488
4784065733063810973581885157618788676291241975216665977767007373648750357731006099232824032039924032894289638403441329240212719241920971274455782595989040464660523567661989180298099889009174801022976
9568131466127621947163770315237577352582483950433331955534014747297500715462012198465648064079848065788579276806882658480425438483841942548911565191978080929321047135323978360596199778018349602045952
19136262932255243894327540630475154705164967900866663911068029494595001430924024396931296128159696131577158553613765316960850876967683885097823130383956161858642094270647956721192399556036699204091904
38272525864510487788655081260950309410329935801733327822136058989190002861848048793862592256319392263154317107227530633921701753935367770195646260767912323717284188541295913442384799112073398408183808
76545051729020975577310162521900618820659871603466655644272117978380005723696097587725184512638784526308634214455061267843403507870735540391292521535824647434568377082591826884769598224146796816367616
153090103458041951154620325043801237641319743206933311288544235956760011447392195175450369025277569052617268428910122535686807015741471080782585043071649294869136754165183653769539196448293593632735232
306180206916083902309240650087602475282639486413866622577088471913520022894784390350900738050555138105234536857820245071373614031482942161565170086143298589738273508330367307539078392896587187265470464
612360413832167804618481300175204950565278972827733245154176943827040045789568780701801476101110276210469073715640490142747228062965884323130340172286597179476547016660734615078156785793174374530940928
1224720827664335609236962600350409901130557945655466490308353887654080091579137561403602952202220552420938147431280980285494456125931768646260680344573194358953094033321469230156313571586348749061881856
2449441655328671218473925200700819802261115891310932980616707775308160183158275122807205904404441104841876294862561960570988912251863537292521360689146388717906188066642938460312627143172697498123763712
4898883310657342436947850401401639604522231782621865961233415550616320366316550245614411808808882209683752589725123921141977824503727074585042721378292777435812376133285876920625254286345394996247527424
9797766621314684873895700802803279209044463565243731922466831101232640732633100491228823617617764419367505179450247842283955649007454149170085442756585554871624752266571753841250508572690789992495054848
19595533242629369747791401605606558418088927130487463844933662202465281465266200982457647235235528838735010358900495684567911298014908298340170885513171109743249504533143507682501017145381579984990109696
39191066485258739495582803211213116836177854260974927689867324404930562930532401964915294470471057677470020717800991369135822596029816596680341771026342219486499009066287015365002034290763159969980219392
78382132970517478991165606422426233672355708521949855379734648809861125861064803929830588940942115354940041435601982738271645192059633193360683542052684438972998018132574030730004068581526319939960438784
156764265941034957982331212844852467344711417043899710759469297619722251722129607859661177881884230709880082871203965476543290384119266386721367084105368877945996036265148061460008137163052639879920877568
313528531882069915964662425689704934689422834087799421518938595239444503444259215719322355763768461419760165742407930953086580768238532773442734168210737755891992072530296122920016274326105279759841755136
627057063764139831929324851379409869378845668175598843037877190478889006888518431438644711527536922839520331484815861906173161536477065546885468336421475511783984145060592245840032548652210559519683510272
1254114127528279663858649702758819738757691336351197686075754380957778013777036862877289423055073845679040662969631723812346323072954131093770936672842951023567968290121184491680065097304421119039367020544
2508228255056559327717299405517639477515382672702395372151508761915556027554073725754578846110147691358081325939263447624692646145908262187541873345685902047135936580242368983360130194608842238078734041088
5016456510113118655434598811035278955030765345404790744303017523831112055108147451509157692220295382716162651878526895249385292291816524375083746691371804094271873160484737966720260389217684476157468082176
10032913020226237310869197622070557910061530690809581488606035047662224110216294903018315384440590765432325303757053790498770584583633048750167493382743608188543746320969475933440520778435368952314936164352
20065826040452474621738395244141115820123061381619162977212070095324448220432589806036630768881181530864650607514107580997541169167266097500334986765487216377087492641938951866881041556870737904629872328704
40131652080904949243476790488282231640246122763238325954424140190648896440865179612073261537762363061729301215028215161995082338334532195000669973530974432754174985283877903733762083113741475809259744657408
80263304161809898486953580976564463280492245526476651908848280381297792881730359224146523075524726123458602430056430323990164676669064390001339947061948865508349970567755807467524166227482951618519489314816
160526608323619796973907161953128926560984491052953303817696560762595585763460718448293046151049452246917204860112860647980329353338128780002679894123897731016699941135511614935048332454965903237038978629632
321053216647239593947814323906257853121968982105906607635393121525191171526921436896586092302098904493834409720225721295960658706676257560005359788247795462033399882271023229870096664909931806474077957259264
642106433294479187895628647812515706243937964211813215270786243050382343053842873793172184604197808987668819440451442591921317413352515120010719576495590924066799764542046459740193329819863612948155914518528
1284212866588958375791257295625031412487875928423626430541572486100764686107685747586344369208395617975337638880902885183842634826705030240021439152991181848133599529084092919480386659639727225896311829037056
2568425733177916751582514591250062824975751856847252861083144972201529372215371495172688738416791235950675277761805770367685269653410060480042878305982363696267199058168185838960773319279454451792623658074112
5136851466355833503165029182500125649951503713694505722166289944403058744430742990345377476833582471901350555523611540735370539306820120960085756611964727392534398116336371677921546638558908903585247316148224
10273702932711667006330058365000251299903007427389011444332579888806117488861485980690754953667164943802701111047223081470741078613640241920171513223929454785068796232672743355843093277117817807170494632296448
20547405865423334012660116730000502599806014854778022888665159777612234977722971961381509907334329887605402222094446162941482157227280483840343026447858909570137592465345486711686186554235635614340989264592896
41094811730846668025320233460001005199612029709556045777330319555224469955445943922763019814668659775210804444188892325882964314454560967680686052895717819140275184930690973423372373108471271228681978529185792
82189623461693336050640466920002010399224059419112091554660639110448939910891887845526039629337319550421608888377784651765928628909121935361372105791435638280550369861381946846744746216942542457363957058371584
164379246923386672101280933840004020798448118838224183109321278220897879821783775691052079258674639100843217776755569303531857257818243870722744211582871276561100739722763893693489492433885084914727914116743168
328758493846773344202561867680008041596896237676448366218642556441795759643567551382104158517349278201686435553511138607063714515636487741445488423165742553122201479445527787386978984867770169829455828233486336
657516987693546688405123735360016083193792475352896732437285112883591519287135102764208317034698556403372871107022277214127429031272975482890976846331485106244402958891055574773957969735540339658911656466972672
1315033975387093376810247470720032166387584950705793464874570225767183038574270205528416634069397112806745742214044554428254858062545950965781953692662970212488805917782111149547915939471080679317823312933945344
2630067950774186753620494941440064332775169901411586929749140451534366077148540411056833268138794225613491484428089108856509716125091901931563907385325940424977611835564222299095831878942161358635646625867890688
5260135901548373507240989882880128665550339802823173859498280903068732154297080822113666536277588451226982968856178217713019432250183803863127814770651880849955223671128444598191663757884322717271293251735781376
10520271803096747014481979765760257331100679605646347718996561806137464308594161644227333072555176902453965937712356435426038864500367607726255629541303761699910447342256889196383327515768645434542586503471562752
21040543606193494028963959531520514662201359211292695437993123612274928617188323288454666145110353804907931875424712870852077729000735215452511259082607523399820894684513778392766655031537290869085173006943125504
42081087212386988057927919063041029324402718422585390875986247224549857234376646576909332290220707609815863750849425741704155458001470430905022518165215046799641789369027556785533310063074581738170346013886251008
84162174424773976115855838126082058648805436845170781751972494449099714468753293153818664580441415219631727501698851483408310916002940861810045036330430093599283578738055113571066620126149163476340692027772502016
168324348849547952231711676252164117297610873690341563503944988898199428937506586307637329160882830439263455003397702966816621832005881723620090072660860187198567157476110227142133240252298326952681384055545004032
336648697699095904463423352504328234595221747380683127007889977796398857875013172615274658321765660878526910006795405933633243664011763447240180145321720374397134314952220454284266480504596653905362768111090008064
673297395398191808926846705008656469190443494761366254015779955592797715750026345230549316643531321757053820013590811867266487328023526894480360290643440748794268629904440908568532961009193307810725536222180016128
1346594790796383617853693410017312938380886989522732508031559911185595431500052690461098633287062643514107640027181623734532974656047053788960720581286881497588537259808881817137065922018386615621451072444360032256
2693189581592767235707386820034625876761773979045465016063119822371190863000105380922197266574125287028215280054363247469065949312094107577921441162573762995177074519617763634274131844036773231242902144888720064512
5386379163185534471414773640069251753523547958090930032126239644742381726000210761844394533148250574056430560108726494938131898624188215155842882325147525990354149039235527268548263688073546462485804289777440129024
10772758326371068942829547280138503507047095916181860064252479289484763452000421523688789066296501148112861120217452989876263797248376430311685764650295051980708298078471054537096527376147092924971608579554880258048
21545516652742137885659094560277007014094191832363720128504958578969526904000843047377578132593002296225722240434905979752527594496752860623371529300590103961416596156942109074193054752294185849943217159109760516096
43091033305484275771318189120554014028188383664727440257009917157939053808001686094755156265186004592451444480869811959505055188993505721246743058601180207922833192313884218148386109504588371699886434318219521032192
86182066610968551542636378241108028056376767329454880514019834315878107616003372189510312530372009184902888961739623919010110377987011442493486117202360415845666384627768436296772219009176743399772868636439042064384
172364133221937103085272756482216056112753534658909761028039668631756215232006744379020625060744018369805777923479247838020220755974022884986972234404720831691332769255536872593544438018353486799545737272878084128768
344728266443874206170545512964432112225507069317819522056079337263512430464013488758041250121488036739611555846958495676040441511948045769973944468809441663382665538511073745187088876036706973599091474545756168257536
689456532887748412341091025928864224451014138635639044112158674527024860928026977516082500242976073479223111693916991352080883023896091539947888937618883326765331077022147490374177752073413947198182949091512336515072
1378913065775496824682182051857728448902028277271278088224317349054049721856053955032165000485952146958446223387833982704161766047792183079895777875237766653530662154044294980748355504146827894396365898183024673030144
2757826131550993649364364103715456897804056554542556176448634698108099443712107910064330000971904293916892446775667965408323532095584366159791555750475533307061324308088589961496711008293655788792731796366049346060288
5515652263101987298728728207430913795608113109085112352897269396216198887424215820128660001943808587833784893551335930816647064191168732319583111500951066614122648616177179922993422016587311577585463592732098692120576
11031304526203974597457456414861827591216226218170224705794538792432397774848431640257320003887617175667569787102671861633294128382337464639166223001902133228245297232354359845986844033174623155170927185464197384241152
22062609052407949194914912829723655182432452436340449411589077584864795549696863280514640007775234351335139574205343723266588256764674929278332446003804266456490594464708719691973688066349246310341854370928394768482304
44125218104815898389829825659447310364864904872680898823178155169729591099393726561029280015550468702670279148410687446533176513529349858556664892007608532912981188929417439383947376132698492620683708741856789536964608
88250436209631796779659651318894620729729809745361797646356310339459182198787453122058560031100937405340558296821374893066353027058699717113329784015217065825962377858834878767894752265396985241367417483713579073929216
176500872419263593559319302637789241459459619490723595292712620678918364397574906244117120062201874810681116593642749786132706054117399434226659568030434131651924755717669757535789504530793970482734834967427158147858432
353001744838527187118638605275578482918919238981447190585425241357836728795149812488234240124403749621362233187285499572265412108234798868453319136060868263303849511435339515071579009061587940965469669934854316295716864
706003489677054374237277210551156965837838477962894381170850482715673457590299624976468480248807499242724466374570999144530824216469597736906638272121736526607699022870679030143158018123175881930939339869708632591433728
1412006979354108748474554421102313931675676955925788762341700965431346915180599249952936960497614998485448932749141998289061648432939195473813276544243473053215398045741358060286316036246351763861878679739417265182867456
2824013958708217496949108842204627863351353911851577524683401930862693830361198499905873920995229996970897865498283996578123296865878390947626553088486946106430796091482716120572632072492703527723757359478834530365734912
5648027917416434993898217684409255726702707823703155049366803861725387660722396999811747841990459993941795730996567993156246593731756781895253106176973892212861592182965432241145264144985407055447514718957669060731469824
11296055834832869987796435368818511453405415647406310098733607723450775321444793999623495683980919987883591461993135986312493187463513563790506212353947784425723184365930864482290528289970814110895029437915338121462939648
22592111669665739975592870737637022906810831294812620197467215446901550642889587999246991367961839975767182923986271972624986374927027127581012424707895568851446368731861728964581056579941628221790058875830676242925879296
45184223339331479951185741475274045813621662589625240394934430893803101285779175998493982735923679951534365847972543945249972749854054255162024849415791137702892737463723457929162113159883256443580117751661352485851758592
90368446678662959902371482950548091627243325179250480789868861787606202571558351996987965471847359903068731695945087890499945499708108510324049698831582275405785474927446915858324226319766512887160235503322704971703517184
180736893357325919804742965901096183254486650358500961579737723575212405143116703993975930943694719806137463391890175780999890999416217020648099397663164550811570949854893831716648452639533025774320471006645409943407034368
361473786714651839609485931802192366508973300717001923159475447150424810286233407987951861887389439612274926783780351561999781998832434041296198795326329101623141899709787663433296905279066051548640942013290819886814068736
722947573429303679218971863604384733017946601434003846318950894300849620572466815975903723774778879224549853567560703123999563997664868082592397590652658203246283799419575326866593810558132103097281884026581639773628137472
1445895146858607358437943727208769466035893202868007692637901788601699241144933631951807447549557758449099707135121406247999127995329736165184795181305316406492567598839150653733187621116264206194563768053163279547256274944
2891790293717214716875887454417538932071786405736015385275803577203398482289867263903614895099115516898199414270242812495998255990659472330369590362610632812985135197678301307466375242232528412389127536106326559094512549888
5783580587434429433751774908835077864143572811472030770551607154406796964579734527807229790198231033796398828540485624991996511981318944660739180725221265625970270395356602614932750484465056824778255072212653118189025099776
11567161174868858867503549817670155728287145622944061541103214308813593929159469055614459580396462067592797657080971249983993023962637889321478361450442531251940540790713205229865500968930113649556510144425306236378050199552
23134322349737717735007099635340311456574291245888123082206428617627187858318938111228919160792924135185595314161942499967986047925275778642956722900885062503881081581426410459731001937860227299113020288850612472756100399104
46268644699475435470014199270680622913148582491776246164412857235254375716637876222457838321585848270371190628323884999935972095850551557285913445801770125007762163162852820919462003875720454598226040577701224945512200798208
92537289398950870940028398541361245826297164983552492328825714470508751433275752444915676643171696540742381256647769999871944191701103114571826891603540250015524326325705641838924007751440909196452081155402449891024401596416
185074578797901741880056797082722491652594329967104984657651428941017502866551504889831353286343393081484762513295539999743888383402206229143653783207080500031048652651411283677848015502881818392904162310804899782048803192832
370149157595803483760113594165444983305188659934209969315302857882035005733103009779662706572686786162969525026591079999487776766804412458287307566414161000062097305302822567355696031005763636785808324621609799564097606385664
740298315191606967520227188330889966610377319868419938630605715764070011466206019559325413145373572325939050053182159998975553533608824916574615132828322000124194610605645134711392062011527273571616649243219599128195212771328
1480596630383213935040454376661779933220754639736839877261211431528140022932412039118650826290747144651878100106364319997951107067217649833149230265656644000248389221211290269422784124023054547143233298486439198256390425542656
2961193260766427870080908753323559866441509279473679754522422863056280045864824078237301652581494289303756200212728639995902214134435299666298460531313288000496778442422580538845568248046109094286466596972878396512780851085312
5922386521532855740161817506647119732883018558947359509044845726112560091729648156474603305162988578607512400425457279991804428268870599332596921062626576000993556884845161077691136496092218188572933193945756793025561702170624
11844773043065711480323635013294239465766037117894719018089691452225120183459296312949206610325977157215024800850914559983608856537741198665193842125253152001987113769690322155382272992184436377145866387891513586051123404341248
23689546086131422960647270026588478931532074235789438036179382904450240366918592625898413220651954314430049601701829119967217713075482397330387684250506304003974227539380644310764545984368872754291732775783027172102246808682496
47379092172262845921294540053176957863064148471578876072358765808900480733837185251796826441303908628860099203403658239934435426150964794660775368501012608007948455078761288621529091968737745508583465551566054344204493617364992
94758184344525691842589080106353915726128296943157752144717531617800961467674370503593652882607817257720198406807316479868870852301929589321550737002025216015896910157522577243058183937475491017166931103132108688408987234729984
189516368689051383685178160212707831452256593886315504289435063235601922935348741007187305765215634515440396813614632959737741704603859178643101474004050432031793820315045154486116367874950982034333862206264217376817974469459968
379032737378102767370356320425415662904513187772631008578870126471203845870697482014374611530431269030880793627229265919475483409207718357286202948008100864063587640630090308972232735749901964068667724412528434753635948938919936
758065474756205534740712640850831325809026375545262017157740252942407691741394964028749223060862538061761587254458531838950966818415436714572405896016201728127175281260180617944465471499803928137335448825056869507271897877839872
1516130949512411069481425281701662651618052751090524034315480505884815383482789928057498446121725076123523174508917063677901933636830873429144811792032403456254350562520361235888930942999607856274670897650113739014543795755679744
3032261899024822138962850563403325303236105502181048068630961011769630766965579856114996892243450152247046349017834127355803867273661746858289623584064806912508701125040722471777861885999215712549341795300227478029087591511359488
6064523798049644277925701126806650606472211004362096137261922023539261533931159712229993784486900304494092698035668254711607734547323493716579247168129613825017402250081444943555723771998431425098683590600454956058175183022718976
12129047596099288555851402253613301212944422008724192274523844047078523067862319424459987568973800608988185396071336509423215469094646987433158494336259227650034804500162889887111447543996862850197367181200909912116350366045437952
24258095192198577111702804507226602425888844017448384549047688094157046135724638848919975137947601217976370792142673018846430938189293974866316988672518455300069609000325779774222895087993725700394734362401819824232700732090875904
48516190384397154223405609014453204851777688034896769098095376188314092271449277697839950275895202435952741584285346037692861876378587949732633977345036910600139218000651559548445790175987451400789468724803639648465401464181751808
97032380768794308446811218028906409703555376069793538196190752376628184542898555395679900551790404871905483168570692075385723752757175899465267954690073821200278436001303119096891580351974902801578937449607279296930802928363503616
194064761537588616893622436057812819407110752139587076392381504753256369085797110791359801103580809743810966337141384150771447505514351798930535909380147642400556872002606238193783160703949805603157874899214558593861605856727007232
388129523075177233787244872115625638814221504279174152784763009506512738171594221582719602207161619487621932674282768301542895011028703597861071818760295284801113744005212476387566321407899611206315749798429117187723211713454014464
776259046150354467574489744231251277628443008558348305569526019013025476343188443165439204414323238975243865348565536603085790022057407195722143637520590569602227488010424952775132642815799222412631499596858234375446423426908028928
1552518092300708935148979488462502555256886017116696611139052038026050952686376886330878408828646477950487730697131073206171580044114814391444287275041181139204454976020849905550265285631598444825262999193716468750892846853816057856
3105036184601417870297958976925005110513772034233393222278104076052101905372753772661756817657292955900975461394262146412343160088229628782888574550082362278408909952041699811100530571263196889650525998387432937501785693707632115712
6210072369202835740595917953850010221027544068466786444556208152104203810745507545323513635314585911801950922788524292824686320176459257565777149100164724556817819904083399622201061142526393779301051996774865875003571387415264231424
12420144738405671481191835907700020442055088136933572889112416304208407621491015090647027270629171823603901845577048585649372640352918515131554298200329449113635639808166799244402122285052787558602103993549731750007142774830528462848
24840289476811342962383671815400040884110176273867145778224832608416815242982030181294054541258343647207803691154097171298745280705837030263108596400658898227271279616333598488804244570105575117204207987099463500014285549661056925696
49680578953622685924767343630800081768220352547734291556449665216833630485964060362588109082516687294415607382308194342597490561411674060526217192801317796454542559232667196977608489140211150234408415974198927000028571099322113851392
99361157907245371849534687261600163536440705095468583112899330433667260971928120725176218165033374588831214764616388685194981122823348121052434385602635592909085118465334393955216978280422300468816831948397854000057142198644227702784
198722315814490743699069374523200327072881410190937166225798660867334521943856241450352436330066749177662429529232777370389962245646696242104868771205271185818170236930668787910433956560844600937633663896795708000114284397288455405568
397444631628981487398138749046400654145762820381874332451597321734669043887712482900704872660133498355324859058465554740779924491293392484209737542410542371636340473861337575820867913121689201875267327793591416000228568794576910811136
794889263257962974796277498092801308291525640763748664903194643469338087775424965801409745320266996710649718116931109481559848982586784968419475084821084743272680947722675151641735826243378403750534655587182832000457137589153821622272
1589778526515925949592554996185602616583051281527497329806389286938676175550849931602819490640533993421299436233862218963119697965173569936838950169642169486545361895445350303283471652486756807501069311174365664000914275178307643244544
3179557053031851899185109992371205233166102563054994659612778573877352351101699863205638981281067986842598872467724437926239395930347139873677900339284338973090723790890700606566943304973513615002138622348731328001828550356615286489088
6359114106063703798370219984742410466332205126109989319225557147754704702203399726411277962562135973685197744935448875852478791860694279747355800678568677946181447581781401213133886609947027230004277244697462656003657100713230572978176
12718228212127407596740439969484820932664410252219978638451114295509409404406799452822555925124271947370395489870897751704957583721388559494711601357137355892362895163562802426267773219894054460008554489394925312007314201426461145956352
25436456424254815193480879938969641865328820504439957276902228591018818808813598905645111850248543894740790979741795503409915167442777118989423202714274711784725790327125604852535546439788108920017108978789850624014628402852922291912704
50872912848509630386961759877939283730657641008879914553804457182037637617627197811290223700497087789481581959483591006819830334885554237978846405428549423569451580654251209705071092879576217840034217957579701248029256805705844583825408
101745825697019260773923519755878567461315282017759829107608914364075275235254395622580447400994175578963163918967182013639660669771108475957692810857098847138903161308502419410142185759152435680068435915159402496058513611411689167650816
203491651394038521547847039511757134922630564035519658215217828728150550470508791245160894801988351157926327837934364027279321339542216951915385621714197694277806322617004838820284371518304871360136871830318804992117027222823378335301632
406983302788077043095694079023514269845261128071039316430435657456301100941017582490321789603976702315852655675868728054558642679084433903830771243428395388555612645234009677640568743036609742720273743660637609984234054445646756670603264
813966605576154086191388158047028539690522256142078632860871314912602201882035164980643579207953404631705311351737456109117285358168867807661542486856790777111225290468019355281137486073219485440547487321275219968468108891293513341206528
1627933211152308172382776316094057079381044512284157265721742629825204403764070329961287158415906809263410622703474912218234570716337735615323084973713581554222450580936038710562274972146438970881094974642550439936936217782587026682413056
3255866422304616344765552632188114158762089024568314531443485259650408807528140659922574316831813618526821245406949824436469141432675471230646169947427163108444901161872077421124549944292877941762189949285100879873872435565174053364826112
6511732844609232689531105264376228317524178049136629062886970519300817615056281319845148633663627237053642490813899648872938282865350942461292339894854326216889802323744154842249099888585755883524379898570201759747744871130348106729652224
13023465689218465379062210528752456635048356098273258125773941038601635230112562639690297267327254474107284981627799297745876565730701884922584679789708652433779604647488309684498199777171511767048759797140403519495489742260696213459304448
26046931378436930758124421057504913270096712196546516251547882077203270460225125279380594534654508948214569963255598595491753131461403769845169359579417304867559209294976619368996399554343023534097519594280807038990979484521392426918608896
52093862756873861516248842115009826540193424393093032503095764154406540920450250558761189069309017896429139926511197190983506262922807539690338719158834609735118418589953238737992799108686047068195039188561614077981958969042784853837217792
104187725513747723032497684230019653080386848786186065006191528308813081840900501117522378138618035792858279853022394381967012525845615079380677438317669219470236837179906477475985598217372094136390078377123228155963917938085569707674435584
208375451027495446064995368460039306160773697572372130012383056617626163681801002235044756277236071585716559706044788763934025051691230158761354876635338438940473674359812954951971196434744188272780156754246456311927835876171139415348871168
416750902054990892129990736920078612321547395144744260024766113235252327363602004470089512554472143171433119412089577527868050103382460317522709753270676877880947348719625909903942392869488376545560313508492912623855671752342278830697742336
833501804109981784259981473840157224643094790289488520049532226470504654727204008940179025108944286342866238824179155055736100206764920635045419506541353755761894697439251819807884785738976753091120627016985825247711343504684557661395484672
1667003608219963568519962947680314449286189580578977040099064452941009309454408017880358050217888572685732477648358310111472200413529841270090839013082707511523789394878503639615769571477953506182241254033971650495422687009369115322790969344
3334007216439927137039925895360628898572379161157954080198128905882018618908816035760716100435777145371464955296716620222944400827059682540181678026165415023047578789757007279231539142955907012364482508067943300990845374018738230645581938688
6668014432879854274079851790721257797144758322315908160396257811764037237817632071521432200871554290742929910593433240445888801654119365080363356052330830046095157579514014558463078285911814024728965016135886601981690748037476461291163877376
13336028865759708548159703581442515594289516644631816320792515623528074475635264143042864401743108581485859821186866480891777603308238730160726712104661660092190315159028029116926156571823628049457930032271773203963381496074952922582327754752
26672057731519417096319407162885031188579033289263632641585031247056148951270528286085728803486217162971719642373732961783555206616477460321453424209323320184380630318056058233852313143647256098915860064543546407926762992149905845164655509504
53344115463038834192638814325770062377158066578527265283170062494112297902541056572171457606972434325943439284747465923567110413232954920642906848418646640368761260636112116467704626287294512197831720129087092815853525984299811690329311019008
106688230926077668385277628651540124754316133157054530566340124988224595805082113144342915213944868651886878569494931847134220826465909841285813696837293280737522521272224232935409252574589024395663440258174185631707051968599623380658622038016
213376461852155336770555257303080249508632266314109061132680249976449191610164226288685830427889737303773757138989863694268441652931819682571627393674586561475045042544448465870818505149178048791326880516348371263414103937199246761317244076032
426752923704310673541110514606160499017264532628218122265360499952898383220328452577371660855779474607547514277979727388536883305863639365143254787349173122950090085088896931741637010298356097582653761032696742526828207874398493522634488152064
853505847408621347082221029212320998034529065256436244530720999905796766440656905154743321711558949215095028555959454777073766611727278730286509574698346245900180170177793863483274020596712195165307522065393485053656415748796987045268976304128
1707011694817242694164442058424641996069058130512872489061441999811593532881313810309486643423117898430190057111918909554147533223454557460573019149396692491800360340355587726966548041193424390330615044130786970107312831497593974090537952608256
3414023389634485388328884116849283992138116261025744978122883999623187065762627620618973286846235796860380114223837819108295066446909114921146038298793384983600720680711175453933096082386848780661230088261573940214625662995187948181075905216512
6828046779268970776657768233698567984276232522051489956245767999246374131525255241237946573692471593720760228447675638216590132893818229842292076597586769967201441361422350907866192164773697561322460176523147880429251325990375896362151810433024
13656093558537941553315536467397135968552465044102979912491535998492748263050510482475893147384943187441520456895351276433180265787636459684584153195173539934402882722844701815732384329547395122644920353046295760858502651980751792724303620866048
27312187117075883106631072934794271937104930088205959824983071996985496526101020964951786294769886374883040913790702552866360531575272919369168306390347079868805765445689403631464768659094790245289840706092591521717005303961503585448607241732096
54624374234151766213262145869588543874209860176411919649966143993970993052202041929903572589539772749766081827581405105732721063150545838738336612780694159737611530891378807262929537318189580490579681412185183043434010607923007170897214483464192
109248748468303532426524291739177087748419720352823839299932287987941986104404083859807145179079545499532163655162810211465442126301091677476673225561388319475223061782757614525859074636379160981159362824370366086868021215846014341794428966928384
218497496936607064853048583478354175496839440705647678599864575975883972208808167719614290358159090999064327310325620422930884252602183354953346451122776638950446123565515229051718149272758321962318725648740732173736042431692028683588857933856768
436994993873214129706097166956708350993678881411295357199729151951767944417616335439228580716318181998128654620651240845861768505204366709906692902245553277900892247131030458103436298545516643924637451297481464347472084863384057367177715867713536
873989987746428259412194333913416701987357762822590714399458303903535888835232670878457161432636363996257309241302481691723537010408733419813385804491106555801784494262060916206872597091033287849274902594962928694944169726768114734355431735427072
1747979975492856518824388667826833403974715525645181428798916607807071777670465341756914322865272727992514618482604963383447074020817466839626771608982213111603568988524121832413745194182066575698549805189925857389888339453536229468710863470854144
3495959950985713037648777335653666807949431051290362857597833215614143555340930683513828645730545455985029236965209926766894148041634933679253543217964426223207137977048243664827490388364133151397099610379851714779776678907072458937421726941708288
6991919901971426075297554671307333615898862102580725715195666431228287110681861367027657291461090911970058473930419853533788296083269867358507086435928852446414275954096487329654980776728266302794199220759703429559553357814144917874843453883416576
13983839803942852150595109342614667231797724205161451430391332862456574221363722734055314582922181823940116947860839707067576592166539734717014172871857704892828551908192974659309961553456532605588398441519406859119106715628289835749686907766833152
27967679607885704301190218685229334463595448410322902860782665724913148442727445468110629165844363647880233895721679414135153184333079469434028345743715409785657103816385949318619923106913065211176796883038813718238213431256579671499373815533666304
55935359215771408602380437370458668927190896820645805721565331449826296885454890936221258331688727295760467791443358828270306368666158938868056691487430819571314207632771898637239846213826130422353593766077627436476426862513159342998747631067332608
111870718431542817204760874740917337854381793641291611443130662899652593770909781872442516663377454591520935582886717656540612737332317877736113382974861639142628415265543797274479692427652260844707187532155254872952853725026318685997495262134665216
223741436863085634409521749481834675708763587282583222886261325799305187541819563744885033326754909183041871165773435313081225474664635755472226765949723278285256830531087594548959384855304521689414375064310509745905707450052637371994990524269330432
447482873726171268819043498963669351417527174565166445772522651598610375083639127489770066653509818366083742331546870626162450949329271510944453531899446556570513661062175189097918769710609043378828750128621019491811414900105274743989981048538660864
894965747452342537638086997927338702835054349130332891545045303197220750167278254979540133307019636732167484663093741252324901898658543021888907063798893113141027322124350378195837539421218086757657500257242038983622829800210549487979962097077321728
1789931494904685075276173995854677405670108698260665783090090606394441500334556509959080266614039273464334969326187482504649803797317086043777814127597786226282054644248700756391675078842436173515315000514484077967245659600421098975959924194154643456
3579862989809370150552347991709354811340217396521331566180181212788883000669113019918160533228078546928669938652374965009299607594634172087555628255195572452564109288497401512783350157684872347030630001028968155934491319200842197951919848388309286912
7159725979618740301104695983418709622680434793042663132360362425577766001338226039836321066456157093857339877304749930018599215189268344175111256510391144905128218576994803025566700315369744694061260002057936311868982638401684395903839696776618573824
14319451959237480602209391966837419245360869586085326264720724851155532002676452079672642132912314187714679754609499860037198430378536688350222513020782289810256437153989606051133400630739489388122520004115872623737965276803368791807679393553237147648
28638903918474961204418783933674838490721739172170652529441449702311064005352904159345284265824628375429359509218999720074396860757073376700445026041564579620512874307979212102266801261478978776245040008231745247475930553606737583615358787106474295296
57277807836949922408837567867349676981443478344341305058882899404622128010705808318690568531649256750858719018437999440148793721514146753400890052083129159241025748615958424204533602522957957552490080016463490494951861107213475167230717574212948590592
114555615673899844817675135734699353962886956688682610117765798809244256021411616637381137063298513501717438036875998880297587443028293506801780104166258318482051497231916848409067205045915915104980160032926980989903722214426950334461435148425897181184
229111231347799689635350271469398707925773913377365220235531597618488512042823233274762274126597027003434876073751997760595174886056587013603560208332516636964102994463833696818134410091831830209960320065853961979807444428853900668922870296851794362368
458222462695599379270700542938797415851547826754730440471063195236977024085646466549524548253194054006869752147503995521190349772113174027207120416665033273928205988927667393636268820183663660419920640131707923959614888857707801337845740593703588724736
916444925391198758541401085877594831703095653509460880942126390473954048171292933099049096506388108013739504295007991042380699544226348054414240833330066547856411977855334787272537640367327320839841280263415847919229777715415602675691481187407177449472
1832889850782397517082802171755189663406191307018921761884252780947908096342585866198098193012776216027479008590015982084761399088452696108828481666660133095712823955710669574545075280734654641679682560526831695838459555430831205351382962374814354898944
3665779701564795034165604343510379326812382614037843523768505561895816192685171732396196386025552432054958017180031964169522798176905392217656963333320266191425647911421339149090150561469309283359365121053663391676919110861662410702765924749628709797888
7331559403129590068331208687020758653624765228075687047537011123791632385370343464792392772051104864109916034360063928339045596353810784435313926666640532382851295822842678298180301122938618566718730242107326783353838221723324821405531849499257419595776
14663118806259180136662417374041517307249530456151374095074022247583264770740686929584785544102209728219832068720127856678091192707621568870627853333281064765702591645685356596360602245877237133437460484214653566707676443446649642811063698998514839191552
29326237612518360273324834748083034614499060912302748190148044495166529541481373859169571088204419456439664137440255713356182385415243137741255706666562129531405183291370713192721204491754474266874920968429307133415352886893299285622127397997029678383104
58652475225036720546649669496166069228998121824605496380296088990333059082962747718339142176408838912879328274880511426712364770830486275482511413333124259062810366582741426385442408983508948533749841936858614266830705773786598571244254795994059356766208
117304950450073441093299338992332138457996243649210992760592177980666118165925495436678284352817677825758656549761022853424729541660972550965022826666248518125620733165482852770884817967017897067499683873717228533661411547573197142488509591988118713532416
234609900900146882186598677984664276915992487298421985521184355961332236331850990873356568705635355651517313099522045706849459083321945101930045653332497036251241466330965705541769635934035794134999367747434457067322823095146394284977019183976237427064832
469219801800293764373197355969328553831984974596843971042368711922664472663701981746713137411270711303034626199044091413698918166643890203860091306664994072502482932661931411083539271868071588269998735494868914134645646190292788569954038367952474854129664
938439603600587528746394711938657107663969949193687942084737423845328945327403963493426274822541422606069252398088182827397836333287780407720182613329988145004965865323862822167078543736143176539997470989737828269291292380585577139908076735904949708259328
1876879207201175057492789423877314215327939898387375884169474847690657890654807926986852549645082845212138504796176365654795672666575560815440365226659976290009931730647725644334157087472286353079994941979475656538582584761171154279816153471809899416518656
3753758414402350114985578847754628430655879796774751768338949695381315781309615853973705099290165690424277009592352731309591345333151121630880730453319952580019863461295451288668314174944572706159989883958951313077165169522342308559632306943619798833037312
7507516828804700229971157695509256861311759593549503536677899390762631562619231707947410198580331380848554019184705462619182690666302243261761460906639905160039726922590902577336628349889145412319979767917902626154330339044684617119264613887239597666074624
15015033657609400459942315391018513722623519187099007073355798781525263125238463415894820397160662761697108038369410925238365381332604486523522921813279810320079453845181805154673256699778290824639959535835805252308660678089369234238529227774479195332149248
30030067315218800919884630782037027445247038374198014146711597563050526250476926831789640794321325523394216076738821850476730762665208973047045843626559620640158907690363610309346513399556581649279919071671610504617321356178738468477058455548958390664298496
60060134630437601839769261564074054890494076748396028293423195126101052500953853663579281588642651046788432153477643700953461525330417946094091687253119241280317815380727220618693026799113163298559838143343221009234642712357476936954116911097916781328596992
120120269260875203679538523128148109780988153496792056586846390252202105001907707327158563177285302093576864306955287401906923050660835892188183374506238482560635630761454441237386053598226326597119676286686442018469285424714953873908233822195833562657193984
240240538521750407359077046256296219561976306993584113173692780504404210003815414654317126354570604187153728613910574803813846101321671784376366749012476965121271261522908882474772107196452653194239352573372884036938570849429907747816467644391667125314387968
480481077043500814718154092512592439123952613987168226347385561008808420007630829308634252709141208374307457227821149607627692202643343568752733498024953930242542523045817764949544214392905306388478705146745768073877141698859815495632935288783334250628775936
960962154087001629436308185025184878247905227974336452694771122017616840015261658617268505418282416748614914455642299215255384405286687137505466996049907860485085046091635529899088428785810612776957410293491536147754283397719630991265870577566668501257551872
1921924308174003258872616370050369756495810455948672905389542244035233680030523317234537010836564833497229828911284598430510768810573374275010933992099815720970170092183271059798176857571621225553914820586983072295508566795439261982531741155133337002515103744
3843848616348006517745232740100739512991620911897345810779084488070467360061046634469074021673129666994459657822569196861021537621146748550021867984199631441940340184366542119596353715143242451107829641173966144591017133590878523965063482310266674005030207488
7687697232696013035490465480201479025983241823794691621558168976140934720122093268938148043346259333988919315645138393722043075242293497100043735968399262883880680368733084239192707430286484902215659282347932289182034267181757047930126964620533348010060414976
15375394465392026070980930960402958051966483647589383243116337952281869440244186537876296086692518667977838631290276787444086150484586994200087471936798525767761360737466168478385414860572969804431318564695864578364068534363514095860253929241066696020120829952
30750788930784052141961861920805916103932967295178766486232675904563738880488373075752592173385037335955677262580553574888172300969173988400174943873597051535522721474932336956770829721145939608862637129391729156728137068727028191720507858482133392040241659904
61501577861568104283923723841611832207865934590357532972465351809127477760976746151505184346770074671911354525161107149776344601938347976800349887747194103071045442949864673913541659442291879217725274258783458313456274137454056383441015716964266784080483319808
123003155723136208567847447683223664415731869180715065944930703618254955521953492303010368693540149343822709050322214299552689203876695953600699775494388206142090885899729347827083318884583758435450548517566916626912548274908112766882031433928533568160966639616
246006311446272417135694895366447328831463738361430131889861407236509911043906984606020737387080298687645418100644428599105378407753391907201399550988776412284181771799458695654166637769167516870901097035133833253825096549816225533764062867857067136321933279232
492012622892544834271389790732894657662927476722860263779722814473019822087813969212041474774160597375290836201288857198210756815506783814402799101977552824568363543598917391308333275538335033741802194070267666507650193099632451067528125735714134272643866558464
984025245785089668542779581465789315325854953445720527559445628946039644175627938424082949548321194750581672402577714396421513631013567628805598203955105649136727087197834782616666551076670067483604388140535333015300386199264902135056251471428268545287733116928
1968050491570179337085559162931578630651709906891441055118891257892079288351255876848165899096642389501163344805155428792843027262027135257611196407910211298273454174395669565233333102153340134967208776281070666030600772398529804270112502942856537090575466233856
3936100983140358674171118325863157261303419813782882110237782515784158576702511753696331798193284779002326689610310857585686054524054270515222392815820422596546908348791339130466666204306680269934417552562141332061201544797059608540225005885713074181150932467712
7872201966280717348342236651726314522606839627565764220475565031568317153405023507392663596386569558004653379220621715171372109048108541030444785631640845193093816697582678260933332408613360539868835105124282664122403089594119217080450011771426148362301864935424
15744403932561434696684473303452629045213679255131528440951130063136634306810047014785327192773139116009306758441243430342744218096217082060889571263281690386187633395165356521866664817226721079737670210248565328244806179188238434160900023542852296724603729870848
31488807865122869393368946606905258090427358510263056881902260126273268613620094029570654385546278232018613516882486860685488436192434164121779142526563380772375266790330713043733329634453442159475340420497130656489612358376476868321800047085704593449207459741696
62977615730245738786737893213810516180854717020526113763804520252546537227240188059141308771092556464037227033764973721370976872384868328243558285053126761544750533580661426087466659268906884318950680840994261312979224716752953736643600094171409186898414919483392
125955231460491477573475786427621032361709434041052227527609040505093074454480376118282617542185112928074454067529947442741953744769736656487116570106253523089501067161322852174933318537813768637901361681988522625958449433505907473287200188342818373796829838966784
251910462920982955146951572855242064723418868082104455055218081010186148908960752236565235084370225856148908135059894885483907489539473312974233140212507046179002134322645704349866637075627537275802723363977045251916898867011814946574400376685636747593659677933568
503820925841965910293903145710484129446837736164208910110436162020372297817921504473130470168740451712297816270119789770967814979078946625948466280425014092358004268645291408699733274151255074551605446727954090503833797734023629893148800753371273495187319355867136
1007641851683931820587806291420968258893675472328417820220872324040744595635843008946260940337480903424595632540239579541935629958157893251896932560850028184716008537290582817399466548302510149103210893455908181007667595468047259786297601506742546990374638711734272
2015283703367863641175612582841936517787350944656835640441744648081489191271686017892521880674961806849191265080479159083871259916315786503793865121700056369432017074581165634798933096605020298206421786911816362015335190936094519572595203013485093980749277423468544
4030567406735727282351225165683873035574701889313671280883489296162978382543372035785043761349923613698382530160958318167742519832631573007587730243400112738864034149162331269597866193210040596412843573823632724030670381872189039145190406026970187961498554846937088
8061134813471454564702450331367746071149403778627342561766978592325956765086744071570087522699847227396765060321916636335485039665263146015175460486800225477728068298324662539195732386420081192825687147647265448061340763744378078290380812053940375922997109693874176
16122269626942909129404900662735492142298807557254685123533957184651913530173488143140175045399694454793530120643833272670970079330526292030350920973600450955456136596649325078391464772840162385651374295294530896122681527488756156580761624107880751845994219387748352
32244539253885818258809801325470984284597615114509370247067914369303827060346976286280350090799388909587060241287666545341940158661052584060701841947200901910912273193298650156782929545680324771302748590589061792245363054977512313161523248215761503691988438775496704
64489078507771636517619602650941968569195230229018740494135828738607654120693952572560700181598777819174120482575333090683880317322105168121403683894401803821824546386597300313565859091360649542605497181178123584490726109955024626323046496431523007383976877550993408
128978157015543273035239205301883937138390460458037480988271657477215308241387905145121400363197555638348240965150666181367760634644210336242807367788803607643649092773194600627131718182721299085210994362356247168981452219910049252646092992863046014767953755101986816
257956314031086546070478410603767874276780920916074961976543314954430616482775810290242800726395111276696481930301332362735521269288420672485614735577607215287298185546389201254263436365442598170421988724712494337962904439820098505292185985726092029535907510203973632
515912628062173092140956821207535748553561841832149923953086629908861232965551620580485601452790222553392963860602664725471042538576841344971229471155214430574596371092778402508526872730885196340843977449424988675925808879640197010584371971452184059071815020407947264
1031825256124346184281913642415071497107123683664299847906173259817722465931103241160971202905580445106785927721205329450942085077153682689942458942310428861149192742185556805017053745461770392681687954898849977351851617759280394021168743942904368118143630040815894528
2063650512248692368563827284830142994214247367328599695812346519635444931862206482321942405811160890213571855442410658901884170154307365379884917884620857722298385484371113610034107490923540785363375909797699954703703235518560788042337487885808736236287260081631789056
4127301024497384737127654569660285988428494734657199391624693039270889863724412964643884811622321780427143710884821317803768340308614730759769835769241715444596770968742227220068214981847081570726751819595399909407406471037121576084674975771617472472574520163263578112
8254602048994769474255309139320571976856989469314398783249386078541779727448825929287769623244643560854287421769642635607536680617229461519539671538483430889193541937484454440136429963694163141453503639190799818814812942074243152169349951543234944945149040326527156224
16509204097989538948510618278641143953713978938628797566498772157083559454897651858575539246489287121708574843539285271215073361234458923039079343076966861778387083874968908880272859927388326282907007278381599637629625884148486304338699903086469889890298080653054312448
33018408195979077897021236557282287907427957877257595132997544314167118909795303717151078492978574243417149687078570542430146722468917846078158686153933723556774167749937817760545719854776652565814014556763199275259251768296972608677399806172939779780596161306108624896
66036816391958155794042473114564575814855915754515190265995088628334237819590607434302156985957148486834299374157141084860293444937835692156317372307867447113548335499875635521091439709553305131628029113526398550518503536593945217354799612345879559561192322612217249792
132073632783916311588084946229129151629711831509030380531990177256668475639181214868604313971914296973668598748314282169720586889875671384312634744615734894227096670999751271042182879419106610263256058227052797101037007073187890434709599224691759119122384645224434499584
264147265567832623176169892458258303259423663018060761063980354513336951278362429737208627943828593947337197496628564339441173779751342768625269489231469788454193341999502542084365758838213220526512116454105594202074014146375780869419198449383518238244769290448868999168
528294531135665246352339784916516606518847326036121522127960709026673902556724859474417255887657187894674394993257128678882347559502685537250538978462939576908386683999005084168731517676426441053024232908211188404148028292751561738838396898767036476489538580897737998336
1056589062271330492704679569833033213037694652072243044255921418053347805113449718948834511775314375789348789986514257357764695119005371074501077956925879153816773367998010168337463035352852882106048465816422376808296056585503123477676793797534072952979077161795475996672
2113178124542660985409359139666066426075389304144486088511842836106695610226899437897669023550628751578697579973028514715529390238010742149002155913851758307633546735996020336674926070705705764212096931632844753616592113171006246955353587595068145905958154323590951993344
4226356249085321970818718279332132852150778608288972177023685672213391220453798875795338047101257503157395159946057029431058780476021484298004311827703516615267093471992040673349852141411411528424193863265689507233184226342012493910707175190136291811916308647181903986688
8452712498170643941637436558664265704301557216577944354047371344426782440907597751590676094202515006314790319892114058862117560952042968596008623655407033230534186943984081346699704282822823056848387726531379014466368452684024987821414350380272583623832617294363807973376
16905424996341287883274873117328531408603114433155888708094742688853564881815195503181352188405030012629580639784228117724235121904085937192017247310814066461068373887968162693399408565645646113696775453062758028932736905368049975642828700760545167247665234588727615946752
33810849992682575766549746234657062817206228866311777416189485377707129763630391006362704376810060025259161279568456235448470243808171874384034494621628132922136747775936325386798817131291292227393550906125516057865473810736099951285657401521090334495330469177455231893504
67621699985365151533099492469314125634412457732623554832378970755414259527260782012725408753620120050518322559136912470896940487616343748768068989243256265844273495551872650773597634262582584454787101812251032115730947621472199902571314803042180668990660938354910463787008
135243399970730303066198984938628251268824915465247109664757941510828519054521564025450817507240240101036645118273824941793880975232687497536137978486512531688546991103745301547195268525165168909574203624502064231461895242944399805142629606084361337981321876709820927574016
270486799941460606132397969877256502537649830930494219329515883021657038109043128050901635014480480202073290236547649883587761950465374995072275956973025063377093982207490603094390537050330337819148407249004128462923790485888799610285259212168722675962643753419641855148032
540973599882921212264795939754513005075299661860988438659031766043314076218086256101803270028960960404146580473095299767175523900930749990144551913946050126754187964414981206188781074100660675638296814498008256925847580971777599220570518424337445351925287506839283710296064
1081947199765842424529591879509026010150599323721976877318063532086628152436172512203606540057921920808293160946190599534351047801861499980289103827892100253508375928829962412377562148201321351276593628996016513851695161943555198441141036848674890703850575013678567420592128
2163894399531684849059183759018052020301198647443953754636127064173256304872345024407213080115843841616586321892381199068702095603722999960578207655784200507016751857659924824755124296402642702553187257992033027703390323887110396882282073697349781407701150027357134841184256
4327788799063369698118367518036104040602397294887907509272254128346512609744690048814426160231687683233172643784762398137404191207445999921156415311568401014033503715319849649510248592805285405106374515984066055406780647774220793764564147394699562815402300054714269682368512
8655577598126739396236735036072208081204794589775815018544508256693025219489380097628852320463375366466345287569524796274808382414891999842312830623136802028067007430639699299020497185610570810212749031968132110813561295548441587529128294789399125630804600109428539364737024
17311155196253478792473470072144416162409589179551630037089016513386050438978760195257704640926750732932690575139049592549616764829783999684625661246273604056134014861279398598040994371221141620425498063936264221627122591096883175058256589578798251261609200218857078729474048
34622310392506957584946940144288832324819178359103260074178033026772100877957520390515409281853501465865381150278099185099233529659567999369251322492547208112268029722558797196081988742442283240850996127872528443254245182193766350116513179157596502523218400437714157458948096
69244620785013915169893880288577664649638356718206520148356066053544201755915040781030818563707002931730762300556198370198467059319135998738502644985094416224536059445117594392163977484884566481701992255745056886508490364387532700233026358315193005046436800875428314917896192
138489241570027830339787760577155329299276713436413040296712132107088403511830081562061637127414005863461524601112396740396934118638271997477005289970188832449072118890235188784327954969769132963403984511490113773016980728775065400466052716630386010092873601750856629835792384
276978483140055660679575521154310658598553426872826080593424264214176807023660163124123274254828011726923049202224793480793868237276543994954010579940377664898144237780470377568655909939538265926807969022980227546033961457550130800932105433260772020185747203501713259671584768
553956966280111321359151042308621317197106853745652161186848528428353614047320326248246548509656023453846098404449586961587736474553087989908021159880755329796288475560940755137311819879076531853615938045960455092067922915100261601864210866521544040371494407003426519343169536
1107913932560222642718302084617242634394213707491304322373697056856707228094640652496493097019312046907692196808899173923175472949106175979816042319761510659592576951121881510274623639758153063707231876091920910184135845830200523203728421733043088080742988814006853038686339072
2215827865120445285436604169234485268788427414982608644747394113713414456189281304992986194038624093815384393617798347846350945898212351959632084639523021319185153902243763020549247279516306127414463752183841820368271691660401046407456843466086176161485977628013706077372678144
4431655730240890570873208338468970537576854829965217289494788227426828912378562609985972388077248187630768787235596695692701891796424703919264169279046042638370307804487526041098494559032612254828927504367683640736543383320802092814913686932172352322971955256027412154745356288
8863311460481781141746416676937941075153709659930434578989576454853657824757125219971944776154496375261537574471193391385403783592849407838528338558092085276740615608975052082196989118065224509657855008735367281473086766641604185629827373864344704645943910512054824309490712576
17726622920963562283492833353875882150307419319860869157979152909707315649514250439943889552308992750523075148942386782770807567185698815677056677116184170553481231217950104164393978236130449019315710017470734562946173533283208371259654747728689409291887821024109648618981425152
35453245841927124566985666707751764300614838639721738315958305819414631299028500879887779104617985501046150297884773565541615134371397631354113354232368341106962462435900208328787956472260898038631420034941469125892347066566416742519309495457378818583775642048219297237962850304
70906491683854249133971333415503528601229677279443476631916611638829262598057001759775558209235971002092300595769547131083230268742795262708226708464736682213924924871800416657575912944521796077262840069882938251784694133132833485038618990914757637167551284096438594475925700608
141812983367708498267942666831007057202459354558886953263833223277658525196114003519551116418471942004184601191539094262166460537485590525416453416929473364427849849743600833315151825889043592154525680139765876503569388266265666970077237981829515274335102568192877188951851401216
283625966735416996535885333662014114404918709117773906527666446555317050392228007039102232836943884008369202383078188524332921074971181050832906833858946728855699699487201666630303651778087184309051360279531753007138776532531333940154475963659030548670205136385754377903702802432
567251933470833993071770667324028228809837418235547813055332893110634100784456014078204465673887768016738404766156377048665842149942362101665813667717893457711399398974403333260607303556174368618102720559063506014277553065062667880308951927318061097340410272771508755807405604864
1134503866941667986143541334648056457619674836471095626110665786221268201568912028156408931347775536033476809532312754097331684299884724203331627335435786915422798797948806666521214607112348737236205441118127012028555106130125335760617903854636122194680820545543017511614811209728
2269007733883335972287082669296112915239349672942191252221331572442536403137824056312817862695551072066953619064625508194663368599769448406663254670871573830845597595897613333042429214224697474472410882236254024057110212260250671521235807709272244389361641091086035023229622419456
4538015467766671944574165338592225830478699345884382504442663144885072806275648112625635725391102144133907238129251016389326737199538896813326509341743147661691195191795226666084858428449394948944821764472508048114220424520501343042471615418544488778723282182172070046459244838912
9076030935533343889148330677184451660957398691768765008885326289770145612551296225251271450782204288267814476258502032778653474399077793626653018683486295323382390383590453332169716856898789897889643528945016096228440849041002686084943230837088977557446564364344140092918489677824
18152061871066687778296661354368903321914797383537530017770652579540291225102592450502542901564408576535628952517004065557306948798155587253306037366972590646764780767180906664339433713797579795779287057890032192456881698082005372169886461674177955114893128728688280185836979355648
36304123742133375556593322708737806643829594767075060035541305159080582450205184901005085803128817153071257905034008131114613897596311174506612074733945181293529561534361813328678867427595159591558574115780064384913763396164010744339772923348355910229786257457376560371673958711296
72608247484266751113186645417475613287659189534150120071082610318161164900410369802010171606257634306142515810068016262229227795192622349013224149467890362587059123068723626657357734855190319183117148231560128769827526792328021488679545846696711820459572514914753120743347917422592
145216494968533502226373290834951226575318379068300240142165220636322329800820739604020343212515268612285031620136032524458455590385244698026448298935780725174118246137447253314715469710380638366234296463120257539655053584656042977359091693393423640919145029829506241486695834845184
290432989937067004452746581669902453150636758136600480284330441272644659601641479208040686425030537224570063240272065048916911180770489396052896597871561450348236492274894506629430939420761276732468592926240515079310107169312085954718183386786847281838290059659012482973391669690368
580865979874134008905493163339804906301273516273200960568660882545289319203282958416081372850061074449140126480544130097833822361540978792105793195743122900696472984549789013258861878841522553464937185852481030158620214338624171909436366773573694563676580119318024965946783339380736
1161731959748268017810986326679609812602547032546401921137321765090578638406565916832162745700122148898280252961088260195667644723081957584211586391486245801392945969099578026517723757683045106929874371704962060317240428677248343818872733547147389127353160238636049931893566678761472
2323463919496536035621972653359219625205094065092803842274643530181157276813131833664325491400244297796560505922176520391335289446163915168423172782972491602785891938199156053035447515366090213859748743409924120634480857354496687637745467094294778254706320477272099863787133357522944
4646927838993072071243945306718439250410188130185607684549287060362314553626263667328650982800488595593121011844353040782670578892327830336846345565944983205571783876398312106070895030732180427719497486819848241268961714708993375275490934188589556509412640954544199727574266715045888
9293855677986144142487890613436878500820376260371215369098574120724629107252527334657301965600977191186242023688706081565341157784655660673692691131889966411143567752796624212141790061464360855438994973639696482537923429417986750550981868377179113018825281909088399455148533430091776
18587711355972288284975781226873757001640752520742430738197148241449258214505054669314603931201954382372484047377412163130682315569311321347385382263779932822287135505593248424283580122928721710877989947279392965075846858835973501101963736754358226037650563818176798910297066860183552
37175422711944576569951562453747514003281505041484861476394296482898516429010109338629207862403908764744968094754824326261364631138622642694770764527559865644574271011186496848567160245857443421755979894558785930151693717671947002203927473508716452075301127636353597820594133720367104
74350845423889153139903124907495028006563010082969722952788592965797032858020218677258415724807817529489936189509648652522729262277245285389541529055119731289148542022372993697134320491714886843511959789117571860303387435343894004407854947017432904150602255272707195641188267440734208
148701690847778306279806249814990056013126020165939445905577185931594065716040437354516831449615635058979872379019297305045458524554490570779083058110239462578297084044745987394268640983429773687023919578235143720606774870687788008815709894034865808301204510545414391282376534881468416
297403381695556612559612499629980112026252040331878891811154371863188131432080874709033662899231270117959744758038594610090917049108981141558166116220478925156594168089491974788537281966859547374047839156470287441213549741375576017631419788069731616602409021090828782564753069762936832
594806763391113225119224999259960224052504080663757783622308743726376262864161749418067325798462540235919489516077189220181834098217962283116332232440957850313188336178983949577074563933719094748095678312940574882427099482751152035262839576139463233204818042181657565129506139525873664
1189613526782226450238449998519920448105008161327515567244617487452752525728323498836134651596925080471838979032154378440363668196435924566232664464881915700626376672357967899154149127867438189496191356625881149764854198965502304070525679152278926466409636084363315130259012279051747328
2379227053564452900476899997039840896210016322655031134489234974905505051456646997672269303193850160943677958064308756880727336392871849132465328929763831401252753344715935798308298255734876378992382713251762299529708397931004608141051358304557852932819272168726630260518024558103494656
4758454107128905800953799994079681792420032645310062268978469949811010102913293995344538606387700321887355916128617513761454672785743698264930657859527662802505506689431871596616596511469752757984765426503524599059416795862009216282102716609115705865638544337453260521036049116206989312
9516908214257811601907599988159363584840065290620124537956939899622020205826587990689077212775400643774711832257235027522909345571487396529861315719055325605011013378863743193233193022939505515969530853007049198118833591724018432564205433218231411731277088674906521042072098232413978624
19033816428515623203815199976318727169680130581240249075913879799244040411653175981378154425550801287549423664514470055045818691142974793059722631438110651210022026757727486386466386045879011031939061706014098396237667183448036865128410866436462823462554177349813042084144196464827957248
38067632857031246407630399952637454339360261162480498151827759598488080823306351962756308851101602575098847329028940110091637382285949586119445262876221302420044053515454972772932772091758022063878123412028196792475334366896073730256821732872925646925108354699626084168288392929655914496
76135265714062492815260799905274908678720522324960996303655519196976161646612703925512617702203205150197694658057880220183274764571899172238890525752442604840088107030909945545865544183516044127756246824056393584950668733792147460513643465745851293850216709399252168336576785859311828992
152270531428124985630521599810549817357441044649921992607311038393952323293225407851025235404406410300395389316115760440366549529143798344477781051504885209680176214061819891091731088367032088255512493648112787169901337467584294921027286931491702587700433418798504336673153571718623657984
304541062856249971261043199621099634714882089299843985214622076787904646586450815702050470808812820600790778632231520880733099058287596688955562103009770419360352428123639782183462176734064176511024987296225574339802674935168589842054573862983405175400866837597008673346307143437247315968
609082125712499942522086399242199269429764178599687970429244153575809293172901631404100941617625641201581557264463041761466198116575193377911124206019540838720704856247279564366924353468128353022049974592451148679605349870337179684109147725966810350801733675194017346692614286874494631936
1218164251424999885044172798484398538859528357199375940858488307151618586345803262808201883235251282403163114528926083522932396233150386755822248412039081677441409712494559128733848706936256706044099949184902297359210699740674359368218295451933620701603467350388034693385228573748989263872
2436328502849999770088345596968797077719056714398751881716976614303237172691606525616403766470502564806326229057852167045864792466300773511644496824078163354882819424989118257467697413872513412088199898369804594718421399481348718736436590903867241403206934700776069386770457147497978527744
4872657005699999540176691193937594155438113428797503763433953228606474345383213051232807532941005129612652458115704334091729584932601547023288993648156326709765638849978236514935394827745026824176399796739609189436842798962697437472873181807734482806413869401552138773540914294995957055488
9745314011399999080353382387875188310876226857595007526867906457212948690766426102465615065882010259225304916231408668183459169865203094046577987296312653419531277699956473029870789655490053648352799593479218378873685597925394874945746363615468965612827738803104277547081828589991914110976
19490628022799998160706764775750376621752453715190015053735812914425897381532852204931230131764020518450609832462817336366918339730406188093155974592625306839062555399912946059741579310980107296705599186958436757747371195850789749891492727230937931225655477606208555094163657179983828221952
38981256045599996321413529551500753243504907430380030107471625828851794763065704409862460263528041036901219664925634672733836679460812376186311949185250613678125110799825892119483158621960214593411198373916873515494742391701579499782985454461875862451310955212417110188327314359967656443904
77962512091199992642827059103001506487009814860760060214943251657703589526131408819724920527056082073802439329851269345467673358921624752372623898370501227356250221599651784238966317243920429186822396747833747030989484783403158999565970908923751724902621910424834220376654628719935312887808
155925024182399985285654118206003012974019629721520120429886503315407179052262817639449841054112164147604878659702538690935346717843249504745247796741002454712500443199303568477932634487840858373644793495667494061978969566806317999131941817847503449805243820849668440753309257439870625775616
311850048364799970571308236412006025948039259443040240859773006630814358104525635278899682108224328295209757319405077381870693435686499009490495593482004909425000886398607136955865268975681716747289586991334988123957939133612635998263883635695006899610487641699336881506618514879741251551232
623700096729599941142616472824012051896078518886080481719546013261628716209051270557799364216448656590419514638810154763741386871372998018980991186964009818850001772797214273911730537951363433494579173982669976247915878267225271996527767271390013799220975283398673763013237029759482503102464
1247400193459199882285232945648024103792157037772160963439092026523257432418102541115598728432897313180839029277620309527482773742745996037961982373928019637700003545594428547823461075902726866989158347965339952495831756534450543993055534542780027598441950566797347526026474059518965006204928
2494800386918399764570465891296048207584314075544321926878184053046514864836205082231197456865794626361678058555240619054965547485491992075923964747856039275400007091188857095646922151805453733978316695930679904991663513068901087986111069085560055196883901133594695052052948119037930012409856
4989600773836799529140931782592096415168628151088643853756368106093029729672410164462394913731589252723356117110481238109931094970983984151847929495712078550800014182377714191293844303610907467956633391861359809983327026137802175972222138171120110393767802267189390104105896238075860024819712
9979201547673599058281863565184192830337256302177287707512736212186059459344820328924789827463178505446712234220962476219862189941967968303695858991424157101600028364755428382587688607221814935913266783722719619966654052275604351944444276342240220787535604534378780208211792476151720049639424
19958403095347198116563727130368385660674512604354575415025472424372118918689640657849579654926357010893424468441924952439724379883935936607391717982848314203200056729510856765175377214443629871826533567445439239933308104551208703888888552684480441575071209068757560416423584952303440099278848
39916806190694396233127454260736771321349025208709150830050944848744237837379281315699159309852714021786848936883849904879448759767871873214783435965696628406400113459021713530350754428887259743653067134890878479866616209102417407777777105368960883150142418137515120832847169904606880198557696
79833612381388792466254908521473542642698050417418301660101889697488475674758562631398318619705428043573697873767699809758897519535743746429566871931393256812800226918043427060701508857774519487306134269781756959733232418204834815555554210737921766300284836275030241665694339809213760397115392
159667224762777584932509817042947085285396100834836603320203779394976951349517125262796637239410856087147395747535399619517795039071487492859133743862786513625600453836086854121403017715549038974612268539563513919466464836409669631111108421475843532600569672550060483331388679618427520794230784
319334449525555169865019634085894170570792201669673206640407558789953902699034250525593274478821712174294791495070799239035590078142974985718267487725573027251200907672173708242806035431098077949224537079127027838932929672819339262222216842951687065201139345100120966662777359236855041588461568
638668899051110339730039268171788341141584403339346413280815117579907805398068501051186548957643424348589582990141598478071180156285949971436534975451146054502401815344347416485612070862196155898449074158254055677865859345638678524444433685903374130402278690200241933325554718473710083176923136
1277337798102220679460078536343576682283168806678692826561630235159815610796137002102373097915286848697179165980283196956142360312571899942873069950902292109004803630688694832971224141724392311796898148316508111355731718691277357048888867371806748260804557380400483866651109436947420166353846272
2554675596204441358920157072687153364566337613357385653123260470319631221592274004204746195830573697394358331960566393912284720625143799885746139901804584218009607261377389665942448283448784623593796296633016222711463437382554714097777734743613496521609114760800967733302218873894840332707692544
5109351192408882717840314145374306729132675226714771306246520940639262443184548008409492391661147394788716663921132787824569441250287599771492279803609168436019214522754779331884896566897569247187592593266032445422926874765109428195555469487226993043218229521601935466604437747789680665415385088
10218702384817765435680628290748613458265350453429542612493041881278524886369096016818984783322294789577433327842265575649138882500575199542984559607218336872038429045509558663769793133795138494375185186532064890845853749530218856391110938974453986086436459043203870933208875495579361330830770176
20437404769635530871361256581497226916530700906859085224986083762557049772738192033637969566644589579154866655684531151298277765001150399085969119214436673744076858091019117327539586267590276988750370373064129781691707499060437712782221877948907972172872918086407741866417750991158722661661540352
40874809539271061742722513162994453833061401813718170449972167525114099545476384067275939133289179158309733311369062302596555530002300798171938238428873347488153716182038234655079172535180553977500740746128259563383414998120875425564443755897815944345745836172815483732835501982317445323323080704
81749619078542123485445026325988907666122803627436340899944335050228199090952768134551878266578358316619466622738124605193111060004601596343876476857746694976307432364076469310158345070361107955001481492256519126766829996241750851128887511795631888691491672345630967465671003964634890646646161408
163499238157084246970890052651977815332245607254872681799888670100456398181905536269103756533156716633238933245476249210386222120009203192687752953715493389952614864728152938620316690140722215910002962984513038253533659992483501702257775023591263777382983344691261934931342007929269781293292322816
326998476314168493941780105303955630664491214509745363599777340200912796363811072538207513066313433266477866490952498420772444240018406385375505907430986779905229729456305877240633380281444431820005925969026076507067319984967003404515550047182527554765966689382523869862684015858539562586584645632
653996952628336987883560210607911261328982429019490727199554680401825592727622145076415026132626866532955732981904996841544888480036812770751011814861973559810459458912611754481266760562888863640011851938052153014134639969934006809031100094365055109531933378765047739725368031717079125173169291264
1307993905256673975767120421215822522657964858038981454399109360803651185455244290152830052265253733065911465963809993683089776960073625541502023629723947119620918917825223508962533521125777727280023703876104306028269279939868013618062200188730110219063866757530095479450736063434158250346338582528
2615987810513347951534240842431645045315929716077962908798218721607302370910488580305660104530507466131822931927619987366179553920147251083004047259447894239241837835650447017925067042251555454560047407752208612056538559879736027236124400377460220438127733515060190958901472126868316500692677165056
5231975621026695903068481684863290090631859432155925817596437443214604741820977160611320209061014932263645863855239974732359107840294502166008094518895788478483675671300894035850134084503110909120094815504417224113077119759472054472248800754920440876255467030120381917802944253736633001385354330112
10463951242053391806136963369726580181263718864311851635192874886429209483641954321222640418122029864527291727710479949464718215680589004332016189037791576956967351342601788071700268169006221818240189631008834448226154239518944108944497601509840881752510934060240763835605888507473266002770708660224
20927902484106783612273926739453160362527437728623703270385749772858418967283908642445280836244059729054583455420959898929436431361178008664032378075583153913934702685203576143400536338012443636480379262017668896452308479037888217888995203019681763505021868120481527671211777014946532005541417320448
41855804968213567224547853478906320725054875457247406540771499545716837934567817284890561672488119458109166910841919797858872862722356017328064756151166307827869405370407152286801072676024887272960758524035337792904616958075776435777990406039363527010043736240963055342423554029893064011082834640896
83711609936427134449095706957812641450109750914494813081542999091433675869135634569781123344976238916218333821683839595717745725444712034656129512302332615655738810740814304573602145352049774545921517048070675585809233916151552871555980812078727054020087472481926110684847108059786128022165669281792
167423219872854268898191413915625282900219501828989626163085998182867351738271269139562246689952477832436667643367679191435491450889424069312259024604665231311477621481628609147204290704099549091843034096141351171618467832303105743111961624157454108040174944963852221369694216119572256044331338563584
334846439745708537796382827831250565800439003657979252326171996365734703476542538279124493379904955664873335286735358382870982901778848138624518049209330462622955242963257218294408581408199098183686068192282702343236935664606211486223923248314908216080349889927704442739388432239144512088662677127168
669692879491417075592765655662501131600878007315958504652343992731469406953085076558248986759809911329746670573470716765741965803557696277249036098418660925245910485926514436588817162816398196367372136384565404686473871329212422972447846496629816432160699779855408885478776864478289024177325354254336
1339385758982834151185531311325002263201756014631917009304687985462938813906170153116497973519619822659493341146941433531483931607115392554498072196837321850491820971853028873177634325632796392734744272769130809372947742658424845944895692993259632864321399559710817770957553728956578048354650708508672
2678771517965668302371062622650004526403512029263834018609375970925877627812340306232995947039239645318986682293882867062967863214230785108996144393674643700983641943706057746355268651265592785469488545538261618745895485316849691889791385986519265728642799119421635541915107457913156096709301417017344
5357543035931336604742125245300009052807024058527668037218751941851755255624680612465991894078479290637973364587765734125935726428461570217992288787349287401967283887412115492710537302531185570938977091076523237491790970633699383779582771973038531457285598238843271083830214915826312193418602834034688
10715086071862673209484250490600018105614048117055336074437503883703510511249361224931983788156958581275946729175531468251871452856923140435984577574698574803934567774824230985421074605062371141877954182153046474983581941267398767559165543946077062914571196477686542167660429831652624386837205668069376
21430172143725346418968500981200036211228096234110672148875007767407021022498722449863967576313917162551893458351062936503742905713846280871969155149397149607869135549648461970842149210124742283755908364306092949967163882534797535118331087892154125829142392955373084335320859663305248773674411336138752
42860344287450692837937001962400072422456192468221344297750015534814042044997444899727935152627834325103786916702125873007485811427692561743938310298794299215738271099296923941684298420249484567511816728612185899934327765069595070236662175784308251658284785910746168670641719326610497547348822672277504
85720688574901385675874003924800144844912384936442688595500031069628084089994889799455870305255668650207573833404251746014971622855385123487876620597588598431476542198593847883368596840498969135023633457224371799868655530139190140473324351568616503316569571821492337341283438653220995094697645344555008
171441377149802771351748007849600289689824769872885377191000062139256168179989779598911740610511337300415147666808503492029943245710770246975753241195177196862953084397187695766737193680997938270047266914448743599737311060278380280946648703137233006633139143642984674682566877306441990189395290689110016
342882754299605542703496015699200579379649539745770754382000124278512336359979559197823481221022674600830295333617006984059886491421540493951506482390354393725906168794375391533474387361995876540094533828897487199474622120556760561893297406274466013266278287285969349365133754612883980378790581378220032
685765508599211085406992031398401158759299079491541508764000248557024672719959118395646962442045349201660590667234013968119772982843080987903012964780708787451812337588750783066948774723991753080189067657794974398949244241113521123786594812548932026532556574571938698730267509225767960757581162756440064
1371531017198422170813984062796802317518598158983083017528000497114049345439918236791293924884090698403321181334468027936239545965686161975806025929561417574903624675177501566133897549447983506160378135315589948797898488482227042247573189625097864053065113149143877397460535018451535921515162325512880128
2743062034396844341627968125593604635037196317966166035056000994228098690879836473582587849768181396806642362668936055872479091931372323951612051859122835149807249350355003132267795098895967012320756270631179897595796976964454084495146379250195728106130226298287754794921070036903071843030324651025760256
5486124068793688683255936251187209270074392635932332070112001988456197381759672947165175699536362793613284725337872111744958183862744647903224103718245670299614498700710006264535590197791934024641512541262359795191593953928908168990292758500391456212260452596575509589842140073806143686060649302051520512
10972248137587377366511872502374418540148785271864664140224003976912394763519345894330351399072725587226569450675744223489916367725489295806448207436491340599228997401420012529071180395583868049283025082524719590383187907857816337980585517000782912424520905193151019179684280147612287372121298604103041024
21944496275174754733023745004748837080297570543729328280448007953824789527038691788660702798145451174453138901351488446979832735450978591612896414872982681198457994802840025058142360791167736098566050165049439180766375815715632675961171034001565824849041810386302038359368560295224574744242597208206082048
43888992550349509466047490009497674160595141087458656560896015907649579054077383577321405596290902348906277802702976893959665470901957183225792829745965362396915989605680050116284721582335472197132100330098878361532751631431265351922342068003131649698083620772604076718737120590449149488485194416412164096
87777985100699018932094980018995348321190282174917313121792031815299158108154767154642811192581804697812555605405953787919330941803914366451585659491930724793831979211360100232569443164670944394264200660197756723065503262862530703844684136006263299396167241545208153437474241180898298976970388832824328192
175555970201398037864189960037990696642380564349834626243584063630598316216309534309285622385163609395625111210811907575838661883607828732903171318983861449587663958422720200465138886329341888788528401320395513446131006525725061407689368272012526598792334483090416306874948482361796597953940777665648656384
351111940402796075728379920075981393284761128699669252487168127261196632432619068618571244770327218791250222421623815151677323767215657465806342637967722899175327916845440400930277772658683777577056802640791026892262013051450122815378736544025053197584668966180832613749896964723593195907881555331297312768
702223880805592151456759840151962786569522257399338504974336254522393264865238137237142489540654437582500444843247630303354647534431314931612685275935445798350655833690880801860555545317367555154113605281582053784524026102900245630757473088050106395169337932361665227499793929447186391815763110662594625536
1404447761611184302913519680303925573139044514798677009948672509044786529730476274474284979081308875165000889686495260606709295068862629863225370551870891596701311667381761603721111090634735110308227210563164107569048052205800491261514946176100212790338675864723330454999587858894372783631526221325189251072
2808895523222368605827039360607851146278089029597354019897345018089573059460952548948569958162617750330001779372990521213418590137725259726450741103741783193402623334763523207442222181269470220616454421126328215138096104411600982523029892352200425580677351729446660909999175717788745567263052442650378502144
5617791046444737211654078721215702292556178059194708039794690036179146118921905097897139916325235500660003558745981042426837180275450519452901482207483566386805246669527046414884444362538940441232908842252656430276192208823201965046059784704400851161354703458893321819998351435577491134526104885300757004288
11235582092889474423308157442431404585112356118389416079589380072358292237843810195794279832650471001320007117491962084853674360550901038905802964414967132773610493339054092829768888725077880882465817684505312860552384417646403930092119569408801702322709406917786643639996702871154982269052209770601514008576
22471164185778948846616314884862809170224712236778832159178760144716584475687620391588559665300942002640014234983924169707348721101802077811605928829934265547220986678108185659537777450155761764931635369010625721104768835292807860184239138817603404645418813835573287279993405742309964538104419541203028017152
44942328371557897693232629769725618340449424473557664318357520289433168951375240783177119330601884005280028469967848339414697442203604155623211857659868531094441973356216371319075554900311523529863270738021251442209537670585615720368478277635206809290837627671146574559986811484619929076208839082406056034304
89884656743115795386465259539451236680898848947115328636715040578866337902750481566354238661203768010560056939935696678829394884407208311246423715319737062188883946712432742638151109800623047059726541476042502884419075341171231440736956555270413618581675255342293149119973622969239858152417678164812112068608
179769313486231590772930519078902473361797697894230657273430081157732675805500963132708477322407536021120113879871393357658789768814416622492847430639474124377767893424865485276302219601246094119453082952085005768838150682342462881473913110540827237163350510684586298239947245938479716304835356329624224137216
359538626972463181545861038157804946723595395788461314546860162315465351611001926265416954644815072042240227759742786715317579537628833244985694861278948248755535786849730970552604439202492188238906165904170011537676301364684925762947826221081654474326701021369172596479894491876959432609670712659248448274432
719077253944926363091722076315609893447190791576922629093720324630930703222003852530833909289630144084480455519485573430635159075257666489971389722557896497511071573699461941105208878404984376477812331808340023075352602729369851525895652442163308948653402042738345192959788983753918865219341425318496896548864
1438154507889852726183444152631219786894381583153845258187440649261861406444007705061667818579260288168960911038971146861270318150515332979942779445115792995022143147398923882210417756809968752955624663616680046150705205458739703051791304884326617897306804085476690385919577967507837730438682850636993793097728
2876309015779705452366888305262439573788763166307690516374881298523722812888015410123335637158520576337921822077942293722540636301030665959885558890231585990044286294797847764420835513619937505911249327233360092301410410917479406103582609768653235794613608170953380771839155935015675460877365701273987586195456
5752618031559410904733776610524879147577526332615381032749762597047445625776030820246671274317041152675843644155884587445081272602061331919771117780463171980088572589595695528841671027239875011822498654466720184602820821834958812207165219537306471589227216341906761543678311870031350921754731402547975172390912
11505236063118821809467553221049758295155052665230762065499525194094891251552061640493342548634082305351687288311769174890162545204122663839542235560926343960177145179191391057683342054479750023644997308933440369205641643669917624414330439074612943178454432683813523087356623740062701843509462805095950344781824
23010472126237643618935106442099516590310105330461524130999050388189782503104123280986685097268164610703374576623538349780325090408245327679084471121852687920354290358382782115366684108959500047289994617866880738411283287339835248828660878149225886356908865367627046174713247480125403687018925610191900689563648
46020944252475287237870212884199033180620210660923048261998100776379565006208246561973370194536329221406749153247076699560650180816490655358168942243705375840708580716765564230733368217919000094579989235733761476822566574679670497657321756298451772713817730735254092349426494960250807374037851220383801379127296
92041888504950574475740425768398066361240421321846096523996201552759130012416493123946740389072658442813498306494153399121300361632981310716337884487410751681417161433531128461466736435838000189159978471467522953645133149359340995314643512596903545427635461470508184698852989920501614748075702440767602758254592
184083777009901148951480851536796132722480842643692193047992403105518260024832986247893480778145316885626996612988306798242600723265962621432675768974821503362834322867062256922933472871676000378319956942935045907290266298718681990629287025193807090855270922941016369397705979841003229496151404881535205516509184
368167554019802297902961703073592265444961685287384386095984806211036520049665972495786961556290633771253993225976613596485201446531925242865351537949643006725668645734124513845866945743352000756639913885870091814580532597437363981258574050387614181710541845882032738795411959682006458992302809763070411033018368
736335108039604595805923406147184530889923370574768772191969612422073040099331944991573923112581267542507986451953227192970402893063850485730703075899286013451337291468249027691733891486704001513279827771740183629161065194874727962517148100775228363421083691764065477590823919364012917984605619526140822066036736
1472670216079209191611846812294369061779846741149537544383939224844146080198663889983147846225162535085015972903906454385940805786127700971461406151798572026902674582936498055383467782973408003026559655543480367258322130389749455925034296201550456726842167383528130955181647838728025835969211239052281644132073472
2945340432158418383223693624588738123559693482299075088767878449688292160397327779966295692450325070170031945807812908771881611572255401942922812303597144053805349165872996110766935565946816006053119311086960734516644260779498911850068592403100913453684334767056261910363295677456051671938422478104563288264146944
5890680864316836766447387249177476247119386964598150177535756899376584320794655559932591384900650140340063891615625817543763223144510803885845624607194288107610698331745992221533871131893632012106238622173921469033288521558997823700137184806201826907368669534112523820726591354912103343876844956209126576528293888
11781361728633673532894774498354952494238773929196300355071513798753168641589311119865182769801300280680127783231251635087526446289021607771691249214388576215221396663491984443067742263787264024212477244347842938066577043117995647400274369612403653814737339068225047641453182709824206687753689912418253153056587776
23562723457267347065789548996709904988477547858392600710143027597506337283178622239730365539602600561360255566462503270175052892578043215543382498428777152430442793326983968886135484527574528048424954488695685876133154086235991294800548739224807307629474678136450095282906365419648413375507379824836506306113175552
47125446914534694131579097993419809976955095716785201420286055195012674566357244479460731079205201122720511132925006540350105785156086431086764996857554304860885586653967937772270969055149056096849908977391371752266308172471982589601097478449614615258949356272900190565812730839296826751014759649673012612226351104
94250893829069388263158195986839619953910191433570402840572110390025349132714488958921462158410402245441022265850013080700211570312172862173529993715108609721771173307935875544541938110298112193699817954782743504532616344943965179202194956899229230517898712545800381131625461678593653502029519299346025224452702208
188501787658138776526316391973679239907820382867140805681144220780050698265428977917842924316820804490882044531700026161400423140624345724347059987430217219443542346615871751089083876220596224387399635909565487009065232689887930358404389913798458461035797425091600762263250923357187307004059038598692050448905404416
377003575316277553052632783947358479815640765734281611362288441560101396530857955835685848633641608981764089063400052322800846281248691448694119974860434438887084693231743502178167752441192448774799271819130974018130465379775860716808779827596916922071594850183201524526501846714374614008118077197384100897810808832
754007150632555106105265567894716959631281531468563222724576883120202793061715911671371697267283217963528178126800104645601692562497382897388239949720868877774169386463487004356335504882384897549598543638261948036260930759551721433617559655193833844143189700366403049053003693428749228016236154394768201795621617664
1508014301265110212210531135789433919262563062937126445449153766240405586123431823342743394534566435927056356253600209291203385124994765794776479899441737755548338772926974008712671009764769795099197087276523896072521861519103442867235119310387667688286379400732806098106007386857498456032472308789536403591243235328
3016028602530220424421062271578867838525126125874252890898307532480811172246863646685486789069132871854112712507200418582406770249989531589552959798883475511096677545853948017425342019529539590198394174553047792145043723038206885734470238620775335376572758801465612196212014773714996912064944617579072807182486470656
6032057205060440848842124543157735677050252251748505781796615064961622344493727293370973578138265743708225425014400837164813540499979063179105919597766951022193355091707896034850684039059079180396788349106095584290087446076413771468940477241550670753145517602931224392424029547429993824129889235158145614364972941312
12064114410120881697684249086315471354100504503497011563593230129923244688987454586741947156276531487416450850028801674329627080999958126358211839195533902044386710183415792069701368078118158360793576698212191168580174892152827542937880954483101341506291035205862448784848059094859987648259778470316291228729945882624
24128228820241763395368498172630942708201009006994023127186460259846489377974909173483894312553062974832901700057603348659254161999916252716423678391067804088773420366831584139402736156236316721587153396424382337160349784305655085875761908966202683012582070411724897569696118189719975296519556940632582457459891765248
48256457640483526790736996345261885416402018013988046254372920519692978755949818346967788625106125949665803400115206697318508323999832505432847356782135608177546840733663168278805472312472633443174306792848764674320699568611310171751523817932405366025164140823449795139392236379439950593039113881265164914919783530496
96512915280967053581473992690523770832804036027976092508745841039385957511899636693935577250212251899331606800230413394637016647999665010865694713564271216355093681467326336557610944624945266886348613585697529348641399137222620343503047635864810732050328281646899590278784472758879901186078227762530329829839567060992
193025830561934107162947985381047541665608072055952185017491682078771915023799273387871154500424503798663213600460826789274033295999330021731389427128542432710187362934652673115221889249890533772697227171395058697282798274445240687006095271729621464100656563293799180557568945517759802372156455525060659659679134121984
386051661123868214325895970762095083331216144111904370034983364157543830047598546775742309000849007597326427200921653578548066591998660043462778854257084865420374725869305346230443778499781067545394454342790117394565596548890481374012190543459242928201313126587598361115137891035519604744312911050121319319358268243968
772103322247736428651791941524190166662432288223808740069966728315087660095197093551484618001698015194652854401843307157096133183997320086925557708514169730840749451738610692460887556999562135090788908685580234789131193097780962748024381086918485856402626253175196722230275782071039209488625822100242638638716536487936
1544206644495472857303583883048380333324864576447617480139933456630175320190394187102969236003396030389305708803686614314192266367994640173851115417028339461681498903477221384921775113999124270181577817371160469578262386195561925496048762173836971712805252506350393444460551564142078418977251644200485277277433072975872
3088413288990945714607167766096760666649729152895234960279866913260350640380788374205938472006792060778611417607373228628384532735989280347702230834056678923362997806954442769843550227998248540363155634742320939156524772391123850992097524347673943425610505012700786888921103128284156837954503288400970554554866145951744
6176826577981891429214335532193521333299458305790469920559733826520701280761576748411876944013584121557222835214746457256769065471978560695404461668113357846725995613908885539687100455996497080726311269484641878313049544782247701984195048695347886851221010025401573777842206256568313675909006576801941109109732291903488
12353653155963782858428671064387042666598916611580939841119467653041402561523153496823753888027168243114445670429492914513538130943957121390808923336226715693451991227817771079374200911992994161452622538969283756626099089564495403968390097390695773702442020050803147555684412513136627351818013153603882218219464583806976
24707306311927565716857342128774085333197833223161879682238935306082805123046306993647507776054336486228891340858985829027076261887914242781617846672453431386903982455635542158748401823985988322905245077938567513252198179128990807936780194781391547404884040101606295111368825026273254703636026307207764436438929167613952
49414612623855131433714684257548170666395666446323759364477870612165610246092613987295015552108672972457782681717971658054152523775828485563235693344906862773807964911271084317496803647971976645810490155877135026504396358257981615873560389562783094809768080203212590222737650052546509407272052614415528872877858335227904
98829225247710262867429368515096341332791332892647518728955741224331220492185227974590031104217345944915565363435943316108305047551656971126471386689813725547615929822542168634993607295943953291620980311754270053008792716515963231747120779125566189619536160406425180445475300105093018814544105228831057745755716670455808
197658450495420525734858737030192682665582665785295037457911482448662440984370455949180062208434691889831130726871886632216610095103313942252942773379627451095231859645084337269987214591887906583241960623508540106017585433031926463494241558251132379239072320812850360890950600210186037629088210457662115491511433340911616
395316900990841051469717474060385365331165331570590074915822964897324881968740911898360124416869383779662261453743773264433220190206627884505885546759254902190463719290168674539974429183775813166483921247017080212035170866063852926988483116502264758478144641625700721781901200420372075258176420915324230983022866681823232
790633801981682102939434948120770730662330663141180149831645929794649763937481823796720248833738767559324522907487546528866440380413255769011771093518509804380927438580337349079948858367551626332967842494034160424070341732127705853976966233004529516956289283251401443563802400840744150516352841830648461966045733363646464
1581267603963364205878869896241541461324661326282360299663291859589299527874963647593440497667477535118649045814975093057732880760826511538023542187037019608761854877160674698159897716735103252665935684988068320848140683464255411707953932466009059033912578566502802887127604801681488301032705683661296923932091466727292928
3162535207926728411757739792483082922649322652564720599326583719178599055749927295186880995334955070237298091629950186115465761521653023076047084374074039217523709754321349396319795433470206505331871369976136641696281366928510823415907864932018118067825157133005605774255209603362976602065411367322593847864182933454585856
6325070415853456823515479584966165845298645305129441198653167438357198111499854590373761990669910140474596183259900372230931523043306046152094168748148078435047419508642698792639590866940413010663742739952273283392562733857021646831815729864036236135650314266011211548510419206725953204130822734645187695728365866909171712
12650140831706913647030959169932331690597290610258882397306334876714396222999709180747523981339820280949192366519800744461863046086612092304188337496296156870094839017285397585279181733880826021327485479904546566785125467714043293663631459728072472271300628532022423097020838413451906408261645469290375391456731733818343424
25300281663413827294061918339864663381194581220517764794612669753428792445999418361495047962679640561898384733039601488923726092173224184608376674992592313740189678034570795170558363467761652042654970959809093133570250935428086587327262919456144944542601257064044846194041676826903812816523290938580750782913463467636686848
50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696
101201126653655309176247673359458653524778324882071059178450679013715169783997673445980191850718562247593538932158405955694904368692896738433506699970369254960758712138283180682233453871046608170619883839236372534281003741712346349309051677824579778170405028256179384776166707307615251266093163754323003131653853870546747392
202402253307310618352495346718917307049556649764142118356901358027430339567995346891960383701437124495187077864316811911389808737385793476867013399940738509921517424276566361364466907742093216341239767678472745068562007483424692698618103355649159556340810056512358769552333414615230502532186327508646006263307707741093494784
404804506614621236704990693437834614099113299528284236713802716054860679135990693783920767402874248990374155728633623822779617474771586953734026799881477019843034848553132722728933815484186432682479535356945490137124014966849385397236206711298319112681620113024717539104666829230461005064372655017292012526615415482186989568
809609013229242473409981386875669228198226599056568473427605432109721358271981387567841534805748497980748311457267247645559234949543173907468053599762954039686069697106265445457867630968372865364959070713890980274248029933698770794472413422596638225363240226049435078209333658460922010128745310034584025053230830964373979136
1619218026458484946819962773751338456396453198113136946855210864219442716543962775135683069611496995961496622914534495291118469899086347814936107199525908079372139394212530890915735261936745730729918141427781960548496059867397541588944826845193276450726480452098870156418667316921844020257490620069168050106461661928747958272
3238436052916969893639925547502676912792906396226273893710421728438885433087925550271366139222993991922993245829068990582236939798172695629872214399051816158744278788425061781831470523873491461459836282855563921096992119734795083177889653690386552901452960904197740312837334633843688040514981240138336100212923323857495916544
6476872105833939787279851095005353825585812792452547787420843456877770866175851100542732278445987983845986491658137981164473879596345391259744428798103632317488557576850123563662941047746982922919672565711127842193984239469590166355779307380773105802905921808395480625674669267687376081029962480276672200425846647714991833088
12953744211667879574559702190010707651171625584905095574841686913755541732351702201085464556891975967691972983316275962328947759192690782519488857596207264634977115153700247127325882095493965845839345131422255684387968478939180332711558614761546211605811843616790961251349338535374752162059924960553344400851693295429983666176
25907488423335759149119404380021415302343251169810191149683373827511083464703404402170929113783951935383945966632551924657895518385381565038977715192414529269954230307400494254651764190987931691678690262844511368775936957878360665423117229523092423211623687233581922502698677070749504324119849921106688801703386590859967332352
51814976846671518298238808760042830604686502339620382299366747655022166929406808804341858227567903870767891933265103849315791036770763130077955430384829058539908460614800988509303528381975863383357380525689022737551873915756721330846234459046184846423247374467163845005397354141499008648239699842213377603406773181719934664704
103629953693343036596477617520085661209373004679240764598733495310044333858813617608683716455135807741535783866530207698631582073541526260155910860769658117079816921229601977018607056763951726766714761051378045475103747831513442661692468918092369692846494748934327690010794708282998017296479399684426755206813546363439869329408
207259907386686073192955235040171322418746009358481529197466990620088667717627235217367432910271615483071567733060415397263164147083052520311821721539316234159633842459203954037214113527903453533429522102756090950207495663026885323384937836184739385692989497868655380021589416565996034592958799368853510413627092726879738658816
414519814773372146385910470080342644837492018716963058394933981240177335435254470434734865820543230966143135466120830794526328294166105040623643443078632468319267684918407908074428227055806907066859044205512181900414991326053770646769875672369478771385978995737310760043178833131992069185917598737707020827254185453759477317632
829039629546744292771820940160685289674984037433926116789867962480354670870508940869469731641086461932286270932241661589052656588332210081247286886157264936638535369836815816148856454111613814133718088411024363800829982652107541293539751344738957542771957991474621520086357666263984138371835197475414041654508370907518954635264
1658079259093488585543641880321370579349968074867852233579735924960709341741017881738939463282172923864572541864483323178105313176664420162494573772314529873277070739673631632297712908223227628267436176822048727601659965304215082587079502689477915085543915982949243040172715332527968276743670394950828083309016741815037909270528
3316158518186977171087283760642741158699936149735704467159471849921418683482035763477878926564345847729145083728966646356210626353328840324989147544629059746554141479347263264595425816446455256534872353644097455203319930608430165174159005378955830171087831965898486080345430665055936553487340789901656166618033483630075818541056
6632317036373954342174567521285482317399872299471408934318943699842837366964071526955757853128691695458290167457933292712421252706657680649978295089258119493108282958694526529190851632892910513069744707288194910406639861216860330348318010757911660342175663931796972160690861330111873106974681579803312333236066967260151637082112
13264634072747908684349135042570964634799744598942817868637887399685674733928143053911515706257383390916580334915866585424842505413315361299956590178516238986216565917389053058381703265785821026139489414576389820813279722433720660696636021515823320684351327863593944321381722660223746213949363159606624666472133934520303274164224
26529268145495817368698270085141929269599489197885635737275774799371349467856286107823031412514766781833160669831733170849685010826630722599913180357032477972433131834778106116763406531571642052278978829152779641626559444867441321393272043031646641368702655727187888642763445320447492427898726319213249332944267869040606548328448
53058536290991634737396540170283858539198978395771271474551549598742698935712572215646062825029533563666321339663466341699370021653261445199826360714064955944866263669556212233526813063143284104557957658305559283253118889734882642786544086063293282737405311454375777285526890640894984855797452638426498665888535738081213096656896
106117072581983269474793080340567717078397956791542542949103099197485397871425144431292125650059067127332642679326932683398740043306522890399652721428129911889732527339112424467053626126286568209115915316611118566506237779469765285573088172126586565474810622908751554571053781281789969711594905276852997331777071476162426193313792
212234145163966538949586160681135434156795913583085085898206198394970795742850288862584251300118134254665285358653865366797480086613045780799305442856259823779465054678224848934107252252573136418231830633222237133012475558939530571146176344253173130949621245817503109142107562563579939423189810553705994663554142952324852386627584
424468290327933077899172321362270868313591827166170171796412396789941591485700577725168502600236268509330570717307730733594960173226091561598610885712519647558930109356449697868214504505146272836463661266444474266024951117879061142292352688506346261899242491635006218284215125127159878846379621107411989327108285904649704773255168
848936580655866155798344642724541736627183654332340343592824793579883182971401155450337005200472537018661141434615461467189920346452183123197221771425039295117860218712899395736429009010292545672927322532888948532049902235758122284584705377012692523798484983270012436568430250254319757692759242214823978654216571809299409546510336
1697873161311732311596689285449083473254367308664680687185649587159766365942802310900674010400945074037322282869230922934379840692904366246394443542850078590235720437425798791472858018020585091345854645065777897064099804471516244569169410754025385047596969966540024873136860500508639515385518484429647957308433143618598819093020672
3395746322623464623193378570898166946508734617329361374371299174319532731885604621801348020801890148074644565738461845868759681385808732492788887085700157180471440874851597582945716036041170182691709290131555794128199608943032489138338821508050770095193939933080049746273721001017279030771036968859295914616866287237197638186041344
6791492645246929246386757141796333893017469234658722748742598348639065463771209243602696041603780296149289131476923691737519362771617464985577774171400314360942881749703195165891432072082340365383418580263111588256399217886064978276677643016101540190387879866160099492547442002034558061542073937718591829233732574474395276372082688
13582985290493858492773514283592667786034938469317445497485196697278130927542418487205392083207560592298578262953847383475038725543234929971155548342800628721885763499406390331782864144164680730766837160526223176512798435772129956553355286032203080380775759732320198985094884004069116123084147875437183658467465148948790552744165376
27165970580987716985547028567185335572069876938634890994970393394556261855084836974410784166415121184597156525907694766950077451086469859942311096685601257443771526998812780663565728288329361461533674321052446353025596871544259913106710572064406160761551519464640397970189768008138232246168295750874367316934930297897581105488330752
54331941161975433971094057134370671144139753877269781989940786789112523710169673948821568332830242369194313051815389533900154902172939719884622193371202514887543053997625561327131456576658722923067348642104892706051193743088519826213421144128812321523103038929280795940379536016276464492336591501748734633869860595795162210976661504
108663882323950867942188114268741342288279507754539563979881573578225047420339347897643136665660484738388626103630779067800309804345879439769244386742405029775086107995251122654262913153317445846134697284209785412102387486177039652426842288257624643046206077858561591880759072032552928984673183003497469267739721191590324421953323008
217327764647901735884376228537482684576559015509079127959763147156450094840678695795286273331320969476777252207261558135600619608691758879538488773484810059550172215990502245308525826306634891692269394568419570824204774972354079304853684576515249286092412155717123183761518144065105857969346366006994938535479442383180648843906646016
434655529295803471768752457074965369153118031018158255919526294312900189681357391590572546662641938953554504414523116271201239217383517759076977546969620119100344431981004490617051652613269783384538789136839141648409549944708158609707369153030498572184824311434246367523036288130211715938692732013989877070958884766361297687813292032
869311058591606943537504914149930738306236062036316511839052588625800379362714783181145093325283877907109008829046232542402478434767035518153955093939240238200688863962008981234103305226539566769077578273678283296819099889416317219414738306060997144369648622868492735046072576260423431877385464027979754141917769532722595375626584064
1738622117183213887075009828299861476612472124072633023678105177251600758725429566362290186650567755814218017658092465084804956869534071036307910187878480476401377727924017962468206610453079133538155156547356566593638199778832634438829476612121994288739297245736985470092145152520846863754770928055959508283835539065445190751253168128
3477244234366427774150019656599722953224944248145266047356210354503201517450859132724580373301135511628436035316184930169609913739068142072615820375756960952802755455848035924936413220906158267076310313094713133187276399557665268877658953224243988577478594491473970940184290305041693727509541856111919016567671078130890381502506336256
6954488468732855548300039313199445906449888496290532094712420709006403034901718265449160746602271023256872070632369860339219827478136284145231640751513921905605510911696071849872826441812316534152620626189426266374552799115330537755317906448487977154957188982947941880368580610083387455019083712223838033135342156261780763005012672512
13908976937465711096600078626398891812899776992581064189424841418012806069803436530898321493204542046513744141264739720678439654956272568290463281503027843811211021823392143699745652883624633068305241252378852532749105598230661075510635812896975954309914377965895883760737161220166774910038167424447676066270684312523561526010025345024
27817953874931422193200157252797783625799553985162128378849682836025612139606873061796642986409084093027488282529479441356879309912545136580926563006055687622422043646784287399491305767249266136610482504757705065498211196461322151021271625793951908619828755931791767521474322440333549820076334848895352132541368625047123052020050690048
55635907749862844386400314505595567251599107970324256757699365672051224279213746123593285972818168186054976565058958882713758619825090273161853126012111375244844087293568574798982611534498532273220965009515410130996422392922644302042543251587903817239657511863583535042948644880667099640152669697790704265082737250094246104040101380096
111271815499725688772800629011191134503198215940648513515398731344102448558427492247186571945636336372109953130117917765427517239650180546323706252024222750489688174587137149597965223068997064546441930019030820261992844785845288604085086503175807634479315023727167070085897289761334199280305339395581408530165474500188492208080202760192
222543630999451377545601258022382269006396431881297027030797462688204897116854984494373143891272672744219906260235835530855034479300361092647412504048445500979376349174274299195930446137994129092883860038061640523985689571690577208170173006351615268958630047454334140171794579522668398560610678791162817060330949000376984416160405520384
445087261998902755091202516044764538012792863762594054061594925376409794233709968988746287782545345488439812520471671061710068958600722185294825008096891001958752698348548598391860892275988258185767720076123281047971379143381154416340346012703230537917260094908668280343589159045336797121221357582325634120661898000753968832320811040768
890174523997805510182405032089529076025585727525188108123189850752819588467419937977492575565090690976879625040943342123420137917201444370589650016193782003917505396697097196783721784551976516371535440152246562095942758286762308832680692025406461075834520189817336560687178318090673594242442715164651268241323796001507937664641622081536
1780349047995611020364810064179058152051171455050376216246379701505639176934839875954985151130181381953759250081886684246840275834402888741179300032387564007835010793394194393567443569103953032743070880304493124191885516573524617665361384050812922151669040379634673121374356636181347188484885430329302536482647592003015875329283244163072
3560698095991222040729620128358116304102342910100752432492759403011278353869679751909970302260362763907518500163773368493680551668805777482358600064775128015670021586788388787134887138207906065486141760608986248383771033147049235330722768101625844303338080759269346242748713272362694376969770860658605072965295184006031750658566488326144
7121396191982444081459240256716232608204685820201504864985518806022556707739359503819940604520725527815037000327546736987361103337611554964717200129550256031340043173576777574269774276415812130972283521217972496767542066294098470661445536203251688606676161518538692485497426544725388753939541721317210145930590368012063501317132976652288
14242792383964888162918480513432465216409371640403009729971037612045113415478719007639881209041451055630074000655093473974722206675223109929434400259100512062680086347153555148539548552831624261944567042435944993535084132588196941322891072406503377213352323037077384970994853089450777507879083442634420291861180736024127002634265953304576
28485584767929776325836961026864930432818743280806019459942075224090226830957438015279762418082902111260148001310186947949444413350446219858868800518201024125360172694307110297079097105663248523889134084871889987070168265176393882645782144813006754426704646074154769941989706178901555015758166885268840583722361472048254005268531906609152
56971169535859552651673922053729860865637486561612038919884150448180453661914876030559524836165804222520296002620373895898888826700892439717737601036402048250720345388614220594158194211326497047778268169743779974140336530352787765291564289626013508853409292148309539883979412357803110031516333770537681167444722944096508010537063813218304
113942339071719105303347844107459721731274973123224077839768300896360907323829752061119049672331608445040592005240747791797777653401784879435475202072804096501440690777228441188316388422652994095556536339487559948280673060705575530583128579252027017706818584296619079767958824715606220063032667541075362334889445888193016021074127626436608
227884678143438210606695688214919443462549946246448155679536601792721814647659504122238099344663216890081184010481495583595555306803569758870950404145608193002881381554456882376632776845305988191113072678975119896561346121411151061166257158504054035413637168593238159535917649431212440126065335082150724669778891776386032042148255252873216
455769356286876421213391376429838886925099892492896311359073203585443629295319008244476198689326433780162368020962991167191110613607139517741900808291216386005762763108913764753265553690611976382226145357950239793122692242822302122332514317008108070827274337186476319071835298862424880252130670164301449339557783552772064084296510505746432
911538712573752842426782752859677773850199784985792622718146407170887258590638016488952397378652867560324736041925982334382221227214279035483801616582432772011525526217827529506531107381223952764452290715900479586245384485644604244665028634016216141654548674372952638143670597724849760504261340328602898679115567105544128168593021011492864
1823077425147505684853565505719355547700399569971585245436292814341774517181276032977904794757305735120649472083851964668764442454428558070967603233164865544023051052435655059013062214762447905528904581431800959172490768971289208489330057268032432283309097348745905276287341195449699521008522680657205797358231134211088256337186042022985728
3646154850295011369707131011438711095400799139943170490872585628683549034362552065955809589514611470241298944167703929337528884908857116141935206466329731088046102104871310118026124429524895811057809162863601918344981537942578416978660114536064864566618194697491810552574682390899399042017045361314411594716462268422176512674372084045971456
7292309700590022739414262022877422190801598279886340981745171257367098068725104131911619179029222940482597888335407858675057769817714232283870412932659462176092204209742620236052248859049791622115618325727203836689963075885156833957320229072129729133236389394983621105149364781798798084034090722628823189432924536844353025348744168091942912
14584619401180045478828524045754844381603196559772681963490342514734196137450208263823238358058445880965195776670815717350115539635428464567740825865318924352184408419485240472104497718099583244231236651454407673379926151770313667914640458144259458266472778789967242210298729563597596168068181445257646378865849073688706050697488336183885824
29169238802360090957657048091509688763206393119545363926980685029468392274900416527646476716116891761930391553341631434700231079270856929135481651730637848704368816838970480944208995436199166488462473302908815346759852303540627335829280916288518916532945557579934484420597459127195192336136362890515292757731698147377412101394976672367771648
58338477604720181915314096183019377526412786239090727853961370058936784549800833055292953432233783523860783106683262869400462158541713858270963303461275697408737633677940961888417990872398332976924946605817630693519704607081254671658561832577037833065891115159868968841194918254390384672272725781030585515463396294754824202789953344735543296
116676955209440363830628192366038755052825572478181455707922740117873569099601666110585906864467567047721566213366525738800924317083427716541926606922551394817475267355881923776835981744796665953849893211635261387039409214162509343317123665154075666131782230319737937682389836508780769344545451562061171030926792589509648405579906689471086592
233353910418880727661256384732077510105651144956362911415845480235747138199203332221171813728935134095443132426733051477601848634166855433083853213845102789634950534711763847553671963489593331907699786423270522774078818428325018686634247330308151332263564460639475875364779673017561538689090903124122342061853585179019296811159813378942173184
466707820837761455322512769464155020211302289912725822831690960471494276398406664442343627457870268190886264853466102955203697268333710866167706427690205579269901069423527695107343926979186663815399572846541045548157636856650037373268494660616302664527128921278951750729559346035123077378181806248244684123707170358038593622319626757884346368
933415641675522910645025538928310040422604579825451645663381920942988552796813328884687254915740536381772529706932205910407394536667421732335412855380411158539802138847055390214687853958373327630799145693082091096315273713300074746536989321232605329054257842557903501459118692070246154756363612496489368247414340716077187244639253515768692736
1866831283351045821290051077856620080845209159650903291326763841885977105593626657769374509831481072763545059413864411820814789073334843464670825710760822317079604277694110780429375707916746655261598291386164182192630547426600149493073978642465210658108515685115807002918237384140492309512727224992978736494828681432154374489278507031537385472
3733662566702091642580102155713240161690418319301806582653527683771954211187253315538749019662962145527090118827728823641629578146669686929341651421521644634159208555388221560858751415833493310523196582772328364385261094853200298986147957284930421316217031370231614005836474768280984619025454449985957472989657362864308748978557014063074770944
7467325133404183285160204311426480323380836638603613165307055367543908422374506631077498039325924291054180237655457647283259156293339373858683302843043289268318417110776443121717502831666986621046393165544656728770522189706400597972295914569860842632434062740463228011672949536561969238050908899971914945979314725728617497957114028126149541888
14934650266808366570320408622852960646761673277207226330614110735087816844749013262154996078651848582108360475310915294566518312586678747717366605686086578536636834221552886243435005663333973242092786331089313457541044379412801195944591829139721685264868125480926456023345899073123938476101817799943829891958629451457234995914228056252299083776
29869300533616733140640817245705921293523346554414452661228221470175633689498026524309992157303697164216720950621830589133036625173357495434733211372173157073273668443105772486870011326667946484185572662178626915082088758825602391889183658279443370529736250961852912046691798146247876952203635599887659783917258902914469991828456112504598167552
59738601067233466281281634491411842587046693108828905322456442940351267378996053048619984314607394328433441901243661178266073250346714990869466422744346314146547336886211544973740022653335892968371145324357253830164177517651204783778367316558886741059472501923705824093383596292495753904407271199775319567834517805828939983656912225009196335104
119477202134466932562563268982823685174093386217657810644912885880702534757992106097239968629214788656866883802487322356532146500693429981738932845488692628293094673772423089947480045306671785936742290648714507660328355035302409567556734633117773482118945003847411648186767192584991507808814542399550639135669035611657879967313824450018392670208
238954404268933865125126537965647370348186772435315621289825771761405069515984212194479937258429577313733767604974644713064293001386859963477865690977385256586189347544846179894960090613343571873484581297429015320656710070604819135113469266235546964237890007694823296373534385169983015617629084799101278271338071223315759934627648900036785340416
477908808537867730250253075931294740696373544870631242579651543522810139031968424388959874516859154627467535209949289426128586002773719926955731381954770513172378695089692359789920181226687143746969162594858030641313420141209638270226938532471093928475780015389646592747068770339966031235258169598202556542676142446631519869255297800073570680832
955817617075735460500506151862589481392747089741262485159303087045620278063936848777919749033718309254935070419898578852257172005547439853911462763909541026344757390179384719579840362453374287493938325189716061282626840282419276540453877064942187856951560030779293185494137540679932062470516339196405113085352284893263039738510595600147141361664
1911635234151470921001012303725178962785494179482524970318606174091240556127873697555839498067436618509870140839797157704514344011094879707822925527819082052689514780358769439159680724906748574987876650379432122565253680564838553080907754129884375713903120061558586370988275081359864124941032678392810226170704569786526079477021191200294282723328
3823270468302941842002024607450357925570988358965049940637212348182481112255747395111678996134873237019740281679594315409028688022189759415645851055638164105379029560717538878319361449813497149975753300758864245130507361129677106161815508259768751427806240123117172741976550162719728249882065356785620452341409139573052158954042382400588565446656
7646540936605883684004049214900715851141976717930099881274424696364962224511494790223357992269746474039480563359188630818057376044379518831291702111276328210758059121435077756638722899626994299951506601517728490261014722259354212323631016519537502855612480246234345483953100325439456499764130713571240904682818279146104317908084764801177130893312
15293081873211767368008098429801431702283953435860199762548849392729924449022989580446715984539492948078961126718377261636114752088759037662583404222552656421516118242870155513277445799253988599903013203035456980522029444518708424647262033039075005711224960492468690967906200650878912999528261427142481809365636558292208635816169529602354261786624
30586163746423534736016196859602863404567906871720399525097698785459848898045979160893431969078985896157922253436754523272229504177518075325166808445105312843032236485740311026554891598507977199806026406070913961044058889037416849294524066078150011422449920984937381935812401301757825999056522854284963618731273116584417271632339059204708523573248
61172327492847069472032393719205726809135813743440799050195397570919697796091958321786863938157971792315844506873509046544459008355036150650333616890210625686064472971480622053109783197015954399612052812141827922088117778074833698589048132156300022844899841969874763871624802603515651998113045708569927237462546233168834543264678118409417047146496
122344654985694138944064787438411453618271627486881598100390795141839395592183916643573727876315943584631689013747018093088918016710072301300667233780421251372128945942961244106219566394031908799224105624283655844176235556149667397178096264312600045689799683939749527743249605207031303996226091417139854474925092466337669086529356236818834094292992
244689309971388277888129574876822907236543254973763196200781590283678791184367833287147455752631887169263378027494036186177836033420144602601334467560842502744257891885922488212439132788063817598448211248567311688352471112299334794356192528625200091379599367879499055486499210414062607992452182834279708949850184932675338173058712473637668188585984
489378619942776555776259149753645814473086509947526392401563180567357582368735666574294911505263774338526756054988072372355672066840289205202668935121685005488515783771844976424878265576127635196896422497134623376704942224598669588712385057250400182759198735758998110972998420828125215984904365668559417899700369865350676346117424947275336377171968
978757239885553111552518299507291628946173019895052784803126361134715164737471333148589823010527548677053512109976144744711344133680578410405337870243370010977031567543689952849756531152255270393792844994269246753409884449197339177424770114500800365518397471517996221945996841656250431969808731337118835799400739730701352692234849894550672754343936
1957514479771106223105036599014583257892346039790105569606252722269430329474942666297179646021055097354107024219952289489422688267361156820810675740486740021954063135087379905699513062304510540787585689988538493506819768898394678354849540229001600731036794943035992443891993683312500863939617462674237671598801479461402705384469699789101345508687872
3915028959542212446210073198029166515784692079580211139212505444538860658949885332594359292042110194708214048439904578978845376534722313641621351480973480043908126270174759811399026124609021081575171379977076987013639537796789356709699080458003201462073589886071984887783987366625001727879234925348475343197602958922805410768939399578202691017375744
7830057919084424892420146396058333031569384159160422278425010889077721317899770665188718584084220389416428096879809157957690753069444627283242702961946960087816252540349519622798052249218042163150342759954153974027279075593578713419398160916006402924147179772143969775567974733250003455758469850696950686395205917845610821537878799156405382034751488
15660115838168849784840292792116666063138768318320844556850021778155442635799541330377437168168440778832856193759618315915381506138889254566485405923893920175632505080699039245596104498436084326300685519908307948054558151187157426838796321832012805848294359544287939551135949466500006911516939701393901372790411835691221643075757598312810764069502976
31320231676337699569680585584233332126277536636641689113700043556310885271599082660754874336336881557665712387519236631830763012277778509132970811847787840351265010161398078491192208996872168652601371039816615896109116302374314853677592643664025611696588719088575879102271898933000013823033879402787802745580823671382443286151515196625621528139005952
62640463352675399139361171168466664252555073273283378227400087112621770543198165321509748672673763115331424775038473263661526024555557018265941623695575680702530020322796156982384417993744337305202742079633231792218232604748629707355185287328051223393177438177151758204543797866000027646067758805575605491161647342764886572303030393251243056278011904
125280926705350798278722342336933328505110146546566756454800174225243541086396330643019497345347526230662849550076946527323052049111114036531883247391151361405060040645592313964768835987488674610405484159266463584436465209497259414710370574656102446786354876354303516409087595732000055292135517611151210982323294685529773144606060786502486112556023808
250561853410701596557444684673866657010220293093133512909600348450487082172792661286038994690695052461325699100153893054646104098222228073063766494782302722810120081291184627929537671974977349220810968318532927168872930418994518829420741149312204893572709752708607032818175191464000110584271035222302421964646589371059546289212121573004972225112047616
501123706821403193114889369347733314020440586186267025819200696900974164345585322572077989381390104922651398200307786109292208196444456146127532989564605445620240162582369255859075343949954698441621936637065854337745860837989037658841482298624409787145419505417214065636350382928000221168542070444604843929293178742119092578424243146009944450224095232
1002247413642806386229778738695466628040881172372534051638401393801948328691170645144155978762780209845302796400615572218584416392888912292255065979129210891240480325164738511718150687899909396883243873274131708675491721675978075317682964597248819574290839010834428131272700765856000442337084140889209687858586357484238185156848486292019888900448190464
2004494827285612772459557477390933256081762344745068103276802787603896657382341290288311957525560419690605592801231144437168832785777824584510131958258421782480960650329477023436301375799818793766487746548263417350983443351956150635365929194497639148581678021668856262545401531712000884674168281778419375717172714968476370313696972584039777800896380928
4008989654571225544919114954781866512163524689490136206553605575207793314764682580576623915051120839381211185602462288874337665571555649169020263916516843564961921300658954046872602751599637587532975493096526834701966886703912301270731858388995278297163356043337712525090803063424001769348336563556838751434345429936952740627393945168079555601792761856
8017979309142451089838229909563733024327049378980272413107211150415586629529365161153247830102241678762422371204924577748675331143111298338040527833033687129923842601317908093745205503199275175065950986193053669403933773407824602541463716777990556594326712086675425050181606126848003538696673127113677502868690859873905481254787890336159111203585523712
16035958618284902179676459819127466048654098757960544826214422300831173259058730322306495660204483357524844742409849155497350662286222596676081055666067374259847685202635816187490411006398550350131901972386107338807867546815649205082927433555981113188653424173350850100363212253696007077393346254227355005737381719747810962509575780672318222407171047424
32071917236569804359352919638254932097308197515921089652428844601662346518117460644612991320408966715049689484819698310994701324572445193352162111332134748519695370405271632374980822012797100700263803944772214677615735093631298410165854867111962226377306848346701700200726424507392014154786692508454710011474763439495621925019151561344636444814342094848
64143834473139608718705839276509864194616395031842179304857689203324693036234921289225982640817933430099378969639396621989402649144890386704324222664269497039390740810543264749961644025594201400527607889544429355231470187262596820331709734223924452754613696693403400401452849014784028309573385016909420022949526878991243850038303122689272889628684189696
128287668946279217437411678553019728389232790063684358609715378406649386072469842578451965281635866860198757939278793243978805298289780773408648445328538994078781481621086529499923288051188402801055215779088858710462940374525193640663419468447848905509227393386806800802905698029568056619146770033818840045899053757982487700076606245378545779257368379392
256575337892558434874823357106039456778465580127368717219430756813298772144939685156903930563271733720397515878557586487957610596579561546817296890657077988157562963242173058999846576102376805602110431558177717420925880749050387281326838936895697811018454786773613601605811396059136113238293540067637680091798107515964975400153212490757091558514736758784
513150675785116869749646714212078913556931160254737434438861513626597544289879370313807861126543467440795031757115172975915221193159123093634593781314155976315125926484346117999693152204753611204220863116355434841851761498100774562653677873791395622036909573547227203211622792118272226476587080135275360183596215031929950800306424981514183117029473517568
1026301351570233739499293428424157827113862320509474868877723027253195088579758740627615722253086934881590063514230345951830442386318246187269187562628311952630251852968692235999386304409507222408441726232710869683703522996201549125307355747582791244073819147094454406423245584236544452953174160270550720367192430063859901600612849963028366234058947035136
2052602703140467478998586856848315654227724641018949737755446054506390177159517481255231444506173869763180127028460691903660884772636492374538375125256623905260503705937384471998772608819014444816883452465421739367407045992403098250614711495165582488147638294188908812846491168473088905906348320541101440734384860127719803201225699926056732468117894070272
4105205406280934957997173713696631308455449282037899475510892109012780354319034962510462889012347739526360254056921383807321769545272984749076750250513247810521007411874768943997545217638028889633766904930843478734814091984806196501229422990331164976295276588377817625692982336946177811812696641082202881468769720255439606402451399852113464936235788140544
8210410812561869915994347427393262616910898564075798951021784218025560708638069925020925778024695479052720508113842767614643539090545969498153500501026495621042014823749537887995090435276057779267533809861686957469628183969612393002458845980662329952590553176755635251385964673892355623625393282164405762937539440510879212804902799704226929872471576281088
16420821625123739831988694854786525233821797128151597902043568436051121417276139850041851556049390958105441016227685535229287078181091938996307001002052991242084029647499075775990180870552115558535067619723373914939256367939224786004917691961324659905181106353511270502771929347784711247250786564328811525875078881021758425609805599408453859744943152562176
32841643250247479663977389709573050467643594256303195804087136872102242834552279700083703112098781916210882032455371070458574156362183877992614002004105982484168059294998151551980361741104231117070135239446747829878512735878449572009835383922649319810362212707022541005543858695569422494501573128657623051750157762043516851219611198816907719489886305124352
65683286500494959327954779419146100935287188512606391608174273744204485669104559400167406224197563832421764064910742140917148312724367755985228004008211964968336118589996303103960723482208462234140270478893495659757025471756899144019670767845298639620724425414045082011087717391138844989003146257315246103500315524087033702439222397633815438979772610248704
131366573000989918655909558838292201870574377025212783216348547488408971338209118800334812448395127664843528129821484281834296625448735511970456008016423929936672237179992606207921446964416924468280540957786991319514050943513798288039341535690597279241448850828090164022175434782277689978006292514630492207000631048174067404878444795267630877959545220497408
262733146001979837311819117676584403741148754050425566432697094976817942676418237600669624896790255329687056259642968563668593250897471023940912016032847859873344474359985212415842893928833848936561081915573982639028101887027596576078683071381194558482897701656180328044350869564555379956012585029260984414001262096348134809756889590535261755919090440994816
525466292003959674623638235353168807482297508100851132865394189953635885352836475201339249793580510659374112519285937127337186501794942047881824032065695719746688948719970424831685787857667697873122163831147965278056203774055193152157366142762389116965795403312360656088701739129110759912025170058521968828002524192696269619513779181070523511838180881989632
1050932584007919349247276470706337614964595016201702265730788379907271770705672950402678499587161021318748225038571874254674373003589884095763648064131391439493377897439940849663371575715335395746244327662295930556112407548110386304314732285524778233931590806624721312177403478258221519824050340117043937656005048385392539239027558362141047023676361763979264
2101865168015838698494552941412675229929190032403404531461576759814543541411345900805356999174322042637496450077143748509348746007179768191527296128262782878986755794879881699326743151430670791492488655324591861112224815096220772608629464571049556467863181613249442624354806956516443039648100680234087875312010096770785078478055116724282094047352723527958528
4203730336031677396989105882825350459858380064806809062923153519629087082822691801610713998348644085274992900154287497018697492014359536383054592256525565757973511589759763398653486302861341582984977310649183722224449630192441545217258929142099112935726363226498885248709613913032886079296201360468175750624020193541570156956110233448564188094705447055917056
8407460672063354793978211765650700919716760129613618125846307039258174165645383603221427996697288170549985800308574994037394984028719072766109184513051131515947023179519526797306972605722683165969954621298367444448899260384883090434517858284198225871452726452997770497419227826065772158592402720936351501248040387083140313912220466897128376189410894111834112
16814921344126709587956423531301401839433520259227236251692614078516348331290767206442855993394576341099971600617149988074789968057438145532218369026102263031894046359039053594613945211445366331939909242596734888897798520769766180869035716568396451742905452905995540994838455652131544317184805441872703002496080774166280627824440933794256752378821788223668224
33629842688253419175912847062602803678867040518454472503385228157032696662581534412885711986789152682199943201234299976149579936114876291064436738052204526063788092718078107189227890422890732663879818485193469777795597041539532361738071433136792903485810905811991081989676911304263088634369610883745406004992161548332561255648881867588513504757643576447336448
67259685376506838351825694125205607357734081036908945006770456314065393325163068825771423973578305364399886402468599952299159872229752582128873476104409052127576185436156214378455780845781465327759636970386939555591194083079064723476142866273585806971621811623982163979353822608526177268739221767490812009984323096665122511297763735177027009515287152894672896
134519370753013676703651388250411214715468162073817890013540912628130786650326137651542847947156610728799772804937199904598319744459505164257746952208818104255152370872312428756911561691562930655519273940773879111182388166158129446952285732547171613943243623247964327958707645217052354537478443534981624019968646193330245022595527470354054019030574305789345792
269038741506027353407302776500822429430936324147635780027081825256261573300652275303085695894313221457599545609874399809196639488919010328515493904417636208510304741744624857513823123383125861311038547881547758222364776332316258893904571465094343227886487246495928655917415290434104709074956887069963248039937292386660490045191054940708108038061148611578691584
538077483012054706814605553001644858861872648295271560054163650512523146601304550606171391788626442915199091219748799618393278977838020657030987808835272417020609483489249715027646246766251722622077095763095516444729552664632517787809142930188686455772974492991857311834830580868209418149913774139926496079874584773320980090382109881416216076122297223157383168
1076154966024109413629211106003289717723745296590543120108327301025046293202609101212342783577252885830398182439497599236786557955676041314061975617670544834041218966978499430055292493532503445244154191526191032889459105329265035575618285860377372911545948985983714623669661161736418836299827548279852992159749169546641960180764219762832432152244594446314766336
2152309932048218827258422212006579435447490593181086240216654602050092586405218202424685567154505771660796364878995198473573115911352082628123951235341089668082437933956998860110584987065006890488308383052382065778918210658530071151236571720754745823091897971967429247339322323472837672599655096559705984319498339093283920361528439525664864304489188892629532672
4304619864096437654516844424013158870894981186362172480433309204100185172810436404849371134309011543321592729757990396947146231822704165256247902470682179336164875867913997720221169974130013780976616766104764131557836421317060142302473143441509491646183795943934858494678644646945675345199310193119411968638996678186567840723056879051329728608978377785259065344
8609239728192875309033688848026317741789962372724344960866618408200370345620872809698742268618023086643185459515980793894292463645408330512495804941364358672329751735827995440442339948260027561953233532209528263115672842634120284604946286883018983292367591887869716989357289293891350690398620386238823937277993356373135681446113758102659457217956755570518130688
17218479456385750618067377696052635483579924745448689921733236816400740691241745619397484537236046173286370919031961587788584927290816661024991609882728717344659503471655990880884679896520055123906467064419056526231345685268240569209892573766037966584735183775739433978714578587782701380797240772477647874555986712746271362892227516205318914435913511141036261376
34436958912771501236134755392105270967159849490897379843466473632801481382483491238794969074472092346572741838063923175577169854581633322049983219765457434689319006943311981761769359793040110247812934128838113052462691370536481138419785147532075933169470367551478867957429157175565402761594481544955295749111973425492542725784455032410637828871827022282072522752
68873917825543002472269510784210541934319698981794759686932947265602962764966982477589938148944184693145483676127846351154339709163266644099966439530914869378638013886623963523538719586080220495625868257676226104925382741072962276839570295064151866338940735102957735914858314351130805523188963089910591498223946850985085451568910064821275657743654044564145045504
137747835651086004944539021568421083868639397963589519373865894531205925529933964955179876297888369386290967352255692702308679418326533288199932879061829738757276027773247927047077439172160440991251736515352452209850765482145924553679140590128303732677881470205915471829716628702261611046377926179821182996447893701970170903137820129642551315487308089128290091008
275495671302172009889078043136842167737278795927179038747731789062411851059867929910359752595776738772581934704511385404617358836653066576399865758123659477514552055546495854094154878344320881982503473030704904419701530964291849107358281180256607465355762940411830943659433257404523222092755852359642365992895787403940341806275640259285102630974616178256580182016
550991342604344019778156086273684335474557591854358077495463578124823702119735859820719505191553477545163869409022770809234717673306133152799731516247318955029104111092991708188309756688641763965006946061409808839403061928583698214716562360513214930711525880823661887318866514809046444185511704719284731985791574807880683612551280518570205261949232356513160364032
1101982685208688039556312172547368670949115183708716154990927156249647404239471719641439010383106955090327738818045541618469435346612266305599463032494637910058208222185983416376619513377283527930013892122819617678806123857167396429433124721026429861423051761647323774637733029618092888371023409438569463971583149615761367225102561037140410523898464713026320728064
2203965370417376079112624345094737341898230367417432309981854312499294808478943439282878020766213910180655477636091083236938870693224532611198926064989275820116416444371966832753239026754567055860027784245639235357612247714334792858866249442052859722846103523294647549275466059236185776742046818877138927943166299231522734450205122074280821047796929426052641456128
4407930740834752158225248690189474683796460734834864619963708624998589616957886878565756041532427820361310955272182166473877741386449065222397852129978551640232832888743933665506478053509134111720055568491278470715224495428669585717732498884105719445692207046589295098550932118472371553484093637754277855886332598463045468900410244148561642095593858852105282912256
8815861481669504316450497380378949367592921469669729239927417249997179233915773757131512083064855640722621910544364332947755482772898130444795704259957103280465665777487867331012956107018268223440111136982556941430448990857339171435464997768211438891384414093178590197101864236944743106968187275508555711772665196926090937800820488297123284191187717704210565824512
17631722963339008632900994760757898735185842939339458479854834499994358467831547514263024166129711281445243821088728665895510965545796260889591408519914206560931331554975734662025912214036536446880222273965113882860897981714678342870929995536422877782768828186357180394203728473889486213936374551017111423545330393852181875601640976594246568382375435408421131649024
35263445926678017265801989521515797470371685878678916959709668999988716935663095028526048332259422562890487642177457331791021931091592521779182817039828413121862663109951469324051824428073072893760444547930227765721795963429356685741859991072845755565537656372714360788407456947778972427872749102034222847090660787704363751203281953188493136764750870816842263298048
70526891853356034531603979043031594940743371757357833919419337999977433871326190057052096664518845125780975284354914663582043862183185043558365634079656826243725326219902938648103648856146145787520889095860455531443591926858713371483719982145691511131075312745428721576814913895557944855745498204068445694181321575408727502406563906376986273529501741633684526596096
141053783706712069063207958086063189881486743514715667838838675999954867742652380114104193329037690251561950568709829327164087724366370087116731268159313652487450652439805877296207297712292291575041778191720911062887183853717426742967439964291383022262150625490857443153629827791115889711490996408136891388362643150817455004813127812753972547059003483267369053192192
282107567413424138126415916172126379762973487029431335677677351999909735485304760228208386658075380503123901137419658654328175448732740174233462536318627304974901304879611754592414595424584583150083556383441822125774367707434853485934879928582766044524301250981714886307259655582231779422981992816273782776725286301634910009626255625507945094118006966534738106384384
564215134826848276252831832344252759525946974058862671355354703999819470970609520456416773316150761006247802274839317308656350897465480348466925072637254609949802609759223509184829190849169166300167112766883644251548735414869706971869759857165532089048602501963429772614519311164463558845963985632547565553450572603269820019252511251015890188236013933069476212768768
1128430269653696552505663664688505519051893948117725342710709407999638941941219040912833546632301522012495604549678634617312701794930960696933850145274509219899605219518447018369658381698338332600334225533767288503097470829739413943739519714331064178097205003926859545229038622328927117691927971265095131106901145206539640038505022502031780376472027866138952425537536
2256860539307393105011327329377011038103787896235450685421418815999277883882438081825667093264603044024991209099357269234625403589861921393867700290549018439799210439036894036739316763396676665200668451067534577006194941659478827887479039428662128356194410007853719090458077244657854235383855942530190262213802290413079280077010045004063560752944055732277904851075072
4513721078614786210022654658754022076207575792470901370842837631998555767764876163651334186529206088049982418198714538469250807179723842787735400581098036879598420878073788073478633526793353330401336902135069154012389883318957655774958078857324256712388820015707438180916154489315708470767711885060380524427604580826158560154020090008127121505888111464555809702150144
9027442157229572420045309317508044152415151584941802741685675263997111535529752327302668373058412176099964836397429076938501614359447685575470801162196073759196841756147576146957267053586706660802673804270138308024779766637915311549916157714648513424777640031414876361832308978631416941535423770120761048855209161652317120308040180016254243011776222929111619404300288
18054884314459144840090618635016088304830303169883605483371350527994223071059504654605336746116824352199929672794858153877003228718895371150941602324392147518393683512295152293914534107173413321605347608540276616049559533275830623099832315429297026849555280062829752723664617957262833883070847540241522097710418323304634240616080360032508486023552445858223238808600576
36109768628918289680181237270032176609660606339767210966742701055988446142119009309210673492233648704399859345589716307754006457437790742301883204648784295036787367024590304587829068214346826643210695217080553232099119066551661246199664630858594053699110560125659505447329235914525667766141695080483044195420836646609268481232160720065016972047104891716446477617201152
72219537257836579360362474540064353219321212679534421933485402111976892284238018618421346984467297408799718691179432615508012914875581484603766409297568590073574734049180609175658136428693653286421390434161106464198238133103322492399329261717188107398221120251319010894658471829051335532283390160966088390841673293218536962464321440130033944094209783432892955234402304
144439074515673158720724949080128706438642425359068843866970804223953784568476037236842693968934594817599437382358865231016025829751162969207532818595137180147149468098361218351316272857387306572842780868322212928396476266206644984798658523434376214796442240502638021789316943658102671064566780321932176781683346586437073924928642880260067888188419566865785910468804608
288878149031346317441449898160257412877284850718137687733941608447907569136952074473685387937869189635198874764717730462032051659502325938415065637190274360294298936196722436702632545714774613145685561736644425856792952532413289969597317046868752429592884481005276043578633887316205342129133560643864353563366693172874147849857285760520135776376839133731571820937609216
577756298062692634882899796320514825754569701436275375467883216895815138273904148947370775875738379270397749529435460924064103319004651876830131274380548720588597872393444873405265091429549226291371123473288851713585905064826579939194634093737504859185768962010552087157267774632410684258267121287728707126733386345748295699714571521040271552753678267463143641875218432
1155512596125385269765799592641029651509139402872550750935766433791630276547808297894741551751476758540795499058870921848128206638009303753660262548761097441177195744786889746810530182859098452582742246946577703427171810129653159878389268187475009718371537924021104174314535549264821368516534242575457414253466772691496591399429143042080543105507356534926287283750436864
2311025192250770539531599185282059303018278805745101501871532867583260553095616595789483103502953517081590998117741843696256413276018607507320525097522194882354391489573779493621060365718196905165484493893155406854343620259306319756778536374950019436743075848042208348629071098529642737033068485150914828506933545382993182798858286084161086211014713069852574567500873728
4622050384501541079063198370564118606036557611490203003743065735166521106191233191578966207005907034163181996235483687392512826552037215014641050195044389764708782979147558987242120731436393810330968987786310813708687240518612639513557072749900038873486151696084416697258142197059285474066136970301829657013867090765986365597716572168322172422029426139705149135001747456
9244100769003082158126396741128237212073115222980406007486131470333042212382466383157932414011814068326363992470967374785025653104074430029282100390088779529417565958295117974484241462872787620661937975572621627417374481037225279027114145499800077746972303392168833394516284394118570948132273940603659314027734181531972731195433144336644344844058852279410298270003494912
18488201538006164316252793482256474424146230445960812014972262940666084424764932766315864828023628136652727984941934749570051306208148860058564200780177559058835131916590235948968482925745575241323875951145243254834748962074450558054228290999600155493944606784337666789032568788237141896264547881207318628055468363063945462390866288673288689688117704558820596540006989824
36976403076012328632505586964512948848292460891921624029944525881332168849529865532631729656047256273305455969883869499140102612416297720117128401560355118117670263833180471897936965851491150482647751902290486509669497924148901116108456581999200310987889213568675333578065137576474283792529095762414637256110936726127890924781732577346577379376235409117641193080013979648
73952806152024657265011173929025897696584921783843248059889051762664337699059731065263459312094512546610911939767738998280205224832595440234256803120710236235340527666360943795873931702982300965295503804580973019338995848297802232216913163998400621975778427137350667156130275152948567585058191524829274512221873452255781849563465154693154758752470818235282386160027959296
147905612304049314530022347858051795393169843567686496119778103525328675398119462130526918624189025093221823879535477996560410449665190880468513606241420472470681055332721887591747863405964601930591007609161946038677991696595604464433826327996801243951556854274701334312260550305897135170116383049658549024443746904511563699126930309386309517504941636470564772320055918592
295811224608098629060044695716103590786339687135372992239556207050657350796238924261053837248378050186443647759070955993120820899330381760937027212482840944941362110665443775183495726811929203861182015218323892077355983393191208928867652655993602487903113708549402668624521100611794270340232766099317098048887493809023127398253860618772619035009883272941129544640111837184
591622449216197258120089391432207181572679374270745984479112414101314701592477848522107674496756100372887295518141911986241641798660763521874054424965681889882724221330887550366991453623858407722364030436647784154711966786382417857735305311987204975806227417098805337249042201223588540680465532198634196097774987618046254796507721237545238070019766545882259089280223674368
1183244898432394516240178782864414363145358748541491968958224828202629403184955697044215348993512200745774591036283823972483283597321527043748108849931363779765448442661775100733982907247716815444728060873295568309423933572764835715470610623974409951612454834197610674498084402447177081360931064397268392195549975236092509593015442475090476140039533091764518178560447348736
2366489796864789032480357565728828726290717497082983937916449656405258806369911394088430697987024401491549182072567647944966567194643054087496217699862727559530896885323550201467965814495433630889456121746591136618847867145529671430941221247948819903224909668395221348996168804894354162721862128794536784391099950472185019186030884950180952280079066183529036357120894697472
4732979593729578064960715131457657452581434994165967875832899312810517612739822788176861395974048802983098364145135295889933134389286108174992435399725455119061793770647100402935931628990867261778912243493182273237695734291059342861882442495897639806449819336790442697992337609788708325443724257589073568782199900944370038372061769900361904560158132367058072714241789394944
9465959187459156129921430262915314905162869988331935751665798625621035225479645576353722791948097605966196728290270591779866268778572216349984870799450910238123587541294200805871863257981734523557824486986364546475391468582118685723764884991795279612899638673580885395984675219577416650887448515178147137564399801888740076744123539800723809120316264734116145428483578789888
18931918374918312259842860525830629810325739976663871503331597251242070450959291152707445583896195211932393456580541183559732537557144432699969741598901820476247175082588401611743726515963469047115648973972729092950782937164237371447529769983590559225799277347161770791969350439154833301774897030356294275128799603777480153488247079601447618240632529468232290856967157579776
37863836749836624519685721051661259620651479953327743006663194502484140901918582305414891167792390423864786913161082367119465075114288865399939483197803640952494350165176803223487453031926938094231297947945458185901565874328474742895059539967181118451598554694323541583938700878309666603549794060712588550257599207554960306976494159202895236481265058936464581713934315159552
75727673499673249039371442103322519241302959906655486013326389004968281803837164610829782335584780847729573826322164734238930150228577730799878966395607281904988700330353606446974906063853876188462595895890916371803131748656949485790119079934362236903197109388647083167877401756619333207099588121425177100515198415109920613952988318405790472962530117872929163427868630319104
151455346999346498078742884206645038482605919813310972026652778009936563607674329221659564671169561695459147652644329468477860300457155461599757932791214563809977400660707212893949812127707752376925191791781832743606263497313898971580238159868724473806394218777294166335754803513238666414199176242850354201030396830219841227905976636811580945925060235745858326855737260638208
302910693998692996157485768413290076965211839626621944053305556019873127215348658443319129342339123390918295305288658936955720600914310923199515865582429127619954801321414425787899624255415504753850383583563665487212526994627797943160476319737448947612788437554588332671509607026477332828398352485700708402060793660439682455811953273623161891850120471491716653711474521276416
605821387997385992314971536826580153930423679253243888106611112039746254430697316886638258684678246781836590610577317873911441201828621846399031731164858255239909602642828851575799248510831009507700767167127330974425053989255595886320952639474897895225576875109176665343019214052954665656796704971401416804121587320879364911623906547246323783700240942983433307422949042552832
1211642775994771984629943073653160307860847358506487776213222224079492508861394633773276517369356493563673181221154635747822882403657243692798063462329716510479819205285657703151598497021662019015401534334254661948850107978511191772641905278949795790451153750218353330686038428105909331313593409942802833608243174641758729823247813094492647567400481885966866614845898085105664
2423285551989543969259886147306320615721694717012975552426444448158985017722789267546553034738712987127346362442309271495645764807314487385596126924659433020959638410571315406303196994043324038030803068668509323897700215957022383545283810557899591580902307500436706661372076856211818662627186819885605667216486349283517459646495626188985295134800963771933733229691796170211328
4846571103979087938519772294612641231443389434025951104852888896317970035445578535093106069477425974254692724884618542991291529614628974771192253849318866041919276821142630812606393988086648076061606137337018647795400431914044767090567621115799183161804615000873413322744153712423637325254373639771211334432972698567034919292991252377970590269601927543867466459383592340422656
9693142207958175877039544589225282462886778868051902209705777792635940070891157070186212138954851948509385449769237085982583059229257949542384507698637732083838553642285261625212787976173296152123212274674037295590800863828089534181135242231598366323609230001746826645488307424847274650508747279542422668865945397134069838585982504755941180539203855087734932918767184680845312
19386284415916351754079089178450564925773557736103804419411555585271880141782314140372424277909703897018770899538474171965166118458515899084769015397275464167677107284570523250425575952346592304246424549348074591181601727656179068362270484463196732647218460003493653290976614849694549301017494559084845337731890794268139677171965009511882361078407710175469865837534369361690624
38772568831832703508158178356901129851547115472207608838823111170543760283564628280744848555819407794037541799076948343930332236917031798169538030794550928335354214569141046500851151904693184608492849098696149182363203455312358136724540968926393465294436920006987306581953229699389098602034989118169690675463781588536279354343930019023764722156815420350939731675068738723381248
77545137663665407016316356713802259703094230944415217677646222341087520567129256561489697111638815588075083598153896687860664473834063596339076061589101856670708429138282093001702303809386369216985698197392298364726406910624716273449081937852786930588873840013974613163906459398778197204069978236339381350927563177072558708687860038047529444313630840701879463350137477446762496
155090275327330814032632713427604519406188461888830435355292444682175041134258513122979394223277631176150167196307793375721328947668127192678152123178203713341416858276564186003404607618772738433971396394784596729452813821249432546898163875705573861177747680027949226327812918797556394408139956472678762701855126354145117417375720076095058888627261681403758926700274954893524992
310180550654661628065265426855209038812376923777660870710584889364350082268517026245958788446555262352300334392615586751442657895336254385356304246356407426682833716553128372006809215237545476867942792789569193458905627642498865093796327751411147722355495360055898452655625837595112788816279912945357525403710252708290234834751440152190117777254523362807517853400549909787049984
620361101309323256130530853710418077624753847555321741421169778728700164537034052491917576893110524704600668785231173502885315790672508770712608492712814853365667433106256744013618430475090953735885585579138386917811255284997730187592655502822295444710990720111796905311251675190225577632559825890715050807420505416580469669502880304380235554509046725615035706801099819574099968
1240722202618646512261061707420836155249507695110643482842339557457400329074068104983835153786221049409201337570462347005770631581345017541425216985425629706731334866212513488027236860950181907471771171158276773835622510569995460375185311005644590889421981440223593810622503350380451155265119651781430101614841010833160939339005760608760471109018093451230071413602199639148199936
2481444405237293024522123414841672310499015390221286965684679114914800658148136209967670307572442098818402675140924694011541263162690035082850433970851259413462669732425026976054473721900363814943542342316553547671245021139990920750370622011289181778843962880447187621245006700760902310530239303562860203229682021666321878678011521217520942218036186902460142827204399278296399872
4962888810474586049044246829683344620998030780442573931369358229829601316296272419935340615144884197636805350281849388023082526325380070165700867941702518826925339464850053952108947443800727629887084684633107095342490042279981841500741244022578363557687925760894375242490013401521804621060478607125720406459364043332643757356023042435041884436072373804920285654408798556592799744
9925777620949172098088493659366689241996061560885147862738716459659202632592544839870681230289768395273610700563698776046165052650760140331401735883405037653850678929700107904217894887601455259774169369266214190684980084559963683001482488045156727115375851521788750484980026803043609242120957214251440812918728086665287514712046084870083768872144747609840571308817597113185599488
19851555241898344196176987318733378483992123121770295725477432919318405265185089679741362460579536790547221401127397552092330105301520280662803471766810075307701357859400215808435789775202910519548338738532428381369960169119927366002964976090313454230751703043577500969960053606087218484241914428502881625837456173330575029424092169740167537744289495219681142617635194226371198976
39703110483796688392353974637466756967984246243540591450954865838636810530370179359482724921159073581094442802254795104184660210603040561325606943533620150615402715718800431616871579550405821039096677477064856762739920338239854732005929952180626908461503406087155001939920107212174436968483828857005763251674912346661150058848184339480335075488578990439362285235270388452742397952
79406220967593376784707949274933513935968492487081182901909731677273621060740358718965449842318147162188885604509590208369320421206081122651213887067240301230805431437600863233743159100811642078193354954129713525479840676479709464011859904361253816923006812174310003879840214424348873936967657714011526503349824693322300117696368678960670150977157980878724570470540776905484795904
158812441935186753569415898549867027871936984974162365803819463354547242121480717437930899684636294324377771209019180416738640842412162245302427774134480602461610862875201726467486318201623284156386709908259427050959681352959418928023719808722507633846013624348620007759680428848697747873935315428023053006699649386644600235392737357921340301954315961757449140941081553810969591808
317624883870373507138831797099734055743873969948324731607638926709094484242961434875861799369272588648755542418038360833477281684824324490604855548268961204923221725750403452934972636403246568312773419816518854101919362705918837856047439617445015267692027248697240015519360857697395495747870630856046106013399298773289200470785474715842680603908631923514898281882163107621939183616
635249767740747014277663594199468111487747939896649463215277853418188968485922869751723598738545177297511084836076721666954563369648648981209711096537922409846443451500806905869945272806493136625546839633037708203838725411837675712094879234890030535384054497394480031038721715394790991495741261712092212026798597546578400941570949431685361207817263847029796563764326215243878367232
1270499535481494028555327188398936222975495879793298926430555706836377936971845739503447197477090354595022169672153443333909126739297297962419422193075844819692886903001613811739890545612986273251093679266075416407677450823675351424189758469780061070768108994788960062077443430789581982991482523424184424053597195093156801883141898863370722415634527694059593127528652430487756734464
2540999070962988057110654376797872445950991759586597852861111413672755873943691479006894394954180709190044339344306886667818253478594595924838844386151689639385773806003227623479781091225972546502187358532150832815354901647350702848379516939560122141536217989577920124154886861579163965982965046848368848107194390186313603766283797726741444831269055388119186255057304860975513468928
5081998141925976114221308753595744891901983519173195705722222827345511747887382958013788789908361418380088678688613773335636506957189191849677688772303379278771547612006455246959562182451945093004374717064301665630709803294701405696759033879120244283072435979155840248309773723158327931965930093696737696214388780372627207532567595453482889662538110776238372510114609721951026937856
10163996283851952228442617507191489783803967038346391411444445654691023495774765916027577579816722836760177357377227546671273013914378383699355377544606758557543095224012910493919124364903890186008749434128603331261419606589402811393518067758240488566144871958311680496619547446316655863931860187393475392428777560745254415065135190906965779325076221552476745020229219443902053875712
20327992567703904456885235014382979567607934076692782822888891309382046991549531832055155159633445673520354714754455093342546027828756767398710755089213517115086190448025820987838248729807780372017498868257206662522839213178805622787036135516480977132289743916623360993239094892633311727863720374786950784857555121490508830130270381813931558650152443104953490040458438887804107751424
40655985135407808913770470028765959135215868153385565645777782618764093983099063664110310319266891347040709429508910186685092055657513534797421510178427034230172380896051641975676497459615560744034997736514413325045678426357611245574072271032961954264579487833246721986478189785266623455727440749573901569715110242981017660260540763627863117300304886209906980080916877775608215502848
81311970270815617827540940057531918270431736306771131291555565237528187966198127328220620638533782694081418859017820373370184111315027069594843020356854068460344761792103283951352994919231121488069995473028826650091356852715222491148144542065923908529158975666493443972956379570533246911454881499147803139430220485962035320521081527255726234600609772419813960161833755551216431005696
162623940541631235655081880115063836540863472613542262583111130475056375932396254656441241277067565388162837718035640746740368222630054139189686040713708136920689523584206567902705989838462242976139990946057653300182713705430444982296289084131847817058317951332986887945912759141066493822909762998295606278860440971924070641042163054511452469201219544839627920323667511102432862011392
325247881083262471310163760230127673081726945227084525166222260950112751864792509312882482554135130776325675436071281493480736445260108278379372081427416273841379047168413135805411979676924485952279981892115306600365427410860889964592578168263695634116635902665973775891825518282132987645819525996591212557720881943848141282084326109022904938402439089679255840647335022204865724022784
650495762166524942620327520460255346163453890454169050332444521900225503729585018625764965108270261552651350872142562986961472890520216556758744162854832547682758094336826271610823959353848971904559963784230613200730854821721779929185156336527391268233271805331947551783651036564265975291639051993182425115441763887696282564168652218045809876804878179358511681294670044409731448045568
1300991524333049885240655040920510692326907780908338100664889043800451007459170037251529930216540523105302701744285125973922945781040433113517488325709665095365516188673652543221647918707697943809119927568461226401461709643443559858370312673054782536466543610663895103567302073128531950583278103986364850230883527775392565128337304436091619753609756358717023362589340088819462896091136
2601983048666099770481310081841021384653815561816676201329778087600902014918340074503059860433081046210605403488570251947845891562080866227034976651419330190731032377347305086443295837415395887618239855136922452802923419286887119716740625346109565072933087221327790207134604146257063901166556207972729700461767055550785130256674608872183239507219512717434046725178680177638925792182272
5203966097332199540962620163682042769307631123633352402659556175201804029836680149006119720866162092421210806977140503895691783124161732454069953302838660381462064754694610172886591674830791775236479710273844905605846838573774239433481250692219130145866174442655580414269208292514127802333112415945459400923534111101570260513349217744366479014439025434868093450357360355277851584364544
10407932194664399081925240327364085538615262247266704805319112350403608059673360298012239441732324184842421613954281007791383566248323464908139906605677320762924129509389220345773183349661583550472959420547689811211693677147548478866962501384438260291732348885311160828538416585028255604666224831890918801847068222203140521026698435488732958028878050869736186900714720710555703168729088
20815864389328798163850480654728171077230524494533409610638224700807216119346720596024478883464648369684843227908562015582767132496646929816279813211354641525848259018778440691546366699323167100945918841095379622423387354295096957733925002768876520583464697770622321657076833170056511209332449663781837603694136444406281042053396870977465916057756101739472373801429441421111406337458176
41631728778657596327700961309456342154461048989066819221276449401614432238693441192048957766929296739369686455817124031165534264993293859632559626422709283051696518037556881383092733398646334201891837682190759244846774708590193915467850005537753041166929395541244643314153666340113022418664899327563675207388272888812562084106793741954931832115512203478944747602858882842222812674916352
83263457557315192655401922618912684308922097978133638442552898803228864477386882384097915533858593478739372911634248062331068529986587719265119252845418566103393036075113762766185466797292668403783675364381518489693549417180387830935700011075506082333858791082489286628307332680226044837329798655127350414776545777625124168213587483909863664231024406957889495205717765684445625349832704
166526915114630385310803845237825368617844195956267276885105797606457728954773764768195831067717186957478745823268496124662137059973175438530238505690837132206786072150227525532370933594585336807567350728763036979387098834360775661871400022151012164667717582164978573256614665360452089674659597310254700829553091555250248336427174967819727328462048813915778990411435531368891250699665408
333053830229260770621607690475650737235688391912534553770211595212915457909547529536391662135434373914957491646536992249324274119946350877060477011381674264413572144300455051064741867189170673615134701457526073958774197668721551323742800044302024329335435164329957146513229330720904179349319194620509401659106183110500496672854349935639454656924097627831557980822871062737782501399330816
666107660458521541243215380951301474471376783825069107540423190425830915819095059072783324270868747829914983293073984498648548239892701754120954022763348528827144288600910102129483734378341347230269402915052147917548395337443102647485600088604048658670870328659914293026458661441808358698638389241018803318212366221000993345708699871278909313848195255663115961645742125475565002798661632
1332215320917043082486430761902602948942753567650138215080846380851661831638190118145566648541737495659829966586147968997297096479785403508241908045526697057654288577201820204258967468756682694460538805830104295835096790674886205294971200177208097317341740657319828586052917322883616717397276778482037606636424732442001986691417399742557818627696390511326231923291484250951130005597323264
2664430641834086164972861523805205897885507135300276430161692761703323663276380236291133297083474991319659933172295937994594192959570807016483816091053394115308577154403640408517934937513365388921077611660208591670193581349772410589942400354416194634683481314639657172105834645767233434794553556964075213272849464884003973382834799485115637255392781022652463846582968501902260011194646528
5328861283668172329945723047610411795771014270600552860323385523406647326552760472582266594166949982639319866344591875989188385919141614032967632182106788230617154308807280817035869875026730777842155223320417183340387162699544821179884800708832389269366962629279314344211669291534466869589107113928150426545698929768007946765669598970231274510785562045304927693165937003804520022389293056
10657722567336344659891446095220823591542028541201105720646771046813294653105520945164533188333899965278639732689183751978376771838283228065935264364213576461234308617614561634071739750053461555684310446640834366680774325399089642359769601417664778538733925258558628688423338583068933739178214227856300853091397859536015893531339197940462549021571124090609855386331874007609040044778586112
21315445134672689319782892190441647183084057082402211441293542093626589306211041890329066376667799930557279465378367503956753543676566456131870528728427152922468617235229123268143479500106923111368620893281668733361548650798179284719539202835329557077467850517117257376846677166137867478356428455712601706182795719072031787062678395880925098043142248181219710772663748015218080089557172224
42630890269345378639565784380883294366168114164804422882587084187253178612422083780658132753335599861114558930756735007913507087353132912263741057456854305844937234470458246536286959000213846222737241786563337466723097301596358569439078405670659114154935701034234514753693354332275734956712856911425203412365591438144063574125356791761850196086284496362439421545327496030436160179114344448
85261780538690757279131568761766588732336228329608845765174168374506357224844167561316265506671199722229117861513470015827014174706265824527482114913708611689874468940916493072573918000427692445474483573126674933446194603192717138878156811341318228309871402068469029507386708664551469913425713822850406824731182876288127148250713583523700392172568992724878843090654992060872320358228688896
170523561077381514558263137523533177464672456659217691530348336749012714449688335122632531013342399444458235723026940031654028349412531649054964229827417223379748937881832986145147836000855384890948967146253349866892389206385434277756313622682636456619742804136938059014773417329102939826851427645700813649462365752576254296501427167047400784345137985449757686181309984121744640716457377792
341047122154763029116526275047066354929344913318435383060696673498025428899376670245265062026684798888916471446053880063308056698825063298109928459654834446759497875763665972290295672001710769781897934292506699733784778412770868555512627245365272913239485608273876118029546834658205879653702855291401627298924731505152508593002854334094801568690275970899515372362619968243489281432914755584
682094244309526058233052550094132709858689826636870766121393346996050857798753340490530124053369597777832942892107760126616113397650126596219856919309668893518995751527331944580591344003421539563795868585013399467569556825541737111025254490730545826478971216547752236059093669316411759307405710582803254597849463010305017186005708668189603137380551941799030744725239936486978562865829511168
1364188488619052116466105100188265419717379653273741532242786693992101715597506680981060248106739195555665885784215520253232226795300253192439713838619337787037991503054663889161182688006843079127591737170026798935139113651083474222050508981461091652957942433095504472118187338632823518614811421165606509195698926020610034372011417336379206274761103883598061489450479872973957125731659022336
2728376977238104232932210200376530839434759306547483064485573387984203431195013361962120496213478391111331771568431040506464453590600506384879427677238675574075983006109327778322365376013686158255183474340053597870278227302166948444101017962922183305915884866191008944236374677265647037229622842331213018391397852041220068744022834672758412549522207767196122978900959745947914251463318044672
5456753954476208465864420400753061678869518613094966128971146775968406862390026723924240992426956782222663543136862081012928907181201012769758855354477351148151966012218655556644730752027372316510366948680107195740556454604333896888202035925844366611831769732382017888472749354531294074459245684662426036782795704082440137488045669345516825099044415534392245957801919491895828502926636089344
10913507908952416931728840801506123357739037226189932257942293551936813724780053447848481984853913564445327086273724162025857814362402025539517710708954702296303932024437311113289461504054744633020733897360214391481112909208667793776404071851688733223663539464764035776945498709062588148918491369324852073565591408164880274976091338691033650198088831068784491915603838983791657005853272178688
21827015817904833863457681603012246715478074452379864515884587103873627449560106895696963969707827128890654172547448324051715628724804051079035421417909404592607864048874622226578923008109489266041467794720428782962225818417335587552808143703377466447327078929528071553890997418125176297836982738649704147131182816329760549952182677382067300396177662137568983831207677967583314011706544357376
43654031635809667726915363206024493430956148904759729031769174207747254899120213791393927939415654257781308345094896648103431257449608102158070842835818809185215728097749244453157846016218978532082935589440857565924451636834671175105616287406754932894654157859056143107781994836250352595673965477299408294262365632659521099904365354764134600792355324275137967662415355935166628023413088714752
87308063271619335453830726412048986861912297809519458063538348415494509798240427582787855878831308515562616690189793296206862514899216204316141685671637618370431456195498488906315692032437957064165871178881715131848903273669342350211232574813509865789308315718112286215563989672500705191347930954598816588524731265319042199808730709528269201584710648550275935324830711870333256046826177429504
174616126543238670907661452824097973723824595619038916127076696830989019596480855165575711757662617031125233380379586592413725029798432408632283371343275236740862912390996977812631384064875914128331742357763430263697806547338684700422465149627019731578616631436224572431127979345001410382695861909197633177049462530638084399617461419056538403169421297100551870649661423740666512093652354859008
349232253086477341815322905648195947447649191238077832254153393661978039192961710331151423515325234062250466760759173184827450059596864817264566742686550473481725824781993955625262768129751828256663484715526860527395613094677369400844930299254039463157233262872449144862255958690002820765391723818395266354098925061276168799234922838113076806338842594201103741299322847481333024187304709718016
698464506172954683630645811296391894895298382476155664508306787323956078385923420662302847030650468124500933521518346369654900119193729634529133485373100946963451649563987911250525536259503656513326969431053721054791226189354738801689860598508078926314466525744898289724511917380005641530783447636790532708197850122552337598469845676226153612677685188402207482598645694962666048374609419436032
1396929012345909367261291622592783789790596764952311329016613574647912156771846841324605694061300936249001867043036692739309800238387459269058266970746201893926903299127975822501051072519007313026653938862107442109582452378709477603379721197016157852628933051489796579449023834760011283061566895273581065416395700245104675196939691352452307225355370376804414965197291389925332096749218838872064
2793858024691818734522583245185567579581193529904622658033227149295824313543693682649211388122601872498003734086073385478619600476774918538116533941492403787853806598255951645002102145038014626053307877724214884219164904757418955206759442394032315705257866102979593158898047669520022566123133790547162130832791400490209350393879382704904614450710740753608829930394582779850664193498437677744128
5587716049383637469045166490371135159162387059809245316066454298591648627087387365298422776245203744996007468172146770957239200953549837076233067882984807575707613196511903290004204290076029252106615755448429768438329809514837910413518884788064631410515732205959186317796095339040045132246267581094324261665582800980418700787758765409809228901421481507217659860789165559701328386996875355488256
11175432098767274938090332980742270318324774119618490632132908597183297254174774730596845552490407489992014936344293541914478401907099674152466135765969615151415226393023806580008408580152058504213231510896859536876659619029675820827037769576129262821031464411918372635592190678080090264492535162188648523331165601960837401575517530819618457802842963014435319721578331119402656773993750710976512
22350864197534549876180665961484540636649548239236981264265817194366594508349549461193691104980814979984029872688587083828956803814199348304932271531939230302830452786047613160016817160304117008426463021793719073753319238059351641654075539152258525642062928823836745271184381356160180528985070324377297046662331203921674803151035061639236915605685926028870639443156662238805313547987501421953024
44701728395069099752361331922969081273299096478473962528531634388733189016699098922387382209961629959968059745377174167657913607628398696609864543063878460605660905572095226320033634320608234016852926043587438147506638476118703283308151078304517051284125857647673490542368762712320361057970140648754594093324662407843349606302070123278473831211371852057741278886313324477610627095975002843906048
89403456790138199504722663845938162546598192956947925057063268777466378033398197844774764419923259919936119490754348335315827215256797393219729086127756921211321811144190452640067268641216468033705852087174876295013276952237406566616302156609034102568251715295346981084737525424640722115940281297509188186649324815686699212604140246556947662422743704115482557772626648955221254191950005687812096
178806913580276399009445327691876325093196385913895850114126537554932756066796395689549528839846519839872238981508696670631654430513594786439458172255513842422643622288380905280134537282432936067411704174349752590026553904474813133232604313218068205136503430590693962169475050849281444231880562595018376373298649631373398425208280493113895324845487408230965115545253297910442508383900011375624192
357613827160552798018890655383752650186392771827791700228253075109865512133592791379099057679693039679744477963017393341263308861027189572878916344511027684845287244576761810560269074564865872134823408348699505180053107808949626266465208626436136410273006861181387924338950101698562888463761125190036752746597299262746796850416560986227790649690974816461930231090506595820885016767800022751248384
715227654321105596037781310767505300372785543655583400456506150219731024267185582758198115359386079359488955926034786682526617722054379145757832689022055369690574489153523621120538149129731744269646816697399010360106215617899252532930417252872272820546013722362775848677900203397125776927522250380073505493194598525493593700833121972455581299381949632923860462181013191641770033535600045502496768
1430455308642211192075562621535010600745571087311166800913012300439462048534371165516396230718772158718977911852069573365053235444108758291515665378044110739381148978307047242241076298259463488539293633394798020720212431235798505065860834505744545641092027444725551697355800406794251553855044500760147010986389197050987187401666243944911162598763899265847720924362026383283540067071200091004993536
2860910617284422384151125243070021201491142174622333601826024600878924097068742331032792461437544317437955823704139146730106470888217516583031330756088221478762297956614094484482152596518926977078587266789596041440424862471597010131721669011489091282184054889451103394711600813588503107710089001520294021972778394101974374803332487889822325197527798531695441848724052766567080134142400182009987072
5721821234568844768302250486140042402982284349244667203652049201757848194137484662065584922875088634875911647408278293460212941776435033166062661512176442957524595913228188968964305193037853954157174533579192082880849724943194020263443338022978182564368109778902206789423201627177006215420178003040588043945556788203948749606664975779644650395055597063390883697448105533134160268284800364019974144
11443642469137689536604500972280084805964568698489334407304098403515696388274969324131169845750177269751823294816556586920425883552870066332125323024352885915049191826456377937928610386075707908314349067158384165761699449886388040526886676045956365128736219557804413578846403254354012430840356006081176087891113576407897499213329951559289300790111194126781767394896211066268320536569600728039948288
22887284938275379073209001944560169611929137396978668814608196807031392776549938648262339691500354539503646589633113173840851767105740132664250646048705771830098383652912755875857220772151415816628698134316768331523398899772776081053773352091912730257472439115608827157692806508708024861680712012162352175782227152815794998426659903118578601580222388253563534789792422132536641073139201456079896576
45774569876550758146418003889120339223858274793957337629216393614062785553099877296524679383000709079007293179266226347681703534211480265328501292097411543660196767305825511751714441544302831633257396268633536663046797799545552162107546704183825460514944878231217654315385613017416049723361424024324704351564454305631589996853319806237157203160444776507127069579584844265073282146278402912159793152
91549139753101516292836007778240678447716549587914675258432787228125571106199754593049358766001418158014586358532452695363407068422960530657002584194823087320393534611651023503428883088605663266514792537267073326093595599091104324215093408367650921029889756462435308630771226034832099446722848048649408703128908611263179993706639612474314406320889553014254139159169688530146564292556805824319586304
183098279506203032585672015556481356895433099175829350516865574456251142212399509186098717532002836316029172717064905390726814136845921061314005168389646174640787069223302047006857766177211326533029585074534146652187191198182208648430186816735301842059779512924870617261542452069664198893445696097298817406257817222526359987413279224948628812641779106028508278318339377060293128585113611648639172608
366196559012406065171344031112962713790866198351658701033731148912502284424799018372197435064005672632058345434129810781453628273691842122628010336779292349281574138446604094013715532354422653066059170149068293304374382396364417296860373633470603684119559025849741234523084904139328397786891392194597634812515634445052719974826558449897257625283558212057016556636678754120586257170227223297278345216
732393118024812130342688062225925427581732396703317402067462297825004568849598036744394870128011345264116690868259621562907256547383684245256020673558584698563148276893208188027431064708845306132118340298136586608748764792728834593720747266941207368239118051699482469046169808278656795573782784389195269625031268890105439949653116899794515250567116424114033113273357508241172514340454446594556690432
1464786236049624260685376124451850855163464793406634804134924595650009137699196073488789740256022690528233381736519243125814513094767368490512041347117169397126296553786416376054862129417690612264236680596273173217497529585457669187441494533882414736478236103398964938092339616557313591147565568778390539250062537780210879899306233799589030501134232848228066226546715016482345028680908893189113380864
2929572472099248521370752248903701710326929586813269608269849191300018275398392146977579480512045381056466763473038486251629026189534736981024082694234338794252593107572832752109724258835381224528473361192546346434995059170915338374882989067764829472956472206797929876184679233114627182295131137556781078500125075560421759798612467599178061002268465696456132453093430032964690057361817786378226761728
5859144944198497042741504497807403420653859173626539216539698382600036550796784293955158961024090762112933526946076972503258052379069473962048165388468677588505186215145665504219448517670762449056946722385092692869990118341830676749765978135529658945912944413595859752369358466229254364590262275113562157000250151120843519597224935198356122004536931392912264906186860065929380114723635572756453523456
11718289888396994085483008995614806841307718347253078433079396765200073101593568587910317922048181524225867053892153945006516104758138947924096330776937355177010372430291331008438897035341524898113893444770185385739980236683661353499531956271059317891825888827191719504738716932458508729180524550227124314000500302241687039194449870396712244009073862785824529812373720131858760229447271145512907046912
23436579776793988170966017991229613682615436694506156866158793530400146203187137175820635844096363048451734107784307890013032209516277895848192661553874710354020744860582662016877794070683049796227786889540370771479960473367322706999063912542118635783651777654383439009477433864917017458361049100454248628001000604483374078388899740793424488018147725571649059624747440263717520458894542291025814093824
46873159553587976341932035982459227365230873389012313732317587060800292406374274351641271688192726096903468215568615780026064419032555791696385323107749420708041489721165324033755588141366099592455573779080741542959920946734645413998127825084237271567303555308766878018954867729834034916722098200908497256002001208966748156777799481586848976036295451143298119249494880527435040917789084582051628187648
93746319107175952683864071964918454730461746778024627464635174121600584812748548703282543376385452193806936431137231560052128838065111583392770646215498841416082979442330648067511176282732199184911147558161483085919841893469290827996255650168474543134607110617533756037909735459668069833444196401816994512004002417933496313555598963173697952072590902286596238498989761054870081835578169164103256375296
187492638214351905367728143929836909460923493556049254929270348243201169625497097406565086752770904387613872862274463120104257676130223166785541292430997682832165958884661296135022352565464398369822295116322966171839683786938581655992511300336949086269214221235067512075819470919336139666888392803633989024008004835866992627111197926347395904145181804573192476997979522109740163671156338328206512750592
374985276428703810735456287859673818921846987112098509858540696486402339250994194813130173505541808775227745724548926240208515352260446333571082584861995365664331917769322592270044705130928796739644590232645932343679367573877163311985022600673898172538428442470135024151638941838672279333776785607267978048016009671733985254222395852694791808290363609146384953995959044219480327342312676656413025501184
749970552857407621470912575719347637843693974224197019717081392972804678501988389626260347011083617550455491449097852480417030704520892667142165169723990731328663835538645184540089410261857593479289180465291864687358735147754326623970045201347796345076856884940270048303277883677344558667553571214535956096032019343467970508444791705389583616580727218292769907991918088438960654684625353312826051002368
1499941105714815242941825151438695275687387948448394039434162785945609357003976779252520694022167235100910982898195704960834061409041785334284330339447981462657327671077290369080178820523715186958578360930583729374717470295508653247940090402695592690153713769880540096606555767354689117335107142429071912192064038686935941016889583410779167233161454436585539815983836176877921309369250706625652102004736
2999882211429630485883650302877390551374775896896788078868325571891218714007953558505041388044334470201821965796391409921668122818083570668568660678895962925314655342154580738160357641047430373917156721861167458749434940591017306495880180805391185380307427539761080193213111534709378234670214284858143824384128077373871882033779166821558334466322908873171079631967672353755842618738501413251304204009472
5999764422859260971767300605754781102749551793793576157736651143782437428015907117010082776088668940403643931592782819843336245636167141337137321357791925850629310684309161476320715282094860747834313443722334917498869881182034612991760361610782370760614855079522160386426223069418756469340428569716287648768256154747743764067558333643116668932645817746342159263935344707511685237477002826502608408018944
11999528845718521943534601211509562205499103587587152315473302287564874856031814234020165552177337880807287863185565639686672491272334282674274642715583851701258621368618322952641430564189721495668626887444669834997739762364069225983520723221564741521229710159044320772852446138837512938680857139432575297536512309495487528135116667286233337865291635492684318527870689415023370474954005653005216816037888
23999057691437043887069202423019124410998207175174304630946604575129749712063628468040331104354675761614575726371131279373344982544668565348549285431167703402517242737236645905282861128379442991337253774889339669995479524728138451967041446443129483042459420318088641545704892277675025877361714278865150595073024618990975056270233334572466675730583270985368637055741378830046740949908011306010433632075776
47998115382874087774138404846038248821996414350348609261893209150259499424127256936080662208709351523229151452742262558746689965089337130697098570862335406805034485474473291810565722256758885982674507549778679339990959049456276903934082892886258966084918840636177283091409784555350051754723428557730301190146049237981950112540466669144933351461166541970737274111482757660093481899816022612020867264151552
95996230765748175548276809692076497643992828700697218523786418300518998848254513872161324417418703046458302905484525117493379930178674261394197141724670813610068970948946583621131444513517771965349015099557358679981918098912553807868165785772517932169837681272354566182819569110700103509446857115460602380292098475963900225080933338289866702922333083941474548222965515320186963799632045224041734528303104
191992461531496351096553619384152995287985657401394437047572836601037997696509027744322648834837406092916605810969050234986759860357348522788394283449341627220137941897893167242262889027035543930698030199114717359963836197825107615736331571545035864339675362544709132365639138221400207018893714230921204760584196951927800450161866676579733405844666167882949096445931030640373927599264090448083469056606208
383984923062992702193107238768305990575971314802788874095145673202075995393018055488645297669674812185833211621938100469973519720714697045576788566898683254440275883795786334484525778054071087861396060398229434719927672395650215231472663143090071728679350725089418264731278276442800414037787428461842409521168393903855600900323733353159466811689332335765898192891862061280747855198528180896166938113212416
767969846125985404386214477536611981151942629605577748190291346404151990786036110977290595339349624371666423243876200939947039441429394091153577133797366508880551767591572668969051556108142175722792120796458869439855344791300430462945326286180143457358701450178836529462556552885600828075574856923684819042336787807711201800647466706318933623378664671531796385783724122561495710397056361792333876226424832
1535939692251970808772428955073223962303885259211155496380582692808303981572072221954581190678699248743332846487752401879894078882858788182307154267594733017761103535183145337938103112216284351445584241592917738879710689582600860925890652572360286914717402900357673058925113105771201656151149713847369638084673575615422403601294933412637867246757329343063592771567448245122991420794112723584667752452849664
3071879384503941617544857910146447924607770518422310992761165385616607963144144443909162381357398497486665692975504803759788157765717576364614308535189466035522207070366290675876206224432568702891168483185835477759421379165201721851781305144720573829434805800715346117850226211542403312302299427694739276169347151230844807202589866825275734493514658686127185543134896490245982841588225447169335504905699328
6143758769007883235089715820292895849215541036844621985522330771233215926288288887818324762714796994973331385951009607519576315531435152729228617070378932071044414140732581351752412448865137405782336966371670955518842758330403443703562610289441147658869611601430692235700452423084806624604598855389478552338694302461689614405179733650551468987029317372254371086269792980491965683176450894338671009811398656
12287517538015766470179431640585791698431082073689243971044661542466431852576577775636649525429593989946662771902019215039152631062870305458457234140757864142088828281465162703504824897730274811564673932743341911037685516660806887407125220578882295317739223202861384471400904846169613249209197710778957104677388604923379228810359467301102937974058634744508742172539585960983931366352901788677342019622797312
24575035076031532940358863281171583396862164147378487942089323084932863705153155551273299050859187979893325543804038430078305262125740610916914468281515728284177656562930325407009649795460549623129347865486683822075371033321613774814250441157764590635478446405722768942801809692339226498418395421557914209354777209846758457620718934602205875948117269489017484345079171921967862732705803577354684039245594624
49150070152063065880717726562343166793724328294756975884178646169865727410306311102546598101718375959786651087608076860156610524251481221833828936563031456568355313125860650814019299590921099246258695730973367644150742066643227549628500882315529181270956892811445537885603619384678452996836790843115828418709554419693516915241437869204411751896234538978034968690158343843935725465411607154709368078491189248
98300140304126131761435453124686333587448656589513951768357292339731454820612622205093196203436751919573302175216153720313221048502962443667657873126062913136710626251721301628038599181842198492517391461946735288301484133286455099257001764631058362541913785622891075771207238769356905993673581686231656837419108839387033830482875738408823503792469077956069937380316687687871450930823214309418736156982378496
196600280608252263522870906249372667174897313179027903536714584679462909641225244410186392406873503839146604350432307440626442097005924887335315746252125826273421252503442603256077198363684396985034782923893470576602968266572910198514003529262116725083827571245782151542414477538713811987347163372463313674838217678774067660965751476817647007584938155912139874760633375375742901861646428618837472313964756992
393200561216504527045741812498745334349794626358055807073429169358925819282450488820372784813747007678293208700864614881252884194011849774670631492504251652546842505006885206512154396727368793970069565847786941153205936533145820397028007058524233450167655142491564303084828955077427623974694326744926627349676435357548135321931502953635294015169876311824279749521266750751485803723292857237674944627929513984
786401122433009054091483624997490668699589252716111614146858338717851638564900977640745569627494015356586417401729229762505768388023699549341262985008503305093685010013770413024308793454737587940139131695573882306411873066291640794056014117048466900335310284983128606169657910154855247949388653489853254699352870715096270643863005907270588030339752623648559499042533501502971607446585714475349889255859027968
1572802244866018108182967249994981337399178505432223228293716677435703277129801955281491139254988030713172834803458459525011536776047399098682525970017006610187370020027540826048617586909475175880278263391147764612823746132583281588112028234096933800670620569966257212339315820309710495898777306979706509398705741430192541287726011814541176060679505247297118998085067003005943214893171428950699778511718055936
3145604489732036216365934499989962674798357010864446456587433354871406554259603910562982278509976061426345669606916919050023073552094798197365051940034013220374740040055081652097235173818950351760556526782295529225647492265166563176224056468193867601341241139932514424678631640619420991797554613959413018797411482860385082575452023629082352121359010494594237996170134006011886429786342857901399557023436111872
6291208979464072432731868999979925349596714021728892913174866709742813108519207821125964557019952122852691339213833838100046147104189596394730103880068026440749480080110163304194470347637900703521113053564591058451294984530333126352448112936387735202682482279865028849357263281238841983595109227918826037594822965720770165150904047258164704242718020989188475992340268012023772859572685715802799114046872223744
12582417958928144865463737999959850699193428043457785826349733419485626217038415642251929114039904245705382678427667676200092294208379192789460207760136052881498960160220326608388940695275801407042226107129182116902589969060666252704896225872775470405364964559730057698714526562477683967190218455837652075189645931441540330301808094516329408485436041978376951984680536024047545719145371431605598228093744447488
25164835917856289730927475999919701398386856086915571652699466838971252434076831284503858228079808491410765356855335352400184588416758385578920415520272105762997920320440653216777881390551602814084452214258364233805179938121332505409792451745550940810729929119460115397429053124955367934380436911675304150379291862883080660603616189032658816970872083956753903969361072048095091438290742863211196456187488894976
50329671835712579461854951999839402796773712173831143305398933677942504868153662569007716456159616982821530713710670704800369176833516771157840831040544211525995840640881306433555762781103205628168904428516728467610359876242665010819584903491101881621459858238920230794858106249910735868760873823350608300758583725766161321207232378065317633941744167913507807938722144096190182876581485726422392912374977789952
100659343671425158923709903999678805593547424347662286610797867355885009736307325138015432912319233965643061427421341409600738353667033542315681662081088423051991681281762612867111525562206411256337808857033456935220719752485330021639169806982203763242919716477840461589716212499821471737521747646701216601517167451532322642414464756130635267883488335827015615877444288192380365753162971452844785824749955579904
201318687342850317847419807999357611187094848695324573221595734711770019472614650276030865824638467931286122854842682819201476707334067084631363324162176846103983362563525225734223051124412822512675617714066913870441439504970660043278339613964407526485839432955680923179432424999642943475043495293402433203034334903064645284828929512261270535766976671654031231754888576384760731506325942905689571649499911159808
402637374685700635694839615998715222374189697390649146443191469423540038945229300552061731649276935862572245709685365638402953414668134169262726648324353692207966725127050451468446102248825645025351235428133827740882879009941320086556679227928815052971678865911361846358864849999285886950086990586804866406068669806129290569657859024522541071533953343308062463509777152769521463012651885811379143298999822319616
805274749371401271389679231997430444748379394781298292886382938847080077890458601104123463298553871725144491419370731276805906829336268338525453296648707384415933450254100902936892204497651290050702470856267655481765758019882640173113358455857630105943357731822723692717729699998571773900173981173609732812137339612258581139315718049045082143067906686616124927019554305539042926025303771622758286597999644639232
1610549498742802542779358463994860889496758789562596585772765877694160155780917202208246926597107743450288982838741462553611813658672536677050906593297414768831866900508201805873784408995302580101404941712535310963531516039765280346226716911715260211886715463645447385435459399997143547800347962347219465624274679224517162278631436098090164286135813373232249854039108611078085852050607543245516573195999289278464
3221098997485605085558716927989721778993517579125193171545531755388320311561834404416493853194215486900577965677482925107223627317345073354101813186594829537663733801016403611747568817990605160202809883425070621927063032079530560692453433823430520423773430927290894770870918799994287095600695924694438931248549358449034324557262872196180328572271626746464499708078217222156171704101215086491033146391998578556928
6442197994971210171117433855979443557987035158250386343091063510776640623123668808832987706388430973801155931354965850214447254634690146708203626373189659075327467602032807223495137635981210320405619766850141243854126064159061121384906867646861040847546861854581789541741837599988574191201391849388877862497098716898068649114525744392360657144543253492928999416156434444312343408202430172982066292783997157113856
12884395989942420342234867711958887115974070316500772686182127021553281246247337617665975412776861947602311862709931700428894509269380293416407252746379318150654935204065614446990275271962420640811239533700282487708252128318122242769813735293722081695093723709163579083483675199977148382402783698777755724994197433796137298229051488784721314289086506985857998832312868888624686816404860345964132585567994314227712
25768791979884840684469735423917774231948140633001545372364254043106562492494675235331950825553723895204623725419863400857789018538760586832814505492758636301309870408131228893980550543924841281622479067400564975416504256636244485539627470587444163390187447418327158166967350399954296764805567397555511449988394867592274596458102977569442628578173013971715997664625737777249373632809720691928265171135988628455424
51537583959769681368939470847835548463896281266003090744728508086213124984989350470663901651107447790409247450839726801715578037077521173665629010985517272602619740816262457787961101087849682563244958134801129950833008513272488971079254941174888326780374894836654316333934700799908593529611134795111022899976789735184549192916205955138885257156346027943431995329251475554498747265619441383856530342271977256910848
103075167919539362737878941695671096927792562532006181489457016172426249969978700941327803302214895580818494901679453603431156074155042347331258021971034545205239481632524915575922202175699365126489916269602259901666017026544977942158509882349776653560749789673308632667869401599817187059222269590222045799953579470369098385832411910277770514312692055886863990658502951108997494531238882767713060684543954513821696
206150335839078725475757883391342193855585125064012362978914032344852499939957401882655606604429791161636989803358907206862312148310084694662516043942069090410478963265049831151844404351398730252979832539204519803332034053089955884317019764699553307121499579346617265335738803199634374118444539180444091599907158940738196771664823820555541028625384111773727981317005902217994989062477765535426121369087909027643392
412300671678157450951515766782684387711170250128024725957828064689704999879914803765311213208859582323273979606717814413724624296620169389325032087884138180820957926530099662303688808702797460505959665078409039606664068106179911768634039529399106614242999158693234530671477606399268748236889078360888183199814317881476393543329647641111082057250768223547455962634011804435989978124955531070852242738175818055286784
824601343356314901903031533565368775422340500256049451915656129379409999759829607530622426417719164646547959213435628827449248593240338778650064175768276361641915853060199324607377617405594921011919330156818079213328136212359823537268079058798213228485998317386469061342955212798537496473778156721776366399628635762952787086659295282222164114501536447094911925268023608871979956249911062141704485476351636110573568
1649202686712629803806063067130737550844681000512098903831312258758819999519659215061244852835438329293095918426871257654898497186480677557300128351536552723283831706120398649214755234811189842023838660313636158426656272424719647074536158117596426456971996634772938122685910425597074992947556313443552732799257271525905574173318590564444328229003072894189823850536047217743959912499822124283408970952703272221147136
3298405373425259607612126134261475101689362001024197807662624517517639999039318430122489705670876658586191836853742515309796994372961355114600256703073105446567663412240797298429510469622379684047677320627272316853312544849439294149072316235192852913943993269545876245371820851194149985895112626887105465598514543051811148346637181128888656458006145788379647701072094435487919824999644248566817941905406544442294272
6596810746850519215224252268522950203378724002048395615325249035035279998078636860244979411341753317172383673707485030619593988745922710229200513406146210893135326824481594596859020939244759368095354641254544633706625089698878588298144632470385705827887986539091752490743641702388299971790225253774210931197029086103622296693274362257777312916012291576759295402144188870975839649999288497133635883810813088884588544
13193621493701038430448504537045900406757448004096791230650498070070559996157273720489958822683506634344767347414970061239187977491845420458401026812292421786270653648963189193718041878489518736190709282509089267413250179397757176596289264940771411655775973078183504981487283404776599943580450507548421862394058172207244593386548724515554625832024583153518590804288377741951679299998576994267271767621626177769177088
26387242987402076860897009074091800813514896008193582461300996140141119992314547440979917645367013268689534694829940122478375954983690840916802053624584843572541307297926378387436083756979037472381418565018178534826500358795514353192578529881542823311551946156367009962974566809553199887160901015096843724788116344414489186773097449031109251664049166307037181608576755483903358599997153988534543535243252355538354176
52774485974804153721794018148183601627029792016387164922601992280282239984629094881959835290734026537379069389659880244956751909967381681833604107249169687145082614595852756774872167513958074944762837130036357069653000717591028706385157059763085646623103892312734019925949133619106399774321802030193687449576232688828978373546194898062218503328098332614074363217153510967806717199994307977069087070486504711076708352
105548971949608307443588036296367203254059584032774329845203984560564479969258189763919670581468053074758138779319760489913503819934763363667208214498339374290165229191705513549744335027916149889525674260072714139306001435182057412770314119526171293246207784625468039851898267238212799548643604060387374899152465377657956747092389796124437006656196665228148726434307021935613434399988615954138174140973009422153416704
211097943899216614887176072592734406508119168065548659690407969121128959938516379527839341162936106149516277558639520979827007639869526727334416428996678748580330458383411027099488670055832299779051348520145428278612002870364114825540628239052342586492415569250936079703796534476425599097287208120774749798304930755315913494184779592248874013312393330456297452868614043871226868799977231908276348281946018844306833408
422195887798433229774352145185468813016238336131097319380815938242257919877032759055678682325872212299032555117279041959654015279739053454668832857993357497160660916766822054198977340111664599558102697040290856557224005740728229651081256478104685172984831138501872159407593068952851198194574416241549499596609861510631826988369559184497748026624786660912594905737228087742453737599954463816552696563892037688613666816
844391775596866459548704290370937626032476672262194638761631876484515839754065518111357364651744424598065110234558083919308030559478106909337665715986714994321321833533644108397954680223329199116205394080581713114448011481456459302162512956209370345969662277003744318815186137905702396389148832483098999193219723021263653976739118368995496053249573321825189811474456175484907475199908927633105393127784075377227333632
1688783551193732919097408580741875252064953344524389277523263752969031679508131036222714729303488849196130220469116167838616061118956213818675331431973429988642643667067288216795909360446658398232410788161163426228896022962912918604325025912418740691939324554007488637630372275811404792778297664966197998386439446042527307953478236737990992106499146643650379622948912350969814950399817855266210786255568150754454667264
3377567102387465838194817161483750504129906689048778555046527505938063359016262072445429458606977698392260440938232335677232122237912427637350662863946859977285287334134576433591818720893316796464821576322326852457792045925825837208650051824837481383878649108014977275260744551622809585556595329932395996772878892085054615906956473475981984212998293287300759245897824701939629900799635710532421572511136301508909334528
6755134204774931676389634322967501008259813378097557110093055011876126718032524144890858917213955396784520881876464671354464244475824855274701325727893719954570574668269152867183637441786633592929643152644653704915584091851651674417300103649674962767757298216029954550521489103245619171113190659864791993545757784170109231813912946951963968425996586574601518491795649403879259801599271421064843145022272603017818669056
13510268409549863352779268645935002016519626756195114220186110023752253436065048289781717834427910793569041763752929342708928488951649710549402651455787439909141149336538305734367274883573267185859286305289307409831168183703303348834600207299349925535514596432059909101042978206491238342226381319729583987091515568340218463627825893903927936851993173149203036983591298807758519603198542842129686290044545206035637338112
27020536819099726705558537291870004033039253512390228440372220047504506872130096579563435668855821587138083527505858685417856977903299421098805302911574879818282298673076611468734549767146534371718572610578614819662336367406606697669200414598699851071029192864119818202085956412982476684452762639459167974183031136680436927255651787807855873703986346298406073967182597615517039206397085684259372580089090412071274676224
54041073638199453411117074583740008066078507024780456880744440095009013744260193159126871337711643174276167055011717370835713955806598842197610605823149759636564597346153222937469099534293068743437145221157229639324672734813213395338400829197399702142058385728239636404171912825964953368905525278918335948366062273360873854511303575615711747407972692596812147934365195231034078412794171368518745160178180824142549352448
108082147276398906822234149167480016132157014049560913761488880190018027488520386318253742675423286348552334110023434741671427911613197684395221211646299519273129194692306445874938199068586137486874290442314459278649345469626426790676801658394799404284116771456479272808343825651929906737811050557836671896732124546721747709022607151231423494815945385193624295868730390462068156825588342737037490320356361648285098704896
216164294552797813644468298334960032264314028099121827522977760380036054977040772636507485350846572697104668220046869483342855823226395368790442423292599038546258389384612891749876398137172274973748580884628918557298690939252853581353603316789598808568233542912958545616687651303859813475622101115673343793464249093443495418045214302462846989631890770387248591737460780924136313651176685474074980640712723296570197409792
432328589105595627288936596669920064528628056198243655045955520760072109954081545273014970701693145394209336440093738966685711646452790737580884846585198077092516778769225783499752796274344549947497161769257837114597381878505707162707206633579197617136467085825917091233375302607719626951244202231346687586928498186886990836090428604925693979263781540774497183474921561848272627302353370948149961281425446593140394819584
864657178211191254577873193339840129057256112396487310091911041520144219908163090546029941403386290788418672880187477933371423292905581475161769693170396154185033557538451566999505592548689099894994323538515674229194763757011414325414413267158395234272934171651834182466750605215439253902488404462693375173856996373773981672180857209851387958527563081548994366949843123696545254604706741896299922562850893186280789639168
1729314356422382509155746386679680258114512224792974620183822083040288439816326181092059882806772581576837345760374955866742846585811162950323539386340792308370067115076903133999011185097378199789988647077031348458389527514022828650828826534316790468545868343303668364933501210430878507804976808925386750347713992747547963344361714419702775917055126163097988733899686247393090509209413483792599845125701786372561579278336
3458628712844765018311492773359360516229024449585949240367644166080576879632652362184119765613545163153674691520749911733485693171622325900647078772681584616740134230153806267998022370194756399579977294154062696916779055028045657301657653068633580937091736686607336729867002420861757015609953617850773500695427985495095926688723428839405551834110252326195977467799372494786181018418826967585199690251403572745123158556672
6917257425689530036622985546718721032458048899171898480735288332161153759265304724368239531227090326307349383041499823466971386343244651801294157545363169233480268460307612535996044740389512799159954588308125393833558110056091314603315306137267161874183473373214673459734004841723514031219907235701547001390855970990191853377446857678811103668220504652391954935598744989572362036837653935170399380502807145490246317113344
13834514851379060073245971093437442064916097798343796961470576664322307518530609448736479062454180652614698766082999646933942772686489303602588315090726338466960536920615225071992089480779025598319909176616250787667116220112182629206630612274534323748366946746429346919468009683447028062439814471403094002781711941980383706754893715357622207336441009304783909871197489979144724073675307870340798761005614290980492634226688
27669029702758120146491942186874884129832195596687593922941153328644615037061218897472958124908361305229397532165999293867885545372978607205176630181452676933921073841230450143984178961558051196639818353232501575334232440224365258413261224549068647496733893492858693838936019366894056124879628942806188005563423883960767413509787430715244414672882018609567819742394979958289448147350615740681597522011228581960985268453376
55338059405516240292983884373749768259664391193375187845882306657289230074122437794945916249816722610458795064331998587735771090745957214410353260362905353867842147682460900287968357923116102393279636706465003150668464880448730516826522449098137294993467786985717387677872038733788112249759257885612376011126847767921534827019574861430488829345764037219135639484789959916578896294701231481363195044022457163921970536906752
110676118811032480585967768747499536519328782386750375691764613314578460148244875589891832499633445220917590128663997175471542181491914428820706520725810707735684295364921800575936715846232204786559273412930006301336929760897461033653044898196274589986935573971434775355744077467576224499518515771224752022253695535843069654039149722860977658691528074438271278969579919833157792589402462962726390088044914327843941073813504
221352237622064961171935537494999073038657564773500751383529226629156920296489751179783664999266890441835180257327994350943084362983828857641413041451621415471368590729843601151873431692464409573118546825860012602673859521794922067306089796392549179973871147942869550711488154935152448999037031542449504044507391071686139308078299445721955317383056148876542557939159839666315585178804925925452780176089828655687882147627008
442704475244129922343871074989998146077315129547001502767058453258313840592979502359567329998533780883670360514655988701886168725967657715282826082903242830942737181459687202303746863384928819146237093651720025205347719043589844134612179592785098359947742295885739101422976309870304897998074063084899008089014782143372278616156598891443910634766112297753085115878319679332631170357609851850905560352179657311375764295254016
885408950488259844687742149979996292154630259094003005534116906516627681185959004719134659997067561767340721029311977403772337451935315430565652165806485661885474362919374404607493726769857638292474187303440050410695438087179688269224359185570196719895484591771478202845952619740609795996148126169798016178029564286744557232313197782887821269532224595506170231756639358665262340715219703701811120704359314622751528590508032
1770817900976519689375484299959992584309260518188006011068233813033255362371918009438269319994135123534681442058623954807544674903870630861131304331612971323770948725838748809214987453539715276584948374606880100821390876174359376538448718371140393439790969183542956405691905239481219591992296252339596032356059128573489114464626395565775642539064449191012340463513278717330524681430439407403622241408718629245503057181016064
3541635801953039378750968599919985168618521036376012022136467626066510724743836018876538639988270247069362884117247909615089349807741261722262608663225942647541897451677497618429974907079430553169896749213760201642781752348718753076897436742280786879581938367085912811383810478962439183984592504679192064712118257146978228929252791131551285078128898382024680927026557434661049362860878814807244482817437258491006114362032128
7083271603906078757501937199839970337237042072752024044272935252133021449487672037753077279976540494138725768234495819230178699615482523444525217326451885295083794903354995236859949814158861106339793498427520403285563504697437506153794873484561573759163876734171825622767620957924878367969185009358384129424236514293956457858505582263102570156257796764049361854053114869322098725721757629614488965634874516982012228724064256
14166543207812157515003874399679940674474084145504048088545870504266042898975344075506154559953080988277451536468991638460357399230965046889050434652903770590167589806709990473719899628317722212679586996855040806571127009394875012307589746969123147518327753468343651245535241915849756735938370018716768258848473028587912915717011164526205140312515593528098723708106229738644197451443515259228977931269749033964024457448128512
28333086415624315030007748799359881348948168291008096177091741008532085797950688151012309119906161976554903072937983276920714798461930093778100869305807541180335179613419980947439799256635444425359173993710081613142254018789750024615179493938246295036655506936687302491070483831699513471876740037433536517696946057175825831434022329052410280625031187056197447416212459477288394902887030518457955862539498067928048914896257024
56666172831248630060015497598719762697896336582016192354183482017064171595901376302024618239812323953109806145875966553841429596923860187556201738611615082360670359226839961894879598513270888850718347987420163226284508037579500049230358987876492590073311013873374604982140967663399026943753480074867073035393892114351651662868044658104820561250062374112394894832424918954576789805774061036915911725078996135856097829792514048
113332345662497260120030995197439525395792673164032384708366964034128343191802752604049236479624647906219612291751933107682859193847720375112403477223230164721340718453679923789759197026541777701436695974840326452569016075159000098460717975752985180146622027746749209964281935326798053887506960149734146070787784228703303325736089316209641122500124748224789789664849837909153579611548122073831823450157992271712195659585028096
226664691324994520240061990394879050791585346328064769416733928068256686383605505208098472959249295812439224583503866215365718387695440750224806954446460329442681436907359847579518394053083555402873391949680652905138032150318000196921435951505970360293244055493498419928563870653596107775013920299468292141575568457406606651472178632419282245000249496449579579329699675818307159223096244147663646900315984543424391319170056192
453329382649989040480123980789758101583170692656129538833467856136513372767211010416196945918498591624878449167007732430731436775390881500449613908892920658885362873814719695159036788106167110805746783899361305810276064300636000393842871903011940720586488110986996839857127741307192215550027840598936584283151136914813213302944357264838564490000498992899159158659399351636614318446192488295327293800631969086848782638340112384
906658765299978080960247961579516203166341385312259077666935712273026745534422020832393891836997183249756898334015464861462873550781763000899227817785841317770725747629439390318073576212334221611493567798722611620552128601272000787685743806023881441172976221973993679714255482614384431100055681197873168566302273829626426605888714529677128980000997985798318317318798703273228636892384976590654587601263938173697565276680224768
1813317530599956161920495923159032406332682770624518155333871424546053491068844041664787783673994366499513796668030929722925747101563526001798455635571682635541451495258878780636147152424668443222987135597445223241104257202544001575371487612047762882345952443947987359428510965228768862200111362395746337132604547659252853211777429059354257960001995971596636634637597406546457273784769953181309175202527876347395130553360449536
3626635061199912323840991846318064812665365541249036310667742849092106982137688083329575567347988732999027593336061859445851494203127052003596911271143365271082902990517757561272294304849336886445974271194890446482208514405088003150742975224095525764691904887895974718857021930457537724400222724791492674265209095318505706423554858118708515920003991943193273269275194813092914547569539906362618350405055752694790261106720899072
7253270122399824647681983692636129625330731082498072621335485698184213964275376166659151134695977465998055186672123718891702988406254104007193822542286730542165805981035515122544588609698673772891948542389780892964417028810176006301485950448191051529383809775791949437714043860915075448800445449582985348530418190637011412847109716237417031840007983886386546538550389626185829095139079812725236700810111505389580522213441798144
14506540244799649295363967385272259250661462164996145242670971396368427928550752333318302269391954931996110373344247437783405976812508208014387645084573461084331611962071030245089177219397347545783897084779561785928834057620352012602971900896382103058767619551583898875428087721830150897600890899165970697060836381274022825694219432474834063680015967772773093077100779252371658190278159625450473401620223010779161044426883596288
29013080489599298590727934770544518501322924329992290485341942792736855857101504666636604538783909863992220746688494875566811953625016416028775290169146922168663223924142060490178354438794695091567794169559123571857668115240704025205943801792764206117535239103167797750856175443660301795201781798331941394121672762548045651388438864949668127360031935545546186154201558504743316380556319250900946803240446021558322088853767192576
58026160979198597181455869541089037002645848659984580970683885585473711714203009333273209077567819727984441493376989751133623907250032832057550580338293844337326447848284120980356708877589390183135588339118247143715336230481408050411887603585528412235070478206335595501712350887320603590403563596663882788243345525096091302776877729899336254720063871091092372308403117009486632761112638501801893606480892043116644177707534385152
116052321958397194362911739082178074005291697319969161941367771170947423428406018666546418155135639455968882986753979502267247814500065664115101160676587688674652895696568241960713417755178780366271176678236494287430672460962816100823775207171056824470140956412671191003424701774641207180807127193327765576486691050192182605553755459798672509440127742182184744616806234018973265522225277003603787212961784086233288355415068770304
232104643916794388725823478164356148010583394639938323882735542341894846856812037333092836310271278911937765973507959004534495629000131328230202321353175377349305791393136483921426835510357560732542353356472988574861344921925632201647550414342113648940281912825342382006849403549282414361614254386655531152973382100384365211107510919597345018880255484364369489233612468037946531044450554007207574425923568172466576710830137540608
464209287833588777451646956328712296021166789279876647765471084683789693713624074666185672620542557823875531947015918009068991258000262656460404642706350754698611582786272967842853671020715121465084706712945977149722689843851264403295100828684227297880563825650684764013698807098564828723228508773311062305946764200768730422215021839194690037760510968728738978467224936075893062088901108014415148851847136344933153421660275081216
928418575667177554903293912657424592042333578559753295530942169367579387427248149332371345241085115647751063894031836018137982516000525312920809285412701509397223165572545935685707342041430242930169413425891954299445379687702528806590201657368454595761127651301369528027397614197129657446457017546622124611893528401537460844430043678389380075521021937457477956934449872151786124177802216028830297703694272689866306843320550162432
1856837151334355109806587825314849184084667157119506591061884338735158774854496298664742690482170231295502127788063672036275965032001050625841618570825403018794446331145091871371414684082860485860338826851783908598890759375405057613180403314736909191522255302602739056054795228394259314892914035093244249223787056803074921688860087356778760151042043874914955913868899744303572248355604432057660595407388545379732613686641100324864
3713674302668710219613175650629698368169334314239013182123768677470317549708992597329485380964340462591004255576127344072551930064002101251683237141650806037588892662290183742742829368165720971720677653703567817197781518750810115226360806629473818383044510605205478112109590456788518629785828070186488498447574113606149843377720174713557520302084087749829911827737799488607144496711208864115321190814777090759465227373282200649728
7427348605337420439226351301259396736338668628478026364247537354940635099417985194658970761928680925182008511152254688145103860128004202503366474283301612075177785324580367485485658736331441943441355307407135634395563037501620230452721613258947636766089021210410956224219180913577037259571656140372976996895148227212299686755440349427115040604168175499659823655475598977214288993422417728230642381629554181518930454746564401299456
14854697210674840878452702602518793472677337256956052728495074709881270198835970389317941523857361850364017022304509376290207720256008405006732948566603224150355570649160734970971317472662883886882710614814271268791126075003240460905443226517895273532178042420821912448438361827154074519143312280745953993790296454424599373510880698854230081208336350999319647310951197954428577986844835456461284763259108363037860909493128802598912
29709394421349681756905405205037586945354674513912105456990149419762540397671940778635883047714723700728034044609018752580415440512016810013465897133206448300711141298321469941942634945325767773765421229628542537582252150006480921810886453035790547064356084841643824896876723654308149038286624561491907987580592908849198747021761397708460162416672701998639294621902395908857155973689670912922569526518216726075721818986257605197824
59418788842699363513810810410075173890709349027824210913980298839525080795343881557271766095429447401456068089218037505160830881024033620026931794266412896601422282596642939883885269890651535547530842459257085075164504300012961843621772906071581094128712169683287649793753447308616298076573249122983815975161185817698397494043522795416920324833345403997278589243804791817714311947379341825845139053036433452151443637972515210395648
118837577685398727027621620820150347781418698055648421827960597679050161590687763114543532190858894802912136178436075010321661762048067240053863588532825793202844565193285879767770539781303071095061684918514170150329008600025923687243545812143162188257424339366575299587506894617232596153146498245967631950322371635396794988087045590833840649666690807994557178487609583635428623894758683651690278106072866904302887275945030420791296
237675155370797454055243241640300695562837396111296843655921195358100323181375526229087064381717789605824272356872150020643323524096134480107727177065651586405689130386571759535541079562606142190123369837028340300658017200051847374487091624286324376514848678733150599175013789234465192306292996491935263900644743270793589976174091181667681299333381615989114356975219167270857247789517367303380556212145733808605774551890060841582592
475350310741594908110486483280601391125674792222593687311842390716200646362751052458174128763435579211648544713744300041286647048192268960215454354131303172811378260773143519071082159125212284380246739674056680601316034400103694748974183248572648753029697357466301198350027578468930384612585992983870527801289486541587179952348182363335362598666763231978228713950438334541714495579034734606761112424291467617211549103780121683165184
950700621483189816220972966561202782251349584445187374623684781432401292725502104916348257526871158423297089427488600082573294096384537920430908708262606345622756521546287038142164318250424568760493479348113361202632068800207389497948366497145297506059394714932602396700055156937860769225171985967741055602578973083174359904696364726670725197333526463956457427900876669083428991158069469213522224848582935234423098207560243366330368
1901401242966379632441945933122405564502699168890374749247369562864802585451004209832696515053742316846594178854977200165146588192769075840861817416525212691245513043092574076284328636500849137520986958696226722405264137600414778995896732994290595012118789429865204793400110313875721538450343971935482111205157946166348719809392729453341450394667052927912914855801753338166857982316138938427044449697165870468846196415120486732660736
3802802485932759264883891866244811129005398337780749498494739125729605170902008419665393030107484633693188357709954400330293176385538151681723634833050425382491026086185148152568657273001698275041973917392453444810528275200829557991793465988581190024237578859730409586800220627751443076900687943870964222410315892332697439618785458906682900789334105855825829711603506676333715964632277876854088899394331740937692392830240973465321472
7605604971865518529767783732489622258010796675561498996989478251459210341804016839330786060214969267386376715419908800660586352771076303363447269666100850764982052172370296305137314546003396550083947834784906889621056550401659115983586931977162380048475157719460819173600441255502886153801375887741928444820631784665394879237570917813365801578668211711651659423207013352667431929264555753708177798788663481875384785660481946930642944
15211209943731037059535567464979244516021593351122997993978956502918420683608033678661572120429938534772753430839817601321172705542152606726894539332201701529964104344740592610274629092006793100167895669569813779242113100803318231967173863954324760096950315438921638347200882511005772307602751775483856889641263569330789758475141835626731603157336423423303318846414026705334863858529111507416355597577326963750769571320963893861285888
30422419887462074119071134929958489032043186702245995987957913005836841367216067357323144240859877069545506861679635202642345411084305213453789078664403403059928208689481185220549258184013586200335791339139627558484226201606636463934347727908649520193900630877843276694401765022011544615205503550967713779282527138661579516950283671253463206314672846846606637692828053410669727717058223014832711195154653927501539142641927787722571776
60844839774924148238142269859916978064086373404491991975915826011673682734432134714646288481719754139091013723359270405284690822168610426907578157328806806119856417378962370441098516368027172400671582678279255116968452403213272927868695455817299040387801261755686553388803530044023089230411007101935427558565054277323159033900567342506926412629345693693213275385656106821339455434116446029665422390309307855003078285283855575445143552
121689679549848296476284539719833956128172746808983983951831652023347365468864269429292576963439508278182027446718540810569381644337220853815156314657613612239712834757924740882197032736054344801343165356558510233936904806426545855737390911634598080775602523511373106777607060088046178460822014203870855117130108554646318067801134685013852825258691387386426550771312213642678910868232892059330844780618615710006156570567711150890287104
243379359099696592952569079439667912256345493617967967903663304046694730937728538858585153926879016556364054893437081621138763288674441707630312629315227224479425669515849481764394065472108689602686330713117020467873809612853091711474781823269196161551205047022746213555214120176092356921644028407741710234260217109292636135602269370027705650517382774772853101542624427285357821736465784118661689561237231420012313141135422301780574208
486758718199393185905138158879335824512690987235935935807326608093389461875457077717170307853758033112728109786874163242277526577348883415260625258630454448958851339031698963528788130944217379205372661426234040935747619225706183422949563646538392323102410094045492427110428240352184713843288056815483420468520434218585272271204538740055411301034765549545706203085248854570715643472931568237323379122474462840024626282270844603561148416
973517436398786371810276317758671649025381974471871871614653216186778923750914155434340615707516066225456219573748326484555053154697766830521250517260908897917702678063397927057576261888434758410745322852468081871495238451412366845899127293076784646204820188090984854220856480704369427686576113630966840937040868437170544542409077480110822602069531099091412406170497709141431286945863136474646758244948925680049252564541689207122296832
1947034872797572743620552635517343298050763948943743743229306432373557847501828310868681231415032132450912439147496652969110106309395533661042501034521817795835405356126795854115152523776869516821490645704936163742990476902824733691798254586153569292409640376181969708441712961408738855373152227261933681874081736874341089084818154960221645204139062198182824812340995418282862573891726272949293516489897851360098505129083378414244593664
3894069745595145487241105271034686596101527897887487486458612864747115695003656621737362462830064264901824878294993305938220212618791067322085002069043635591670810712253591708230305047553739033642981291409872327485980953805649467383596509172307138584819280752363939416883425922817477710746304454523867363748163473748682178169636309920443290408278124396365649624681990836565725147783452545898587032979795702720197010258166756828489187328
7788139491190290974482210542069373192203055795774974972917225729494231390007313243474724925660128529803649756589986611876440425237582134644170004138087271183341621424507183416460610095107478067285962582819744654971961907611298934767193018344614277169638561504727878833766851845634955421492608909047734727496326947497364356339272619840886580816556248792731299249363981673131450295566905091797174065959591405440394020516333513656978374656
15576278982380581948964421084138746384406111591549949945834451458988462780014626486949449851320257059607299513179973223752880850475164269288340008276174542366683242849014366832921220190214956134571925165639489309943923815222597869534386036689228554339277123009455757667533703691269910842985217818095469454992653894994728712678545239681773161633112497585462598498727963346262900591133810183594348131919182810880788041032667027313956749312
31152557964761163897928842168277492768812223183099899891668902917976925560029252973898899702640514119214599026359946447505761700950328538576680016552349084733366485698028733665842440380429912269143850331278978619887847630445195739068772073378457108678554246018911515335067407382539821685970435636190938909985307789989457425357090479363546323266224995170925196997455926692525801182267620367188696263838365621761576082065334054627913498624
62305115929522327795857684336554985537624446366199799783337805835953851120058505947797799405281028238429198052719892895011523401900657077153360033104698169466732971396057467331684880760859824538287700662557957239775695260890391478137544146756914217357108492037823030670134814765079643371940871272381877819970615579978914850714180958727092646532449990341850393994911853385051602364535240734377392527676731243523152164130668109255826997248
124610231859044655591715368673109971075248892732399599566675611671907702240117011895595598810562056476858396105439785790023046803801314154306720066209396338933465942792114934663369761521719649076575401325115914479551390521780782956275088293513828434714216984075646061340269629530159286743881742544763755639941231159957829701428361917454185293064899980683700787989823706770103204729070481468754785055353462487046304328261336218511653994496
249220463718089311183430737346219942150497785464799199133351223343815404480234023791191197621124112953716792210879571580046093607602628308613440132418792677866931885584229869326739523043439298153150802650231828959102781043561565912550176587027656869428433968151292122680539259060318573487763485089527511279882462319915659402856723834908370586129799961367401575979647413540206409458140962937509570110706924974092608656522672437023307988992
498440927436178622366861474692439884300995570929598398266702446687630808960468047582382395242248225907433584421759143160092187215205256617226880264837585355733863771168459738653479046086878596306301605300463657918205562087123131825100353174055313738856867936302584245361078518120637146975526970179055022559764924639831318805713447669816741172259599922734803151959294827080412818916281925875019140221413849948185217313045344874046615977984
996881854872357244733722949384879768601991141859196796533404893375261617920936095164764790484496451814867168843518286320184374430410513234453760529675170711467727542336919477306958092173757192612603210600927315836411124174246263650200706348110627477713735872605168490722157036241274293951053940358110045119529849279662637611426895339633482344519199845469606303918589654160825637832563851750038280442827699896370434626090689748093231955968
1993763709744714489467445898769759537203982283718393593066809786750523235841872190329529580968992903629734337687036572640368748860821026468907521059350341422935455084673838954613916184347514385225206421201854631672822248348492527300401412696221254955427471745210336981444314072482548587902107880716220090239059698559325275222853790679266964689038399690939212607837179308321651275665127703500076560885655399792740869252181379496186463911936
3987527419489428978934891797539519074407964567436787186133619573501046471683744380659059161937985807259468675374073145280737497721642052937815042118700682845870910169347677909227832368695028770450412842403709263345644496696985054600802825392442509910854943490420673962888628144965097175804215761432440180478119397118650550445707581358533929378076799381878425215674358616643302551330255407000153121771310799585481738504362758992372927823872
7975054838978857957869783595079038148815929134873574372267239147002092943367488761318118323875971614518937350748146290561474995443284105875630084237401365691741820338695355818455664737390057540900825684807418526691288993393970109201605650784885019821709886980841347925777256289930194351608431522864880360956238794237301100891415162717067858756153598763756850431348717233286605102660510814000306243542621599170963477008725517984745855647744
15950109677957715915739567190158076297631858269747148744534478294004185886734977522636236647751943229037874701496292581122949990886568211751260168474802731383483640677390711636911329474780115081801651369614837053382577986787940218403211301569770039643419773961682695851554512579860388703216863045729760721912477588474602201782830325434135717512307197527513700862697434466573210205321021628000612487085243198341926954017451035969491711295488
31900219355915431831479134380316152595263716539494297489068956588008371773469955045272473295503886458075749402992585162245899981773136423502520336949605462766967281354781423273822658949560230163603302739229674106765155973575880436806422603139540079286839547923365391703109025159720777406433726091459521443824955176949204403565660650868271435024614395055027401725394868933146420410642043256001224974170486396683853908034902071938983422590976
63800438711830863662958268760632305190527433078988594978137913176016743546939910090544946591007772916151498805985170324491799963546272847005040673899210925533934562709562846547645317899120460327206605478459348213530311947151760873612845206279080158573679095846730783406218050319441554812867452182919042887649910353898408807131321301736542870049228790110054803450789737866292840821284086512002449948340972793367707816069804143877966845181952
127600877423661727325916537521264610381054866157977189956275826352033487093879820181089893182015545832302997611970340648983599927092545694010081347798421851067869125419125693095290635798240920654413210956918696427060623894303521747225690412558160317147358191693461566812436100638883109625734904365838085775299820707796817614262642603473085740098457580220109606901579475732585681642568173024004899896681945586735415632139608287755933690363904
255201754847323454651833075042529220762109732315954379912551652704066974187759640362179786364031091664605995223940681297967199854185091388020162695596843702135738250838251386190581271596481841308826421913837392854121247788607043494451380825116320634294716383386923133624872201277766219251469808731676171550599641415593635228525285206946171480196915160440219213803158951465171363285136346048009799793363891173470831264279216575511867380727808
510403509694646909303666150085058441524219464631908759825103305408133948375519280724359572728062183329211990447881362595934399708370182776040325391193687404271476501676502772381162543192963682617652843827674785708242495577214086988902761650232641268589432766773846267249744402555532438502939617463352343101199282831187270457050570413892342960393830320880438427606317902930342726570272692096019599586727782346941662528558433151023734761455616
1020807019389293818607332300170116883048438929263817519650206610816267896751038561448719145456124366658423980895762725191868799416740365552080650782387374808542953003353005544762325086385927365235305687655349571416484991154428173977805523300465282537178865533547692534499488805111064877005879234926704686202398565662374540914101140827784685920787660641760876855212635805860685453140545384192039199173455564693883325057116866302047469522911232
2041614038778587637214664600340233766096877858527635039300413221632535793502077122897438290912248733316847961791525450383737598833480731104161301564774749617085906006706011089524650172771854730470611375310699142832969982308856347955611046600930565074357731067095385068998977610222129754011758469853409372404797131324749081828202281655569371841575321283521753710425271611721370906281090768384078398346911129387766650114233732604094939045822464
4083228077557175274429329200680467532193755717055270078600826443265071587004154245794876581824497466633695923583050900767475197666961462208322603129549499234171812013412022179049300345543709460941222750621398285665939964617712695911222093201861130148715462134190770137997955220444259508023516939706818744809594262649498163656404563311138743683150642567043507420850543223442741812562181536768156796693822258775533300228467465208189878091644928
8166456155114350548858658401360935064387511434110540157201652886530143174008308491589753163648994933267391847166101801534950395333922924416645206259098998468343624026824044358098600691087418921882445501242796571331879929235425391822444186403722260297430924268381540275995910440888519016047033879413637489619188525298996327312809126622277487366301285134087014841701086446885483625124363073536313593387644517551066600456934930416379756183289856
16332912310228701097717316802721870128775022868221080314403305773060286348016616983179506327297989866534783694332203603069900790667845848833290412518197996936687248053648088716197201382174837843764891002485593142663759858470850783644888372807444520594861848536763080551991820881777038032094067758827274979238377050597992654625618253244554974732602570268174029683402172893770967250248726147072627186775289035102133200913869860832759512366579712
32665824620457402195434633605443740257550045736442160628806611546120572696033233966359012654595979733069567388664407206139801581335691697666580825036395993873374496107296177432394402764349675687529782004971186285327519716941701567289776745614889041189723697073526161103983641763554076064188135517654549958476754101195985309251236506489109949465205140536348059366804345787541934500497452294145254373550578070204266401827739721665519024733159424
65331649240914804390869267210887480515100091472884321257613223092241145392066467932718025309191959466139134777328814412279603162671383395333161650072791987746748992214592354864788805528699351375059564009942372570655039433883403134579553491229778082379447394147052322207967283527108152128376271035309099916953508202391970618502473012978219898930410281072696118733608691575083869000994904588290508747101156140408532803655479443331038049466318848
130663298481829608781738534421774961030200182945768642515226446184482290784132935865436050618383918932278269554657628824559206325342766790666323300145583975493497984429184709729577611057398702750119128019884745141310078867766806269159106982459556164758894788294104644415934567054216304256752542070618199833907016404783941237004946025956439797860820562145392237467217383150167738001989809176581017494202312280817065607310958886662076098932637696
261326596963659217563477068843549922060400365891537285030452892368964581568265871730872101236767837864556539109315257649118412650685533581332646600291167950986995968858369419459155222114797405500238256039769490282620157735533612538318213964919112329517789576588209288831869134108432608513505084141236399667814032809567882474009892051912879595721641124290784474934434766300335476003979618353162034988404624561634131214621917773324152197865275392
522653193927318435126954137687099844120800731783074570060905784737929163136531743461744202473535675729113078218630515298236825301371067162665293200582335901973991937716738838918310444229594811000476512079538980565240315471067225076636427929838224659035579153176418577663738268216865217027010168282472799335628065619135764948019784103825759191443282248581568949868869532600670952007959236706324069976809249123268262429243835546648304395730550784
1045306387854636870253908275374199688241601463566149140121811569475858326273063486923488404947071351458226156437261030596473650602742134325330586401164671803947983875433477677836620888459189622000953024159077961130480630942134450153272855859676449318071158306352837155327476536433730434054020336564945598671256131238271529896039568207651518382886564497163137899737739065201341904015918473412648139953618498246536524858487671093296608791461101568
2090612775709273740507816550748399376483202927132298280243623138951716652546126973846976809894142702916452312874522061192947301205484268650661172802329343607895967750866955355673241776918379244001906048318155922260961261884268900306545711719352898636142316612705674310654953072867460868108040673129891197342512262476543059792079136415303036765773128994326275799475478130402683808031836946825296279907236996493073049716975342186593217582922203136
4181225551418547481015633101496798752966405854264596560487246277903433305092253947693953619788285405832904625749044122385894602410968537301322345604658687215791935501733910711346483553836758488003812096636311844521922523768537800613091423438705797272284633225411348621309906145734921736216081346259782394685024524953086119584158272830606073531546257988652551598950956260805367616063673893650592559814473992986146099433950684373186435165844406272
8362451102837094962031266202993597505932811708529193120974492555806866610184507895387907239576570811665809251498088244771789204821937074602644691209317374431583871003467821422692967107673516976007624193272623689043845047537075601226182846877411594544569266450822697242619812291469843472432162692519564789370049049906172239168316545661212147063092515977305103197901912521610735232127347787301185119628947985972292198867901368746372870331688812544
16724902205674189924062532405987195011865623417058386241948985111613733220369015790775814479153141623331618502996176489543578409643874149205289382418634748863167742006935642845385934215347033952015248386545247378087690095074151202452365693754823189089138532901645394485239624582939686944864325385039129578740098099812344478336633091322424294126185031954610206395803825043221470464254695574602370239257895971944584397735802737492745740663377625088
33449804411348379848125064811974390023731246834116772483897970223227466440738031581551628958306283246663237005992352979087156819287748298410578764837269497726335484013871285690771868430694067904030496773090494756175380190148302404904731387509646378178277065803290788970479249165879373889728650770078259157480196199624688956673266182644848588252370063909220412791607650086442940928509391149204740478515791943889168795471605474985491481326755250176
66899608822696759696250129623948780047462493668233544967795940446454932881476063163103257916612566493326474011984705958174313638575496596821157529674538995452670968027742571381543736861388135808060993546180989512350760380296604809809462775019292756356554131606581577940958498331758747779457301540156518314960392399249377913346532365289697176504740127818440825583215300172885881857018782298409480957031583887778337590943210949970982962653510500352
133799217645393519392500259247897560094924987336467089935591880892909865762952126326206515833225132986652948023969411916348627277150993193642315059349077990905341936055485142763087473722776271616121987092361979024701520760593209619618925550038585512713108263213163155881916996663517495558914603080313036629920784798498755826693064730579394353009480255636881651166430600345771763714037564596818961914063167775556675181886421899941965925307021000704
267598435290787038785000518495795120189849974672934179871183761785819731525904252652413031666450265973305896047938823832697254554301986387284630118698155981810683872110970285526174947445552543232243974184723958049403041521186419239237851100077171025426216526426326311763833993327034991117829206160626073259841569596997511653386129461158788706018960511273763302332861200691543527428075129193637923828126335551113350363772843799883931850614042001408
535196870581574077570001036991590240379699949345868359742367523571639463051808505304826063332900531946611792095877647665394509108603972774569260237396311963621367744221940571052349894891105086464487948369447916098806083042372838478475702200154342050852433052852652623527667986654069982235658412321252146519683139193995023306772258922317577412037921022547526604665722401383087054856150258387275847656252671102226700727545687599767863701228084002816
1070393741163148155140002073983180480759399898691736719484735047143278926103617010609652126665801063893223584191755295330789018217207945549138520474792623927242735488443881142104699789782210172928975896738895832197612166084745676956951404400308684101704866105705305247055335973308139964471316824642504293039366278387990046613544517844635154824075842045095053209331444802766174109712300516774551695312505342204453401455091375199535727402456168005632
2140787482326296310280004147966360961518799797383473438969470094286557852207234021219304253331602127786447168383510590661578036434415891098277040949585247854485470976887762284209399579564420345857951793477791664395224332169491353913902808800617368203409732211410610494110671946616279928942633649285008586078732556775980093227089035689270309648151684090190106418662889605532348219424601033549103390625010684408906802910182750399071454804912336011264
4281574964652592620560008295932721923037599594766946877938940188573115704414468042438608506663204255572894336767021181323156072868831782196554081899170495708970941953775524568418799159128840691715903586955583328790448664338982707827805617601234736406819464422821220988221343893232559857885267298570017172157465113551960186454178071378540619296303368180380212837325779211064696438849202067098206781250021368817813605820365500798142909609824672022528
8563149929305185241120016591865443846075199189533893755877880377146231408828936084877217013326408511145788673534042362646312145737663564393108163798340991417941883907551049136837598318257681383431807173911166657580897328677965415655611235202469472813638928845642441976442687786465119715770534597140034344314930227103920372908356142757081238592606736360760425674651558422129392877698404134196413562500042737635627211640731001596285819219649344045056
17126299858610370482240033183730887692150398379067787511755760754292462817657872169754434026652817022291577347068084725292624291475327128786216327596681982835883767815102098273675196636515362766863614347822333315161794657355930831311222470404938945627277857691284883952885375572930239431541069194280068688629860454207840745816712285514162477185213472721520851349303116844258785755396808268392827125000085475271254423281462003192571638439298688090112
34252599717220740964480066367461775384300796758135575023511521508584925635315744339508868053305634044583154694136169450585248582950654257572432655193363965671767535630204196547350393273030725533727228695644666630323589314711861662622444940809877891254555715382569767905770751145860478863082138388560137377259720908415681491633424571028324954370426945443041702698606233688517571510793616536785654250000170950542508846562924006385143276878597376180224
68505199434441481928960132734923550768601593516271150047023043017169851270631488679017736106611268089166309388272338901170497165901308515144865310386727931343535071260408393094700786546061451067454457391289333260647178629423723325244889881619755782509111430765139535811541502291720957726164276777120274754519441816831362983266849142056649908740853890886083405397212467377035143021587233073571308500000341901085017693125848012770286553757194752360448
137010398868882963857920265469847101537203187032542300094046086034339702541262977358035472213222536178332618776544677802340994331802617030289730620773455862687070142520816786189401573092122902134908914782578666521294357258847446650489779763239511565018222861530279071623083004583441915452328553554240549509038883633662725966533698284113299817481707781772166810794424934754070286043174466147142617000000683802170035386251696025540573107514389504720896
274020797737765927715840530939694203074406374065084600188092172068679405082525954716070944426445072356665237553089355604681988663605234060579461241546911725374140285041633572378803146184245804269817829565157333042588714517694893300979559526479023130036445723060558143246166009166883830904657107108481099018077767267325451933067396568226599634963415563544333621588849869508140572086348932294285234000001367604340070772503392051081146215028779009441792
548041595475531855431681061879388406148812748130169200376184344137358810165051909432141888852890144713330475106178711209363977327210468121158922483093823450748280570083267144757606292368491608539635659130314666085177429035389786601959119052958046260072891446121116286492332018333767661809314214216962198036155534534650903866134793136453199269926831127088667243177699739016281144172697864588570468000002735208680141545006784102162292430057558018883584
1096083190951063710863362123758776812297625496260338400752368688274717620330103818864283777705780289426660950212357422418727954654420936242317844966187646901496561140166534289515212584736983217079271318260629332170354858070779573203918238105916092520145782892242232572984664036667535323618628428433924396072311069069301807732269586272906398539853662254177334486355399478032562288345395729177140936000005470417360283090013568204324584860115116037767168
2192166381902127421726724247517553624595250992520676801504737376549435240660207637728567555411560578853321900424714844837455909308841872484635689932375293802993122280333068579030425169473966434158542636521258664340709716141559146407836476211832185040291565784484465145969328073335070647237256856867848792144622138138603615464539172545812797079707324508354668972710798956065124576690791458354281872000010940834720566180027136408649169720230232075534336
4384332763804254843453448495035107249190501985041353603009474753098870481320415275457135110823121157706643800849429689674911818617683744969271379864750587605986244560666137158060850338947932868317085273042517328681419432283118292815672952423664370080583131568968930291938656146670141294474513713735697584289244276277207230929078345091625594159414649016709337945421597912130249153381582916708563744000021881669441132360054272817298339440460464151068672
8768665527608509686906896990070214498381003970082707206018949506197740962640830550914270221646242315413287601698859379349823637235367489938542759729501175211972489121332274316121700677895865736634170546085034657362838864566236585631345904847328740161166263137937860583877312293340282588949027427471395168578488552554414461858156690183251188318829298033418675890843195824260498306763165833417127488000043763338882264720108545634596678880920928302137344
17537331055217019373813793980140428996762007940165414412037899012395481925281661101828540443292484630826575203397718758699647274470734979877085519459002350423944978242664548632243401355791731473268341092170069314725677729132473171262691809694657480322332526275875721167754624586680565177898054854942790337156977105108828923716313380366502376637658596066837351781686391648520996613526331666834254976000087526677764529440217091269193357761841856604274688