Compare commits
No commits in common. "26a7b87c31872c12cd66559ce983ec2bf6a2c214" and "e0f1c3d9bcef754a7384c06d55e8ae8a244c39a9" have entirely different histories.
26a7b87c31
...
e0f1c3d9bc
3
data.go
3
data.go
@ -36,6 +36,3 @@ var Day10Data string
|
|||||||
|
|
||||||
//go:embed day_11/data.txt
|
//go:embed day_11/data.txt
|
||||||
var Day11Data string
|
var Day11Data string
|
||||||
|
|
||||||
//go:embed day_12/data.txt
|
|
||||||
var Day12Data string
|
|
||||||
|
140
day_12/data.txt
140
day_12/data.txt
@ -1,140 +0,0 @@
|
|||||||
KKKKKKKKKKKEEEEEEEEEEWWWWWWWWWWWWUWWUUHSSSHNNNNPVVVVVVVVCRRCCCCCCCYYCSSSSSSSSSSHKHIIIIUDDUUWIIIIIIIIIIIIYUEEDDDYYYYYYYYYYYYYYYYYYYYIIIIIIIJJ
|
|
||||||
KKKKKKKKKKKEEEEEEEEEHHHWWWWWWWWWWUUUUUHHHHHHHPPPPPVCVCCVCCCCCCCCCCYCCSSSSSSSSSSHHHHIIIUDDUUUIIIIIIIIIIYYYUEEEEEYYWYYYWWWYYYYYYBBBBBIIIIIIJJJ
|
|
||||||
KKKKKKKKXXKEEEZZZZZZZHHWWWWZZZWCCUUUUUHHHHHHHPPPPPVCCCCCCCCCCCCCCCCCCSSSSSSSHHHHHHHIUUUUUUUIIIIIIIIIIIYYYUEEEEEYYWWWWWWWWWWYYYBBBBBBBBJJJJJJ
|
|
||||||
KKKKKKKKKKKEEEEZZZZZZZZZZZZZZZWCCCHUUUHHHHHHHPPPPPPCCCQQCCCCCCCCCCCCCSSSSSSHHHHHHHXUUUUUUUUIJIIIIIIIIIIYOEEEEEEEWWWWWWWWWWWYYYYBBBBBBBLJJJJJ
|
|
||||||
KKKKKKKKKKKKEEEZZZZZZZZZZZZZDZDCCCHHUHHHHHHHPPPPPPPQQQQCCCCCCCCCCCCCCSSSSSHHHHHHHHHHUUUUUUIIIIIIIIIIIIYYOEEEEEEEWWWWWWWWWWWWWYYBBBBBBBBBJJJJ
|
|
||||||
KKKKKKKKKKKKEZZZZZZZZZZDZZZDDDDDCCHHHHHHHHHPPPPPPPQQQQQQQCCCCCCCCCCCCSSSSSHHHHHHHHHHUUUUUUUIIIIIIIIIIIYYEEEEEEEEWWWWWWWWWWWWWWWBBBBBBBBOJJGG
|
|
||||||
KKKKKKKKKKKKZZZZZZZZZDTDDDDDDDDDCHHHHHHHHHHHPPPPPPQQQQQQQQCCKCKKCCCYYSSSSHHHHHHHHHHUUUUUUUUIIIIIIIIIIIZYEEEEEEEEEWWWWWWWWWWWWWWBBBBBBBBJJJGG
|
|
||||||
OKKKKKKKKKKLZZZZZZZZZDDDDDDDDDDTHQHHHHHHHHHPPPPPPQQQQQQQQQQKKKKKKKCYYYSSHHHHHHHHHHHUUUUUUUUUSSIIIKKKGGZZZEEEEEEEEWWWWWWWWWWWWWBBBBBBBBBBBURR
|
|
||||||
OKKKKKKKUUKLLLLLZZZZZDDDDDDDDDDDHHHHHHHHHQHHPPPPPXQQQQQQQQQKOOKKYYYYYYYYYHXHHHHHHHHUUUUUUUUUUUKKKKGGGGGGEEEEEEEEEWZWWWWWWWWWWWBBBBBBBBBBBRRR
|
|
||||||
OKKKKKKKKKKLLLLLZZZZZZDDDDDDDDDHHHHHHHHQHQPPPPPPAQQQQQQQQQQQYYYYYYYYYYYYXXXHHHHHUUUUUUUUUUUUUUGGGGGGPPPPEEEEEEEEEZZWWWWWWWWWWWWWWBBBBBBBBRRR
|
|
||||||
OKKKKKKKKLKLLLLLZZNNZZDZZDDDDDDDDDHHHHHQQQQPPPPAAIIIIIIQDQSYYYYYYYYYYYYXXHHHHHHHUUUUUUUUUUUUUUUGGGGGGPPPEEEEEEEEEZZJWWJJWWWWJWWWWWBBBBBBBRRR
|
|
||||||
OKKKKKKKKLLLLLLLZNNNNZZZZZZZDDBKKKKKKKKXXXQQXPPPIIIIIIIIISSSYYYYYYYYYYXXXHMHHHHHUUUUUUUUUURRRRRGGGGPGPPPPPPEEEEEEZZJJJJJWWWWWWWWWKBKBBBRBRRR
|
|
||||||
OKKKKKKKKLLLLLLLNNSNNZZZZZDDDDBBBBKKKKKKXXQQXXVXIIIIIIIIISSSYYYYYYYYYYMXMMMHKKHHUUUUUUUUUURRRRGGGGGPPPPPPPPPEEEEEZZZZZJJWWWJWWWWWWWKKRRRRRRR
|
|
||||||
OOKKKKKKMBLLLLLLLLNNNNNXXXXXXXXXBKKKKKKKXXXXXXXXXIIIIIIIIIISYYYYYYYYYYMMMMMHKKKBSBUSUUUUUURRRRPQGGGPPPPPPPPPEEZZZZZZZZJJWJJJWWWWWKKKKRRRRRRR
|
|
||||||
OOOKKKKMMBBLLLLLLLNNNNNXXXXXXXXXBBKKKKXXXXXXXXXXXXIIIIIIIIIIAYYYYYYYYYMMMMMMMKKBBBBSRRRUUUURRRPPPGPPPPPPPPPPPONZZZZZZZZJJJJJWWWWWKKKKRRRRRRR
|
|
||||||
KKKKKKDBBBBLLLLLLLNNNNNXXXXXXXXXBBKKKKXXXXXXXXXXXXXIIIIIIIIIAYYYYYYYYYHHMMMMMBBBBBBRRRRRURRRRRPPPPPPPPPPPPPPOOOZZZZZZZZZJJJJJJJWWWWKKRRRRRRR
|
|
||||||
BKBBKBBBBBBBLLLLLNNNNNNXXXXXXXXXBBBKKKKXXXXXXXXXXXXIIIIIIIIAAPPPPPPPPRGHMMHHMBBBBBBRRRRRURRRRPPPPPPPPPPPPPPPOOOOOZZZZZZZZJJJJWWWWWWWKRRRRRRR
|
|
||||||
BKBBBBBBBBBBLLLYYNNNNNNXXXXXXXXXBBBBBBKXXXXXXXXXXXXXIIIIIIIGAPPPPPPPPRGHHHHHPPPBRRRRRRYYURRRRPPPPPPPPPPPPPPOOOOOZZZZZZZZZJJWWWWWWWWWKKKRRRRR
|
|
||||||
BBBBBBBBBBBLLLLYYNNNNNNNNXXXXXBBBBBBBBBHHXXXXXXXXXXXIIIUUINGGPPPPPPPPGGHHHHHPPPBRRRRRRRYUURRRRRRRPPPPPPPPPPOOOOOZZZZZZZZZJJWWWWWWWWWKKKKRRRR
|
|
||||||
BBBBBBBBBBBLLYYYYNNNNNNNNXXXXXBBHBBBBBBHHHXXXXXXXXXXIQIUUUGGGPPPPPPPPGGHHHHHPPPRRRRRRRZAUARRRRRERPPPPPPPPPPPOOOOOZZOOZSZZFFBBWWWWWWWWKKKRRBB
|
|
||||||
BBBBBBBBBBBLLYXXXXXNNNNNNXXXXXHHHBBVBBBHHXXXXXXXXXXXUUUUUGGGGPPPPPPPPPPPPPPPPPPPPPPPPRAAAAAAEEEEEPPPPPPPKPPPOOOOOOZOWFFFFFFBBBWWWWWWKKKKKBBB
|
|
||||||
BBBGGBBBBBBLLYXXXXXNNNNNDXXXXXHHHBBBHHHHHXXXXXXXXMMMUUUUUGGGGPPPPPPPPPPPPPPPPPPPPPPPPRRRQQQQQQQQQQQQQQQQKKPPOOOOOOOOOFXFBBFBBBBWWWWWKKKKKBKB
|
|
||||||
BGGGGGGGBBBBLYXXXXXNRRDDDXXXXXHTTLLBHHLHHHCXXXXXXMMMUUUUUUGGGPPPPPPPPPPPPPPPPPPPPPPPPRRAQQQQQQQQQQQQQQQQFKKKKOOOOOOOOOFFBBBBBKKWWWKKKKKKKKKB
|
|
||||||
BGGGGGGGGLLLLLXXXXXXXXXXXXXXXXLLLLLLHLLHHCCCCCCXXXXAAAAUJGGGGPPPPPPPPPPPPPPPPPPPPPPPPXAAQQQQQQQQQQQQQQQQFFKKOOOOOOOOOFFFBQQQHKKKWWKKKKKKKKKB
|
|
||||||
GGGGGFGGGGLLLYXXXXXXXXXXXXZZLLLLLLLLLLLHHCCCCCXXXXNAAAAUJJGGGPPPPPPPPPPPPPPPPMMMMMMXXXAAQQQQQQQQQQQQQQQQFFOOOOOOOOOOFFFFQQQQHKKKKKKKKKKKKKBB
|
|
||||||
GGGGQQQGGGLLLLYXXXXXXXXXXXZZLLLLLLLLLLLLCCCCCCXXXRAAAAAAJGGGGPPPPPPPPPPPPPPPPMMMMXXXXEEEQQQQQQQQQQQQQQQQFFFFFFOOPOFFFFFFFHHHHHHKKKKKKKKKKKKB
|
|
||||||
GGGGQQQGGGXXXXXXXXXXXXXXXXLLLLLLLLLLLLLTCCCCCCYYYAAAAAAKJJJGGGGGIGGGPPPPPPPPPMMDMXXXXEEEQQQQQQQQQQQQQQQQFFFFFFFFOOFFFFFHFHHHHHHHKKKKKKKKKKBB
|
|
||||||
GGGGQQGGGGXXXXXXXXXXXXXXXXLLLLLLLLLLLLLGGGCCCCCYAAAAAAAJJJJGGGGGIGGGPPPPPPPPPMMMMXXXXEEEQQQQWWWWWWQQQQQQFFFFFFFFFFFFFHHHHHHHHHHHHKKKKKKKKKKK
|
|
||||||
GGGGGGGGGGGXXXXXXXXXXXXXXXLLLLLLLLLLLLLLGGGCCYYYAAAAAAAJJJJGGIIOIIMMPPPPPPPPPMMMMMXXEEEEQQQQWWWWWWQQQQQQFFFFFFFFFFFFFHHHHHHHHHKKKKFKKKKKKKKK
|
|
||||||
GGGGGGGGGXXXXXXXXXXXXXXXXXVLVVVLLLLLLLLLGGGGGGGAAAAAAAJJJJJIIIIIIIIIPPPPPPPPPMMMMMMXEEEEQQQQWWWWWWQQQQQQFFFFFFFFFFFFFHHHHHHHHCKOKKFKKKKKKKKC
|
|
||||||
GGGGGGGXXXXXXXXXXXXXXXXXXXVVVVLLLLLLLLLLGGGGGGFFAAAAAJJJJJJJIIIIIIIIIIIIMMMMMMMMMMMEEEEEEEEEWWWWWWQQQQQQFFFFFFFFFFFFFHHHHHHHHCOKKKFKKKFFKKKC
|
|
||||||
GGGGGGGXXXXXXXXXXXXXXXXXXXVVJJLTLLLLLLLLGGGGGGGGUAAAAJJJJJJJJIIIIIIIIIIMMMMMMMMMMMOOEDEEEEEEWWWWWWSSSFFFFFFFFFFMFFFFFHHHHHHHOOOOFFFFFFFFOKKC
|
|
||||||
GGGGGGGGXXXXXXXXXXXXXXXXXXVVJJLLLLLLLLJLGGGGGGGGUUAAAJJJJIIILIIIIIIIIIIIIMMMMMMMMMONEDEEEEEEWWWWWWSSSSFFFIFFFFFMFFFFFFHIHHHOOOOOOFFFFFFFFCCC
|
|
||||||
GGFFGGFXXXXXXXXXXXXXVVVVVVVJJJLLLLLLLLJJJJGGGUUUUUUUUUUUJIIIIIIIIIIIIIIIIMMMMMMMMMNWWWNNHECEWWWWWWKKKKKKKKKIMMMMMMMFFFIIIIHOOOOPOOOFFFFFFFCC
|
|
||||||
GFFFFFFFFFVVXXXXXXXVVVVVVVVJJJLDLLLLLDZQJJJJJUUUUUUUUUUUJJIIIIIIIIIIIIIIIMDDMMMMMNNWWWNNWWWWWWWWWWKKKKKKKKKIIMMMMMMMIFIIIIOOOPPPOQFFFFFFFFCC
|
|
||||||
GFBFFFFFFVVVXXXXXXXVVVVVVVVJJJDDLDDDDDZQJJJJJUUUUUUUUUUUJJJIIIIIIIIIUUIIIMDDDMOWOOEWWWWWWWWWWWWWWWWWWKKKKKKIIMMMMIIMIIIIIIOOPPPPOOOOFFFFFFAC
|
|
||||||
GFFFFFFFFVVVVVVXXVVVVVVVVVVJJJDDDDDDDDQQJJJJJJUUUUUUUJJJJJJIIIIIIIIIUUUIIIOOONOOOOOWWWWWWWWWWWVVWWWWWKKKKKKYIIIMMIIIIIIIPPPPPPPPPPPRFFFFFAAA
|
|
||||||
FFFFFFFFFFFFVVVXXVVVVVVVVVVDDDDDDDDDQDQQUJJJJJUUUUUUUJJJJJJJIIIIIIIIIUUUUUOOONOOOOOOWWWWWWWWWWVVWWWWWKKKKKKYYIIIIIIIIIPPPPPPPPPPPPPFFAFFAAAA
|
|
||||||
FFFFFFFFFFFVVVVVVVVVVVVVVVVDDDDDDDDDQQQQUUJHBUUUUUUUUUJJJJJJJIIIIIIIPUUUUUOOOOOOOOOOWWWWWWWWWWVVWWWWWKKKKKKYYYIIIIIIIPPPPPPPPPPPPPPFFAFAAAAA
|
|
||||||
FIFFFFFFFFFFVVVVVVVVDDVIVTTTDDBDDDTNNQQQUUHHBBUUUUUUUJJJJJJJJIJIIIIUUUUUUUOOOOOOOOOOONNNNNNNNNVVWWWWWKKKKKKYYYIIIIIIIIPPPPPPPPPPPPPFFAAAAAAA
|
|
||||||
IIIFFFFFFFFFFVVVVVVVVDDDDDDDDDDDDTTNQQQQUUHBBUUUUUJJJJJJJJJJJJJJJJUUUUUUKUOOOOOOOOOODDNNNNKKKKKKWWWWWKKKKKKNYIIIIIIIIIIPPPPPPPPPPPPDFAAAAAAA
|
|
||||||
IIIFFFFFFCCWWVVVVVVVVDDDDDDDDDNNTTTEQQQHHHHHBUUUBBJJJJJJJJJJJJJJJJUUUUUUUOOOOOODODDDDDNNNNKKKKKKWWWWWKKKKKKNNIIIIIICCCCPHPPPPPPPPPPPAAAAAAAA
|
|
||||||
IIIFFFFOWCCWWWVVVVVVVDDDDDDDDDNNTPQQQQQHHHHHBBBBBBBJJJJJJJJJJJJJJUUUUUUUUOOOODDDODDDDDNNNUKKKKKKWWWWWKKKKKKNNNNNIIICCCCTCPPPYPPPPPPAAAAAWWWA
|
|
||||||
IIIFOOOOWWCWWWWWWWVVVDDDDDDDDDDQQQQQQQQQHHHHHBBBBJJJJJJJJJJJJJJJUUUUUUUUUOOOODDDDDDDDDDFNNKKKKKKWWWWWKKKKKKNNNNNNIICCCCCCCPPYPPPPPPAAAWWWWWW
|
|
||||||
IIIFFKKKKKWWWWWWWVVVXXDDDDDDDDDQQQQQQQEQQQHHHHBBBBJBBJMMVMJJJJFFFUUUUUUUUOODDDDDDDDDDDDFFUKKKKKKKKKKKKKKKKKNNNNNNIICCCCCCCCCPPPPPAAAAAWZWWWW
|
|
||||||
OOOFOKKKKKWWWWWWWWVVXDDDDGGGGGGQQQQQQQEQQQHHHQQQBBBBMMMMMMJJDFFFFFFUUUUUOOOODDDDDDDDDDDDUUUUUUUAAAOMMMNNNNNNNNNIIICYCCCCCCCCPPPPPPAAAWWWWWWW
|
|
||||||
OOOOOKKKKKWWWWWWWWXXXXDXDGGGGGGQQQQQQQQQQQHHHQQQQQMMEMMMMMKJDFFFFFFUUUOOOOOODDDDDDDDDDDOOUUOOOOOOOOOMNNNNNNNNNNIIICCCCCCCCCCPPPPPAAAAWAWWWWW
|
|
||||||
SOOOOKKKKKWWWWWWWWXXXXXXXGGGGGGQQQQQQQQQQQQQQQQQQQMMMMMMMMMMDFFFFFFFFUOOOOWWDDDDDDDVDDDOOOOOOOOOOOOOMMNNNNNNNNNIIICCCCCCCCCCCCPAAAAAAAAWWWWW
|
|
||||||
SOOOOKKKKKCCCCCCCWWXXXXGGGGGGGGQQQQQQQQQQQQQQQQQQHMMUMMMMMMMFFFFFFFFFOOOOOWWQQDDDDDVVVOOOOOOOOOOOOOOMMMMNNNNNNNIICCCCCCCCCCCCCGAAAAAAWWWWWWW
|
|
||||||
SYQQOKKKKKCCCCCCCWXXXXXGGGGGGGGQQQQQQQQQQQQQQQQQQHMMMMMMMMMMFFFFFFFFFWWWWWWWWQDDDDDVUVOOOOOOOOOOOYOOMMMMNNNNNNKKIILCCCCCCCCCCGGAAAAAWWWWWWWW
|
|
||||||
YYYYHKKKKKCCCCCCCXXXXXXGGGGGGGGQQQQQQQQQQQQQQQQQQHHMMMMMMMMMFFFFFFFFFFFWWWWWQQQDDUUUUUOOOOOOOOOOOOOMMMMMMNNNSSKMICCCCCCCCCCCCGGGGAAAWWWWWWWW
|
|
||||||
YYYYYKKKKKCCCCCCCXXXXZZZGGGGGGGQQQQQQQQQQQQQQHHHHHHMMMMMMMMMMMFFFFFFFWWWWWQQQQYQDDUUUUUUOOOOOOOOOOKOMMMMMMMMKSKKIICCCOCCCCCCCGGAGAAAAAWWWWWW
|
|
||||||
YYYYYKKCCCCCCCCCCXXXZZZZGGGGGGGGDDEQQQQQQQQQHHHHHHHMMMMMMMMMZZFFFFFFFFFFWWQQQQQQDUUUUUUUUOOUUOOOOOOOMMMMMMMMKKKKIIOSSOCCCCCCCGGAAAAAAAAWWWWW
|
|
||||||
YYYYYHHCCCCCCCCCCCCCCCCCCCGGGGGGDYYYQQQQQQQQQHHHHHHMMMMMMMMMMMFFFFFFFFFFWWQQQQQDDUUUUUUUULLLUOOOOOMMMMMMMMKKKKKKKOOOOOBBBBCBCAAAAAARRRRRWWWW
|
|
||||||
YYYYHHHCCCCCCCCCCCCCCCCCCCGGGGGGYYYYYYQQQQQQQWHHHHHMMMMMMVMMKFFFFFFFFFFWWQQQQQQQQQUUUUUUULUUUUOOOMMMMMMMMMKKKKKKOOOOOOOBBBCBBBBAAAARRRRRRRRR
|
|
||||||
YYYYXXXCCCCCCCCCCCCCCCCCCCGGGGGUCYYYYQQQQSQQHHHHHHHHHHHMMCCKKKFFFFFFFFFFWWWQQQQQQUUUUUUUUUUUUUOMMMMMMMMMMMKKKKKOOOOOOOOOOBBBBBBAAAABRRRRRRRR
|
|
||||||
YYYYYYVCCCCCCCCCCCCCCCCCCCGGGGGUCYYYNNNNSSSSHHHHHHHHHHMMMCCCKCCFFFFFFFFFFFWQQQQQQUUUUUUUUUUUUUMMMMMMMMMMMMKKKKKKTOOOOOOOOOBBGBBBABBBRRRRRRRR
|
|
||||||
YYYYYYXCCCCCCCCCCCCCCCCCCCGGGGGUCCCNNNNNDDSHHHHHHHHHHFFFFFFFFFFVFFFFFFFFFDDDDDUQQQUUUUUUUUUUUMMMMMMMMMMMMMKKKKKKOQOOOOOOOBBGGBBBBBBBRRRRRRRR
|
|
||||||
YYYIILLCCCCCCCCCCCCCCCCCCCGGGGGCCCCNNNNNDDDDQQHHHHHHHFFFFFFFFFFCTFDFFFFFDDDDDDUUUUUUNUUUUUUUUMMMMMUUUMUUMMKKKKOOOOOOOOOOOOOGGBBRRRRRRRRRRRRR
|
|
||||||
YIIIILLCCCCCCCCCCCCCCCCCCCGGGGGUCCCCNNNNNDDDDQDHHHHHHFFFFFFFFFFLDDDDDDDDDDDDDDUUUUUNNNNUUUUUMMMMUUUUUUUUMMUKKOOOOOOOOOOOOOGGGGGGRRRRRRRRRRRR
|
|
||||||
YIIIIIICCCCCAAAACCCCCCCCCCOOOCCCCCCNNNNNEDDDDDDDHHHHHFFFFFFFFFFDDCDDDDDDDDDDDDUUUNNNENNUUUUOOOMUUUUUUUUUUUUKKUOOOOOOOOOOOOOGGGGGGRYRRRRRRRRR
|
|
||||||
BIIIIIICCCCCIAAACCCCCCCCCCOOOCCCCCNNNNNNNDDDDDDUHHHHHFFFFFFFFFFCCCDDDDDDDDDDDDNNNNNNNNNNUWOOOOOUUUUUUUUUUUUUUUOOOOOOOOOOOOGGGGGGGRRRRRRRRRRR
|
|
||||||
IIIIIIIIICCCCCCCCCCCCCCCCCOOOONCCNNNNNNNNDDDDDDUUUHHHFFFFFFFFFFECDDDDDDDDDDDDDNNNNNNNNNNWWOOOOHHHHUUUUUUUUUUUCOOOOOOOOOOOOOGGGGGGRRRRRRRRRRR
|
|
||||||
IIIIIIIIICCCCCCCCAAOOOOOOGOOONNNNNNNNNNNNDDDDDDDUUHHHFFFFFFFFFFCCCCDDDDDDDDDDDNNNNNNNNNNNNOOOOOOOHHUUUUUUUUUUCCOOOOOOOOOOGGGGGGGGKKRRRRRRRRX
|
|
||||||
IIIIIIIIICCCCCCCCAAOOOOGGGUGGNNNNNNNNNNNNNDDDDDDDJJHHFFFFFCCCCCCCCDDDDDDDDDDDDDNNNNNNNNNNYOOOOOOOOLUUUUUUUUITICIYYOOOBOOOGGGGGGGGKKKKRRRRRRR
|
|
||||||
IIIIIIIIIAAAAAAAAAAAAGOGGGGGGNNNNNNNNNNNZNNDDDDDDJJHHFFFFFCCCCCCDDDDDDDDDDDDDDDDNNNNNNNNNNOOXXXXXXLLLUUUULLIIIIIIIGGOOGGGGGGGGGGGGKKRRRRRRSS
|
|
||||||
IIIIIIIIIIAAAAAAAAAAAGGGGGGGGGNUNNNNNNNNZZDDDDDDJJJJJFFFFFCJCCCCDMDDDDGDDGGGGGDDNNNNNNNNNNRRFFFXXXLLLLLLLLLLLLLLLIGGGGGGGGGGGLGGKKKKKKKRRRRS
|
|
||||||
IIIIIIIIIIIAAAAAEAAAAAGGGGGGTTTTTNNNNNNNZZDDDDDRJJJJJFFFFFJJCRDDDMMDDDGGGGGGRGDDGGGGNNNNNNNRFFFFXXLLLLLLLXLLLLLLLIIGGGGGGGGGGGGGKKKKKKSSRRRS
|
|
||||||
IIIIIIIIIIIIAAEEEEAAAAGGGGGGTTTTTRRNZNZZZZDDDDZJJJJJJFFFFFJJJRDDLMMMMDDGGGGGGGGDGGGGGGNNNNNNFFFFXLLLLLLLLXLLLLLLLIIIIIIGGGGGGGGSKKKKKKSSQRRS
|
|
||||||
IIIIIIIIAAIIAAEEEEAEAAGGGGGGTTTTTTTZZZZZZZZZZZZJJJJJJFFFFFJJRRRDDMMMMMGGGGGGGGGGGGGTGGNNNNNFFFFJFLLLLLLLLLLLLLLLLIIIIIGGGGGGGGGSSSSSSSSSURUU
|
|
||||||
IIIIIIIIAAAAAAEEEEEEEEGGGGGGTTTTTTTZZZZZZZZZZZZJJJJJJFFFFFJDDDDDMMMMMXXGGGGGGGGGGGGGGGNNNNNNFFFFFXLLLLLLLXLLLLLLLLLLLGGGGGGGGGGSSSSSSSSUUUUU
|
|
||||||
ZZZIIIIIDDAAAAAEEEEEEKGGGGGTTTTTTTTTZZZZZZZZZZJJJJJJJFFFFFDDDDDMMMMMMMMEGGGGGGGGGGGGGNNNNNFFFFFFFLLLLLLLLXLLLLLLLLLLLGGGGGGGGGSSSSSSSSSUUUUU
|
|
||||||
ZZZIIDDDDEEEEAEEEEEEEKKGGGGGTTTTTTETTZZZZZZZZZZZZZZZZZZFFFDDDDMMMMMMEEEEGGGGGGGGGGGGGGNNNFFFFFFFTLLLLLLLLLLLLLLLLLLLLGGGGGGESSSSSSSSSSSSUUUU
|
|
||||||
ZZZDIDDDDEEEEEEEEEEEKKKKKGTTTTTTTTTTTZZZZZZZZZZZZZZZZZZZFFDDDDDDDMMMEEEEEGGGGGGGGGGFGFFNNFFFFFFTTTLLLLLLLXLLLLLLLLLLLIIAGGGGSSSSSSSSSSSSSUUU
|
|
||||||
ZZZDDDDDDDEEEEEEEEEEEKKKKGTTTTTTTTZTZZZZZZZZZZZZZZZZZZZZFFDDDDDDDMMEEEZZZZOOGGGGGGGFFFFFFFFFFTTTTYYYLLLLLXLLLLLLLLLLLZZGGGDDDDSSSSSSSSSSSSSU
|
|
||||||
ZZZDZDDDDDDEEEEEEEEEEKKKKKKKKKUTTTZZZZZZZZZZZZZZZZZZZZZZFFDDDDDDDMEEEEZZZZZOGGGGGGGFFFFFFFFFFFFTTYYYYYYLLHLLLLLLLLLLLGGGGGGGDSSSSSSSSSSSSDSU
|
|
||||||
ZZZZZDDDDDDEEEEEEEEEEKKKKKKKKKUUUJJJZZZZZZZZZZZZZZZZZZZZZFDDDDDDDMEEEZZZZZDZGGGGGGGBFFFFFFFFFFYZTYYYYYYHHHHHHHLLLLLLLHHHGGGGSSSSSSSSSSSSDDDU
|
|
||||||
ZZZZZDDDDDDDDEEEEEEEKKKKKKKKKUUUUJJJJZZZZZZZZZZZZZZZZZZZZDDDDDDDDMEDZZZZZZZZZGGGGGBBFFFFFFFFFFYYYYYYYYYHVVHHYHHHXXHHHHFFHWWWSSSSSSSSSDDDDDUU
|
|
||||||
ZZZZZDDDDDDDDEEEEEEEKKKKKKKKUUUUUJJJJJJZZFFFFZZZZZZZZZZZZSDDDDDDDDDDDZZZZZZZNNNGGGGBFFFFFFFFYYYYYYIIYYYVVHHHHHHHHHHHHHFFHWWWWWSSSSSSSDDDDDDU
|
|
||||||
ZZZZYYYYDDDDDDDEEEEEKKKKKKKKUUUUUJJJJJZZZZFFFZZZZZZZZZZZZSDDDDDDDDDDZZZZZZZZZNZZZGJJFFFFFFFFFYYYIIIIYYYIHHHHHHHHHHHHHHHHHWWWWWWSWSSNSSDDDDDD
|
|
||||||
ZZZYZYYAYYDDDDDEEQEEEKKKKKKUUUUUUUJJJZZZZFFFFFFFZZZZZZZZZSSSDDDDDDDZZZZZZZZZZZZZZJJJJFFFFFFFFIIIIIIIYIIIIHHHHHHHHHHHHHHHHHWWWWWWWSSBBSSDDDDC
|
|
||||||
YYYYYYYYYYDDDDEEFDKKKKKKKKKUUUUUUUUUJZZZZZZFFFFFZZZZZZZZZSSSDDDDDDDDDZZZZZZZZZZZJJJJLFFFFFFFFIIIIIIIIIIIIIHHHHHHHHHHHHHHHHWWWWWWWWBBBSDDDDCC
|
|
||||||
YYYYYYYYYYDDDDDDDDKKKKKKKKKUUUUUUUUUJUZZZZZFFFFFZZZFRZZZRRSSSDDDDDDDZZZZZZZZZMMZJJJJJFFFFFXFFFIIIIIIIIIIIIIHHHHHHHHHHHHHHHHWWWWWWWBBBBDDCCCC
|
|
||||||
YYYYYYYYYYDDDDDDDDHHKKKKKKKUUUUUUUUUUUZZZZZFFFFFZZZFRZZZRRRSAADAJDZZZZZZZZZZMMMMJJJJJJXXXXXFXXBIIIIIIIIIIIIHHHHHHHHHHHHHHHHWWWGGCBJBBBBDCCCC
|
|
||||||
YYYYYYYYYYYDDDDDDHHHHKKKKKKIUUUUUUUUUZZZZZZZFFFFZZZRRZZZRRRRAAAAAAZZZZZZZZWZCMMMJJJJJXXXXXXXXBBIIIIIIIBIIIIRHHHHHHHGHHHHHHHWWGGGCBBBBBBBBCCC
|
|
||||||
YYYYYYYYYYYYDDDDDHHHNKKKKKKKKUBBBUUUUUUBBBZZZFZZZZZRRZZZRRRRRAAAAAAAZZZWZWWZCCMJJJNNJXXXXXXXBBBBBIIIIHBIBIIRRHHHHHHGGGGGGGGGWGGBCYBBBCCCCCCC
|
|
||||||
YYYYYYYYYYYYYDDDHHHKKKKKKKKKKKKBBBBBUUUBBBZBZZZZZZZRRZZZRRRYYAAAAAAAAAZWAAWWCCMCNNNNXXXXXXXXBBBBBIIIIBBBBIBBRHHHHGGGGGGGHGGGGGGGCCCBBBBCCCCC
|
|
||||||
YYYYYYYYYYYYNDDAHAAKKKKKKKKKKKBBBBBBBBBBBBBBZZZZZZZRRZZZRRRRRZAAAAAAAAAAAAWCCCCCCNNNXCXXXXXZBBBBBIIBBBBBBBBBBHHHHVVGGGGGGGGGGGGGCCCBBBCCCCCC
|
|
||||||
YYYYYYYYYYYYDDDAAAKKKKKKKKKKKKBBBBBBBBBBBBBIIZZQZRRRRZZZRRRVVAAAAAAAAAAAAAACCCCCCNNNCXXXXXBBBBBBBBIBBBBBBBBBBBHHHVVGGGGGGGGGGJGGCCCCCCCCCCCC
|
|
||||||
YYYYYYYYAAYYAAAAAAAKIIKKKKKPPPPBBBBBBBBBBBBIIQQQRRRRRRRRRRVVVVAAAAAAAAAAAAAACCCCCNNNCXXXXXNNPBBBBBBBBBBBBBBBBBBHHHVGGGGGGGGGGGUGCCCCCCCCCCCC
|
|
||||||
XXYYYYYYAAAAAAAAAAAKKIKIKKKPPPPBBBBBBBBBBBBIIIQRRQRRRRRRRRVVVVAAAAAAAAAAAACCCCCCCCNNXXNNNNNNNNNBBBBBBBBBBBBBBBHHGHHGGGGGGGGGGGGMCCCCCCCCCCCK
|
|
||||||
XXYYYYYYAAAAAAJJAAAAKIIIKKKPPPPBBBBBBBBBBBBIIQQQQQQRRRQQRVVVVVAAAAAAAAAAACCCCCCCCCNNNXNNNNNNNNBBBBBBBBQBBBBBBBHGGGMGGGGGGGGGGGGMMCCCCCCCCCCK
|
|
||||||
XXYYYYYAAUAAAAJJJJAKKKKKKKPPPPPPBWBBBBBBBBIIIIQQQQQRRQQQQQVVVVAAAAAAAAAAACCCCCCCCNNNNNNNNNNNNBBBBBBBBBQQBBBBBBBGGTMMMGGGGGGGGMMMCCCCCCCCCCCK
|
|
||||||
XXXYYYPUUUUJAJJJJJAAAKKKKKPPPPPPPBBBBBBBBBIIIIQQQQQQQQQLQVVJVVVAJAAAAAAAACCCCCCCCNNNNNNNNNNNNNBBBBBQQQQQZBBBBBBBGTMMMMMMMMGGGGMMCCCCCCCCCCCK
|
|
||||||
XXYYMMUUUUUJJJJJJJJJAAKAKKPPPPPPPBBBBBBBBOOIIIOQQQQQQQQLLLVJJJVAJJJAAAAZZCCCCCCCNNNCNNNNNNNNNJBBBBBBQQQQQBBBBBBTTTMMMMMMMMGNNNCCCCCQDCCQKKKK
|
|
||||||
XYYYMYYUUUUJJJJJJJJJJAAAAKPPPPJJJBBBJBBBNOOOOOOYOOOQQLQLLLVJJJJJJJJJAGZZZCCCCCCCCCNCNNNNNYYNNJQQBQQQQQQQQQQBBBBBTMMMMMMMMMNNNQSQCXQQQQQQKKKK
|
|
||||||
YYYYYYYIUUUJJJJJJJJAAAAAAKPPPPJJJJJBJBBOOOOOOOOOOOOQQLLLLLLJJJJJJJJJJJZZZZCCCCCCCCCCCNNNYYZNQQQQQIQQQQQQQQBBBBYMTTQMMMMMMNNNNQQQQQQYYQQQKKKK
|
|
||||||
OOOYOOOUUUUJJJJJJJJJAAAKKPPPPJJJJJJJJJBOOOOOOOOOOOOLQLLLLLLLJJJJJJJJJJZZZZZCCCCCCCCCNNYYLYZMAQQQQQQQQQQQQQBBBYYYTTQQMMMMNNNNNQQQQQQYQQQQKKKK
|
|
||||||
OOOOOOUUUUUJJJJJCJJCCCCKKKKPPJJJJJJJJJOOOOOOOOOOOOOLLLLLLLLLLJJJJJJJJJZZZCZCCCCCCCCCYNYYYYMMMMQMLQQQQQQQQQBBYYYYYQQQQQMMMNNNNQQQQQQQQQQQKKKK
|
|
||||||
OOOOOUUUUUUUUCCCCCCCCCKKKKKKKKJJJJJJJOOOOOOOOOOOOOLLLLLLLLLLLJJJJJJJZZZAZCCCCCCCCCCCYYYGGMMMMMMMMQMQQZQQQBBYYYYYYYQQQQMMMMMMNQQQQQQQQQQQKKKK
|
|
||||||
OOOOUUUUUUUUUCCCCCCCCCCKKKKNKKMJJJJOJJOOOOOOOOOOOOOLNLLLLLLLTJJJJJJZZPZAZCCCCCCCCCYYYYYYGGMMMMMMMMMZZZZZQYYYYYYQQQQQQQQQMMMMNQQQQQQQQQQQQQQQ
|
|
||||||
OOOOOUUUUUUCCCCCCCCCCCCKKKKKKKJJJJOOOOOOOOOOOOOOOOOOOULLLLLLLJJJJJJZZPAAZCCCCCYYCYYYYYYYGGMMMMMMMMMZZZZZVVVVVYYQQQQQQQPPMOOMQQQQQQQQQQQQQBBB
|
|
||||||
OOOOUUUUUUUUCCCCCCCCCCKKKKKKKKKKJJJCOOOOOOOOOOOOOOOOUUULLLLLJJJJJJJAAAAAZCCCCCCYYYYYYYYYYGGMMMMMMMMZZZZZVVVVVZZQQQQQPPPPOOOOQQQQQQQQQQQQQBBB
|
|
||||||
OOOOUOUUUUUUCCCCCCCCCKKKKKKKKKJJJJJPYPOOOOOOOOOOOOOUUUUUUVJJJJLLLLLLLLLLACCCCCCYYYYYYYYYYGMMMMMMMMZZZSZZZVVVZZZQQQQPPPPPOQQQQQQQQQQQQQQQEEEB
|
|
||||||
OOOOOOUUUUUCCCCCCCCCCKKKKKKKKKLLFJPPPPPOOOOOOOOOOPOUUVVVVVOOJJLLLLLLLLLLAACCCYYYYYYYYYYYGGMMMMMMMZZZZZZZZZVZZZZQQQPPPPPPOOQQQQQQZQQQQEEEEEBB
|
|
||||||
OOOOOOOUUUUUMCCCCCCCCKKKKKKKKKKLFAAPPPPOOOOOOOPPPPTVVVVVVVJJJJLLLLLLLLLLAAAAYYYYYYYYYYYYYYMMMMMMMZZZZZZZZZZZZZZZZQQPPPPPZOOQQQZZZQQQZEEEEEBB
|
|
||||||
OOOOOOUUUUUMMCYYCCCKKKKKKKKYKKKKFFPPPPPPPOOOOOPPPPTFTVVVVVVVJJLLLLLLLLLLAAUUYYYYYYYYYYYYYYMMNNMMMMZZZZZZZZZZZZZZZQQQPPPZZZZZZZZZZZZZZZEEEEEB
|
|
||||||
OOOOOOOUOOOOOOYZKKKKKKKKKKKYKYFFFFPPPPPPPPPGGTTPPPTTTVVVVVVVVVLLLLLLLLLLAUUUUYYYYYYYYYYYYNNNNMMMMZZZZZZZZZZZZZZZZZPPPPPPZIZZVZZZZZZZZZZZEEEB
|
|
||||||
OOOOOOOOOOOOOUZZKKKKKKKKKKYYYYYYFYYPPPPPPPPPGTTTTTTGTVVVVVVVVVLLLLLLLLLLAUUUYYYYYYYYYYYYRRRNNMMMLZZZZZZZZZZZIZZPCPPPPPPPZZZZZZZZZZZZZZZZBBBB
|
|
||||||
OOOOOOOOOOOOOOZZKKKKKKKKYYYYYYYYYYPPPPPPPPPPGTTTTTTTVVVVVVVVVVLLLLLLLLLLAUUUYYYYYYYYYYRRRRWWWMMWWKZZZZZZZZZZZZIPPPPPPPPPPZZZZZZZZZZZZZZZZBBB
|
|
||||||
OOOOOOOOOOOOOZZKKKKKKKGKKKZYYYYYYYPPPPPPPPPPTTTTTTTTVVVVVVVVVVLLLLLLLLLLAAUUYYYYYYYYYYRRRRWWWWWWWZZZZZZZZZZZGZZPPPPPPPPPPPPPMZZZZZZZZZZZBBBB
|
|
||||||
NOOOONNNOOOOZZZKKZKKKKKZKZZYYYYYYYYYPPPPPDDPTTTTTTTTTTTVVVVVVVLLLLLLLLLLAAEEYYYYYYRYYYRRWWWWWWWWZZZZZEEEZZZZZZIIPPPPPPPPPPPPPZZZZZZZZZZZBBBB
|
|
||||||
NNNNNNCOOOOOOOZZZZZZZZZZZZZZZZYYVVVYYYPPPTTTTTTTTTTTTTVVVVVVVVVVVEEEEAEEAAEEYYYYYYRRRYRWWRWWWWWWIZZZZEEEEEEOZIIIIIPPPPPPPPPPPWWZZZZZZZBZBBBB
|
|
||||||
NNNNNCCOOOOOOZZZZZZZZZZZZZZZZZVYVVYYYYYPPTTTTTTTTTTTTOOOOOVVVVVVVEEEEEEEEEEEEERRRRRRRRRRRRRWWWWWIIIZEEEEEEEEEIIIIIPPPPPPPPPPPWZZZZZZZZBBBBBB
|
|
||||||
NNNNNNNOOOOOZZZZZZZZZZZZZZZVBZVVVVYYYYYYYTTTTTTTTTTTTOOOOOVVVVVVVEEEEEEEEEEEEEERRRRRRRUUUURWWWWWIIIEEEEEEEIEIIIIPPPPPPPPPPPPZZZZZZZJWZBBBBBB
|
|
||||||
NNNNNNMOOOZZZZZZZZZZZZZZZZZVBBVVVVYYYYYYYTCCTTTTTTTTTOOOOKVMMVVVEEEEEEEEEEEEEEERRRRRRRUUURRRRWWIIIIIEEEEEEDIIIIIPPPPPPPPPPVZZZZZZZBJWZBBBBBB
|
|
||||||
NNNNNNNIIOZHZZZZZZZZZZZZZZZVVBBVVVVVYYYYYYCCTTTTTKKKOOOOMMMMMVVVEEEEEEEEEEEEEERRRRRURRUXUUURRWRIIIIIIEEEZDDIDIIPPPPPPPPPVVVCCCCBZZJJBBBBBBBB
|
|
||||||
NNNNNNPIIVVHHHHZZZZZZZZZVVVVOLLVVVVVYYYYJYCCCCTTTKKOOOOOMMMMMVVVVVVEEEEEEEEEERRRRRRUUUUUUUURRRRRRRIIIEEEEDDDDDDVPVVVVVVVVVCCCCCBIJJJJJJBBBBB
|
|
||||||
NNNNNNPIIHHHHHHHZZZZZZZZZVVVLLXVVVVVVYDYYGGCTTTKKKKKOOOMMMMMIVVVVVVEEEEEEEERERRRSRRRUUUUUUGURRRRHHIIIEEDDDDVADDVVVVVVVVVVVCCCCCBIBDJJJJBBBBB
|
|
||||||
NNNNDNPPPHHHHHHHZZZZZZZZZVVVVLLVVVVVVJGOYGGGTTTGKKKKOOOKKMMMXXXXVVVJEJEJJJERRRRRSRRRUUUUUUUUHRRRHIIIIIDDDDVVVDDVVVVVVVVVVVCCCCBBBBJJBBBBBBBB
|
|
||||||
NNNNNPPPPHHHHHHHZHZZZZZZZVVVVLLLVVVVVVGGGGGGGGGGGKGKKKKKXMTTXXXXXJJJJJJJJJDDRSSSSRUUUUUUUUUUHHHHHHIIIIDDDDVVVVDVVVVVVVVVVVCCCCCBBBBBBBBBBTBB
|
|
||||||
NNNNOPPPPHHHHHHHHHHHHZZZVVVVVVVVVVVVMMGTGGGGGGGGGGGKKXXXXXXXXXXXXXJJJJJJDJDDSSSSSRSUUUUUUUHUHHOHHHIIIIIDDDDVVVVVVVVVVVVVVVHCCHCBBBBBBBBTTTBB
|
|
||||||
NNNNOPPPHHHHHHHHHHHHHHHLLVVVVVVVVVVVMMMGGGGGGGGGGGGKKXXXXXXXXXXXXXXXJJJJDDDDESSSSSSUUUUUUUHHHHHHHHIEIIDDDDDVVVVVVVVVVVVVVHHCHHCBBBBBBBTTTTBB
|
|
||||||
NNNNOPOOOHHHHHHHHHHHHHHLVVVVVVVVVVVVMQQVGRGGGGKGGKKKKXXXXXXXXXXXXXXJJJJDDDDDSSSSSSSSUUUUUHHHHHHHHHHEIIKKKKKVVHVVVVVVVVVVHHHHHHHFBBBBBBBTTTTT
|
|
||||||
ONNNOOOOOOHHHHHHHHHHHHHLVVVVVVVVVVVVQQQQQQFQGGKKKKKKKXXXXXXXXXXXXXXXXJJJJDDDSSSSSSSSSUUUUUHHHHHHHHHIIIKKKKKKRRRVRVVVVVVHHHHHHHHFRBBBBBBTTTTT
|
|
||||||
OOOOOOOOHHHHHEHHHHHHHHHVVVVVVVVVVVVQQQQQQQQQQQQQKKKKXXXXXXXXXXXXXXJJJJJJJJJDSSSSSSSSSUUUUUUHHHHHHHHHOIKKKKKKRRRSRVVVVVVHHHHHHHHHRBRBBKKTTTTT
|
|
||||||
OOOOOOOOOHHHHHHHHHHHHHHHVVVVVVVVVVVQQQQQQQDDQXQXKKKKKXXXXXXXXXXXXXJJJJJJHHHHBSHSSSSSSUUUUUUUHHHHHHHOOOKKKKRRRRRRRRVVVHHHHHHHHHHHRRRUBKKTTTTT
|
|
||||||
OOOOOOOOHHHHHHHHHHHHHHHHHHHVVVVVVQVQQQQQQQQDQXXXXXKXKXXXXXXXJXXXXXXXJJJJHHHHHHHHSSSSSUUUUUUUHHHHOOOOOOKKKKRRRRRRRRRVVHHHHHHHHHHRRRRUUTTTRTTT
|
|
||||||
OOOOOOOOHHHHHHHHHHHHHHHHHHHVVNVVVQQQQQQQQQQQQXXXXXXXXXXXXXXXJXXXXJJJMMJJHHHHHHHHHHSUUUUUUUUUHHHHHDDDODKKRRRRRRRRRRRRHHHHHHHHHHHRRRRRRRRRRTTT
|
|
||||||
OOOOOOOOHHHHXHHHHHGGHHHHHHHHHHQQQQQQQQQQQQQQQQXXXXXXXXXXXXJJJXXXXJJMMMJJJHHHHHHHHHHHHUUUUUUHHHHHHDDDDDKKRRRRRRRRRRRRRHHHHHHHHHHHRRRRRRRRRRTT
|
|
||||||
OOOOOOOOOOOHXHGGGGGGHHHHHHHHHQQQQQQQQQQQQQQHHQXXXXXXXXXXXJJJJJJJJJJMMMMJHHHHHHHHHHHHUUUUUUHHHHHHHHDDKKKRRRRRRRRRRRRRHHHHHHTTHHHRRRRRRRRRRRTT
|
|
||||||
OOOOOOOOOOOOXGGGGGGGHHHHHHHHHHQQQQQQQQQQQQQHHQXXXXXXXXXXXJJJJJJJJJJMMMJJJJJHHHHHHHHHHHHUUUUDDDDDDDDDDDKRRRRRRRRRRRRRRHTTHTTTHHDRRRRRRRRRRRRT
|
|
||||||
OOOOOOOOOOOCXXGGGGGGHHHHHHHHHHQQQQQQGQQQQQQHHHHXXXXXXHXXJJJJJJJJJJMMMMMYYYYYHHHHHHHFHHHUUUDDDDDDDDDDDDKRRRRRRRRRRRRRRRTTTTTHHRDRRRRRRRRRRRRT
|
|
||||||
OOOOOOOOCOCCCCIGGGGGHHHHHHHHHHHQGQQQGGGGQQQHHHHXXXXXXHHXJJJJJJJJJMMMMMMYYYYYHHHHHHFFFFUUUUUUFDDDDDOOODDDRRRRRRRRRRRRRRTTTTTRRDDRRRRRRRRRRRTT
|
|
||||||
OOOOOOOOCCCCCCCGGGGJJHHHHHHHHHGGGGGGGGSGQQQHHHXXXXXXHHHXJJJJJRJJMMMMMMMMYYYYHHHFFFFFFFFUUUUBFDDOODOOODDDRRRRRRRRRRGGGTTTTTTDDDRRRRRRRRRRRRRT
|
|
||||||
OOOOOOOOCCCCCCCGGGGJJJHHHHHHHHYGGGGGGGGGQQHHHHHXHHHHHHHXYMMJJJJJMMMMMMMMYYYYYHHFFFFFFFFFFFFFFOOOOOOOOOODDRRRRRRRGGGGGGGTTTTWDDDRRRRRRRRRRRRR
|
|
||||||
OOOOOOOOCCCCCCCGGGGJJHHHHHHGGGGGGGGGGGGGHHHHHHHHHHHHHMMMMMMKJJJJJMMMMMMMYYYYTHHFFFNFFFFFFFFFFUUUOOOOOODDDDRRRRRGGGGGGGGGGGJDDDXJJRRRRRRRRRRR
|
|
||||||
OOOOOOGOCCCCJJCJJJGJJJHHHHHZGGGGGGGGGGGGGHHHHHHHHHHHHHMMMMMJJMJMMMMMMMMYYTTYTTXXFNNNFFFFFFCFUUUUUUOOOOODDDRRRRRRGGGGGGGGJJJJJJJJRRRRRRRRRRRR
|
|
||||||
OOOOOOGCCCCJJJJJJJJJJJHHHHHGGGGGGGGGGGGGGGHHHHHHHHHHHHMMMGMMMMMMMMMMMMMTTTTTTTXXFNNFFCFFFHHFFUUUUUOOOOODDRRRRRRRRGGGVVJJJJJJJJJJJJJRRRRRRRRR
|
|
||||||
OOOOOOGCCJJJJJJJJJJJJJJHHJHGGGGGGGGGGGGGGGHHHHHHHHHHHHMMMMMMMMMMMMMMMMMTTTTTTTXXFNNFFCFFHHHBFUUUUUOOOOOODRRRRRARGGVVVYJJJJJJJJJFJJRRRRRRRRRR
|
|
@ -1,10 +0,0 @@
|
|||||||
RRRRIICCFF
|
|
||||||
RRRRIICCCF
|
|
||||||
VVRRRCCFFF
|
|
||||||
VVRCCCJFFF
|
|
||||||
VVVVCJJCFE
|
|
||||||
VVIVCCJJEE
|
|
||||||
VVIIICJJEE
|
|
||||||
MIIIIIJJEE
|
|
||||||
MIIISIJEEE
|
|
||||||
MMMISSJEEE
|
|
@ -1,4 +0,0 @@
|
|||||||
AAAA
|
|
||||||
BBCD
|
|
||||||
BBCC
|
|
||||||
EEEC
|
|
@ -1,171 +0,0 @@
|
|||||||
package day_12
|
|
||||||
|
|
||||||
import "strings"
|
|
||||||
|
|
||||||
const Empty = '.'
|
|
||||||
|
|
||||||
type Map [][]rune
|
|
||||||
|
|
||||||
type Point struct {
|
|
||||||
x, y int
|
|
||||||
}
|
|
||||||
|
|
||||||
type Visited map[Point]bool
|
|
||||||
|
|
||||||
func (m Map) InMap(x, y int) bool {
|
|
||||||
return x >= 0 && x < len(m[0]) && y >= 0 && y < len(m)
|
|
||||||
}
|
|
||||||
|
|
||||||
func (m Map) At(x, y int) rune {
|
|
||||||
if m.InMap(x, y) {
|
|
||||||
return m[y][x]
|
|
||||||
}
|
|
||||||
return Empty
|
|
||||||
}
|
|
||||||
|
|
||||||
func (v Visited) At(x, y int) bool {
|
|
||||||
_, visited := v[Point{x, y}]
|
|
||||||
return visited
|
|
||||||
}
|
|
||||||
|
|
||||||
// task:https://adventofcode.com/2024/day/12
|
|
||||||
func SolveBasic(input string) int {
|
|
||||||
farmMap := loadMap(input)
|
|
||||||
visited := Visited{}
|
|
||||||
|
|
||||||
sum := 0
|
|
||||||
|
|
||||||
for y, row := range farmMap {
|
|
||||||
for x, value := range row {
|
|
||||||
p := Point{x, y}
|
|
||||||
field := Visited{}
|
|
||||||
if _, present := visited[p]; !present {
|
|
||||||
visit(farmMap, field, x, y, value)
|
|
||||||
area := len(field)
|
|
||||||
parameter := 0
|
|
||||||
for point := range field {
|
|
||||||
// mark as visited to not visit it more than once
|
|
||||||
visited[point] = true
|
|
||||||
|
|
||||||
if _, present := field[Point{point.x - 1, point.y}]; !present {
|
|
||||||
parameter++
|
|
||||||
}
|
|
||||||
if _, present := field[Point{point.x + 1, point.y}]; !present {
|
|
||||||
parameter++
|
|
||||||
}
|
|
||||||
if _, present := field[Point{point.x, point.y - 1}]; !present {
|
|
||||||
parameter++
|
|
||||||
}
|
|
||||||
if _, present := field[Point{point.x, point.y + 1}]; !present {
|
|
||||||
parameter++
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
sum += area * parameter
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return sum
|
|
||||||
}
|
|
||||||
|
|
||||||
// task:https://adventofcode.com/2024/day/12#part2
|
|
||||||
func SolveComplex(input string) int {
|
|
||||||
farmMap := loadMap(input)
|
|
||||||
visited := Visited{}
|
|
||||||
|
|
||||||
sum := 0
|
|
||||||
|
|
||||||
for y, row := range farmMap {
|
|
||||||
for x, value := range row {
|
|
||||||
p := Point{x, y}
|
|
||||||
field := Visited{}
|
|
||||||
if _, present := visited[p]; !present {
|
|
||||||
visit(farmMap, field, x, y, value)
|
|
||||||
area := len(field)
|
|
||||||
parameter := countEdges(farmMap, field)
|
|
||||||
|
|
||||||
for point := range field {
|
|
||||||
// mark as visited to not visit it more than once
|
|
||||||
visited[point] = true
|
|
||||||
}
|
|
||||||
sum += area * parameter
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return sum
|
|
||||||
}
|
|
||||||
|
|
||||||
func countEdges(farmMap Map, field Visited) int {
|
|
||||||
borders := map[BorderPoint]bool{}
|
|
||||||
edges := 0
|
|
||||||
|
|
||||||
for y, row := range farmMap {
|
|
||||||
for x := range row {
|
|
||||||
if field.At(x, y) {
|
|
||||||
if !field.At(x-1, y) {
|
|
||||||
if !borders[BorderPoint{x, y - 1, LEFT}] {
|
|
||||||
edges++
|
|
||||||
}
|
|
||||||
borders[BorderPoint{x, y, LEFT}] = true
|
|
||||||
}
|
|
||||||
if !field.At(x, y-1) {
|
|
||||||
if !borders[BorderPoint{x - 1, y, TOP}] {
|
|
||||||
edges++
|
|
||||||
}
|
|
||||||
borders[BorderPoint{x, y, TOP}] = true
|
|
||||||
}
|
|
||||||
if !field.At(x, y+1) {
|
|
||||||
if !borders[BorderPoint{x - 1, y, BOTTOM}] {
|
|
||||||
edges++
|
|
||||||
}
|
|
||||||
borders[BorderPoint{x, y, BOTTOM}] = true
|
|
||||||
}
|
|
||||||
if !field.At(x+1, y) {
|
|
||||||
if !borders[BorderPoint{x, y - 1, RIGHT}] {
|
|
||||||
edges++
|
|
||||||
}
|
|
||||||
borders[BorderPoint{x, y, RIGHT}] = true
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return edges
|
|
||||||
}
|
|
||||||
|
|
||||||
type Direction int
|
|
||||||
|
|
||||||
const (
|
|
||||||
LEFT Direction = iota
|
|
||||||
TOP Direction = iota
|
|
||||||
RIGHT Direction = iota
|
|
||||||
BOTTOM Direction = iota
|
|
||||||
)
|
|
||||||
|
|
||||||
type BorderPoint struct {
|
|
||||||
x, y int
|
|
||||||
direction Direction
|
|
||||||
}
|
|
||||||
|
|
||||||
func visit(farmMap Map, field Visited, x int, y int, value rune) {
|
|
||||||
if _, visited := field[Point{x, y}]; visited {
|
|
||||||
return
|
|
||||||
}
|
|
||||||
if farmMap.At(x, y) == value {
|
|
||||||
field[Point{x, y}] = true
|
|
||||||
|
|
||||||
visit(farmMap, field, x-1, y, value)
|
|
||||||
visit(farmMap, field, x+1, y, value)
|
|
||||||
visit(farmMap, field, x, y-1, value)
|
|
||||||
visit(farmMap, field, x, y+1, value)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func loadMap(input string) Map {
|
|
||||||
input = strings.ReplaceAll(input, "\r", "")
|
|
||||||
topographicMap := Map{}
|
|
||||||
for _, line := range strings.Split(input, "\n") {
|
|
||||||
topographicMap = append(topographicMap, []rune(line))
|
|
||||||
}
|
|
||||||
return topographicMap
|
|
||||||
}
|
|
@ -1,34 +0,0 @@
|
|||||||
package day_12_test
|
|
||||||
|
|
||||||
import (
|
|
||||||
"advent_of_code_2024/day_12"
|
|
||||||
_ "embed"
|
|
||||||
"testing"
|
|
||||||
)
|
|
||||||
|
|
||||||
//go:embed example_data.txt
|
|
||||||
var ExampleData string
|
|
||||||
|
|
||||||
//go:embed example_data_01.txt
|
|
||||||
var ExampleData01 string
|
|
||||||
|
|
||||||
func TestBasicSolutionExample(t *testing.T) {
|
|
||||||
result := day_12.SolveBasic(ExampleData)
|
|
||||||
if result != 1930 {
|
|
||||||
t.Fatalf("Expected 1930 received %d", result)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestComplexSolutionExample(t *testing.T) {
|
|
||||||
result := day_12.SolveComplex(ExampleData)
|
|
||||||
if result != 1206 {
|
|
||||||
t.Fatalf("Expected 1206 received %d", result)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
func TestComplexSolutionExample01(t *testing.T) {
|
|
||||||
result := day_12.SolveComplex(ExampleData01)
|
|
||||||
if result != 80 {
|
|
||||||
t.Fatalf("Expected 80 received %d", result)
|
|
||||||
}
|
|
||||||
}
|
|
5
main.go
5
main.go
@ -12,7 +12,6 @@ import (
|
|||||||
"advent_of_code_2024/day_09"
|
"advent_of_code_2024/day_09"
|
||||||
"advent_of_code_2024/day_10"
|
"advent_of_code_2024/day_10"
|
||||||
"advent_of_code_2024/day_11"
|
"advent_of_code_2024/day_11"
|
||||||
"advent_of_code_2024/day_12"
|
|
||||||
_ "embed"
|
_ "embed"
|
||||||
"fmt"
|
"fmt"
|
||||||
"os"
|
"os"
|
||||||
@ -66,10 +65,6 @@ func main() {
|
|||||||
fmt.Printf("Day 11. Basic: %d\n", day_11.SolveBasic(Day11Data)) //
|
fmt.Printf("Day 11. Basic: %d\n", day_11.SolveBasic(Day11Data)) //
|
||||||
case "11-complex":
|
case "11-complex":
|
||||||
fmt.Printf("Day 11. Complex: %d\n", day_11.SolveComplex(Day11Data)) //
|
fmt.Printf("Day 11. Complex: %d\n", day_11.SolveComplex(Day11Data)) //
|
||||||
case "12-basic":
|
|
||||||
fmt.Printf("Day 12. Basic: %d\n", day_12.SolveBasic(Day12Data)) //
|
|
||||||
case "12-complex":
|
|
||||||
fmt.Printf("Day 12. Complex: %d\n", day_12.SolveComplex(Day12Data)) //
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user