return TEST_SUCCESS;
}
+enum test_result test_stree_minimal_4(void)
+{
+ const uint8_t *in = (const uint8_t *) "dbbcaccbdbdbde";
+ uint8_t out[14];
+ size_t aux[14];
+ ASSERT_EQ(0, stree_encode(14, in, out, aux));
+
+ return TEST_SUCCESS;
+}
+
enum test_result test_stree_long(void)
{
const uint8_t *in = (const uint8_t *) "abcdeabacacabbabcdcccaccccaabbbaababdadbaccabbdadbadbabaccacbbbcbadddbdababddddddabdabddddddabbbbccc";
enum test_result test_stree_very_long(void)
{
- const uint8_t *in = (const uint8_t *) "abcdeabacacabbabcdcccaccccaabbbaababdadbaccabbdadbadbabaccacbbbcbadddbdababddddddabdabddddddabbbbccc";
- uint8_t out[100];
- size_t aux[100];
- ASSERT_EQ(0, stree_encode(100, in, out, aux));
+ const uint8_t *in = (const uint8_t *)
+ "acaaeabdecdcebcadbebddeaebeceacbbbaeeedbddeedcbdaaeddbadabaedeae"
+ "aaaedebdccbcaaaabdbddabadadaaedebeeaddeeeaaaeecbdcdaaddadbddebcd"
+ "edacecabdccdedbbeecbdeceebbcdaddbaebdcbeaadebadbebaacaecebeaeecd"
+ "abacdadbbaaceaabadaeadbcecccaeadcccddbaeaceedccddcdabddeabcadbdc"
+ "adaaaaadaeeaebabaddeeedaabdeccbcacddbbbabbbecbbbbdebccedabacedba"
+ "eaacbacecebddbdaaccdacddbacbaadadddddcdaadddeeadbaaaadcccdcccbcd"
+ "beebbaabceecaaabdcdeeababcbdebcacddbcdacdaccddaedeaedccedabaaebc"
+ "eedbaecacabddcaaedddeeabcedbbaedbebebbeccdeabcbaeebedbebdecadccc"
+ "dcabddacbcaaedbcabceeedacadceaabbddcaccbececbbabbaaaebecebbaacba"
+ "ccdebdaabddaeeadeeccacbecdddaaddcccdebbddaeccbdaeebbdcaaeaadadda"
+ "dbbcaccbdbdbdecaecbddcccaececbdcaebadcddaedcdddbeaebbecaeadddcca"
+ "ddddadbeabcbabdccbcebcadaadaaecbcdcbcebeceacbabdebccccecebaeaaaa"
+ "eedadeeadbcabdedccabdbcebacbbedbbdeaaacebeeedcbaaacdaececeabeeeb"
+ "ecceceaabaebaeeaceddaacdabebbeccdbdceacabeecbddaaeaeddaecebebbec"
+ "beaddbcaabdbdcbbddbaccdeebcaacbacabcaecaeeecdceabdbcbabeaeaaebea"
+ "daabebebadadadcbabbaddeeeedbebcebdbcbabeecbdabeeecabcecdcabbbaad"
+ "debcdbdadebbadaabdbebbacaceeeeabbadebaabcddaeeeaaaebccceebdebccb"
+ "eebdbbacdaaddedacdecbeddcdbcdeecddabeacbbaaaeeddaeeadedbdacedabc"
+ "ceedebaccdccbdaddcbdcbaccdaabeedabceaccaecaaddceeaacbdadcdeeeaec"
+ "ebecaececbbdbaaaeedeacdcdeadeddbbebddccededdabacebccacdcdcebcbaa"
+ "cceeaeebdcbcabeddeebacdcdcaebbcbddcdeccbddabadcdaccaacbececbcabb"
+ "eaabadcbeeaeebcdccdccccedcdabebadaddcacdeabededeaaedddeabcaedced"
+ "cebbcbcdadbbbdecbdaaaacdacacbaadaadacdeebaacddcadcdadebcddbeeeeb"
+ "aceaecabacbbbebacbecaeeeaaaedcbaaabdbddedbadaacacbdadbcbdeecddaa"
+ "bbccddbeecbddeaebaddbaadceeddadbcbeedebbaebcdabededddbdbcbcdbccb"
+ "eddaeedaebdeacdebadbebacdcdaccabadbacadeebcceedeccebceaadbddeeab"
+ "eeeacbbdadceaebcbebedccedbbdcdecaaacebdeebdaddbccaabdaeecadcecba"
+ "bdccccaecebbadccbebeddbacaccacebcaeacaedcecccaeedbedeadecbdacced"
+ "dedbcaeadecbeeddacebdbbbddbabaabecccabaedccdebabbcdadebcceacebbb"
+ "ddeeeababbebeecbdcbdbcbccebdeddcccebcbebcabbdbccedbbbcebbabaccab"
+ "dbdceaeebdcbcbeadbadbbeeeadebdbbcbabceeeebebabcaaeeddabbedbeaaed"
+ "beedeeaecbdcaadaedbbacbadbcdabeaccdbcdbceccedcbeebabecbadadbcebb"
+ "aaacabbeebcaabeadadbcbdcacdedeccabeeadaaecbebdadedcdccacdccadebb"
+ "daeddabecddbccbbdcddcbbecdacddceedbcceecdcbcedddcbccdcdbaeaecaea"
+ "eeacebdcdbedceadcbaabdceeaaaeabeaabdbacddeacebebcbcbedccaeecdeab"
+ "eceecaadcbdaebacebaaccccbdbeeebedccdaceccacbceedcabcbebdacbecebc"
+ "adbcdbbecccceedcdaaaeeddadedebaeccbaaacaebbdaadcecbbeaedabcaacea"
+ "ccdcacbaebedddccdccecacdcadeadbacbaeaeecdabaaabeebebceaceccbddcc"
+ "deeebbdbacdbbcccdebbebeebcbbedcbccdbedaedbccdbbcacbaddbaecdddbcc"
+ "ecddebbddbbbedabbadcddadeccdaeeaddebadceecbebccacbeeeceabceebaac"
+ "adabcbcdaeabecbaddecaedaacbbeedeedaddaeedaccababccadcebcddecbeeb"
+ "cbabbceababadccebacaedbaccdaeecabcbadcbcbabaebceadeeacedcadabbde"
+ "ecceddbeccbceeadcebbccbbaabaabeecececbaddcebcbddeedaacbeedbbceca"
+ "cedaaacecceebabcadecdcabbcdceabdbdbdaddddacebebadcebdcdcacbbeeba"
+ "cdccbbaedbcadecedcededecaeaccecdcacddaaceddaaebccebbcbbcaebccaee"
+ "aeaacadaccbbdbbddecdeebcdedaeacbadbdeabaeeeabdbeccaadcdedddabdda"
+ "dddacaeebdbdbeaacbbcaeeacccbbeecdcaaeccddbcdabbeeeeceaabcadaccad"
+ "ccbadeaeababddedcdadaabcdedcacebecaabebbaaeabaaeecadebeedaeeedbe"
+ "eecbedddbbdbabacaebdaeecbdddeaecacaadddbbbcadadceadecccdcebbaeeb"
+ "beaaddaecadcceebdbecbabdaaddbccaacbeeeaacbacedbbecebdedbbcbedddc"
+ "acccecbeddccdabeddacbabaacaebdbbdabdeeaaabbababceeccbedaeaabecba"
+ "cabdbedcceababbacaabcdeeebedbcbedbecdaaccbbcaeeeecbedaeaaadadbee"
+ "cccdbceccbbbcacadbccddeccaceedbdcbedabcccbbdbabcbebdbebaadcdcaad"
+ "bddacdcdcadedceeeecdaddacddaebdcadedbbadeaacaebbbeadabdeeebeecce"
+ "caacacbdccceeeecabdecacceadeebacaabbeacacddcdcdcabdbecdaaaebcedc"
+ "addacddeecacdabdabcbabcbadbcddceedeebbacddcebccabcbccabacbaecebd"
+ "eddcbbcedababeacbebedddabeceeccceaadececdacdeeeabababaceacccebea"
+ "bbbcabadbdabcbdbebacaecadeececaddacadeadcabcccddcebaeacbdedaedba"
+ "cbaecdcdcdbccabeebadddbbdebbbecebbdaceeebbcabacaabaebdcedbcebada"
+ "ecdbcdecebaadaadaabbdccbcaaaebaccbbcbaaceccdaebccabdcbdcdbeaccee"
+ "adbaccedcdcacaeeecbcbddedbcdacaebabcdbbddeedabaaceadceaabeecdccd"
+ "cbcdaebcdeaebebbccedebeecdadaebedaaabacdedaecacddecdeddbeaacdcab"
+ "dedddbdbbbadbbaeccbaaeceeddaecaedbebccadcaeaeeaedacebeedcbddbbae"
+ "bdedaddabaebcaeadeaaccdcbaeadddecbceeecbcaeabbbbbdaaeccdcbacbeeb"
+ "aceeebdbdccbbbebabacaeedaebadbcadacadbcebdbedaaddcbbeddebddbdcee"
+ "aaaedaadeeabccabaeaaedbdebeabadeeceebeaebddaecedbbdebcccedcecbed"
+ "ddceccddbbedbbedceebeedaecceacddebaeaabdceaeaaeabbaeeeabbceccdad"
+ "ccbdbadbdaaadaedddcbdaccebcdddbbdcdbebaacebbeebedbdaededadebadee"
+ "eebbdbeaececaacaccecbbdcecbbcaaecccaedeeacddcaaebaebaebbcbaeabec"
+ "cccbeedbdeadeeacdaddcebdcaaeaebaadeeceebbccbedbabebbcdeedaeccaec"
+ "beaebbbabbbbedeeaccdaecccbededcabdbebabaaedabcaebebbcceacbacaaae"
+ "dbbcbcebbacaaeeaaedddebabaeebdebbbabebdddccedaedcdcdeebbdacddecc"
+ "ecdecdcdbedababbbabdceabbabcacdbdebddcccddbaceedeebbbbabdaacacce"
+ "bbeeeaeedebbebbbaaeebbacabacaebcdbabecaabeaabbdaddbdeebacbbbaacc"
+ "bcaeddecdeaeedadecdebeabebcebcdecdabcdaddeecacebbedaedabeaaecacd"
+ "daceeacddccbbddbeadadcdbbdaecaaccbcbbbbcbacceeddeebeabcadcededac"
+ "beabcabcbeeadceeaeebeabcdadedbedccceeecceacbecaddeaeaeacecaabbcd"
+ "ebaccbcbaeebebcaceabedcedacddabdddaadaddcbabdbecaaaccbceecbedcae"
+ "eaedbdacbbaaabecccabccebceaaacedeccbcdbeeadedeabdaaebeaaaaedbcea"
+ "ceaeadeacbecbadabebaeaddabbbdaebabbebddaaddadbdcabcbbebbcbebbbad"
+ "dccaaddcabaadedeabaadbbbccacdcaaaceddacdedbbebabbedccbbecbbbecbb"
+ "ecadbebcadcccbadeadcbbabaeeedbcceddecabbcbdecdbbccdaedadbcebbead"
+ "adadcebaccacdecdecdcdaeddadeeeceadcdadebadacdeadbcccbaccebdaaada"
+ "becebaabeecaeabebaebaaddeabaceddbbeaacdebbeaebdcbccbdaacaacdbadc"
+ "aaeeadacbeecadeeeecdbcabdbebcebaaccdebdaddacbaeeacdcbebbdedabebd"
+ "bebcbddeedeadaacbeddcbabecdcbecdddcaedddbdeceaaebdcebabbccacdcee"
+ "baaecedacdabebecaebdaaadcbcdabacadeaebbcebcecababbcceecbcbacacbb"
+ "cbeedebdbabebbddebcccebadbbeebdbbabcdbecababdebeaabcdbedeccccddb"
+ "decdcedbeaecacabccabbceccccaebbccccbcbcebabeededdbddbebaccdadece"
+ "ccccaeaaebaabeadbeaadccedbeebacdeaccabddbcdeaceadcceeaabacddcbba"
+ "ccbebcdecabbecaadddacbbcedebcddacdbddadbadccecbdebeacabeabeaadca"
+ "badeaabacdbdaceaddedaedaebaaccedcddebecceabcddcdbcaeacbecccabbca"
+ "deceaebeeddcddaceeeeeddacccccaececeabdcabeecdacbdcedecdeaceddbcb"
+ "ddecadadcaabbebcaddbdedeccaedaedbccabcbccaadcbaeeedeacaccccddbbd"
+ "eccebdbdaecceaedccddecbacdabebbeaaeaeecdadaeaaecbebccdebcdacdebe"
+ "dadcaeaecceaddeeaacaabdcaceeaacdceeebeddacbdcdbbebeaedcabdddcaae"
+ "cecceeeaeecceebcbaaeeaddaddabcbeecdabbdcceecdaacadebbdddbbdcacec"
+ "bbddcaecaedaccbadbadcababdebddbaecaedaabacdcbbcdbeddacbbebccaedd"
+ "adcebbdebaaeeaabeddcbcecedacbaaaadebccceeebbdcabadbebdabddddbaaa"
+ "edaddbdaccebaddabdddcdceeabcdbcaaabedbbaebedeacdabbebecaedcdeadb"
+ "eadacdeacaddcdcbabacaadaaaedebabbdbebeaebcbeeaaadbeceeeacedbdeba"
+ "dacaebecdceadacbbabbdcaaecabbebbbdedcdceceaccecabaeddcdabceeecea"
+ "aedbedaecddadaceabdcabadabdacacdabbddeccaaecebceddbedcaebdacdade"
+ "dcdedbdbabebbeecdcebdeeeeddaaaddcbbcaaebedeacecececcdebdcbdadbad"
+ "ecaaadbcacecaabbdcbdbdcaeecbebbbdccdedadebcedcbadaecdbbadcdedaeb"
+ "ddcddccebcedcbcccbaadcbdccdababddcdbcdbcabbddadddddebcbaaddcbdcc"
+ "eabacdadadaacbebbaaaaacdbcadccbbedcdcbabaededbdeceddeceaecededea"
+ "bcdcadbcbcbbbbeddebeeddcbbcacddddceededdedcdebedbeaeaebecaacbcae"
+ "dacccdcdbbeacbdeecdcabaddbdeeceabeebdeebbebdeaeeebedadcdceecdaeb"
+ "ecdbeaeccedeedbbcabcccceeadcacceebdebccdaaacbaddabeccaaacedcaade"
+ "dbeeebcceacacadabdeabaaebaddecaedabceeabbdcaaacccaceeeeceeeddaeb"
+ "aeccebbeabaeddccebbaddddacecbedebcbccdcbcdedacadeeebbcbcddcedaae"
+ "baaedadaedabebaaaaaebddbabdaaadabcdbeaecdccedcccaedadbeceabbcbca"
+ "ecedcaeeccbdabcdabcababbecbddabcaeaadadabddddbcbdeedbedcbbaccecb"
+ "ebdecaecbeddaaabaecdeacaceebedbbbaeabcedaaeaabdaaccccaadedcddcaa"
+ "abeebdcdccdedbdbedebccdbeeadcbbddedddaddabcbcccdaebdeebaeadcdadc"
+ "adbadecbadebbdacbdcbabcaacaaeacbbacdaececacddeecdccaeddbcbccdaea"
+ "eddadbbcdadcbdacacdbeecdaacaecbacdbcaaacaeacdcdcbabaadaaaaeebbed"
+ "ddebbcdddddedbbbecebcbcabebdccebdaaeaeadcadadacaeacabadcbccdcbcc"
+ "bddbbbbceacbdecaceabeaecaebcbaacbeadacdabdaeebeccddecdeaabaaebbe"
+ "ecbedeebbeedabcdeaeecddddbcaabbedbcbabaeaecabbdadacbcdeecdeadeee"
+ "dcabeccaedaeeeeaaabcecceecececcbdeeeecaddbaebeebbccbbbcceeaeacbd"
+ "abcbecadcabbbdbbaabeebccadcbcccaabbdeaadbcddbcaaebbcebabddecccdb"
+ "ecaaebbbcadadccbbddcdeddadebcccbadcceedadbbabbebbbcdaeeaddcddcdd"
+ "debdaecdceaaabbeabaaedaabbdbcdbbcddbdcbacacceaccdabbededcaabcbbe"
+ "becbbbacaeeeabbdeaccbbaedecdccdeaebebedeeaebdddbabaadcbcdeaaeabd"
+ "baeaaabddeeeedcacdacdecdaadbbbaddddaaddedcadacaeaebceaeddbdbdcdd"
+ "dcadadcdccbeaebeeeccbaaacdeeedeedeeceddabdccdccdeedbaedccbcceedb"
+ "eedebeeaaceaeebecebbaebaaebdcaebaecaecbeaabbbeccbeebddcccbabbeea"
+ "bbacebebdccebedccaccdaaeecccbcccacaecbbcaedbeaacbbdbbabceccddedc"
+ "eebeaebcabbeadcaabadeabaaaedbdabddecbdeabcabdeadeaadcdeaecbbbdac"
+ "ebeedebacecdcdccbeaebbaceeeaeaccdaeaaadeedacdaeccadbaaeaaeeeebaa"
+ "ecaeddbadcceacdcccebaebdcecbaacaebbceabbebddcdbdededabadcadbdbdc"
+ "adaacdabcbddceaebbbaaeececaaeaccbbeeebbebeaaabbcebeecceebadcaeca"
+ "ddeeeecceeebdeebdcabcdeaaccdcdcccbaecbbcbabbddacdeaededabeabddce"
+ "ebaaedcadcdbdedacdaddadccedbcbdcbeaabdcebeadceccdeecabdaaaebccda"
+ "aeeecbbceddebdadddcadbdcdeebcdeebaacaedebeeceddaceccdeaaabcaadbe"
+ "bcbcdbecaddcbaeedeabebbbcaabccbdacdebceecaecadceebbadcbcbceeecdb"
+ "caecbabceaccdceedccbcbbacacaddeccaadbeaeaacedccbeacadeadadbeddbc"
+ "bddaceceecbeebdcbcedaceabeeebbcecbcdacddecdebadaadecddbdaebdacbc"
+ "bcbecccadcdabaeeeaddcceeeaacbccdaecacabbacacecdebaceeecabdbcdace"
+ "dddcddbeaeccebcadbacaaaeeaabbcdadbadaaccbacdacaedeaadcdbbedbaaae"
+ "ebdaeddcbceeacdceaaaeaececbdceebaabccbbbaccddceeddbdaacebeebccae"
+ "cccceaddcadbeeabadedddcdbecddbdbaeebedaeccbbbddbaeaadedaadeebeea"
+ "aedccccdabeebacabbeeeebbcbdeebaedbceadaceeaaadaeccdeedebbddccbde"
+ "cdccddaddaaedeebbbbcdbdeeaedecabaedaebeeeabeeecacabebbcbebeddcac"
+ "edabbabbdeaceeecaeadcadbadddccdcbbabceaadbecdeadabeebabedceceaac"
+ "beadbeacececaabaaeeddeedddcecaaeaeaadbcdeaeaabacccebddcaceacdaba"
+ "eadcdadadcaaabdebdcedaaeeddeeabccbeeeeaecbceeaecbcdcdaeeaeaccbdd"
+ "aecdaddeebccecbbaaabeeeddaecbeaedaaccabebbeedccdbebebaabccccdacc"
+ "cadcedecaacbaebdddcadcddaedeebacdbacecbedaadbdcaebedcdeadcdacacd"
+ "aaacebcebaaceaebbaeecaebadbbbaadcadbdbeeabdbdaabbcbebcddcabebeec"
+ "dbcebdbadabeebceeadcaacbabddceaedcbdabccbdaababbedabcecbeeabecac"
+ "adbabbbeadacdedebdeaabcecebcbdbdcadbceeeededaecaadabbdacbeacbeab"
+ "eecebddcdbbabcdeddeebababdabecbdceeaabbbacbcbdadcabacdebedaeddbc"
+ "bcdbceeecaaaddecdebdbacababddcdcdbeeadaddbaadbbdaeccaeabedbdedce"
+ "baccbabdbbcaddbadeeeaacdeceeaececddebacaecabeeadaeedecddaceeadde"
+ "eeacbdadeaaaeaadedebabaabcebdcdadbdecceacccaebdcbbbbbaceacdcbbbe"
+ "cccaebdecdcebededceccaecaaeaecacdbbbaadbcdedeaeaaacabccaccbaeacc"
+ "dbcbceeaadacbabaaccecbdbaacabccacdaeaeadbacbdccbdcabacdaccebcdec"
+ "bbeacbdecdcccbeebeeaeeaeccbadecbbceeeaaaadecabbedbbabedbecabeaad"
+ "edebcaeeadaabdacbaccaecebedddaeedbdbceddedecdccdcbeebbeeababdebb"
+ "aeaeadbbdaaddcecddccdebddecbaadccebbedeabdddacdcdeeeecacbcdabeaa"
+ "debccecaacaeeeacabccecdacacdecdecbecaadcdbabddbddebeededbcbddcee"
+ "dcbaecbeaacbcaaceaddcdcbcdecdcddecddcbcecaadbadababeeadeebdbadbd"
+ "cacbcaeeaebeceaceedeabaeccedbaadcbcaeedcecdacdedeabbcbddedabccea"
+ "bdededbeceeacabbdaaebcbdccdbbbeacccedaccbceeedabbadaaeabaeaadaad"
+ "eaebceadcbbecabeeeaecaeedaaedbcceaeaddcdbebedbddaecdbeabedacaaae"
+ "ecbccaddccedeaecedebdbedbdbbeadbcbbdeedddbaaeacdeddededcaccdbeac"
+ "eeaeabaceabbededbecabcdbcbdcaeacbeaccecddcdbdbebbdcccbbbcaadbaaa"
+ "bbceaadbeaacccccbedbaaccddcddbeeceeedecebebbdddacdbadcdadecbccbc"
+ "baadbcabcaaedecebdbdbeeabadbececeaacbeeccdaaeccbabbaaebbccdabada"
+ "dabadedeeadbaddebcbcaadacccabcaadaacdacebebbaebeeabaeedadddecbdd"
+ "bcbbecbdeedcdcbbdccbcadaadbedeebdebbcebabcecadbbdbbedbdceedaccab"
+ "aabadcccccbadcaabecdcdbadddbbbedeabeaedcdeeacbaccdebeadbeaedddad"
+ "ddddecebbbdcaabcedaccaeaebccbecbabddccecdadbcdcaecbbcbaadadaebee"
+ "eaaebebaadcbaeedebacbdaddcacddcbeebadeccadcbaadbabdaaabddeedcadd"
+ "bacebbceadcabdcbedcbdacaaaeabbdcbeebdedceeedccddcacabdaccbeeccae"
+ "eceaebdaeadeabecadbbddddedcecadeeedbdcaecbeadcecdbeecbcceaeddede"
+ "aacdeaaecebbedccaeeaeddbbbbddadecdadceadcdeedbddbeabccaacebbbade"
+ "ceaddcaacecedabdadadcedaecdbaecacedededbeaeaebecbdbaeacbaddcdcbd"
+ "dccbaaeddcbdecaaeeacedabdececadcabaaaebcccbbebbdcecccacebdacadad"
+ "ccceccecbbbcdabedebaabecabebbcceabcedddaaaacceedccebcdaacbcdddde"
+ "beaeddbedeabaaebababcadbecadcceaaeddcdcabaeeddbbabcdcbcdaebbbecc"
+ "decdecbdcceccaaeaaeebbebabdeecebdeeeeddddacecdcbeabdaedeebbbcaaa"
+ "dddebabbeacacbcacaeacddaebcdedccbdcecdcbeeddebdccbccabdaedadadab"
+ "cdeccecddacecabacbbddccebcedebddbddaceceaadbdbacceddbabaededeccd"
+ "aeacedccacbeccaebddabddcdcddddaeedeabcabceabddcadbbeadeadcbbedeb"
+ "cbedaededadccddcbbdbbeeaccedabdecdceabcdbaadceabacaaedcceeaecabe"
+ "abddecebaeabceaededeabaababecadeadddbdcddceebcabbbdbecaeebdcceda"
+ "eaaeabebddaacddeedbbdacccbadbdadaeccdeeeddeddccabeaaabcbeaeeaeea"
+ "bedeebbcbeabebdabadedccbcbbeeabbadecaeebbbaacaadcabbddbabccedeca"
+ "aaabedbedbdeceadbaaacbbeabccacbeaddeeeddeeaaaaacebeceaadbdcedebc"
+ "eabbbdbebaccbecccbdebddbeadddadccadeacbbabbceecebaeedcedaedbbdaa"
+ "dbaeabdeaeaddccededdddbacdcddbbabeadcdaebbddbbdbcabdeaacbdddadcb"
+ "ecaaadbeecddbebadcabccaabadedcaaabcbbaeaddbeadbddbecaaccecbeddea"
+ "edcbddddebbedeabbbccaaeaaaadcaacaeadeaeacccccbdddecabeeadcedebcd"
+ "eeeedacbcbeddcebaaedacacecbbbbdaaebbbbcedeaadaedcecccdaeccedabca"
+ "eebeeaadcaabbdcdaaaddbaddaebadaebccaaddcceccaeababdecbbdacbbadba"
+ "ceaeeabdecbecacaadcccacadadcedacdeaccbbeecacadcabbbddaaebebcbece"
+ "abbaebbdeccadabaebaeeccabeeebaadaaeaccdbddebccaaceceeaddedebadbc"
+ "dcbabaebededecdaadccdadcdbbdaedaddbbadaeebeabbabbbbbcedacdcdcbbb"
+ "bddccdadddabadebceaebedeeeeaaeadbccaccceeccdccbdeccacceeeaadbcde"
+ "edaadabcabeaacecabdbadbededbadacceccbeaebeeeedadeedacceabecaedeb"
+ "cbdaeaaeceacbcdeecdeabcdabccbdabeddeaeecededbadeddcdccbdbdaceadc"
+ "bdbaabbcdbeceaccecacdcdddcadecbbdacecedabaceebbeeaebabecaaecdaac"
+ "dbbddcdcadabdacabaeccddbdedeebacbedaddabcebbedebdabcebedcadaecaa"
+ "becdadeeaeadcddccaaabbeddbebdbbecbaebdabeabacbcecbcbeebdaeebebcb"
+ "bcddcaabaccebddaeaebecbbcddabbccbedebdaacaededcacabdadaccacbebaa"
+ "ccbbdeaeecadebecaebebeebbaacabbeebcbabaeaccbedbaceebeecdeececceb"
+ "abdcebdbbaceebcdbcecabaeebbebebcdbbccabbaacdcdebabcabccedcaddade"
+ "cbabddeeaceeeaaceccadcbcadbaddcdbcbadcecdeecddadaceaaedadadcbdbd"
+ "eebdcdbedcaeaccceeaaddacacbabcdccbebeabeadddededbebedeaccdeaeeae"
+ "deabcdaaddecacaeacbbdeedecececcaeacebebecccaabdcbeedbcedacedaccd"
+ "adbcdeeaccdadeacbddedacbbceabcedddeeacaeecaabcbbccbcececbebcabdd"
+ "adbdcebebbbadcadaebddaabeddebdcddececebabcaedbddddbdecacdaddbdcc"
+ "eaeedeccbbddeceeedbaeddcdcccaecbeaeabbbdeaedeadcceeededdbddedccd"
+ "abbecbdadcccdeaceccedbadddcdebdbdecbccebaaeeaadabccddabccacebadb"
+ "eecceececccdcbcbcbdabdcccbdccaeabbeecadddbddacdbcbeadccdddaebadc"
+ "becaaeddeecdeccaabdaadeacadcedadeebabcbcdedcebdededbdbebaeaaaadc"
+ "eddbadebbdaadeacbbcedeeacadeecdbbababaabcddbadaaeecbbcddabadcbca"
+ "ccabacedcbeeedaddeaaddccebadcaeaebedcabededcdcddcbaeadaaebeddbbd"
+ "eacceaeccbdaaadbbbeddbabedecdddcaabcedebebdacbabdcaeeddeceaebbbe"
+ "cbceecccacbbcebeaaedbacbccaccddbeebeaecececdbbdcbdbdeaeecabcbbaa"
+ "eceeadeeaceccacdeabaeeaddedecaceecebaecabdccadaeadaebbcccacbdcba"
+ "acdbdcbedabebdbdbeaceedcebcbebadcbdbcecceacddcababbbeacedbeecaac"
+ "baadddeccececcbebceaceabdeceddadcdddddbeabdbcadebdbaebabbddecccc"
+ "eeedababbccddedcebccdcbbcbadaaeddbdeeabeccaecdebaddbadaedadcecaa"
+ "edeaaaedadbaabcdcbecdcaaadabbdadabeccbeaedbdcbaddeebbbecadaeaacd"
+ "ecbcbabaaacbaceccadcedddeddcbccabdcbccecbcdcaeadbcaaabdbbdaacbdd"
+ "dbcbeeddbaecabccbacdeebabebadcebebdeebabbedaeabcdceeebdeaaeeedbd"
+ "ebcebeecaeaeacdcecacaaaacaedcadceceaedadcceebabedabaedcebabccede"
+ "baedbebbaaaccbccddedbbdcececdbeceeaeabbbcaddaadaebdbacbbbcaadbdc"
+ "abdbdbdcbbacbaececccabddbdedeaeddddaedaedabdcdecdbeedddabdadbcde"
+ "eceedccebacbcabcadcdeccebecdcbcaabaccdacecbeeeaabebdcdabcdaebdac"
+ "acbededbeaccdcdeebccbcddaaccedabebbeccccabcadedeebbbdaaadccbdcae"
+ "baebeaeedaabacdcacebeaaabbeeabcabaabaaccceccdebabdadeeedcabdccbd"
+ "edeaacdddeddaceceaedcdaabdaacadbacbcccddeecdeabeecaceaacceadabab"
+ "dcbdacdaaeacdcbbcbadecacbbaedddacebeebdceeeddcbdbdecddbbecbaaaee"
+ "dbcdecaaccaeeaeddbebdcedadeacbbabaeceaddebcebeadddabeceecceddcbe"
+ "acacbeadacaccdacdceeadcadccdadcdecacccbbdaabcbbdceeabeacddecaece"
+ "ebdcbaaaeacdbacabadcceecaaedcdedbbaacdabbcecddaaedebbbccaeeecbdc"
+ "dbacedbecdabdedeeccdeebbedacadeebcacdacaebdadbccacdeecceccdbacad"
+ "cdebccbbbbcecbedbcbdeddaaadceeaaaeecdbeadbeaceabedeeacccdeadbdea"
+ "dadbcbddbbeedacadaccedccbcbccceccbcaabacdcbadcadeeebdceccacceade"
+ "bdcadeddddabaaecaaddbccbaacdceaacabbbaeccadacbdaaeeeedeabbaaacda"
+ "accbcedcadccceaceacecbdebaacaaddccaeaeabeeababccacdcdcaadcabbeab"
+ "daecacabacacbcdeaaebceaeeebecadbdecdbbdaebcddadbcecbcdbbdbbeadeb"
+ "cacaebecccbdbabadbcdbadeecbcedabebcbcddaebbbaeacdbdbddbaeeabbcae"
+ "dbdceecbacbdaeeadbaebadbccaedaecdbeedaeccaebbcebcecbabaceaebbaec"
+ "eaadebaebdbeaadcdbbbdeddabaacbddebbbaabacbeacdadbaaeabbdcaaecebc"
+ "ededbeebcedbbbdeccecdbeacadcadadddddddeeadaeeabdaaacabaaaeaebbbd"
+ "ecbbedeebeeabeccebecdedbddcabecccbeabacbbbabcdaeaedcdaebeeaebaab"
+ "dddaebeebabecceedccaddacdbdcaceabddecaaaaaecaceccecddbbcdabedaab"
+ "bcbdceddcbdacabcadcdceddeadaedddbedacebbdabedbedeecaacadbbbbbedc"
+ "dcaabbdcdeecadeadebcdeccdccbeeeeaccddbbccadbdbecaacadceaecaadbaa"
+ "dacdeeedcaeaaabcbcbbceecebaceeadaeeeabadcbdcebacdecebbbcedcbdeec"
+ "abecbedcedcdcccecadeebcacaebeedcecaddcdecbeeecabacdcccbbbdddadcb"
+ "bbeedebcabccadbdccccdcbcbcdbadbeabecacccbdcdbdebcabadbcadaaaddbc"
+ "ccdbcabdadeaddcbadccbdcacdabeaebdeabbbbcdcbaccbabedaeaaaadceeeab"
+ "bcddaddaaeacdadadbcaccdbdccdbcebabaaebacdaecdacbbbccedadeebebbbb"
+ "abadedcbcbbabeabbeeadcadbdaaddddaccedeadebebebbdcbcabeeedbcedbda"
+ "ccceacdbeebdebdeaaddbaabbcaadceddbcdbabacaaaabcdccccaaedbcecadbe"
+ "eccbedeedbaadbdaebabcdbdebacbdabdcbabacbdeacbbebbabddcbababcadeb"
+ "edcdbddbaabbeedeecacceaaaceaeabeddcadbbacbbbddedcddcbeddebccebcc"
+ "cacdaaaceeeebecbbabbcbbbbbbbbcdaeeeccbeccaaabdddcbaccddacdecebeb"
+ "dcbcdbabdedddababcccbccadceebbcbbaecbaceabdcacbceaebbbacbeeeacbd"
+ "abadcecdadeaddababbaddadcdcdedaecdbeaeeddaccaeeaacbcbcccbcbecdca"
+ "baddbddcccbbccceaecacdbdeeccceceecbcadecacadbcdcaeaddbedaaabecec"
+ "beeccaadceddcbcdcdcceacaececbeedecbabeeaccdaadedaaacccddaabcbbae"
+ "edecbcdaeaebcaacbececbdacebebcbccaabeebcbacbedeeeeabecddebecaaed"
+ "bbeccdddcbaebadccdacabceeebdadbaebcecaeaddebaebcbeececbacecdcecd"
+ "eaceeadcceddeedaeaedbbebcdedeecccbdbadadaecbdceacbebdeeeaadeaace"
+ "ceeedeacaadadcbdedbbdbbaaedaebdaeeabbedadcebabbccebacdbbbacacede"
+ "babedaddceeaaeaeececacddbcecedbdbacdaaeeddcbaecadaacccdbeebbbcad"
+ "aaceedaababaabbcddaecdddcddbabcdbdeeaaeadbbdceeabeacdeceeabeddac"
+ "eebbdcededdecdabdbadedbddbedaeeaeabbadaaecbecabcdccdececcddeabbd"
+ "aedcbcabacaaaeedaebdacbaaadabddaeadbabecadcabebdeccccaeeccbbccae"
+ "eebbecdacbcbdcaccbdceaedaabdcaeeedddbcadacbebbcaacaacdeaeaddceae"
+ "ebbacaecabcbaaadcbecacddadaacdcdaeddcabdeecbcaccdeaadbbcdcebcdec"
+ "cacebeadaabadbbcbceccbdcaebcdaccadecbaedcaabdbdddbeceebdaebeebdc"
+ "bcacaeedbccedbcececbcabcbecbecbcebeacebdaccdbdceeebdccbceaabebdb"
+ "cbceaeeaecebdbbaaaedbeebbaedeedbaceaebbbbbbeddcababbdceeedcbcbcd"
+ "cbbcedeccbbcdbcecebceacaaaaaecadeeacbceeeedecbeeceeebbeeaccbbaac"
+ "accbacdbaedbdcbeeebbeacadcedcacaeecadcbcbdabbcdaeadcebeeeebcdcdd"
+ "daabaddaabcbeedacccbbadeeceecddbdeabeebaadacacecddcbdcecbbdcbbad"
+ "cdbbadecbbaebedbabdeddedcbcebaadcdadcaddcccacccacdecceddbeaeabea"
+ "bbdccebacccabcdecbdcaeaadebbbadaeeababdcecddeceebbddcaabcababeba"
+ "ddaedbbeecdaceacdacaaeabaeecebbbaeddbaceeccbedcdbdddbceabeecbbae"
+ "ccecdeceacdddddadeddbddbdcbbacabecbedebcdddcdbaaaececdccaacabcda"
+ "babcaadbbbeaccbacdbbadaccdcddbeaacdadceebdaeecaaedadedaeeecabcea"
+ "caadccdababaeebebbbbaadcbacddcdcbeedadbaaeeecddbcbabadeddaeddaad"
+ "dbdacecddedeacaeabbeeecebadbdecbcbdbbcbdbbaeaeaabedabaedbdccaace"
+ "ddbcbaebceaccdbeabeeaaaeeccdbccdebbdbbddaeecaeedcbddcedbdceecccd"
+ "dcdebbbadddbadaeccaaeedbcecdadbdecbbeaaeaeeecabcabceeeadcaeebece"
+ "cecacbdeccdabceececbdaeaaaadedbaaccbbbedcadaecbabbecadeadbaeaabb"
+ "baebeedabaadecedaeeaeeebddccaabccdccbbdeebcaedebeebedeccacebbaae"
+ "adeccbedceccbbcbcaceccadbacdbdddaebbadedcaeabcbbeadddebeccaebaae"
+ "eabdbbbeddecbaeecbebdbeacabbdaccecdaaceeaebcbbdabaadddbdcaecbbcc"
+ "accceddadeddbaddebbdececcddcecabeeadddcbeecbcacdcbbcebdcdaacddad"
+ "cceedadceeaccbadccbdbababccadeedbeeacdebcbbeddddececaeaaadacebdc"
+ "eacccdddecdcabbabceeddecceadebacecadbcecadabeadbacdedcebeeebeaeb"
+ "ceceadccdcadacdaecdacbdceadaaabadebdbdacbaaecedcecbaeacccabedcad"
+ "ddddadcacdddbeadcbcdceedccdacdbabcaeeeaeeaaddaabaccdcdbddcbabceb"
+ "abbcdeeeecccbaacaadececdbeebdddcbcdbaebdedccbacebeeeddbdcaaedbab"
+ "cbaadaabeacedeacbcbcbbedabbeaddcbbceeaddabcdcedbddcaccedbdceceec"
+ "edeabdbbbeceaaacdabeccdddbedbdcceeaaecddecbaebeecaacaeeecddcbeea"
+ "bdbabaaacedbddbadbbeaaaabaebebbccecbbadacdcaaadbacddeebddadcccdd"
+ "ddbaeddaaceeeaeedcdbbcdbaaaaadbdedabbaacbeaeaddedbeddbeddaebadec"
+ "cedcacbaabdaaedabcbebbedaedcaedbccecaeabeeaddacaddcbeaecdbcdcdba"
+ "badeccccecaadbbdbeecaeedebeccacddaacbeebdecedecaebdeebadeddbcabe"
+ "bbccbdabbaecbebaabbcaecaebdcddabacaeaacdeabbcaabaabdddabdbaeddcb"
+ "bedaeddbbdabdbadaccbaeccbebdaaabaabbbadcddaebdaedaaddabdcceaaaed"
+ "eacbbdedabaebcbcebaaccaaeaeeedbaecdedacbcdbdabdaecbadaeacccaadba"
+ "ccaadcbdcadbceadcedadebebdddebdbdbbcabebbedbbdcebcceeacdbcddadac"
+ "ecebcbdedabebacdbaeadecbbeeaadcbcabdccdcaaaabdcadbcdbecbcedbdeac"
+ "dbdadcacaddaadbbaeedcecbcbbecaddbeabeceddcabcecdecacadddbccecadc"
+ "cbeeedccdaaacbdccacbacddabddebcdddaebbabaacdbeeeecabdcaedeacebcd"
+ "dddacddeadbdaecbbcbcddbccaaababdbaebeecadeacccbdaddcdabcccacdcde"
+ "dcdbdbdebbdabacdccdacadccedadbbaaebdacecdaacedaeaaebdbbbdbddcedb"
+ "bdabadbdddecebcbecedeebdcddedadcbcbddeadaaacedbcedeccbbdcbdbbcde"
+ "cbdceecbdeecaeadaedadecaecdabadcecdbadddccbecabcbdcaddaaaaebdaeb"
+ "aeebbeabdbbaeeabdeddbababeadaceeadbedcceecbaaeebacdbbdadedaabdec"
+ "abcceceeedececeaeadddabaadddddccaaeebeaebabadaedacedbebccacdeddd"
+ "caadebadecaaacabeecadabbeceebdecdbeabdeadabadaebbacabddeaebeebec"
+ "dacaacaabaedcdccdadcdcbadececcedcdcedeadeaddaededabddceaebacdacc"
+ "ccdeeccacadcdbaaaddcdeddcddebbaebaaeecabcaeeacdaeadcbeabdceacacc"
+ "abeaaddbebaeeeebcacbadaddbbcdabbebeabdaacdbbbdacbaeebddcbebbdcde"
+ "addcadcabedacabccbdabdedaadddcddbeebbaccbaacccdbbcedceabeeabebac"
+ "baeecbbaadceacecaeaaabeccbaddeedeacbcbaacceeebedecadedbddcaabddd"
+ "accbbcaaddeeaededeccadeebaceabbddadbdbabdbdccddaadedaeecabdbedda"
+ "ddddcedbceeaededbabecabacebcceacaecceaabadccdadbddedecdeebebaaba"
+ "ddadebacadbbbcaccbbdacbedebcceeaecceecdcbbcdbeacbbbecbedbeadeced"
+ "cdcdcdcbbbdadebdceebadcaaecababdddaddbbdeddbedbcecabbdddacdacabd"
+ "ecaaacedebeacbecccaddbaccabcaecdcedcdaeabdcbeadedbaabedbbebaabdb"
+ "bdbbcebedcaaebdcbebdccdcbcaeeaeaeaadbddeeebccadbcbedacebcaecdeeb"
+ "eeddaddbabcddbecddbddbdaaacebcabcddeedeccacceebeaeceaccecadbcabb"
+ "bbbdacaaaddeebebbecabacbcbabebcdbbdcdebeecceccaccececebcdebbbeac"
+ "adaecebdcedccdddabcbcaeeaaebeabdebeecdcedaacdaacbaeedccbeaddadac"
+ "abebdcaeadaaebbdadbaddeeaeeadcaebaeddabcbdbececbcedcbdbecbceaaeb"
+ "dbcaccedeedaadebeddecbeabaeadbaebdcdaabedceedbbebeedbadbdeababcc"
+ "ceccdcdbeecddbecdeeaadcbebecabccbbeecceaddeebadeceebcacccbdedadc"
+ "ebceddeebdbceecbbeeabbcaaecccacccabeaddbdedbedaecbeaedadcbcabdec"
+ "ceeacdabcdbcaeaaadcdccacdbbbecadccbaedeeceacdcedababcaeecaabedea"
+ "bebecaaaaabddbbdbdcccebbdcaddccdeebbcabbacaceaddcedeaeaeaededbcc"
+ "ccecedbaeddddeceacbabeacacabbcceeeaeacadbddbeebeabdecaaceaadcaba"
+ "aeabcbbebcbbddbbbedebcdaaeccbebaaaedbbacbcebbcdacbdbcdeeeebeccbe"
+ "eaaaecbbeabbcbbadbaaceacaecebcdcaaaceabcecdabbdaaccdaeededcddead"
+ "ecceadbaedeaabbabecddcbdddeddaabbceccceceadbabcaddaeccccdededddb"
+ "cbababaacaccedaacccdaedecbdebeabcdbddaaebccbcbdecbabddceebacaedc"
+ "beedaeeabeaeecbceaacdcecaccceecedeeeaadcbebdcacedbadebbaaccdceee"
+ "eaddabdaeadddbdadbdbadbeeeebeeecebadcebcdeddaebeebdddbcbaeddcdda"
+ "deddbcacecacbeecdabcdaaebadeadadbdbeccbbadecbbeecceecdcdcdbaaedd"
+ "becaddceadeabbaedeeccbaeaabaeccaabaaadeedeeadeddcbaaecaeedaacaee"
+ "babbbddaedecadbdbbbbeeccbacebdddacbbecdbaeccbebecacbadcaceedcdde"
+ "eebaabbcdacbcaaecadceeaddeddcddbcedebbabddbdcbaeadbdaeeeedabeacc"
+ "acadecceeabeabecbddbdeadbbeccadeaeaaecdccabaeaaadadbcbadaabbaace"
+ "acabecbdccaadababaadbaedaccecabeecbebaccabdbddbdeeceadedaacbbede"
+ "dcceabddeddccedecabaccabedbeeaeeddebecaaedecbddcbbbabbbdccaeadac"
+ "dadbaccadbbccbaedbddaaeebacccccecdeaacaeebcaaddaeadeccbbaaabedcb"
+ "abceebecceddddeeebdababcccbacacabdadbcadcbadadeddaaceddddbbcdace"
+ "baeedeccdcbdadcecceebdbadeedceadecaeccedaeaeeeaeedddcabeecddacca"
+ "bbbeabdcdbabdabdaecedbebdcbdadceacbecebcaaaeeceeceededdbcabeadca"
+ "aceebaccbdceebadedcbbbbdccdedeedcbadceaeabdaddaedebcaceaababbead"
+ "bccdcceeacabdceabcdeddbbdadaacdeeecddededbdeccedcebbebaaadaccbcc"
+ "edccbedbdedebbbababeacbceededeeeceeebbdccccdbbeeceeeeedabeebccab"
+ "deddabcbcdaceadbadabaabbcecdcddbdbcaceaabebbeebcbaeddeacacbbeabc"
+ "ebdccdcdabeecbdcdecabaabbdceabaeecbebcbdbeeacceddacaaaecbcbcccde"
+ "dcadccdacebbccbdcadebadeaeacebebdbadcecebbaadeddeacaddcdebabadcd"
+ "cdababcaadbbdcccdcabadadbcadacecdecdacacbabbcddbeebbaaacebdadcbe"
+ "ccddaaedcccaebbcabccaeacdeaeccaabbbdeabbeceedeebecdbbadddabdebad"
+ "caaabeeeedbccadebacceebdacbcbdebabcbdeaaeeaeadcabddcaaaeaeeccdce"
+ "deaaadaedebdbcbdeabebceabcdedabcbbcebdeebbecbeeddbbcabbcedecdbad"
+ "cedcaeadcbbcadbebcbbdedaabedeaabeeedabbceeadbbceaddcebecadbeadbc"
+ "aebdbebaacbaeeaccebbadabddbbaadbecebaadaaeccaeeccbcceaebcbceebde"
+ "eeecedebbdbbaaadacebbdabbdbbbcbeadcbcbcbdcadeceedabceaeabcbcbbcb"
+ "debbccaddceddcddccdccaadbcdecacccbbdccadddcebdabcbebdaacadeabebd"
+ "beaaddbceacbcadbbdbbaeceadeebadbedbbadaeaacdeddaebdedaabccecedad"
+ "cabebbadcecacaeaceddcbddeadeedaddbeeaaebeedacbbeeeeedcaddcbbbccb"
+ "adbbccacdcdceababddeedddacadeadedabcaabaddddcbdceabbdbbeeedadedb"
+ "bdeaebccdbcebaedcebdbcdabedcbdededaedabcdcbdbacbabcceecdadbcdeca"
+ "beeedecacdeaecbcecaeebdaaaebcceeaddeecbbbcbaceddeaeaaabbbabeeddb"
+ "acdecdccbcacdeaedcaccadbcdacaacecaeaebdabbeaadbaaeebabbadbebecbc"
+ "abdaedcbadaeeaaeaceacebdbdaccbdebceadaabbabbcceeaadcbaceadaaecda"
+ "adaadaabbacebecddebcecddecdedcabcbbaaecebdbcdeceaedbedeaeebadded"
+ "abeedddbeebeeadeeeacbdbdeddaacdbccdbeedebacadcbcddbecababbbacbcc"
+ "cebeeaeedbdeeccbecabddeaaeadddacdceeecaddebeeedbacdcdbcccbabddbe"
+ "bbecebeecceaacadbeedbbadaeaccbdecabdbcaacaaebabdadddaaeaedcbeccd"
+ "cecaaacebaaaeeccccbdbecaecaddebaaadacbdbbddcbdccdcaccaedecddcdad"
+ "abedbdeabceaeddbbdbdecdbddbabeadecbaebaedaedbacccdcbbccddcabddae"
+ "ccbdbedeeaaecdbbababcedabaddaaacaadadacdbbcedecedebbbdcccbbcdbac"
+ "bbeacbaccbdaaaeeabdceacdecdbacbedecddbabdaaecdcddbcbecbbeccabadc"
+ "addccedceacebeacbadcebdadcebbdedabdbdbebbbdbbadeeebeacaeccbddeeb"
+ "baeeddddacbaedecababbdbcaccaedbeaccdbaddcaedaabdeddbcbdcebdcebcd"
+ "beeaceebbdaeddbbbeabecdeabceccbbdbbcbdaaeebaeaadaddbcdacdcdadeec"
+ "acddcdebabbebbedeadbeddbbcbdabeddbebbdcbbeaaacccecebeeaadbecbdda"
+ "cdbcccecbbebacbbdcddbbeeedcddddbbaaaadbcacbdbaabeccdcddbcbaccbab"
+ "aaaddaacbdacbdcabdeabccdccdcaccceaebbadbeeddcacbcedeadebaebeadbc"
+ "deccceadadbaedcbdbacbaeabaebcbeeaddbacdecbdceaabcecbbbcbcadbaaec"
+ "cdeedbdeeccbebecdcdabcebbaacaddecbdaedbaaacecbedbdebdadedeabeddd"
+ "ecadcdbbcddadbababddbbddeadbcabcbeedadabdcbdeecbcbdbbbbeaaaabbdb"
+ "adeaeeeeadedbdcdebbdddcbebecedeaaceedabcaddccdbcdaeddeceabeadbbb"
+ "dedbbceacdcdcadeaedcaaddeadbbeddaedaaccedbceeddbcbaebaacdadbebac"
+ "cceaddbaeaccaedaedeebaadcabcdbbaccbbeaececdabcabeedaaeecbaccdadc"
+ "dadceebeaaeaddccddedacdeceddacbbaeebabbbdbbbbccebecdcadacabbbacc"
+ "acbcaedeabbeecebedbcaaccbbcdabddeaabaecdbcacaeadbaddadbbbbcebaee"
+ "deeacbbccbbdaeceaacdddabbccacabaeaddcebebaecacabaccaecddbbaadddc"
+ "cecacccacddabdbbedbadbdadecadcaedeeedcbebdbdddceeddebbdbaeeccbce"
+ "bddbccaaecdebdaadbcdaeebbcecbebeddcececadcedaaacdaacadbecedcaaec"
+ "baddcccedcabcaabddcabacabdaeccebabeabdcdbbcbadecbcebdaacaeaccebc"
+ "addbdbabadadcaaacbaadbbdbeeaaebdbbcdcddbbeadaebeadbacccaacabcacd"
+ "bdeddbbebebaabadadbaaddecadedabdebebbaecaddbbcdbbaedadcaaccbbbce"
+ "eeeaebecbddcaeeebebdaedbebeaebeccaedddbeedbbadceacbdcbcceaaabdda"
+ "cacdcbadecebdabceccbcabbaaecccdcedbeedbdabaeedbeddabebdcebadccab"
+ "eaeaabdcccbaddeaacaababdddadcecdbbddebeacbdcdecebeeaedebebcebbae"
+ "edcbabcddcadaeeabcbddcdcccdceaccbabbcdadbececcecbbeecbccbacbdcdc"
+ "bcbbedadbacdbeadccbbaeacaeeccbaaedcbdbdabdcebacdabacaaebedbdcece"
+ "baadccddbcaaacbdebdadbbdaedacbebcebcadbeeaacebabdccdecdcbebbeded"
+ "cbabbadecceacbababccddeedcdedeeebdbcbcaceaceccbdedbcebedbcbaccac"
+ "cbddbdeadcccdbcdbcedbcdcccceacdeaabbbcccdbcdacceeaadaebcddceccdd"
+ "deaeeaadbaecbccecaeeabadecbecebeebcaadacbbadaadbeacebcedeacddcea"
+ "ccbeecaabdacaccecadeeaabaeaddacacededabeedcddbaacbeabaebeebeccbb"
+ "bbaccabdbdabbdcbacedeedacaaedaacdaebceacaebccebcaaacccbceadbbddd"
+ "caadcdedebddbdddcbeabdddbbaaddacbedcacaabddabeecaccbbeabeaddacaa"
+ "bcdaedaaeeaaaebebbbaabcdadcaebadabdeeabedcbedbdeddeedaecaaedaddb"
+ "cddcabaddeeadaebeeeceeaeddbbddcaceeedbdaccddaadaabeaadddeaddbeec"
+ "acedbbeebdbbddbacebbaddaacaacbdceacddaddccabcceaadeaabeabadbeeed"
+ "cbdbbaeecadadebecdabddcaeedbceebadedeaceddacbadcecdcceeeddacceed"
+ "ccdaacccbccdddccaabaecdcecdabbedaacadaecebdaceebbeaddcdbedccdcdd"
+ "deddcaeebeaaabbdccbbacacbceaecaebaaececaaaaeeeddadebbabacbbbceea"
+ "dcceeedeecebceacaabaeeadebbebabecdbeadbdbeecceeccedcdcecedcbccba"
+ "dbdbcbabecebabaeccbaadcadeeccabebdacbabccaaadeabdecbdabeacbaedab"
+ "abcbdabcabcceabdddaceebaebdaccbcdeabdbabdeedcdbcebeddcebaaaeeeae"
+ "bccbbdcccadddebdeddcebcabaccaddeaaaeedeacbbdedbecadcdaddddbedccc"
+ "aebcdeceacddcdeacccbebbbeecdadabcbcdeadaabdadcaabcdeecebeeeadecb"
+ "ddeeecdebbecedcdeebeeaabcedaddccacddaceabcabeddaeadbbaecacbaceda"
+ "dbeacdbedabaeaaadbccaaceaceebeeceeccabceebecedcadddbdbaabcaabaec"
+ "adbaaeaaaabbddabaceeeeededebdcaaccececbdbedaaddcaadecececdadddcd"
+ "bddeeccacddcddcaaccebaabdccaadbebbaebcabdbbdcdecebcdbdaceacdcdba"
+ "eababcadacaecabaeadcbaaabeeaddececddcdbeaaedcbcdabeeadaddccddbea"
+ "eabccdabeddabcbabbdeceadcbcbeabaeabdccbbdbbbeeedcdaddabcadbeebbb"
+ "ccdbaacbdeeaeddaecbbcccebeeabeddabbdccaacbdcdecdddccccebdaadeebe"
+ "dbecabbaadaedacdcbdeaebacceadacebabeeaeddeebceacebedababececadca"
+ "eebeacaccaeababaceadacebbcbedaabdebebcedebdaaddbdaabddcdeaccddde"
+ "daceabbbaeddcbdecbdaadbdbacedabdbcccabdabaccacbccaccadeeceaceaba"
+ "abeeecbaddbedbdeaeacbdcbeebabedacebbeddaeddcecaaaccddaccbdcdecac"
+ "bebaccebebbaccdcabecabcecacdacdecbcaedabecedebeeccdbccceabddedda"
+ "bddbbcbbabbbceecbbacbaadbabacbcacacecdcbccceeedcbdecdddbddbbdaea"
+ "ebaebbeadddeeeecdebadbaebcbecbcccebcbccaacdddcecbadbcbdceedddbdb"
+ "bbebccebebabbbdaadecbbdeebaaaeabcdeceebaedccdedcdaabbddededcaead"
+ "eccdbbcdceaebccebacebbdbaacaaddcdcaecccdbcbeabbcbeaaeabdcdbedbbb"
+ "beacdaebabedcdbbdceabcbbdeeeddccbdbbbdcbddccdccaacacecadebcacbee"
+ "edabaddecdcedbaeaecbacacbceecedbcceebdeaebaedabebcdaceacdeebbcdc"
+ "abdbadbeaccdccdccecdccebcaaadaabbbcebdbbcbcbbbcaaeabebcadecbcbed"
+ "ceaceebebaddbacacaadcdcaaaaddbeccbbdbcccdcebaecdeecbecaccccbddbc"
+ "becaccaeceacebdabbebcccccaceacedadaeaacddabdaabbeeadaeecbccedccd"
+ "beedcacedcdebbbaacdddbedcddbcdaccdaecdbbadedabaeaabbaccdedbacecc"
+ "dedbccdacccaaaeaebdcbcecbdadaabedcdbdaccebddcaebdbeabbaadecdaabb"
+ "edececaecdbaaeadaebebeacdcacccccecbdcdaebdbacbebeaeeaebddadaddda"
+ "cceaaaabeaccdadacbdcdbaecdeebdbedecadbacabaabceebcaadabecebedcae"
+ "beacebbaaaceabddddbababaaccebedabacbbecbeabaeacceeabdaaddacbaabd"
+ "cddccebbcecdeecbddebeadeabdabceaceaeddbeddccbdeccbddccdbcaedceca"
+ "ecbdcdcccacacaecacccecccccadadbeacbacccccedcdceadaeceacaddabdcae"
+ "cbddadbaabcdbaedbdcbbbdaddbbcaaaecedeecaacaebbdbcbaaeaeeabbbdceb"
+ "deacacdbdedeebabcdeaaccdcbcaecbbeaadbdbdbbdebcbbbbaebacdeeadedcb"
+ "beecabeebcecdeeaeaecddbbddccdbaddebdeddbeacecdbddecabebbbaacecee"
+ "bcbcedaeedddeddecdaaaedcaaccbabaadccababceddadebcacacabdeeecdbcb"
+ "ecbbbddacbbcebddabbbedcddcdaaaeceecbcaddbbececaaabebdcbebedecddb"
+ "abdceadcbcabbcaaebecbcccacecaabdccaccadabbdaabdebdbbcdceedcecdaa"
+ "ccbebeeceacebccccecaeadbabceaeabdbcbaedbbdeebdbbcaabaebcecaadbee"
+ "dedccacddaceeacbacacdeedccaaeeddbedeacccbeaeaccccddbbebadbbedccb"
+ "ecbbdabbbdeedbadcbadecadbdaecccccdbbddcdcdacbeabadacbdabaaedaded"
+ "ebcdbbadebbcedddaaabaeeceeaedacbcbacadcddabecbbcdaebeeedeabedcce"
+ "dddaaeadbdbdcdbeaecbcadbddedddbdaaddaecabaceeccbecedaabcadeaddcd"
+ "bbabcdabbbdceeaedbcbaabcdbeebeadbcabbbceebdebdebecddbeeecdaddadc"
+ "aceeabedebedadcbddecbabcbcddbebabecbeaececdadccbccaccabebacedcac"
+ "aedcdaeaaabeabaeadadacbceeeedbebdbbdbdcbdcdadeaabaaaedabcadeebbe"
+ "ccaacbeccbababbeeebaaebdcbaaadbcbdeccdbcdcdedaaedadaabcbcdeaedeb"
+ "aabaceecebadcebcebecdbeaeebadeddeabdcaddaccedecaeceaeeaecdaebddc"
+ "edbbcdeebccebacedacbdcdaaecbacbccedaccdacbeceebbbccacacbabeeaded"
+ "ebbeecedcaabcccbeaddcbaebcadedbacdcbabdcbcabeaebcdeecdaddaceaedd"
+ "acdcccaeccccacdbeadccbbacedbdabaacdccbcdbaadbcbadabeeedcaeaccbca"
+ "cccbadeebabccdecedadcbbeddbbbbeedbbedbcbbdebdaeaeacbdeeacedcbbbc"
+ "bdabdcbececbceacbeadcdebdaacbcdcdbcddbbdacaeabebdacbcdeebcdbaaaa"
+ "beaaeccbaeecbdbeaaaadadeeaeebacdaccbaceadbbbcbacbbeadcbcdabdbecc"
+ "cbccbcaabedeebccbaecbceecbddcdacbacceecddbccddbdebbeabeaecaddbde"
+ "eeecaceeebdcedabbbceccceccaabddeaeeeaedaabadddbebadababddceeebbc"
+ "accaedcbbdebdecacbcceeaeeaecaeeaddebededdbaaadbddaddadbcbceaaaaa"
+ "bebeeeceeaeecdabdbbceaceedebaeacabecdcaaabbcbcedaaedacbacccaadce"
+ "adacccaebcdccedbebbbcaaceadabcbadbcbdeabcbbecacdeceabcdaaebbbcac"
+ "caceaaddacdeedebcbbebccccadcdbebdededcccaaacebbadcadbdedebeebade"
+ "ceecddcbadcdacdedadbadcebbbdbddbabbabedcdcceeeacbaeedeccccddcdbd"
+ "ebabadabbccbaccdaeeeccacabacdccdddbcaaebbeabcdccdaccbbdbdedcbddb"
+ "dcdabebcaaddbcedaabbbbdebeceadbaedcecceddbcadcbbbccaabbaeeacedbd"
+ "eababdbdcabeadabbdeaadddedeababdccdadbdcabceadaabcdaadbeddadbebc"
+ "cbaedcabcdecbbbbcaeebcbcbeaeacacaeedddbdabbbdcdebadaedebdadcacde"
+ "bbdcaaebecedeabceeadeaccccabcceecaecbeeeabdceaacadcbaaadecbceaac"
+ "ceaddcccacbcdabbcbcbddabbcdecbcbcecbacebeeaeebbdbdeacedcdcdbccda"
+ "cdbbacbdcadbcedebedadebeccecaaadbceeebbcbbeadecaedbecebbecdcaadd"
+ "eddcedbdcaebbbeeaceebdeccdaabadbeeadbdcdecbeccbbcaedcaaeeeeaedba"
+ "cceeddbebcbaeccbebcbaedcbbabdeeeeacbedbbbbcceccaddbdccaeecaaaaba"
+ "cedeadcabeeeecccacaccdbedcbaacaedbbacabebdbdbedebbebacceaaadadac"
+ "acbeceaaeddadaadecbbaedabaceceebccadcdeedaeabdacbcaecbacbcbdaabd"
+ "eaecddbeaceddbcbdabaaccbdbecdcccdebdabddcaababdcdabccbdeadaaceca"
+ "bbcaeeacddedcdabdddadeccacbbbccdebcebaeddedbbedeebebbcbbcecbeede"
+ "aacbaccebdacddeceaceecbbecbbbedddceadebdbdaabccbcbcbaccbceeeeaec"
+ "dacdddeaeadabceeecabdeeceaddcabaecadcdcdbcbeacaeddceebcdadbdacbe"
+ "edbbcbbecbbaddbeedddeebaeedaddbeeddbdeabacdabbedecaaecddeabaebba"
+ "dbebeeeacaaabcaadebbddabceecbdebacdacbcebadbeaaddcaebddedaedccbb"
+ "eacbbdcaeaecdccaeceaaadedabbbbcacaeabedabeabbebebcdddebcebcddabc"
+ "edbbbbaccdcacaaeededdbbddcaceadedddaedbbcbdbdaaeddadeedaebccdcbe"
+ "dbaeddbbcdaceeabaabaddabdbdaaadedbcdeaaceeaaddddecbdbedadbadddac"
+ "bdaebedeabcabaaecbacdbcbcdbaecbcddbecbdcdeececacacdbaeeebebebcae"
+ "bcebedeeccdbaeaddcbcecbbbabaeeaceedaadaaecabbdeabcdcadeebeedaede"
+ "decceccaabbdbeacdcabbebbbecbcaabcdebdecdbddcdabcddcccecdaadcdbed"
+ "bedbcadbeecbdbeeacdabcdaacaacdcededdeedeebbbedecdbdeddcdadbaeead"
+ "ceaabcdaabdabdacacaaeaeececdbdbcbedabbdcdcccdcbbaabadeabcdeadada"
+ "dcadcbcacaadbeadcbaeacbbdaecebddbcabcedaaabbbabeeaaaecebeecedcba"
+ "dbbddeebebdbdcceccaeeaebdadeccddcbeeaebaddbbbaaaababeedbcedcbddc"
+ "cceadceeabdbaecbceddecadbbeeeebbbbbdbabdbdeaccbdcbebbdcaaaecdabe"
+ "aaccbdcbdaddddccdbeaaadaddbbbbddbedadebddceebebeecadadddecdaedcb"
+ "edbccdecedeeacaebccbadaaddabacdaabcbbdcabeadbbcdddeebbaceabbbeec"
+ "daeacbbecbedccdddbcbeccdbbabbcadebcaceaebeedbabeaedbdcecbbecdebd"
+ "adddecdabcbbccbbaeaaeaeddbcdbbbcdbededbadbeaabacbdccaebaadaedebc"
+ "bcddedcbaacacedacbbebcaccbcecdcdbddcaeaadeeeeedeabdbcdbaeeceeddb"
+ "cccbadabaaacadbedadaccdacdcadeaeecbeeccbacdacdceddeddeeadcbadbca"
+ "debcbeadeaaecadcdcecdbedcabeabedecbbecacbeaedecbeadbdeeadaaaacba"
+ "edeebacddcccadbeecaaaaaddcacaececadcadacdcdbabacbaddaacacdcbecde"
+ "edbaaeaeddaaccaabdabdeaecddccbdebbccebaadaddcaabdebebbbbcaeaadee"
+ "bececbcbadebabbecbccdabaeebaecdbdcabccddecdddeeedeebcaaeceebcbea"
+ "aabdcececaeeaeaacbcebcebbcdceddabcecaedbbabdeccbedeadecccaccbeca"
+ "cdacadbaaaadbaabbabdcbebbadbceedbcebccccedacdedcacdbbccddeeabeba"
+ "aeecccccbbcdabaaceabcebdecabdbbdbcddbcbebccbcacbbbeacaceacadddaa"
+ "eddcaacbddacddeeddebeecacaaacdbaadbdabceedaeaaaddbaedcbbcccdcebc"
+ "eddaabdcceebaaccbaccdbddabdecebdebddceadebebbbcedcdeedaeabdbaedd"
+ "bcabbbccaaabddccdbcbdcdaeaeaadcaaccedaccedebbcbaebedacdeadcaecdc"
+ "dccdbacbceccebdbacaddaaddcbcdeeabcdacbdecddeddcbadbddcdccceeaeee"
+ "eacecebccabaebcebcbedaecdabdebbdaeccbabaccddececcbbbebcabddabdcb"
+ "abaacccebeaedcadebcebcbceeceaadbcbccaaecabebabadbcbecbddbacdadee"
+ "deeebcceebceebbcccecbbcdbdaddbedbcbdadeedeabeacbdababaddccdeccbd"
+ "edabddecebcdbecbcebcbbbebaceabaacdededdebabaddbbeabebdccddcabedd"
+ "daecdaeebedcacbabeccdabeecabeddeaccaaaecdcdacbcecbceeceadedddeba"
+ "aebddcedaeeddbbabbcedcbbeccedddebbaeaabbeaeaebcdbbebaeccebcbbbcb"
+ "ccbbbdcddbabeddaeeadcacdceadcbedadaebabbedbadcadebdaeecccaecbdee"
+ "bdddebbacedcbbabeeadcebbcbcebebaddeecebceacbbabaecaabbbdbcceebec"
+ "caadbceaacabeaaaabacebcbeebbebbeeeaacceaacdadcaeebbaeeebdaeaacbb"
+ "bdaecddadacadbadddeeeaeacdaddbdeeeadceeacdaaabcbcacdbceedcdaedbd"
+ "dbadccedcccbcddbdcbccecaaeabdaeadceeeeabaddbcedddbdeaacebecadaac"
+ "dbcaaccebecdbdeacaaeebebeccbadeeabadcbddeccdceaadbccebdbdcbaedbd"
+ "bccccbbaacdebecaabcbdaacdbbaaabbeacecacdedebbabdbcaeaecdbeabdcab"
+ "edababceecdcaededacaeabcebbcdddabebdcaccdeedebdabadbdbaabebbaeab"
+ "eebbbcbcbbebeebcddadddacaddcbeedeaeeccedcdcbbaebadcddbbbbcdbcdee"
+ "acebadcaadddadbbbaebdecacaceaeaeebcccccdddecabaeccebccadecebebbb"
+ "dddadacaeebbcbceecbeddecdebdbdcdceabcdaacabcebbedceadacaecdebaba"
+ "acacbdcdccecaacccdeccdaacdddaddbbdbaeebdbaadcdaacaceadedbcbebded"
+ "dcdbdeadacebbabeedcbecacbdacceccaaddcbcdbbecdededecacaecdbaaadbc"
+ "ebcecceeaaaceabbbebebeeccbbcaadeeedebabccedaaecaabbdaedeeceacdba"
+ "eacecdacceacdbecbaebcdbcddeccacbdecddeaebeabaeaecbcabccaaeedeede"
+ "cacacadcccaeedaddaeebebdcbabecbacaacedbddaeeccdbcceebbbbaaadeace"
+ "aeccdcddeacbebabaadacdcabbaebdbecdccbccecbdedacaccddbbedabcaadbd"
+ "baddbcddbabceebebbbbdbbdeaeebabedeeabdccacedabbacedcabbdeeccbbcd"
+ "beedaadadccedcbacaccaedabedceeaabbbeecaabaedeeebcabeeaadebdbbeda"
+ "beaebddbccaedbbbdabcbddbdcaccebecbeedaeebbadedabedecebedcadddecd"
+ "debcbebddddbbdeebaeedbccdaaecccadadeddaabbeaabaeaddaebbdaacabdda"
+ "ccadacadbebcadcddceceeaacabcdedaacbeddabbedbdadbdabbaceaebdebeea"
+ "aacecaeccdeaaeecacdedbaeebbddcbbaaacbedcaeabccabcdbaaeeebddddded"
+ "abeebabcdabcadcdacdeeddcabbdebbdbaebdccebeaabdcdbbeacbababbbdaec"
+ "ecbcdeccedeeddbebebdcacededacbedeeeeeaeaddaabcbbabbcdecdcedcbacb"
+ "eacadcccceadbbaedbadbbecdaededbbbdacdcacebceccccbeaaddbcddbbdddb"
+ "abdaccdaddaaecbcbbbdbdcbceadcebecdddcaeebeeddbeddbdeeebaebbbdeac"
+ "cdeddcccbdeceeabaedbdeecddbcabcbebabccbdaddbcecdaadabdcceadbcbca"
+ "bcadcceabaeaaecccdcccdbcdbdceeadbecbecbdccedcaaabedddcdadabecaad"
+ "daddddddabebedccccbdeebbdcebdddceeedbdcdbbdeedbcbeadbdddddebaddd"
+ "acabbabceccbbecbedddcccaabdbaedbedecdcebecebdcaddaabcacdcacbebee"
+ "cbebdaacdbbbaaaacdacadeeecadbceaddadeeecbcdeccbacaeaaaeccbbadbdb"
+ "dcacaaadaeeeedeaddaedacbebbaeeacaadcedbacaeaebdedbadbaabdadeaebd"
+ "aaaaddecbeaceddaeeeaabdbeacccceddeaeeacdbcdacbceecabbdedceaeeade"
+ "addbddecbeeaaaccbababdbcabcbaedcedabbbddaadbacbccecacaaedcddacbb"
+ "bebaaebebdcdaddbcecbedbcbdcddededecceadaeedebeccadabceddcadecbee"
+ "babacbbeddacadaccdeaeccbacdacbebeddbcaccdceedadcdaaccaecdaacddbd"
+ "dbaaaccecbceedaecccabaaacdbbcacbaecaebedbdaaeadadeecebecebcbbded"
+ "dcbeeeeabecbaedbdadcbcdebadaabbadddeabbabaadeceeabaaadcdaceeabbc"
+ "ceeeedcbdcaedcaedcedeccdabeeeaeabebcbdeeeedcdceddbecdaaccebdbaaa"
+ "bdaebdacababecaebdddcaceadaaabbbedeedcaccdeaedecabeebbdabcbecedc"
+ "caeecdacdddeedbbdbdedaccaaecceeacccdcbbdaabadbadddbbdeaacebbadee"
+ "aeaeedcdbbcbeeccbceebccddadeecdaedbececdadbbbedbadcbcbeddccedbbd"
+ "abdacbaecebbcddacbebeaeaddbecbaebbcebceaddabddaddbebaeacebadebdd"
+ "ccebacebeecdcedebbcebdadedcebcacdbbaebbbbaaaebabbededbeeecccdbce"
+ "adbdbdedabbcbcddcbcecdbdccccbbdaabedbbebdccdbdddedbebddacceaebeb"
+ "ccdcaaaabdeaabbdbaeddddaacaebddabaaabcadcaddcddceaccdbdeccebbece"
+ "eabebcabbdcebaccddbccbcebbceeacadadddeebcaecdddcebdbebbccdcdaaed"
+ "adbebadbdaceacdacdcacaceaecbbceebbabaacadeceeedbdcaeedeeaeecaadd"
+ "bcbbcebdcadaeadaaadebebaddaecbbdadaedbcabeededcdaecccdeacacacedb"
+ "adbbcdecdcdedaaddebaccaabebdeaaccbbededdcddbabeebbbdbaaaeaccdada"
+ "dadbdbbcaaabccaccbcceedcceceedeabdaaddbebedbeccaaedbeceebedecabb"
+ "aebbbaaedecacbcdcabdcddcdbacceeeeacbaaeeecdeedcabadccacabdbadbcb"
+ "ebbdbecccdbcdcacceedcadebabcacdebcedcceecdbebdaeabdbcbbedaaecbaa"
+ "dbacbedcedceaecdbaeacacabebdbcecbeebecedeabecbcbecadcebebbcecacd"
+ "acdebcdeaecccbeabdedcdbbaebdbcdaabbdaaeabaeeeaebedddbbdaddeebcca"
+ "daebbdeabcdbdcebbdddaccdcababcdbceeacdaacdbbbcbadbecadbddacadcba"
+ "accdcbdcdbccadacbabebedabcbaebdcdeaebaeebbeceedbeabbcaddbdcdbebb"
+ "eeeacdcedecacbdadcbbdccbddbabbeeedcdebdadbaecebcdddeaebdedaaecbb"
+ "bbeecbebbedcaccaeabaedadbcceadbbcdbdbdcbcceacabbdbdadcebbdadbeaa"
+ "aebaacbadacebaccddacbcacbaeaeabeebbacecbadbaeaaedaaacacbaddceedc"
+ "cacdbbcadbdedebbeabdcdedadbcbaddccdebbcecbbceacaaadcdeebaeeeaaac"
+ "eeebeecadeeaadedeebbcbaccbbaedaecbbbbbadabcceeedeabceeacdebeeece"
+ "ceddeeaacebebaeaaedcedddbeaeaeeeabccbbbcdaeacabaaeeeaeaeeaccdeba"
+ "debeadedbcaedcbbcddeeccbeccebdebdcdeabbeeccadadbbddcbddaeedebdad"
+ "abceddaebdccbbbbbeecbdccbaeabdaababceecdeebbcdadbcddadaedbcedabe"
+ "daadadcddcdbaecabaeaadedbeacdcbbcdcedcbbddacdcddecaaeabbdbdcbede"
+ "cccacdecccdbedeaadbecacadaabdeaebcbdbcbccbbebdaacdbdecdecadacacb"
+ "abcbeeebcadadcbaeaeacaaeebeebeceeecdbbcdccacacaaedcdebcdcdcddcac"
+ "cbdcbabbeedaccedcbbabbdabbedbeabbedcaaccadddabdebebecdaeceeebbbd"
+ "ccbbdacbcaadbaddedeaaaedcecacdbaebddcececaaecbccbcbdcabedbcaebab"
+ "adeceaeaacbdabbdbddcbbdeccbdddaaccccabcbedadbcaedbbdcdddababceeb"
+ "aaaebcddbbcebaecbbddadccacacbbccadababbceaedbcbddbabaebabbaebaab"
+ "bacacccdacbaacbaddecbaeebbbabdacdbdcdcdddcaaaacdcebbccaacecaadad"
+ "ebdcaceaecdceacebdcebaacbddcdbcdeceeaaceebbbbcddebbaadebdceebdab"
+ "bbeeaeebeebaddceeadbebaaeeceabbadbedebdcbcbceceaaaddabdcbbceadaa"
+ "ceadeccbeebbcddacacdabedcbeedccbcebdaaccedbedbbecbdedecbcbceebea"
+ "bdbebeeaccbbcaaeaecaddcbbbacaddedebebaceeeaccceadbdeddebeddacdab"
+ "bceebecbdabedceaeecdbdeaeaeccaadbcadbddbbbcdbaecabedaededbbdbdcd"
+ "debebeaecabcebaceeabceddcddcddbbddccdeeededcbdbddbaeaeaedeaaaecc"
+ "ddbdccadbcdbaaaceadcbabeebcdbbdccbbcdecbbddcdcecdcdedabbdaccdcee"
+ "badedecdabeaabcaaeacaeccaebaaaaadccbbcaddbcdeebeabcacdadadacbddd"
+ "abacbccebebdbcedcdbbaaaeeadabcacedabebaacdebeaaacdecdaaaddccdcee"
+ "babceccdebacdcbabdbacccedbbadeecbccbccaeeacdbadbcdaadeaeabedebed"
+ "ebebacdbdecaddecdaacecdaaeecbeceaaceceeaacbcaecdcdaedabbeedbccdb"
+ "dabccaeeabacaacbcbbeeeeeddaddabacabadccdcccdcacbebbdcccdcbaebbaa"
+ "aaccaebebecadeaabccebddbaaaabceadcabedbdaabeceaedbaecaeceacdeded"
+ "beecdbaedbaaacabbdaabbebcceadaceacabdceaedacaedaedadadaadeabdcce"
+ "dedaacedcebbdadcabadccbedeecddaadaccebddddebbadacadbaaaaebcbcecd"
+ "dbccdaeeecaaebaecbdcbaacbeddcedacaccaceaccbaabacbecaaaaeeaabbcea"
+ "acaabdacaddeddaecacecaaaddaeeeddeccedbadaacbaddbeadacbbbaebcdebc"
+ "eddccbabbeebebcaaadeacadcbcdcaecbeddeccdabaebbcdcebaaeceddcabeac"
+ "cacecbcbebeaaeecbeeacdcabeeaebdcbdacacbececbadbbecacbcdeeebbcabb"
+ "dbaeddadcaacabcbbacaaaabddcdccaedaebbabcaaebaeeeebecdbbaceababea"
+ "bbdadacedbaeceacdbedecebdeeadecaeeeadbabeaadbbddddbebbdbbbceaedb"
+ "cadcdebdeeeeccedabbbbcabcaaeabeaceeddeeebceaeedeeeccebcbebbabcdb"
+ "ddcbcddbdccdccccceabcddbcadacbdcdcbbccdacacdcaceaeabedccedecbcae"
+ "caceecdcddaaddecedddcdaccaabcceadaaedeecedeaaebaebccbdaddcccadac"
+ "ceeddccdebaaccacdcadbccbdcacbdaaaabbaedcebadbeeaebcbcdacbbcdbabc"
+ "bbaecebebcccdcbdedebeddabacaedcdebbebcccbeadcddacaecaedadaecddcd"
+ "eebacaaeaeeddadabeaddceabdcebadaadbdcbddbedecbedbdecdbbededdaedc"
+ "acacdabcaebeebbabedeaaabbcaddceadcbecebbabaeceadcbcacebcbadccdbb"
+ "eeabbcadcaadceadcabacbeceaddacaedbaaaddbceddceeaeccebdcacdcdebed"
+ "eeadaaadbeeacdedcadbceaabdabcbddeadcaebeaaadeccceceedcbbeaaeaddd"
+ "eddaccbaeedbeeddccacdbebaaedeaccdbadaedaebbabdbdcdcaacaaccccbece"
+ "bdeecebeaeacaaeacdddecbdcdcadaaeedcaacedbbebeabbaddccececeedbdee"
+ "bdcaeeccaecbbbabdaaebbbdbcbdbaecdacceeedbbaaabddaadeeaccadddcaaa"
+ "ecaaacebadbbdedcbbceccdabbedcdbacabdcbdbdecebabdbbdbacdcbebbcaaa"
+ "dadecaaddeebacaecaadedeceacabbeeeacdccbaceacaddabccdeaabcbdeeeeb"
+ "dbadbcdbcacebcddaaecadadccdbbbdabebdcbcddadbeeeadebaaddcdbdeaabc"
+ "cbdedbceeeeebecdcecdbcbaacaaeaabedbeabceeceaaebaeeabbacbbabeacee"
+ "cdcddbaaddbeccdebdbbbccdaedcdcbadcccbcadaddccadcddedeebccaeaaada"
+ "bdbbbdeaebaeaaeceabcaebddecaddabeddebadcceeecceebbdcbceadeadebeb"
+ "ecdedddadaeedebbcdbbbcaaeedcbecdbeedcbeccddbcddbdcbddbedeeccddcd"
+ "caaccdccabcbacbbcacbcaacaaecdeadadcbcaccdbceecaeebadccdbbbebdcea"
+ "cdbecbdabbcadaccbcaaeaabeacdbddcaceacdebeecaacdadaacbdcabbabebdd"
+ "cadabedbecebdbebccaaabccbbdbadddedacadebaaeebcaecdeaceecdebccdde"
+ "debcabdabdcacedebdcebbdccecbabaeeceeedaeecbabccdceeacadbaaaadeec"
+ "ddbcdbcbbdcddaccdccbabdcdadbadaceceeddeedaaaaadeacceebaebacbdace"
+ "baeaaedadedebcdabbadbdaebbeecdeadacecbcadccdcadcaaebccccedbeaaec"
+ "cdcaededbdaeacbeaabbebecbcdbeeedebcaccceaddcacdbbabbbeedcdceaaba"
+ "bcecedbcccbeebadbedbbbbeebdcdacbddedddeebcbebbcddbdbeddadccaaebc"
+ "cdceadcbacabaaccdcacaccdaabddeacaacbbdeeaacadbabaeebabaabacdedae"
+ "daceeeabcdaaddadadcebaadebaeabddebeeedababaddbdbaedecdceedeebccb"
+ "babeadaaceddcecaedeabaddedaccedcebcaabcdbcdddbdaaaceaabdaccedbdd"
+ "ddadadbdcdebacbcaccababbaceadebbdbabcdbaebaeabeedbcedcbdabacacea"
+ "cedbbdcdbabeaabeadabdcbcaaebbcedbcebeacdebdaecdccbebaadaeadadead"
+ "ebbcdadcbedaacceabbdaabeedacedbdeaedacbccaacccbbcbacadacabdedaeb"
+ "ccddebeaaacbeadcdbbeeadeeeebbdeeedbbebeabaddaeecbbcadbeaebdacacd"
+ "acdbbbdeceaabceeeabdadbeeaaeddaceddbbdcbebaddadacaadcbabcebadeee"
+ "edeaeeddabebecedddddabaecdeabebdadbecdcaedaabcecccacbcabddaaaeda"
+ "dcceaeccebadbaadddabbcbedcbaeaccbaadbaaeecedaaceabbceeccacdecdad"
+ "daeeeeeaccaebbabdeeeeaccbcadbadddbaceceabccdcddaebaeaeeeadcbcbaa"
+ "ccdbdebccbaedeecdbcddadbdcaeecbbadbbebbddaaceaecccaeeeecccedbeee"
+ "eeaccdbabeecbdcdaceebadacbedededdbcdbcbbeeaebbdddbaddedbadbecebb"
+ "ebdecdadcadbeebaaebcbbbaacbdaedecaaadcccedbebcaceabceccaebacabed"
+ "eccccedeaadbdabaaaaacbcbabaeedddeeeedeacaeebabebccbccedaaedceaab"
+ "bbbacdbbecddeecebbabdadbecdbdabcacabaecdbddbdcadddaddeddcaadabbb"
+ "debadadccaaacbcaccbcbdcdbebaecadccbeedcdbccbecddbbbabaacbaddceed"
+ "cdcbaaebadcaebabcedcccaaebdaabbbedbbbbaabaceccbcdcbddaeebbeebaac"
+ "bddbbaaceebdabeccdeedbccaebbadcedccadceacacacddceeebaeebddacddaa"
+ "eeddadecdcdbdabceddccbdebdbceeadaebdeceeccabbbbbbcecdbeeaaeacace"
+ "adacecaebcbbcbcaeacddddadbceedeaaeddbdccbeaeedcaedaaabebeaedeedb"
+ "eaceacdeaaeeabeaabecaaecebdebbbbcedcdeaaaddcacbdeaebaccbebdbdbde"
+ "ecaddcdeecbccaeadabdedaaebedbcbbecebdaaebcecdcdababecbddadacceca"
+ "aacdeabaabeabaeabcbccdcaeeadbabecbbebacabeaaaaaeabbeceebbbaccaed"
+ "bbedbeceadcebceabdeaabbbbeabbdbddddcadeddaacdecdcdbebceacaadcaac"
+ "bbcabbbaadaeccccddeebdacbdebeccdabdcaedebccdceacdbbddeacdeebdecd"
+ "edbbdeaacabacbcabdeaeeceedcdedadeceabbccdddebaaaaedbdbaecacbbeeb"
+ "cbabaadddbccedcaacdebdbbcbbeccedebbdceebedddcabebaabcaeaaccedaba"
+ "eadabaabacddbaeedccbbaaeeecdddbedcedebdedaaedecaeabdccbdececaabe"
+ "abbbbedceeebdabbabdbbecebccbceeaeebaebeeacacbbdcedcdeaecbdabeabb"
+ "acebeabeabdebacbbdbceeddaddecdeeeedbdcdedecbcdccaebeaacebedeedca"
+ "ecccceaaaddacaedcbdbddddadbdcdeccbbbbaceeaccdbcacacaabddbebaeecc"
+ "caabdbcddeccdbcdddccacceeebddcabdbbdddeebaeebadbdecabbeebecbbbed"
+ "bdeedebeabececdcbdcbccccacbbcdbcdaebdadcddeeddabdaaadbccddcdabda"
+ "ebaaeabebdeadbbdeaeccacbcccceccecedbddeabddcaabbabebcdabbeadbbbc"
+ "aeedecbaaaabdbeddaaceeeebcadbadeddbcebdccccedcdbdaaebdeebaccaeba"
+ "ddecbbecacbeacadbdacccaaebcdbccbcbbdadceddbdbeddceaaaeceebbebbae"
+ "cceaecbacddaaaedcbabceddddeddcddadabeadeaeccddbbbdebadabaabbcbee"
+ "cbdebaecabaabdabbedcbadabbcdbdbedbbcadadabbedeebcaeabeeebdbbeadd"
+ "ecddbbaaadaceaeacaddabedbcddbeedbecadbbcddaaaebeebcaabdbedcacaee"
+ "bdedbcdaadebadcbaaeaeaecedbceeedaaeeaccdcebdeebabbcedeaeddadabcc"
+ "edaecdcacecbcabcaeebbdadccaebaddcbeabbebddccdbadbedaceebacadbedd"
+ "ceaaabddaeadcdeeaccabcdccccbaadadbdabdbbdeabbcccccdeeaacabbecbea"
+ "bbeaeeadebdcabcbebccaeddccaecbabdaddceabbdbaeebedbddbdccceddabbc"
+ "edacacbababcaadbdacbcdbddeadebdccadbccdcdebedaedbdebebebcaecabda"
+ "baabbdbcdaaaceebddcbebbdaaceeacdeedbddccdcddaeadbdbdbebdbeedccda"
+ "caecbdadbdcdebeadedeaccaebadccacaeceabddaebaaddbbedbbaaeabbcaabe"
+ "adabdacbbcbedecccabcddbedcdacabbbdebacdbebbccbcdaeebaabadadabbbc"
+ "bdedaccdcdbcadcebebaeccdceddcabadaeaddedeadadddacaeabdcbedbcecec"
+ "eceecdbdbaceecebcadbeeaaccaddbddcdabcdceaaebdebbdbceadcedbddcccd"
+ "bcbdabcedcbcdaadcbddabbbeedeeaddacbcdccebeaebcddeaebceaebddcbbeb"
+ "addcedaeeedddbdecaecbecdabdaadbdacbebdcacabdbbdbbbbaedbeacabaabc"
+ "ebeccebbddbbeddbcccccecacdbadecadeedcbbbeebbcabbabceecbedebeaebc"
+ "ebccdebbddbeebeadccebaadddcebaedcadcecadcddaecadacbaebecacceeced"
+ "ddecaeeabcaaaeeadcccaadbacdeacdcbaacaaebccecceeeeacacacaebeeebcc"
+ "aecadddedeebacaeaadabbaecebaadcdabeaabbecdddecceacdcaaaacaccabcc"
+ "dbadadbbbdbcbaddecabceeadcdebccdaabbacddeaddedaccedacdcaebeddccb"
+ "cdeaeaddbbdadececdcdeccaaeaeddcccacadcccdaeeeddbeaaedebaacbadeae"
+ "cecbbccbceebdddbceededdaaedecdbddbdcbddaaeccdbaaabebaebbdbcdedcc"
+ "beaeaedccdceecaeaacedbdbdadcaedababebdadeebedbcedeeeeddacadeccae"
+ "cbdbaccedaacbaeebcaabbbaadeebddacccacaadbaeddddaacdbcedbcdcddbec"
+ "dddcbdcebbabcabaedbecbcceeeccdbcabeadcebcdadeaceccbccbbaabebedea"
+ "caeeeeecdeabebeababaeeedbceecabaadbbbadcdbbeacbedeabcdaaadcdbdee"
+ "bdeedbeebeadaeccdebcebcdeadceeecabaaaeabebabbeacbeebcdbbcbbdeabb"
+ "eaaaedecacacbcecbbcbdecceedccdbbeabbbbcbecbbbdedeccdcabeaadbceda"
+ "ccdcaddeeeeeeaeeddaccebcaaaaebeebedecbaeecbedaccaaeebbdabebaecbd"
+ "edeceebdaaebbebaedbcbdbadbaecdccedaeceeebdbadbeaccaeabedabcdebbe"
+ "abcbcbaadcdeeedbccadbbdbeeaabbaeaeadceacaccddacdbaccebbeaccedebe"
+ "dddabbabcdccdcdacabacddabcbdddcdeceacdabbadadaabaebddcbdbcaacceb"
+ "dcdebdeaabdacdecbeabebdbbbedcaebbccdbeedabecdbaeadedcbbeaacaeadb"
+ "ddedbcbbbcabcdeadadbabadccaeebbbaaaebaeddebebcdbccdbdcceabaaadac"
+ "dcaccecbacdbbaadeaacdebceabdaccecdcedcdacdeacdbebaadcceababdbebc"
+ "cbbaeabbcbeebbaacceebabbbddaddedaecdebacbadbceabadaecabdbdcbdceb"
+ "badabddbdaeaededbcaeaddacceebbbecbeadeeeddceddddcaeecaccdbeababd"
+ "acaecaaacbcabccebcdbdabcacdcadadbbbdddbabdbcaaccedaddecbabedaeee"
+ "eadeeedbceecdeaddebddccdecbcbdaaddececdeecbbecabdeaaebbecebdbedc"
+ "ccdeaacccdbcbbcebcdbcaddecdeeedebccbcbbdbcbddbccdcebeadbeecdbecc"
+ "caacdaeabeeeeadecdbaaacbeaebeadcbbccdcedcdcbbcdedcddbdacbddcbcdd"
+ "aeeecdcecebddebabaeacaedcbcbdcabdddccababbdcbdeecbddbdeecdedeadd"
+ "ecddddbdadcacccdbaccbcbbcbbedcceaaebdbeebddecceeaabedbaceedbaaeb"
+ "dcedeeaecdcacbcdccaaeadaaadaeebeccebedaadeedaeaaecadcceecbabacbb"
+ "aabdacdadddcdbcaebeeacaeccbebedcccedabccccccdacdbebaeaacaccecbbb"
+ "bdeccaaedaddcdebeecadadbecdccbcdbbaeaaaabebdaaabeaeaaabcaceadaab"
+ "aeceededbebbaabebbececaaddebbbeaddbbdabacceadcdeccecdabcdaddbabb"
+ "deaabeeddeccbccaceecbbaaacaabdcbbabcccbcbcdbdebaccacdcaddebbebca"
+ "aabddbadaeeebccabbaeeeaaedebbaebdcdeebebaadddabccdcecaddcbeeddae"
+ "abdbddaaabbeeededabcbedadbedbccacbcbeabaddaaccaaeaddcadbcecadebe"
+ "edbcabcddcebebcaeaecebabbbddabcddcbeadbebdcdbbeedeaccaacbeaeccee"
+ "dbebceecabecdddbcbdcbdbaeabaacbbdeeadadcdbecbaecbcdedecdaddbacec"
+ "ebbeedbeacecaeeacdedddcbadaadbccdbabbaddbeeedcdaccbcbeeaadcbcaad"
+ "ccbbdeabccaceddaacdaeadaccaecacebbaddaceadcbdbebbcdaddcbcaebaecb"
+ "ceacabdbdebedbdccdbeeddbaeabadbeabcbbcacceebbcbebddabeecdcdeecee"
+ "ceccbcbeebeeceebccebaeecbcebebccdeacacaaebabadccabcbeaddecaeabbb"
+ "ebccccbaabccccdbcbcedeaacabbbaadeabbddbedeabcdbcededcddedbbddaca"
+ "adcaedcadcbedbeadcddbdbbececdeaddbedbaadddaceabcedcadbebbdadbebc"
+ "ddddeabeababebeadebbecacabebdbcdaccaecbbedaddcadbbadedcceaddbbde"
+ "dcdecdeeaeebeddbbcebeaacdbcdaabcceaddeccbbacbdedcceceababdbbcddb"
+ "abdaedabdddebabecddbebddeedaeacaeaacbdaddcdaaeddbaadaebaebacdaca"
+ "bdbcadeceaeebdbebabbaebabdaaccebdddbaeabdddbeedcdbbdebcacadbcbca"
+ "bcabdaecddcbebbddbeeeddcaeadbaaecdaaebcbcadacadacbeccdddaaabccda"
+ "caadbcebcceecdacbebbebdddcacdbecaecaceddaadadaeaaceeecbaebdeabec"
+ "aeeabeecbdcebddccdddccddccecdbdceabadadadeadadadcadcebeaccceeaaa"
+ "dabebbebdeaadcdeecaaabbccceeecdbedaaebdabedaddbcccdbeecbdabcdaea"
+ "daabebddddcacabbababaacacaabbeacdebdaacacadbcccdbecccdeadbcbaacc"
+ "eeccaebeadbaedaceeedaecbccdbdbecdaddebbbeadeecccabbeeccbabbbeced"
+ "adecbaabcedadebbdbddeceebbacbeaaabaaddaccddbdcbebbcbeaeabaabddbb"
+ "acdcbbaabebbaacecaadcabbdadeaceaaeacedaabceadbeecbcbbbdeacaaadca"
+ "bdaecbcbceeabbbcdaedaabcdecdadebadeedbdebddbcaedcdccdadbaabebbbb"
+ "decbdaeacdaaabacddbbeedecceadacedbcbecabbabaeecbaeeedbdbecabacee"
+ "ebaecbeababdbeeaadbecbaecbddbedadabbcdcabadbccedecbcbbaaccbdecce"
+ "edeeacdcdeeeeceeddceecebcaeacaeaecdccebaadceeddabaceacebbedcbdee"
+ "eaebcecddacddabaaaddcdcdbbebbebaebbcbbeabebaccbbababbbeacacdaecc"
+ "bdbaabccabaacbcbbedaababebdcdceacaaccdeabdecaaeddcadcecccdbcdcea"
+ "eeacdcaadeeccbbbaceaadcacaadaadcabdbdaebbbbdcaaeededdbcaeecaddbd"
+ "ccedeecdedddaebebbabcaeacdeebcaeeadecbbebbcbbcbebecdeccaaadbcdbb"
+ "aadeaaeeeaecccddcbbeeabadceacbbcdedeadcceebeccdbedaacdebeccbaabd"
+ "caccdedabeaeeeeaddeeecceabcbececeddbdacebdcaeaadbceaeedddccdadda"
+ "dcdccdbaeeaadaadbecdabaadececbaedaacabddbbacacabbbecbedababdeace"
+ "eaaddeccdbabccabadbcdcabacccbeaccccdcddbbececbeaddabcbeaddbcbcdc"
+ "adabadbbcddecaddaebaabaedecddedccdbacbbbdeeacdadacccbdedeadddbde"
+ "ecbbbcddeebadcceddbaddcacbaadcdebedacededdecbbcbecdcabaaabdebdce"
+ "eedcddcebdcdeadaceeacebeadebbbcddddbdacbaedccbeeaecccaacceeabadc"
+ "cdebaebbabdbbccbeecccbbeadaedacceceeebcaecddbcdcdaacdeadcdadedde"
+ "ccdaabbdbeccbadedccbbcdcadbebabbddcdbcaeddecbdbddebaebabedacecce"
+ "bcdbedaceeaedccbbebdacecaddaaaeabaacbbedeceeeebaaccddbabcebabbcc"
+ "aebbaabaccababeedbccdeacadbbcddbbccdecddadccddaddcacacecbeabedce"
+ "abdbbceaacaaccebadaadacabdcedebcbccacaaddaedaeceabaeaadbacdabbed"
+ "cededcbdcdcdebbeecbcadeceeccacadbcdaaeedcccdcdabdaddabdadcceadab"
+ "bcbdebccbddbebdbdddbdeecaaaadaaedbdccaccebbaadbacbcaeeecbeceacec"
+ "eeecacddabbbdebdebeaceacaacceaceabeeabaddccebabddbdeecabceacdeab"
+ "ceacddadbcdaadabcbdcebbcddddaecdbdeaccadcdceadbbbbedcbeaebbbadac"
+ "bbedabcbcedaccbbdbebeebbbeeecbdbdbaecbdcbaccaeadeebdbcceadedadda"
+ "caceddeabacaddddecbeedcdedebccaeecceeeebceeaebacbbedadaeaddabbbe"
+ "dadbaaecacdeebdaecdcdeeccddcabadeccdbcebcaccceaacbebbbdcceddeccc"
+ "baadcccbdbbaecaaaeaacacaabcbcacbecdecbabcdedbdecaccccdadedcbbebe"
+ "ddeabaeedbeeaeaaaddbbaaaeeeeeaedeebdabcabebabccecbadacdcedeacbcb"
+ "eebadcdeecacceadcabcccccbbcdeeaaacbebdcadeecaebbbbbbcbabbabbddbb"
+ "ecceabdedbccabdeeeabaecddeccbbddbeeacacecdcbdccbaebceeaaeeecaeda"
+ "aaacceccdcbeddcabaedeeabbeabeddaedcebdeebcedabebdcaacbcebcbaabde"
+ "ebabcebeceadccadadbdbcbecaddaeedecbcedaaccbbdbaaccdddeebacecbddd"
+ "caadbebdbddeeacbaeabdcbabccbaaecbceaacacbcdceabcaaedbbeccacaacdb"
+ "cccddeebcdeaabbbcbaeedabacebbdeeaecbcbaceccbccabadabbbceedaaaaee"
+ "ebecaadbeeacdceeddbabeeaaedbbccabaeabcecaaeebddbdbcdcadacbedeaeb"
+ "aecbcaebeadcbdcaaadaaeedcbaeebaaeadbeaadcdcabdbbcaeedccabbacebec"
+ "dedbaeacddbcbdaddedbcdacbbceecceeecbebddeaeabeadeddebeccbdddddbe"
+ "bdacbbabadaadcacaebebadececeddbadccbebcbeabeaebdaccbbeacdcbabebb"
+ "adbcdaecdadabeadeaabcdbadcbdcdedabacdcabdeaeadaeeeddccaceacebdbb"
+ "acabbcbbddeaebcdcecaaecbebaeadbdbaaacbebebeeadecbdebacdaacbdbecd"
+ "abedcebecddceeabcbeededbceedaccebcbbaeaeeccbcedcbceccabedcebaebd"
+ "baadaabbbddccecccbedeeecbbcaaeecbddbbeabbdddeeaaabccbaaedebeddae"
+ "cebcacdaccddcaecbdbeeebabecddbbbddcebcacbaddaaaedbbcbcbabcaebbdc"
+ "bdddedecbdecbeddcdcdcbbbdcdaccacdaaacbaccadeedccadbcddaaebccbebc"
+ "cedbaedcabeaddbdaacedeedaabaceddaabeaacedddaebbcadebbeaeddbaabae"
+ "dbaceedececceaeedbeecacccdbbcceeadeaadedcdaaaadebecbddaccccecbad"
+ "eaddeadacddddceeaeadeecccdaebdcbdbceadabbcecaebdadcdddebcaeaccda"
+ "ddcebbcbeceebcbaaceccdeeaeadbebeebecadcbccccaaaabdceeaaacadeddab"
+ "abbccccebebbabecebabeecbdadcbcabaaccecdbdbebbacbbacbdedbebebcbba"
+ "adbbabcbeaadadbbbadcaaccebacaddbadbeaebcdeccbeddedccaadadadbddde"
+ "aabedeeebccccceedacaddccbaebcaacebcdaeeaaeaaaaaaeeeacebeadaaabdc"
+ "accaccbdaaeedbbcacbbeeccedeadaedebedbacaddedcebcbadaeabbbaceacae"
+ "ccdcceaeebceaceedbdcbceecbcaebbbdccadabeadbdcceccbebcbaeedceceba"
+ "ebaaaebeedbcedcdeeaddbecaddcbbbebcacacaccdbbeaaadccbdddbcddccded"
+ "eaeccaecabaecaeedbdeddaccdeedadcbcccebaeceaaaadbcadcdcddaeeadebc"
+ "dbbbebebdedacedabcbcaaaedcbabacedccacabbeadebacaeacbbecbeaedbaaa"
+ "dbadcaeddaaeeabcbbecbabcacbceadbabddbedbedbeacaaaababdedabdbcded"
+ "cbcabbbccaeecbecececedbaeccdabbaeaeebbbdedacabacadecddaebacbaadb"
+ "eebaeadcdadecbeeccdaeccbeadcadaebbdcdbaacadadaedaacceaceccbeecce"
+ "ededcedbddacceacdbcdeababbaccbaadacbeeeeecaedbbaccceebceadecebca"
+ "abeacddacaeddcbcedddcaecdbcddeabbecaabccaaacaabbaeddaedeadbcadde"
+ "daaabbeeedbbbdacbddbbacacbaddcaabebdddbcdbccccadeddcdcaeccedbaeb"
+ "bcdababedecbaadeacababeecbbcadbcddabdcdbaeeecdcedbedeeedceaebcdb"
+ "abbadabccddeccadccaccecccdcbeeacdbebddeecbcbabdebbabaadbdeceacca"
+ "edeccadbcccaacccaeaaabeeeeddbbbaeaaedcaacbeadcdcbeaedeccceaedaac"
+ "bbdedaaecbdeaedcccebaeaabdedbdccccbdacabbcacbbbdaadeddeacbeeeced"
+ "aeaaedddeebdcedbdadddbceeccdccceeaccdcdecceddcaecaddaeadebabaead"
+ "ecabedadcdddecbedbddeaabcbccdbecdadcaaaaeecabcccbebdacbdedbaacac"
+ "cdebbeabcbbbaadcdeaeabbeabdadebeabecdedbdaddaacddccdbcebcacaeaad"
+ "cecccccdedeecedeceeadbaadacbbcbdbadabdcaeaacceeeadcaeccbaeecccbd"
+ "eabdabedadddaabbbbaadabbdccabebbcabaaaeecdcecbeddaaecabedcdaecee"
+ "cdbabeedebcaccaabbbdcaeebacacbadddbaeabcedeabbccbdaecdccdbeabdab"
+ "bcaabcbadcebdcaaeeeadbeaccadaeeadadcaeceedcdacbecddeedddebddcecb"
+ "aaedacaeeedabaddaceecbacdedcacdedaacdeddebcdbaaadddecdcabedecbab"
+ "ebbbeecbceaecdeedcdddbaaaadaecbdabeeaabbcaaaaaecbaaebdcaccbadced"
+ "acaeabdbdaaebebeedabcdadbbebadeecdaeaacccceaaabbdacacbecabccecac"
+ "dddeaccdbdcacbddeeaadabebbdabbaeceebbedacdcadedcadbccbdcdaadaeca"
+ "dcaedbeaaeddabedabdeadcdbdebcbadcbbcacbacadbbdbbbedbcedddddcbaec"
+ "cbeedaaeaacbbbcaeadaeabedbbecebeacbbceeeeceebacabddcaedbbbddbaee"
+ "eeaeecdbaaedebdbdedddaeaaabcbbbbbecdaacabcaddbccacaeeeadeaddaabd"
+ "ebaacbdccbccdaeabaddaaeacbcdadaceedcdbadcdedecdcbcaacacdaaabaabb"
+ "ddcaaaacdebcedcacbddcbeeddacceeeacaddadddbbeebabaecbbedbdedeaadb"
+ "aecaecbcddcccecceeebeadaeccdeabdeedecdacebdecdcbceadbccccbddaebb"
+ "acccaeaedbccbacbccdaaebaedaedaeceedcdbbaebcdbdaacdcdebbcddaeedcd"
+ "bbbaaabacccaeebabceceaeeceabebddcddaebdbaeaadbadebdabbdcbecdcdbc"
+ "dcbcdcabaabcecbaeddabbceadbbebaeeeaddbbaddeabbcdcdbacbbddecddeea"
+ "adcebcccdeaebccbaedbddcbeddceeabdaecedddeabacdbbabececdbaaabacdd"
+ "eddaddeacaecdaeaeaedeebedeacebebcacdcdcbcccabbbeccdaebcdcbcdaaca"
+ "dbdeabaddabbcbedebdecbdcaeeaccbddeacaeeeabeaadaeeebebeeecbdbbbda"
+ "ddcdbedbdabcdecdaccbbeddeaabbedcdddbbeccdbdacdedaaeeaacadbcdcbcb"
+ "aabdedbecdadabcbeccaaeaeeacbcbbbbeebeaabebdadacbdeebccaadbebdaeb"
+ "bcddcccddadaacabedcaedebcaaaeaeceaaaceadaeaeacaecaaebdcceaacaade"
+ "cdcccaceedddcaedceeddeaacdedaaaececdbdcccaaceeaedaabdbaedddaccde"
+ "dddccdebacebdadabcebeeedebecbcaccaaaecdabdbbccbadedbcbdecedddaac"
+ "aadccdaeadaebeadbadacbbabdedadacdacceacaaacdbccceccbebdacaceedac"
+ "edbdcbacddbbcabbdcdbdcbdaccadddbbbedacaeddaadacbadabcbbedcabaada"
+ "cebccdceceabeeaeddedcecbccabdcadadcbbacbccbebaedbaadebbdeabdedbe"
+ "eccedbbadccacbdaaaeacddbbcaebeebcacedebecdabaeeecdbbcbeeadcadcbb"
+ "dbdebbddbcbbbbeeccdbeaeddabbcceeecbdacccecccdeeaeaaddccdcebdeded"
+ "acdaecbcbcecaabeceaacdbcbdeeaaeebcbbcabbecedeedecbbceebeadabedee"
+ "abeeaadeedeacbbedebceecedeaadbeddaceeeabccaabbbdacbabceedbbebebb"
+ "eeabceddeadeecbdeebbceeaeeddcbaceeadbcdeebceabccbeebaeacadebacde"
+ "dceeaeedbcdedccbceddaeaaeeabdcbebeaabaebeccaedbccbdbbcdbcbeebdaa"
+ "aecdeddaeaebebadbabeacacacceccccadecadcdbdbcabdecaccdcbbeaceeacc"
+ "ccbecabdbbbbddbbaaeeccbbcabaaeabadedadccaedaeaacecedebebbdcbedbb"
+ "deddadeccebebadcebbebecaacddeccebdcbcaadccbdbcdccbdedabdbdecceab"
+ "ddcacddbbecbcdcbdbcaecaeabeabaaeadddcabacbedadaabbbcdaeacceadbad"
+ "debdeccceaabdeaaeccdcacabeadbcaadecbbdcebcbdaaebedbabadbeadadbbd"
+ "eaeaccceeadebcedaacbaebeddabddeeebeaaeadaaabecbbeceddcabcecdadab"
+ "bdbaabdededdeceeccbceaebdbbabbabddaeedccdcddeceeaebceeecceecbdbc"
+ "dccddeecbdddacdeaedbeabbdeedbcceceacebbddeceeedddecabdbadeecaddb"
+ "ccbabeddaccdecbadcedcbedebcedaedadcdbebdedebeeebcaccaaecbddcadee"
+ "dbeacbebabeeaaaeeddbccdbdebeddbdbbeeacbddbcbccdcbbcdabceaacbdcce"
+ "edebaabbeebcaddbbeaeebcddadeceaceeadecccacdcacbebdbaebeeeebdacbb"
+ "adccdcbaeacbaceeddadaccdacdebeccacdedbceacaaeebbbbebadedcdeadcbd"
+ "cdbdccacadcacdecccbeabedccbddbdeccdbacaacaacbbaaecedbcdadeeeaccd"
+ "becdaacdeeaecbdeddcdbccddeedbadacdabbecdeedcbcedcccedcbbcaeaacac"
+ "dbbdeaeaacdeabdebcacbcaccaaaebacbaaecddaaceadaecbbaedbedebbceeed"
+ "dccedbbdeebdecddcebeebebcacebdcdecbebebecbdcbaeebedcbedcdaaaedba"
+ "bdceeaddaaaeceedceadacacdeeabedddebdadabbaedecbcadbabcbacaaeaecd"
+ "bccbacdbedbcabdedcaaabbdebeaeacdacbbeddadcbbcceedcbceadaacdbdcec"
+ "ddbacddeeadbdacebddadddeddcdddbbaebaccddbaddabbddbddabdbcedacbad"
+ "eaaccdabadacebbccbacebbebaadaeaaacaedbaaadadcdaddaabdbedeadaddae"
+ "cdecdbaeaabceeedcddbaabdddaebbbcededdddcbbddecacbdbbdeaebebbbcea"
+ "eaedbacbcecacceeebedbcaeeadeaaeeadbeceabcbadcacedacddeaedaedccec"
+ "cedecbbaabeadcecadddecdbedeececbcccaaebacedebacbcaccdcabbcaebaee"
+ "eeeeecddbdeadbedeabbeeaadaadbadadaacdaeadaebcdadcbbaedcccbaaadec"
+ "cbaddcbdaebabdbedebedcaecbbabcaadeebebdbedaaaeeaaeaebbbaddeabcbd"
+ "dbebadceeddebdeaebcacedbbaceebaddacdebddccbecdbbaaeddadbdadabace"
+ "ecbbcceecdbcbeaaeacaeeecaaaeccebbcaaaaebbdbaaebcaecececcdceacaea"
+ "dadeecdcebcbeccdaccddadacbecebeccbececacaadbeebabadadaecacddeeed"
+ "dbdebdbeecaeeadacdcbccabbeeeaabacadccbdcdaeeaaedddbddcdaceeaedcb"
+ "ecdbdbbaecbcadcbbebccabaddbcaddcdccddaeeddcaccddaabadbbadedbdcac"
+ "aaabbedecbbaacebbeeacddaeeccedddddabacedbbdbcacddcbdecbacdebbdbc"
+ "cdcabccebdedeadbcbdaaaeeccadceedcbbaadeeaceeaeaaddbacbaaaaedacec"
+ "aaebaabdaabbdceabaaeadedddaceeaaedbccaabbadebbbebecadccbbdbadabc"
+ "ccaaadcdebdadcaeeacedaaedbdaddeabacbeeaeacddcbdadbdaabbaaacebdee"
+ "eeeaadbaaedbbcebceecdadccdebdebebdccedbadebeeddaaacdcacdeabdcceb"
+ "cedcbcebadddceeabbadddcaaeddcaadabeaebedeaaccbacedadeeeccbaeecae"
+ "caddcbaabdcdcbccaebeaabaddabcccdaedbbecbccdbdedcababceddcebbeaab"
+ "eeededbecaeabedeeabeeddadebadbeedddadbbdccbbbabbcaeeaceaeabdceea"
+ "eeeeedacedeaadcadacbcbdcccbadeddedbbdcdcaeebbbdacdcacbbeaddddbad"
+ "edcacdeedddacceccbdcadeecdddeccddbdeabeadadeecdeceabdaeceecebdac"
+ "bcaccabdaaabcdddaacdadacdbadcedbcaaddebdaebbedbcbeddaaccaeeecded"
+ "ebdbbeaeacdcbdebdbccdabbdbbcbedeaabecccecddaacaacccdaeaaaabaabcc"
+ "ceceecebeacaccbbeaeeabaacecaeeaedcadbdbcdedbbccaccaaccdbaadddbbb"
+ "debacdbbaddecdaeaabbcbebdedbaedcaebbbcabccebbceddbdebbcdeacabcea"
+ "edebcaeccacbebdbdeeccbbaacdbdecbabecbbdbccecbdaedabeadcdcaacbdda"
+ "bebbbdccbdecedeedaddbcadadecabadaeccdaaaeabeadeaeaadbdaaaecebaba"
+ "cbbbddaccacebbebcbdaaeaccedeebaeeedaebebbebebebeedabddbbcccedaae"
+ "bcdeddddbbeacaaeadbadacebadadcdabbbabccceeeadebabcadacceccbdbbec"
+ "dedebbddaaedecbbdedacdbbaedecacbdecbaeaeccadaddacdcadecccdbaeacc"
+ "bbccddcabbdcdadccbadcebceacdcdabaaadaeaddbecbeceaddcbdeedceaceec"
+ "abcdaccbbebcceecadbdbbaacccedddddbcebcaadeaeeaceaabdceddadbadbdb"
+ "cbcccbbecbcbebcbeeeabcdcbdbaeddddbeedbbbbcacdbeccceceadbdacbabbb"
+ "ecaecbddcbedebaeeebddcdcadadccceccccacaeebaabaecaaabbdddcaecadda"
+ "ddecbebccceadeadbbaecddeddaabcbebeabebaadbccdaddebbdeedddeaaecda"
+ "bdabdbcdeecebdecdbcddadcbedbebcecdcdaddeeadcbbbedeaddcaadaeeaccc"
+ "eeccebcecbccadacccccbacdcdddaeaeedaccdeecbaaddcdedcdaaeabcbbacbc"
+ "cbaecddccabcbbacaecacaebecbabededacecdaeeacddbcbdaddaedeadabacca"
+ "dcbcdbbaeabbabebceadbadcbaceebacebcaaacdecbccbdbbbbadbdccedabecd"
+ "cbbcaaeccbccaeabecabaaabbdcdbccbddebddcccabaeadaecdcdadceecadcbb"
+ "bacbbbadcabebaccacbdecabacdbcbedddbccccebaecacabbaecceaeddabecee"
+ "cdedcadbdcbceddcacdcebaadcadbecaceedacabecdcdcddbbeccecbdedecbee"
+ "cbadcbadabaadeaecacddabbcecdcabeceeccaeaacddaeceeeeaaaeadeddcaea"
+ "cbddabcbdecaaccbeaedcbcadecbaeabdccddbaeddbedabacadeacccbbdaddee"
+ "adebeacacbebdeeeacceaebdceadabcccacdbdabeedacacbcbccbededdeabbeb"
+ "abcddbbccbbdbcaaedecadcadeaedbbdeceaeceeeaaedbddbeaadecedaedcaad"
+ "dcdcbbebbadaababaebdbeaaebaaedecdcccdbbadbeadcdecabcaabecadcbedd"
+ "acacecbdebccdcaadeaddacdaedadecdddaaeadbcecbceeeaaeebaeddcddabad"
+ "cedbcadaedebaabeaebedeabcbdcdcdacbeaccacdebacecabcdaeeadcdbacaca"
+ "cebcdcddbbeddababecaecdcbbeacacdebeaacdeeabaeeebaabdbaeecebcaddc"
+ "caeeddaeebbccadaaccbdcbcaadccbceaebbbbedcccbdbbbdbaebabddbbadeec"
+ "debdceebceedecaacceeaccddcebeddbcdecabdaadbbecbccdeaeaabceaadcbd"
+ "cdbdceaaceaddcdbbedeadbdaeadecabeaeecaaaadecaaaccabbbccabecbeeed"
+ "bcccdcccdbdbdccbbcceeabdcdaaacdecadddbcaccaccabbbcbaeedccabccccb"
+ "edaaadecdbabbadbdaebabeddeeccdedeedaebdbcbedeaaabebdeddcadaacabc"
+ "bbadbeddebedceccbdaebaabcceccdcaeeaebebaebceeeaeedcaddecacdeadcc"
+ "cbeddacdbacbdbececcbeddaacbeeaadbbcedcbceaaacbeabceabaedddcddcdc"
+ "dbaaaabcaadbbdabecaedadadcececceceabecacdcdbcbbbdeecdcdebbaeadbe"
+ "baabacbaadeabcaaeeccabeddeecceeeeeacbeeaebacadeacdbbdbaeedcbedab"
+ "bdabbadddcddcbcaacebcddbdbacceabaddbeeabacdaabbdcebacaeddbddeccc"
+ "baadbbdaaaedccbedecaacdcdaaddddededacceaddaecdaabbddcebabbbabbeb"
+ "abbdabcacbbedcdadacbcdcaabeecebbcbeabdabbbeecdecccddcebcdbaeeaae"
+ "dcbebcaaddbecaabdedcadecdabadbedcdcbcdacadebbedeabdabdedeceddbbc"
+ "ccadbacedaddbbebccaedbddebadccdbeadbaddbbabeeebddbcceceacbecdade"
+ "ecbcbccdedcdedecabaddddadcabcdaedadaedeaaaabcbceaeceeccabaeaaedd"
+ "bdcbdbbecdbeceebdbeddbbaabbabaabcabbbacbebdeecaecaceaeaabddcebab"
+ "aecceeeaeccacdbbcedbabcadbecdbcebacebdbbbaecedbaeccccdadbbeacdec"
+ "cbaceaaceeededceaacaeabdcceddeeacddbebddbdaceeceeecebebbdbecebeb"
+ "abceadbbbcaacdbbdadaaeabeeeddaabdbeccacdbebcbeccceedccebbdbbadbb"
+ "aeaeeedcaaadeacacbabcbadebeccbeaaddccdeceabbeceeadbeddbcebdcdeab"
+ "cbeabddcddeacccbaebbbeadceaebbbdaaaaceeedbcbababedcaeaddbdabdeab"
+ "bebbaaeccddcbcbddadcabcdeccccbabeacedeaccecedadbacddddceecccaddb"
+ "aeaddcedaebcaecddecbaeeaeaddacebabbdcaaaabadadadabbddadbceabdeca"
+ "ccceaacbdadaadecedddceeeeedcdeabccddbeccbbacccbeadbaaeedcebbcdde"
+ "cbcebebdaccadaaeabceadceacccdddbaeeeccdecbbeddcdebdcbcbcccadbaed"
+ "acacdacbdcadaeccdeeaaddbedbabdaedababdccccdbbebdcceaabdebcdebaea"
+ "bbcadeaddeeeeddabccdaecddeababaabedbbadcdebcaedabcbccccbadbcaace"
+ "ddeedaeddcbaceeadbdcbbdbcabebebbdeeebacccbdeadaaabdedeaebcdecabb"
+ "abdeaaaabeeadeceadbedcdaebbdbabadcbdcebdcbdbdcbcadcdadceddcceaaa"
+ "abaacabadacbbdeceedbaceccebebcdeedcedcaacdaabdeddaeebbdceaadcbad"
+ "eedcabddeccbcbeaeddedbabbbbbdccddabbcedbaddccddabccaeacadcdddadc"
+ "cabddaaeedaeebadbbababeabeaeaabddeaabcaedecdabbcdacbcebedceeabbe"
+ "bdddaadaaceeedddbdeccedbdabbbcbedacbbdabcbbbabbabcecdcacaadaacbb"
+ "eaeadaaddaaddeabedaccbbeddaadcbdaacaccdbbbcbdecdeedbacbcdbeeddaa"
+ "bcecbddcabaebcbccbebdcbdebecbedacabdacbabccbcaaabedeecadeabcbaac"
+ "adabbaacabcdccdebdeceddcacbddedaaaddadbbbcecdeeddbddbcccdebadabc"
+ "acceeacacdbdcaabdbacacdbdeddbbeeabdbecbebdaecbabecdbeeccdbcbbbad"
+ "ddaabeccaeecedeaaddeaeacdadbdecbcdecbbdebcadcadcadbbaedbeeadacec"
+ "bbaececabdeabababdacaedaabbbbaabdedeaeaedececebbcddebeadebbcbedc"
+ "aceeeddcadaaabebdbbeedeaccecdbeaebacdcbedbcddccacadcabceaddddabb"
+ "cabbccaeabeebebbcddddabdcdddbbdbebaddbcadadbeabebadddbeaadebddce"
+ "dddddbcaecaecaedceaebceaaacbaebcceadeceedbcebccaeebadcddbbadcada"
+ "eddaeacbeeebeacecddceaddbdecebcddcedddeabdacccabacaccaccaaaedbea"
+ "adbacdcaadadecadebbebcccdabebaddabdbcbcbccdbddaadeaeedeedeeceaea"
+ "aabddbbebcddbceadaccadbadecceccecabbccdbacedcdbcbcebadbadebcdedb"
+ "cdcbeabdaecbbbcbeadbebeadbeabceaabcedeedceabccbedeaacdadbecdbced"
+ "beeccadabccbdecccbedabbeacaabcabaebbbeaeeddcabcabbbccdabdbdbabbb"
+ "bdbbdeeeeedddadcccaddbeabadaccedcadbabdedddababccabdcbbdeeecedbd"
+ "bccbbadbcdaedccccaaaeaaaedcacecdbabaeedabbeeaacbebeedaccacaccebc"
+ "bdcadccceddbadbacacddcbbbbadeebeadbcbbdbbdceccbbaaeeaaecdbaababb"
+ "caeccaadecaaddedcdeddabacbbacaccbcedccbbdcbebdbcbcdadcdeaeeaeabc"
+ "acdaabaeebcccbccdbdabbddededccbecbeecabcdbdaecaccdcbbcaaacabdebc"
+ "bedebeecadbddcdcaceeeeeddcacdccdececbbbbecdcaaedbbdadbaacecdcecb"
+ "bbcdedaacdacbdccddbeeadeeaedbbabebacaaeccdadeeabdcdbacdbacbdcead"
+ "acdadbaaccbceeadcaecdceaaccddbabcadcabeeabadcdbddaddebbacbaadbee"
+ "bbbbccbadabaedeadbbacccbdecdedbebcbaeceaebedadbceccaccaceaeabdca"
+ "dadecccadadeedacdccadbabcbcecabeacceddaddececcdadeeceebdcbceedcb"
+ "aaeacbababbaceccbbbacaccccbcaebdebddbbbcadccebaacdadadbccacaeebc"
+ "edeededecbacdbdeceddaacaaeacdadcdcbaededdddeededdcaddcabbbedaebd"
+ "ebdcacbabecadbebeaadbbddedecdabdbcabcdeaaeaddddeedecaecbdccbbead"
+ "debeecacccbebadcbacaceaedcbdaabbdedaedabbcedabeedebebabbabbabdba"
+ "beedccdeaedeaaeecdbdebcabaaebeecceaeddbdbabccbaeedcadacecebbecdc"
+ "acbbabceececbebaeaadbdbdebeaaeecedcedadaddcbbcdbabdabacbaeecddea"
+ "bdebbddaeebdccbdccbcecbccdcbbbcdceaecdcccaabdeeceaabcdaadadcaebc"
+ "cceaacaabccacccdbdacdebaddbcaddebcbdddaabbeceaeeeccedcbbbdbccbdc"
+ "eeaedaeabdaeddeadbcdbcbcccddedcabbacedacccdcaecedccddeacdabecbab"
+ "daabdabdcdbeddcdcbebabeaececcdbeacaabddcbdaaadceaeeccdbaedcbceab"
+ "abbadbaacdeaebbccbbadddaeaaeecdeeecebabddbcebaacecdcaaaadcabdadd"
+ "bdebdbdaabaeeaaccdcacbaeadeccecbdccdbedaadaeddececeacdebcceabcdb"
+ "cecddceebdbabeadcdbdcaebcbdbddcdcbadbbddcacaeebaddeacbebebbbbcbc"
+ "bbcaeeaaedabbadabceabccacddacbbbedaadcdcedcccbeeddccbeabaecbaecd"
+ "eadacdeeebedabcaedabacbeedecdadaadbadbaebbbadadaeddaacbdacaadaaa"
+ "cdcababaabbcaaeeddccbbdcdcdceaaeddcbeaebddbadeaecaaccdeeaccdbcdd"
+ "edebcbedcadaddbbbacdacbaaabdbaeceebbdcdbeccbeaeeeeeceedcedeaebea"
+ "cdaecbadbadaaadbbaebaabbcdeedcaabddaecdcedebadccddbcbdabbedeabde"
+ "dbccaadeaadaceaedecadabcdebbaaceddeebcccdccbcccdbadbbdbdbdbcbdcc"
+ "ecbadcedbacbaadebaedaaeaeedaadcedcabccebbebeabddddcdcdbdaabcaada"
+ "ceddaeabcbbbadcbdbeaaedcceaeddbbbebeabaedebccceeebeeabacdabcddcd"
+ "dcddcbddcdadaadbbadeedabadbaaeeeeacbaeacdecabcbdccecdededdadddec"
+ ;
+ uint8_t out[65536];
+ size_t aux[65536];
+ size_t i;
+
+ for (i = 0; i < 1024; ++i) {
+ ASSERT_EQ(0, stree_encode(64, in + i * 64, out, aux));
+ }
+
+ ASSERT_EQ(0, stree_encode(65536, in, out, aux));
return TEST_SUCCESS;
}
RUN_TEST(test_stree_minimal);
RUN_TEST(test_stree_minimal_2);
RUN_TEST(test_stree_minimal_3);
+ RUN_TEST(test_stree_minimal_4);
RUN_TEST(test_stree_long);
RUN_TEST(test_stree_very_long);
}