Problem: Thanks to your help, Heidi is confident that no one can fool her. She has now decided to post some fake news on the HC2 Facebook page. However, she wants to be able to communicate to the HC2 committee that the post is fake, using some secret phrase hidden in the post as a subsequence. To make this method foolproof, she wants the phrase to appear n times in the post. She is asking you to design a post (string) s and a hidden phrase p such that p appears in s as a subsequence exactly n times.

Input

The first and only line of input contains a single integer n (1 ≤ n ≤ 1 000 000).

Output

The output should contain two nonempty strings s and p separated by a single space. Each string should be composed of letters (a-z and A-Z: both lowercase and uppercase are allowed) and have length at most 200. The number of occurrences of p in s as a subsequence should be exactly n. If there are many possible solutions, output any of them. It is guaranteed that at least one solution exists.

Examples

Input

2


Output

hHheidi Hei

Input

4


Output

bbbba ba

Input

6


Output

aaabb ab

Note

An occurrence of p as a subsequence in s should be thought of as a set of positions in s such that the letters at these positions, in order, form p. The number of occurences is thus the number of such sets. For example, ab appears 6 times as a subsequence in aaabb, for the following sets of positions: {1, 4}, {1, 5}, {2, 4}, {2, 5}, {3, 4}, {3, 5} (that is, we should choose one of the a's and one of the b's).

Solution (in CPP):

Solution:
#include <bits/stdc++.h>
using namespace std;
const int T = 700;
const long long f[] = {0LL,
                       1LL,
                       8LL,
                       36LL,
                       120LL,
                       330LL,
                       792LL,
                       1716LL,
                       3432LL,
                       6435LL,
                       11440LL,
                       19448LL,
                       31824LL,
                       50388LL,
                       77520LL,
                       116280LL,
                       170544LL,
                       245157LL,
                       346104LL,
                       480700LL,
                       657800LL,
                       888030LL,
                       1184040LL,
                       1560780LL,
                       2035800LL,
                       2629575LL,
                       3365856LL,
                       4272048LL,
                       5379616LL,
                       6724520LL,
                       8347680LL,
                       10295472LL,
                       12620256LL,
                       15380937LL,
                       18643560LL,
                       22481940LL,
                       26978328LL,
                       32224114LL,
                       38320568LL,
                       45379620LL,
                       53524680LL,
                       62891499LL,
                       73629072LL,
                       85900584LL,
                       99884400LL,
                       115775100LL,
                       133784560LL,
                       154143080LL,
                       177100560LL,
                       202927725LL,
                       231917400LL,
                       264385836LL,
                       300674088LL,
                       341149446LL,
                       386206920LL,
                       436270780LL,
                       491796152LL,
                       553270671LL,
                       621216192LL,
                       696190560LL,
                       778789440LL,
                       869648208LL,
                       969443904LL,
                       1078897248LL,
                       1198774720LL,
                       1329890705LL,
                       1473109704LL,
                       1629348612LL,
                       1799579064LL,
                       1984829850LL,
                       2186189400LL,
                       2404808340LL,
                       2641902120LL,
                       2898753715LL,
                       3176716400LL,
                       3477216600LL,
                       3801756816LL,
                       4151918628LL,
                       4529365776LL,
                       4935847320LL,
                       5373200880LL,
                       5843355957LL,
                       6348337336LL,
                       6890268572LL,
                       7471375560LL,
                       8093990190LL,
                       8760554088LL,
                       9473622444LL,
                       10235867928LL,
                       11050084695LL,
                       11919192480LL,
                       12846240784LL,
                       13834413152LL,
                       14887031544LL,
                       16007560800LL,
                       17199613200LL,
                       18466953120LL,
                       19813501785LL,
                       21243342120LL,
                       22760723700LL,
                       24370067800LL,
                       26075972546LL,
                       27883218168LL,
                       29796772356LL,
                       31821795720LL,
                       33963647355LL,
                       36227890512LL,
                       38620298376LL,
                       41146859952LL,
                       43813786060LL,
                       46627515440LL,
                       49594720968LL,
                       52722315984LL,
                       56017460733LL,
                       59487568920LL,
                       63140314380LL,
                       66983637864LL,
                       71025753942LL,
                       75275158024LL,
                       79740633500LL,
                       84431259000LL,
                       89356415775LL,
                       94525795200LL,
                       99949406400LL,
                       105637584000LL,
                       111600996000LL,
                       117850651776LL,
                       124397910208LL,
                       131254487936LL,
                       138432467745LL,
                       145944307080LL,
                       153802846692LL,
                       162021319416LL,
                       170613359082LL,
                       179593009560LL,
                       188974733940LL,
                       198773423848LL,
                       209004408899LL,
                       219683466288LL,
                       230826830520LL,
                       242451203280LL,
                       254573763444LL,
                       267212177232LL,
                       280384608504LL,
                       294109729200LL,
                       308406729925LL,
                       323295330680LL,
                       338795791740LL,
                       354928924680LL,
                       371716103550LL,
                       389179276200LL,
                       407340975756LL,
                       426224332248LL,
                       445853084391LL,
                       466251591520LL,
                       487444845680LL,
                       509458483872LL,
                       532318800456LL,
                       556052759712LL,
                       580688008560LL,
                       606252889440LL,
                       632776453353LL,
                       660288473064LL,
                       688819456468LL,
                       718400660120LL,
                       749064102930LL,
                       780842580024LL,
                       813769676772LL,
                       847879782984LL,
                       883208107275LL,
                       919790691600LL,
                       957664425960LL,
                       996867063280LL,
                       1037437234460LL,
                       1079414463600LL,
                       1122839183400LL,
                       1167752750736LL,
                       1214197462413LL,
                       1262216571096LL,
                       1311854301420LL,
                       1363155866280LL,
                       1416167483302LL,
                       1470936391496LL,
                       1527510868092LL,
                       1585940245560LL,
                       1646274928815LL,
                       1708566412608LL,
                       1772867299104LL,
                       1839231315648LL,
                       1907713332720LL,
                       1978369382080LL,
                       2051256675104LL,
                       2126433621312LL,
                       2203959847089LL,
                       2283896214600LL,
                       2366304840900LL,
                       2451249117240LL,
                       2538793728570LL,
                       2629004673240LL,
                       2721949282900LL,
                       2817696242600LL,
                       2916315611091LL,
                       3017878841328LL,
                       3122458801176LL,
                       3230129794320LL,
                       3340967581380LL,
                       3455049401232LL,
                       3572453992536LL,
                       3693261615472LL,
                       3817554073685LL,
                       3945414736440LL,
                       4076928560988LL,
                       4212182115144LL,
                       4351263600078LL,
                       4494262873320LL,
                       4641271471980LL,
                       4792382636184LL,
                       4947691332727LL,
                       5107294278944LL,
                       5271289966800LL,
                       5439778687200LL,
                       5612862554520LL,
                       5790645531360LL,
                       5973233453520LL,
                       6160734055200LL,
                       6353256994425LL,
                       6550913878696LL,
                       6753818290868LL,
                       6962085815256LL,
                       7175834063970LL,
                       7395182703480LL,
                       7620253481412LL,
                       7851170253576LL,
                       8088059011227LL,
                       8331047908560LL,
                       8580267290440LL,
                       8835849720368LL,
                       9097930008684LL,
                       9366645241008LL,
                       9642134806920LL,
                       9924540428880LL,
                       10214006191389LL,
                       10510678570392LL,
                       10814706462924LL,
                       11126241217000LL,
                       11445436661750LL,
                       11772449137800LL,
                       12107437527900LL,
                       12450563287800LL,
                       12801990477375LL,
                       13161885792000LL,
                       13530418594176LL,
                       13907760945408LL,
                       14294087638336LL,
                       14689576229120LL,
                       15094407070080LL,
                       15508763342592LL,
                       15932831090241LL,
                       16366799252232LL,
                       16810859697060LL,
                       17265207256440LL,
                       17730039759498LL,
                       18205558067224LL,
                       18691966107188LL,
                       19189470908520LL,
                       19698282637155LL,
                       20218614631344LL,
                       20750683437432LL,
                       21294708845904LL,
                       21850913927700LL,
                       22419525070800LL,
                       23000772017080LL,
                       23594887899440LL,
                       24202109279205LL,
                       24822676183800LL,
                       25456832144700LL,
                       26104824235656LL,
                       26766903111198LL,
                       27443323045416LL,
                       28134341971020LL,
                       28840221518680LL,
                       29561227056647LL,
                       30297627730656LL,
                       31049696504112LL,
                       31817710198560LL,
                       32601949534440LL,
                       33402699172128LL,
                       34220247753264LL,
                       35054887942368LL,
                       35906916468745LL,
                       36776634168680LL,
                       37664346027924LL,
                       38570361224472LL,
                       39494993171634LL,
                       40438559561400LL,
                       41401382408100LL,
                       42383788092360LL,
                       43386107405355LL,
                       44408675593360LL,
                       45451832402600LL,
                       46515922124400LL,
                       47601293640636LL,
                       48708300469488LL,
                       49837300811496LL,
                       50988657595920LL,
                       52162738527405LL,
                       53359916132952LL,
                       54580567809196LL,
                       55825075869992LL,
                       57093827594310LL,
                       58387215274440LL,
                       59705636264508LL,
                       61049493029304LL,
                       62419193193423LL,
                       63815149590720LL,
                       65237780314080LL,
                       66687508765504LL,
                       68164763706512LL,
                       69669979308864LL,
                       71203595205600LL,
                       72766056542400LL,
                       74357814029265LL,
                       75979323992520LL,
                       77631048427140LL,
                       79313455049400LL,
                       81027017349850LL,
                       82772214646616LL,
                       84549532139028LL,
                       86359460961576LL,
                       88202498238195LL,
                       90079147136880LL,
                       91989916924632LL,
                       93935323022736LL,
                       95915887062372LL,
                       97932136940560LL,
                       99984606876440LL,
                       102073837467888LL,
                       104200375748469LL,
                       106364775244728LL,
                       108567596033820LL,
                       110809404801480LL,
                       113090774900334LL,
                       115412286408552LL,
                       117774526188844LL,
                       120178087947800LL,
                       122623572295575LL,
                       125111586805920LL,
                       127642746076560LL,
                       130217671789920LL,
                       132836992774200LL,
                       135501345064800LL,
                       138211371966096LL,
                       140967724113568LL,
                       143771059536281LL,
                       146622043719720LL,
                       149521349668980LL,
                       152469657972312LL,
                       155467656865026LL,
                       158516042293752LL,
                       161615517981060LL,
                       164766795490440LL,
                       167970594291643LL,
                       171227641826384LL,
                       174538673574408LL,
                       177904433119920LL,
                       181325672218380LL,
                       184803150863664LL,
                       188337637355592LL,
                       191929908367824LL,
                       195580749016125LL,
                       199290952927000LL,
                       203061322306700LL,
                       206892668010600LL,
                       210785809612950LL,
                       214741575477000LL,
                       218760802825500LL,
                       222844337811576LL,
                       226993035589983LL,
                       231207760388736LL,
                       235489385581120LL,
                       239838793758080LL,
                       244256876800992LL,
                       248744535954816LL,
                       253302681901632LL,
                       257932234834560LL,
                       262634124532065LL,
                       267409290432648LL,
                       272258681709924LL,
                       277183257348088LL,
                       282183986217770LL,
                       287261847152280LL,
                       292417829024244LL,
                       297652930822632LL,
                       302968161730179LL,
                       308364541201200LL,
                       313843099039800LL,
                       319404875478480LL,
                       325050921257140LL,
                       330782297702480LL,
                       336600076807800LL,
                       342505341313200LL,
                       348499184786181LL,
                       354582711702648LL,
                       360757037528316LL,
                       367023288800520LL,
                       373382603210430LL,
                       379836129685672LL,
                       386385028473356LL,
                       393030471223512LL,
                       399773641072935LL,
                       406615732729440LL,
                       413557952556528LL,
                       420601518658464LL,
                       427747660965768LL,
                       434997621321120LL,
                       442352653565680LL,
                       449814023625824LL,
                       457383009600297LL,
                       465060901847784LL,
                       472849003074900LL,
                       480748628424600LL,
                       488761105565010LL,
                       496887774778680LL,
                       505129989052260LL,
                       513489114166600LL,
                       521966528787275LL,
                       530563624555536LL,
                       539281806179688LL,
                       548122491526896LL,
                       557087111715420LL,
                       566177111207280LL,
                       575393947901352LL,
                       584739093226896LL,
                       594214032237517LL,
                       603820263705560LL,
                       613559300216940LL,
                       623432668266408LL,
                       633441908353254LL,
                       643588575077448LL,
                       653874237236220LL,
                       664300477921080LL,
                       674868894615279LL,
                       685581099291712LL,
                       696438718511264LL,
                       707443393521600LL,
                       718596780356400LL,
                       729900549935040LL,
                       741356388162720LL,
                       752965996031040LL,
                       764731089719025LL,
                       776653400694600LL,
                       788734675816516LL,
                       800976677436728LL,
                       813381183503226LL,
                       825949987663320LL,
                       838684899367380LL,
                       851587743973032LL,
                       864660362849811LL,
                       877904613484272LL,
                       891322369585560LL,
                       904915521191440LL,
                       918685974774788LL,
                       932635653350544LL,
                       946766496583128LL,
                       961080460894320LL,
                       975579519571605LL,
                       990265662876984LL,
                       1005140898156252LL,
                       1020207249948744LL,
                       1035466760097550LL,
                       1050921487860200LL,
                       1066573510019820LL,
                       1082424920996760LL,
                       1098477832960695LL,
                       1114734375943200LL,
                       1131196697950800LL,
                       1147866965078496LL,
                       1164747361623768LL,
                       1181840090201056LL,
                       1199147371856720LL,
                       1216671446184480LL,
                       1234414571441337LL,
                       1252379024663976LL,
                       1270567101785652LL,
                       1288981117753560LL,
                       1307623406646690LL,
                       1326496321794168LL,
                       1345602235894084LL,
                       1364943541132808LL,
                       1384522649304795LL,
                       1404341991932880LL,
                       1424404020389064LL,
                       1444711206015792LL,
                       1465266040247724LL,
                       1486071034734000LL,
                       1507128721461000LL,
                       1528441652875600LL,
                       1550012402008925LL,
                       1571843562600600LL,
                       1593937749223500LL,
                       1616297597409000LL,
                       1638925763772726LL,
                       1661824926140808LL,
                       1684997783676636LL,
                       1708447057008120LL,
                       1732175488355455LL,
                       1756185841659392LL,
                       1780480902710016LL,
                       1805063479276032LL,
                       1829936401234560LL,
                       1855102520701440LL,
                       1880564712162048LL,
                       1906325872602624LL,
                       1932388921642113LL,
                       1958756801664520LL,
                       1985432477951780LL,
                       2012418938817144LL,
                       2039719195739082LL,
                       2067336283495704LL,
                       2095273260299700LL,
                       2123533207933800LL,
                       2152119231886755LL,
                       2181034461489840LL,
                       2210282050053880LL,
                       2239865175006800LL,
                       2269787038031700LL,
                       2300050865205456LL,
                       2330659907137848LL,
                       2361617439111216LL,
                       2392926761220645LL,
                       2424591198514680LL,
                       2456614101136572LL,
                       2488998844466056LL,
                       2521748829261662LL,
                       2554867481803560LL,
                       2588358254036940LL,
                       2622224623715928LL,
                       2656470094548039LL,
                       2691098196339168LL,
                       2726112485139120LL,
                       2761516543387680LL,
                       2797313980061224LL,
                       2833508430819872LL,
                       2870103558155184LL,
                       2907103051538400LL,
                       2944510627569225LL,
                       2982330030125160LL,
                       3020565030511380LL,
                       3059219427611160LL,
                       3098297048036850LL,
                       3137801746281400LL,
                       3177737404870436LL,
                       3218107934514888LL,
                       3258917274264171LL,
                       3300169391659920LL,
                       3341868282890280LL,
                       3384017972944752LL,
                       3426622515769596LL,
                       3469685994423792LL,
                       3513212521235560LL,
                       3557206237959440LL,
                       3601671315933933LL,
                       3646611956239704LL,
                       3692032389858348LL,
                       3737936877831720LL,
                       3784329711421830LL,
                       3831215212271304LL,
                       3878597732564412LL,
                       3926481655188664LL,
                       3974871393896975LL,
                       4023771393470400LL,
                       4073186129881440LL,
                       4123120110457920LL,
                       4173577874047440LL,
                       4224563991182400LL,
                       4276083064245600LL,
                       4328139727636416LL,
                       4380738647937553LL,
                       4433884524082376LL,
                       4487582087522820LL,
                       4541836102397880LL,
                       4596651365702682LL,
                       4652032707458136LL,
                       4707984990881172LL,
                       4764513112555560LL,
                       4821622002603315LL,
                       4879316624856688LL,
                       4937601977030744LL,
                       4996483090896528LL,
                       5055965032454820LL,
                       5116052902110480LL,
                       5176751834847384LL,
                       5238067000403952LL,
                       5300003603449269LL,
                       5362566883759800LL,
                       5425762116396700LL,
                       5489594611883720LL,
                       5554069716385710LL,
                       5619192811887720LL,
                       5684969316374700LL,
                       5751404684011800LL,
                       5818504405325271LL,
                       5886274007383968LL,
                       5954719053981456LL,
                       6023845145818720LL,
                       6093657920687480LL,
                       6164163053654112LL,
                       6235366257244176LL,
                       6307273281627552LL,
                       6379889914804185LL,
                       6453221982790440LL,
                       6527275349806068LL,
                       6602055918461784LL,
                       6677569629947458LL,
                       6753822464220920LL,
                       6830820440197380LL,
                       6908569615939464LL,
                       6987076088847867LL,
                       7066345995852624LL,
                       7146385513605000LL,
                       7227200858670000LL,
                       7308798287719500LL,
                       7391184097726000LL,
                       7474364626157000LL,
                       7558346251170000LL,
                       7643135391808125LL,
                       7728738508196376LL,
                       7815162101738508LL,
                       7902412715314536LL,
                       7990496933478870LL,
                       8079421382659080LL,
                       8169192731355292LL,
                       8259817690340216LL,
                       8351303012859807LL,
                       8443655494834560LL,
                       8536881975061440LL,
                       8630989335416448LL,
                       8725984501057824LL,
                       8821874440629888LL,
                       8918666166467520LL,
                       9016366734801280LL,
                       9114983245963169LL,
                       9214522844593032LL,
                       9314992719845604LL,
                       9416400105598200LL,
                       9518752280659050LL,
                       9622056568976280LL,
                       9726320339847540LL,
                       9831551008130280LL,
                       9937756034452675LL,
                       10044942925425200LL,
                       10153119233852856LL,
                       10262292558948048LL,
                       10372470546544116LL,
                       10483660889309520LL,
                       10595871326962680LL,
                       10709109646487472LL,
                       10823383682349381LL,
                       10938701316712312LL,
                       11055070479656060LL,
                       11172499149394440LL,
                       11290995352494078LL,
                       11410567164093864LL,
                       11531222708125068LL,
                       11652970157532120LL,
                       11775817734494055LL,
                       11899773710646624LL,
                       12024846407305072LL,
                       12151044195687584LL,
                       12278375497139400LL,
                       12406848783357600LL,
                       12536472576616560LL,
                       12667255449994080LL,
                       12799206027598185LL,
                       12932332984794600LL,
                       13066645048434900LL,
                       13202150997085336LL,
                       13338859661256338LL,
                       13476779923632696LL,
                       13615920719304420LL,
                       13756291035998280LL,
                       13897899914310027LL,
                       14040756447937296LL,
                       14184869783913192LL,
                       14330249122840560LL,
                       14476903719126940LL,
                       14624842881220208LL,
                       14774075971844904LL,
                       14924612408239248LL,
                       15076461662392845LL,
                       15229633261285080LL,
                       15384136787124204LL,
                       15539981877587112LL,
                       15697178226059814LL,
                       15855735581878600LL,
                       16015663750571900LL,
                       16176972594102840LL,
                       16339672031112495LL,
                       16503772037163840LL,
                       16669282644986400LL,
                       16836213944721600LL,
                       17004576084168816LL,
                       17174379269032128LL,
                       17345633763167776LL,
                       17518349888832320LL,
                       17692538026931505LL,
                       17868208617269832LL,
                       18045372158800836LL,
                       18224039209878072LL,
                       18404220388506810LL,
                       18585926372596440LL,
                       18769167900213588LL,
                       18953955769835944LL,
                       19140300840606803LL,
                       19328214032590320LL,
                       19517706327027480LL,
                       19708788766592784LL,
                       19901472455651652LL,
                       20095768560518544LL,
                       20291688309715800LL,
                       20489242994233200LL,
                       20688443967788245LL,
                       20889302647087160LL,
                       21091830512086620LL,
                       21296039106256200LL,
                       21501940036841550LL,
                       21709544975128296LL,
                       21918865656706668LL,
                       22129913881736856LL,
                       22342701515215095LL,
                       22557240487240480LL,
                       22773542793282512LL,
                       22991620494449376LL,
                       23211485717756952LL,
                       23433150656398560LL,
                       23656627570015440LL,
                       23881928784967968LL,
                       24109066694607609LL,
                       24338053759549608LL,
                       24568902507946420LL,
                       24801625535761880LL,
                       25036235507046114LL,
                       25272745154211192LL,
                       25511167278307524LL,
                       25751514749301000LL,
                       25993800506350875LL,
                       26238037558088400LL,
                       26484238982896200LL,
                       26732417929188400LL,
                       26982587615691500LL,
                       27234761331726000LL,
                       27488952437488776LL,
                       27745174364336208LL,
                       28003440615068061LL,
                       28263764764212120LL,
                       28526160458309580LL,
                       28790641416201192LL,
                       29057221429314166LL,
                       29325914361949832LL,
                       29596734151572060LL,
                       29869694809096440LL,
                       30144810419180223LL,
                       30422095140513024LL,
                       30701563206108288LL,
                       30983228923595520LL,
                       31267106675513280LL,
                       31553210919602944LL,
                       31841556189103232LL,
                       32132157093045504LL,
                       32425028316549825LL,
                       32720184621121800LL,
                       33017640844950180LL,
                       33317411903205240LL,
                       33619512788337930LL,
                       33923958570379800LL,
                       34230764397243700LL,
                       34539945495025256LL,
                       34851517168305123LL,
                       35165494800452016LL,
                       35481893853926520LL,
                       35800729870585680LL,
                       36122018471988372LL,
                       36445775359701456LL,
                       36772016315606712LL,
                       37100757202208560LL,
                       37432013962942565LL,
                       37765802622484728LL,
                       38102139287061564LL,
                       38441040144760968LL,
                       38782521465843870LL,
                       39126599603056680LL,
                       39473290991944524LL,
                       39822612151165272LL,
                       40174579682804359LL,
                       40529210272690400LL,
                       40886520690711600LL,
                       41246527791132960LL,
                       41609248512914280LL,
                       41974699880028960LL,
                       42342899001783600LL,
                       42713863073138400LL};
long long K;
long long c[T + 1];
int main() {
  scanf("%I64d", &K);
  for (int i = T; i; i--) c[i] = K / f[i], K %= f[i];
  int t = T;
  while (!c[t]) t--;
  for (int i = t; i; i--) {
    for (int j = 1; j <= c[i]; j++) putchar('f');
    printf("estival");
  }
  printf(" festival\n");
  return 0;
}