MATH 3600 2020-10-30 Recursion

396 days ago by calkin

def f(n): if n>1: return(f(n-1)+f(n-2)) elif n==1: return(1) elif n==0: return(0) 
       
f(10) 
       
55
55
f(20) 
       
6765
6765
f(30) 
       
832040
832040
f(40) 
       
def g(n): if type(n)==Integer and n>1: i=1 a=0 b=1 while i<=n: c=a+b a=b b=c i+=1 return(a) elif n==0: return(0) elif n==1: return(1) 
       
n=100 type(n)==Integer 
       
True
True
g(3) 
       
2
2
g(100) 
       
354224848179261915075
354224848179261915075
g(1000) 
       
434665576869374564356885276750406258025646605173717804024817290895365554\
179490518904038798400792551692959225930803226347752096896232398733224711\
61642996440906533187938298969649928516003704476137795166849228875
43466557686937456435688527675040625802564660517371780402481729089536555417949051890403879840079255169295922593080322634775209689623239873322471161642996440906533187938298969649928516003704476137795166849228875
g(10000) 
       
336447648764317832666216120051075433103021484606800639065647699746800814\
421666623681555955136337340255820653326808361593737347904838652682630408\
924630564318873545443695598274916066020998841839338646527313000888302692\
356736131351175792974378544137521305205043477016022647583189065278908551\
543661595829872796829875106312005754287834532155151038708182989697916131\
278562650331954871402142875326981879620469360978799003509623022910263681\
314931952756302278376284415403605844025721143349611800230912082870460889\
239623288354615057765832712525460935911282039252853934346209042452489294\
039017062338889910858410651831733604374707379085526317643257339937128719\
375877468974799263058370657428301616374089691784263786242128352581128205\
163702980893320999057079200643674262023897831114700540749984592503606335\
609338838319233867830561364353518921332797329081337326426526339897639227\
234078829281779535805709936910491754708089318410561463223382174656373212\
482263830921032977016480547262438423748624114530938122065649140327510866\
433945175121615265453613331113140424368548051067658434935238369596534280\
717687753283482343455573667197313927462736291082106792807847180353291311\
767789246590899386354593278945237776744061922403376386740040213303432974\
969020283281459334188268176838930720036347956231171031012919531697946076\
327375892535307725523759437884345040677155557790564504430166401194625809\
722167297586150269684431469520346149322911059706762432685159928347098912\
847067408620085871350162603120719031720860940812983215810772820763531866\
246112782455372085323653057759564300725177443150515396009051686032203491\
632226408852488524331580515348496224348482993809050704834824493274537326\
245677558790891871908036620580095947431500524025327097469953187707243768\
259074199396322659841474981936092852239450397071654431564213281576889080\
587831834049174345562705202235648464951961124602683139709750693826487066\
132645076650746115126775227486215986425307112984411826226610571635150692\
600298617049454250474913781151541399415506712562711971332527636319396069\
028956502882686083622410820505624307017949761711212330660733100599473668\
75
33644764876431783266621612005107543310302148460680063906564769974680081442166662368155595513633734025582065332680836159373734790483865268263040892463056431887354544369559827491606602099884183933864652731300088830269235673613135117579297437854413752130520504347701602264758318906527890855154366159582987279682987510631200575428783453215515103870818298969791613127856265033195487140214287532698187962046936097879900350962302291026368131493195275630227837628441540360584402572114334961180023091208287046088923962328835461505776583271252546093591128203925285393434620904245248929403901706233888991085841065183173360437470737908552631764325733993712871937587746897479926305837065742830161637408969178426378624212835258112820516370298089332099905707920064367426202389783111470054074998459250360633560933883831923386783056136435351892133279732908133732642652633989763922723407882928177953580570993691049175470808931841056146322338217465637321248226383092103297701648054726243842374862411453093812206564914032751086643394517512161526545361333111314042436854805106765843493523836959653428071768775328348234345557366719731392746273629108210679280784718035329131176778924659089938635459327894523777674406192240337638674004021330343297496902028328145933418826817683893072003634795623117103101291953169794607632737589253530772552375943788434504067715555779056450443016640119462580972216729758615026968443146952034614932291105970676243268515992834709891284706740862008587135016260312071903172086094081298321581077282076353186624611278245537208532365305775956430072517744315051539600905168603220349163222640885248852433158051534849622434848299380905070483482449327453732624567755879089187190803662058009594743150052402532709746995318770724376825907419939632265984147498193609285223945039707165443156421328157688908058783183404917434556270520223564846495196112460268313970975069382648706613264507665074611512677522748621598642530711298441182622661057163515069260029861704945425047491378115154139941550671256271197133252763631939606902895650288268608362241082050562430701794976171121233066073310059947366875
g(100000) 
       
259740693472217241661550340212759154148804853865176965847247707039525345\
435112736862655567728367167447546375872230744321116383994738750910309656\
973821883044930522876385313349213530267927895670105127657827163560807305\
053220024323311438398651613782723812477745377833729991621463405005466986\
039086275099663936640921189012527196017210506030035058689402855810367511\
765825136837743868493641345733883436515877542537191241050033219599133006\
220436303521375652542182399869084855637408017925176162939175496345855861\
630076281991608110983652635299544069428420657104604490380564713634603300\
052085227770755444679472370903097901901486043284681985796101595100185060\
826491923458731339915013391993236310230186417253647713626647508013398243\
123170343145296418179005118795731676683497990168201184990775668645684506\
628739248560391404760519955006628882634587718941068037009187936500173301\
171002831047394745625609144493282137485557386408057981302826664027035429\
441210491999580313187680589918651342517595991152056315533770399694103551\
827527491995980225750790203779810308992298499630449625581404551700025029\
976432219346216536621084187674542829826139823447836658158804081900330738\
293950008213200937471548513102722081730543226486694963098791471436292555\
425262404399961532697987680751064681906879211829916796440917827186856170\
291810221267926740136265049978496884368097525470013100457418640644829948\
587255174474669565187912691699324456481767332225714931496776334584662383\
033382023970243685947828764187578857291071013370030009422933359729277919\
140921280490154597626279105705524815888405177941819290521676957660874881\
556786012881835435429230739781015478570132843861272862017665395344499300\
198006295389369855007232866513171811358866135374726845854325489811371766\
051946169379168844253425947812631038895204795659438071530191125396484711\
263890071336285691015514534233294412843572209962867461194209516610023097\
407099655319005081586699114454426478828726428450172533204864831945789203\
998489382363674561822037509734856684743388724904933703163382657176072977\
889179891366732519062324711803728017392157239082276922807729245666275053\
833750069260772105936194212689203025674435653780083183063759333450235025\
697290651528532719436775601566603991640488256396769307929050295148869341\
379912517485666707471751493897903865333813953468483780861267375543838211\
084489765383684831825883633991731045585090566384620250146313118310874290\
772926221594302042915947403061018398168550669502619737615085717611994758\
757221298720531206079186498036159609233959410411863516885488391191851790\
615115627529361584900087215019222651178531508925102752804515123860379218\
469212153382928713692432152733271415747882959026015719548531644479454675\
028584023600023834479052034510803328201380388070898073483262012279526336\
067736698757833262548594490602191736886778624112056210983698501972901771\
578011204045864915393511578349954610063663574544850824188827906753135995\
051920622297601537652979730858816487311730823705982848940448740393205359\
293597645416556079547247786202996923295613897198946794221872736051233655\
952113310877875822887959758032045960847902450638519417431261637751045992\
110248687949634170686209290889306852523480569259983337751039010131661781\
230511457193270662916712544651215174680254819035835168897170757067786561\
880082203468363210181302623299602759940357999777404624495211453158837035\
790448329315000724617341735580556783215345434117002025856080916629419863\
740151456957227283692196322951118776253075340259478144820465746028848550\
006280693481139827601685558407954216205754355729151064153759293902288435\
612079264370556006236798654438246437394697247194599655579550583803482559\
783968277608473153025178895171863072276110363050936007426226171736305861\
329154402469543290461625869177463057850767493748799232918175016348406881\
346553437099758935360740517290941269765759329515681862474712763646883655\
175701835341727466260730651045119576286634992284867878059108511898565355\
543495876166401644758802863362970404628909706773625658430023531474946123\
391206863214663708784469921042754156941091224656857120471724113337848981\
676409692498163342117685715031167104006817530319211541561195804257065869\
312727621371069747222602965552461105371555453249975084327520019921430191\
050536299600704296329780510306665063878626815765877268374512897685079636\
637105938091122542883583919412115477375998130192165095214013330607098731\
373292651816922684506344395405672981203154639232498179378046910379342216\
949522910079302994923750729932506305094281390279308413447306141164335561\
476409310442591848136393054236937897652052645634764831827263337151211203\
062923388928648794920973784786188486826080464731953920084039830800880386\
904955741975621929392211082576639768136104449002472094834032679676883762\
139674407571388729286307982184931434387977808873795889684094614341592713\
175783651145782893558185990292353438888884658745213083813777944363611976\
283903689459576012031650227985790154534474735270697285145459986142290273\
729113146378204551622544753535677362279364854503571020864454120898423503\
890877022303984938021473480968743333622544915011741175157070456105089527\
400020638049796796040261781866448124854726963082347337724554339051984130\
876978127656591676422902294818176307571025579336500815228638363449313808\
997178508707086363220586901893837776606300606675773242727292924742129526\
500070664672273000995612419140913898467522495579072939849560875045669421\
777155110734663045660394413623588844367621527392859707228793735596672392\
461382746870321785845994825751474540643646099705931612059684156047323439\
665245723165031779283386059038836041769142873273570398680334260467007171\
736357309112298130690328613712259793709660577517296452826375743407579228\
218074435290866960685402171859789116633386385858973620911424843217864503\
947919542420819162608857106911043399480147301310086984886643072121676247\
311961819073782076658296828079607948225954903632826657800699485682530053\
643667482253460370513450360315215429694399186623685763806235120988444874\
113860017117364763212602996140856192559970756682786677873237741944446227\
539990929104469771647615111867232723867920813336730618194484939660712334\
527185652025364362196419878275297881306008031314181706931446822118927578\
497828109436775154071010635055379800384221904550848223938699329692665922\
111274269813306230007346562849809363669304944680162855371263341262037849\
191949860009720083672787665078688630693341899522576831439083248488634031\
894019416103697984383334660867670943164365353843091215781554351285207772\
085809890209958644960247949197068723076568710923438071950982481447315781\
378008063935841875665509850132188285284018498140769073850736953537771188\
038852893534760093033859869160828933542114772293656190727626460372602723\
932099118782040706741227225812076672904007192423793033097213236418409395\
610299597129179982829000953914738243780277905111203095458253288872114617\
013344038593965404780619933322454731780340734090251213021727959575386315\
814881039295247541094388055509838262763312760671812617102201135618180077\
540022751673414416921642497317562136312858828197800578883245453458152243\
493726813343399771051253208147834506713983503833290131394598648182027232\
204334193092901190783289656922287833749735430156172282911562732946881485\
328192210075237362682764315268573549322302801810144964900901552924863833\
888566489300225097434360120081436515362536919944670971112695196672578006\
189121544022248756460155463281209194582465355743204764421265079065520820\
833797607146512750832048716527157747232588727576112835759213255393444628\
943325810502863358366929182856689473622350825029496406579863080961434169\
683046759517435531322436266420719760845902426301747339222529124836631642\
800655287097505199750491300985946807101360233644016440017918861085323076\
499171437205446782359721176046515320016308533631935158964589068172237281\
231032027189791795127279965605369403211124284659099455638021546131610626\
752163380566439431888126819949400553706869762185523185892110096344101293\
353573391845966819753983428469682288946007635203168892200202193131836975\
755696206111577430582630553586201563789124603122067293399261737837962515\
099993540364873142320887397796890890836999629299539197721779653342124929\
197838375146006205496734166283348734101109777053589806649813601139557158\
432830871394058253527405608101150390794168807919721293314830307263867863\
141103844312821599493682434299818871976863760449634259752425688618868897\
898088831586507626260485646500432289685614925506396881140440042950389424\
587238223354310107869151732833360477926272776568607617770561687405025774\
374998377583014385613542727383858977413352694916548392972151955479357892\
386676250274537010466090938244962662693532130374453889247921616118888970\
207791044856319951482663080287954954645358386630734442375331971227915886\
170728965209014984830543598320077132665340729066201677570640969018377120\
130682324533347796666052532549087360196148037824156607127165038358225728\
921570820936951099589013285949072430618332575520120809000717502202294974\
280182344541371191629844991472225419659468222146826064496183925424967090\
310400758148885797167224632288701643840390846385673116430816953732679030\
311458368057502111963990561516915470851045970054209857179731801556474140\
617233414584711126854792989244300139146828910367917921697861658248900732\
203359137670652767652130714398530276098847805621699465965546137917498565\
973922737941672649537780199209835542786617912312669937473077773056932443\
016683933301155451554265686493749212868704912175424596783113296924849246\
674426199903397282567487346020115044222878046612432018301610823218390865\
477104239822853131655968568800522657147442882331753945654388192862443266\
250334538819959008510521138312449186180262443219554043398572284134125440\
941177172215686708629174212405311062052284298619927362940620883475485364\
512812327960909721395377536002307676569420821994303464878334854449271353\
945022459133437466493770165560576338469706291872574542650587941463017663\
976045747431108155674709165270874812526715991379324052730461369396116989\
258980831190632251077792856207199945948770061180100229613230458829455844\
095249661115834280490864386088079644055776369185774375402589685592725251\
456340438521782589059955395462745138545445291676104296926797089358005623\
450191857148903041849576740081935997321871195749635709596782517109626475\
206889080640765144589313287076745416960710793169270428516809341331104635\
350624220981036321677191042078616218421376393819462569728678141363638962\
012397691046541895680619732314841422455007161721585132130203068417608721\
589270209887910893808104590339727654732641691684544562760075956136710358\
457564909443069245253208500309106878315756151984756756919128478465469255\
866511155791346127242533608363513134218390517715451122846445513601601351\
322894854327150476083930755610090878609666387061227869027483181933160670\
148495716300470526222823840626681844878837454813199438038761383012885988\
526420199228618820849958864088852135250145761539648264745102590253074317\
295689963649961570755185583716593536712544851508936290456773663003556245\
737477910098799249914696722404148160128953094401548894261378314008780431\
143174185807182618514905113874483135843906722894940825828602165028892722\
838742643278616869038196053015589445945180873519724600822152934398082825\
412612825715720935098538280073856047291094118400608448523537783350330686\
197772450188636407034497336647310060201812879288699186182441845396899477\
725948216913713364747045317297980924584436112961899759569624097184556402\
051143258959184472492094293030165148871307980210237906553652515478029805\
940752944051314580755153779486163587990115819201980887969496718744822415\
683646353432616024263293476163445816389016380512389418452397342184149688\
926239848964864209340981668149477115517700956266902985010151353759980127\
250124197111987152659374748477893548877781519293117143116744477388294106\
461502875132770947450476392287489066298984154025935083403514203513616881\
924823899802770666691634213342431205450735938861668769118818577611813577\
133248396520988208598239129860638682280475436240895652292141085985203733\
054462595326134023486468927506052689375514840329854208699122105259700562\
857670770256769530097897004640892000985210698029541969980213805329579815\
947828993444324549156532784522384055124044520822643542065631331070294072\
237155277050426348207398445488958924886139765707914541442765358457295132\
971909194769441191096679747426267559095383203916967349426136003226307742\
868410504006135105219441377815809500571452684600981035210924904002795805\
073643696102124113773971716486952549311480504012656835126882959841398322\
267637780450062650724173175739521979689075482519932925964980162706866565\
803017887740561516715973192732047937624737550585505283966029456699252217\
360087408121201420907104193759857172143133801742514158249182471090508471\
597724941704932025416523932323325885158889333709713631089257153141776197\
832603375010902628406641580137135935652927808845630595177008144399411467\
429185036074885236665474486992808323051681571160291183637414795849210086\
052898146954775081233889694315286102120273674704990393041703517134212692\
348670056662750622905863691188222890317051030540688209697087554532936943\
406398129769647803182545164217834734771647105842323859458018305275621391\
018699760430584406866571234686967945604415574210003917975834897993588275\
188152467593087892815924349219754538766830568466842077540982178124705335\
452319479739895332017598864028105882555769800439712053831245942895737769\
600185749733524996501350936892595802186381172590650643688212715681575102\
171290076599275037022828396396291597325117341858672102349731776596945428\
362551937155600914368032931196284254662840314244437064843239037490641081\
130079284895576724348120009030988845727090775087363887329964255505047381\
252897596293482287891761992072513830938828829251041683762275820408191893\
360365387528411678570372098971883298692192781662967584458017491180911966\
304818743415506779086394883148924150430047670452797128348221152220283706\
285731424410782379251364508667756662280497721139714062166411632475678421\
661296147710901882609467737768640617672148429389497667138012278894130902\
655351109611834701256519754080709538406091686393690667378662720942943426\
426040290215831734500372746258899262204987712117840556334849249032600350\
856909938239277729749841356561483078826236332236838070982234601227424137\
903647345173592521575475716093427093519290172395492142649069111527152333\
810912404281210289373848816735895393450893069771552298919969890388588327\
540904430032198683400347027122002015969937169065033054757709539874858067\
002449104550489006172718916803139452803616563394157133463722255047754746\
075605502410876438212168884891694037125890194849068537972224456200948381\
949153272450227621858916950740579498375982100660448199651936011026157694\
717620257170204868491461689406840414083358756211831921083800563214456201\
894150594578002531874747191160484067799776541483062217906933085387512929\
898300958027755414543505876898494417913653589162009872522204905518355460\
370653318317671611073800978662524748869147607766447014719307447630241166\
033567176556487444057799053199627163297200910944924921645603061882777294\
775076477744645258632891915910744425232008291820951802108370035388133098\
321589460868012795422475207192413464833496391509481309754143324420929993\
075148107791900234612812233016179942993061880053341455063393213933964686\
161641695522021644799541724317116574447136419773320489936507476784414992\
954807302585644294238178764150649287836176797867715851078423570264021338\
801887560198923405686842321558562850864552525837701062053222424498799062\
526348401077432248817255860223330207639993385415201534384772544291789513\
063705032044491779775237087195827797679968611362653229111862963116468515\
993466069346055754595606315583003369763400027668515129384363888609082837\
614115773200352756515874590656702543943793110483857131329449060492658236\
310894953509008267315449722639664808861804157397788847289217461897418972\
170077000986244965375901272701522763451087490694801221068495206300251901\
165596358055242918020558690425968526104741283451846673693858002770025296\
535636672161988367242822693395032593039099458316866554223465485702087550\
461752052185372156728267990341813552060299989536647010655790053212954133\
692447249221243632452304289518846177912233806967423398069488727058750338\
922839509513520912310925815900696039515636773606710905056629960357187642\
324792075283616080559769777875647676721052122232718482148444663126148758\
422609260887576433173102326376886482259469121103236773755812213347055680\
595800831012748167396201958359802396741448986727684586981937678375716793\
672321308158619104599505897099106468691946344803857414382962954713137217\
366983618455814450574867612432245151994336218291619146802609112179300186\
478805006135160314435007618921344160248809174105123229035717920549792797\
092450247994084269615881844261616378004475947821224087320412442116919980\
557264911824366192183571476289142580577187174368800032411300870481937396\
229501714309009847692723749887593863994253059533160789161881086350598244\
457894279934651491595288486975748802582335357167786482682805114088542973\
278819776573696600572770016259240430168865994686298371727059580980873090\
182012093100343005879655269478804980920548430546761103465474806729067439\
976361259243463771999584386281239198547020241488007688081884808789239159\
136946329311327684932977720164664172758725912235478448081343332805008775\
885526468611957696217223930869379575716582185241620434197238398993273480\
342926234072233815510220910126294924974242327169884202329730326016179057\
567311123546589029829831311512360760677396899815381228699964201460985257\
979369124601634608876232128620563421590147918863219465963748348256429161\
627853294823931322944023104327728876813955021334826638868745325928158785\
450389099156194963247885503509028939097371898800399902613201587267863787\
309567810962531100805448941885798356590206368069964316503391202994432772\
677086930524071841659207009613928640196672575008701221814973313369580960\
036975176495135004028592624920339811101495322753362184450074433156243453\
248421798610834626134589759123483997075185422328167718721595682724324591\
082901988639036978454262256691254274705609756798485713662367902387847816\
120147798293908051315025817452377352951016529693456278612224115078358775\
537334837276443983808200066721474003446632277691893696761287898348894209\
468810230842703645285450496675969731883604449670285319063739691635798092\
886571993539772349548678718041640141528148944378503629107151780528585758\
398771114547424015641647719411639135493546675559359260884920054638468540\
302808093641725058365336809340722531082084472357022680982695142616245120\
404071150144874785619992281466456589393848802864382231384985232845236066\
704580511367966375103924816333617327454727577563681097734453927582756059\
742516070546868965779453052160231593986578097480151541498709777807870535\
705800847237689242218975031275852714017311762127989874495840619984391336\
568029772120875193498850449971391428515803232482302134063031258607262454\
163776523450552205108631828535965852070817339270956644501140405510657905\
503741778039335165836090454304772142228181683253961363498252521523225769\
092025421640965745261806605177790159290288424059999888275369195754011695\
469615227040128085757976615472219292565596399182094889464265751228876633\
030213374636744921744935163710472573298083281272646818775935658421838359\
470279201366390768974173896225257578266399080979264701140758036785059938\
188718456009469583327077512618128201539104177395091824413756199993781924\
036246955823592417147870277944844310875190180741411029037070605208516297\
579836175425104164224486757735075633801889537926318338985595595652785722\
792615552449473936366553390452865621546428834316228292112329045184221253\
288810141588406161993919504223005989834996656946358018681671707481882321\
584864773438678091156466075517538555222442852404946803369229998930078390\
002069012151774069642857393019691050098827852305379763794025796895329511\
243616677891058555721338178908994545394791592737495860026823784448687203\
724348883461685629009785053249703693336194243980288236432355380820800387\
574171096928972549987856625304886703309515051845212694498925159639207942\
145260650851605232561486193828248983800081508535156464276170083209648311\
794440197178014921334533590333667237671922972206997076605548245224741692\
777463752213520171623172213763244569915402239549415822741893058991174693\
177377651873585003231801443288391637424379585469569122177409894861151556\
404660956509453811552092186371151868456254327504787053000699842314018016\
942110910592549359611671945763096232883127126832850176032177168040024965\
767418692711321557327004993570994232441638708924242758440765121557267603\
792476534180898431267694111031316595142947937767069888124964342193328740\
439048553822216083708890759827739018420413819781102585453708858670145062\
357851396010998747605253545010043935306207243970997644514679099338144899\
464460978095773195360493873495002686056455569322422969181563029392248760\
647087343116638420544248962876021365024699189304011251310383508562190806\
027086660487358584900170420092392978919393812511679842178811520925913043\
557232163566089560351438388393901895316627435560997001569978028923636234\
9895374653428746875
2597406934722172416615503402127591541488048538651769658472477070395253454351127368626555677283671674475463758722307443211163839947387509103096569738218830449305228763853133492135302679278956701051276578271635608073050532200243233114383986516137827238124777453778337299916214634050054669860390862750996639366409211890125271960172105060300350586894028558103675117658251368377438684936413457338834365158775425371912410500332195991330062204363035213756525421823998690848556374080179251761629391754963458558616300762819916081109836526352995440694284206571046044903805647136346033000520852277707554446794723709030979019014860432846819857961015951001850608264919234587313399150133919932363102301864172536477136266475080133982431231703431452964181790051187957316766834979901682011849907756686456845066287392485603914047605199550066288826345877189410680370091879365001733011710028310473947456256091444932821374855573864080579813028266640270354294412104919995803131876805899186513425175959911520563155337703996941035518275274919959802257507902037798103089922984996304496255814045517000250299764322193462165366210841876745428298261398234478366581588040819003307382939500082132009374715485131027220817305432264866949630987914714362925554252624043999615326979876807510646819068792118299167964409178271868561702918102212679267401362650499784968843680975254700131004574186406448299485872551744746695651879126916993244564817673322257149314967763345846623830333820239702436859478287641875788572910710133700300094229333597292779191409212804901545976262791057055248158884051779418192905216769576608748815567860128818354354292307397810154785701328438612728620176653953444993001980062953893698550072328665131718113588661353747268458543254898113717660519461693791688442534259478126310388952047956594380715301911253964847112638900713362856910155145342332944128435722099628674611942095166100230974070996553190050815866991144544264788287264284501725332048648319457892039984893823636745618220375097348566847433887249049337031633826571760729778891798913667325190623247118037280173921572390822769228077292456662750538337500692607721059361942126892030256744356537800831830637593334502350256972906515285327194367756015666039916404882563967693079290502951488693413799125174856667074717514938979038653338139534684837808612673755438382110844897653836848318258836339917310455850905663846202501463131183108742907729262215943020429159474030610183981685506695026197376150857176119947587572212987205312060791864980361596092339594104118635168854883911918517906151156275293615849000872150192226511785315089251027528045151238603792184692121533829287136924321527332714157478829590260157195485316444794546750285840236000238344790520345108033282013803880708980734832620122795263360677366987578332625485944906021917368867786241120562109836985019729017715780112040458649153935115783499546100636635745448508241888279067531359950519206222976015376529797308588164873117308237059828489404487403932053592935976454165560795472477862029969232956138971989467942218727360512336559521133108778758228879597580320459608479024506385194174312616377510459921102486879496341706862092908893068525234805692599833377510390101316617812305114571932706629167125446512151746802548190358351688971707570677865618800822034683632101813026232996027599403579997774046244952114531588370357904483293150007246173417355805567832153454341170020258560809166294198637401514569572272836921963229511187762530753402594781448204657460288485500062806934811398276016855584079542162057543557291510641537592939022884356120792643705560062367986544382464373946972471945996555795505838034825597839682776084731530251788951718630722761103630509360074262261717363058613291544024695432904616258691774630578507674937487992329181750163484068813465534370997589353607405172909412697657593295156818624747127636468836551757018353417274662607306510451195762866349922848678780591085118985653555434958761664016447588028633629704046289097067736256584300235314749461233912068632146637087844699210427541569410912246568571204717241133378489816764096924981633421176857150311671040068175303192115415611958042570658693127276213710697472226029655524611053715554532499750843275200199214301910505362996007042963297805103066650638786268157658772683745128976850796366371059380911225428835839194121154773759981301921650952140133306070987313732926518169226845063443954056729812031546392324981793780469103793422169495229100793029949237507299325063050942813902793084134473061411643355614764093104425918481363930542369378976520526456347648318272633371512112030629233889286487949209737847861884868260804647319539200840398308008803869049557419756219293922110825766397681361044490024720948340326796768837621396744075713887292863079821849314343879778088737958896840946143415927131757836511457828935581859902923534388888846587452130838137779443636119762839036894595760120316502279857901545344747352706972851454599861422902737291131463782045516225447535356773622793648545035710208644541208984235038908770223039849380214734809687433336225449150117411751570704561050895274000206380497967960402617818664481248547269630823473377245543390519841308769781276565916764229022948181763075710255793365008152286383634493138089971785087070863632205869018938377766063006066757732427272929247421295265000706646722730009956124191409138984675224955790729398495608750456694217771551107346630456603944136235888443676215273928597072287937355966723924613827468703217858459948257514745406436460997059316120596841560473234396652457231650317792833860590388360417691428732735703986803342604670071717363573091122981306903286137122597937096605775172964528263757434075792282180744352908669606854021718597891166333863858589736209114248432178645039479195424208191626088571069110433994801473013100869848866430721216762473119618190737820766582968280796079482259549036328266578006994856825300536436674822534603705134503603152154296943991866236857638062351209884448741138600171173647632126029961408561925599707566827866778732377419444462275399909291044697716476151118672327238679208133367306181944849396607123345271856520253643621964198782752978813060080313141817069314468221189275784978281094367751540710106350553798003842219045508482239386993296926659221112742698133062300073465628498093636693049446801628553712633412620378491919498600097200836727876650786886306933418995225768314390832484886340318940194161036979843833346608676709431643653538430912157815543512852077720858098902099586449602479491970687230765687109234380719509824814473157813780080639358418756655098501321882852840184981407690738507369535377711880388528935347600930338598691608289335421147722936561907276264603726027239320991187820407067412272258120766729040071924237930330972132364184093956102995971291799828290009539147382437802779051112030954582532888721146170133440385939654047806199333224547317803407340902512130217279595753863158148810392952475410943880555098382627633127606718126171022011356181800775400227516734144169216424973175621363128588281978005788832454534581522434937268133433997710512532081478345067139835038332901313945986481820272322043341930929011907832896569222878337497354301561722829115627329468814853281922100752373626827643152685735493223028018101449649009015529248638338885664893002250974343601200814365153625369199446709711126951966725780061891215440222487564601554632812091945824653557432047644212650790655208208337976071465127508320487165271577472325887275761128357592132553934446289433258105028633583669291828566894736223508250294964065798630809614341696830467595174355313224362664207197608459024263017473392225291248366316428006552870975051997504913009859468071013602336440164400179188610853230764991714372054467823597211760465153200163085336319351589645890681722372812310320271897917951272799656053694032111242846590994556380215461316106267521633805664394318881268199494005537068697621855231858921100963441012933535733918459668197539834284696822889460076352031688922002021931318369757556962061115774305826305535862015637891246031220672933992617378379625150999935403648731423208873977968908908369996292995391977217796533421249291978383751460062054967341662833487341011097770535898066498136011395571584328308713940582535274056081011503907941688079197212933148303072638678631411038443128215994936824342998188719768637604496342597524256886188688978980888315865076262604856465004322896856149255063968811404400429503894245872382233543101078691517328333604779262727765686076177705616874050257743749983775830143856135427273838589774133526949165483929721519554793578923866762502745370104660909382449626626935321303744538892479216161188889702077910448563199514826630802879549546453583866307344423753319712279158861707289652090149848305435983200771326653407290662016775706409690183771201306823245333477966660525325490873601961480378241566071271650383582257289215708209369510995890132859490724306183325755201208090007175022022949742801823445413711916298449914722254196594682221468260644961839254249670903104007581488857971672246322887016438403908463856731164308169537326790303114583680575021119639905615169154708510459700542098571797318015564741406172334145847111268547929892443001391468289103679179216978616582489007322033591376706527676521307143985302760988478056216994659655461379174985659739227379416726495377801992098355427866179123126699374730777730569324430166839333011554515542656864937492128687049121754245967831132969248492466744261999033972825674873460201150442228780466124320183016108232183908654771042398228531316559685688005226571474428823317539456543881928624432662503345388199590085105211383124491861802624432195540433985722841341254409411771722156867086291742124053110620522842986199273629406208834754853645128123279609097213953775360023076765694208219943034648783348544492713539450224591334374664937701655605763384697062918725745426505879414630176639760457474311081556747091652708748125267159913793240527304613693961169892589808311906322510777928562071999459487700611801002296132304588294558440952496611158342804908643860880796440557763691857743754025896855927252514563404385217825890599553954627451385454452916761042969267970893580056234501918571489030418495767400819359973218711957496357095967825171096264752068890806407651445893132870767454169607107931692704285168093413311046353506242209810363216771910420786162184213763938194625697286781413636389620123976910465418956806197323148414224550071617215851321302030684176087215892702098879108938081045903397276547326416916845445627600759561367103584575649094430692452532085003091068783157561519847567569191284784654692558665111557913461272425336083635131342183905177154511228464455136016013513228948543271504760839307556100908786096663870612278690274831819331606701484957163004705262228238406266818448788374548131994380387613830128859885264201992286188208499588640888521352501457615396482647451025902530743172956899636499615707551855837165935367125448515089362904567736630035562457374779100987992499146967224041481601289530944015488942613783140087804311431741858071826185149051138744831358439067228949408258286021650288927228387426432786168690381960530155894459451808735197246008221529343980828254126128257157209350985382800738560472910941184006084485235377833503306861977724501886364070344973366473100602018128792886991861824418453968994777259482169137133647470453172979809245844361129618997595696240971845564020511432589591844724920942930301651488713079802102379065536525154780298059407529440513145807551537794861635879901158192019808879694967187448224156836463534326160242632934761634458163890163805123894184523973421841496889262398489648642093409816681494771155177009562669029850101513537599801272501241971119871526593747484778935488777815192931171431167444773882941064615028751327709474504763922874890662989841540259350834035142035136168819248238998027706666916342133424312054507359388616687691188185776118135771332483965209882085982391298606386822804754362408956522921410859852037330544625953261340234864689275060526893755148403298542086991221052597005628576707702567695300978970046408920009852106980295419699802138053295798159478289934443245491565327845223840551240445208226435420656313310702940722371552770504263482073984454889589248861397657079145414427653584572951329719091947694411910966797474262675590953832039169673494261360032263077428684105040061351052194413778158095005714526846009810352109249040027958050736436961021241137739717164869525493114805040126568351268829598413983222676377804500626507241731757395219796890754825199329259649801627068665658030178877405615167159731927320479376247375505855052839660294566992522173600874081212014209071041937598571721431338017425141582491824710905084715977249417049320254165239323233258851588893337097136310892571531417761978326033750109026284066415801371359356529278088456305951770081443994114674291850360748852366654744869928083230516815711602911836374147958492100860528981469547750812338896943152861021202736747049903930417035171342126923486700566627506229058636911882228903170510305406882096970875545329369434063981297696478031825451642178347347716471058423238594580183052756213910186997604305844068665712346869679456044155742100039179758348979935882751881524675930878928159243492197545387668305684668420775409821781247053354523194797398953320175988640281058825557698004397120538312459428957377696001857497335249965013509368925958021863811725906506436882127156815751021712900765992750370228283963962915973251173418586721023497317765969454283625519371556009143680329311962842546628403142444370648432390374906410811300792848955767243481200090309888457270907750873638873299642555050473812528975962934822878917619920725138309388288292510416837622758204081918933603653875284116785703720989718832986921927816629675844580174911809119663048187434155067790863948831489241504300476704527971283482211522202837062857314244107823792513645086677566622804977211397140621664116324756784216612961477109018826094677377686406176721484293894976671380122788941309026553511096118347012565197540807095384060916863936906673786627209429434264260402902158317345003727462588992622049877121178405563348492490326003508569099382392777297498413565614830788262363322368380709822346012274241379036473451735925215754757160934270935192901723954921426490691115271523338109124042812102893738488167358953934508930697715522989199698903885883275409044300321986834003470271220020159699371690650330547577095398748580670024491045504890061727189168031394528036165633941571334637222550477547460756055024108764382121688848916940371258901948490685379722244562009483819491532724502276218589169507405794983759821006604481996519360110261576947176202571702048684914616894068404140833587562118319210838005632144562018941505945780025318747471911604840677997765414830622179069330853875129298983009580277554145435058768984944179136535891620098725222049055183554603706533183176716110738009786625247488691476077664470147193074476302411660335671765564874440577990531996271632972009109449249216456030618827772947750764777446452586328919159107444252320082918209518021083700353881330983215894608680127954224752071924134648334963915094813097541433244209299930751481077919002346128122330161799429930618800533414550633932139339646861616416955220216447995417243171165744471364197733204899365074767844149929548073025856442942381787641506492878361767978677158510784235702640213388018875601989234056868423215585628508645525258377010620532224244987990625263484010774322488172558602233302076399933854152015343847725442917895130637050320444917797752370871958277976799686113626532291118629631164685159934660693460557545956063155830033697634000276685151293843638886090828376141157732003527565158745906567025439437931104838571313294490604926582363108949535090082673154497226396648088618041573977888472892174618974189721700770009862449653759012727015227634510874906948012210684952063002519011655963580552429180205586904259685261047412834518466736938580027700252965356366721619883672428226933950325930390994583168665542234654857020875504617520521853721567282679903418135520602999895366470106557900532129541336924472492212436324523042895188461779122338069674233980694887270587503389228395095135209123109258159006960395156367736067109050566299603571876423247920752836160805597697778756476767210521222327184821484446631261487584226092608875764331731023263768864822594691211032367737558122133470556805958008310127481673962019583598023967414489867276845869819376783757167936723213081586191045995058970991064686919463448038574143829629547131372173669836184558144505748676124322451519943362182916191468026091121793001864788050061351603144350076189213441602488091741051232290357179205497927970924502479940842696158818442616163780044759478212240873204124421169199805572649118243661921835714762891425805771871743688000324113008704819373962295017143090098476927237498875938639942530595331607891618810863505982444578942799346514915952884869757488025823353571677864826828051140885429732788197765736966005727700162592404301688659946862983717270595809808730901820120931003430058796552694788049809205484305467611034654748067290674399763612592434637719995843862812391985470202414880076880818848087892391591369463293113276849329777201646641727587259122354784480813433328050087758855264686119576962172239308693795757165821852416204341972383989932734803429262340722338155102209101262949249742423271698842023297303260161790575673111235465890298298313115123607606773968998153812286999642014609852579793691246016346088762321286205634215901479188632194659637483482564291616278532948239313229440231043277288768139550213348266388687453259281587854503890991561949632478855035090289390973718988003999026132015872678637873095678109625311008054489418857983565902063680699643165033912029944327726770869305240718416592070096139286401966725750087012218149733133695809600369751764951350040285926249203398111014953227533621844500744331562434532484217986108346261345897591234839970751854223281677187215956827243245910829019886390369784542622566912542747056097567984857136623679023878478161201477982939080513150258174523773529510165296934562786122241150783587755373348372764439838082000667214740034466322776918936967612878983488942094688102308427036452854504966759697318836044496702853190637396916357980928865719935397723495486787180416401415281489443785036291071517805285857583987711145474240156416477194116391354935466755593592608849200546384685403028080936417250583653368093407225310820844723570226809826951426162451204040711501448747856199922814664565893938488028643822313849852328452360667045805113679663751039248163336173274547275775636810977344539275827560597425160705468689657794530521602315939865780974801515414987097778078705357058008472376892422189750312758527140173117621279898744958406199843913365680297721208751934988504499713914285158032324823021340630312586072624541637765234505522051086318285359658520708173392709566445011404055106579055037417780393351658360904543047721422281816832539613634982525215232257690920254216409657452618066051777901592902884240599998882753691957540116954696152270401280857579766154722192925655963991820948894642657512288766330302133746367449217449351637104725732980832812726468187759356584218383594702792013663907689741738962252575782663990809792647011407580367850599381887184560094695833270775126181282015391041773950918244137561999937819240362469558235924171478702779448443108751901807414110290370706052085162975798361754251041642244867577350756338018895379263183389855955956527857227926155524494739363665533904528656215464288343162282921123290451842212532888101415884061619939195042230059898349966569463580186816717074818823215848647734386780911564660755175385552224428524049468033692299989300783900020690121517740696428573930196910500988278523053797637940257968953295112436166778910585557213381789089945453947915927374958600268237844486872037243488834616856290097850532497036933361942439802882364323553808208003875741710969289725499878566253048867033095150518452126944989251596392079421452606508516052325614861938282489838000815085351564642761700832096483117944401971780149213345335903336672376719229722069970766055482452247416927774637522135201716231722137632445699154022395494158227418930589911746931773776518735850032318014432883916374243795854695691221774098948611515564046609565094538115520921863711518684562543275047870530006998423140180169421109105925493596116719457630962328831271268328501760321771680400249657674186927113215573270049935709942324416387089242427584407651215572676037924765341808984312676941110313165951429479377670698881249643421933287404390485538222160837088907598277390184204138197811025854537088586701450623578513960109987476052535450100439353062072439709976445146790993381448994644609780957731953604938734950026860564555693224229691815630293922487606470873431166384205442489628760213650246991893040112513103835085621908060270866604873585849001704200923929789193938125116798421788115209259130435572321635660895603514383883939018953166274355609970015699780289236362349895374653428746875
g(10^7) %2