This commit is contained in:
awerbrouck 2020-12-06 11:24:33 +01:00
parent 2131621078
commit 6b5b62e595
15 changed files with 2 additions and 3990 deletions

4
.gitmodules vendored
View file

@ -58,6 +58,6 @@
[submodule "Charlotte"]
path = Charlotte
url = https://github.com/charvp/aoc2020
[submodule "Arthur/Swamp"]
path = Arthur/Swamp
[submodule "Arthur_Swamp"]
path = Arthur_Swamp/
url = https://github.com/AWerbrouck/AOC2020

View file

@ -1,8 +0,0 @@
{
"folders": [
{
"path": "."
}
],
"settings": {}
}

View file

@ -1,37 +0,0 @@
package AoC;
import java.io.IOException;
public class App {
public static void main(String[] args) throws Exception {
dag1();
dag2();
dag3();
dag4();
dag5();
}
public static void dag1() {
Repair.dag1();
}
public static void dag2() {
Password.dag2();
}
public static void dag3() {
System.out.println(Trees.dag3(1, 1));
System.out.println(Trees.dag3(1, 3));
System.out.println(Trees.dag3(1, 5));
System.out.println(Trees.dag3(1, 7));
System.out.println(Trees.dag3(2, 1));
}
public static void dag4() {
Passport.dag4();
}
public static void dag5() throws IOException {
Binairy.dag5();
}
}

View file

@ -1,32 +0,0 @@
package AoC;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.*;
public class Binairy {
public static void main(String[] args) throws IOException {
}
public static void deel1(int[] intarr){
System.out.println(intarr[intarr.length - 1]);
}
public static void deel2(int[] intarr){
System.out.println((intarr[0] + intarr[intarr.length - 1]) * (intarr.length + 1) / 2 - Arrays.stream(intarr).sum());
}
public static void dag5() throws IOException {
int[] intarr = Files.readAllLines(Paths.get("./puzzels/dag5.txt")).stream()
.map(line -> line
.replaceAll("[FL]", "0")
.replaceAll("[BR]", "1"))
.mapToInt(line -> Integer.parseInt(line, 2))
.sorted()
.toArray();
deel1(intarr);
deel2(intarr);
}
}

View file

@ -1,121 +0,0 @@
package AoC;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class Passport {
public static void main(String[] args) {
}
public static String[] lines;
public static String[] regexen_deel1 = {
".*\\bbyr:.*",
".*\\biyr:.*",
".*\\beyr:.*",
".*\\bhgt:.*",
".*\\bhcl:.*",
".*\\becl:.*",
".*\\bpid:.*"
};
public static String[] regexen_deel2 = {
".*\\bbyr:(\\d{4})\\b.*",
".*\\biyr:(\\d{4})\\b.*",
".*\\beyr:(\\d{4})\\b.*",
".*\\bhgt:(\\d+)(cm|in)\\b.*",
".*\\bhcl:#[0-9a-f]{6}\\b.*",
".*\\becl:(?:amb|blu|brn|gry|grn|hzl|oth)\\b.*",
".*\\bpid:\\d{9}\\b.*"
};
public static void join() {
lines = String.join("\n", lines)
.replaceAll("\\b\\n\\b", " ")
.split("\\n\\n");
}
public static int deel1(String[] lines) {
int count = 0;
for (String line: lines) {
boolean valid = true;
for (String regex : regexen_deel1) {
valid &= line.matches(regex);
}
if (valid) {
++count;
}
}
return count;
}
public static int deel2(String[] lines) {
int count = 0;
for (String line: lines) {
boolean valid = true;
for (int i = 0; i < regexen_deel2.length; ++i) {
Matcher m = Pattern.compile(regexen_deel2[i]).matcher(line);
valid &= m.find();
if (valid) {
switch (i) {
case 0:
int value = Integer.parseInt(m.group(1));
valid = value >= 1920 && value <= 2002;
break;
case 1:
value = Integer.parseInt(m.group(1));
valid = value >= 2010 && value <= 2020;
break;
case 2:
value = Integer.parseInt(m.group(1));
valid = value >= 2020 && value <= 2030;
break;
case 3:
value = Integer.parseInt(m.group(1));
switch (m.group(2)) {
case "cm":
valid = value >= 150 && value <= 193;
break;
case "in":
valid = value >= 59 && value <= 76;
break;
}
break;
default:
break;
}
}
}
if (valid) {
++count;
}
}
return count;
}
public static void dag4(){
try {
lines = ReadPuzzle.getInput("./puzzels/dag4.txt");
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
join();
System.out.println(deel1(lines));
System.out.println(deel2(lines));
}
}

View file

@ -1,78 +0,0 @@
package AoC;
import java.util.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import static java.lang.Integer.parseInt;
public class Password {
public static void main(String[] args) {
dag2();
}
public static int countd1(char character, String string) {
int amount = 0;
for(char ch: string.toCharArray()){
if(ch == character){
amount++;
}
}
return amount;
}
public static boolean countd2(char character, String string, int x, int y){
char[] charray = string.toCharArray();
if ((charray[x-1] == character) && (charray[y-1] != character)){
return true;
} else if ((charray[x-1] != character) && (charray[y-1] == character)){
return true;
}
return false;
}
public static boolean checker(String string, int part){
Pattern pNumber = Pattern.compile("[^\\d]*([\\d]+)[^\\d]+([\\d]+)");
Pattern pString = Pattern.compile("[^a-z]*([a-z]+)[^a-z]*([a-z]+)");
Matcher mNumber = pNumber.matcher(string);
Matcher mString = pString.matcher(string);
if (mNumber.find() && mString.find()) {
int min = parseInt(mNumber.group(1));
int max = parseInt(mNumber.group(2));
String one = mString.group(1);
String two = mString.group(2);
if (part == 1){
int countos = countd1(one.charAt(0), two);
if (min <= countos && countos <= max) {
return true;
}
}
if (part == 2){
boolean bol = countd2(one.charAt(0), two, min, max);
if (bol) {
return true;
}
}
}
return false;
}
public static void mon(List<String> list){
int badpwd1 = 0;
int badpwd2 = 0;
for (String string: list) {
if (checker(string, 1)){badpwd1 ++;}
if (checker(string, 2)){badpwd2 ++;}
}
System.out.println(badpwd1);
System.out.println(badpwd2);
}
public static void dag2(){
List<String> list = ReadPuzzle.readPuzzle("d2.txt");
mon(list);
}
}

View file

@ -1,52 +0,0 @@
package AoC;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class ReadPuzzle {
public static void main(String[] args) {
}
public static List<String> readPuzzle(String fileName) {
try {
Scanner scanner = new Scanner(new File("./puzzels/" + fileName));
List<String> list = new ArrayList<String>();
while (scanner.hasNextLine()) {
list.add(scanner.nextLine());
}
scanner.close();
return list;
} catch (FileNotFoundException exception) {
System.out.println("An error occurred.");
exception.printStackTrace();
}
return null;
}
public static int[] readPuzzleInt(String fileName) throws FileNotFoundException {
int[] intArray = new int[]{};
Scanner scanner = new Scanner(new File("./puzzels/" + fileName));
int i = 0;
while(scanner.hasNextInt()){
intArray[i++] = scanner.nextInt();
}
return intArray;
}
public static String[] getInput(String fileName) throws FileNotFoundException{
try {
return Files.lines(Path.of(fileName)).toArray(String[]::new);
} catch (IOException e) {
e.printStackTrace();
return new String[0];
}
}
}

View file

@ -1,57 +0,0 @@
package AoC;
import java.util.List;
import static java.lang.Integer.parseInt;
public class Repair {
public static void main(String[] args) {
}
public static int repair1(List<String> list) {
for (String i1 : list) {
for (String i2 : list) {
int j1 = parseInt(i1);
int j2 = parseInt(i2);
if (j1 + j2 == 2020) {
return j1 * j2;
}
}
}
return 0;
}
public static int repair2(List<String> list) {
for (String i1 : list) {
for (String i2 : list) {
for (String i3 : list) {
int j1 = parseInt(i1);
int j2 = parseInt(i2);
int j3 = parseInt(i3);
if (j1 + j2 + j3 == 2020) {
return j1 * j2 * j3;
}
}
}
}
return 0;
}
public static void dag1() {
List<String> list = ReadPuzzle.readPuzzle("d1.txt");
int result1 = Repair.repair1(list);
System.out.println(result1);
int result2 = Repair.repair2(list);
System.out.println(result2);
}
}
// Kan je de tekst lezen?

View file

@ -1,35 +0,0 @@
package AoC;
import java.util.List;
public class Trees {
<<<<<<< HEAD
public static void main(String[] args) {
System.out.println(dag3(1, 1) * dag3(1, 3) * dag3(1, 5) * dag3(1, 7) * dag3(2, 1));
}
public static int dag3(int down, int right) {
=======
public static void main(String[] args) {
}
public static int dag3(int down, int right) {
>>>>>>> a72251a51edc92193a6d3a4462caff01a9d6323f
int trees = 0;
int H = 0;
List<String> list = ReadPuzzle.readPuzzle("d3.txt");
int len = (list.get(0)).length();
for (int i = down; i < list.size(); i += down) {
H = (H + right) % len;
if (list.get(i).charAt(H) == '#') {
trees++;
}
}
return trees;
<<<<<<< HEAD
}
=======
}
>>>>>>> a72251a51edc92193a6d3a4462caff01a9d6323f
}

View file

@ -1,200 +0,0 @@
1946
1859
1654
1806
1648
1873
1216
1831
1610
1779
1626
1332
1713
1919
1353
1720
1818
1976
1993
1617
1678
1655
1725
1686
1737
1696
1046
1814
1909
1618
2006
1903
1528
1635
1457
1924
1734
1723
1735
1984
1846
1921
1587
2009
1607
1987
1910
1571
1898
1869
1537
1446
1535
1802
1847
1966
1944
1793
1383
1850
1274
347
1208
1748
1906
1771
1849
1773
1792
1705
1538
1564
2003
1994
1545
1704
1657
1483
1701
1724
1293
1834
1712
1950
1844
1290
1692
1820
1585
1986
1328
1841
1709
1232
1945
1684
1787
1991
1914
16
1977
1620
1825
1866
1615
1832
496
1932
1819
1559
1870
1677
1650
1594
1664
1600
1622
1862
1937
1624
1580
1931
1803
1839
1755
1952
1473
1694
1864
1178
1163
1790
393
1776
1871
1999
1923
1174
1557
1646
1200
1842
1432
1573
1913
1954
1599
1980
1948
1430
1298
1835
1643
1742
1609
1649
1382
1343
1263
1908
1703
1922
1764
1603
1330
588
954
1772
1553
975
1499
1552
1214
1829
1698
1797
1807
1961
1947
1845
1881
1821
1815
1623
1675
1478
1886
1951
1700
1890
1876
1781
1853
1983
1901
1939
1292
853
1879
1652

File diff suppressed because it is too large Load diff

View file

@ -1,323 +0,0 @@
...#...#..#....#..#...#..##..#.
.#..#.....#.#............###...
.#...###....#.............##..#
...##...##....#.....##..#.##...
.....###.#.###..##.#.##.......#
#...##.....#..........#..#.#.#.
......##.......##..#....#.#....
....#.###.##..#.#..##.##....#.#
.......#.......###.#.#.##.....#
.........#.#....#..........#.#.
.#...##.....##.........#..#....
.##....#.#.#...##......#.......
##.#.#..#....#....#....#...#.#.
##....#.#..##......#....##...#.
....#..#..##..#.###.......#.#..
.....##....###...........#.#.##
#.....##.........#....##......#
........###.#..#....#....#.....
...#.......#.##..#.###......#..
...............#..#....#.##....
..#..###..#.#..#.........##..#.
####..#..####..................
#...####...#.......#.#.#...#...
......###.....#......#..#..#...
#...#.....##.....#.#..##...#.#.
#...........##.......#.........
.#..#.........#.#..##....#.....
........##...#................#
........#.###.#.###.#.#.##..##.
.#....##.....#...##.#..#.#.....
..#..#.....###....##.#....#.#.#
#......##.##...##..#.........#.
#..#..#.....#.....#.........#..
#....#.#...###.........#...#...
.#.#.....##......#.#......#....
..##......##...#.#.#.#.........
..#......#.....##.###.#.#..#...
....#..#.......#..#..#.....#...
.#.#.....#...#..........#......
#.#..#...........#.#.##.#...#.#
..#.#....###...#...#.....#.#...
....##.#.###....####.......#...
.....##....#.......#..#..#....#
...##..#.#.#.#......#......#...
...##...#....#...#......###...#
........#..#.#.....#.###.......
..#..##.#....#.#.........#...#.
.....#.####....#.##.........#..
......#...#...#.....#......###.
.##.....#....#..#.#....#.....#.
...........#...#....##..#...#..
.....#....#.....#...##..#...#.#
.#...#.........#.......#...#..#
...#..#...#........#......#....
..#..#####.#.....#.#....#...#.#
...#.......#.#....#...##..#..#.
####..#.#.###.#.#..............
.##........#...#.#....#..#.....
..#..............#.#..##...#.##
.###.#.....#.#.....##.#......##
....###.....#...#...#.#..#.....
....###.#.##.......#....#...#..
#..#...#......##..#.....#.#...#
....#.#.........#..............
#.##.##...#..#.#.#.....#...#.##
#...#...#......#...........##..
#.#.#......#............#.#....
.#.#..######...#.#.........#.##
..#.#..#...#......#............
....#.....#......##..#.....#...
.##............#....##..#......
.#.#.#...#.##.............###.#
#.#...#...#.....#....#.#.#.....
........#..#......##.##.#.....#
.....#.....#.#####...#....#....
.#...#......#.........#.#......
...#...#..##.....##....#..#....
....#....##..#.........#.......
..#........##..#.#........#....
...#...##...........#...#....#.
.....##.........#..#....#..#.#.
#..#....##..#...##.....#..##.#.
..#.#.#.#...#...#.....#.#....#.
.......#.###...#.#.......#.#...
....#..#..#.###.#.....###..#.#.
.#..##......#..#..#....#.####..
..##...........#...#.........#.
......#..#...#..........#......
....#..........#......##...#...
....#..#.##........#.#...##.#..
#.##......#........##.#...#...#
#..#....#.....###........##....
...........##.....##..#....#.##
..#....#..#..#......#.#.....#..
#....#.##....#.....##.......#..
.#.....#.#..............#.##..#
.#..#..#...#...#....#.#.....#..
...###...##.#...#..#........#..
#...#.##.#.....#.#....#..#.....
#.....###.#.......#.#..#.#..##.
....#..#..##.......###.#...#...
.#...####...............#.....#
.#.##.#.....#.....#.#......##.#
#...........#.##....###.##....#
...............#..........#....
.....#..#.##.###.#.............
...##.............#.....#.#..#.
....#.#...#.#..#..#..#....#....
..#.......#..........#...#...#.
...............#.#.#...###....#
....#...#.##....#..##....#.....
........#.#.##.........##.##.##
#.....###.......#.#....#..#..##
.#..#...#......#.#..##.......#.
#.....#.#........#.##..#..#....
.###..##.#.......#......###....
.#...###.....#.....#....###...#
........##.##......#.#....#...#
.#....#..#.........#..##...##..
.......#.......##.#..#..##.....
#..##..##......#.#......#.##...
..#..###..#...#....#..#...#....
#.............#.####.........##
..#..................#...#..#..
..#......#........##.......#.#.
.#.#.#.#..###.....#....#.#.....
...#.##.###.......#....#.......
................##...#.....#...
..#.###.#...#.####....#..#..#..
..#....###....##..#.#.........#
.#..#.#.....#........#....##...
.....#..#......#..#..##.#.#....
.#..#.........##....##......#..
.....#.#...#...#.#...#.#...#.#.
..#..#...#...#...##.#..###.....
..#..##......#..##.#...##......
.......#..##....##.#......#..#.
..#......#.#.....#.##....##....
..#....#......#......##........
....##.#.#....#.......#.##.....
#.....#...###....#....#...#....
............#.#..#...#...#..#..
..##.............##....#.......
.#.......#.##.#......#....##...
...##............#....#..#...#.
.##.####.....#.#..###.#....#.##
....##.#........#..#...#.......
...#...###.##...........##..#..
..##..##....#...#..#..........#
..#.........#.#...##..........#
.......##....#.#...##.....#..#.
.............#.....#.#.......#.
#.......#..##..##...##.#.......
..............#.....#.#..#...##
........##..#.....#...#...#.#..
###.#.................#........
...#........#...#.#######..#..#
...#.##...##.#.#..######...#...
#.......#..#....#..#.##.....#..
#..#....##....#.##.......#....#
#...#..#.#.#...#..#.##..#......
....#..##....#..#.#...........#
.##..#.#.............###.......
#....##......#..#..#.....###...
..#..........#...###.#.........
.####......#....#......#.#....#
..#....#.#.#......#....#.......
.....#.....#....#....#####....#
.##..........#...#.###....#....
....##.....##......#...#.#.....
.#...#...#..#.#.#...#####......
...#.##..####.##.##.......##...
............#.......#..........
.#..##.#..#####........#..#...#
#......##..##..##.........##...
....#....#.............#.#....#
###..#.....#.....#.#...#..#.###
#...#.......##......#....#.#.#.
...#......#..#...#....#...###.#
....#....##.......#....#......#
............#......##.##.....#.
...#.........#......#....##..##
.....##....##...#..###...#..#..
.......##.#..........#.##.##...
....##...........#.#..#..#.##.#
#...#..##.##.#....#....#.#.....
...##.#.....#..#..#..###....##.
#.##.#..#..#.#.............#...
..#.#.............###.....#....
...#..#....#..#.....#.#..#..#..
...#.....##.#...........#..##.#
.........#.#.##..#..#.#...#....
...#..##..#...#...###.##.#..#..
.#..##...##......##..##........
......##....##.#.##.#.#........
...#..................#.....#..
.##................#.#..#..###.
.##.##.....#................#..
.....#.#..........#...#..#.#..#
.............#......#..#.#..#..
...#...##..#........#....#.....
#......#........##.##...##.....
##..#..##....#...#............#
..##..##.##....##..##........#.
...#....#.#.#.#....#.#...##....
....#...##..##.#.##...#..#...#.
#..#....##.#.....#.......#...##
##.#....#.............#..#.....
.##..#..#.#.....#.......#.#..#.
.......#..#...##...#...###..#..
..........#...#.#..##.....#...#
..#....#...........#####....#..
#....#..#.......##.............
.........##..#####.......##....
#..#..........#.....###...#..#.
.#.#.#..#...#.......##...#####.
.....#....#.###...#.......#....
#.#.....##...###....###....#...
.#.....#..#.#.#........#...#...
.##.#.#.#......#....###....#...
.#..##..####......###......#...
......#.#.#.#.#...#...####.##..
.#........##..#.....#....#....#
.....###......##..#....#.......
#.#.##...#.#......###..........
........#.#...#..#......#....#.
..##...##.........#.......#.#..
..#.##....#...##.....#.###.....
.........#..#.#....#....#.#.##.
#.........#......#..#.......#..
...#...##.......#.........#....
............#......#...........
##.....#.....#.#...#.....#.....
..#.#...#..#...#.#...........#.
#.#.#..#..#...##.#...#.#.....#.
.#..###.#..##.#.....#.....#....
##....##....#.......##..##.....
.#..#...........###..........#.
.#..#..#..........###..#.......
#..###......#............##...#
#......#........#..#..#..#.#...
.......#.###...#.##............
.##....#.......#.#...##.....#.#
....#..#.#.......#.#...........
##....#.###.#....#.#..##.#....#
..#..#..#....#...#........##...
...#...##....#..#.#...#..#.....
......#..#......#....#.......#.
#.#..............#...###...#..#
...#....#..#..........#.#...#..
#.....##..##.....#........#....
.#...##..#.#..............#....
##.#....#..##...#..#.####.#..#.
.....#.......#.#.#.#..#.....###
...#.##....#.#........##.......
#...#.#...#.#..###..##.##...#.#
###..............#.#.###.......
...###..#.#..#....##...###.#...
......##...........#...#..#...#
.#..#.........##.......#..#...#
.#.......###......##...#...#...
.#......##...#........#.......#
.#..#.....#.........#.#........
#...#.#.....#...#..##.........#
......##.#......##.#..##.#.....
...............#.#..#....#....#
#....#..#..#..#.#.....##...##..
#.#......#.###......#..#...####
.#.#..#...#...#.#..#.##.##.#.#.
.....#.#...###...#.#.....##....
...#..#.#..........##.#....#.#.
...#..#.#.##.....###.##.#....#.
..........#..###......#..#.#...
###.....#..###..#...#..###.#...
..#..#.....##.#.#..###.......#.
....#....##........##..........
.......#..........#...#......#.
.#........#.#.#.#.#.......#....
.#..#.......##..##....#.#...#..
.#.#.#.......#..#..............
#.#....#.#...#.#.#.....#.#...##
.....#..........##..#.......#..
.##......#.#....#.#.......#....
..#.##....#.##.#...#...........
...##......##..##.............#
..........##.#.#..#..........#.
.##....#..#..#.#....##.#...#.#.
...........#....#.....#.#..#...
.#.....#....##..#.........#....
.....#.....#...#....#...#.###.#
..#....#....#.....#...#......#.
.....##..#.............#...#...
........#..#.......#.#.......#.
#...###..#.##.#...###...##..##.
....##..#.......#...#.#........
.#...#.#.##....####........#..#
.#...#.#.####.##.#.............
#..##...#....#...#.#.#.#.##..#.
.#.......#........#.....###....
#.#.....#....#..#....#..#....#.
...#..#...#.....#.........##...
.#....#......###...#....#.#.#..
#.#........#......#...#....##..
.....#..#......#..#..#......#..
.#.....#..#.##.#.#.#...#......#
##........#..#.#..#...#.####...
..........##....#.#..#.#....#..
#.##..#..#....#..#....##..#.#.#
..#......#.......#...##..#.....
##...#.........#......#......#.
.#.....................#..#.##.
.#.......#........#.#.#..##.#..
..#..........#........#..##.#..
.#...#...#.........##.#.#.#....
....#....#.###.#....###....#.##
....##......##........##.#.##..
....#.#......#.##.#...#.##.....
....#....#..#.#..###.#.#.......
....#......#..#.#.......#..##..
.....#..#.#.##.##..##.....#.#..
...#....................##.....
#.....#...##...#.#.............
..#.#...#.#.#.....##..#....#...

File diff suppressed because it is too large Load diff

View file

@ -1,933 +0,0 @@
BBBFBFFRLR
BFFFFFFRLL
BFBBBBFLLL
BBFBFFFRRR
BBBFBFBRLR
FBFFBBBLRL
FBFFBFFRRL
FFBBFFFRRL
BBBFBFBLLL
BBBBFFFLLR
FBBFFBFRRR
BFFFBBBLRR
FFBBFFBRLR
FFBFFBFRRL
BBBBFBFRLL
BBBBBFFLRL
FFBBBFBRRR
FFFBBBFLLR
FFBFFBBLRL
FBBFBBFLRL
FFBBBBFRRR
BFBFBFFRLL
BBFBFFFLLL
FFFBBBFRRL
BBFFBFBRLL
FBFBFBFLLL
BBFFFFBLRR
FFBBBFFRRL
FFFBFBBLRL
FBBFBBBLLL
BBFBFFBRLR
FBFBFBBRLL
FFFBBFBLRL
FFBFFBFLRR
BBFBBBFRRL
BBFBBFBLLR
BBFBBBFRLL
BFFBBBBRLR
FBFBFBBRLR
FBBBFFBRRR
FBBBFBFLLR
FFBFBBFLRL
BFBFBFBRLL
BFFFBFBLRR
FFBBBFBRLR
BBFBFFBLRR
BFFFFBBLLL
BFFFFBFLLR
FBFBBBBRLR
BBFFBBFLRL
BFBFFBBRLR
FFFBFBFRLL
BFFFBBFRRL
BBFBFBFRLL
BFBFFFFRRL
FFBFBBBRLR
FBBFFFFLRR
FBFBBFBRLR
BBFFBFFLRR
BBBFFBFLRR
BFFFFFBRLR
FBBFFFBRRL
BFFFBBFRRR
BBBFBFBRLL
BFBBFBBRLR
BFBFBFBLLL
BBBFFFFRLL
BFFFFBFRLL
FFBBFFBLLL
FBFFBBFRRL
FFBBFBFRLR
FFBFFFFRLR
BFBBBFBLLL
FBBFFBFRRL
FBFBFFFLRR
BFFBBBFLRR
FBBFBBBRLL
FFBFBBFLLR
FFFBFFBRLR
BBFBBFFRRR
BFBBBFFLLL
BFBBFBBRRR
BBFFFBBLLR
BBFBFFBLLR
BFFBBFFRRL
FFFBBFBRRR
BBFBBFFLLR
BFFBBBBRLL
BFFBBFFRLR
FFFBFBFLRL
FBFFBBFLLR
BFBBFBFRRL
BFBFFFBRLL
FBBFBFFLRR
FFBFBBFLLL
BFBBFBBRRL
FBBBFFFLRR
BBBFBBFRRL
BBFBBBFRRR
BFFBFFFLRL
BFBFBBFRRL
FFBBFFFLLR
FBFFFFBLLL
BFBBBBFRLR
FFBFBFBRLL
FBFFFBFLRL
FFBFBFFLLL
FBBBFFBRLL
FBBBBBFLLR
FFBFBBBLLL
BFFBBBBLLL
BFFBBBFRLL
FBFFFFBLRL
BFBFFBFRRR
FFBFFFFRLL
BBFBBFFRRL
BBFBFBBLLL
FFBBBBBRRR
BBBFFFBLRL
FBFBBBFRLL
BFBFFFBRRL
FFBFBBBRLL
FBBBFBFLLL
FBFBFFBLRL
FBBBFFFLRL
FBBBFBBRRL
FBBFFBBRRR
FFBFFBBRRR
FBFFFFFLLL
FFBBBFFRLL
FBBFFFBRRR
BFBBBFBRRR
FFBFFBBRRL
FFFBFBFLLR
FBBFBFBRLL
FBFFBFFRLR
BFBBFFBLRR
FFBFBBBLRR
FFBFBBFLRR
BFFFBFFLRL
BBFFFBBRLL
FFFBBFFLRL
BBFBBFFLLL
BFFBFFBRLR
BBBFFBFRRR
FBFFBFBRLL
FBBBFFBLLR
FFFBBFFLRR
FFFBBFBLLL
FBFBFBBLLR
FBBBFBFRLR
BFBBBFBLRL
FBFBFFBLLL
FBFBBFBRRR
BFFBBBBRRR
BFFFBFBLLR
FFFBFBBRRL
BBBBFBBLLL
FBFFBFBLRR
BFFFFFFLLL
FFBFBFBRLR
FBBBFFFLLR
BBBFFFBLRR
FBFFFFBRRL
FBFFFFBRLR
FBFFBBBLRR
BBFBFBFRRL
BFFFBFBRLL
FBFBBFFRRR
BFFFFFFRLR
BFBBBBBLLR
FBBBBFBLRR
FBBFBBFRLR
BBFBBBFLRR
FBFFFBBLRR
BBBBFFFRLL
BFBFFBBRRR
FBFFFBBLLR
FFBBBFFRLR
FBBFFFBRLL
FBBFFBBRRL
BFFFFFFLLR
BBFBFBBRRL
FBFFFBFRRL
BBBBFFFLRL
FFBFFBBLRR
FBFFFFFRLL
BFFFFBFRRR
FFBFFFBRRR
FBFBBFBRRL
FFBFBFBLRR
BBFBFFFRLR
BBFFBBBRRR
BBFFFBFLRL
FBBBBBFLRL
FBBBFFBRLR
FBBFBBBLLR
FFBFBBFRLR
BFFBFBBLRL
BBBFBFBLRL
BFFBBFBRLR
BFFFFFBRRL
FBBFFBBLRR
BFBBBBFRRL
BBBBFFFRLR
BFFFFFBLLR
BBBBFBFRRR
BFFBFBBRLR
BFBFBFFLRL
BBFFBBBRLR
BBFFFBFLLR
FFBFFBFLLL
BBFFFFFRRR
BBFBFFFLLR
BFBFFFFLRR
FBFBFBBRRL
FBFFFFFRLR
BBBBFFBLLL
BBFFFBBLRR
FFBBBBBRLL
FBFFFFFLRR
BFFFBBFLRL
FBBBBFBLLL
FBFBBFFLLL
BBFFFBBRLR
FFFBFFBRRR
BBFFBBBRLL
BFBFFBBLLR
FFFBBBBRRL
BFFFFBFLLL
FBBFBBBRRR
BFBBFBBLLL
BFBFBBFLRL
FBFFBFFRRR
FBBFFFFRLL
FBBBFBFRRR
BBBFBFFLRR
BBFFBBBLRR
FFBBFBBRRR
BFBBBFBLLR
BBFBFFBRLL
FFBBFBBRLL
FFBBBFFLRL
BBFBBBBRRR
FFFBFFFLRR
BFBBBFBRLL
FFBBFBBLLR
BFBFBFFLRR
BBBBFBBRRL
FBBFFBFLLR
BFBBBFFRLL
BBBFFBBLLL
BFBFFBBLRR
FBFFBBBRLR
FBBFBFBRRL
FBFBBBFRRR
FBFFFBBRLR
BBFFFFFLRR
BBBBFFBRLL
BFFBFFFRRR
FFBFBFFLRR
FFFBFBFRLR
BFFFBBFRLL
FFBFBBBRRR
BFFFFBBRLR
BBBFFFFRRL
FBFBFBFRRR
FBBBBFBRLR
FBFBBBFRLR
BBBBFFFLRR
BFFBFFFRLR
BFFFBBBLLL
BFBBFFBRLR
BFBFFBFLLL
BFBFBBFRLL
BFFBBFBLLL
BFBBFFFRLL
FFBBFFBLRL
BBBBFFBRRL
FBBBFFBLRR
FFBBBBBLLR
FBFFFBFLLR
BBFFBFFRRL
BFBFBBBLLL
FBBBBFBRRL
FBFBBBBRRR
BBFBBFBRRR
FBFBFFFRLL
BFBFFBFLRL
BFBFFBBLRL
FFBFBFFRLR
BFBBFBBRLL
FBBBBBBRLR
BBFBBBBLRL
FFBBFBFLLL
FFBBFBBLLL
FFFBBFBRLR
BBBBFBFLLL
FBFBFFBLRR
FFBBFFFLRL
BBFBFFFRLL
FBFFFBFRLL
BBBFBBFLLL
FFBBFFBLRR
BBBBFBFLRR
FBFFFFFRRL
BFBFFBFRLR
FBFBFFBRLR
FBBFBBFRLL
BFFFFFFLRR
BBBFFFFLLL
FFFBBFFRLR
FFBBFFFRLR
BBBFFBBRRL
FBBFBFBLRL
BFFFBBBLRL
FBBFBBBRLR
BFBFFFBLLL
FBFFFBBLRL
FBFFBFFRLL
BFBFBFBLLR
BBFFBFBRLR
BBFFFFBRLR
FFFFBBBRRR
FFBBBBBLLL
BBFBBBBRRL
BBBBBFFLLR
FFFBFFFRLL
BFFBBFFLRR
BFFBBFFLRL
BBBFFBFRLL
FFBFBFBLLL
BFBBBBBLLL
FFBBBBFLRL
FBFFBBFLRL
BBFFFFBLRL
BBBFBBBRLL
BFBFFFBLLR
BFBFBFBRLR
BFBBFFFRRR
BFFBFBFLLL
FBBFBFBLLR
FBFBFBFLRR
FFBFFBFLLR
FFBFFFBLLL
FBFFBFFLRL
FFBBFBFLLR
BFFFBFFLRR
BBFFFBFRLL
FBFBBBFLRR
FFBBFFFLRR
FBBBFBBLLL
BFFBFBFRLR
FFBFBBBLLR
BBBFFBFLLR
BFBFFFBLRL
BFFBBFFLLL
FBFBFFFRRL
BFFBBBBLLR
FFBBBFFLLR
BBFFBBFRRL
FFBFFBFLRL
BBFFBFBRRL
BFBBBFFLRR
BFFBFBBRRR
FBBFBBBLRL
FFBFBFFRRR
BBFBFFFLRL
BBBFFBBLRR
FBBFBFBLRR
BFBBBBFLRL
FBFFFBBRRL
BFFFFBFLRR
BBFFBBFRLL
BFFBFBBLRR
FBBBBFFRLL
BFBFFFFLRL
FBBBBBBLLL
BFBBBBFRLL
BFBFFFFLLL
FFBBBFBLRL
BBFFFFBLLL
BFBBFBFLRR
FFFFBBBRRL
BFFBFBBLLL
FFBBFFFRLL
BFFFBFBRRR
FBBBFBBRRR
BBFBBFBLRR
BFFBFFBLRL
BBFFFBBLRL
BFFBBBFRRR
FFBFFBBRLR
BFFBFBFLLR
BFFBBFFRLL
FBBFBFBRLR
BFFFFFBLRR
BFBFFBFRRL
BFBBFFBLLL
FBFFFFBRRR
BBFFBFFLLL
FBBBBBBLLR
BFFFFFBRRR
BFBFBFFRRR
BBFFBFFRLR
FBBBFFBLLL
BFBFBBFLLL
BFBFBBFRLR
BBFFBFFLLR
FBBFFFBLRR
FBFFBBFLRR
BFFFFBBLLR
FFBFBFBLRL
FFFBBBFRLL
BFFBBFBRRR
BFFBBBFRLR
BBBBFFFRRR
FBBBBFBLRL
FBFFFFBLRR
BFFFBBBRLL
FBFBBFFRLR
FFBBBBFLLR
FFBFFBFRLR
FFBBBBBRRL
FBFFFFFLLR
BFBBBFFLLR
FBFFBBFRLL
BBFFFBFRRL
BBFFBFFLRL
FBFBFFFLLL
BBFFBFFRLL
FFFBFFBLLL
BBFBBFBLRL
BBFFBFBLRL
BFBFBFBRRL
FBBBFBBLRR
FBBBFBFLRL
FBBBBFFRLR
FFBFBFFLLR
BFFFBFBRLR
FBBFFBBRLR
BBFFBBFRRR
BBBFFBBRRR
FFBFFFBRLR
BBBBFFBLRR
BBFBFBFLLL
BBFFFBBLLL
BFBBFFBLRL
FBFBFBFRRL
BBFBBBFLLR
FBBBBBFRRL
BFBFBFBLRR
FBFBFFFRRR
BFBFFBFLLR
BBBFFBFRRL
BBBFBFFLLL
BFFFBFFRRR
FFFBBBBLRR
BFFBBFBLRR
BFFBFBFLRL
BBBBFFBLRL
FBBFBBFRRR
FFFBBBBLLL
FBFFFBBRRR
FBBBFFFLLL
FFBBBBBRLR
BFBFFFFRRR
FBBFFFFRRR
BBBFBFFLRL
BFFFBFFRLR
BFBFFFBLRR
BFBBFBFRLR
BBFFFFFRLR
BFFFBBFLLL
BBBFFFFLRL
BBFFBBBLLL
FBFFBFBRRL
BFBBBBBRLR
FBBFFFBLLL
FBBBFBFLRR
BBFBBBFLLL
FFBFFBBLLR
BFFFBBFLRR
BBBBFFBRRR
BBFFFFBRRL
FBFFFBFLLL
BBFFBBFLLL
BFFFFFFRRL
FBBFFBBRLL
FFBBFBFRRL
BBBFFBBRLL
BFBFBBFRRR
FFBFFFBLRL
BFFFFBBRRR
FFFBBFBRRL
BBBFFBFLRL
BFFBBFBLLR
FFFBFFBLRL
FBBBFBBRLL
BFBBFBBLLR
FBBFFFFLLR
FFBFBFBRRL
FBBFFBBLLL
BBBBFFFLLL
FBBBBBBLRR
FFFBBBBRLR
FBBBBFFRRL
BBFFBBBRRL
FBBFFFFRLR
FFBFBFFLRL
FBFFFBFRRR
FBBFBBFLLR
FBBBBBFLLL
FFBFBFFRLL
FFBFFFFLRR
FFBBBBFLRR
FFFBFBBLLR
BBBFBFBLRR
FFBBFBBRLR
FBFFFFBLLR
BBFBFBBRLR
FBBFFFFLLL
BBBBFBBLLR
BFBBBBFRRR
BBBFBFFRRR
BFFBBBBLRL
BBBFBBBRRR
FBFFBFFLLL
FFBFBFFRRL
BBBBFFBRLR
BFBBFFFRRL
FFBFFFBRLL
BBBBFBFLRL
FBBBFBBLRL
FFBBBFFLLL
FFFBFFBLLR
BFBBFBBLRR
FFBFBBBLRL
BFBBFFFLRR
FFFBFFFLLR
BFBBBBFLLR
BFFBFBFRLL
BFFBFBBRLL
BBFBFFFLRR
BBBFBBFLLR
FBFBFFFLRL
FBFFBFBLLL
FFFBFFBLRR
BFFFBFFRLL
BBFFBBFLLR
BBFFBBBLRL
FBFBBBBLLL
FBBFBBBLRR
FBBBBBFLRR
FBBBBBBLRL
FBFBBFBLLL
FFFBFFBRLL
FBFBBFBLRR
FBBFFBFRLR
BBFFFFFRLL
FFBBFBBRRL
BFBFBBBRLL
BBBFFFFLLR
FBFFFBFRLR
BFFFBFFLLL
BBBFFFBRLL
FBBBBFBLLR
FBBFBFBLLL
BBFBFBFLRR
BFBFBFBLRL
FBBBBBBRRL
BFBFFFFRLL
BBBFBBBLLL
BFBFFFBRLR
FFFBBBBRRR
FFBFFFBRRL
FBFBBBBLRL
BBFBBFBRRL
BBBFFBBLRL
FBFBFBBLLL
FBBBBBBRRR
FFFBFBBRLR
FBFFBFBRRR
FFBBFBBLRL
BBFBBBBLRR
BFFFFFFRRR
BBFFBFBLRR
FFFBBBFLRR
BBFFBBFLRR
BFBFBFFRLR
FBFBFFBRLL
FFBFFFFLLL
FBFBFFBLLR
BFFFFBBLRR
FBBBFFFRRR
FFFBFFFRRL
FBFBBBFRRL
FBBFFFBLRL
FBBBFFBRRL
BBBFBBFLRR
BFBBFBFRRR
FFBFFBFRLL
BBBFBBBRRL
FBBFBFFLRL
BBBFBFFRLL
FFBBBFBLLL
BFFFFFFLRL
FFFBFFFLRL
FBFBBFFLRL
BFFBFBFLRR
BBBFFFFRRR
FBFBBBFLLL
BFFBFBFRRL
BFFFFBFRLR
BFBBBFFLRL
FBBBFBFRRL
BFBBFBFLLR
BFBFBBBLRR
FFFBBBBLLR
FBFBBBBLRR
BFFBFFFLLR
BBFBBFFLRR
BBBBFBBRLR
FFFBBFBLLR
FFFBFBFLLL
BBFBBFFLRL
BFBBFFBRLL
BFBFFFBRRR
FFFBFBFLRR
FFFBBFFRLL
FFBBBBFRLL
BFBBBFFRRR
FBBFBBFRRL
BBFBBBFRLR
FBFBFBBLRL
FBFBFFFLLR
BFFFFBBRLL
BFFFBBBRRR
FBBFBFBRRR
FBFBFBBLRR
BFFBFFBLLL
FFBFFFBLLR
FBBBBBFRLL
FFFBBBFRRR
FFFBFFBRRL
BBFBBBBLLL
BBBBFBBLRL
BBFFFFBRLL
BFFFBBBRRL
FBBBFBFRLL
BFFBBFFRRR
BFFFFFBLRL
FBFBBFFLLR
BFBBBFBRRL
BBFBBFBRLR
BBBBFBFLLR
FBBBFBBRLR
FBFBFBFLRL
BBBFFBBRLR
BBBBBFFLLL
BFFBFBBRRL
BBFFBBFRLR
BFBBBBBLRR
FFBFFBFRRR
BFFFBBBLLR
BFFFBFBRRL
BFFFBFFLLR
FBBFBBFLRR
BBBFFFBRLR
BBBBFBBRRR
BFBFBFBRRR
BBBFBBBLLR
FBBFBFFRLL
BBBFBBFRRR
FFBFBBFRLL
BFFBFFBRLL
FBFBBFBLRL
BBBFBFBRRR
BFFFBBBRLR
BFFBFBFRRR
FFBFBFBRRR
BFBFBBBRLR
BBFFBFBLLR
FFBFFFFRRR
BFBBFFFLLL
BFFFFBBLRL
FBFFBFFLRR
BFFBFFFRLL
BBFBFFBRRL
FBBFFBFLRL
FBBFBFFLLL
FBFFFBFLRR
FBFBFFBRRR
FBBBBFFLLL
BFBFBBBRRR
BBFBFBFLLR
FFBBBFBRRL
BBFBFFBLLL
FBBBBFFRRR
FFFBFBBLRR
FFFBBBFRLR
BBBFFFBRRL
FFBBFBBLRR
FFBBFBFRLL
BBBFFFBRRR
BBFBBFFRLL
FBBFFBFLLL
FBFBBFFRLL
FFBBFBFRRR
BBBBFFBLLR
FBFFBBFLLL
FBFBBFBLLR
FFBBFFFRRR
BBBFBBFRLL
BFFBBFBRLL
FBBBBBBRLL
FBBFFFBRLR
FFBBBBBLRL
BFBBFBBLRL
BBFBFBFRLR
BFBFBBFLRR
FFBFBBFRRR
FFBFFFFLRL
BBFBFFBRRR
BBFBFBFLRL
FFBFFBBRLL
BBFFBFBLLL
BBFFBBBLLR
FBBFBFFLLR
FBBBBFBRLL
BBFFFFFLLL
BBFBFFFRRL
BBFFFBFRRR
BBBFBFFLLR
FFBBBFBLLR
FBFBBBBLLR
BBFFFFFRRL
FBFBFBFRLR
FFBFBBBRRL
FFFBBFFRRL
FFFBBBFLLL
BFBFFFFRLR
BFFBBBFRRL
BFFFBBFLLR
BFFBFFBRRL
BBFBBBBRLL
BBFBFBBRLL
BBFBBBBRLR
BFFFBBFRLR
FBBFFBBLRL
BBBBFBFRRL
BFFBFFBRRR
FFBBFFBLLR
FFBBBBFRLR
FBFFBBBLLR
FFBBFFBRRL
FBFBFFFRLR
BFFBFFBLLR
FBFFFBBLLL
BFBBFFFLRL
FFFBBFFRRR
BFBBFFFRLR
BFBFFBBRLL
BBFFFFBRRR
FBFFFFFLRL
BFFBBBFLRL
BFBBBFBLRR
FFBFFBBLLL
BFBFBBBRRL
FBBBFBBLLR
BFFFBFFRRL
FBBFFBBLLR
BBFFFFBLLR
BFBBFBFRLL
FBFBBBFLRL
BFFBFFFLLL
BBBBFBBRLL
BBBFBBFRLR
FBFFBBBRLL
FBFBBBFLLR
BFBBFFBRRL
FBBFFFFLRL
BFFBBBBRRL
FBFBFBFRLL
BFFBBBFLLR
FBFBFFBRRL
BBFBFBBRRR
FFFFBBBRLR
BBFFFBFRLR
FBBBFFFRLR
FBBBBFFLRR
BBFFFBFLRR
FBFBBFBRLL
BBFFFBBRRL
FFFBBBBLRL
BBFBBFBRLL
FBBBFFFRRL
BFBFBBBLRL
FFFBBBBRLL
BBFFFFFLRL
BBBBFBBLRR
BFBBBBBRRR
BBFFBFBRRR
BFFFBFBLRL
BFBFFBBLLL
BBFFFFFLLR
BFBBBFBRLR
FBFFBFBLRL
FFBFBFBLLR
FBBFBBBRRL
FBFBBBBRRL
BFBFBFFLLL
FBFFFFFRRR
BBFBBBFLRL
FFBFFFFRRL
BBFBFFBLRL
FFBFFFFLLR
FBFFBBBLLL
BBBBFBFRLR
BBBFFBBLLR
FFBBBBFLLL
FBBBBFBRRR
FBBBBBFRLR
FFFBBBFLRL
BBFFFBFLLL
FBFFBFBRLR
FFBBFBFLRL
FFFBBFFLLR
FFFBFFFRLR
BFBFFBBRRL
BBFFBFFRRR
FFFBFBBRRR
BFBFBFFLLR
FBBBFFBLRL
FFBBBBFRRL
BBFBFBBLRR
FFBBFFBRRR
BFBBBBFLRR
BFFBBBBLRR
FBBBBFFLRL
FBBFFFFRRL
FFBBFBFLRR
FFBBBFBRLL
FFFBFBFRRL
FFBBFFFLLL
FBBFBFFRRL
BBFFFBBRRR
BBBFFBFRLR
BFBFFBFRLL
FBBFFFBLLR
BFBBBBBRRL
BFBBFBFLLL
BBBFBFBRRL
FBFFFBBRLL
FBBFBFFRLR
BFFBBBFLLL
FFFBFBBRLL
BBBBFFFRRL
FBFBBFFLRR
BFFFFBBRRL
BBFBBFFRLR
FBFFBFFLLR
BBBFFBFLLL
BFBBBBBLRL
BFFFBFBLLL
BFBFBBBLLR
BBBFFFFLRR
FBBBBBFRRR
FBBFBFFRRR
BBFBFBFRRR
FFFBFFFLLL
FBFFBBBRRL
BBFBBBBLLR
FBFBFBBRRR
FFFBFBBLLL
FFBBBFFRRR
BBBFFFFRLR
BFBFFFFLLR
FBFFFFBRLL
FBBFFBFLRR
BFFBFFFRRL
BBFBFBBLRL
FFFBBFFLLL
BFBBFFBRRR
FFBBBBBLRR
BBBFFFBLLL
FFBFFFBLRR
FFFBFBFRRR
FFFBBFBLRR
FBFFBBFRLR
BFBBFFFLLR
BFFBFFBLRR
FBFFBBFRRR
FFBBFFBRLL
FBFBFBFLLR
FBBFBBFLLL
BFBBBBBRLL
FBFFBFBLLR
BFBBFBFLRL
BFBBBFFRRL
BBBFBFFRRL
FFBBBFFLRR
FBBBFFFRLL
FFFBBFBRLL
BFFBBFBRRL
BFBFBBFLLR
FFBFBBFRRL
FBBBBFFLLR
FFFBFFFRRR
BBBFFFBLLR
BBBFBBBLRR
BBFBBFBLLL
FFBBBFBLRR
BFBFFBFLRR
BFFBBFBLRL
BFBBFFBLLR
FBFFBBBRRR
BBBFBBFLRL
BFBFBFFRRL
BBBFBBBLRL
FBFBBBBRLL
BFFFFBFRRL
BFFFFFBRLL
BFFFFBFLRL
FBBFFBFRLL
BBBFBFBLLR
BBBFBBBRLR
BFFBFFFLRR
BFFBFBBLLR
FBFBBFFRRL
BBFBFBBLLR
BFFFFFBLLL
BFFBBFFLLR

View file

@ -1,11 +0,0 @@
..##.......
#...#...#..
.#....#..#.
..#.#...#.#
.#...##..#.
..#.##.....
.#.#.#....#
.#........#
#.##...#...
#...##....#
.#..#...#.#