refactor: massive refactor to have only one binary to call

This commit is contained in:
Kharec committed 2025-11-26 14:04:13 +01:00
1 parent 314da54495
commit 3723f84d1a
41 files changed
+272 -188

No files matched your search

+79
View File
@@ -0,0 +1,79 @@
package dayfive
import (
"advent-of-code/internal/registry"
"os"
"strings"
)
func init() {
registry.Register("2020D5", ParseInput, PartOne, PartTwo)
}
func calculateSeatID(pass string) int {
if len(pass) < 10 {
return -1
}
rowStr := pass[:7]
columnStr := pass[7:10]
row := 0
for idx, char := range rowStr {
if char == 'B' {
row |= 1 << (6 - idx)
}
}
column := 0
for idx, char := range columnStr {
if char == 'R' {
column |= 1 << (2 - idx)
}
}
return row*8 + column
}
func ParseInput(filepath string) []string {
content, _ := os.ReadFile(filepath)
return strings.Split(string(content), "\n")
}
func PartOne(input []string) int {
maxSeatID := 0
for _, pass := range input {
seatID := calculateSeatID(pass)
if seatID > maxSeatID {
maxSeatID = seatID
}
}
return maxSeatID
}
func PartTwo(input []string) int {
seatIDs := make(map[int]bool)
minSeatID := 1000
maxSeatID := 0
for _, pass := range input {
if len(pass) < 10 {
continue
}
seatID := calculateSeatID(pass)
seatIDs[seatID] = true
if seatID < minSeatID {
minSeatID = seatID
}
if seatID > maxSeatID {
maxSeatID = seatID
}
}
for seatID := minSeatID + 1; seatID < maxSeatID; seatID++ {
if !seatIDs[seatID] && seatIDs[seatID-1] && seatIDs[seatID+1] {
return seatID
}
}
return 0
}
+35
View File
@@ -0,0 +1,35 @@
package dayfive
import "testing"
func TestPartOne(t *testing.T) {
input := []string{
"FBFBBFFRLR",
"BFFFBBFRRR",
"FFFBBBFRRR",
"BBFFBBFRLL",
}
expected := 820
got := PartOne(input)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
input := []string{
"FFFFFFFLLL",
"FFFFFFFLLR",
"FFFFFFFLRL",
"FFFFFFFLRR",
"FFFFFFFRLR",
"FFFFFFFRRL",
"FFFFFFFRRR",
}
expected := 4
got := PartTwo(input)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+154
View File
@@ -0,0 +1,154 @@
package dayfour
import (
"advent-of-code/internal/registry"
"os"
"strconv"
"strings"
)
func init() {
registry.Register("2020D4", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []string {
content, _ := os.ReadFile(filepath)
text := string(content)
passports := strings.Split(text, "\n\n")
result := make([]string, 0, len(passports))
for _, passport := range passports {
passport = strings.TrimSpace(passport)
if passport == "" {
continue
}
passport = strings.ReplaceAll(passport, "\n", " ")
passport = strings.Join(strings.Fields(passport), " ")
result = append(result, passport)
}
return result
}
func PartOne(data []string) int {
count := 0
required := []string{"byr", "iyr", "eyr", "hgt", "hcl", "ecl", "pid"}
for _, passport := range data {
fields := strings.Fields(passport)
present := make(map[string]bool)
for _, field := range fields {
if idx := strings.Index(field, ":"); idx != -1 {
present[field[:idx]] = true
}
}
missing := false
for _, field := range required {
if !present[field] {
missing = true
break
}
}
if !missing {
count++
}
}
return count
}
func PartTwo(data []string) int {
isNumberInRange := func(value string, min, max int, digits int) bool {
if len(value) != digits {
return false
}
n, err := strconv.Atoi(value)
if err != nil {
return false
}
return n >= min && n <= max
}
isValidHeight := func(value string) bool {
if len(value) < 3 {
return false
}
unit := value[len(value)-2:]
number := value[:len(value)-2]
n, err := strconv.Atoi(number)
if err != nil {
return false
}
if unit == "cm" {
return n >= 150 && n <= 193
}
if unit == "in" {
return n >= 59 && n <= 76
}
return false
}
isValidHairColor := func(value string) bool {
if len(value) != 7 || value[0] != '#' {
return false
}
for _, c := range value[1:] {
if !((c >= '0' && c <= '9') || (c >= 'a' && c <= 'f')) {
return false
}
}
return true
}
isValidPID := func(value string) bool {
if len(value) != 9 {
return false
}
for _, c := range value {
if c < '0' || c > '9' {
return false
}
}
return true
}
validECL := map[string]bool{
"amb": true, "blu": true, "brn": true, "gry": true,
"grn": true, "hzl": true, "oth": true,
}
required := []string{"byr", "iyr", "eyr", "hgt", "hcl", "ecl", "pid"}
count := 0
for _, passport := range data {
fields := map[string]string{}
for field := range strings.FieldsSeq(passport) {
parts := strings.SplitN(field, ":", 2)
if len(parts) == 2 {
fields[parts[0]] = parts[1]
}
}
passportValidators := map[string]func(string) bool{
"byr": func(v string) bool { return isNumberInRange(v, 1920, 2002, 4) },
"iyr": func(v string) bool { return isNumberInRange(v, 2010, 2020, 4) },
"eyr": func(v string) bool { return isNumberInRange(v, 2020, 2030, 4) },
"hgt": isValidHeight,
"hcl": isValidHairColor,
"ecl": func(v string) bool { return validECL[v] },
"pid": isValidPID,
}
valid := true
for _, key := range required {
value, ok := fields[key]
if !ok || !passportValidators[key](value) {
valid = false
break
}
}
if valid {
count++
}
}
return count
}
+27
View File
@@ -0,0 +1,27 @@
package dayfour
import "testing"
var testInput = []string{
"ecl:gry pid:860033327 eyr:2020 hcl:#fffffd byr:1937 iyr:2017 cid:147 hgt:183cm",
"iyr:2013 ecl:amb cid:350 eyr:2023 pid:028048884 hcl:#cfa07d byr:1929",
"hcl:#ae17e1 iyr:2013 eyr:2024 ecl:brn pid:760753108 byr:1931 hgt:179cm",
"hcl:#cfa07d eyr:2025 pid:166559648 iyr:2011 ecl:brn hgt:59in",
}
func TestPartOne(t *testing.T) {
expected := 2
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 2
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+50
View File
@@ -0,0 +1,50 @@
package dayone
import (
"advent-of-code/internal/registry"
"os"
"strconv"
"strings"
)
func init() {
registry.Register("2020D1", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []int {
content, _ := os.ReadFile(filepath)
lines := strings.Fields(string(content))
var data []int
for _, line := range lines {
num, _ := strconv.Atoi(line)
data = append(data, num)
}
return data
}
func PartOne(data []int) int {
seen := make(map[int]bool)
for _, number := range data {
complement := 2020 - number
if seen[complement] {
return number * complement
}
seen[number] = true
}
return 0
}
func PartTwo(data []int) int {
seen := make(map[int]bool)
for idx := range data {
for _, number := range data[idx+1:] {
complement := 2020 - data[idx] - number
if seen[complement] {
return complement * data[idx] * number
}
}
seen[data[idx]] = true
}
return 0
}
+22
View File
@@ -0,0 +1,22 @@
package dayone
import "testing"
var testInput = []int{1721, 979, 366, 299, 675, 1456}
func TestPartOne(t *testing.T) {
expected := 514579
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 241861950
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+70
View File
@@ -0,0 +1,70 @@
package daysix
import (
"advent-of-code/internal/registry"
"os"
"strings"
)
func init() {
registry.Register("2020D6", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []string {
content, _ := os.ReadFile(filepath)
return strings.Split(strings.TrimSpace(string(content)), "\n")
}
func PartOne(input []string) int {
total := 0
groupAnswers := make(map[rune]bool)
for idx, line := range input {
if line != "" {
for _, char := range line {
if char >= 'a' && char <= 'z' {
groupAnswers[char] = true
}
}
}
if line == "" || idx == len(input)-1 {
total += len(groupAnswers)
groupAnswers = make(map[rune]bool)
}
}
total += len(groupAnswers)
return total
}
func PartTwo(input []string) int {
total := 0
groupAnswers := make(map[rune]int)
groupSize := 0
for idx, line := range input {
if line != "" {
groupSize++
for _, char := range line {
if char >= 'a' && char <= 'z' {
groupAnswers[char]++
}
}
}
if line == "" || idx == len(input)-1 {
for _, count := range groupAnswers {
if count == groupSize {
total++
}
}
groupAnswers = make(map[rune]int)
groupSize = 0
}
}
return total
}
+38
View File
@@ -0,0 +1,38 @@
package daysix
import "testing"
var testInput = []string{
"abc",
"",
"a",
"b",
"c",
"",
"ab",
"ac",
"",
"a",
"a",
"a",
"a",
"",
"b",
}
func TestPartOne(t *testing.T) {
expected := 11
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 6
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+52
View File
@@ -0,0 +1,52 @@
package daythree
import (
"advent-of-code/internal/registry"
"os"
"strings"
)
func init() {
registry.Register("2020D3", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []string {
content, _ := os.ReadFile(filepath)
return strings.Split(string(content), "\n")
}
func PartOne(input []string) int {
trees := 0
column := 0
for row := range input {
if len(input[row]) == 0 {
continue
}
if input[row][column%len(input[row])] == '#' {
trees++
}
column += 3
}
return trees
}
func PartTwo(input []string) int {
result := 1
slopes := [][]int{{1, 1}, {3, 1}, {5, 1}, {7, 1}, {1, 2}}
for _, slope := range slopes {
trees := 0
column := 0
for row := 0; row < len(input); row += slope[1] {
if len(input[row]) == 0 {
continue
}
if input[row][column%len(input[row])] == '#' {
trees++
}
column += slope[0]
}
result *= trees
}
return result
}
+34
View File
@@ -0,0 +1,34 @@
package daythree
import "testing"
var testInput = []string{
"..##.......",
"#...#...#..",
".#....#..#.",
"..#.#...#.#",
".#...##..#.",
"..#.##.....",
".#.#.#....#",
".#........#",
"#.##...#...",
"#...##....#",
".#..#...#.#",
}
func TestPartOne(t *testing.T) {
expected := 7
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 336
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+77
View File
@@ -0,0 +1,77 @@
package daytwo
import (
"advent-of-code/internal/registry"
"os"
"strconv"
"strings"
)
func init() {
registry.Register("2020D2", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []string {
content, _ := os.ReadFile(filepath)
lines := strings.Split(string(content), "\n")
var data []string
for _, line := range lines {
data = append(data, line)
}
return data
}
func PartOne(data []string) int {
valid := 0
for _, line := range data {
if line == "" {
continue
}
parts := strings.Split(line, ": ")
policy := parts[0]
password := parts[1]
policyParts := strings.Split(policy, " ")
rangeStr := policyParts[0]
letter := policyParts[1]
rangeParts := strings.Split(rangeStr, "-")
min, _ := strconv.Atoi(rangeParts[0])
max, _ := strconv.Atoi(rangeParts[1])
count := strings.Count(password, letter)
if count >= min && count <= max {
valid++
}
}
return valid
}
func PartTwo(data []string) int {
valid := 0
for _, line := range data {
if line == "" {
continue
}
parts := strings.Split(line, ": ")
policy := parts[0]
password := parts[1]
policyParts := strings.Split(policy, " ")
rangeStr := policyParts[0]
letter := policyParts[1]
rangeParts := strings.Split(rangeStr, "-")
firstPosition, _ := strconv.Atoi(rangeParts[0])
secondPosition, _ := strconv.Atoi(rangeParts[1])
atFirstPosition := len(password) >= firstPosition && password[firstPosition-1] == letter[0]
atSecondPosition := len(password) >= secondPosition && password[secondPosition-1] == letter[0]
if atFirstPosition != atSecondPosition {
valid++
}
}
return valid
}
+26
View File
@@ -0,0 +1,26 @@
package daytwo
import "testing"
var testInput = []string{
"1-3 a: abcde",
"1-3 b: cdefg",
"2-9 c: ccccccccc",
}
func TestPartOne(t *testing.T) {
expected := 2
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 1
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+43
View File
@@ -0,0 +1,43 @@
package dayone
import (
"advent-of-code/internal/registry"
"os"
"strconv"
"strings"
)
func init() {
registry.Register("2021D1", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []int {
content, _ := os.ReadFile(filepath)
var data []int
for line := range strings.SplitSeq(string(content), "\n") {
num, _ := strconv.Atoi(line)
data = append(data, num)
}
return data
}
func PartOne(data []int) int {
count := 0
for i := 1; i < len(data); i++ {
if data[i] > data[i-1] {
count++
}
}
return count
}
func PartTwo(data []int) int {
count := 0
for i := 3; i < len(data); i++ {
if data[i] > data[i-3] {
count++
}
}
return count
}
+22
View File
@@ -0,0 +1,22 @@
package dayone
import "testing"
var testInput = []int{199, 200, 208, 210, 200, 207, 240, 269, 260, 263}
func TestPartOne(t *testing.T) {
expected := 7
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 5
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+117
View File
@@ -0,0 +1,117 @@
package daythree
import (
"advent-of-code/internal/registry"
"os"
"strings"
)
func init() {
registry.Register("2021D3", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []string {
content, _ := os.ReadFile(filepath)
return strings.Split(strings.TrimSpace(string(content)), "\n")
}
func PartOne(data []string) int {
bitlen := len(data[0])
ones := make([]int, bitlen)
for _, line := range data {
for i := range bitlen {
if line[i] == '1' {
ones[i]++
}
}
}
var gamma int
total := len(data)
for idx := range bitlen {
gamma <<= 1
if ones[idx] > total-ones[idx] {
gamma |= 1
}
}
mask := (1 << bitlen) - 1
epsilon := mask ^ gamma
return gamma * epsilon
}
func PartTwo(data []string) int {
bitlen := len(data[0])
oxygenIndices := make([]int, len(data))
for idx := range oxygenIndices {
oxygenIndices[idx] = idx
}
co2Indices := make([]int, len(data))
for idx := range co2Indices {
co2Indices[idx] = idx
}
for indice := 0; indice < bitlen && len(oxygenIndices) > 1; indice++ {
ones := 0
for _, idx := range oxygenIndices {
if data[idx][indice] == '1' {
ones++
}
}
target := byte('1')
if ones*2 < len(oxygenIndices) {
target = '0'
}
writeIdx := 0
for readIdx := 0; readIdx < len(oxygenIndices); readIdx++ {
if data[oxygenIndices[readIdx]][indice] == target {
oxygenIndices[writeIdx] = oxygenIndices[readIdx]
writeIdx++
}
}
oxygenIndices = oxygenIndices[:writeIdx]
}
for idx := 0; idx < bitlen && len(co2Indices) > 1; idx++ {
ones := 0
for _, indice := range co2Indices {
if data[indice][idx] == '1' {
ones++
}
}
target := byte('0')
if ones*2 < len(co2Indices) {
target = '1'
}
writeIdx := 0
for readIdx := 0; readIdx < len(co2Indices); readIdx++ {
if data[co2Indices[readIdx]][idx] == target {
co2Indices[writeIdx] = co2Indices[readIdx]
writeIdx++
}
}
co2Indices = co2Indices[:writeIdx]
}
oxygenRating := 0
for _, char := range data[oxygenIndices[0]] {
oxygenRating <<= 1
if char == '1' {
oxygenRating |= 1
}
}
co2Rating := 0
for _, char := range data[co2Indices[0]] {
co2Rating <<= 1
if char == '1' {
co2Rating |= 1
}
}
return oxygenRating * co2Rating
}
+35
View File
@@ -0,0 +1,35 @@
package daythree
import "testing"
var testInput = []string{
"00100",
"11110",
"10110",
"10111",
"10101",
"01111",
"00111",
"11100",
"10000",
"11001",
"00010",
"01010",
}
func TestPartOne(t *testing.T) {
expected := 198
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 230
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+60
View File
@@ -0,0 +1,60 @@
package daytwo
import (
"advent-of-code/internal/registry"
"os"
"strconv"
"strings"
)
func init() {
registry.Register("2021D2", ParseInput, PartOne, PartTwo)
}
func ParseInput(filepath string) []string {
content, _ := os.ReadFile(filepath)
return strings.Split(string(content), "\n")
}
func PartOne(data []string) int {
horizontal := 0
depth := 0
for _, line := range data {
parts := strings.Split(line, " ")
direction := parts[0]
amount, _ := strconv.Atoi(parts[1])
switch direction {
case "forward":
horizontal += amount
case "down":
depth += amount
case "up":
depth -= amount
}
}
return horizontal * depth
}
func PartTwo(data []string) int {
horizontal := 0
depth := 0
aim := 0
for _, line := range data {
parts := strings.Split(line, " ")
direction := parts[0]
amount, _ := strconv.Atoi(parts[1])
switch direction {
case "forward":
horizontal += amount
depth += aim * amount
case "down":
aim += amount
case "up":
aim -= amount
}
}
return horizontal * depth
}
+29
View File
@@ -0,0 +1,29 @@
package daytwo
import "testing"
var testInput = []string{
"forward 5",
"down 5",
"forward 8",
"up 3",
"down 8",
"forward 2",
}
func TestPartOne(t *testing.T) {
expected := 150
got := PartOne(testInput)
if got != expected {
t.Errorf("PartOne() = %d, want %d", got, expected)
}
}
func TestPartTwo(t *testing.T) {
expected := 900
got := PartTwo(testInput)
if got != expected {
t.Errorf("PartTwo() = %d, want %d", got, expected)
}
}
+881
View File
@@ -0,0 +1,881 @@
FFBBBFFLRL
BFFBFBFRLR
FFFBBFBRRR
BFFBBBBRRL
FFFBBFBLLR
BBFBFBFLLR
FBBFFBFLRL
BFBFBBFLLL
FBFBBFBLRR
FFFBBBBRLR
FFFFBFFRRL
BFFFBFBLRL
BBFFFBBRLL
FFBFFFBLRL
FBFBFFFRLL
BFFBBBFRRL
BFFFBBFRLR
BBBFFFBRLL
FBBBFFBRLL
FFFBFFBRLL
BBFBFBFLLL
BFFBFFFLRL
BBFBBFFLRL
FBFBBBFRRR
FBBBBFBRRL
FBBFFFFLRL
FFFBBFBLRL
BFFFFFFLLR
FFBFFBBRRR
FFFFBBBRLR
FFFBFFFLRR
FBBFBBFLLL
FBBFBBBRLR
BFFBFFFLLR
FFBFBFFRLL
FFFFBBFLRR
BBFBBBFLRR
BFBFBBBRLR
BFFBBFFLRL
BFFBFFFLLL
FBFFFBFLRR
FFFBBBFRLR
FBBFBBFRLL
BBFFFBBLLL
BBFFFFFLLL
FBFFBBBLLL
FBFFFBFLRL
FFBFBBFLLL
BFFBBFBLLR
BFBBBFFRRR
BFBBBBBLLR
FBFFFFFRLR
BBFFBFFLLR
FFBFBFFLLR
BBFBBBFRRL
FFFBFFFRLR
FBFBFFFLRL
BBFFFFBLLL
FFBBFFFLRL
BBFFBFBRRR
FBBFBBBLLR
BFFFBFBRRR
BBFFFFFLRL
FBFBBFBRRR
FFFBBBBLRR
FBBFBFFLLR
BBFBFFFRLR
BBFFFFBRLR
FBFBFFBRLR
FFFBBFFLLR
FBBFFFFLRR
BBFFBBBLLR
BBFFFFBRRL
BFBBBBBRRL
FBBBFFBRLR
FFBBBFBRLR
BFBBBBBRLR
FBFBBBFRLR
BBFBBFBRRR
FFBFFBBLRR
FFBBBBFLLR
BFFFBBBLRL
FBBFBFFLRL
FBFFBFFRRL
FBBBFFFRRR
FFBBFBFRLL
FBBFBBBLLL
FFFFBFFRLR
BBFBBBFRLR
FBFBBBBLRL
FFFFBBBLRL
BFFBBFBRRL
BBFFFBFRLR
FBFFBFFRRR
BBFBBFBRLL
FBBFBFFRRR
BFFFBFBLRR
FFFBBFBLRR
FFBFBFFRRL
FFBBBBBRLR
FBBBBBBLLR
BBFBFBBRRL
FBBFFFFRLR
BFBBBBFRRL
FBBFFBFLRR
FFFBBBBLRL
BBFFBBFLRR
BFBFFBBRLL
FFBBBBBLRR
BBBFFFFRRR
BFFFFBFRRR
FBFFFFBLRR
FBBBBBFLRR
FFBBBBFRRR
FFBFBFFLLL
FBFBFFFLLR
BFBBBBFLLL
FBBFBBFRLR
FFFBFBFLLL
FBBFBBFLLR
FBFFFFFRRL
BFFBBBBRLL
BFFBFFBLRR
FBBFFFBLLR
FBBFBFBLLL
BFFFBFBRLR
FBFBFBBRLR
FBFFFBFRRR
BFFBBFFRRR
BFBFFFBRRL
BFFBFBBRRL
BBFFBFBRRL
FBBBBFBRRR
FFFBBBBRRL
BFFFFBFLLL
FBBBFBFLLR
BBFFBFFRLR
FBBFBFFRLR
BFFFBFFLRR
FBBFFBFLLL
FFBBFFBRRR
FFBFFFBLRR
FFBFBBBRLR
BBFBBFFLLR
BBFFFBFLRR
FFFBBBFLRR
FBFFFBFLLR
BBFBFBFLRL
BFBFBBBLRR
BFFBBFFRLR
FBFBBBBRLL
BBFFBBBLRL
BBFFFBFLLR
BBFFBFFRLL
FFFFBFBRRR
BFBFFBBLRR
BFBBBBBRLL
FBBFFFFRRR
BFFFBBBRRL
BFFBFBFLRL
FFFFBFFRLL
FBFFFFBRRL
BBBFFFBRRL
BFBBFFFLLL
FFFFBBBRRL
FBFFBBBRLR
FFBFFFFRLL
BFFBBBBRRR
BBFFBBFRRL
BFBBBFBLLL
FBBBFBBLLL
FBFBFFFLLL
BFBFFFFRLR
FFBFFBFLLR
BFFBFBBRLL
BFBBBFFLLL
FBBFBFFRLL
FFBFBBFLLR
FBFBFBBRRL
BFBFBFFLRL
FFBFFFFRRL
BFFBFFFRLR
BFFFBBBLRR
BBFBFBBLLR
BFFBFBFLLR
BFBBFBFRRR
FBFBFFBLRR
BBFBBBBRRL
BFFFBFFLLR
FFFFBBFRRL
FFFBFFBRRL
FBFFFBBRRR
BFBBBBFLLR
BBFBFBFRRL
FFFBBFFLRL
BBBFFFFLRL
FFFBFFFRRL
FBFBFFFLRR
FFBFBBFLRL
BBFBFBFRLR
BBFBBFFRLR
FBBFBFBRRR
FBFFFBBRLR
BBFFBBBRLL
BFFBFFBLLR
FBBBFBBLRL
FFFBFFFRRR
BFBBBFFLLR
FBBFFFFLLL
BFBBFBFRRL
FBBFFBBRRR
BFBFFFBLRL
BBBFFBFLLL
FFBFFBFRRL
FBFFBFBRRL
BFFFFBFRLL
FFBFFFBRLL
FFBBFFBLLL
BFFBBFFLLL
FBFFFFBLRL
BFBFFBFLLR
FFFFBBBLRR
BFFBFBBRLR
FBBBFFFRRL
BBFBFBBLLL
FFBBBFBRRL
BBFBFFBLRR
FBFBFFBLRL
BBFBBFBLRL
BFBBFFBRRL
FFBBBFBLLL
FFBFBBFRLL
BFFFFBBLLL
FBBBFBBLRR
FBFBBFBLLL
FFBBBBFRRL
BBFBBBBLLL
FBFBBBBLLR
BFFFBFBLLR
FBBBFFFRLR
FFBBBFBRRR
BBFFFFBLLR
BBFFBBBLLL
BBFFBBFLRL
BBBFFFBLRR
BBBFFFFRLL
BFBFFFFRRR
BFFFBFBRRL
FBBBBBBLRL
FFBFBBBRRL
FFBFBFFLRL
FFBBFFFLLL
BBFFBFBLLR
BFBBBFBRLL
FFBBBFBRLL
FBFBBFBRRL
FBFFBFFLLR
BBBFFFBRRR
BBFBBBBLRR
BBFFBBBRLR
FBBBBFFRRR
BFFFFBBLRR
FFBFFBBRRL
FBFBBBFRLL
BBFBFBBLRL
BFBBFBBRRR
BFBBFBBRLR
FFFBFBBLLR
FFFBFFFLLR
BFFFBBFLRL
FBFBBFFLRL
BFBFBBBRRL
BBFBFBBRRR
BBFFBFBRLR
BFBFBFBRLL
FBBFBFBLRL
FFBBFBBRRL
FFBFFFBLLL
FBBBFFBRRL
BFBBFFBLRL
FFFBBBBRLL
FBFBFBFLRR
FFFBFBFLRL
BFBBBBBLRR
BBFFBFFLLL
FFFFBFFLRR
FFBBFFBRLR
FBBBFFBLRR
FBBBBFBLRL
FBFFBBFRLR
FFBFBFFRRR
FBFFFBFRLL
FFFBFBFRRR
BFFFBFFRRL
FFFBFBFLRR
BBFFBFFLRL
BBBFFBFLLR
FFFBFFBLRL
BFBBBBFRRR
BFFBFFFLRR
FBFFFFBRRR
BFFBFFFRLL
FBFFBFFRLL
FFFBBBBLLR
FFFBBBFLLR
BFBBBFFLRR
BBBFFFFRRL
FFFBBFFRRR
BBFFBBBLRR
FFBFFFBRRR
BFFBFFFRRL
BFFBFBFRRL
BBFFFBFLLL
FBFBFFBRRL
BFBFFFBLLR
FFBBBBBLRL
FBFBBBBRRL
BFFBBFBLRL
FBBFBBFLRL
FFBFFFBRLR
FBFFFBFRRL
FFFFBBFRLL
BFBBFBFLRL
FFFBFFBLLR
FBBFBFBRRL
FFBFFFBLLR
FFBBBBFLLL
BFBBBBFLRR
FBFFFBFLLL
BBFBFFBRRL
FBBBFBBRRR
FFFBBBBLLL
FBBBBBFRRL
BFBBBBFRLR
BFFBBBFRLL
FBFFFFFLRR
BFBBBBFLRL
FBFBFBBRLL
BFFBBBBLRR
BFFFFFFLLL
BBBFFFFLLL
BFBFFFFRLL
FBBFBFFLLL
BFBFFBBRLR
BBFBFFFRRL
FBFBFFBRLL
FBFBBFBLLR
FBFFBFBRLR
FBBFFBBRLR
FBBFBBFRRL
FFBBFFBRLL
FBFFBFFLLL
BBFBBFFRLL
BFFFFBFRRL
FBFBFBFRLL
FFFBBFBRRL
BFFFBBFRRR
BFFBBBFLRR
FBBFFBFRLL
BBFBFBBLRR
BBFBBFBRLR
BFBFBBFRRL
FBBBFFFLRL
FBFBFFBRRR
BFBFBBFRRR
FFBBFBBLRL
BFFBFFBRLR
BFFFFFBRRR
BBFFBBFRRR
BBFFBBFRLL
FFBFFBFRLR
BBFBBBBRLR
BBFFBBBRRL
BFFFBFFLRL
BFBBFBFRLR
FFBBBBBLLL
FBBBBFFRLR
BFBFFFBLRR
BFBFFFFRRL
BFFBBBBLLL
BFBBFFFRLL
FFFBBBFLLL
BFFBBFBLLL
BFFFBBFRRL
FBBBFBBRRL
BFFFBBFLLL
BBBFFFFLLR
BFBBFFFLRL
BFFBBBBLLR
FBBFFFBRRR
BFBFFFFLLR
FBFFBFBLLR
FFBBFFBLLR
FBFBBBFLLL
BBFFFBBRLR
BFBFBFFLLL
FBFFFBBLRL
BFFFBFFRLL
FBBFFFBRRL
BFFFFBBRLL
BFBFBBBLLL
BFBFBFBLLL
FFFBBFBLLL
BBBFFFBLRL
BFBBFBBLLR
BFBFBFFRRR
BBFFFFBLRR
BFFFBBBRRR
FBFFFFFRLL
FFBFFFFRRR
BFBBFFFRRL
BFFFBBBRLL
FFBBFBBRRR
FFBFBFBRRL
FFBFBBFRLR
BFBFFBBLRL
FBBBBBFLLR
BFBFFBBRRL
FFBFFFFLLL
FFFBBFBRLL
FBFBBFFLLR
BFBBFFBRLL
FFBBFBBLLL
FBBBFBFLRR
FFBBFBBLLR
FFBFFFFLLR
BFBBFBBLLL
BBFFBBFLLL
FFBBFFFRRL
FBFBBBBLLL
FBBBBBFLLL
FBBBBFBRLR
BBBFFFFLRR
FBFBFBFLLL
BFBBFFFLRR
FFBBFBBRLL
FBBBBFBRLL
FBFBBFFLRR
FBBBBBFRLR
BFBFBBFLRL
BFBFBFFLRR
FBFBFBFRRR
BFBFFFBRRR
FBBFFFFLLR
BFBFBFBLLR
BFFFFFFLRL
FFFBBBFRRL
BFFFBFFLLL
FFBFBBBRRR
BBFFFFBRLL
FBBBFBFLRL
BFBBBFBLRR
BBFFFBBRRR
FBFFBBFRLL
BFBBFBBLRL
FBBFBBBRLL
BBFBBBFLLR
FFBFFFBRRL
BBBFFFBLLR
FFFFBBBLLL
BFFFBFBLLL
BFFBFBBLRL
FBBFFFBRLR
BFBFFBFRRR
FBBBFBBRLL
FBBBBBFRRR
FBFFFFBRLR
BFFBBBFRLR
BFBBFBFLLR
BFBFBFFRLR
FBFFBFBRRR
FBFFFBBLLL
BFBFBFBRRL
FFFFBFBRLL
FFFBBFFRLR
FFFFBFBLRL
FFFBFFBLLL
FBFFBFFRLR
FBBBFFFLRR
FBFBFFFRLR
FFBFBBFLRR
FFFBFBBLRL
BBFFBFBLRR
BFBFFBFLRR
FBBFFFFRRL
FBFBBFBRLL
FBBBBFFLRR
FBFFFFFLRL
BFBBBFFRRL
FBFFBBBLLR
BBFFFBFRRL
FBBFFBBLRL
BBFFFFFLRR
FBBFFBBRLL
FBBFFBFRRL
FFBFFBFRRR
FBBBBFFRRL
BFBFBBBLLR
FBFFFFFRRR
FFBBFBFRRL
BFBBBFBRLR
FFBBFFBRRL
BBFFBBFRLR
FFBFBBBLRR
FFFBFFFLRL
BBFBBFBLLR
FBBBFBBLLR
BFBBFBFRLL
BBFBFFBRRR
FFBFFBBLRL
BFBFBBBRRR
FBBBFBFRRR
FFBBFFFRLR
BBFBFFBRLR
FFBFBBBLLR
BBFBFFFLRR
BBFFFBBLLR
BFFFFBBLLR
BFFBBFBRRR
BFFBBBFLRL
BFBBFFBLLL
FFFFBFFRRR
FFFBFFBLRR
BFFBFFBLRL
BFBBBBBLLL
FFBFFBFLLL
BFBFBFBRRR
BFFFFFBLRR
BFFFBBFLRR
BBFFFFFLLR
FFFBFBBRRL
FBFFBBFRRL
BBFBBBFLLL
BBFFFFBLRL
BFFFFFFLRR
FBBBBBBLRR
BFFBBBFLLR
FFBFBBFRRR
BFBFBFBLRL
FBFFBFFLRL
FBBBBBBRLL
FFBBBFFLLL
BFBFFFBLLL
FBBFFBBLLL
BBFFBFFLRR
FBBBBBBRLR
FBFFBBFLRL
FBBBBFFLLR
BFBFFFBRLR
FFFBFBBRRR
FFBBFBFLRL
BBFFBFFRRR
FBBFBFBLRR
BFBFBFBLRR
FBFBBFFLLL
FBFBBFFRLR
FBFFBBBRLL
FBBFBFBRLL
BFFFFFFRLL
FBBBBBBLLL
BFFBBFFRRL
FFBFBFBLLR
BFFFFFBRLR
FBFFFBBRRL
BFBFFBFRLR
BFFBFFFRRR
FFBFBBBLLL
BFBFFBFLLL
BFFFFBFLLR
FFBFBFBRLR
BBFBBBBRRR
BBFFFBFRRR
BFFFFFBRRL
FBFFBBFLLL
FBFFFBBLLR
BBFBFBFLRR
BFBFBFFRLL
FBFFFFFLLL
BFBBFBFLLL
FFBFBFFLRR
FBBFFFBLRR
FBBBFFBLRL
BFFFFBBRRR
FBFBBFFRLL
FFBFFBBRLR
FBFFFBBLRR
BFBBFFFLLR
BFBFBFBRLR
BFBFFBBRRR
FFBBBFFRLR
FFBFBBBLRL
FFBFBFBRLL
FFBBFBFRLR
FBFFBFBLRR
BFBBBFBRRL
FBBFFFBLLL
FBFBBBFLRL
FBFBBBFLRR
BBFBBBBLLR
BFFBBBFLLL
FFFFBBBRRR
FFBBFFFRLL
FFBBBFBLRR
FFFBFBBRLL
BBFFFFFRRR
FFBBBFBLLR
FFFBBFFLLL
FFFFBFFLRL
FFFFBBFRLR
BFBFBBFRLL
FFBFBFBLRR
FBBFFBBLLR
BBFBBBBRLL
FFFBFBFRRL
FBBFBFBRLR
FBBFBBBLRR
BFFBBBBLRL
FFFBBFFLRR
BFFFFBFRLR
FFBBBFFRLL
BFBFFFBRLL
BFBBFBFLRR
FFFFBBFRRR
FBFBBBBRLR
FBBBBBBRRL
BBFFBFBLLL
FBBFFBFLLR
BFBBBFFLRL
BBFBFFFLLR
BBFFBBBRRR
BFFBFBFRRR
FFBBBBBLLR
BBFBBBFRRR
FBBFBFFRRL
FBFFFBFRLR
BFFFBBBLLL
FBBFFBBRRL
FBBBBBFLRL
BBFBFFFLRL
FFFBFFFRLL
FFBFFBFRLL
BFFFBFFRRR
BFBBFFFRLR
BBBFFFFRLR
FBBBBFBLRR
BBFBFFBRLL
FBFFBBFLRR
BFFFBFFRLR
BFBFBBFRLR
BFFFBBBLLR
FBFBBFBRLR
FFBBBBFRLR
FBBBBFFRLL
BBFBFFBLRL
BFBFFBBLLL
FFBBFFBLRR
FBBBFFBLLL
BFFBFFBRRL
FBFFBBBRRL
FFBFBBFRRL
FBBFFBFRRR
FBBBBBFRLL
BBFBFBFRRR
FFFBBFFRRL
BFFFBBFRLL
FBFFBFBLRL
BFBBBFBLRL
FFFBBBFLRL
FFBBFBFLLL
BBFBFFBLLR
BFFFFFFRRL
BFFBFBBLRR
BFBFBBFLLR
FFBBBFFLLR
FBBFFBFRLR
FFFBBFBRLR
FBFFBFBLLL
FBBBBFBLLR
FFBBBFBLRL
BFFFFFBLLR
FBFFFFFLLR
FFFBFBBLLL
FFBBFFFLRR
BFFBFBFRLL
FBFBFBFLLR
FBFBFBBLLL
FBBFBFBLLR
BBFFFFFRRL
FBFFBFBRLL
FBBBFFFRLL
FBFBFBFRRL
BFFFFBBLRL
BBFBBFBLLL
BBFBBBBLRL
FBBBFBFRRL
FFFFBBFLLR
BFBFFFFLRL
BBFFFFBRRR
FFFFBBFLRL
BBFFFBFRLL
BFFFFBFLRL
BFFBFFBRRR
FBFBFFFRRR
FBFFBBBLRL
FFFBFBFRLR
FBBFFFFRLL
BBFBBFFRRR
FFBFFBBLLL
FFBFFFFLRL
BBFBBFFLRR
FBFBFFBLLR
FFBBFFFRRR
BBFBFFBLLL
FFFBFFFLLL
BFBFFBFRRL
FBBBFFFLLR
FBFBBBBLRR
FBFFBFFLRR
BBFFFFFRLR
FBBBFFBRRR
FFFBFFBRRR
FBFBFBBLLR
BFBBFFBRRR
BFFFFBBRLR
FBBFFBBLRR
BFFBFFBRLL
FFBBBFFRRR
BFFBFBBLLR
FBFBBFFRRL
FBFBFFBLLL
BFFFFFBLLL
BBFBBBFRLL
BFBBBBBRRR
BFFBBFBLRR
FFFFBBBLLR
BFFBFBBRRR
FBFFFFBLLL
FFBFBFBLRL
BFBFFFFLRR
BFBBFFBLRR
FFFBBBFRRR
FBBBBBBRRR
BFBFFBBLLR
FBBBFBFLLL
FBFFBBFRRR
FBBFBBBRRR
FFBFBBBRLL
BFBBBBBLRL
BFFBBFBRLR
FBFBBFBLRL
FBBFBFFLRR
BFFFFFBLRL
FFBBFFBLRL
FFFFBFFLLR
FBFBFBBRRR
FFBBFBFLLR
BFFBFFBLLL
FFFBFBBRLR
BFBFBBBLRL
BFBFFFFLLL
FFBBFBFRRR
FBFBBBBRRR
FBBBFFBLLR
BBFBFFFLLL
FBFBFBFRLR
FBFBFBBLRL
BFBBFFBLLR
FFBBBBBRRR
FFFFBFFLLL
BBFBFBBRLR
BFFBFBBLLL
BBFFBFBRLL
BFBBFBBRRL
BBBFFFBLLL
BBFFBFFRRL
FFFFBBBRLL
BFFFFFBRLL
BBFBFFFRRR
FFBFFBBRLL
BFFBBBBRLR
FFBBBBFRLL
FBBBBFBLLL
BFFFFBBRRL
BBFBBBFLRL
FBBFBBBRRL
FFFBBFFRLL
FFBBBFFLRR
FFBFFBFLRL
FFFBFFBRLR
FBFFFFBRLL
FBFFBBBLRR
FFFFBFBRLR
FBFBFBBLRR
BFBBFFFRRR
FBFBFBFLRL
FBBBFBBRLR
FFBBBFFRRL
FBFFFBBRLL
BBFFBFBLRL
BBFFFBBLRR
BFFBBBFRRR
BBFBFFFRLL
FFBBBBFLRR
FBFFBBFLLR
BFFFFBFLRR
FBFBBBFLLR
FFFBFBFLLR
FFBBFBBRLR
BBFBBFFRRL
BBFFBBFLLR
FFBFFBFLRR
FBFFBBBRRR
BFBFBBBRLL
FFBBFBFLRR
BFFBBFFRLL
BFFFFFFRLR
BBBFFFBRLR
BFBBBFBLLR
FBFFFFBLLR
FFFFBFBLRR
FBBBFBFRLL
FFBFBFBRRR
BBFFFBFLRL
FFBFFFFLRR
BBFBFBBRLL
BBFBFBFRLL
FBBBBFFLRL
BFFFBFBRLL
FFFFBFBLLR
FBBFFFBLRL
FBBBBFFLLL
BFBBFBBLRR
FBFBFFFRRL
FBBBFFFLLL
FBBBFBFRLR
BBFBBFBLRR
FBBFBBFRRR
FFBBBBBRRL
FFFBBBFRLL
BFFBBFFLLR
BFBBBFFRLL
BBFFFBBRRL
BFBBFBBRLL
BFBFBFFRRL
BFFBFBFLRR
FFBFBFBLLL
BBFFFBBLRL
BFBFBBFLRR
BBFBBFFLLL
BFFFFFFRRR
BFBBBBFRLL
FBBFBBFLRR
BFBFFBFRLL
FFBBFBBLRR
BFFBBFBRLL
BFBFFBFLRL
FFFBFBBLRR
BFBBBFBRRR
FFFFBFBLLL
FFBFBFFRLR
FFFFBBFLLL
FBFBBFFRRR
BBFFFFFRLL
BFBFBFFLLR
FFBBFFFLLR
FFBFFFFRLR
BFBBBFFRLR
BFFBBFFLRR
FBBFFFBRLL
FFBBBBBRLL
FFBFFBBLLR
FFFFBFBRRL
BFFBFBFLLL
FBBFBBBLRL
BBFBBFBRRL
FFBBBBFLRL
BFFFBBFLLR
FFFBFBFRLL
FFFBBBBRRR
FBFBBBFRRL
BFFFBBBRLR
File diff suppressed because it is too large. Load diff
+200
View File
@@ -0,0 +1,200 @@
2004
1671
1678
1304
1242
1882
1605
1034
1883
1589
1881
1546
1713
1218
1982
1395
1277
1417
1497
1499
1847
1989
1172
1684
1243
1843
1661
1662
1421
1790
1344
1458
1074
1809
1990
1369
1386
1736
1972
1634
1229
1123
1870
1595
1934
1399
1732
1545
1208
368
1907
1143
443
1929
1965
1872
1738
1967
997
1473
1041
1991
1868
1180
1409
1379
1568
1163
1869
1391
1956
1249
1505
351
2001
462
1219
1731
1802
1798
1626
1438
1099
1477
1980
1708
1666
1066
1121
1359
1426
1734
1768
1836
1453
923
1660
1878
1522
1024
1429
232
1952
1730
1763
1981
1388
1337
1317
1922
1044
1999
1341
1178
1524
1185
1257
1256
1061
1262
1022
1778
1917
1205
1272
1842
1533
1194
1746
1691
1617
1667
1940
1171
1792
1773
1411
1902
1859
1978
1764
1482
1276
735
1716
1915
1675
1126
1830
1227
1299
1535
1700
1658
1771
1823
1055
1602
1590
1983
1885
1735
103
1766
14
1486
1939
1525
1916
1279
544
1406
1674
1948
1971
1651
1715
1943
1784
2008
1800
1720
1557
1467
1371
1637
1345
1924
1565
1976
1827
1890
1848
1465
1573
1231
1310
1754
1569
1532
File diff suppressed because it is too large. Load diff
+323
View File
@@ -0,0 +1,323 @@
...............#.#.............
##..#....................#...##
......#..#.#.....#..#.#.##.....
.........#...#..............#.#
............#.......##.........
...#.....#.....#...#.....#..#..
..............#..##.#..#......#
.##.....#.....#......##.#......
.#..........###....#...##....#.
.....#....#.#.......#......##..
.#....#......#.......#........#
..#.#.......#..##.....##.......
...#.#....#.......#.......#...#
##.##...##..#......#.#.....#..#
.#.#.......#..#.#......#...#.#.
#.......##.......#...#.........
.....#......#.#.#.....#....##..
.#.#........#....#..#..#.......
...#....#..###.........#.....#.
........#........#........#....
..##..............#.....#.#..#.
.#...##.............#.#........
....#..#...........#.......#...
..#....#.....................#.
#.#..................##......##
.#.##....#......#........#.....
.........##.....#....#...##..#.
#..........#..#.#.............#
.........#...#.#.#.#..##..##...
#...#.....#..#..#....#...#.....
..##.....#..................#..
#..###.....#....#.......#..#...
...##.##..#............#......#
........###.........###......#.
#..##....#.........#.........#.
....#.....................#....
#..#..##..#..####.##..#.....##.
..#...#.#....#....##.....#.....
...#.#.........#.....#.#.......
....#................#..#...##.
....#..#..........#...#.#.##...
........#..##............#....#
...#......##..........#.##...#.
.......##......................
.......##..........#....#.#...#
......###.##..##..#....#...#..#
#.#...........##.....#........#
..#...........#..###....#.#.#..
........#...........#......##..
.........#...##.###...###..#...
.....#.....#..##.........##....
...##..............#.....#...##
.##....#.......###.....#.......
.#...........##.............##.
......#..#..##.##......#......#
........###........#......#.#..
#.#....#.....#........#......#.
.##..#.........##...##....#....
.....#.........#...##.....#....
.............#........###....#.
......#.......#.#........#.#...
..#....#.#...#....#...#.#...##.
#...#......##..##......#.##.###
...##.#....#...#....#.........#
...#..####.....##.#..#.#...##..
##.#..#....##......#......##...
###.........#.#..#.#.....#.....
...#........#..##...#.#.#..#.#.
...###..#.###.#...#............
....................###........
...........#...........#.......
#..............#.#.........###.
....................##.....#..#
#.#.....#.......#...#..........
.#...#......#....##...#...#....
.....#.##..................###.
.........#.#..#.#......#.......
.......#.....##..#.##.#........
..#..........#.###.....#....#..
......#.............#.#........
........##....#........#.......
...#.............#....#.#......
#........#..####.....#.....#.#.
.##......##...#........#..#.#..
....##....#...#...#..##...#.#..
#.##...###..#....##.#..........
....#.#...#.#...#..##.###...#..
#.....##..#..#....#.#.....##...
.#..#..........##.#.....##.....
.#..#........#.#.#.#...........
.#..#.....#...........#...#....
...#......##..........##..#....
...#..#....#.##...#..#.....###.
#.#....#.....##................
#..#......#.#.#.......#........
......#....#.#....#..##....#..#
.#.....#.#....###.##.........#.
.###..#.....#........#.#.......
.#...#......#..#.#......#.....#
#...............####...#.....#.
.......#..........##.#........#
#........##....##.....###..##..
#..#.....#..##.....#....#..#...
#.....#.......##......#.#.....#
#.##..#......##..#.............
##...#.....#........##.........
....#..##....#...#.......#.#...
....#...#...##..#....#..#...#..
..............#.#...#....###...
...#....#..##...##..#....##....
#.##.#..#..#......#.#.#.#...#..
.......#..#..##........#......#
##.#....#....##.#......##.#....
.#...#..............#........#.
.#.#....#.........#............
.#..#..###.............#....#..
#......#...#.#..##..#...#....#.
.......................#...#.#.
.............#..#...##.........
..#.#..#....#....#........#....
#......#.##..#...#.#...........
.....#....#...........##.#..#..
..#.#.....#..............#.#...
#.......#.....#................
#..............#...#....#...#..
...#...##..#..#............#...
......###.....................#
.........#.......##..#....#....
........#...#.##..#.##......#..
....###..#.#...#...#..#.#...###
##...#...##.#...#.#...#.#....#.
.........#...#.....###.........
...#........##..#.......##.....
.#.......##.........#.....##..#
.#..................#...#......
.##..#..#.#.....#.###..........
...#.....##..#.........#...#...
.#......#.#.......#.#..........
.........#.#...#..........#.#..
#..........#.##..#.##....#.....
.#.#....#.....#..##.....#...#..
..#........##...##..#..#....#..
#...........##....#..###....#..
...........##.........####...#.
..#........###...#.#.........#.
.#...............#.##.#.#...#..
.#.##..#.....#.#.....##..#.....
...#...#..#.##.##...#.......##.
..#...#...#......##.##.##...#..
##....#...#...#...............#
...##...........#......#..#.#..
#.........#......#.#.##.....#..
........#..#.........##........
..#.#....###.....##..#...#.....
.........#...#.......#.....##..
##.....................#...##..
.#.#..#......#.................
.....###..#......#..###..#.....
...#.....##.........#......#..#
......##.....#...#........#.#..
..#.#...#......#...#.##.##.....
...#..........#...#.......#..##
.###........#........##........
..#.#.#..........#.#...##......
.........#........#......###..#
....##..#.........#...........#
..####..#............##.......#
.....##.#..##.........#...#.#..
...#.........#.....#.....#.....
.......#...#..#...##.........#.
...#...#..#...#....#..#........
#............##.##...#.........
.#.#.....#.......####.....#....
..............#......#.#.......
..............#...........#...#
#...#........###....#.#....#.#.
##.#..#..#......#......#.#.#...
.#..#.....#..#.#..#.#.......##.
......##.#...#...#......#...#..
#...........##....#.#..........
....#.......###.#...#..........
.......................#.....#.
........#...#..#...#.#.#.#.#...
.#.#...........#......##...#...
.........................#.....
.................#.##.#...##...
...#...##.....#.....##....#.#..
...#...#...................#...
...#..#..#...#...#....#........
#....#...#.....#...............
.......#...........#...#.......
....#....#.....##.......#......
.......#..........##...........
.#.#........#..##....#......#..
.....#.......#.#.........#...#.
.#..####.#.#...............#..#
.....###..#..#..........#.#..##
..#.......#...#.....##..#..#.#.
#....#......#..................
........#.##.#....#...........#
....#.#....##..#.#.....##......
...#..#.......#....#.....#.#.#.
#...#......#.....#.#..........#
....#....#...............#.....
..###......................###.
.##....#..#.......###.....#..#.
..###............#........#.##.
.#........#......#.....#..#....
....#..##...#...#.###.......#.#
.......#.##...........#.#..#...
.....#...##....................
....#....#...##......#.........
..#............##....###.#...#.
.#........#...............#....
#..#.#.##.........#..##....##..
#.#....#..#.##....##...#.#.....
.....#.....##....#.#........#..
#..#...#...#....#....#.........
...#........#..#.#.....##......
..#...#...#................##..
#........#.#.##.......#.#...#..
#......#..####.##.....#.#..#.#.
............#..#.#....#......##
..#.....##....#...#.#..........
...#...#.........#...#.#.......
.###..#.......##.##.....#.#.#..
...#....#...............##.#...
....##..#..#..#.#......##.....#
#.#..............##...##...####
.....#.##...#.#...............#
.##.....#.........#.......#.#.#
#.#..#.....#.......#.......#..#
...#.#.....#.....#......#......
.......#....#..#.#..........#..
......#......#.##...#..........
.....#.......###...#...#.#.....
#..#.#.........#.....#.##....#.
..#.#.........#..#..#..#.....#.
.#..##..#..#....#......#.##..#.
...##......###.....#.##.##.....
.#.....#...#..#...#............
##..##..#.##....#..#...........
...#..##..#..#.............#.##
...............##............#.
..#.....##........##.#...#....#
.#.#...#.#.#..#.#.....#....#...
.#....#...............#..#.....
....#.##..#....#......#...###..
#................###...#.#.....
...#...#......##..#.#....#.....
.#....#....#.#...##............
....#...##..#..#........#.##...
..##.....#..#..##..............
..#..##..#.#..##....#....#....#
...##.............#............
#....#....#.#........#.....##.#
.....#..#.#.....####...###.....
................#......#.......
.....#.#.#.#.#....#..#........#
.##.#...#.#.......##....#....#.
.....#........#................
..#.....#..#...#..#...........#
.#.....#...##.....##..#.#....##
......#.......#..#......##.#...
#.#..........#.##.#........#...
...#..#.............#..........
#..#..#..........#..##.#.......
.#..#...............####..#....
.......#.....#......#.....#.#..
.#...............#...#.........
.#..#..........#..#.#..##..#..#
......##..#.....#..#......###..
..........#...#..#.......#.....
.#.#.#..#.....#.##.#...#..#....
........#.......#.....#.#......
......#.....##.....#....##.#...
...............#......#.......#
..#.#...#.....#.#...##......#..
#.#.........#.#...#........####
#..........##..#..#........##..
.............#..#.......##.#..#
..#........#.#....#........#.#.
.#......####..#..#.............
............###.......#.#..#...
#.##......##...#...#.........#.
....##.#.#.#......#....#..#...#
.#..#.#....#...#.........#.....
#...#.....##............#...#..
#.#...#..#.................#...
............#.#..#.....#.#.#..#
...................#....#.##...
.....#...#.#....#....#.#......#
.......##.#.#......##..........
.#..#...##.#...#..#......#.....
......#.#..#..###..##..##......
.#.#.#.#.....#...###.....#..#..
.#....#.....#.......#.......#..
..........##.........####......
.#.#.............#..#.#...#....
........#........##...#.#....#.
........#......................
..#.#....#...............#...##
.......#.#...#..#.....##......#
.#...#....#..........##........
.#.........#.#............##...
.....#......##...#.......#..#..
#.#..#.............#...#...#...
......#.......#............#...
...........##....#......##.....
.#.#..#.....................#..
##..##.....###..##.#...........
...##......##....#...##.....#..
#...#.##.............#.........
......#..#.........###.#......#
#.#.....#.....................#
....#####.....##........#.#..#.
...........##..##.###..........
..........##.....#........#...#
.......#..#......#.....##..##.#
.....##.#........#.........#...
......##......................#
.#.......#.#.#............#..#.
.....##.#.......#.#........#...
+1000
View File
@@ -0,0 +1,1000 @@
1-7 j: vrfjljjwbsv
1-10 j: jjjjjjjjjjjj
9-13 s: jfxssvtvssvsbx
10-12 d: ddvddnmdnlvdddqdcqph
11-12 b: bbbbbbbbbrbnb
7-9 q: qqqqlqmqqq
8-11 z: zzzzzzzpzzlzzzzszzzz
12-13 l: llnlllllllllll
3-5 f: ffffwff
16-18 c: cccccccccccccccsccc
3-4 g: fsgkgffbdgqbzdn
7-10 m: mmrflrmmfm
18-19 w: wwwwwdwwwwwwwwwwwww
1-11 x: xvtcrlffxrxjlxbl
3-6 s: slsdqpwn
1-5 z: zzzzj
11-15 m: mmmmcmmmmmlpmqm
10-12 r: rrrrrrrrrrrh
13-16 v: bzjvkrvxlnvwvclg
2-3 d: dpdd
7-18 d: zddddnpdddddcdddddd
2-3 r: rrrrr
8-15 f: fffffffsffffffff
10-12 g: gtcmfblggngv
10-11 l: llllllllllc
12-14 n: nnnnnnnnnnnnnnnnnn
10-13 q: qqqqdwkqqqqldqds
10-11 r: rrrrrrrrrrr
2-3 k: khsk
8-9 r: srrrdrsrrbrrrr
5-7 n: wqrtnlqjnn
17-20 w: wwwswwwwwwwwwwwwgwxh
5-6 t: tmztjbtst
8-17 g: gxglgssgqzggpgggh
15-18 v: vvvvvvvvvjvvvvxlvz
1-4 c: lccvc
1-5 q: qsqqfqqqqqqqqqqqd
5-6 w: wxdqjfwkswfwwzt
3-8 r: rwtkslmrx
2-6 b: bbbbbbbbbbbbbbb
3-4 m: mjmm
9-11 s: ssszssssssl
7-15 m: ktmclnsnxzprkdcr
3-9 z: lzzzzzzzzzzz
1-10 g: hgdhggggpj
11-12 d: ddpdsndgddddb
3-8 p: kjhpchxpxfpgf
2-13 d: znwcbsdjgjrldpn
3-5 f: fdcmf
2-3 d: dxdddd
1-3 v: rgvfrgptwkrv
1-9 t: cwttttttt
11-12 n: nnnnnnnnncbngn
1-12 x: gdzgxdvhctkxfwq
4-6 f: fclbnf
12-15 j: jjjjjjjjjjjhjjj
8-18 d: ddrdddfldjlrldbdkd
1-12 n: hnhnnnnngqnnnnnns
4-7 c: cxgcntzcktkbrcvgfbq
6-7 c: cccccct
7-10 w: mlwcwgwwbcbwggwwgwwn
1-5 p: ppppp
1-16 r: rrrrrrrrrrtprxrrr
5-10 v: vvvvvvvvvvvv
12-13 z: wtzzkzzzjzzzmqzzzm
10-11 d: dddddddddjd
3-6 j: jjjjjj
1-7 x: wxxxxxvxxx
2-5 t: tmttt
2-5 l: djmbckfsscq
7-8 l: llllllltl
7-10 z: lzzzzkzmzwzzz
5-6 j: jjtjhj
9-11 l: lllltlllftlll
17-18 j: jjjjjjjjjjjjjjjjxgj
3-6 b: btpgbbbbdrbqn
7-8 t: ttttttqwt
12-15 c: pccmccsccccfcccc
14-15 v: vnvvvvvcvvvvvnmv
12-14 t: bttttttttttttntt
18-19 v: vvvvvvvvvvvvvvvvvktv
1-5 w: wwwwl
5-7 j: jdlbdjmjjrkc
6-7 s: qsssdgs
5-7 g: jcrtgxgg
6-10 l: lllllllllsl
18-19 b: bbbbbbbbbkbbbbvjbzbb
1-4 x: xxxglxl
14-16 k: kkkkkkkkkkkkkkkkk
1-5 x: zbjnxxglt
16-19 v: vvvvvvvvvvbvvvvvvvl
6-7 j: jjjjjmj
5-10 w: gswvknnpmmbx
1-4 b: bmqb
4-5 k: kkkrkkl
5-17 d: ddhjxmmddddhzddsrx
2-19 n: nnbjqmvlhnlfwxghnln
5-18 x: hjrqfdfrhzwjwsjxjn
1-2 m: mmmxm
7-8 b: bbbbbjbb
3-6 r: rrrrrw
4-6 w: lwgwwpkwww
3-8 n: nnnnjnnnnnd
2-11 n: nnnvsnmnvqnbl
15-17 x: xxxznxxxxxxxxxjxk
13-14 d: ddddqdfxdddddddddgd
14-15 v: vvvvvvvvvvvvvwv
7-8 x: xdxxxxxx
1-3 q: qkhqq
3-4 v: jxvmpkp
8-12 g: ggsfgggzggjggg
14-16 k: lkzgkkkkbkkkgkkkk
14-17 t: ttvtvtttttttcxfttttt
7-11 r: dwlrbrzrrrrjr
7-11 k: xkkzkpknknpkkzkzss
1-7 c: cpkxbtccxzrcpdl
11-13 w: wwwwwwwwwwwww
1-11 d: wdddddddfbdxhdfdd
5-9 d: djdhhjvjddddnjddsxqz
13-20 t: ttttttttttstrttttttt
9-11 l: qllkvnllhllllplz
2-4 m: mmxms
18-19 l: lllllllllllllklllkr
8-9 n: nnnnnnnhw
2-8 s: thsstssswssssss
9-17 n: nncsnnnndnnptnnnvhnn
6-8 r: rsnlrhrgsxrr
2-3 n: nntb
9-15 q: qqqqlgqqgqqvqqrq
7-8 l: llllvslv
10-13 r: rrrrrrrrrnlrd
3-4 k: kskwjvbcchtk
1-7 h: hqfgwhvshtqsgjjml
2-18 g: wzbxrzqshkdptwvjsg
5-7 n: nqnnmnn
2-18 g: ggtgbzgggggggggcgggg
2-4 c: ccgcwclcc
4-8 v: qjvfvmkvvtvh
2-4 d: lbcchdcbtlrhw
15-18 l: ltvlrzqlwlwlpvllll
1-5 p: mpvbfjpj
14-19 h: hhfhhhhhhhhhdshgvhh
5-8 p: ppphpqcrpwdxpxpfrppf
16-17 d: ddddddddddddddddd
11-12 n: nnnnnnnnnndp
10-11 f: wfflfwfffrfblsgfvrff
16-17 x: xxxxxxxxxxxxxxxfx
2-4 k: kkckk
3-5 g: tpggzglgzw
10-14 v: vvvvhqtbvmvvvzn
8-11 z: zzzzbtczzfvgzz
4-5 l: dsvlllgldllcb
6-7 b: bkbzbsb
2-5 m: xrmmmmmmmmdmmmmmm
3-4 f: fdft
2-3 j: jjpjl
5-8 g: ggjqmrgngdgmbz
4-6 x: xnxwzk
11-17 h: hhhhhhhhdhhhhhhhfhhh
5-13 f: fffffffffffffff
3-6 f: fvtxffff
1-3 m: sjmmm
15-16 s: ssssspssssssxssdsgs
4-8 f: ffkfbtsw
16-17 m: nhdqmnbqfkppbtmmmjx
8-9 b: bbbbbwbnbb
4-6 x: xxbxmx
3-13 r: glqxrpkmjwbnr
10-16 k: dkkqkkkgrklrdgtk
5-10 r: hjrrrrldrwrdvrrrr
11-12 l: cglcgxvlrrml
6-12 r: rrqrrrrfkrrgrrtrxz
4-11 b: bgvblbbtbnbbp
4-7 j: pjxlbjcjk
9-16 m: mmmmmmmmwmmmmmmm
3-8 g: wxzpbpdgznzgsgdqgpp
1-2 l: lwclllkldl
12-15 r: rrgdvrrtqrrqrrrfrr
6-7 l: lrljwzl
5-12 m: mtmmbmmmmmmnmm
14-15 x: xxxxxxxrxpxwdxzxxxxx
3-5 k: kjkgtr
1-5 x: xxxxl
1-6 c: lcfzghdmlrlcdf
4-5 p: pzpps
12-19 t: mttlttttthktttttttl
2-5 p: mpspppppppp
2-3 d: dddpxtb
11-12 f: hlbffffpkfffffzfffzf
6-7 s: lskssssjqsg
1-4 q: qnqqbqpmq
17-18 t: ptttttttttttttttsmt
3-4 x: xnmx
1-4 s: ssssbh
6-16 b: bbbbbcbbbbbbbbbfb
1-14 f: fwccgsfxljvzwbls
2-3 b: bbfk
5-9 d: ddndxdddfd
5-10 d: ddcddddddd
9-14 b: gpbbqbbbcqbbbf
10-12 l: wlllllqllllllll
1-8 n: nvwdffhbdlkv
13-18 c: cwcccccccccczcccjc
1-4 n: pnnmn
7-8 x: xzxxxxks
17-18 p: fpwvhpqppcppppppplp
2-4 d: bddsjwctx
12-15 n: nnznnnnnnjnwknnn
7-12 l: wlllllllllrrlzzllgj
2-8 j: cdjfdjhjjsfj
7-10 k: kkkwkkjkkc
9-10 b: bbmbbbdtttbbb
7-10 k: bqhccksknk
3-4 f: zktp
3-9 r: twjjkprkt
3-4 p: pntp
7-10 z: zzzzzzzzzzzz
5-9 q: qtmqxtqkqqxbl
14-15 d: dddddddzddddddddd
6-8 b: bbbbbcbbb
1-5 j: jjjzmt
5-13 z: hqsfqszcwngzzvs
15-17 k: kkkkkkkkkkkkkpskk
3-7 f: fffnkfd
8-11 g: gjgggjxggggg
5-6 w: fqkswjjwkjnhwcz
3-4 z: pgzzzhthd
7-19 p: pppppplpbppppspszpp
2-3 w: rwqxwv
1-3 f: fgjfpnbvs
4-9 s: wrxwxvfxlxvtsjswbns
8-13 b: jbzldnnqbmghncwxbxvc
1-4 m: rmmm
6-7 x: txxbsjx
16-17 c: ccccccccccccrcccxc
6-8 d: ddqdddrxdjd
9-13 j: zvzxjdwnjpqmz
7-9 q: qqqqqqvqqqq
8-13 n: nnnnnnncnnnld
2-9 m: mmwqmzsvbmmmttm
16-18 l: lpqzlhlljzplmllffs
2-6 v: mcbjdxk
4-6 b: vbpbnbqbjncxv
7-17 c: rctcpcccbphccccvc
15-16 c: chccccjcckccwckcccc
3-5 p: rppgpcvxpdvdp
2-5 t: lgktttd
12-13 b: bbbdbbrblmbbsbbbbbt
9-11 s: rqsdbzdsshgsj
3-7 g: grgfjfkkslpbg
7-10 n: qnnlgnknnnnnnn
17-18 c: ccccccccdrccccccwcc
7-8 g: gggggggstgg
2-4 q: dvxq
18-19 s: sssssssssssssssssss
5-14 t: ttlvtttttftzfvt
6-8 m: qsqmvmmmphnnmm
10-12 x: xfxxxxxxxgxx
9-14 m: mmmmmwmmmmmmmpmm
11-13 l: lllxllllllllll
4-5 m: mmmmf
14-16 k: kkkkkkkkkzkkkkkt
8-11 p: ppppppptpphp
2-5 v: kbgmr
3-4 h: hhcnh
2-9 s: xljsstszh
2-6 v: vvxvdhgx
4-5 m: zmmmsmmmmp
16-18 b: bbbbkbbbbbbbbbbbhf
1-5 p: qppplp
3-6 b: bjbkrgvb
1-3 d: zddbwr
4-20 d: dddddbdmqhdsdddddmdd
4-7 r: rrrmrrj
6-8 t: tttttdtttt
2-4 w: fxwhh
10-12 l: llhlllllllll
11-13 j: jjjtgjbjjjfjcsjjs
3-4 m: mmfmmc
7-9 q: qgtzvqcqq
6-14 x: dvkqqfnvvqxvwb
2-3 d: wnzdj
1-3 l: lvxfn
4-5 r: rprzr
10-16 k: zkklmdvkkkkmzvfv
16-18 h: hhhhhhhthhhhthhhhvhh
5-6 b: bnjbbr
8-11 t: ttctjttvtttt
2-6 r: rrrmrr
1-10 w: cwfbkwwdkwgwgnsnhz
13-18 b: bdkmbbbbmbvbpbbbblbb
5-6 k: fkkkkb
1-9 j: jjjjjjjjtj
1-2 h: hhhpq
14-16 v: vvvlvvgvvvvvvmfkn
5-6 x: xxxxrnx
12-14 h: hhhhhbhlhhhhhhhkhqh
15-18 s: ssgrgdbtztjtcjsphs
18-19 h: hhhhhhhhhqhhhhhhqbxh
3-4 b: hbld
16-17 x: xxxxxztfxxvsxxhhc
14-19 s: ssssssmsssssswsmsxs
6-7 p: pppppsppt
2-3 c: ccclncs
1-5 v: tvvvvvv
5-8 x: kcxxxxqxxsxxgx
1-3 w: wbqw
11-14 g: ggggggggggsgggg
1-5 m: kqsmlqtb
7-8 j: zjjjhxjj
10-11 v: vvvvvvvpvvbv
6-14 q: tgqqtqjdqwqvqz
1-2 g: gngg
7-8 g: gcgggqmgglg
4-9 h: hhhhhhhhthhhhhhhh
7-13 r: hfzvpnrmlrbrl
9-12 l: llllmflrxlll
2-7 m: mwgpnpthsrzqdggkdw
2-8 s: sssssfsss
7-12 c: ccxncchccccc
8-14 c: czcccczpcxxgcc
3-6 v: dqtvhvpv
12-14 v: vvvvvvvvnvvvvvn
4-7 w: wwwwwws
11-16 c: cccccpcctznshccc
1-4 c: rfpcf
5-10 p: pptpvplmpdrps
16-17 q: rdwmkhrjbpftdszqqbc
3-4 t: tgvt
4-7 r: rrnrhnrrwrsrhhrrrtp
13-15 t: tttvttttttttttstt
11-12 x: xxgxxxxpxxxxxz
1-10 g: xzbmfkzhdgfqqmwgxgrg
18-19 x: xxxxxxxxxxxxxxxxxxx
7-9 s: svsssssksnrsx
12-14 p: pppmppmpppppphdppqvz
4-5 w: wwwwxwwwww
6-8 k: kkkvhjkpk
4-5 j: jjjjj
11-17 n: dnnnnnwrnnrnhnhnn
1-5 h: mhhhh
6-7 m: tqjhgmstv
11-18 w: wjpczxkzmrwjqhhzfp
12-13 m: mmgmmmmmmmmdmdlrm
1-5 l: vlhblllltlr
8-12 h: hphhchphjhhhhh
3-4 m: fmmssm
11-12 d: ddddddddddrd
6-7 m: mmmxmmj
1-7 h: twhhqhhnhlzx
3-5 w: wbwwx
4-7 b: bbxbbtnhhcbbbb
8-10 m: mmdrwjmmpmmv
15-19 s: sssxsssfsssssdbsbsss
9-17 r: rrrrsrrrqrrrrkrrpr
7-9 t: rdkctlttt
2-5 j: jjjjjjj
1-10 p: ppbgmjpwtpslzqp
9-17 n: hsbbnwgvbmvrrssnn
9-16 f: fbfffnfckffffffk
4-6 m: mmmmmk
5-9 n: njnnnnnnmfn
11-13 z: zdzzzzfzzzzzn
5-9 d: gwdbddddddf
5-7 x: xxxxhxx
3-10 s: hhssssspsgsswcc
6-10 d: dddddfddddd
15-18 l: gztzhfflpnkxhglmll
6-16 l: lllllllshllllglwll
4-9 t: tttkttttrtvtttqtz
2-4 n: zcnnclg
4-5 j: jzjjjj
9-12 p: prppppppnpnpq
13-15 p: mzrmqhnfpbxnwpppgtp
2-5 f: gfffr
1-3 n: nbnwnx
19-20 j: jjjjjjjjjjjjjjjjjjmj
3-9 p: pgpkphphpgp
5-6 w: twpwwr
3-6 w: brvnxhpwwwbn
18-19 b: bbbsbbbbbbbbmbbbbrbb
3-11 v: rxvcvbrggftgrzbhq
9-10 q: qqqtqqqplw
6-7 k: dtkgkfk
12-19 n: bnnbpnlvnhwnnnnnxsf
6-7 p: nppppjpp
4-7 s: ssssssswszswsssssss
17-18 n: nnnnnmnnnnnnnnnvznxn
2-4 q: qqwqvv
6-9 z: zdfzzqzdw
4-6 s: svssfwfslmnxsd
3-5 b: gmzbbp
1-4 l: tbll
1-4 h: htzhpdgzlhjbqwkjk
1-4 t: mtttvrpt
5-6 p: cmxkgpmspqq
8-10 w: rwcpbwwvtvzhwwpwwwr
11-12 w: wlwnhqwqwdwb
1-4 p: ppbjcprpp
10-12 s: spskpmsxhqssgh
4-5 n: nnzns
11-12 g: gwfgggggpgdghgg
2-3 d: hdxzdsd
3-4 g: gghj
2-4 m: mmlcmmd
11-12 t: ttttmttttttmt
9-12 w: wmghwwwdtwww
7-8 m: lzhpnrmz
1-2 n: nnbn
1-3 c: cltmcdlcc
5-7 c: rmcmdxgxjq
5-6 v: vvfvqt
10-12 n: nnnnnnnnnnnnnnnn
6-10 v: vvnfsvvvnqvjjvgptq
10-17 b: bpbfbbbbbbqbbbbrbbbb
4-12 v: vvvvvvvvvvvlvvvv
8-14 n: bjfgpkpmnsvnnb
7-8 w: wdwwwwwkw
11-14 z: zzcwzzzzzvhzzzz
12-15 z: mzzzzlzzznzlzzgzzzzm
5-6 v: qnvmnv
2-7 w: wbwsnww
5-11 q: kqqpcqqpjmnlq
13-15 l: plljllllllllwldlc
4-5 l: kfcnbkhrnvtnrwn
11-16 b: wmbfpdbdbbrbbbbdbbb
2-8 t: jwswmtttg
2-14 l: khqxxhmlndmdrtdxkbf
1-6 f: ffdfprffvfkc
5-10 c: cjcmqtdvhc
1-8 v: vvvvvvvzvv
2-3 b: xvjbs
9-11 j: jvrjjcjjjjjvj
7-12 w: wjwwwwwnwfwwww
3-4 t: fppttghptsfkfdht
4-5 l: nkllm
7-9 j: wwlhsjnsj
10-12 v: vvvlqkvbsdvvvwvjvvtv
16-17 r: rrprrrrtrrrqrrrrrrr
6-7 x: xqxxxdx
6-14 x: mxlxxxxxtxxkbwxxxxx
4-5 l: llsvl
5-12 f: fbbvffxzfnfkwtn
4-7 n: nnvtnhnnncbtnndr
2-9 h: mhzfgjhcknskxqdk
14-18 l: lqllllclllllqpllllll
3-4 s: ssspss
5-12 z: zzzzzzzzzzzwmz
18-19 p: ppcpppwppppppppppvgp
3-4 z: qzzzzz
5-7 x: xrxxxxx
3-5 z: zzzjr
3-4 j: jjfjj
5-6 p: pfpppnp
3-4 j: jjnm
8-16 m: mmmmmcmmmmmmmmmm
2-6 d: tddddbdqdd
3-8 d: qkflfddfdrvsj
8-14 m: cwfmsqvmllbdnjvgp
3-7 h: xhjtdhhc
1-7 v: vjvmvvd
6-10 j: jjjjzjjjjfjjjjjr
8-9 x: xbxxxxgxxqx
3-5 f: fffpf
2-8 n: nnlnbndn
4-13 v: vvvqzvvvfvvvvv
4-7 s: tsrcslsrdx
3-6 h: lhhhpr
1-5 r: rtvxw
3-5 m: mqmkvmmm
3-4 p: ppmp
2-3 j: jjfj
2-13 v: vgzvvvvvvwvxdg
14-15 q: qxqqqqqqqqqvqwqqq
9-12 h: cjzzthfchxth
3-7 p: pbspspkp
8-9 n: vnnngnxlnnnn
10-16 g: dngspgdnnggggsgqrg
5-6 n: nnnnnqn
3-4 l: cwtl
1-6 r: hrrrrrr
2-5 b: blwbz
11-18 d: ddddddtdddxdddddddd
3-6 k: lkxkkqks
15-17 j: jjjjjjjjjjjjjbqsjf
13-15 k: sxlplkjfqwmpkjk
9-10 l: llllllllmlbl
5-10 g: ggsgxggggg
1-2 f: twwf
2-4 d: kwdd
4-13 g: cwczjzgqtlhsg
12-14 z: kckzccljvrvzgz
9-12 t: wtttxttttxttdt
14-15 m: zmmmmmmmmmmmmbw
3-4 r: frrtwr
4-7 k: ckkmkkdkkkkk
16-19 k: clzjfkkdljgnskrfjkk
6-8 w: fwphnwzb
14-15 p: pppppjpppppppbbp
6-8 q: qqqqqqqz
10-11 j: gdrjbjzzfjqwvntppjtb
14-15 m: hmmmmxmmbmmmmmmmmm
8-12 b: bbbbtqggbsbwbsbb
1-2 g: gcgzl
1-2 j: jmwv
3-5 q: qqqqwqq
3-6 b: bbcbbbbb
5-6 l: lqlllfl
6-9 f: ffffffffsffmffff
11-20 n: nnnnnnnnnnwnnnnnnnnn
3-4 w: qvfn
2-8 x: zzxxjxxxx
3-4 r: pbcrr
10-12 t: ttvgcttctjwt
8-12 g: gnggggvzgggg
7-9 z: zzzzzzzszz
4-5 c: ncclccc
5-6 t: ttttttt
4-6 q: qtqzjq
10-20 p: hqxflpbmpppspqhptmpp
2-5 k: bblpkkkkkjlgvzsrhtvk
2-7 l: clllpvlzvdnllflll
9-20 p: pppppppqhppppppppppp
12-13 v: vvmvjkvhvvvvdpnt
13-15 x: xxxxqxsxzxxncxxxxx
11-13 n: nnnnmtnsbnnnp
10-13 m: mqmmmmwfmvmmmmmm
5-8 b: bbbbkbbb
11-12 h: hhhqhhhhhhmgh
4-6 v: vvvvvqvvvv
2-5 j: rsbnjnxrmhm
2-8 j: jjjjjjjhj
5-7 q: rqzkpgj
6-12 b: bbbbbbbbbbbzbbb
2-4 h: hhqv
4-6 c: gkxfcwsctcz
1-6 t: sfqlpthhp
7-8 g: gfpgggrzg
1-5 v: vvvvvvv
5-6 q: qqsqllqq
15-16 b: bblbbbbrbtbbmbbbz
5-12 t: btsttjttttbgrwrrlbg
7-12 v: qvvvjvvcvvvpvvvv
19-20 l: nvlxxlxvllllcsdnwldl
9-13 w: wwwmwwwhwwwwvww
2-4 x: lxldmxxhkzxrpzbh
11-12 n: nnnnnnnnnnjn
3-8 b: xbflzhbbbbbbbbbbbbbb
15-18 s: spssdnxffsksmxssbt
4-5 c: cnjccxcc
1-2 w: cwww
7-8 d: cddlddwddgdl
9-12 p: pccppppchrpphppppp
3-7 x: drxcxcx
9-14 k: jdkmxbkrxnnnrkkw
6-18 z: frpczwtszjbgfdszzj
1-4 n: qfnjfn
12-14 g: zggggphlgvghggggg
5-15 l: wfkwtnsllxlzqzq
2-12 t: tfvtrmtttttpttmttttt
2-4 c: mvjct
4-10 x: mcxlhxvpkdbz
7-18 w: wwxzwqxbwwswwjfmsw
3-4 s: jssnss
9-11 j: jzjjjjjjjjq
1-16 s: dssssssssssssssss
3-10 d: cndlgskktdl
4-9 c: rcwlcgccccz
11-13 w: wpwwwwwwwwwzwwww
5-6 v: vvvvkh
8-13 z: zzzkzzzzzzklzzzdzz
2-11 v: dpqghsvhvsvfq
9-13 f: vrjfflzfjfsfszrxftff
11-14 j: jjcqcfhxspjjjgsjvgj
2-6 l: lcldhcfv
7-10 l: hjrcprhcll
4-6 q: sqqqvq
1-2 g: fggzc
1-9 k: skkgknkdnklnkcsmp
3-4 d: dbdv
8-11 m: mnmmjmmmmmm
2-4 d: ddgbhdrdn
1-3 v: hvvv
6-7 f: fffffzt
4-6 t: ltttvs
2-3 n: npnrr
1-19 b: pbbbbxbbbgbbbjbbbsbv
9-20 w: mwwwwjwwzwqwbwwwqwkw
11-12 z: zzzzzzzzzztjz
1-6 z: zzzzzdzznzm
4-5 n: nnsnn
7-10 v: qwkvvzvwvmvmvkvvvwvl
2-5 x: vqgzdvbqrdxpfnzzjxv
11-14 j: jjjljjjjjjjjjz
1-3 n: jndnn
2-4 l: lbxxlllcv
5-6 s: sssskg
11-14 l: llllllllllsllll
2-5 s: swdszr
2-4 q: qpqc
9-11 h: ghsbhhgzhgxzhfhhhhhh
11-12 v: vvvvvvvvvvvn
2-3 r: rrhr
10-11 w: gmwtmnppnqz
9-13 f: fffffpfrffffff
1-6 c: cvtwcptzkq
11-13 k: zkkkklskkkkkskkk
3-8 p: ctpkfpspplpbz
9-10 b: bbbbbbbbbbb
6-14 d: dddddddddddddddd
8-9 d: mdddrddzdd
6-7 v: vvvvvvxvvvvv
4-6 g: gggtntghnvgrfj
4-8 p: zbpmzjfplphp
5-7 h: hhhfhwm
6-19 g: jbkxvgqzdngcclvlhxgg
8-10 q: qhpmqqwfqnbthqwq
1-3 h: hhrpg
7-10 j: jmjkjjgcrj
2-3 g: gkgggg
3-4 l: lsql
7-13 c: cckccccccccccc
5-9 v: zcfvxvnvbvvccqvkvv
4-5 h: hqchnh
4-5 v: vfzvrfvkv
2-3 f: ftlf
17-18 r: rqrrqrrnvrsrrrdrrt
5-8 w: pwwnwhwwvwwww
3-13 b: hwhhtvcjbgcpbrqpg
6-14 z: zzzzzgzzzzzzlz
3-4 s: zssr
4-7 s: lfstsssjs
7-9 q: xqqqqqnqqq
11-14 g: gggggggggggggg
5-15 m: mzjpmvmpnfkpmtrj
1-2 z: bzzzzzzzzzz
3-5 b: xbbbmp
5-8 m: mmmxxxmm
13-14 b: bbbgbbbbbbbzbb
5-6 s: sstsxfssgvn
2-10 w: dpwdwswdwwwwn
4-6 v: xvnvvv
1-3 d: ddqd
5-8 f: ftzffftgfgkhjff
10-15 g: gggggggkggggggg
10-16 h: hfhhhzhbthhhxhhhjh
2-10 n: ntnnnnnnnnn
8-9 d: dqxcnxsdwmbd
1-3 z: zlzqzzsnlrt
3-8 b: cgtlsbbbbn
3-5 k: kwkktt
5-10 s: cscdhgsxns
1-13 w: pwwwwwwwwwwcgswwwwww
1-4 d: dddd
17-20 v: vvvvvvvvvvvvvvvvvvvn
6-10 k: kkkkdkrjkqpkvckc
7-8 g: fgglcggg
5-10 q: qqqqssqqqqq
12-13 j: jhjjjjjjmjjjsjj
3-4 c: czlx
2-7 g: ggmjwww
3-11 f: mdfbtbjvftnsvnnlmzg
2-6 b: clqwlbslldxmh
3-6 b: bcbbxbk
5-6 d: grdrfrdddvcq
14-18 c: ccctccjccccccwvccc
5-6 h: hrhhhp
1-7 b: bbbbbbbb
1-8 w: mwwnwwww
4-5 j: jjjlcjj
6-16 m: mmcmmmxmmzmmrmmfmmm
7-12 p: ppppptpppprp
3-8 s: sfrssssspfkskdbdsq
14-19 x: xxhrbxtjxwxcxgxxvpxx
3-10 t: tttvtqkltrtgttttzstg
2-6 r: xrgrjrlfjkf
9-10 g: ggggggggjq
2-5 b: pblbzcbrsjnbl
9-11 z: zhzcnzfclxrbjzzzzzz
7-8 z: zzzzzzzk
4-5 q: qqqqg
1-6 b: drfdfmkjhb
12-16 x: mjkxsmrcvjlkxbtxld
7-11 m: nmfflxpxkqmpdswsm
2-8 n: rnnbqkfqkl
11-15 l: rgpmvlrkgqnglkgbqpq
4-7 g: gggfgjgg
5-10 h: hhhhhmgwhhdphc
16-18 s: dzzkhzpsssqcspdsgs
2-8 c: cccccccq
8-9 s: hssstqksksss
2-13 l: zlxbldnvnnznswl
6-7 x: xxxxxxxzx
2-7 h: thzhwhxthrh
3-4 j: jmjt
1-2 s: sswf
8-15 n: nnnnnnnnnnnnnnw
2-5 s: xssws
6-7 p: pppppqtp
2-6 b: twvbdbqbd
1-2 l: lwdpflk
11-14 k: kkkrkkkkkdjkjpk
4-8 x: vhfxdxxsxxxv
13-14 p: pplnppppppprmppp
16-17 s: xqqkssgpsjpqsstks
1-4 k: kdkkk
11-12 c: glqzcxcsctcl
7-12 h: hhhhhshhhhhhhh
6-13 l: mlqsllllbrlcrllbcllv
8-13 z: zgwzzczzzzzlzpx
6-7 v: qqqvxdgprhxv
3-5 x: xxbxxx
8-11 h: hhprrhnttdhhxshgqhhl
2-3 p: rpppgpp
6-8 d: dkddsgddddd
2-3 k: xkkknk
8-12 w: swrwzzcwdrgjh
9-10 k: kmkkkpkklkkkkkk
13-15 c: cccccccccccchcwc
3-4 g: gjgn
7-8 q: qqqqqqqvq
11-17 t: hbtmtpmzcfqqlcshppf
3-5 l: lllbk
4-6 f: fffffjfffmff
15-16 x: xxxxxxxxxxxxxxwxx
4-5 q: fqmnjq
7-13 w: wwswrpkwqnwwmwbzkkw
1-2 g: glxdfx
8-12 l: lslllllmlgglll
2-3 l: rgghlvwlvbthql
13-16 m: mmmrmmmmmmmmlmwnmmsm
4-5 n: nnnnn
4-20 p: dvfpgxspwwphpgfczzzz
5-7 r: rrrrrrc
5-12 h: hlhshhhhdhhhh
1-4 s: pssb
10-14 q: qqgblzqmnnqqqq
3-4 d: lclh
3-10 k: kkvkklkkklckkdkl
4-5 k: cdjzvk
4-5 m: mmmrm
3-7 l: hhzwdglntjlhdmfkqjf
8-18 n: nnnnnnntqnnhnndnnl
2-8 k: kxkbqkgkkmlkk
1-4 w: wwpwwfmhwhs
1-8 r: kbplbrnrdd
4-11 w: bhlwpttwbkwnkhcdkc
11-15 j: bqbmrjtwrtjqsppm
1-8 v: vjvtvwwbgc
4-5 m: wcjmj
4-11 f: jtlfffrnffhfp
9-11 j: jjjjjjjjzjjjx
3-8 v: svvvvqvlzvvnvz
5-7 v: vvvvrvvtvpv
8-9 s: srzhssrbssssvvsxlm
7-8 p: mjphpdtpn
4-5 d: qzxddrthrdljdrqslzdd
7-10 d: ddddddpdvsd
2-6 x: txdxbxxmxrw
6-16 m: zdbmhmmmmkmmrmmjw
3-4 v: vtvp
4-13 b: bbttmmrrzcgxbc
1-3 j: fdjb
11-13 k: kkfkkkkkkkkzkk
6-9 k: pbgxlkwwkwsp
5-12 t: ttqztdtttttt
5-10 q: qqqqqqbggq
4-5 p: ppllr
1-3 b: tsvxbgbkmm
4-8 b: bhbzbbgb
1-4 w: jlwsww
15-18 l: llllllllllmlllllnw
6-13 d: ddwddjddddddhmdd
3-5 j: jcjdf
7-9 j: njrzjjjjx
7-10 j: jjjjjjjfjjjpjx
3-4 c: zcxcv
4-8 z: skqzvzrnzzclzzzzxrdn
8-13 n: nnnnnnnqgnnrn
5-6 x: rmzcxxxxcxkdxqmlxb
9-14 n: nnnnnncnjnnqnxwnn
11-14 b: bbwbbbbbbbbbbhbwbbb
17-18 j: pjwjjjjjjjjjjjjjjzj
3-6 q: qqfqqz
3-16 t: wrksrrghptphntjtl
8-12 n: nnnnnnnqnnnnnnn
5-6 p: pphcpxsbp
4-8 b: bbbblbbnhbq
1-5 w: wwslcwdw
1-9 t: zkttjttptp
5-8 n: snnfnnndnnn
14-16 s: sssssssssssssrsssss
2-3 c: wctjrbccl
12-14 t: tkjttfpptxbtdvttbwtn
12-13 h: hhhhhhhhhhhjh
7-12 t: wttqzsfttftqkt
5-9 t: xdtvtqvztvttrkztkhtt
2-3 n: mnznz
18-20 t: npbfsgxtfbklzcrrqftt
14-15 g: gjggggggggggggg
1-4 v: vvvvvv
8-9 h: hhhhhghht
1-12 z: zzwwzzzzzczmzcdl
10-15 m: mmmzmbmmmmmmmwfmmcjm
10-11 g: gggggmjgtggggg
2-3 z: zczzrzxvvbfvfggzmq
7-17 g: gkxmjwgnggrxbrtlgqgg
17-18 z: zzzhzzzzzzzzzzzzzf
2-3 r: rcrpstlplrsrx
4-8 j: fpjkzjjs
2-6 l: chlglllqljllldll
12-14 d: mwkdrghdvhdddl
7-11 q: dqqtvzxsrsnjqkfrf
12-14 p: tpppppppppppspp
5-6 m: jmmmmlm
1-7 c: dccdcccqcrc
1-4 t: tttn
2-8 c: xcbgcqlw
13-14 s: brlmjgbjswwqsvhxsss
16-19 g: gggfggggggggggggggtg
5-13 n: nnfwnnqnntnnnnbnnp
11-14 d: dddddrdmdsfddddd
5-13 x: xxxxxxxfmxxxcxxxdv
4-5 x: nvxxq
10-15 q: qqqqqmqqqqwqbqqbq
13-14 g: gggggggggggggg
5-6 w: wtwwnwmw
2-4 f: fdff
1-2 b: gbxvwwzbkccmlmfjglx
4-6 s: sfwgss
3-11 w: wwtrskwrwqwswhwwwn
5-14 j: ffzjjvcfjszmxjxdmbv
11-18 r: rrrrrrrrrrdrrrrrrsr
6-7 j: jjjjjjvj
5-13 h: hhpkvvmnrbxjhwhzppft
16-17 t: ttftttvttttxttttt
3-6 p: kvqmppp
10-14 v: pvzvmvvtvvvmvclmv
4-14 w: xdhxtwzwdsmgwwwgb
6-11 p: ppmpdpgtpbxvspgppg
11-19 f: fwfwpfkfqffffrfxfff
17-20 x: xxxxxxxxxxxxxxxxgxxg
1-2 h: hpfcktmbsjgdtgrx
3-4 c: dcvz
6-7 b: pwmqpbgnbfb
13-18 h: cxpmjhhghnthhqfxhp
1-5 z: zzzzmlzzzzzzzzzzzz
5-15 k: kkkkpkkkkkkkkkkkkkkk
6-8 l: lwlwslkkvzkdbpzzqp
5-10 x: xxxvxxjxxd
4-5 k: kbkkqk
3-10 v: vvgvvvvrvzvvvvvvlvvv
4-5 g: ggggjgggg
14-17 v: vvvvvvvvvvvvvvvvk
5-8 p: twpphnmvqplcxpp
11-16 s: ssssswshsshcsssrdks
10-11 z: zzjzzzzznqzzz
1-5 r: rrrrr
8-9 d: dddddddpdd
3-6 h: hhhhhh
4-5 t: ttbrt
15-16 j: gbjqljxjpjcsjjjrjg
7-8 t: rncvbfct
11-13 t: lltjtdttttthvtttttv
14-15 p: ppppppppbppppppw
1-4 r: rrrrmzc
6-8 k: kfqkfkkrdkkm
5-7 r: rbzlrwwprrr
3-17 s: ssjsssdssvwsssssss
6-7 g: rgdgggk
4-8 k: kkkkkkkjkkk
9-10 q: qqqqqqqqtq
7-12 x: bztpxxxdmzvrpxxk
1-2 z: zpzccz
6-16 n: nncklnttbwhfvdnbf
9-11 b: bmbbcbbbdbt
8-9 c: cccpcccchccbb
12-13 b: bbbbbbbbbbbbs
9-18 j: qrssnrgmjsvfmjzwsj
8-9 r: mrmbrrnrdprzrrfrb
5-8 h: hhhhzhpghq
6-7 n: nqnnptnbn
18-19 q: gkqqdqlqmdzkbbrnfhs
15-16 f: sfbcsbgxzhrzjndc
12-14 t: ttttntttttthtt
6-7 d: mpdddddn
6-15 c: lzqjqtmtzqpmjccx
7-17 m: mmmmmmmmmmmmmmmmgm
1-10 s: sssslhssssss
5-8 j: slmkjlddltj
2-16 l: ldlllclzffklzzvllll
10-11 r: rrrrrsdrrbr
13-14 k: kkkkkkkkkkkkkk
5-6 c: brncpc
11-13 v: vvcvvvvvvzvvnv
12-14 z: zzzzzzgzzztdcwxptzf
1-5 l: bllldlx
3-5 g: rgcxgdsxdqgzgkg
7-8 n: vrspnqnbn
2-12 l: jlsllljmllklllll
2-6 n: ncnvnn
7-14 z: rpxzqzczzlzsnzzzqbn
8-14 f: fmffhhljlffsffffsf
4-10 c: ccdcvpcbjgtwjrcl
9-10 w: wwwwwwwwwm
3-4 s: wssw
12-17 c: cccccccsxcqbccccccp
12-19 z: zdzgzlzbzzzzzzzzzzq
5-6 f: svfbqvfffsf
4-9 z: zzzxzhzzz
2-15 p: pppnpppnppppgpwpppw
6-9 t: ntftnzjntd
14-17 m: mmmmmmmmmmmmmmmmkm
8-9 z: zzzzhptzzzdfzgwzsz
16-17 g: ggcgqzgggggggggtzgg
10-13 x: xxxxxxdxxxxxx
14-16 d: dfdddddddddddddld
3-4 d: ddwd
7-15 w: zcwtmgtwwwbhfwvww
18-19 c: ccccccccccccccccccs
2-8 f: qqrfxvrtvttq
4-5 l: ltjll
5-6 h: hvshchzhh
3-9 f: ffvvfffffff
5-6 g: ggggxw
7-10 p: zmgppmpqfgp
3-6 b: pgvdvbb
18-19 k: kkkkkbkkkkkkkkkkkjg
5-7 w: hwgwwzp
4-5 h: nhdgfthhhvh
1-4 z: hvvzrkfz
15-16 s: ssvgjfsnsplspsvjw
4-8 p: pjjzwpnpfkpzpppv
2-3 w: whwmsq
4-9 d: mjvfdndmzddd
2-4 f: pgff
1-4 f: ffnk
18-19 s: ssswcssgssssssfslssl
5-7 n: rplqnvhd
7-13 s: bsbsskzsfsrss
9-19 j: jjjjjjjjdjjjjjjjjjl
5-7 m: kfwmzqm
5-9 h: hhlhzhhhh
4-6 z: twvnszwzx
7-10 g: gggjggnggdggngggs
12-14 f: ffffffffffffflf
3-5 g: gzgsp
2-6 d: dndddd
5-10 r: rkzffghrrltgrrpmrr
1-3 b: bcfbbs
10-12 b: bvbqdbbbbbbkb
3-10 v: hpvvvvhxsfjvdj
2-3 t: ttttt
1-2 r: fmrf
3-4 z: zqzkxj
14-16 d: ddddddbddgddsdjddd
12-14 l: lllllllwllllgl
3-4 j: mvsjjrzxtsbbk
2-6 k: pkkkkjdk
12-17 k: krkkkkzkkkkhkkghk
2-4 v: bnfvknzw
2-3 q: qqqq
3-7 q: kjgqqpqqrcrq
3-9 j: wfjjzjjjg
9-13 c: fccccvccccccj
3-4 f: jrffdsfdnr
9-13 x: xxxxxxxxxxxxxxxx
2-4 c: cbccc
4-5 q: cwmhd
6-17 z: zvzplhczbrzwpkcqzdzm
9-14 f: vdvdnbvxxmjsftlfbqs
1-5 t: thmwhctkpsj
2-3 t: xtvtfnxhdht
2-5 x: nvxrx
9-14 v: wpvtmgfvqdmnvvvq
6-7 l: fclxwlfblfrvlblc
2-6 g: cttgfsk
8-14 r: vrrrrgrmrrrrhrrrbr
3-7 r: rrrrrplr
5-18 j: snghjbpjctwgjcftjt
17-18 x: xxxxxxxxxsxxxzxxxjxx
9-10 q: rzqqqqqqqzq
13-19 w: lqwpwwwcwwwwgpwtpww
10-11 x: tvcxzxwpxxx
13-14 k: kkkkkkkkkkjkfkk
11-16 w: wwwwwwwwwwqwwwnl
4-5 v: vslnvv
3-5 h: hhshj
5-6 m: npkmmw
2-11 q: nbcbjbcwknqxrkqqwhq
9-10 p: pbppjpppnpppp
10-15 d: drdsdddlddddnddqdwd
1-2 d: pdhd
12-17 w: wwwwwwwwwwhmwgwwwwww
4-5 z: zmtztrtwfntphzzrlj
7-13 p: pvrbkxppsppxpppmqz
1-6 s: ngsssssrbs
7-8 j: jjjjjjzhj
8-16 c: cpcpcqccrnckpmcw
7-8 x: xxnszxbxgxwxx
File diff suppressed because it is too large. Load diff
+1000
View File
@@ -0,0 +1,1000 @@
010100110111
101001010000
101011110010
100100011101
101000011000
110011011110
111010010100
001111100000
111101100001
100010101110
101101110101
010010101110
111001110100
000101111000
111101111100
000010001100
101010111101
001010011011
001101101101
000000110100
001100101011
110110110010
001110000011
011001111001
110100110011
011000110001
111100100010
101011000000
011101000111
011111000111
111011001110
011111010100
001110110001
010110110001
100111011011
100110100100
110010111000
101111001100
101111111001
000001000110
100010010110
110111100101
001001010101
001110001011
101111001011
111011110010
101001001100
101010100001
000000111101
100000000111
111010111101
000110110111
100100101111
110101100101
011010110010
110100001110
001011011010
010101010101
011110000100
010000000010
010111010111
011010011100
101101001011
000111100101
101111001000
000100010000
111000011111
100001010101
011101111110
001111011110
001100111111
000011000100
001011101010
001011010111
101001001110
010101011001
110101001011
011110011110
001000110010
011101110001
101110000000
000001100111
110111000011
001001111010
100100000000
000000011101
111110111011
101001111100
110110100010
101011011000
000111100010
011000110100
111100100100
010010100000
111101001011
111001000000
001001000001
010010100001
110110001100
001101100001
011110010110
100111011101
001001110110
001001100011
011001111010
110110010111
110100111010
111110011100
100000100111
010001101101
110100110101
101111101001
100110010000
100011001111
101111001010
001110111001
111101001101
001010111101
010010011010
100101101111
100000011110
011111010001
000010001101
010100101100
001010001100
100111011100
011110000000
100000011111
000010010100
000001001101
011111011111
100101001101
000100010110
011011111100
000111000011
010100101011
011000101111
001001100111
110111110100
111101111011
110011010101
100111111111
010100010000
001111110101
010011010001
101000111111
000001110100
010010010000
100010000101
110111100111
001011111101
101100101101
001010110100
000100110001
111101110110
111110101110
100011100110
011001001010
001000010111
010001110110
011110000010
101010101111
110100100100
010001100101
001011111110
100111100000
111101000010
101101011110
101100111100
001110011100
110110100101
000110111010
011001010111
010001000011
100010010111
000110110000
001000010101
010011010010
110000100010
010000101110
010110111000
011101001000
011110000111
100110100011
110011001001
001110000111
000001101110
001000100110
011101111000
101100000101
110001100000
101000100101
110101110101
111000101111
101000101001
101000100000
101011010110
000010111100
011101101000
000110101001
000110110110
100111001011
100010001101
101111000111
100100111000
100100111100
000000100010
100110000111
101110001100
110010010010
100110010011
100100000011
000001011111
110100100000
000000111100
110110010001
001101111110
010011010011
001000111110
100010010100
000111110101
111111101001
100110001110
101011011101
110100100010
010100001000
100111101001
010111010001
001110101000
100111101111
100010101011
101111100111
111001100110
111100110101
001101001111
111011011111
011011100110
101111011000
100110110001
100010011101
000111010101
101101011100
111010100100
001101000100
101111100101
010110001010
111101010000
100111110100
100000000011
010001111110
011010001110
110100010100
010100111100
011001101100
110101001001
000011100111
011000000000
110001000011
101011001101
001010110000
010000011010
101110101010
001010011111
011101000101
110011101010
101110001110
100111110000
100100010100
010011101000
100110000110
111100010011
011101101011
100110010100
011011100001
011111100110
111100101111
000111101001
100101011101
010101001110
110011110011
111011011100
101001101111
100001010111
110010111001
011011101011
111110001010
000010111110
011010000101
011011000111
110000000101
010110111011
010110110000
011000110110
100101001000
000111110001
011110000101
001000010000
011011000011
100101100011
010000100000
100010011000
001011100001
000110100010
011000111010
100011001011
101111111010
001100110101
101100111111
010011100111
001110110010
000100100110
010100010001
100100011011
110110100100
100011011001
110001000110
110110100000
101110001010
000100101010
000000100110
110110111110
011000111101
001101111000
110001100001
101011011100
101100001000
100000111011
011110010100
010000101111
100011100101
100111010100
000011010110
111010110011
010101000001
001101010100
010001010011
100011000101
011100011111
100101100010
011111011100
011010010000
011011011110
101000000100
110111111100
100111110011
110100010010
100100011111
000100001101
001101100010
000001010110
110110010010
001110000110
101100110101
111000110011
111110111111
001000111000
010101111010
010011101010
010010100100
000101001011
010011011010
100110111011
100011110111
111001001011
011000000111
000101101101
001000011100
110111111010
011010101001
110000010101
011001110010
001001001011
111010110110
101010000110
110111010011
101110011010
011111110101
010100110011
010000100111
010100001011
011111010110
110011111110
100100111101
000100111001
011011101111
111010001101
100000110101
110000000010
111110101011
011000010110
001011101100
010001110011
111010111010
100010011110
001100000011
000101110000
111011101111
111000000111
100101011100
010111000010
010010111010
001111111100
101001000000
000010111111
001110011000
111110011110
101101000110
101110100110
100011011100
101100000001
111001111011
101010101000
010111101110
000010100101
100010111000
101111000100
000010011101
011000111011
010110011011
010101100010
100101010111
011010101110
110011011011
110100101011
110110111100
000101110011
011001110101
111000100100
101010000001
110111100011
100001000110
001101011111
101010000101
011111111000
000111011110
100001111101
011010010010
101010011100
101110101100
000001010100
101010100110
001100101010
101110100100
100100111001
110010100111
000100001110
111001110101
110000101110
000010011000
010001110010
000100010011
011110100001
001010111010
010010111001
010001001011
101101001110
011001000110
110110011001
110111000000
011010111001
001000010001
010110011100
000111110010
101110000010
000101001100
110010111101
001101010000
010010011001
010000010111
011110011100
111000100011
110101011000
101100100010
111111100110
010011111110
111110000100
100010100100
101110111100
110000010010
011010000110
000101100101
001011001000
111000110001
000010001011
111000010000
100000101000
001101011101
101000101100
010100111010
101100000110
001111010011
011111110011
101000100010
111000001111
111000111010
001110000101
110001010011
011101011010
101001000101
111111001110
111110110101
110001110100
101101010101
000100011111
101100100110
000111011000
101010110001
000100110110
101101110111
100011101000
010011110101
110101111001
110001110011
000100111100
010011010110
101100000100
011011101000
101110000100
100100010110
111011100100
011010110000
100111011010
110100011010
101111111111
110110011100
110011100101
100001111100
111101100110
110010001010
010001001101
101110100001
111101001100
110101000100
011001110000
010110100011
111111000001
110010100000
101100110000
110000000000
001101110111
001100001000
001101101000
101100100011
001001011011
011011101110
010011111000
110100111000
011001101010
111011111010
100011111010
001011011110
111101100101
100011100100
101110101000
000111110110
100111010001
110000011100
111111111110
110100010101
101001110011
000010001110
000010001001
110000110000
001001000110
110111110000
010101010010
111101110001
110101101101
010111000111
111010110111
001011011011
001001100001
101000101110
101100110010
100100100100
011110111001
011100000110
100110110111
111010001110
110111111011
011010111000
011101100001
011110001111
110101011011
000000001111
101000001110
111010101110
001100001110
010111000101
111100111110
001110101110
011101111010
011100001111
000000000101
111111000100
000110010101
001101000010
111001111100
101100010100
001011001001
010110000010
010001101000
001111101111
011011011011
111110000001
100111011000
011000000110
100111101110
101100000000
101011000100
111000011101
100001101001
100001101000
011110001001
110110011011
011100010111
000100111000
000110000001
000111001100
000111111010
110110000001
000010011010
100000101001
101110001011
100010110101
110011010000
111101111111
100101011110
101110011111
111111011111
011010010110
010100101010
001010100001
000000110110
110000111101
010101101011
110100100001
011110001110
111001010011
001000001000
000011111110
111000100110
100100101000
011011000110
111001100011
111100101000
110001100010
011000000001
111101010010
001011000100
010100110110
000001111101
001010000011
010010100110
100000011101
101011010011
000111110000
101001001011
100000001000
010000111100
000100101011
011101010000
101101010010
100010011001
001101100101
101010010100
111011111001
101000010001
001111000000
011001000010
100101010110
000100001100
010000101000
110001111111
000101010111
110100101110
111100110001
101011000001
101100101110
110000101100
101100111110
111000010110
010110101110
001010100110
110011010010
111001100000
100100100001
000011011001
111011011110
011110000011
101000100001
101010010001
101001100001
100011001010
100000000110
010000100001
001011011001
110111010100
111001000111
111111110010
101010100101
100110001011
010110011001
110001111110
100100000111
110001110111
101110010101
010010111000
000000011001
101110000011
100001010000
001100001011
111111001100
111010010010
010011100001
100001111000
000010000110
010100011100
101111101010
100110010101
101001101001
100110101001
001001011100
001100011101
001100011001
000100100100
100011010100
000100001011
111101100011
011010001011
111000101101
101000010000
010110001111
111100010110
000111111101
100100111011
101011000010
011001100010
101111011100
101001110101
101111101100
110101001111
111101100000
101110011011
100101110000
001100111110
010010101010
001100100100
001010101100
001101100111
110010011100
010000001001
011011110001
100101110001
101111100100
110101101000
110000100000
101010011101
111000010011
100001010100
000101101010
101111001001
000110101101
101011010111
000001001100
100100111110
000010111011
000100000100
100100001110
011010000001
010101110011
111101101101
101110101111
100010100011
110001011101
110001011011
100011110011
111000011011
110101110010
000110010100
101000001010
011001011010
111000001101
101001101101
111001000001
000100000110
110000000110
010011001110
011101000001
010000101101
010011011001
010101001111
011110110001
100111110001
101111011101
111001000010
111111111000
001011101011
001010100111
111110111101
011111011101
000100111101
010010000101
001111101011
110010100100
110001011001
010111111000
100100101110
110111011101
100100000110
111111011011
101101111001
111011010001
000000011100
011011101001
100010111101
110111000110
001100110010
111100111100
111111000010
100111010111
100011001100
110101011100
001111001100
101010000010
110011010111
110011010001
001110110110
000011011100
001011001011
100000000001
110000100011
011011110011
100101100100
011100100011
100001110111
011101001001
011101100011
011001001101
011001000100
010111001111
100001001111
101001100000
110010001011
010101011100
011110110010
111010000110
000010100100
110111000111
001011010110
010001000100
110100010111
010101100110
010011101111
101000001000
011011001011
100001000001
101111110011
100110110011
100011100000
101101000010
000101011000
111101110010
110111010110
101110000110
110010110001
000001101111
110101101111
000010111010
100010010001
111010011001
011110011011
000110101010
010100001111
010111011000
000011110100
010001010101
110111011001
010001111001
111010111111
010010010001
010001100011
111110001001
101000010111
001101110101
111011000000
001100110100
000110001001
110111101001
010100110000
101110111110
100000000010
110011010011
010101100101
110100110001
100010100010
101111111000
111111100100
011100001101
000000100001
100110100110
010100100011
000000001000
101010110100
100010001111
111000001011
010101000111
001111110001
000000111011
111111101100
001110110000
011110111011
001110100011
100110000010
010110110011
001001101110
110011101110
111001100010
111100010000
000001010111
001110001100
110000101000
100101111010
001011001110
100111101100
111001101100
110111110010
101000110100
100011100011
100000100101
100001111011
011110101001
000111000100
010111100001
111111010001
100100001100
111111010111
001101111101
000110001101
010110000001
111011010110
011110110110
011111001001
001101011010
010101110101
110001100100
101101011101
011011010110
001011001101
101110110101
001101010010
101010001101
100111000000
110110101100
001011111000
000100111011
000111110111
101000111100
110000110011
000001000011
000111111110
001010010010
100000111001
010101111100
001100010100
010101110111
110101010010
000001001111
101101111100
011110111101
111001010001
000100101101
011100100100
110101000111
011111100011
110001001101
100001100111
101101100111
000100110000
101001100010
001101101111
100011000100
011100101111
011001100100
011010011110
010011001010
011110101000
111101111010
110001010100
000110010001
001111011011
110000111011
000001111001
010011001100
100110101011
111011001011
001100110011
010010011101
100011110000
110011110111
+1000
View File
@@ -0,0 +1,1000 @@
forward 9
down 9
up 4
down 5
down 6
up 6
down 7
down 1
forward 6
down 4
forward 8
up 5
forward 9
down 1
down 4
up 4
up 5
up 4
down 1
forward 8
down 1
forward 2
forward 8
down 9
forward 2
down 6
down 2
up 8
down 6
forward 9
forward 7
down 6
forward 3
down 2
forward 4
down 5
up 2
down 9
down 8
up 5
forward 5
forward 4
up 9
forward 9
down 8
forward 8
forward 2
up 8
down 7
forward 8
down 3
forward 6
up 9
forward 9
forward 4
forward 9
forward 6
down 4
up 2
forward 4
up 5
up 6
forward 9
down 3
forward 4
forward 9
down 1
forward 1
up 6
up 4
forward 7
up 7
up 3
forward 2
forward 8
forward 6
down 4
forward 2
forward 3
down 7
down 5
down 8
down 5
forward 1
down 8
down 2
down 8
down 3
forward 4
forward 8
forward 9
down 1
forward 8
down 1
down 6
down 7
down 7
forward 5
forward 3
down 2
down 1
forward 2
forward 1
down 6
down 4
up 5
up 9
down 4
forward 9
down 2
down 5
down 4
down 2
forward 2
forward 4
forward 6
forward 6
forward 3
down 6
up 5
forward 8
forward 3
down 9
down 3
forward 4
forward 2
down 9
down 8
down 7
down 3
forward 2
down 7
down 3
down 5
forward 6
up 9
up 8
forward 5
down 6
down 1
down 6
down 5
forward 7
down 2
forward 8
forward 7
forward 2
forward 8
up 6
forward 5
down 2
down 5
up 8
up 6
forward 1
down 4
up 5
up 5
up 5
forward 4
up 1
forward 3
down 9
down 6
up 1
forward 1
forward 2
forward 1
forward 4
forward 6
forward 6
up 7
down 7
down 7
down 9
forward 9
down 1
down 5
down 1
down 7
down 1
up 6
forward 2
down 4
up 3
up 2
forward 6
up 4
down 1
down 5
forward 9
up 4
up 3
forward 3
up 7
forward 2
forward 5
down 9
forward 7
forward 4
down 1
up 2
forward 4
up 4
down 2
forward 4
up 5
up 1
down 9
down 3
up 6
forward 7
up 7
forward 2
down 4
up 3
up 3
forward 4
up 5
down 3
up 8
forward 6
forward 8
down 1
down 9
down 7
forward 7
forward 5
forward 2
up 9
forward 3
forward 1
down 7
down 6
forward 5
up 3
forward 6
down 4
forward 9
down 7
forward 9
down 9
down 5
down 6
down 2
down 2
down 8
down 3
down 9
forward 5
up 6
forward 1
down 3
down 2
up 1
up 6
forward 3
down 6
down 6
up 9
up 8
forward 2
down 7
forward 5
up 9
down 7
down 3
forward 2
forward 2
up 9
forward 1
forward 7
down 9
forward 6
forward 7
up 8
down 7
down 5
down 3
up 6
down 5
forward 6
down 9
down 6
up 9
down 7
forward 2
down 5
up 4
down 4
down 8
forward 7
down 9
forward 8
forward 6
down 7
down 1
forward 5
up 6
forward 4
up 7
up 4
up 5
forward 9
forward 5
forward 4
down 6
down 5
forward 2
forward 7
down 8
forward 3
up 5
down 2
up 3
forward 4
up 5
up 2
forward 4
forward 1
forward 1
forward 4
forward 4
down 2
forward 1
forward 1
up 5
up 7
down 8
down 4
forward 2
forward 2
down 3
forward 7
down 8
up 3
forward 2
down 2
forward 3
up 2
forward 3
up 6
down 7
up 7
down 3
up 9
forward 3
forward 7
down 7
up 9
down 6
down 2
forward 8
forward 8
up 7
down 6
forward 2
forward 1
down 4
up 2
forward 6
up 7
down 5
up 1
forward 3
forward 9
up 4
forward 5
forward 8
down 3
up 5
forward 9
down 6
up 9
forward 5
down 4
down 1
down 6
up 9
up 2
forward 5
down 1
up 3
down 5
forward 2
down 4
forward 5
down 6
down 4
down 4
forward 1
down 7
down 2
forward 4
forward 5
up 9
down 6
down 2
forward 7
up 8
down 9
forward 7
down 5
down 2
down 8
down 8
up 4
up 3
down 3
down 7
forward 4
forward 6
down 4
up 7
forward 4
forward 4
forward 1
down 3
down 2
forward 7
forward 2
up 9
down 7
up 7
forward 2
forward 6
forward 9
down 3
forward 7
forward 5
up 5
up 1
forward 6
forward 4
down 2
forward 3
forward 9
down 1
forward 6
forward 7
forward 1
up 7
up 4
forward 7
forward 8
down 7
down 8
down 9
forward 7
down 9
up 6
down 7
up 3
down 7
forward 4
forward 9
forward 1
down 4
forward 1
up 4
up 4
forward 9
forward 8
up 4
down 2
forward 4
forward 2
forward 8
down 2
up 6
down 4
forward 6
forward 5
down 2
forward 9
down 5
forward 5
down 3
down 2
up 9
down 3
forward 6
forward 6
up 9
down 1
forward 4
up 3
forward 1
forward 3
forward 3
down 6
down 2
forward 8
down 4
forward 8
forward 8
forward 5
up 6
forward 3
down 1
down 8
forward 3
forward 4
down 2
down 7
up 8
forward 3
forward 8
up 2
forward 6
down 4
forward 9
forward 5
down 1
forward 6
forward 2
down 3
up 4
down 7
down 2
up 2
forward 7
down 6
down 2
up 5
up 5
down 9
down 7
down 3
down 1
down 9
forward 4
down 4
forward 7
forward 8
forward 4
up 6
forward 6
forward 9
down 2
forward 4
down 8
down 4
forward 5
forward 2
up 4
down 3
up 8
up 1
down 1
forward 9
up 3
up 1
forward 1
forward 7
forward 1
down 7
forward 7
forward 7
down 7
forward 4
up 6
forward 3
down 1
up 1
up 8
forward 5
forward 2
up 4
forward 7
down 2
down 3
down 8
up 7
up 5
forward 8
down 5
down 3
down 9
forward 6
forward 4
down 9
up 5
forward 3
up 7
up 9
up 1
forward 1
forward 3
forward 1
up 8
up 4
down 1
down 8
down 3
down 1
down 1
down 9
forward 4
down 3
forward 9
forward 2
down 1
forward 9
up 7
forward 6
up 4
forward 8
forward 3
down 2
down 2
down 2
up 5
forward 1
up 1
forward 7
down 1
forward 1
down 8
up 4
up 1
forward 7
down 8
down 9
forward 2
forward 1
up 3
forward 4
up 8
forward 5
down 2
forward 6
forward 8
up 9
forward 2
down 7
down 4
up 3
forward 1
forward 6
forward 9
down 1
down 8
down 1
down 2
forward 3
forward 9
forward 2
forward 4
forward 7
forward 3
up 8
up 9
forward 3
forward 6
down 5
up 6
down 8
forward 5
up 4
up 9
forward 6
forward 3
up 9
forward 8
forward 5
forward 9
forward 7
up 6
forward 3
forward 1
up 4
forward 9
forward 8
up 1
up 2
down 3
down 4
down 9
down 4
down 5
down 6
down 2
down 5
forward 6
forward 4
up 2
up 7
down 5
down 9
forward 3
down 5
forward 6
down 7
forward 1
forward 7
forward 9
forward 7
forward 4
forward 4
up 1
up 4
down 6
up 2
up 1
down 4
forward 2
down 4
forward 6
down 3
up 6
down 2
up 3
forward 1
forward 9
forward 3
up 9
forward 7
forward 5
forward 4
down 5
down 9
forward 6
forward 7
up 1
forward 7
forward 2
forward 2
forward 5
forward 6
down 3
down 7
down 3
down 4
down 6
down 1
forward 2
down 8
forward 4
forward 7
up 1
down 4
down 1
down 2
down 3
up 3
forward 9
forward 2
down 8
up 3
forward 8
forward 7
up 8
down 8
forward 2
down 9
down 9
down 5
forward 1
forward 3
forward 6
up 1
up 2
forward 1
down 3
up 6
forward 2
forward 8
forward 2
down 3
forward 8
forward 9
down 7
down 3
down 2
down 9
down 3
up 6
forward 9
forward 5
forward 1
forward 9
down 9
up 2
down 1
up 6
forward 6
down 3
forward 6
forward 3
forward 5
forward 4
up 2
up 4
up 6
forward 1
forward 6
up 6
up 4
up 7
down 8
down 5
up 1
up 1
down 5
forward 5
down 9
forward 8
down 3
up 4
down 9
down 1
forward 2
forward 9
down 3
down 8
down 5
down 6
forward 7
forward 1
down 9
down 7
forward 8
forward 2
up 1
up 1
forward 7
up 1
forward 2
down 9
up 4
forward 5
down 1
up 1
down 8
down 3
up 1
down 8
down 7
down 2
forward 9
down 5
forward 2
up 2
up 6
up 4
forward 6
up 5
forward 5
forward 4
forward 8
down 8
down 6
down 1
down 3
down 6
forward 8
up 1
up 5
down 4
forward 4
down 9
forward 4
up 6
down 7
forward 4
down 3
down 4
forward 1
forward 3
down 1
down 7
up 8
down 3
down 4
down 3
forward 3
down 8
forward 8
down 3
down 7
forward 2
up 2
forward 7
down 9
up 7
forward 5
down 2
down 5
up 4
up 8
forward 8
forward 9
forward 8
down 8
forward 6
forward 9
forward 6
forward 8
forward 6
forward 8
forward 2
down 7
down 3
forward 7
down 4
down 5
up 1
forward 5
down 3
down 7
up 4
forward 9
down 2
down 3
forward 1
up 6
down 1
down 9
forward 8
forward 9
forward 2
down 6
down 4
up 3
up 8
forward 1
down 3
up 8
up 7
down 4
up 3
down 7
down 2
down 5
down 7
down 2
forward 2
down 3
up 2
forward 8
up 1
forward 2
up 4
forward 1
forward 8
forward 6
forward 2
down 2
forward 5
up 4
down 9
down 7
forward 2
down 9
down 9
forward 6
down 8
down 4
down 7
down 9
forward 7
forward 7
up 6
forward 3
forward 5
forward 6
down 8
up 1
forward 2
up 4
up 2
down 8
down 9
down 1
down 3
forward 7
forward 5
forward 6
up 6
down 7
up 8
up 1
forward 8
down 5
up 1
down 2
down 5
forward 6
down 4
forward 5
down 4
forward 3
down 5
up 4
up 7
forward 2
up 2
down 8
forward 6
+42
View File
@@ -0,0 +1,42 @@
package registry
import (
"fmt"
"os"
)
type Runner interface {
Run(input string, part string)
}
type DayRunner[T any] struct {
ParseInput func(string) T
PartOne func(T) int
PartTwo func(T) int
}
func (r *DayRunner[T]) Run(input string, part string) {
data := r.ParseInput(input)
switch part {
case "":
fmt.Println(r.PartOne(data))
fmt.Println(r.PartTwo(data))
case "1":
fmt.Println(r.PartOne(data))
case "2":
fmt.Println(r.PartTwo(data))
default:
fmt.Fprintf(os.Stderr, "Invalid part: %s\n", part)
os.Exit(1)
}
}
var Days = make(map[string]any)
func Register[T any](key string, parseInput func(string) T, partOne func(T) int, partTwo func(T) int) {
Days[key] = &DayRunner[T]{
ParseInput: parseInput,
PartOne: partOne,
PartTwo: partTwo,
}
}