aoc

My solutions for the Advent of Code
git clone https://git.tronto.net/aoc
Download | Log | Files | Refs | README

commit d3341a010cf05403d0fc1c3899270ea56976acec
parent 8cba5f39bbb00b20635b31f852ba132ead4aef53
Author: Sebastiano Tronto <sebastiano@tronto.net>
Date:   Thu, 19 Dec 2024 06:32:23 +0100

Day 19 2024

Diffstat:
A2024/19/.day19b.cpp.swp | 0
A2024/19/Makefile | 24++++++++++++++++++++++++
A2024/19/day19a.cpp | 54++++++++++++++++++++++++++++++++++++++++++++++++++++++
A2024/19/day19b.cpp | 54++++++++++++++++++++++++++++++++++++++++++++++++++++++
A2024/19/input | 402+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
A2024/19/test | 10++++++++++
6 files changed, 544 insertions(+), 0 deletions(-)

diff --git a/2024/19/.day19b.cpp.swp b/2024/19/.day19b.cpp.swp Binary files differ. diff --git a/2024/19/Makefile b/2024/19/Makefile @@ -0,0 +1,24 @@ +CC=g++ -std=c++20 -g -Wall + +a: + ${CC} -o a.out day19a.cpp + +b: + ${CC} -o b.out day19b.cpp + +clean: + rm -f a b + +atest: a + ./a.out + +btest: b + ./b.out + +arun: a + ./a.out < input + +brun: b + ./b.out < input + +.PHONY: a b clean atest btest arun brun diff --git a/2024/19/day19a.cpp b/2024/19/day19a.cpp @@ -0,0 +1,54 @@ +#include <algorithm> +#include <cstdint> +#include <iostream> +#include <map> +#include <queue> +#include <ranges> +#include <set> +#include <sstream> +#include <string> +#include <string_view> +#include <vector> +using namespace std; + +vector<string> gettowels(const string& line) { + vector<string> ret; + int j = 0; + for (int i = 0; j != -1; i = j+2) { + j = line.find(",", i); + ret.push_back(line.substr(i, (j == -1 ? line.size() : j)-i)); + } + return ret; +} + +bool ispossible(const string& p, const vector<string>& towels, vector<int>& mem) { + if (p.size() == 0) + return true; + if (mem[p.size()] != -1) + return mem[p.size()]; + for (auto t : towels) { + if (t == p.substr(0, t.size())) + if((mem[p.size()] = ispossible(p.substr( + t.size(), p.size() - t.size()), towels, mem))) + return true; + } + return (mem[p.size()] = false); +} + +int main() { + string line; + getline(cin, line); + auto towels = gettowels(line); + getline(cin, line); + vector<string> patterns; + while (getline(cin, line)) + patterns.push_back(line); + vector<int> mem(1000); + int count = 0; + for (auto p : patterns) { + for (auto& m : mem) m = -1; + count += ispossible(p, towels, mem); + } + cout << count << endl; + return 0; +} diff --git a/2024/19/day19b.cpp b/2024/19/day19b.cpp @@ -0,0 +1,54 @@ +#include <algorithm> +#include <cstdint> +#include <iostream> +#include <map> +#include <queue> +#include <ranges> +#include <set> +#include <sstream> +#include <string> +#include <string_view> +#include <vector> +using namespace std; + +vector<string> gettowels(const string& line) { + vector<string> ret; + int j = 0; + for (int i = 0; j != -1; i = j+2) { + j = line.find(",", i); + ret.push_back(line.substr(i, (j == -1 ? line.size() : j)-i)); + } + return ret; +} + +int64_t countpossible(const string& p, const vector<string>& towels, vector<int64_t>& mem) { + if (p.size() == 0) + return 1; + if (mem[p.size()] != -1) + return mem[p.size()]; + int64_t ret = 0; + for (auto t : towels) { + if (t == p.substr(0, t.size())) + ret += countpossible(p.substr( + t.size(), p.size() - t.size()), towels, mem); + } + return (mem[p.size()] = ret); +} + +int main() { + string line; + getline(cin, line); + auto towels = gettowels(line); + getline(cin, line); + vector<string> patterns; + while (getline(cin, line)) + patterns.push_back(line); + vector<int64_t> mem(1000); + int64_t count = 0; + for (auto p : patterns) { + for (auto& m : mem) m = -1; + count += countpossible(p, towels, mem); + } + cout << count << endl; + return 0; +} diff --git a/2024/19/input b/2024/19/input @@ -0,0 +1,402 @@ +bgbuuw, brwbg, gbrw, uuugwrw, buurwrrg, gwbgw, wgrgb, rru, ubgu, uww, wubbg, bww, gruu, wurggb, rbwb, ruubb, urbbrrgb, ugg, brr, rbrrbrbb, bur, urwg, gwwu, rbwg, bgg, uguuuwu, ruuu, wwgwub, rbrg, grrgbrb, wbwbww, buruug, rrgg, gbgwwwrb, wgwwbg, wbggb, wbgrg, b, ubbuww, grw, ru, rgb, uuggwbr, rwwwrbu, rwrwwug, wubgw, gw, gwg, buwwb, uwubub, wgw, ggw, bru, bw, rwbbur, brbw, rgrwuwb, grr, gubrw, grgw, buw, uurg, uur, bbug, wbug, buug, gbrbu, u, bgr, brbbwrg, uwwbb, bwbbwr, bwru, wugwgg, rbbrug, bgbgu, wrbb, brbbwwb, gwbwgu, bub, gwbbbr, uuw, rbrrgw, wuug, bguuug, uurgwuu, uwb, bubg, urrb, grrg, wubr, rbgurww, ugw, wbub, urw, ggbwgg, rr, ggbbub, wbrr, rwrr, wub, gu, rgrub, wgwbub, gguu, rubbrg, wr, bggwb, uwwbggr, gwu, rwbb, wbwur, wuuur, rwg, bbrgb, guww, rurbgrr, ggb, bbwgggb, rur, wwuwu, gbb, grug, grugr, rbguwwwu, ggrrr, wbr, bbg, bwrwwu, wrb, guruwu, uuru, gbw, wwrwggug, gwww, bbw, uwbrg, wuwb, bbgb, wrr, rg, rgr, buubgbrr, rbuu, wbwww, guuwr, gbbg, gurgr, wrgwuu, gurwbb, bgrbw, rbw, rbwwww, rgrb, gub, guw, wgg, gbrbbu, bb, rggg, wb, rurrbrrw, wwubg, gbwgbu, uwuurr, wgbgu, bg, buwu, ugugrw, wwrg, wgurgbu, rrggwg, ugrrg, wrbu, ugrbubgg, gbg, brruwuu, ruuw, wgb, wgubw, urb, wwb, bwrwug, brbb, gbbbwr, grwbbr, wbwgbu, ugbwb, rrgu, ruub, rrrb, wug, rwu, rubbbwu, bbwwgu, wgbrr, guwbr, ggr, rbrw, ggu, uurw, ub, uguru, uuu, bgugu, uru, gr, gur, gwb, wur, grwwugbr, gwrugu, rgwbr, bbgwu, rwbbbrg, bbuu, gg, ruw, ubgb, bubrbb, ruwwr, wwg, gbr, bu, rgg, wwr, wugbrwu, uu, brgwg, bbrbu, ubgruu, uubu, wgr, bbru, uwurr, wubur, bwgu, rbuw, gbwb, rug, ugrguwrg, wwrrg, bwu, grgub, uwu, rgguwbg, gwrbg, urbbbr, wbu, wubb, rww, wuww, gwr, rwrwwg, bbr, ugwuu, wurr, guuwurgb, urugb, bwrbu, ruwbrbu, bwurg, guu, gwbw, wrrbrrw, wuugw, gbwr, ggurg, ubu, uug, gugu, rguuwg, gug, brg, rgu, wrgggu, urruu, uwbgb, wbbbwg, rbbug, wgwg, bbrg, bbggrwb, brwr, wbgrwur, rwwugbu, uwbwgbw, buwg, ubr, guguub, rrubr, rrr, wgrwr, rgruu, rrwr, uggw, wwwrw, uw, ubggwg, bgur, gbu, rrw, rbgrgbw, guugrrr, gugw, uub, bwb, wbrrbr, ugu, rb, bbu, guuggbub, uwr, bgw, rwuruu, wbru, gbrrr, uguu, wbrw, ugbb, wuggr, wbb, ugrww, grg, bgb, rugguub, ug, urg, gwwur, ugwb, gbguu, grbgwbgu, brgggw, gwrru, urur, ruu, bbbwurw, w, grb, brb, rrb, ruur, rgw, ggwg, rruwwur, ugr, wuwwrwg, gwrr, bbgru, ubb, wbbbb, wuu, rrg, wggb, uwww, bug, rrww, ggbguru, wuw, gru, ggrwr, wrbbgru, uwrwb, ugrw, rrgwr, brwb, gww, wubw, wggr, wrww, bbwrr, uwg, wgru, ur, wwu, bugwru, gugguw, wbw, rrwrgr, rurbbu, rwb, bbb, wrgugr, buu, bugrru, rw, r, bwwr, www, gbgwbu, brggbu, ww, gwrrb, gwgw, rwwbgbr, bwr, rggwb, wwrrrr, uwwrb, rbb, bgbrwbbw, rrgr, rbr, bgbbgbb, wrbrb, rubr, guwr, urr, wrw, wurubguw, rwr, ubg, uwwrrgrb, uugwwwgu, grrbg, wru, ugb, br, bgurw, bggb, rrwruw, bwrwu, wwbr, bbww, bggr, rbg, wgu, bruu, gwbugu, gb, rrgrgbb, wrg, grbwwb, bbgwgbru, bgu, bubb, wrgru, rrub, ggwgu, wuwubub, brwrw, ubw, wbg, gugubbu, ugwwurgr, gggb, wgwrggr + +wuubgwbggwbgwugwubgwrgwuwrbwwbbugrruwrbwuubgwgugubbuwg +ubugubbgggbwubwwuguguuguugrbuuuugrbwuggbbgrwrb +wrubbuwurwruruwrgbbrrbugrwruuwugbbwgwwrbwbwwugrrurugwuwubwg +burgrgrrburrggrwubrrurwgbgwwwbrrbggbruwbbgbbruwuwbw +gwguwgururuwwrgrbwgrwuwurgrwugbuguwubwbbggurruwwgwrgbwbwg +uwbwwrrwwwwbwgrggrurwuggwwbwubbbgwbbwwwuwguurwbrguwgbubrbr +uuugrgrrrgwugbrrggbbgburbgwuubbbwuuuurwbruuuwwrg +wbubwururruguwwurbubgwbgbwwuwuuwrubwbbwrgwgwrggr +gbbwbruuubbrwuwburggrrgrbrrbrbbwbbwubruwbuuwuwbuwwwgrrbbwg +uwuuwurgbwgurrwgrrrurbwwwrbuburrgggbwrbgrububgguugggbbwuw +uwbrrwgwugrgrbggbgurbbwuuwwrrwugbwgwrrrrruu +rwgrbgwurwbuuwwrwggbwgruggwgrrgbgwuurwwbub +bbubuugbwbwwgwbrrwgwuwugbwbrbbrwwrbrgggruw +bbwwugbbubwbbgwrwbburrgwbrwwuguubwrrguwrgrugrgurgrrbru +gguggwrwggwrbburubuubuwwwruwbgwbbuuuuurbbrurb +buwgbrbrwwgwrgbgrwbruugwbrrwbrurrgubbwrrggrwubgwbrrw +rurwwuwububrguwgwgbrwgggwggwbgrurggrbbruruurwuwwb +rggwwwurbgwbggubbuwrwubgwwbbbbggwwgguwrguwuu +wwuuubbuwggguurrrwgggrrbwwwwurwgwugwbrwurgubbgwuuuwub +gguuwgrgrugrrubuguwwuruwbbwgbwugruwggbbugwwgggw +bgwbgbrrrgrruurbrruwwgbrrrbgwgguubbrbgwwrburbbwubggr +rbwbwbgrbuwwbrwwurbubggrwwugwgbwrwwgwwrrbgbwbbgwug +uwgbbwrbgwrwrbubuuugbgrurbwwwwbgwbrgrwuuguu +gbgbwuwwrrrbwbuguwguwrrbuuwurugrwuwrruurubwg +rgrguugwbrguuggwruwwrrbrgrgurbrbwguruwubgbwuubu +wrwwggbbgrbuwburubgrgbbbwgbgwburubbwgubwrbbwgbg +brgrbburuuuubugwwbrrrguuurgbuwbgwwrbrbbrbubwrbrrgrgrru +grgrwbuwrbbrwrbubbrgugwuwruguuugwbrrgwburgrb +rgrbubbuguubbbwgbrwgrggubwwwwgbubrbubgbgbwwuuggwr +gggwugbrbgrgbwrugbrwrburbgbwbwwubgbburbrbugurwbbwg +gguruwwuubggrrubwwuurrgbgbgbbuubwbbbgwrggwbrgugurwgrubu +urbgbuwbrwgrguwguwbuggwrrgwrgwwgbrbwruuubbwugg +rrurbwruwwugbbwbrurbrwrguuguwugrbrbruurbuugggurruggwgr +ggrrgrwwguugbgwwwrbgwrbrruurrubrgwggbrwbgbug +urrubbuwurwwwuuuuuugwggwwrgurrrwbuwgggurbug +wrbgwggrbuubwbbgubbwugbggbuwuurubbgwuwbgwgurwwwrwr +wggburuuwuubbbuwbgrgwuuubggbrgbuwwgguwrbwguwuuuwrur +rbguuubwbbuubuggwbrurgbbwuuwwgwugwwrurguguw +burrbugwbgwubbguwbbbbgruwbubuwrgrggbwguwg +bubbrbwgwgrurrbrrwggruggrguurrwrgwrbgwbbgwgu +rrwbbwubruuwrbbwubgrbuwurwrwugbrbbruurwbwurg +brrbwguurgbrbwrrurbgwwgbrgggwwwgrgggrwubgubbbrgwuwuugwrgbwg +wbbugbwrbuubugwbwubggbuggrgurbuuuurbbrrgbbwg +rwburbbwwbwurgwubbgbgbggwbgwugurggbbwgggwub +wgwbrrrubwgwwwwwbwugbgggwubguwggrggruwrubuwbbb +wgurbbguugbbrwrwuwwbbbrguggwurgruruggbuggurubwrgu +rrgwwwrgrgwuuuwrgubgrgwugrbuwwbbwurwubrurbuugwbubrgwrbuwg +brgrbggrgurrgbwurwrwgbggwrrrwwrbwruuuwrbbrwbwu +wguururrrwrrbbrrrugrwuuruubrbgrgbwurwubrubbuurbb +wrbrugrgrrubguurbgwwrrrgbrgwbwuurguurwgurrrruu +grwuwggbwrubgbwwguwrwbbgruwbwwuuwggbwgurwgbggbwgbwwr +uwugurwrwgrbbuwgrgbwuwbgwgugwbggugruubuwgwbwr +bwwguggwuuwuwuwuwubbrrgbbwbguwwrbuggbgrrgwwwuuwrgggurwbbu +grbbuwrrrwwuwuwrwgguruubbgwgwbbbuuuggburguurrbbubwbgrguuwb +gwbuuuuugrubgguuuuwbgrbbgbbrbwrgbgbwwgwurugbugrwrbrwbwbw +rrwbwgbwgbrwgrubwuruurbgugrrwwgwgwuwrgubggubruwubuwgugbbw +ugburbuuuubwwwwrwrbruwrbuugubrbrubwwbgbuubu +bwwrbwwgwgrwrwuurrubggbbrwrbwwuwwurugbrwrbbw +gbubgrwbugwguwgrrgbruuguggruburbwgggrbgrbgrbwguwrrgrrbu +wrbbwwuugbwrgruubbrbwubuugugbrurrwwbbburruuwubwrgrrubwgw +gbwrbbgbugugggruwgrgbgwbgrbrrurruuwwrugwwbgwgwrbwb +urggbugwugbrrwugrguwrgrwbbrgwwggrbubggbuwugrb +wrugbbgggwrrbbbuuurwgbwburrrwrrrwbrbbgwwrwuu +uuwgwrbgrwguwggbbubugwugurbwrwbbgugbugurbggubwruguwrbbbgu +bwugbbwbbguggwrugwgwrbwgwuuwbwwrgrurubwwgguwgrrburrgrubbg +wbwrbruwgbgguwubgubwgbgwugwwwbuwubuurwrrggbwg +rwbrbbrwbrrrugrgbgrgbrrrbggrbgbgrwrrrbgubwrgrwrrgwbbb +bwgggbuguggugbwrugbrbbgguwrguuwgrugugbggwurrb +bggrbgburguuurbbrrrrwguuuguwgguurrwwwuwrggwrrrubr +ubugbrwgbbgbggubbguubbuuwugbbgwwrbrbgbgrwuruububbg +gbrwuururrgrbgwbgugggbbugruuurwbrwugwgurwuugwbwg +rgrwwgrwguugggbguruuwrugwrwuwwwgbbruguruburwbrwgurbu +uurgbuwubgwwrbbuwuwggbgruubbrgbgbggwwwbrbrugrbrgrgrbww +brrbwbubrgbwubwbrbgbbwggrrrwwbguwuuwrggrrwbggugwgbug +bugurrbwbgbrbubbbrubbrgwbggwgurubbubwrggrbubbgg +ugwggggbwrbgwubggguuwgrubwrwbwurrrbuuwurgbbbbrbgb +rurbwuwggrwbwrrwrrbgrgbugbwgbrrwuwguruuurbgurbgwrb +bubrwrbwuburguwwgbbggururgurwrrgrwwurrbbbguwugwuwwwurr +bbubgggwbrbwugwbuwrwbwugurrgwbwbwwgrbgubggrrugrbru +wgbguggrgrugbwbrwrrrubbbbgwurbubbbwurwwgwgbru +urbwrugbgrugbrbbrrbwwwrwbbuugbrurwuurgurguuubbbwrbgburubw +wrwbwbrrbugubrwbwrggurwrrwugrruwbwrwuwgrburgguwbw +bruggwgwubwrbrrggwbrrbbrrbwrbwgbrrwggbbbuuuwwbbg +gbbrgwggbbrbguuburwrwbgbgrwwwwrwrgbrwwwbbbrrwgbbbbuurgrw +grbubbbrwbwbwrgrugrrrgurgrbugbbbbrwbwrurbuwwbuwrwwubgbwrg +guuuugrrrgrbrbuubugubwuugggugguuuubugggwbuuubwggbb +bbrgbugubgrgbbbgbrwbbwbwbururuwwgrbwwrwgubbuu +wgwrwuwugbbrwggbwuwwgwwbgbbwwrwgruruubuugwugrbbbgr +ruuwugwwwurwguruururbrurwbubuguuuggwuwwwwuguggrug +ugbwwrbuwbguugrbgwbguruugbbwwggrugbgguwbgbrbu +grwuguuwgggrurrbrrwgwbwrbubrrbwgrwbgwbbbuwggbbwg +uuwuwwwwwrgwrbubruwbbbwurrrubuggugbrwbrrgwrgr +wruwgugbuuwwrbwbwwbuwrrbrwgwburwgrwwwubwbgbwrbgbggrgur +buuubbwwggubrwubgbbugbggwuurbwrgrggbgruwwwbrugwub +rwbguuruuubuuurbrubbrubbrrrgbrbwwgbbggwbwuwbubbrurbbrrgbu +ugbrwgguurguwbgbuuubbugwubbrrbgbrrubrubugbubrrrwbrrubgg +guwugrgrrguubuugbggwgbuwuugwurubuubguwrburrbgbwwguwurrwgbbwg +wrrrurrurgbggguurbwrrubbbwurrbwbbbgrrbururrbrbbr +wubuwwurugbbgbrwrgwurbwbrgggwwgugugruurggbwubwuuwru +ruwgwubwggwrgwwubuwuuuuggbgrgruuuuwguggwrr +buggwrwwgrrurruwbrbwgrrubwbbwuuwggrurubbwrrwbggggrrgrbw +wrgrburbbggbguuggbubbgrwbubbwwgrrbrbuuruuuwr +uwuuwbgubrwwgruwgbgugrbuwuggrurrbwubbwbrbrru +wwbbbgbbwrwbwbbwrbwrgbgurrurgbwwrbgrwgbgurgbubrgwbgbbugbur +urbrgrbbuwuubuugwubrbguburwgbgrrgwgwgbwgwrgbggwbw +wbgbuuwggurrrrbwbbbggbuugbwrwrruwwuwwbbgrwruuugwwwguwbbubwg +rruurgbbbrwbugrwuuguguwggwrwrgwuuubuwbbbrurubbw +bgugrbrbggrrrrgbwwbguuruwwrrgrbwurugubwwwgrrrbuwb +uuwuururgrgrubuwubruugwbbbuuwurrwruubrwrwubrbbwrrbgbgur +rwugwgbbbbwrbgggrwbgbugubbgrububwgwrbrbuwgguggurbrurwgrb +ggbuubgbrrrbrbgwgrrgwwwwbwwubwwwgbwwrwggwrbubbgbwg +rbugurrbrrrburwbwwgwbrgburwwwgwubuwgggrbrbwbwwrbrbwur +uwrguuuguggbrwwubrgruwrbrggwuwwbrrrbbwgrrrbrbuubgbuugwr +rrgbbgubbrwwbbbwwgugwgrguuuwguurbwgugburwrwgwwwg +bburrwrurwbbwurbguuurrwurrwbbggwurgrbbrgggbbuwwbrwrruubgbwg +rrubbuwruwwururwbwuwwwrwrwwubugwgrggrrubwgbwuwwbwgbbgb +urbgrwgbubbwwgrggrugububuggwurubguwurwwbwg +brwrrrwubuuugwguwubggwuwgwwbgwgurubgwbrwbuw +gwruurbugrbwggbrbbwwgugwrwbrgrbggwurrwwwbgwbww +bbbrrwggrrwubrgbrrgrwwgbbbbbgbuwwgwugrrrrwwguwbgw +bbuugwguguwurrbgbrbgwrwrbrrguuurrwubuwgurgwrwgr +bwgbgggbgrbgbrwubbbwubwwrgggbwrgbrwwguruggrwwbugrwru +wubbbrgbwuwburrrgrubbgwrrugrgrgrgwbwrggggwuurbwggrgwggg +bubrrugguwruugwuwuugbwgwbwgbwrrbugbguwwgurgw +wwgbggrggbwuuuwugbgubgwbrugrwurwwbbgwbwg +grbbwwuwgbbgwuurubgggugbugruguuwrwbguwguwuggbgubug +wgruwruurbwubrwubgrwbbuwgbrugbbrwrgwrbgwbggggwurugburuwr +urrwbgguwrbgugwbrrbgbrbrbrruuburugwgugrgubrgrwgurbbwg +gbbwrubuwubwubuurrbbggbrbbwbwrbuuwubwuwubuwguruwrurbw +rbrugbuubrbrurwuuwurbrburugbgbwuruwurwbururguuwruu +ruurwrguwgbguwrwggbrubwwbrubgwgubgrggbrguuwrrurrrgrbubr +uwuuugbgwwwrbguugrgugrwubrrgrbuwggrwbrrrrrgrgurrbrbbwg +ruggrwrwwrbubgrwrwrgurrbgrgbbgrrgwugubrbbgrrbuuwwrwurrrb +gurgrbwbgwwgbbgrbrbubuuwrwuubuubgwbwbrbrbbguuuwgwugrwbuug +rwgbwurwwgubrgggrgwrgwbwrwrguubrggwwuurbgr +brrrbburgbrbugwggrubgbgwrbugwuruubgbbuggrbgubrrubgw +gugrgrurwbwurrrburwbwruggubrbururwwgwrrrrrgburugwugb +ugbuggbrbguugbwrgwrwbwbwuggrgwrbgrbwwgwuwbrgwgbbrgbgrbw +rrwggwgwuubuwrgrubggrgwbbrbgbgwwwbgbwrguubguurugurgrbb +bwggwgrgbrrrguuurugrwgubuuruurwuwwbwwrwwgbbrrbwbwbbrrbbguu +ubrwrrgrrgwrwugwwurgrubrwbrwgguurgwbwwwrrggbrbbguuuuugugwbwg +bbwbgugrurburwugrrwbwguugrwurrbbbgwbrugbgbrwrgb +wgbuwgwwgggbgrbwguwgugwguuuwurgubwgwururwwrrguwww +gwwbwuugwwwguwurugwwgrubbubbgbubrbwurwrbuuwur +rrwuwgbbbbwrgwururbgrbggbugrgrrwwgrgrrbwwwggrrgwwbggwgu +urrwgggrgbrrbbgbbuubrurbrubwwgggbugrbugwrbuuuwwburwurrrbg +wruuugggrggbwggbguwbgrbwgguurwwrbrrugwrrgubrbgrbbgb +wbburrbrgwrwrwwrrwwbbgbrurgrrguggrrugwubugwr +uwgguwwbbgwwuwrwrwrwwggbwubbuburburwggbbwg +uwuwwuggbwrrbrrwuugggbwgrgugwgwrwbgrwggggwwggrrggbbru +bbuggrrurbrbuuurbrwwururubbrguuurbrugurwwwwwbbwwgbbuugrr +gwrwgwwbgrrrubbruuguwgurrrrwurrwurrbuuuurrggbwg +wruwbuuurwwuruugubbuguwrurwubwbbuwrrrgrwub +bururrubgrubrggwrgrwugburrubwgbrurgbwwrbugwgbbgugrrb +wwburwrwbgbgbggrwwurgrgubwwgburgbbgbrwwrurrrwuwwubgr +ggurgwwrrruwwgbrrwugubwwuurwrbbbrrbguggugubggruwbwbrrbu +wugrbwbrrgwwwrubwwugubrbwwbwbbwuwugugubuubrurwwwgbwgrbwg +rwurugbruugbwgrwurrrwrbuwrwgurgrgurgrwwwwwbub +uuwbruwgrrurbbuugwbwrrwubbbwuggwrubugrgubbbgrrrrwruu +gubburwwrrgwbbwwbubwwbrrggwwbwwbwwwubggguuwuubwbgrrrb +gwrugggwuurwbwugrgwuuwgrwurgbuwgwwurugrbwbwwrgbbuwggu +gubuugbwgbwgbubgugwrrrwgubwgrbuwwbwbbugbrbrug +urbgrbwurburrrbbrgbwuubgugwgbgrrbbubrugbbbggwgrgguwbuwgb +rguwwgrrrbwrubuwgrwgguurbbbguuurugbguwwuugggwbrr +brurwuwgrwggrwrwwwwrbwgruruwuwwwugrwugrguuguubbgggb +bwrbgbrrwgwbrbbuggrbwrwggrbwgrwgugbguwbuurrb +gwgbwuwbgugrwbgbbwrubwuuwwugrugrurbbbwrgwur +uwugbubguugburbbrwurwwgbuuwugubwbbgggbggbgururr +grwuubuwwbgwubwubuwurwrgbuwbwruwguguwgrrrbuwuwwrwbrbrwr +urbubuuwbwgggwgrrwgbrggbrgbwrwurrubbbrwbrrbugbgubwg +wbgugrwgwwrwbwgwurbwwbguuwwbrgwuggrrbugubuuuub +bgbwugrgurgbuuuggwuubbrrggbbbugwugggguwwgb +wrwrburrbbbgbubugbgruguruuburrgwwrbwbwwggbgbbgurbw +burrrrggwubgwuwwbrubbwuwguugrwwgrwuggurwrrwrrrburu +rwwubgggwgwgrrrbubbggrwrwwgbwwgguwguugurbbgwbgbburw +bwugwwrrugurugbrgwbbwurrggbuwbrgurrbugwwrrwugrwgrwu +wugubugwubwrguuuwubbrggrruurgruwwrgwbbbgbrwwbrwrbguubguwrb +uubrbgurugugrbwwwwbrurubbgruubbuubrubgwggu +rwwrrggbrurwbrrguwbwgbrgrgbbbrbuuuwrbgrgggrbbwbwruwwrwuw +ugwgrrbugrrwgwwwbggwbbrgruuwwruurrugwbwg +wububbuugggruwrgbggbwrguwbuwbbwuggwwruurwurwbrwbb +gubwgwwgbgwuwbuugbgwggruwwugrrbubwuwrrburgwgrgrrrurggbbrbw +rwrgbwrgbrbrugbwbgwuuwgrwbwrwwurburgubbrgguugbugwggug +gwgbruwuguggwguwgguwbgbbrruubbwbgburbrugug +wbuuguuwrrguuburbbbwggubbggbwggwurrbubguwrrubbgbbggububwug +urwrwrubbwbwwuuurubgruwggbrgwuwgwbbuwbrurwgbwuruurggwrrbgu +bwbwwgbwbrgrgwwrrrwubrwbwrbrgrwugbbubgrgbwgruububwgru +ubrwrgrrggwgrgwrwbubbbgwrwwugbwubrrbrguwbubgrbwbwg +wrrbrwrbgwbrbuwbgubuubgububrbburbwrrwwugbwgw +grwgubbuuubrbwwrurwwugwubrbbbrruwuubbgguggrwrrwbw +rrbgbwurgrrrwrrwgruwbugggrbrgruubwrbuwgugruguuwwbbrub +rrgbgwwgrbrwuwgwwrwwggurubuugrbubbwrbbrrbwuw +ugbrbgbbgwgbrubrbrurrwubuggbbuuggrgrbrbgrgbubbuubggbwg +gwugbrrwrwuwrrwbrbuwrwuuuwrbwgggrrbwbwwgbgrruguuuwbu +urrurubgbggurgwuurwwggugwubrgubrgrbwuwwbbbugwbwbrrbrbgbur +uurbrwwbwrbrbuwwgguggwgggrwwuguuggbubgugrwbwbgubggrurgbwggg +bbuuwwbrwbwwrwrgwrugubbgbrgggugwuuwggwwgbwggubbrguwbbbwuwb +bwwururbbbgrrrrwwbwgubrbwwggurrrrwrbugguurwbuwuw +rbbgrruwrwubbrugrbrbrwgrbwwrbrbggwbgbuwgwwur +wuuwggwubuggwbgrrrwubwbrrwwurggrurwwbggwuubbwg +uwggbgbbbwbugwubrubbubgbwgwrugurwwbrgrrgbwgbubbgrrgrwrb +uwrwbwggwburwwuggbuguurgrbwbbgbggrbrrbrbburwurruwbgrbwub +bbwuurwwurubbgbwbrurbgwwbbwggwurrugbbbugruurbwggrrbrr +gbuwubbgrrwbbguruguwgbgrugrwwugrrwrrwuuurwgurrrg +grgwbbgbbggbbrbbrrbuwgwwguwwgugubwuurbgbwubbrbwburrb +ururrwurubrgwbugrggggbwbggguwwbbwubbggugwbgugwbuwgb +ubuwubugrwwwwrrbugbrwrbgugrgrwgwrurwbgrubggurwggwrugrub +ugwbugbwgurubwggrwgrrubrgbbwbbbbrgugubuuwwbbrbgu +wwbubbubuwwguuburwugwruwggguwbgrruuwrbubbuubwwrw +gbbugwrrgrubrbgggbugbwubrubbwuwrurrgrbgbbrbgrwwgruw +buuwugbuguuwurugburbrrbrgrgbbbrurgrguwguwugugbbwbgrwwww +gwgwrrugwugwbggrrgrbuwgbgburwbggwwgugrrwgwuwwwwrubwg +bwrgwwrurrbbubuwwrgurwbrrubgrwuwubrugwrbuwwrubwuwrbbb +gbuwuggwrrbubgubgrbbgrburrrwwrwgwwgrgurgwwrbbgbbuwuu +rbrgwgwwuwbrgrggrgrwwugbrguuuubrguwrbuggubugwrgbbbbwg +rbburwgugwwurgrggbugrrrrwwrbgrburgrgbugbugguruwwwrurb +bwwwwwurbugwruwuwurubwggwrbbwgrwurbwwbuwruwbruuugwgbwgbb +wwguuburgwrubrrbgbguggguwuuwwrrwuuruuuurwrbubgbu +rburbbwgbgwbbburgbugrrwugugugwubgwwruuwwgwrubww +wrggugbgrgbwuurgwgbguwurrrbggbwggrgbwururbgwubbwg +rguwuwugbubbrwuurwrgbrbuwrbbrrbgurbwgbbwbg +bbgwrrbuwbugrbbgburwbwrguwbbrgwbubwrrggbbwrubuub +bbugbrrurbrgrubrugugbubbwwwwbuwbgrgbbbbrbu +brrwburgwbuugggwwuwwwurrbugrrurruwgwgbbbwrubgbwg +gbwwbrgwwugbwwbuugbwrbuugrrbbrgrrwuururbggurugggrwurgr +wubbbwrrgwwgrrgwgwgrbgwuugugwbrugugubbwbruuubuuuurru +gubrwgubwgruugwbgbugwuubruuuuurbwwruuruurwrgruuuwuurwwwr +ugwwrwgbburrwrbwgwrrrurbuuburgruruuwgugggbbwwwrrrggrbu +gwggbbbwuwbwurugubruubwburgwrbrwwbgruurbbgrbrgbwgugg +brgbrwbbgbrwwuwgwrubbuwwruugwbbburuwbwugugbwrgbrg +urwbggwgggrrbbrubburwrgrgrggrbubwwbrbuburwwbub +brwbgrggrgugrrwurwgrurrbugbrwrbgwubgrbgrbwgbggrwuur +bbbrgwwrbrurwuuwrgrrguubbruubuwwrrgrruruwwwrgwrububgbgbg +gwubrgwwuuuwwbuuurgwrrwbgggrgwgurgrgwgugrrgrruw +wurguuwrrwwggrbugwruwuwwgrugwbgbgwrrrugbruug +bgwurwrrbwrrugbwwwrwwggbbruwwrwwubwwurwurrgwubrbrgbwbwuww +ugggbrgrugubugurrbgwgrbrbwbwuguruwurburgwggrwwguwbbgr +bubrgrubbrgbwwgburbrrbuugwrrrbwruruwbgwgrggwwbbguburwruww +wggwbbuwugrgwwbrrbwrgbwrggbrggurbwgwwbuwwrgbbrwwbrurrurubu +ubuggwuwuwbwuurgrrbugrgwurwuuwugrbwwgrwwwbwrugurgrbrwggrug +rgwwbuwbwbwrgwgbuwwwrbgruubugwrgbgwburuwwugwwrburubggbug +uuwwwrwrbrrrrbwrguurgruwggrubrwgguwbbubwbgrruwrurgwru +ubwuwurbrggrbrgubbuubbwrbgbuugbbwrgurrbgbrrbwgrurubwggwgu +wbgwbuwbwrggggrbwguwggwgrwwgrbwbwgwwwwgbggurggrggbwbbwbgwg +rruruwuruuurggwugruuuwgruggruwgwwwurwwrwuwrwugwrbg +rrbrubrwgbbgwrwwrrrrbuggrwburrrwbrgggggrrgguwgr +gbubgguwrrwuwruwrrgrrbwbrwguugurbwgurgwwrbguubgwrwr +grgrrrbbgbrbbuwwruuwguwggwgurubuubbbrgrrgwgrgbgguwbuubg +wrwurbwgwgugggbuwwruwbgrurggbbbuurgrbrugbrgw +rrwgrwggbgbggurubgrbwbugugbgrwrgwwbrrggwbbggwrrgw +urgwubgugwbuwgrguurwwrbbbguurwwwwwwgbrwubggwubbwubgbwbg +bgbgrubwwrwggrwwbbbbbwwgggrbuwrggbbubbugbwg +ugwbgwguruuwrrgwrugwrrburwburbgrugwgwrbbrbuwww +ubuuuugggrbuubwgrwggwuguuugbwggubbgrrwggrbgrbugbbgu +rwrubgurgugggrggwuwrbbruwrguwuubggwrrgrgbguwwbbrggg +brubgbwwbwbubguuwurgbubwburwubbruuuuurubguruuwgwbwg +ugubrrrugrgwwggubuwrrrbubrbuubruggugggubwwwbrruwuww +rgbugbwggwugurrrugbrwubuwbbgbububwrggrrgrug +wrwrrbbwuubgrbbubwgbggwwburgwurrgrubbuwwwgggwgwr +bbuwgwbggbguwwwuwguuwguwbubruwwgwgwwbwuurbuubgbbgubuwurgg +gbbbuwrguwrwuuwrrwbrburrubgrbgwggurrbgubgu +wgurrwrwgwguburugggggwbggbuugguwgrubwbrrbgurbwrwbbwrbwb +rwbrggbwruurgwbwrwgwrwbrbugbrgwuwuwrgbwgubuw +gwrbrrrrbrwwrgbbrggrbrrubgbwbbwbgbggbwugrugrbbru +gwgggbbrbgrrbgubwbbubwwuggwgwrguuwuuwuwgrwgwurrbrb +wuwwbggrwuwburuwburwbrbwbbbbuggrbwwwrrburgwrgbrwbrburbbwu +ruurbbwbuubuuubuguuurggurrggwububugggurrgwruuw +wrrrgrgbguruubgbgurbuwgwrwwbggubwwrbbbwrrbwwbwbrbuguuw +wggrrbwgwgrwwugwwugbwwubrwwrwgburuwugwurgrbwwrwbrguuwwugwb +bgrwwugbrugurbgubwrgwwbrurgguwrgruurrwgbuguguugr +rrbwwrbgwubugurruuwbbuwgbwubgbbrwuubbruwwuwbguggwbuwrwrbr +gbuuggrugurbwugggurwggguwugrwwgurgguruubugrwuubuubgwbwgw +uwbggbgbwrrwurbwggrrwrrwuwbbwrwugugbrwbrrwrgbbg +guggbburgrbwrbwuwgurrwwbwwuuwbbgwgbrgwwrguuuurrubuwguu +uwbrurwwrwwbwubrrggrugwurgbwbubwgwwrggrrubbuugwbwggg +bwwubwugggwbugurwurgggwbwrrrubugrggwrwbrwgwwb +rbgubwwwugugggbguwbrwgubbrbbbwbwwbwbrbgurrru +ubuwwrbbbuguurrbruwwgburuurwruubggwwwrbwguwww +grrbgbrubguwwrbbggugbbwuwrwugrgubbwgurrurr +rwwubgrbrrbbbgrbbbbugwrguuwgwrgwrrgrwuwrwbuwuwubgwrbrbuub +rbbubgbbgrbrguwgguurbububbugbbbwbrrrrgubwgwuwggwb +gwwururguwwbbbbwuwwrrrgrugwbwbbuurbwwwuruwwwrbbbuuuguggr +wwbrbwrgwwbbrugbuugwwggwgbwwguwuugbgbwuugb +ggggwwuguurubugrrwguubwruwrruubbrbbubbwurwgbuuwbb +rrrbguuwguuwbrruguguwgwbwrgrrrgwubwrbgbwwgwrwugbbr +wgrrbwrbbbbuuugwurruwbgubbubrubrggruubwrgwurbrwgrwrgr +brwuuwrrrrurrbgrwgrrgrrbbubwbrrwggwrbburrwrggwgbuuru +wburugurrugrwgbrwwrwggugbugububwwgubwrwbuwwgwwguu +rbwbbwrbwbwwrggurbgubwuwrrbrgbgwwbbugrugbbrrgwgrugruwrug +bgguwwurwwwugwgwwgbbbgwgbrurggbwwwuwubwbwwuwwwwr +gwbrwbgrwgbbbwrurwbrwgwuuwbgrguuuwrbrrurrrbgrbrggurwgrugw +uububwbugruugbubwrwrbbwwrbwbggrwrrugggwwwwubguwg +rwwburugbwbggwbwgrbgugugrguguubgbrwbbwggg +bgubbwbuurbwrurwurbuubuggbwurbgwrgggrbrbwbwgrggbr +gurwbugbuuubgggrgurrbwbwgbrgwrwgugubbugwwbrrgrwuuwwr +urgbuugrubugrgbgubwruubrrrubrgbrgwgurgggrbrrwuruuuubrrg +wurrrrruwrwrwruwwggwwwuguuurrurubrgbuwgrrubbubrubgbrgu +gbubbbwggwwrrbuwrwgbrgbuugwrgwrgwwuruuubrwbwg +gguggrrgwbgbbrwwrgrbgbrrrwgurwgrubgbgwwbgbwrwubbw +wwwrggrwrgrwbrgbbgrrbbubgrrwwbgwubbugwwwruwrwrwgwuwgbub +rwgwrggwrggwgugbugrguwrgbwgbwwgwrwbrububguruubwg +guubbbggurbggwuwwbwrruuwububgurwbwruggbgbw +wgubwwgggrurwbwrbbwubbubrrwgrurbggbgubrwgubrwrrgwubu +rgrrwggwbuwuurwrwwwbuwuwggrbrrubggbwurrwwwbbwugu +gbgbgggggrbrwrgrwgubuwbggwbwgurwuguuwrwuugrgwgr +ruurgwwbgbgruwwwuurburwuwuubrubbbgbguwrrbburbubbuwb +bgwgwrbrubwugubugrugrrggwbbrrwwggwrwbgwbwrurbubrbubgg +gggbruwggwurugbbbuwrbwruubwbwrburwwruurgwruururrwuuwgrbbg +rwwbwuggguuruggrruwruwgwrgrbrwwggrbrbuwrgrggbwrwb +grbbgbbgbrrbwruggrwburgwwwuwrbbgbuwgwbubwu +wwwwgwbbbrwugugrbubgguggbuggbuugbwruwrubbubggwgrgugbbwg +uwbgwrbubrrrugwbuburuwbbggwgbrggrgruwruwgrruu +brurgwgbuwuwwgbuwgruuwgbgwwbubbbrbrbwrwugwuuggwg +rgruwrrwgwuugrbubggbbrgbuuwwgwbbwbburgrbggrurbuuuguw +uuwrgwubrrbwbrwrbgburgbrwbwbgbbgrgrrwwrbrrrwbwwbburwgw +wwbgbbugbbwbguurubuggrbbrbuubuwbbburwbbruwwugu +wbuugruruwwruuguwbwrwgrgbwuwurrgbgbgbguguwwbugu +rgrruuuwwrrbbuwugwwrgugbbggrwgbrbggururgbwg +urwugubuwbrwrbbrbbrgbgbwggwggwguwwubwbruwwu +grbugbgurwgrgubrwgrgbubbrggbwbgwbbwgrbrwwrrgrrug +wwwgbbwburwbwgbbuurbgrwwrbgbbwbbwwbgrrrggrrgbug +uwuuggguwrburrgrwgburwbuuggbbwubgwgrugwgguwg +wgrurrbrwugrbrubrwrgrurbururwgrbrgbwuwguwwwbggr +wrbrugrbwggwbwbwrbgbuurwrrgwwgugrruuguuuubwwbrguwgww +ugwwbwwuwgwuwruurwwubwbrurggbbruwruwwwggruguuwrrwgbwurgr +gurrrgbgbrbbrrbrwuuuwgubgrgwggrwrbrgubwrubbur +rwubgbwurubbbwggwuubrbbrgwuwuruwuwbugwgrbbr +brrruurubwwwruwggugbgrwrwugububwwwururbgub +uuwubrbwguuubbbguuwguwwwurwrugwbruwuruuwrrgurggurwwbbbwrbb +ugbrrggwbwwububbbuwbugrruuugugwbwwrgbrwbrwgg +gbugwbrwbuwwruubbbbwbbbbrwrrbuwgrrgburwrbbrwgwwru +wwbgburbruurbrbwbgwbuuwrwgbwruwwwgrbrwrgrrbugrr +wruwruwwrubuurbgbrgbwgrwggrbwgwbrwgugrurgruwb +guurruwubuuwubwrubwguwurgburburwrwggbuwbugbburbg +bwrugbuuwbgurgwwuwrurbgwgggrbgbrbubugbbruwggur +buuurggbgwuwurgbwgrgwwrbwuggrguugbgrwgrugr +rbuwwrbgwbwbbwguwuwubrwwrugwguwurubguwrugwgggr +rgugbbwrbrgbgwbbrbuwrrgrwwuuuwuwbrrgbrrubgbwbwg +bwwbrburwwwrrrruwgwggrrrwgugruurwwgubwurwrbgbw +ubugbwruuubgbwwbgwbruuruurgrubwwbgrurggbrguuuwwrwbwwrg +gwwwbwuwrggrbwurwwruwuwrbwgrbrwwbwwrrbuubb +bbwgrwwurrgwwrwrrrbwbwrbguwwwurggrrbbwguwg +wubwggrrbrbugwbrbrrubuwwbrbubrubrgrgbgbrubwbwg +uubwruuwrwrgrrwwbgwbrugrgrwwbuwgwbwwuguwrbgrgruwwbbwg +uggrwbggruubguggwbgrbbggrurrwwruggrrbubwuuugggwugbwgwwgbg +bwguwrrbbubgrgugwbwrburugrrgwbuwubbububwugurrwubuwb +gubbugbuwguugugwbwwbwguwuggbburubbwrwgwwubuwbguurbrgrwrrbb +brbbwguwrwuwwbburwwuwgrrwrbugruuwbuwbwurbubgbr +rwuuguuwurgbbgwrbuwgwuurrggrbwwrgruuruurbw +gwrbuwwwgrugwbuurwwbggburruruuubburwwurruwbubugrgbru +rgubugguwwbwbgrrrwbuggggwrrggbururrbgbgbrbuguguggwb +bwwwwrbguuwgbuwuwbbrbugurrrgwuguugwrwwrrugburwuruwubwg +grwrggrgubguwgbuubuwggurwwrgrbwubwrbwrrugwuwruuww +rggwwrrubbguuwgwbwrrbuububguubwwbbrrbbwuwbrugrbrwwrggr +bbgbwbwbuubbgrwgggwwuuuwrwbwbggrbgwbwuwbwbuwb +uurgrrbgggbrggrurgbwrugrgbgurgruwbwwbwuuguww +wrwguwrrwugwggbrrrbwwuguwrwgugwgbbbbrgwwgwrurgwggrwbwbgr +ruwrurugbwrgrbrrrrwbuubwgwggrrwwrwgugbugbgwww +wbruwuuuugbbggruwwrrgrbbwwwrwwgwwguwbwgbwg +wgbgrwwgbruwbrrbgrburwwwgwrgwwwwwwgbggbgbugbgruuwrubugbw +rbrbbwuubuguuubguurbrurbugrgrubbrgugrbguwwwubwruwguwrgu +wwrwggugrgggwgrrrwurwbwgubwgbrrgrgurbrgbwuugugbwrrgbwg +wwwgguurwgrwgwrbwbuwrrguwuugwrrgubbuuubrubgbbrw +brbbbwruubuwrurgwbgrbbbugrrrbwrgbbwruwwbrgbugrwwgwuru +grurrbgubgrgwbwruuwrgwwgbugbwbbbuubwrrbuguwgubrbgwgwwbbr +wwrbguwuwbuwbguburwrggrrwbbgurruwubwbbbwrgwb +rgrgrbbguuguwwwrburrrgwggwrbguwwbrgbbwguwgbgugbw +wrwrugggbgrwwgwrwruubugugrrrurubwrrrgrgrurub +wgbbwgbrugbrrwbuuurrubruurrbwuwguwwgrggwrguwrugbwg +wgwuuwbwbuwrurugbuubuwuugguwguwuggrggubbrbuubwu +wwwugbrgrgwbbwggubbgwrgwwugwrrrrbbwbbrgugugwggrub +rrbgwggwugbrwurbrbbbbwrwrrrgruwrbbgugrgrrwrgrururgggw +rwrrwgwbgbwrbrburuuruggwrwugubgbuwwbwguwbugbgwrggrbrbug +uubuwuuwbwwurugbggbubbgrrurgwubbrwggwbbwwrr +burgwbwbgwbuwgubwgwgruwbuguwrgbbggugbgrwggbrrug +bgbwbrruuuwbbrrgwuwbbrbgbrbbwwbbuubwuuurug +rgwrbruwgbugruwgrrugbgwwugrguuuggggrgububbbrgwgb +rgubbrruwubgwgrgrrbgbubuuubrbburbrrwwbgwubuurggwurbg +grrwbwguwubuuwrgrwbuurbwuwbrbrugggwgurrwwbwrg +wgwbwbgwrbbrrrrubuurrwwggurwurwrrwgrbugrwgwguubgrgubguw +brrgwbbrwrwggbbbwwwruugwwbguggbwbwbrwbubbbbbbbgwgrbgrgb +rbwbbrrrwbuwrbgwrrrrruguugrrbuwbbgrrrbwguwrubggugrubugwgg +brbgbgbwwwbwurrrwwguguggrrwgbbgrrwwuwbgwwrwuguuuwubbrgb +grbgbgwrrwbuubgbrrwuuwurggurwbbwgbrubgbrrgwgb +wuggrrwbbgbbbbwrururuwrgrgurgbwwbwbwwwgbgrbubbrurgu +grgbbguurbgrwwbwwgbrruuwubrwbrgbguwrbrrrgbubwurbrbruwruuw +buubrbrwguwggbgbgrgruuuwrrbwuuubgrggrbgbggrrbbgr +rbwwbbuubbrrwwbbwgrwrgbgrrggrubrbgwurbrrgwwrbwgbwg +ruggruwuruugggwbggwwgrbgubrbgbwgubrbwgggrurbgrbgrgwugr +bugwurwbrrruuwgwbruwgrrwrrurrgbgbuwgggrrwgrrbuuggbuub +brwguuruubwggrgggurbrwwrbwwrugbbggurwubggwuugubgbrg +wrrbggurgburbgrwurbgbrburbbbuggwrrwbbgwbuwgbbwgwwg +uwwbwbbbgguggrrgwgrbwbwwgrgwwwgwububgbugwbggguubwg +urrwrgrrbgubbwwrwbrgbwburbwwbrwgrrbwrugwugrg +ururguwwbwbwgrwuugwbrgwrwbrwrwrurwwrwgugrggbwrrbbbgrwwguu +gggbbwrubgwwgugrbwbwbbgubrrbggbgwguuuwwbuwgruwbwu +urbbbgbubrbbwgubwwwrrrwwggwuuggbwgruruuwrurbrugbb +wrbugwgrbwggrrgrwgrrgurrbuwbggggrwbbbgbwbrrwbuubwg +wbbrgrgrbrguurggwrwgbuguwwgwrwgrrwrubwggbbggbbwr +bwruguburrrruwwrbwwrgbrrbwgwrrwwbbbuwgbgrurrwuugwgrwwbgbb diff --git a/2024/19/test b/2024/19/test @@ -0,0 +1,10 @@ +r, wr, b, g, bwu, rb, gb, br + +brwrr +bggr +gbbr +rrbgbr +ubwu +bwurrg +brgr +bbrgwb