From ae3dbc67d114f5995be27dca1e3539b872a6d2ef Mon Sep 17 00:00:00 2001 From: Anne-Greeth van Herwijnen Date: Tue, 12 Dec 2023 09:30:59 +0100 Subject: [PATCH] Solve Day 8 part 1, Day 9, Day 10 & Day 11 --- app/controllers/puzzles/10.js | 142 ++++- app/controllers/puzzles/11.js | 117 +++- app/controllers/puzzles/8.js | 38 +- app/controllers/puzzles/9.js | 27 +- app/routes/puzzles/10.js | 19 +- app/routes/puzzles/11.js | 2 +- app/routes/puzzles/8.js | 13 +- app/routes/puzzles/9.js | 4 +- public/inputs/day10/full-liulangzhe.txt | 5 + public/inputs/day10/full-minthamie.txt | 140 +++++ public/inputs/day10/intro.txt | 5 + public/inputs/day11/full-minthamie.txt | 140 +++++ public/inputs/day11/intro.txt | 10 + public/inputs/day8/full-liulangzhe.txt | 9 + public/inputs/day8/full-minthamie.txt | 772 ++++++++++++++++++++++++ public/inputs/day8/intro.txt | 5 + public/inputs/day9/full-liulangzhe.txt | 3 + public/inputs/day9/full-minthamie.txt | 200 ++++++ public/inputs/day9/intro.txt | 3 + 19 files changed, 1641 insertions(+), 13 deletions(-) diff --git a/app/controllers/puzzles/10.js b/app/controllers/puzzles/10.js index 58093ef..07e2df5 100644 --- a/app/controllers/puzzles/10.js +++ b/app/controllers/puzzles/10.js @@ -1,16 +1,152 @@ -/* eslint-disable no-unused-vars */ import PuzzlesBaseController from './base'; export default class Puzzles10Controller extends PuzzlesBaseController { // BEGIN-SNIPPET day10-solution1 + isValidPipe([curX, curY], pipe, [pipeX, pipeY]) { + switch (pipe) { + case '|': + return ( + `${pipeX}.${pipeY}` == `${curX}.${curY + 1}` || + `${pipeX}.${pipeY}` == `${curX}.${curY - 1}` + ); + case '-': + return ( + `${pipeX}.${pipeY}` == `${curX + 1}.${curY}` || + `${pipeX}.${pipeY}` == `${curX - 1}.${curY}` + ); + case 'L': + return ( + `${pipeX}.${pipeY}` == `${curX - 1}.${curY}` || + `${pipeX}.${pipeY}` == `${curX}.${curY + 1}` + ); + case 'F': + return ( + `${pipeX}.${pipeY}` == `${curX - 1}.${curY}` || + `${pipeX}.${pipeY}` == `${curX}.${curY - 1}` + ); + case '7': + return ( + `${pipeX}.${pipeY}` == `${curX + 1}.${curY}` || + `${pipeX}.${pipeY}` == `${curX}.${curY - 1}` + ); + case 'J': + return ( + `${pipeX}.${pipeY}` == `${curX + 1}.${curY}` || + `${pipeX}.${pipeY}` == `${curX}.${curY + 1}` + ); + default: + } + } + + nextPipe([curX, curY], pipe, [pipeX, pipeY]) { + switch (pipe) { + case '|': + return `${pipeX}.${pipeY}` == `${curX}.${curY + 1}` + ? `${pipeX}.${pipeY + 1}` + : `${pipeX}.${pipeY - 1}`; + case '-': + return `${pipeX}.${pipeY}` == `${curX + 1}.${curY}` + ? `${pipeX + 1}.${pipeY}` + : `${pipeX - 1}.${pipeY}`; + case 'L': + return `${pipeX}.${pipeY}` == `${curX}.${curY + 1}` + ? `${pipeX + 1}.${pipeY}` + : `${pipeX}.${pipeY - 1}`; + case 'F': + return `${pipeX}.${pipeY}` == `${curX - 1}.${curY}` + ? `${pipeX}.${pipeY + 1}` + : `${pipeX + 1}.${pipeY}`; + case '7': + return `${pipeX}.${pipeY}` == `${curX + 1}.${curY}` + ? `${pipeX}.${pipeY + 1}` + : `${pipeX - 1}.${pipeY}`; + case 'J': + return `${pipeX}.${pipeY}` == `${curX + 1}.${curY}` + ? `${pipeX}.${pipeY - 1}` + : `${pipeX - 1}.${pipeY}`; + default: + } + } + steps = []; solve1(input) { - return 'Solution 1'; + let [starting, coordinates] = input; + let [startX, startY] = starting.split('.').map((n) => parseInt(n)); + let fromStartPipes = [ + [coordinates[`${startX - 1}.${startY}`], startX - 1, startY], + [coordinates[`${startX}.${startY - 1}`], startX, startY - 1], + [coordinates[`${startX}.${startY + 1}`], startX, startY + 1], + [coordinates[`${startX + 1}.${startY}`], startX + 1, startY], + ]; + let nextPipe = ''; + let prevPipe = []; + this.steps = []; + fromStartPipes.forEach((set) => { + let [pipe, pipeX, pipeY] = set; + if (pipe) { + if (this.isValidPipe([startX, startY], pipe, [pipeX, pipeY])) { + nextPipe = this.nextPipe([startX, startY], pipe, [pipeX, pipeY]); + this.steps.push(`${pipeX}.${pipeY}`, nextPipe); + prevPipe = [pipeX, pipeY]; + } + } + }); + while (nextPipe !== starting) { + let coors = nextPipe.split('.').map((n) => parseInt(n)); + nextPipe = this.nextPipe(prevPipe, coordinates[nextPipe], coors); + prevPipe = [coors[0], coors[1]]; + this.steps.push(nextPipe); + } + return this.steps.length / 2; } // END-SNIPPET // BEGIN-SNIPPET day10-solution2 + isWithinBoundaries([x, y], coordinates, maxY) { + let count = 0; + let hasStarted = ''; + if (this.steps.includes(`${x}.${y}`)) { + return false; + } + for (let i = y + 1; i <= maxY; i++) { + if ( + coordinates[`${x}.${i}`] == '|' || + !this.steps.includes(`${x}.${i}`) + ) { + // Do nothing + } else if (coordinates[`${x}.${i}`] == '-') { + count++; + } else { + // 7 & F begin J & L end + if ( + coordinates[`${x}.${i}`] == '7' || + coordinates[`${x}.${i}`] == 'F' + ) { + hasStarted = coordinates[`${x}.${i}`]; + } else { + let closing = coordinates[`${x}.${i}`]; + if ( + (hasStarted == '7' && closing == 'L') || + (hasStarted == 'F' && closing == 'J') + ) { + count++; + } + } + } + } + return count % 2 !== 0; + } + solve2(input) { - return 'Solution 1'; + let [, coordinates, maxX, maxY] = input; + let inside = 0; + for (let y = 0; y <= maxY; y++) { + for (let x = 0; x <= maxX; x++) { + if (this.isWithinBoundaries([x, y], coordinates, maxY)) { + inside++; + } + } + } + return inside; } // END-SNIPPET } diff --git a/app/controllers/puzzles/11.js b/app/controllers/puzzles/11.js index 14f0ba1..71c893f 100644 --- a/app/controllers/puzzles/11.js +++ b/app/controllers/puzzles/11.js @@ -3,14 +3,127 @@ import PuzzlesBaseController from './base'; export default class Puzzles11Controller extends PuzzlesBaseController { // BEGIN-SNIPPET day11-solution1 + transposeMatrix(array) { + return array[0].map((_, colIndex) => array.map((row) => row[colIndex])); + } + + pairs = (arr) => + arr.map((v, i) => arr.slice(i + 1).map((w) => [v, w])).flat(); + solve1(input) { - return 'Solution 1'; + let expandedRows = []; + input.forEach((line) => { + if (line.every((x) => x === '.')) { + expandedRows.push(line, line); + } else { + expandedRows.push(line); + } + }); + let vertical = this.transposeMatrix(expandedRows); + let expanded = []; + vertical.forEach((line) => { + if (line.every((x) => x === '.')) { + expanded.push(line, line); + } else { + expanded.push(line); + } + }); + expanded = this.transposeMatrix(expanded); + let galaxies = []; + expanded.forEach((row, y) => { + row.forEach((cell, x) => { + if (cell == '#') { + galaxies.push([x, y]); + } + }); + }); + let galaxyPairs = this.pairs(galaxies); + let count = 0; + galaxyPairs.forEach(([[x1, y1], [x2, y2]]) => { + count += Math.abs(x1 - x2) + Math.abs(y1 - y2); + }); + return count; } // END-SNIPPET // BEGIN-SNIPPET day11-solution2 solve2(input) { - return 'Solution 1'; + let expandedY = []; + input.forEach((line, y) => { + if (line.every((x) => x === '.')) { + expandedY.push(y); + } + }); + let vertical = this.transposeMatrix(input); + let expandedX = []; + vertical.forEach((line, x) => { + if (line.every((x) => x === '.')) { + expandedX.push(x); + } + }); + let galaxies = []; + input.forEach((row, y) => { + row.forEach((cell, x) => { + if (cell == '#') { + galaxies.push([x, y]); + } + }); + }); + let galaxyPairs = this.pairs(galaxies); + let count = 0; + galaxyPairs.forEach(([[x1, y1], [x2, y2]]) => { + let x1Index; + let x2Index; + let y1Index; + let y2Index; + for (let i = 0; i < expandedX.length; i++) { + if (x1 < expandedX[0]) { + x1Index = 0; + } + if (x1 > expandedX[i]) { + x1Index = i + 1; + } + if (x1 > expandedX.slice(-1)) { + x1Index = expandedX.length; + } + if (x2 < expandedX[0]) { + x2Index = 0; + } + if (x2 > expandedX[i]) { + x2Index = i + 1; + } + if (x2 > expandedX.slice(-1)) { + x2Index = expandedX.length; + } + } + for (let i = 0; i < expandedY.length; i++) { + if (y1 < expandedY[0]) { + y1Index = 0; + } + if (y1 > expandedY[i]) { + y1Index = i + 1; + } + if (y1 > expandedY.slice(-1)) { + y1Index = expandedY.length; + } + if (y2 < expandedY[0]) { + y2Index = 0; + } + if (y2 > expandedY[i]) { + y2Index = i + 1; + } + if (y2 > expandedY.slice(-1)) { + y2Index = expandedY.length; + } + } + let result = + Math.abs(x1 - x2) + + Math.abs(x1Index - x2Index) * (1000000 - 1) + + Math.abs(y1 - y2) + + Math.abs(y1Index - y2Index) * (1000000 - 1); + count += result; + }); + return count; } // END-SNIPPET } diff --git a/app/controllers/puzzles/8.js b/app/controllers/puzzles/8.js index b61f2ef..462d738 100644 --- a/app/controllers/puzzles/8.js +++ b/app/controllers/puzzles/8.js @@ -4,13 +4,47 @@ import PuzzlesBaseController from './base'; export default class Puzzles8Controller extends PuzzlesBaseController { // BEGIN-SNIPPET day8-solution1 solve1(input) { - return 'Solution 1'; + let [inst, network] = input; + inst = inst.split(''); + let i = 0; + let steps = 0; + let curNode = 'AAA'; + while (curNode !== 'ZZZ') { + if (inst[i] == 'L') { + curNode = network[curNode][0]; + } else { + curNode = network[curNode][1]; + } + i++; + steps++; + if (i == inst.length) { + i = 0; + } + } + return steps; } // END-SNIPPET // BEGIN-SNIPPET day8-solution2 solve2(input) { - return 'Solution 1'; + let [inst, network, endInA] = input; + inst = inst.split(''); + let array = []; + for (const [key, value] of Object.entries(network)) { + array.push(key, ...value); + } + console.log(array); + // let firstZZZ = array.indexOf('ZZZ'); + // let lastZZZ = array.lastIndexOf('ZZZ'); + // console.log(firstZZZ, lastZZZ); + let zzzIndex = array.findIndex((num, idx, arr) => { + // Without the arr argument, there's no way to easily access the + // intermediate array without saving it to a variable. + console.log(num, idx); + return num == 'ZZZ' && idx % 3 == 0; + }); + console.log(new Set(array), array.length); + return 'Solution 2'; } // END-SNIPPET } diff --git a/app/controllers/puzzles/9.js b/app/controllers/puzzles/9.js index 8e6fd53..f14f4b5 100644 --- a/app/controllers/puzzles/9.js +++ b/app/controllers/puzzles/9.js @@ -3,14 +3,37 @@ import PuzzlesBaseController from './base'; export default class Puzzles9Controller extends PuzzlesBaseController { // BEGIN-SNIPPET day9-solution1 + calculateNext(array) { + if (array.every((x) => x === array[0])) { + return array[0]; + } else { + let newArray = []; + for (let i = 1; i < array.length; i++) { + newArray.push(array[i] - array[i - 1]); + } + return array[array.length - 1] + this.calculateNext(newArray); + } + } + solve1(input) { - return 'Solution 1'; + return input.map((row) => this.calculateNext(row)).reduce((a, b) => a + b); } // END-SNIPPET // BEGIN-SNIPPET day9-solution2 + calculatePrev(array) { + if (array.every((x) => x === array[0])) { + return array[0]; + } else { + let newArray = []; + for (let i = 1; i < array.length; i++) { + newArray.push(array[i] - array[i - 1]); + } + return array[0] - this.calculatePrev(newArray); + } + } solve2(input) { - return 'Solution 1'; + return input.map((row) => this.calculatePrev(row)).reduce((a, b) => a + b); } // END-SNIPPET } diff --git a/app/routes/puzzles/10.js b/app/routes/puzzles/10.js index 6706b74..7f247c4 100644 --- a/app/routes/puzzles/10.js +++ b/app/routes/puzzles/10.js @@ -2,7 +2,24 @@ import Route from '@ember/routing/route'; export default class Puzzles10Route extends Route { parseInput(file) { - return file.split('\n'); + let coordinates = {}; + let starting = ''; + let maxY = 0; + let maxX = 0; + file.split('\n').map((line, y) => { + let tiles = line.split(''); + maxX = tiles.length - 1; + tiles.forEach((tile, x) => { + if (tile !== '.') { + coordinates[`${x}.${y}`] = tile; + } + if (tile == 'S') { + starting = `${x}.${y}`; + } + }); + maxY = y; + }); + return [starting, coordinates, maxX, maxY]; } async model() { diff --git a/app/routes/puzzles/11.js b/app/routes/puzzles/11.js index 8527574..a40f5e2 100644 --- a/app/routes/puzzles/11.js +++ b/app/routes/puzzles/11.js @@ -2,7 +2,7 @@ import Route from '@ember/routing/route'; export default class Puzzles11Route extends Route { parseInput(file) { - return file.split('\n'); + return file.split('\n').map((line) => line.split('')); } async model() { diff --git a/app/routes/puzzles/8.js b/app/routes/puzzles/8.js index 870a841..6db59a3 100644 --- a/app/routes/puzzles/8.js +++ b/app/routes/puzzles/8.js @@ -2,7 +2,18 @@ import Route from '@ember/routing/route'; export default class Puzzles8Route extends Route { parseInput(file) { - return file.split('\n'); + let [inst, network] = file.split('\n\n'); + let procNetwork = {}; + let endInA = []; + network.split('\n').map((line) => { + let [node, left, right] = line.match(/[A-Z]{3}/g); + if (node.slice(-1) == 'A') { + endInA.push(node); + } + procNetwork[node] = [left, right]; + }); + + return [inst, procNetwork, endInA]; } async model() { diff --git a/app/routes/puzzles/9.js b/app/routes/puzzles/9.js index 34bbef1..cbd3f9c 100644 --- a/app/routes/puzzles/9.js +++ b/app/routes/puzzles/9.js @@ -2,7 +2,9 @@ import Route from '@ember/routing/route'; export default class Puzzles9Route extends Route { parseInput(file) { - return file.split('\n'); + return file + .split('\n') + .map((line) => line.split(' ').map((n) => parseInt(n))); } async model() { diff --git a/public/inputs/day10/full-liulangzhe.txt b/public/inputs/day10/full-liulangzhe.txt index e69de29..1ddc980 100644 --- a/public/inputs/day10/full-liulangzhe.txt +++ b/public/inputs/day10/full-liulangzhe.txt @@ -0,0 +1,5 @@ +7-F7- +.FJ|7 +SJLL7 +|F--J +LJ.LJ \ No newline at end of file diff --git a/public/inputs/day10/full-minthamie.txt b/public/inputs/day10/full-minthamie.txt index e69de29..4691517 100644 --- a/public/inputs/day10/full-minthamie.txt +++ b/public/inputs/day10/full-minthamie.txt @@ -0,0 +1,140 @@ +7.LJFFF7F77.----7F7777F|-F-7-7F77LL77J77F|.|JFF7-F|77.FF77|F77F-L|-L7FFL7L7--.L|--7L7.J-F7-|-F|7FJ.FJJ7F7-7-7JFL|7-|-7FJJ7FFF7LL--L7.-JJ-F-F +J7LL-J||FLJ-|J.F|-L|FJ7J|.LL-L7F|LF||JFJ7L-JLF.||FL.FF.--F77|J7|L|.|LF7-|||J|7L|7L77|-..|JJLFJ|||JF|L|F|JF--77LFLF7JJL-JLL-JLL7L.-L-|FJ.LLFF +L|-7LFLL7J|..|F-7-7L|-7.L--L-JL|..FFJ.|7||F7F----JJ..|||L||L|.L|L|.|F--7|L-7F|FL7JLJLL-7J7|.||-LJ---7-L-J|FFL|FF7.|7F7..|L-7|F7J-7|.||-JJL7J +||||-JJL|-7F|-|LLLL.FF|-J|F-7.LF7-7L|FFFFFJF|J|LF--LLL--77.-J-.|----JJFFL-LL7|LF-J.|.FLJLL-F|7JFLJF|77.L7|FJJ.FLL-JLF--77J.FF|J.LF|77L7L7|L- +-J---|-J..-LF-7.L7J-|LJ.F-77F-7LLJ|FF7FF7|.F.-F.J..|.|7-LF7LJF7JJ.||.---J.FFJJFL|.FF77L|7L-JLL-7|FF7-7-F.|||7F7-J..-L.J|J.F|LF.|F7J.F|--7--L +|FJ-||-7|-FJ|||-FJJLF-7.|.|LJFF77-F7|L-J|-F.F-F7L|-L-FJ|FF|LF|7L-FJ--J7.FJJFJF|77-F-FJFF-7JF-|-F7F7J.--L-|7F-LFJ.F7J-7||-77F7|-FFJF-FF.|||7J +FJ-FJJL|..FJL.FF.|FLJL-7L-|JFFFL-FJLJF--JL|7.F||J|77LJFL7FJ7JLJ-JJ7||L7-|.FFFLJFJ7||LFFL7|F--7FJLJ|7-|L.FLFJ||L7-JL7F.|L--F7LL-7L---LJFL-L77 +7JL|L|F777|7J.F|-LJ7..|||FF-F7J.LL--7L7F7LF7F7|L-7-|.L|7FJJJ.FJ-JFL-F7L---L-|J7L7F7|.FJFJ||F-JL7F-J7LJ--FJ.LFF-J77.J--J7.JLJ-|LL7.F-.J--J.77 +||.F.JJL7-7|.LJ.LL7|7F7-|7JFF7FF7FL|L7||L-J||||F-JF77-|-|7LF-7J7.-|-J7J|.|.-J-L7F-L-7L.L7LJL7F7||F7-FJ7|L-7L-|FF7--LJ.LLJJ77.|-FJ--.FFL.FFJ| +L-..J|.LF-J77F|7JLJJ-FJFJ|FFJLLF7FFF7|||F--J|LJL7FJL-7-F.F.L..|L-J|LLJ.F-F-J.LLL|L|7-LFFJF-7LJLJLJ|7|.LL-||J.F7-|77-F7LJ7.|----|JF||.-J.JJJ| +.L|7L-|L|-L7JFL|.|7.FJ.|.L|J||JF7-FJLJLJL7F7L--7||F--J-|7L7LF-L.LFJ7LFJ|FFJ-7.7JLF7J7.FL7|FJF-----JF7-7.L77.-|J|L||FL-F-77L7||-|.J7L-J|.F||L +LFJJ7.L..F7||F7|F-F--.-|-JL-J7F||FL--7F--J||F--J|||7F7|F7F|-L-|7L|.F.J7F-|.|F|J||||-FFF7LJL7|F7|F-7||77.-.77JL-7J.F|F|LFF7.--L7|JJFJ|7FF-F-L +FJ-LLJ-|-LFFL7JFJJJ7LFJL.FJFFF7||F7F-JL7F7||L--7||L-JL-JL77.LJLF---L7JLJF|7F7JF7FJL-77|L7F-J||L7L7LJL-7JJ|.|.|.L-.L-F--L7L-|--FJF7|-L7FJF|7L +7.77F|FF-7-F7LLJJJ.JF7--77F-.||||||L-7FJ||||7F7|LJF7F----JLF7F---L-J7F7L-F7||FJ||F--JFJFJL-7LJFJFJF---J-7--7-|7.L--LLF7L|-7JFL|-JLFFJFL.L|7J +|7L7---|J...--J|JJFJ-|FF7L-JFJLJLJL7FJL-JLJL7|||F-JLJF7F7J77-|FL7F77F7F7L||||L7||||F7L7|F--JF-JJL7L-7J.-|-LF7LF.7L7FF|7JLF|FLLL7|FJJ.|7F7L77 +|FL7FJ.|J7.F|LFJ7.|J.L-F77.FL-----7|L---7F--J|||L-7F-J|||-L|L7J7|L77||-7-|||L-J||L7|L7|LJF--JF--7|F-J777FJL||-7-JFJ-F-JFJ|L-|.F7L|7F-J7|7L|L +LJ||J|-|7---7F77|.|LFLFJL-7J.F-7F7|L7F7FJL-7FJ||F-J|F-J|||LF7L|JF|F7||-F-J|L--7|L7LJFJL-7L7F7L-7LJL---7F77|||7.-LL--LJJL-|7FLJ.L-LLFJLL-.F|J +L7-L---7-7--L-JLLFJF7.L7F-JF7L7|||L7||||F--JL7||L-7|L7L|L7FJL7F7F7|LJL7L-7|F7FJL7L-7|F7FJFJ||F7L7F----J||-FJL-7.|LL--JJ..|J-J-F.|-|J.|LF-F77 +LFJLLLJLFL--J|||LJ-F7F7|L7FJ|FJLJ|FJ||||L7F--J||F-J|FJFJFJL-7|||||L--7L7FJLJ|L7FJF-JLJLJFJFJ||L7||F-7F7|L7L-7FJ-L7JF||-J-L-J|FL-7F|.LJ.|.|J7 +.777||..J|FJ.LF|-JL||||L7|L7||F-7|L7LJLJFJL--7||L7-|L7L7|LF7||||||F7|L7|L-7FJFJL7L-7F--7L7|FJ|FJ|||FJ|||FJF7|L-7FF7-F7-LJJF7F-.||FFJ7|F7F7-| +FLL-7.FL7|JJ.F7.F|.|LJL-JL7||LJFJL7L-7F-JF7FFJ||FJFJFJFJL7||||||||||F7||F-JL7L7FJF7LJF-JFJ||FJ|FJLJL7|LJL7|LJF-JF-7F7J|F|F-J|--L-JL-|-LJ7F-F +LF-LJ-F7L.|FFL|-||FL-----7||L-7L-7L--JL7L|L7L7||L-JFJFJF7LJ||||||LJ||LJ|L-7FJFJL7||F7|F7L7||L7||F---J|F--JL7FJF7L7LJ|7.LF7.LFF7.|.L.J7FF-J-| +.L-F-7JL7FJ-L-77LFJF7F---J||F-JF7L--7F-JFJFJFJ|L7F7L7|FJL--J|||||F-J|F7|F-JL7L7FJ||||LJ|FJ|L-JLJL-7F7|L7F7.||L|L7L7FJFFJ|JFFJ.L--JJ.F7-JJ|F7 +F|J|F|-L-7-F.F|F7J7|LJF--7||L7FJ|F7FJ|F7L7L7L7L7||L-J|L----7|LJ|||F7LJ||L--7L7|L7|LJ|F7|L7L----7F-J|||FJ|L7||FJFJFJ|F7LF7-JJ-7F|JF-7-L|J.F|J +F7F--J|.|JFL.FF-77-L--JF-JLJFJL7|||L7|||FJFJFJFJ|L-7FL7F---JL7FJ|||L--JL---JFJL7||F-J|||FJF-7F-JL-7||||J|FJ||L7L7L7|||FF7.|.FLL7FJ7LJFF.FLF7 +JJ|F--7F77JFFLL7L-7-F7|L---7L--JLJL-J|||L7|FJFJ||F-JF-JL7F7F7|L7||L--------7|LFJ|||LFJ||L7L7|L7F--J|LJL7||FJL7L7L7|LJL7|L---7J7.JJ|JFJJFF.|J +|7|-JF|--JL77-||F-JFJ|F7F7FJF7F-----7LJL7|LJFJF7||F7L7F-J|||LJFJ||F7JF7F7F7|L7L7||L-JFJ|FJF|L7|L7F7L7F-J|||F-JFJFJ|F--JL7F--J--F|7|FJ|FLL|7J +|J||FFJ7FL7|FF-JL7FL7||LJ||FJ||F---7|F--J|F7|FJ||LJL7|L--J|L-7L-J|||FJ|||||L7L7|LJF-7|FJL-7|FJL7||L-JL7FJLJL-7L7|F|L-7|FJL7J|.|F|L--L|JJ|L-7 +.F7JLJFL-.FF7L-7FJF-J|L-7|LJLLJL--7LJL7F7LJ|||FJ|F7FJL7F--JF-JF--J||L7|||||LL7|L-7|FLJL--7||L7FJLJF---JL-7F--JFJL-JF-JFJF-J7|.FL|.|FJL|-FF|7 +J-77|-JJ7L-||F-JL7L-7L-7||F7F7LF--JF-7|||LFJ||L7LJ||F7||F7FL7FJ.F-J|FJ||LJ|F7||JFJL7F--7FJ||FJL--7|F7F--7||7F-JF7F-JF7|FJ-F7F7----7|LF7LF77. +|.L-|7|FJ.L||L--7|F7L-7||||LJL7L---JFJLJL7L7LJFJ|FJLJ||||L7FJ|F7L-7||FJL-7||||L7|F-J|F7|L7||L--7FJ|||L7FJ||FJF-J|L--JLJL7FJLJ|7F|..J7.F-LL77 +|.LLJ-J|--F||F-7|LJ|F7|LJ|L--7|FF7F7L7F7FJ-L-7|F7L7F-J|||FJL7LJ|F7||||F7FJ|||L7LJL7FJ|LJFJLJF7FJL7|||FJL7|LJFJF7L--7F7F7LJF7FJF77--JLF||L7J| +J7|FLJ-L-LFJ|L7|L-7|||L-7|F7FJL7||||FJ|LJF7F7||||F||F7||||F7L-7||||||LJ|L7LJL7|F--JL7L7FJF--JLJF-J||LJF-J|F7|FJ|F7LLJLJ|F-JLJ7|||-J.77L7-LF. +||7FFJLL.|L7L-J|F7|LJL--JLJ|L-7|||||L7L7FJ|||||||FJLJ||||||L7FJ|||||L-7L7L--7||L7F7FJFJL7L7F7F7|F7|L-7L7FJ|LJ|FJ|L----7||F7F7FJ|-JLF--7|77|. +7JJF|.FL7-FJF-7LJ|L-------7|FFJLJLJL7L7|L7|||||||L7F-J|||||FJ|FJ||||F7|FJ.F7|||FJ|||FJF7|FJ||||LJ||F7|FJL7L-7||FJF----JLJ|||||FJ|7FF7-|-L-J- +L-LL|F-J|7L7L7L-7L----7F--JL-JF7F7F7L7|L7||||||||FJL-7|||||L7|L7|||||||L7FJ||LJL7|||L7||||FJ|||F7|||||L7FJF7LJLJFJ-F7F-7FJ|||||F-7F7JJ|-L7L7 +F-7L-J.F-7.L-JF7L----7LJF-----JLJLJL7||FJ|LJ|||||L-7FJ|||||LLJJLJ||LJ||FJL7|L--7LJLJFJ|||||FJ|||LJ|||L7||FJ|F---JF7|||FJ|FJ|||LJFJ||.FJ77|-F +F7|-|JL-LFF---JL-----JF7|F-------7F-JLJL7L-7|||||F7||FJ|||L--7F--JL-7LJL7FJ|F--JF---JFJ||||L7||L-7||L7|LJL7LJ-F--JLJLJL7|L-J||F-JFJL7J-7-J7| +LJ7J|-|JJFL7F----7F7F7|LJL---7F-7|L---7FJF-J||||||LJ|L7|||F7FJ|F-7F-JF-7|L7|L-7FL-7F7||||||LLJL7FJLJ7LJF--JF--JF7F-7F7FJ|F-7LJL--JF-JJ7.L.L| +.L-JF77J.|7LJF---J|LJ||F-----J|FJL----JL7|LFJ|LJLJ-FJFJ||LJ|L7||FJL-7L7LJFJL-7L--7|||L7|||L-7F7||F7F--7L-7FJF--JLJ.||LJFJL7L7F7F-7L-7-77|-7. +J7L-7JFJ.F---JF7F7L7FJ||F--7F7|L-----7F-JL7L7L7|7F7L7L7||F-JFJLJ|F7FJFJF7L7F-JF-7|LJL7|||L7FJ|LJLJ||F-JF7LJFJLF---7|L--JF7L7LJLJF|F-JFJF7F77 +|7J||FJ7.L----JLJL7|L7|LJF7LJLJF-----JL--7L7L7L7FJL-JFJLJL7FJ7F7LJ|L7|FJ|FJL-7L7LJLF7LJ|L7|||L-7F-J|L7FJL-7L7FJF7FJ|F-7FJL7L----7LJ|L-7-|-L- +L..F|J|J.||F--7F7LLJ-LJ-FJL---7L-----7F-7L7L7|FJL7F-7L-7F-JL7FJL-7L7||L7|L7F-JFJ-F-J|LFJFJ|L-7FJ|F7L7|L--7L-J|FJLJ|LJ.LJ7JL7F7F-JLJJJFJ7LL|7 +.FFL77FFF.FJF7LJ|F7LF7F7L----7L------J|FJFJFJ||F7LJFJF7|L7F7LJF--JFLJ|FJL7||F7L-7L-7L-JFJFL7FJL7|||FJ|F7JL--7||F7FF7F7F7-F7LJ|L7|F|||L|JLF-L +7-|F|7-7-FL-JL-7LJL-JLJL---7.L--------JL7L7|7|LJ|F-JFJ|L7LJL7FJF7-F7FJL7FJ||||F7|F-JF-7|7F7|L-7LJ||L7LJL---7LJLJL7|||||L-JL-7L-JF|-JJJLJFJ7| +|-|F.|JL7.LF7F7L----7F7F--7L------7F----JJ||FJF7|L7FJ-L7|F--JL-JL7|LJF7|L7|||||LJ|F7|FJL7||L--JF-JL-JF7F-7F|F-7F-J|LJLJF7F--JF7F-7J||F7-F.L7 +|7|--J7LLJ7||||F----J|||F-JF7F-7F7LJF----7||L7|LJF|L-7FJ|L--7F---JL-7||L7LJLJ||F7||LJL-7LJL---7L7F-7FJLJFL7LJ7LJF7|F-7FJ|L7F7|LJFJJL7.F-|-L| +||JLFJ.7J7FJLJ|L-----JLJL--JLJ-LJL-7|F---JLJFJL--7|F-JL-J.F7|L-----7|||FJF---JLJ|||F7F-JF7F7F-JFJ|FLJF7F--JF----JLJL7LJJL-J|||F-J7FL|7L7J.L7 +F7LLJFFJ.FJF7FJF-----7|F----7F7F--7LJL-----7L7F7FJ|L--7-F7|LJF7F---J|||L7|F7F7F-J|||LJF7||||L-7L7|F--JLJF--JF7F--7F-J7F----JLJL--7F--|.|.-F7 +-J7777.7-L-J||JL7F7F7L7L7F-7LJLJF7L-7F-7F--J-LJLJ-L7F-JFJLJF-J|L---7||L-J||||||F7LJL--J||LJ|F-JLLJL-7F--JF--JLJF-JL--7|F7F-7F7F7FJ7.||FL7.-J +LFJ.7LJ7JF--JL7FLJLJ|FJJLJ|L7F--JL-7LJFLJ.F7FF7F7-FJL-7|F-7L-7L7F7FJ|L--7LJLJLJ|L7F--7FJL-7LJ-F7JF7FLJF-7L-7F7FL-----J||LJFJ|||||F-7-F.|7-L. +|.F-J--7-L-7F7L7F7F-JL7F7.F7LJF7F-7L--7-F7|L-JLJL7L---JLJFJF-JFJ|LJJ|F-7L-7F-7|L7LJF7LJF--JF7FJ|FJL7F7L7L-7LJL7F------JL-7L-JLJLJ|FJL77J.|-L +LFJ7|.F|7F7LJL7|||L--7|||FJL--J|L7|F-7L-JLJF7F--7L7F7F7F7L7L-7|FJF--J|FJF-JL7L7F|F7|L--J|F7||L7|L-7|||FL-7L---JL7F--7F---JF7F7LF7|L---7--F7| +||.-7-|F-JL---J|||F7FJLJ|L----7L-JLJ7L--7F7||L-7L7LJLJLJ|L|F7||L7L7F7|L7L-7FJFJFJ|LJJF7F7||||FJL--JLJL7F7L------JL-7LJF-7||||L-JLJF7F-JJ---J +-7..|L-|F7F---7|||||L--7L---7-L--------7||||L7FJ7|F--7F-JFJ||||FJFJ||L7L--JL7L-JFJFF7|LJLJLJLJF7F-7F-7LJL-7F7F-----JF7L7L-JLJF7F7FJLJF|-77|| +LJ|-|L|LJ||F--J|||||F--JF7F7|F----7F---JLJLJFJ|F7|L-7|L-7L7|||||FJFJL7L--7F7L7F-J-FJLJF7F7F7F7|||FJL7L---7||LJF77F7FJ|FJF7F7FJ||LJJ.J-JFJFF| +|LJ-.FLLFJ|L--7LJLJ||F-7|LJ|LJF--7LJF7F7F--7L7LJ|L7FJ|F-J7||||LJL7|FFJF-7|||7LJLF7L--7|||LJ||||LJL7FJF---JLJF7|L-JLJFJ|FJLJLJJLJFF-7|L77.F.. +JF|.F-JLL-JF7FJF7F7LJ|F||7FJF7|F7|F-JLJLJF7L7L7FJFJL7|L-7FJ||L7J-||FJFJJ|||L----JL---J|||F-J|||F--J|FJF7F7F7|LJF7F-7L7|L---------JFJJ-J7.||7 +FFF|-|.FLF7|||FJ||L-7L7||FJFJLJ|LJ|F-----JL7L7|L7|F7||F-JL-JL7L7FLJL7|LFJ||F-7F7F----7|||L--JLJ|F-7|L-JLJLJLJF-JLJJL7LJF7F-7F--7F-J7-|-F7|J. +FFJJF77-L|LJLJL7LJ|FJFJLJL7|F77L--JL----7F7L-JL7|LJ||||F7F--7|FJJJLFLJ-L-JLJFLJLJF---J|LJF7F---J|FJ|F7F------JF7F--7L--JLJ.LJF-J|7J-F--JJJ.7 +||J.-L.F7L----7L-7FJFJF7F7|||L--7F--7F-7LJL--7FJL-7|||LJLJF-JLJ-|.FL.L-LJF-------JF7F7L7-||L--7FJL-J||L---77F-JLJF7L--------7|F7L7J||-LLFL-- +LJ7F|FFJL7F--7L--JL-J.||||LJL--7LJF7LJLL--7F-JL---JLJL-7F7L--7.L-7J|-LJLLL------7FJ||L7|FJL--7LJJFF7||F7JFJFJF7F-J|F--------JLJ|FJ-FF7.FJ7.| +-J|F|-L-7LJF-JF7F7F7F7|LJL7-F-7L--JL-----7|L7|F7F7F7F7-LJL7F-J-7-7J|J.F7-L|F----JL7||FJ||F--7L7F7FJ||LJL-J||FJ|L-7|L------7F77|LJ|.|.-|JF-J| +|7|JL|-|L-7|F-J|||||||L--7L7L7L----------JL-JFJ||LJLJ|F-7J||||LF7|.|JLF-7FFJF-7F-7|||L7|LJF-JFJ||L7|L------JL7|F7|L7F7F--7LJL7F7J-F7-|JFJJ7| +FJJJ--FF--J|L-7LJ|||||F77L7L7|F-7F-7-F-7F-7F7L7||F---J|FJFJL-7-F-7777.L7LFL-JJLJ7LJ|L7LJF-JF7L7||FJ|F-----7F-JLJ|L7LJLJF7L---J||J|LF7|J|.LF- +|F||7LLL--7|F7L7FJ|||LJ|F7L7|LJFLJ|L-JFJL7|||L|LJL----JL7L---JF|L--7.-LJL|F----7F77L-JF7L--JL7|||L7LJF---7|L---7L7L7.F-JL-7F7FJL7-.F7.F|JL-| +77.L7-FF7FJLJL-JL-J|L-7|||FJ|JF--7F---JF7||||FJF-----7F7L777F77L-J-L7FL|FFL---7LJL7F7FJ|F7|F-JLJL-JF-JF--JL----JFL7L-JF7F7LJLJF7|LJF-.7J.7.7 +7|7|LF-J|L-7F-7F--7L--JLJ|L7L7L-7|L7F--J||||||FJF7JF7LJL7L7FJ|J.LL77LJ7-F7J|F7L--7|||L7|||FJF7F-7F-JF7L---7F7.F7F7L---JLJL7F7FJLJ7-F|7|F7.7| +|FL-7L-7L--J|FJ|F-JF----7|FJFJJFJL7LJF-7LJLJLJL-JL-JL--7L7LJFJF|.F-JF|FF|J|FJL---JLJL-J||LJFJ||FJ|F-JL----J|L-JLJL----77F7LJLJ.|-JF-JFL7L7|7 +FF.F7J||F7F7||FJ|F7|F---J|L7|F-JF7L--J.L---7F7F-7F-----J||F-J-F-.F|JFL|7|L-|F---7F--7F7LJF7|FJ|L-JL--------JF7F7F----7L-JL----7JLLL--J|J.FJ. +.L77L7LLJ|||||L7LJLJL-7F7L-J|L--J|F-------7LJ|L7|L------7|L7.F7J7J|---J.J7.LJF-7LJF-J|L7FJLJ|FJF-----------7||||L-7F7L-7F7F7F7L7F7L7.FJ.LJ7. +FL|F7L-F-J||||FJF7F7F7LJL--7|F--7LJF--7F7FJF7L7||F-7F7F-JL7L7||F7.L..FLJJ|-L|L7|F7L--J-LJF--JL7L7F----7F-7|LJLJL--J||F7LJLJLJL7L-77JL7||7.7. +J--J|-LL-7|LJLJJ|LJLJL-----J|L7FJF7L-7LJLJFJL7LJLJFLJLJF7JL7LJL7||JL--.|.7-|F-JLJL--7-F--JF-7FJFJ|F---J|FJF7F------JLJL-7F--7.L--JJ-FLFJF7L| +.||-F-7|.LJF7LF7L-------7F-7L-J|FJL--JF-7FJF7L----7F7F-JL-7L7F-J7--JL|7.F---JF-----7L-JF-7L7||JL7|L---7|L-JLJF-------7F-J|F-JF7F77..77||LJ.7 +FF77|FJJ7F-JL7||F------7|L7L7F7LJF---7L7|L7|L----7LJLJF7F-J-LJJ.L|7|.--FL-7F-J7F---JF-7L7L7||L-7LJF7F7LJ.F7F-JF7F7F-7||F7|L--JLJ|F7---|--L|| +LLF-JL---L--7LJ|L-7F--7LJFJFJ|L7FJF-7L-JL-JL7JF7|L--7FJLJFLFJ.|J-7-77|F---JL7F-JF-7FJFJFJ-LJL--J-FJLJL7F-JLJF-JLJLJFJLJ|LJF-----J||JFFJ-7.LJ +|.|F7FL|-F--JF7L-7||F-JFSL7L7|FJ|LL7L-7F7F-7L-JL--77LJF7F7.|LJ7J7|-JFLL--7F7|L--JFJL7L7||F-7|F7F7L---7|L----JF7F---JF7FJF7L------JL-7J|F-7-7 +-7LL7JJLFL---JL-7LJ|L7FJL7|FJ|L-JF7L-7LJ||LL---7F7L---JLJL-7FFJ.L|.|77|77||LJF7F-JF7|FJL7L7L-J|||F---JL---7F-J|L--77|||FJL---7F7F-7FJ|FL7.L| +LL.JJ.F7-F7F----JF-J.LJF7LJL-J-F7|L--JF7|L----7LJL---------J7LJF|LF-7-7JFLJ7FJLJF7|LJL--JFJF-7LJLJF------7LJF7L---JFJLJL---7JLJLJJLJ-|7L--F- +|-F.J-FLJ||L-----JF77F-JL-7F-7FJ|L----J|L--7F7L--7F7|F7F7F--7FF77|L7|F7FJJF7L-7FJ||F---7-L7L7L7F--JF----7L--JL-----JF-7F7F7L7LF---7LLJ|LJ.|J +|FL7.L7-FJ|F------JL7L---7|L7|L7|F-----J-F7LJL-7FJ|L7|LJLJF-JFJL-7FJLJ|7LF|L-7LJLLJL-7FJF7|FJ.LJF7|L---7|F7F------7FJF||||L7L-JF--J-L.L-7.L7 +L|JFF-|LL7|L-7F----7L7.F-JL-J|FJLJF------JL7F77LJFJFJ|F--7L-7|F--JL-7FJJFFL-7L--7F---JL7|||||F7FJL7F7F-JLJ|L7F--7FJL-7LJLJ7L7F7L7.L7F|.|F|L| +||FF|--F-JL-7LJF---JFJFJF---7LJF-7|F---7F-7LJL7F7L7L-JL7JL--J|L7F7F7||F7F7|FJF7FJL----7|||LJFJLJF7LJLJF7F7L7LJF7|L---JLF--7FLJL-J-|LFLL7-7-F +FF7LJJLL---7|F7L7F-7L7|FJF7FJF7L7LJL--7||FJF-7LJL-JF--7L7F-7.|FJ|||||LJ|||FJFJLJF7F-7FJ||L7FJF--JL----JLJ||L7FJLJF--7F7L7FJF7F7F77J.-J-|-|7. +F7|.|..F7F7||||7LJF|FJLJFJ|L7||FJF----JLJL-J|L7F--7L-7L-JL7L7||FJ|||L-7||LJFJF-7||L7|L7LJFJL7|F----------JF7|L-7-L7FJ||FJL7|LJLJL7LL7|L--LF. +7JJFFF7|LJLJLJL--7FJ|F7FJFJ-LJLJ-L-----------7|L-7L--JF-7LL7||||FJ||F7||L-7L7|FJ|L7|L-JF-JF7LJ|F7F7F-7F---J||F7L--JL-JLJF7||F----J7.FJFL.L|7 +7JLLFJ|L----7F--7|L7|||L7|F-7.F7-F7F---7F----J|F7L---7L7L--JLJ||L7|||||L--JFJ|L7L7|L--7L7FJL7FJ|LJLJ-LJF7F-JLJL7F7F-7F--JLJ|L---7L7..FFJL.L| +|7L|L7L-----J|F-J|J||||FJLJFJFJL-J|L--7|L----7|||F7F7L7L---7F-J|FJ||||L7F--J-|FJFJ|LF7L7LJF7|L-JF7F-7F-JLJF7F7L||LJFLJF7|F7|F---J7J-|7F-F-J. +LFF--JF7F7F7FJL-7|FJLJLJF-7L7L---7L---J|F----J||||LJL-JF77FJL-7|L-J||L-J|F7F7|L7|FJFJL7L7FJLJF7FJ|L7LJF7F7|LJL7|L-7F7FJL7|||L---7F7JLLLJJ|7. +F-L7F7|LJ||||F--JLJF7F-7|LL7L-7F-JF---7|L----7LJLJF--7FJ|FJF--J|F--JL--7LJ|||L7||L7L-7|-||F7FJ|L7|FJF-JLJLJF--J|F7LJ|L-7||LJF7F-J||.LJ-J--7F +.L.LJLJJFJ|||L---7FJLJJ||F-JF7|L7FJF--JL--7F7L7F7FJF-JL7|L7|F7F||F7F--7L7FJ|L7||L7L7FJ|FJLJ|L7|7||L-JF7F7F-J7F7LJL--JF7|||F-JLJF7|L-7.F7F|-7 +-7FFL|..L-J||F---J|F---J||F-J|L-J|FL-----7LJL-J||L7|-F7||7|||L-JLJ|L-7|J|L7L7LJ|FJFJL7LJF7FJFJL7||F7FJLJLJF--JL-----7|LJLJL--7J||L7FJ77-LJ|7 +L--|L|.7LF-J|L7F7FJL7F-7|||F-JF7FJF------JF--7FJ|FJL7||||FJLJF-7F7|F-JL7|FJFJF-JL7|F7|F7||L7|F7LJLJ|L--7F-JF--------JL--7F---JFJ|FJL--7.|.LJ +F|..FFJ7.L7FJ|LJ||F-J|FJ|LJL7FJ||.L------7L7FJ|FJL-7||LJLJF--J.LJ||L--7LJ|FJFJF-7||||||LJL-JLJL---7L---J|F-JF7F7JF-7F-7FJL-7F7L7||F---JF7FFJ +|.---7LFFFJ|F7-FJ|L7FJL7|F--JL7||F--7F---JFJ|L|L7F-J|L---7L7F7-F7LJF-7L-7||FJFJFJ|LJ|||F7JF77F7F--JF----JL--J||L7|FJ|FJL7F-J|L-JLJ|F-7-F|7J. +|-|-||.||L-J|L-JFJFJ|F7LJL-7F7|LJL-7LJF7F7L7L-JFJL7FJF7F-JFJ|L7|L7FJFJF7||||FL7L7|F7LJLJL7||FJLJF-7|F--------J|FJ||L|L--JL7J|F--7FJ|FJF-7J.- +FFFJ|7-J-LL-L-7FJ-L-J|L----J|LJF7F-JF7||||.|F--JF-JL7||L-7L-JFJL7||FJFJ||LJL7||FJ||L--7F-J||L---JFJ|L---------JL-JL-JF-7F7L-JL-7LJ7||7|FJ-F7 +F7LLLF7-F7LF--JL7F7F-JF----7L7FJ|L--JLJ|||FJL7F-JF--J||F-JF--JF7|LJL7L7|L7F-JFJL7LJF-7|L7.|L7F--7L-J-F----------7F7F-JFJ|L-----JF7FJL-JL--7J +F-.F7JLFJL7L--7FJ||L--JF7-FJFJL7L---7F7||LJF-J|F-JF7FJ||F7|F-7|LJF-7|FJ|FJL7FJF7L7FJFJL7L7|FJL-7L-7F7L---------7LJ|L-7L-JF----7F|LJF----7FJ. +|7-|.F-L-7L7F7LJL|L----JL-JFJF7L7F-7||LJL-7L7|||F7|||FJLJ||L7|L7FJ7LJL7||F-JL7|L-J|FJF-JFJ||F-7L-7||L7FF---7F--JLFJF-JF7FJF-7FJFJF-JF7|L||F| +.L..J|.F7L7|||F77L---7F7F-7|FJL-J|FJLJJF7||FJFJ||LJ|||F7FJL-J|FJ|F7F7.||||F7FJL7F-JL7L-7L-JLJFJF7|||FJFJF-7|L---7L-J|FJLJFJL|L-JFJF-J|F7LJF7 +|LF7.|F|L-JLJLJL7-F7JLJ|L7||L----JL-7F7|L-JL7L7||F-J||||L-7F-JL7|||||FJ||LJ|L7FJL7F7L7FJF----JFJ||||L7|FJFJ|F7F-JF7F7|F7FJF-JF-7L-JF-J||-FJ| +.FJ|7LFL7F7F7F-7L-JL---JFJLJF7F-----J||L-7F-J||LJ|F-JLJ|F-J|7F7||||||L7|L-7L-J|F7LJ|FJL7L7-F-7L7LJ||FJLJFJ.LJ|L--JLJLJ|LJ7L-7L7|F-7L--JL7L7| +LL7JJ7|.||LJ||FJF-7F-7F7|F--JLJF----7|L-7||F7FJF-JL7F-7|L-7|FJ||||||L7|L-7L--7||L7FJ|F7L7L7|FJ7L-7|||F-7L7F7-L7F-7F7F7L----7|FJ||JL--7F7L-J| +|J|.FL7-LJF7LJL-JFLJFJ|LJL----7|F---JL7FJ||||L7|F7-||FLJF7||L7|||||L7||F-J|F7|||FJL7|||-|FJ||J-F7||||L7||LJL-7||L|||||F7F7FJLJ-LJF--7LJ|F-7| +|7F-J-|-LFJL-------7L-JF7F---7LJL7F7F-JL7|LJL7||||FJ|F7FJLJ|FJ||||L7||||F7FJLJ||L7FJ||L7|L7|L7FJ|||||FJL7F7F7||L7LJLJ||LJLJF7F7F-JF-JF7LJFLJ +LLJJ|FJJFL---7F---7|F7FJ|L--7|JF7LJ|L7F-JL7F-J|LJ||FJ||L-7FJL7||||JLJ||LJ||F--J|FJ|FJ|FJ|FJ|-||-LJ||||F-J|||LJ|FJF7JFJL---7|LJLJF7L--JL--7J7 +|.F7FL---LJF-J|F-7|LJ|L7||F-JL-JL--JFJL7F7||F7L-7||L-J|F-JL7FJ|||L-7FJL7FJ||F--JL7||FJ|FJL7|FJL-7FJ||||F7||L-7|L-J|FJF7F--JL-7F7||F------JJJ +-LFL7-J-.J7L7FJL7|L-7|7||FJF7F7F-7F7|F7|||||||F-JLJ.F-JL--7LJ.|||F7||F-J|FJ||F---J||L7|L-7||L7F-JL-J||LJ|||F-JL---JL7||L--7F7||LJLJF7F--7.|| +|.|LL-J.F-FLLJF-JL--JL-J|L-J||||L|||LJ|||||||||FF---JF7F-7L7F7LJ|||||L7F||.LJL7F7FJL7|L7FJ||FJL---7FJL-7|||L-------7|||F-7LJLJL7F--JLJF-J7LJ +FL-77JL|JFL-|LL----7F7F7L---J|||FJ|L7FJ|||||||L7L---7|||FL7LJL-7LJLJL7L7|L-7F-J|||FFJL7||FJ|L-7F-7|L7F-J||L---7F7F7||||L7|F7F-7LJF--7FJ|F7-| +FJJ.L.FJ.FJ-LF-----J|||L-7F-7|||L7|FJ|FJ|LJLJL7L7F--J||L7.|F7F7L---7FJFJ|F7|L7FJ|L7L7FJ|||FJ7FJ|L||FJL-7LJF7F7LJ||||LJ|FJLJ|L7|F7L-7|L--JL77 +|JF-JFFJ.L7-LL--7F-7|||F-J|F|||L7LJL7|L7|.F---JFJL7F7||FJFJ|LJ|F-7FJ|FJ|||LJJ||FJFJFJL7LJ|||FJFJFJ|L7F7L--JLJL-7|||L7FJL-7FJFJLJL7FJL-7F--J- +|L|.L|JLFF77F7F7||JLJ|||F7L7||L7|F--J|FJL7L7F7FJF-J|LJ|L7L7L-7LJFJL7||F-JL--7LJL7L7|F7L7FJ|FJFJLL7|-|||F7F-7F-7|LJ|FJ|F-7|L7|F7F7|L--7LJ|L7L +FF7J.||FFJL-JLJLJL7F-J|LJL7||L7LJL-7FJL7FJFJ|||7L-7L-7L7|FJF7L-7|F7|LJL7F-7FJF--JFJ|||FJ|FJ|FJFF-JL7|||||||LJ7|L-7||FJL7|L7|LJLJ||F-7L7FJ||. +F7|-J-7-L--7F7F7F-J|F7|F--J|L-JFF--J|F-JL7L7|||F--JF-JFLJL7||F-J|||L7F-J|JLJFJF7FJL||||FJ|FJL-7|F-7||||||L---7L--JLJL7FJ|FJL7F-7|||7|FJ7.JJJ +LJ-7|F-J.|.LJLJ|L-7||||L---JF7F-JF7FJ|F-7|FLJ||L7F7L---7-FJ||L-7||L-J|F7L--7L-J|L-7LJ||L7|L7F-J|L7LJLJ||L-7F7L-----7FJ|FJL-7||FJ|LJ-||LF77F| +|LL-7JJ|FFJJLJFL7FJLJLJF----JLJF-J|L7|L7LJF--JL7||L7F7FJFJFJL7FJ||-F-J|L7F-JLF-JF-JF7LJJ||FJL7J|FJF---JL7FJ||F-7F--JL7|L-7FJ||L7L7JFLJ-L|FFL +|.|-L7.F7-JF7LL-LJ.LF7FJF-7F7F7L-7L7|L7|F-JF--7||L7|||L7L7|F7LJ|LJFJF7|FJ|7F7L-7L--J|-F-J||F7L7|L7L---7FJL7||L7|L--7-LJF-J|FJL7L-JL|L|.F|F-7 +|.J.LF-JJLFFJ7.FJ||.||L7L7LJ|||F-JFJ|J||L--JF-J||FJLJL-J||LJL---7JL7|LJL7|FJL--JF--7|FJF7|LJ|FJL-JF---JL-7LJ|FJ|F--J7F-JF7|L-7L7|LFJ||F7JJ.L +-7..FJ||.-7JL--J-F--JL-JFJF-J||L7FJFJFJ|F---JF7||L----7F-JF7F7F7|F7||F--J|L---7FJJFJ|L7|LJLFJ|F7F7L---7F7L-7|L7|L---7L-7||L7FL7|7|L77J|JLLJ| +F|7F7-7-7F-7.L7J|L---7F7|-L-7||FJ|FJFL7|L7F7FJ||L-----JL-7|LJ||LJ||LJL--7L7F--J|F7L-J7LJ|F7L7LJLJL7F--J|L7FJ|FJ|F7F-J|LLJL-J7-|L7-7LL---7JFL +LJ|LJFLJL77|F.JL7JF--J|||F--J||L7||F--JL7||LJ||L---7FF7F-JL-7||F-JL7LF--JFJL--7LJL---7F--JL-JF7F7FJ|F7FJFJL7|L7|||||L7J|.JLJ..L-J.JJ7JF|L-7. +||7J-||7F7-|JFJ-7JL7F7|LJL7F-J|FJ||L7F7FJ||F--JF-7FJFJLJF-7FJLJ|F-7L7L7F7L7F--JF7F---JL--7F7FJLJLJFJ|||7L7FJL-JLJ|L7|L7|-|FL-7FJ--.L7.777FJ- +F-7FFJF-J.|L7|JJ|F7LJ|L--7||F-JL7||J|||L7||L7F7L7|L7L7F7|FJL---JL7|FJL||L7|L-7FJ|L-7F7FF7LJ|L----7L-J||F-JL-----7|FJ77FL.J7|LFL-7.FFLJF--7.| +L.||J-|LF.L7FJ..7.FJL|F7FJLJ|F7FJLJFJ|L7|LJFJ||FJ|FJ|LJ||L-7F--7FJLJ7JLJJ||.FJL7L-7||L-JL--JF---7|F77LJ|F7F7F-7FJ|L7J77JFJ-J.LLLJLFJ.LJF|||7 +F-7JJ7L7|--JJF-LJ.|L-|||L7F-J|LJ7F-JFJFJL7FJFJ||FJL---7LJF7|L-7|L-7F77F7FJ|FJF7|F7LJL--7F7F7L--7|LJL--7LJ|||L7LJLL-JL-JFJJ.LFJ..|L|FJ..77--7 +|LF7.LJ|||FJ|L7|LL7-FLJ|FJ|F7|F--JF7|-|F-JL7|L||L7F-7FJF-JLJF7|L7FJ|L-JLJFJL7||LJL-7F--J||||F7FJ|F-7F7L7FJ|L7|-LF|.|-L-7F77.F77-FF--J-|L7J-J +L7JLF.F-LJ|F|F|L-L--J-L|||LJLJL7F-J|L7||F--J|FJ|.|L7|L7|F7F7|LJ|||JL7F7F7|F-J|L7F-7||F-7||||||||||FJ|L-JL7L7LJ.FL7JJ---L7JF-JJ7J.|.JLLF7|--7 +.-7J.F7.|LLJL7|..-JJ|7|LJ7LLJ.F||F-JFJLJ|F-7|L7|FJFJ|FJLJ|||L--7||F-J|LJ|||F7L7|L7LJ||FJ|||||||FJ|L7L---7L-JJJ7F||F-.JJ|F7J.LFF7.LL...LL--J7 +7LF-7LL7|7|LFLL.F|--L.|.LJ777FLLJ|F7L-7L|L7|L7LJL7L7|L-7FJ||F--JLJ|F7|F-J|||L7|L7L7LLJ|FJ||||||L7|-L-7F7L-7||F|J7|L-J.FL|JF7-7JL777L-|||JLFJ +|.|7.FJ-L-F-7L|JJ.7||7|F7L|-7J.|LLJ|F-J-L7|L-JLF7|FJ|F-JL7||L-7-FLLJLJL7FJ||FJ|FJFJF--JL7||||||FJL--7||L7FJ7JJJ|FL..J-F.|LLF-LJLJJ7.L||-77|J +.F|7F77F|FJ--7J|.LFJ-JF-7-7F7.FJJL-LJF|LLLJFLFFJLJ|FJL--7LJ|F7L7--LLF--JL7|||FJL7|JL-7F7|||||LJ|F7F-JLJLLJJ.|.7L||FFJ7L-J|FJ.L-FL-77F|.LF-J7 +-L|LLL77.|JF|L-F-.LJ|||L|..--J-7LJ-|-|||7.|7|LL7F-J|F7F7|-FJ|L7||LL.L-7F-J|||L7FJL-7-LJ||LJ||F-J||L77LJ.|L-7|F|.|77L.FLJ.|.F7L-7.-7F-J.L7J.7 +|.|JLFL77|-J7.F|.FF-7-LJL77..|F777J.FL7-J-|.|7||L7FJ|||LJ7L7L7LJ77LF7|||.FJ||FJL7F7L--7LJF-J|L-7||FJ7777|.FL|.F7|LJ-L-7F-|.--7F77..|7.||.|7| +77LJ-J|.L7.L|-F7F7|J|7.F7J7-J-L-.-.7-F-.|LL7L7FJFJL7|LJJL|-L-JJ.L-FJL-J|FJFJ||F-J||F--J7LL-7|LL||||LF7J-F7LL-7JF|J|LL7LJ-7JF|-JJ|.FJ|.LF--J| +F7.|7.LL.JJFLJ.|7LLF-J-||L.F.FL.J|LJJF.F.F-||FL7L7LLJF|F-JF|LFL--LL-7F7||FJJ||L-7||L77LJL||LJ-J||LJ7L-J|LJ-L|7-JJF7.LJJ7F-7F7-|L|-|FJ7-L7L7| +|LFFFJJL|7-J...7|F7LJ7.|7.JFF7.F|7|F-JF.F--LJ7LL7|-L.F7JLLJ7.F-J.||FJ|||LJ||LJ|LLJL-J-.|L--..|LLJ|J.F|LF7L----7L--77.|F7-.-J|F|.LF7-L--JJFJ7 +J-FJ--F7J|-J-F-.|.|FFJ7JF.FL|-|JF7-|J7.-J|J|LL-LLJ||FFJ.F|LF7F-LF--L7|LJJFJJ.LL-J.LJ||F7FL|..|7.LLF.7--.F.F|.J77|F-J.|J|-F|F|---F7.FF..L.F7| +L.LL|77J-|.L7LJ-7-J|JLJ.J-|-LJ.-LL-L.L..L..F-JJLLJ--J|-L-7.L-L7.-L-LLJLJLFJ|-JJ-J-L-L7-LJ-LJ-L7J-LL-L--J..LJ-J.7--JJ-F----J-J.J.LL7JJ--J7LL. \ No newline at end of file diff --git a/public/inputs/day10/intro.txt b/public/inputs/day10/intro.txt index e69de29..1ddc980 100644 --- a/public/inputs/day10/intro.txt +++ b/public/inputs/day10/intro.txt @@ -0,0 +1,5 @@ +7-F7- +.FJ|7 +SJLL7 +|F--J +LJ.LJ \ No newline at end of file diff --git a/public/inputs/day11/full-minthamie.txt b/public/inputs/day11/full-minthamie.txt index e69de29..623ad7f 100644 --- a/public/inputs/day11/full-minthamie.txt +++ b/public/inputs/day11/full-minthamie.txt @@ -0,0 +1,140 @@ +....................................#..............#.................................#...................................................... +............#......#..........................................................#.....................................#.................#..... +.........................................................................................#...................#.............................. +.....#......................................................#............................................................................... +..........................................................................#........................#.............................#.......... +......................#.................#...............................................................................#................... +........#......................................................#...............................#............................................ +...........................#.................#.......................................#...................#.........#.................#...... +.#................#.......................................#..........#........#............................................................. +............................................................................................................................................ +..................................#......................................................................................................... +.........................................................................................#.................................#................ +.......#.............#................................#........#.....................................#...................................... +..........................................#................................................................................................. +.............#...............................................................................................#..........#................... +....................................#.................................#............#....................#......................#............ +............................................................................................#............................................... +........#...........................................#.......#.............................................................................#. +.....................#.......#..................................................#....................................................#...... +..............#........................#.......#........................#................................................#.................. +.......................................................#..........................................................#......................... +..#..............................................................#..........#.......................#....................................... +..................................................#......................................................#.................................. +......................................................................................................................#..................... +.....#................................#...............................................#..................................................... +...................#.....#...............................#.......................#..............#..........................#................ +.........#.................................#................................................................................................ +..................................................................#.................................#......#.......................#........ +............................#........................................................................................#..................#... +.................#...............................#............#............#................................................................ +................................#................................................................#.......................................... +............................................#.........................................#.......................................#............. +.........#.................................................................................#............................#............#...... +..#....................................................#..........#.............#.........................#................................. +...........................#...................#............................................................................................ +...................................#...................................#..........................................................#......... +................#..................................................................#..................#..........#.......................... +.............................................................#...............................#.............................................. +#.................................................................................................#.......................#................. +.........................#...............#.................................................................................................. +...........................................................................................................#..................#......#...... +.........................................................#.................................................................................# +..............................#.............#......#....................................................................#................... +.....#......................................................................#............................................................... +...............................................................................................................#.......................#.... +............#.........#................#...............#............#...........#...........#........................#...................... +............................................................................................................................................ +................#.................................#............#..........................................................#........#........ +...............................#...............................................................#...........................................# +.........................................#.............................#.............................#...................................... +...................................................................................#.......................#................................ +.........#................#...................#.........................................#...............................#...............#... +....................#................#......................................#.....................#.............#........................... +............................................................................................................................................ +......................................................................#..................................................................... +......#..........................................................#........................................................................#. +.............#.........................#.......................................#............................#.....#......#.................. +.........................#........#.........#......#.................................#.....#................................................ +..#.....................................................#.........................................#......................................... +....................#...............................................#....................................................................... +........................................................................................................#.......................#.......#... +.............................#...................................................#.........................................#................ +....................................................................................................#....................................... +.......#..........#..............................................#........#.................#..................#............................ +....................................#..........#......#.....#.........................................................#.............#....... +............................................................................................................................................ +..............................#................................................................#..........#................................. +..#..............................................................................................................................#.......... +..............................................................................................................#............................. +.................................................#........................#...............................................#................. +...................#.....................................................................................................................#.. +......#....................#......#.....#................#...................................#.............#................................ +.............................................#.......................................#...............................#...................... +.................................................................................................#.......................................... +...#.................................................................#...........#.......................................................... +....................#..............................................................................................................#........ +..........#.....................#...........................................................#.............#...............................#. +............................................................................................................................................ +..................................................#............................................................#...........#................ +...........................................#........................#.........#.....................#....................................... +.#.........................#..............................#................................................................................. +.....................................................................................#.........................................#............ +..............................................................................................#......................#...................#.. +.....#...........#.....#.....................#..............................................................#............................... +..........#....................................................#.....#...................................................................... +#...............................#.....#..................................................................................................... +........................................................#.........................#...................#........#..................#......... +.............................................................................................................................#.............# +.........................................................................#.................................#................................ +.........#.......#................................#..............................................#.....................................#.... +............................................................................................................................................ +................................#............#........................#.........................................#........................... +............#...............................................#........................#................#...............#..................... +..#....................#..........................................#..........................................................#.............. +...................................................#......................................................................................#. +................#....................................................................................................................#...... +.......#..................................................#...................#.............#..............#................................ +.................................................................................................................................#.......... +...................#...........#............................................................................................................ +.........................................#.....................#....................................#.........#.......#..................... +.#........................................................................#..............................#.................................. +............#.....................#.....................................................................................................#... +.......#.................................................................................................................................... +.................................................................#............#...................#........................#......#......... +........................................................................................#.......................#........................... +.........................................#.............................#.................................................................... +..............#......#...............................................................................................................#...... +................................................................................................#......................#.................... +............................#............................#..........................#..................#...................................# +...........#...............................................................................#....................................#........... +............................................................................................................................................ +.................#.......#............#.......................................................................#............................. +............................................................................................................................................ +...#.........................#.................................#...............#............................................#.....#......... +......................................................#...................#..........#.........#.....#....................................#. +...................................#.........#......................................................................#....................... +............................................................................................................................................ +..........#..............#...................................#.............................................................................. +............................................................................................................................................ +.....#...................................................#...............................#...................#..........#..................# +..............................#.......#........#............................................................................................ +.................#...............................................................#.................................#........................ +.....................................................................#........................................................#............. +............#..................................................................................#............................................ +.......................#..................................#..............................................................#.............#.... +...................................#........................................................................................................ +...........................................................................#.......................................................#........ +........#....................#.....................#...............#................................#..............#........................ +...#.........#.............................#.........................................#...................#.................................. +..............................................................................#..............#........................................#..... +..................................#.......................................................................................#................. +........................#................................................................................................................... +.......................................................#.............................................#............#......................... +............................#........#..............................#....................................................................... +...#........................................................#............#............#............................................#........ +.................#..........................#............................................................................................... +..........................................................................................#................................................# +..........#................................................................................................................................. +.........................#............#........................................................#............................................ +...............#...................................#......................#..............................#...........#...................... \ No newline at end of file diff --git a/public/inputs/day11/intro.txt b/public/inputs/day11/intro.txt index e69de29..a0bda53 100644 --- a/public/inputs/day11/intro.txt +++ b/public/inputs/day11/intro.txt @@ -0,0 +1,10 @@ +...#...... +.......#.. +#......... +.......... +......#... +.#........ +.........# +.......... +.......#.. +#...#..... \ No newline at end of file diff --git a/public/inputs/day8/full-liulangzhe.txt b/public/inputs/day8/full-liulangzhe.txt index e69de29..59e2d47 100644 --- a/public/inputs/day8/full-liulangzhe.txt +++ b/public/inputs/day8/full-liulangzhe.txt @@ -0,0 +1,9 @@ +RL + +AAA = (BBB, CCC) +BBB = (DDD, EEE) +CCC = (ZZZ, GGG) +DDD = (DDD, DDD) +EEE = (EEE, EEE) +GGG = (GGG, GGG) +ZZZ = (ZZZ, ZZZ) \ No newline at end of file diff --git a/public/inputs/day8/full-minthamie.txt b/public/inputs/day8/full-minthamie.txt index e69de29..7605c08 100644 --- a/public/inputs/day8/full-minthamie.txt +++ b/public/inputs/day8/full-minthamie.txt @@ -0,0 +1,772 @@ +LLRLRRRLRRRLRRLLRRRLLRRLLRLRLRRRLRRRLLRRRLLRRRLRRLRRLRLRRLLRRRLRRRLLRRRLRRLLLRRLRLLLRLRRRLRLRLLLRRLRRLLLRRRLLRRRLRLRLLRRLRLRRRLRLRLLRLRRLRRRLRRLRLRRRLRLRRLRRLRLRRLLRLRLRRLRLLRRLRRLRLRRLLRLRLLRRLLRLLLRRLRLRRRLRRRLRRRLRLRLRRRLLLRLRRLRLRRRLRRRLRRRLRLRRRLRRRLRRRLRRRR + +GLR = (SPQ, LKJ) +LDM = (LXK, RMT) +NTJ = (NGP, PKQ) +PXL = (GQG, CCL) +TMB = (SSN, LVM) +XNP = (SXR, XJH) +SSG = (VJT, BPK) +XVS = (GHQ, LCJ) +HRM = (GNJ, GNJ) +NNG = (GCB, FXT) +VLL = (NTJ, LFV) +SXX = (SFQ, TQR) +XNM = (JCQ, MNT) +XTR = (JGP, GPS) +LXN = (DKT, GBC) +HGN = (GPH, GFD) +JJF = (DSH, DVT) +BTJ = (SDH, CLJ) +DPV = (RSQ, XGJ) +MMK = (CXD, KNV) +FXT = (LDV, VBP) +HDL = (RVD, JQG) +GPX = (PFH, XBR) +FMJ = (LJF, KPC) +CRX = (XXN, XNQ) +TQN = (JJF, SBZ) +FGB = (JHR, QGC) +HFQ = (PJS, FPN) +BKS = (GCK, TRC) +VPS = (BRP, BSL) +JMV = (QQM, JVV) +LMF = (DQJ, RQP) +TDT = (KVD, KNT) +PFP = (SMV, NXN) +DKT = (NCT, MPG) +NGP = (LMP, LBG) +BPD = (HRM, HRM) +CFK = (HDM, JSV) +CLB = (PXL, CVB) +GHG = (XVM, BGM) +GCB = (LDV, VBP) +NSH = (SHX, JTQ) +GGR = (STX, HHQ) +VTX = (XSM, TNV) +JGB = (QTG, TBL) +RDJ = (QQQ, NGC) +KVL = (MBG, CDD) +LVM = (KLR, KVT) +FRV = (XRD, CGJ) +VMJ = (DDG, GQC) +FDA = (BKF, MQC) +DSC = (QRC, FMJ) +CRQ = (GKT, RMR) +QLC = (HHT, HLQ) +FSN = (LHJ, XTT) +RDP = (CNJ, SQD) +XRJ = (MCV, MVT) +KJD = (JRX, JCM) +PXJ = (JGH, CMB) +FCQ = (XKQ, MFB) +FXK = (MSB, TVD) +JNF = (TQR, SFQ) +CJJ = (PXJ, QQJ) +KNV = (FTH, RFL) +HFH = (CBP, DPN) +LHT = (PGK, DLD) +GLC = (DTJ, BDD) +PNH = (SSG, QGT) +PJS = (FHQ, GBD) +NQJ = (XSD, KKD) +XVL = (PGN, KSB) +FMM = (CKQ, FVF) +NFL = (BPV, HGF) +PJR = (SNT, HBM) +JQG = (XNM, QKN) +NGQ = (NMV, NBS) +CQV = (MXC, DQR) +HQJ = (GGR, VCX) +TTQ = (HLJ, MVF) +HNR = (JGP, GPS) +LRK = (NFL, LGC) +GML = (TSF, HFT) +NLV = (JQS, HHF) +VGR = (VQT, DRX) +TQR = (SXH, QJP) +HPC = (PTF, RRH) +KCN = (PQP, VBQ) +HTF = (VGR, TTS) +QKH = (DCP, KNL) +HHH = (PJR, RSP) +QMD = (FNP, CCG) +LGV = (LTB, JST) +KQX = (SPF, MLD) +PJX = (MMP, RHG) +QRD = (GDL, BBQ) +CCG = (PVB, GBB) +CPG = (KSD, BXG) +PFV = (PMX, RHS) +VCC = (RPQ, RDD) +CVF = (XSM, TNV) +QQX = (HGN, GDF) +QVJ = (HXJ, GTV) +PSD = (CQD, QFD) +DLP = (QQX, SQR) +HBM = (MCR, XVP) +SFS = (BTS, TSC) +NKN = (GBQ, RSF) +VQT = (BTJ, FGM) +XBH = (RMT, LXK) +SRM = (PGK, DLD) +FKQ = (SRV, PCC) +LSX = (XVS, HMG) +CLL = (NXN, SMV) +GDD = (NLD, TGL) +RVD = (XNM, QKN) +RHG = (BJM, NBR) +KFX = (FMJ, QRC) +FGM = (CLJ, SDH) +XJJ = (CVF, VTX) +NHL = (XBJ, HLF) +VMS = (VVQ, PPC) +JCQ = (CFP, FGB) +PSP = (VTH, HDC) +LRQ = (GDG, VBL) +PKL = (SSG, QGT) +LHJ = (HML, JMG) +BDX = (FMK, XDS) +DPX = (BBF, SBK) +GFD = (XVV, CHS) +PSR = (FPP, DSL) +HQB = (MRL, DHG) +GKD = (SSP, JSP) +TKL = (KBV, GTH) +HMF = (HHT, HLQ) +DGS = (VDJ, TJN) +MRQ = (QVM, KJC) +XSD = (TGJ, BDS) +GDG = (RGS, HFH) +JSV = (MFD, HXP) +HMG = (LCJ, GHQ) +BPV = (MRQ, XRL) +SSP = (KQM, NSX) +SDH = (QQR, RGR) +JTX = (NHL, TST) +NBR = (BXP, LSX) +PCN = (JGR, PQQ) +QCR = (RQV, FRV) +NPH = (HHH, MXN) +CBS = (PMX, RHS) +JNR = (HKQ, XHG) +GKT = (HRC, KHL) +CDX = (NXJ, FVH) +MXN = (RSP, PJR) +ZZZ = (VBQ, PQP) +MSD = (VVQ, PPC) +SMV = (VKQ, JNR) +KKJ = (PGN, KSB) +RJC = (CNM, LGB) +QFB = (QQS, TMC) +STX = (KMP, KMP) +QQR = (XTR, HNR) +BPA = (DSH, DVT) +GDT = (XVD, DNS) +KXM = (CNJ, SQD) +CHL = (LBP, PJX) +XQX = (CMN, QXH) +GQG = (BKS, VPQ) +HRC = (VCR, NPH) +LSL = (FMM, JTP) +DDQ = (XPS, DMJ) +DMF = (DHG, MRL) +HBP = (KQX, CDN) +DSR = (QMD, PBN) +SJD = (VGP, KSG) +PQQ = (KKJ, XVL) +XQG = (LQK, GXD) +QGT = (VJT, BPK) +KDF = (LHG, LHG) +VQV = (CGG, HVC) +VJT = (XKS, CLB) +TBL = (JSG, XDL) +TCC = (DVX, KMN) +SHP = (QRD, HDF) +CRD = (FXQ, TVC) +TQP = (FQN, BNF) +JVV = (VMJ, VJS) +LKJ = (KNP, GHG) +DTR = (KHX, GQK) +FXR = (GDT, GLK) +DLD = (LBV, TMB) +PNV = (BMP, LLQ) +TMC = (FQV, PPS) +VCR = (MXN, HHH) +QSR = (DCP, KNL) +NVT = (GNR, FKQ) +JHM = (NLH, KQR) +LBG = (TCC, RRN) +PBK = (XBM, RJL) +CGD = (PQQ, JGR) +LHG = (JJF, JJF) +FMD = (LGC, NFL) +XJH = (LMF, SMX) +CNM = (VBN, LGV) +PPS = (NLV, VJR) +GNN = (VQV, PLF) +DXD = (SXR, XJH) +VPQ = (GCK, TRC) +KSB = (FSX, RJC) +CQH = (VCC, RGM) +DQV = (CBM, JGF) +JPG = (MMQ, DLP) +PNT = (BMB, TCS) +MVF = (MNN, DFP) +XVD = (PVR, CFK) +DQR = (MBF, FCQ) +HLF = (GGF, JPG) +CFJ = (DPX, MHN) +MDF = (LRK, FMD) +GQT = (JTL, QRJ) +KKR = (CJG, LST) +BKF = (HDL, GCP) +HGF = (XRL, MRQ) +MCR = (CRR, BLQ) +GVD = (BKF, MQC) +JSG = (QRG, BCL) +RQK = (XNQ, XXN) +NXF = (NGQ, JSQ) +RDD = (XNR, LVG) +QJP = (GRS, QKX) +RCL = (MDC, FJM) +LXK = (CVG, BDX) +KNP = (XVM, BGM) +MPG = (NBF, KRK) +CCL = (VPQ, BKS) +SSN = (KVT, KLR) +QRK = (FKH, VFD) +QQS = (PPS, FQV) +CHS = (NJX, QRK) +PVL = (JRX, JCM) +KNF = (HXJ, GTV) +FKH = (CSV, JHP) +XDK = (XQX, VHT) +JKR = (MDR, NKN) +DMJ = (KQL, BRM) +KBV = (DSC, KFX) +BRM = (BPD, NCB) +SNT = (MCR, XVP) +CFP = (JHR, QGC) +TJF = (SRH, SLM) +LMP = (TCC, RRN) +CDM = (CVF, VTX) +GQK = (NVT, TSJ) +RGM = (RPQ, RDD) +BLF = (HDC, VTH) +PGS = (JRH, DPV) +LCX = (QCD, XQG) +GKM = (GLB, CJJ) +GFB = (QCF, VNT) +VQM = (PJP, PJP) +HKH = (SHP, GCC) +STG = (GNN, VPZ) +SBF = (KCN, ZZZ) +KRK = (TTQ, CGX) +VRF = (GLC, NXP) +JFP = (QHG, RDJ) +HDC = (SML, HPC) +TPB = (GNJ, SBF) +DDG = (DLT, KBM) +QTM = (KDL, DVR) +SJG = (NXJ, FVH) +RTT = (QCF, VNT) +GTV = (DMX, GFN) +SBK = (DJD, VFS) +XVP = (BLQ, CRR) +LXP = (TQP, BBX) +CMB = (PVL, KJD) +VHT = (QXH, CMN) +SMR = (LST, CJG) +BXG = (XBF, XFD) +GXD = (NPV, HBP) +BVA = (SMR, KKR) +XRD = (SQN, MVX) +CNJ = (BMK, RPT) +QFR = (LRK, FMD) +FPP = (NCR, VPS) +NQN = (LBP, PJX) +PLF = (CGG, HVC) +TPK = (VQM, VQM) +MKK = (MTJ, PSD) +PFB = (MXP, LGF) +VDJ = (LSL, QVX) +FVH = (JXQ, PBK) +HDM = (HXP, MFD) +VJS = (DDG, GQC) +PHC = (KDF, TCB) +VFD = (CSV, JHP) +RRH = (GDD, XDM) +MRL = (GML, DLB) +CDD = (JDK, KJQ) +XPS = (KQL, BRM) +NXH = (JMV, PVK) +NJX = (FKH, VFD) +FQL = (DSL, FPP) +LST = (QDF, JDR) +PQP = (LHT, SRM) +LPS = (PTK, PHC) +CVT = (CXD, KNV) +QTG = (XDL, JSG) +FXQ = (FGC, QBT) +TRK = (SSQ, LPX) +PTK = (KDF, KDF) +BXP = (HMG, XVS) +GCK = (QVJ, KNF) +MSB = (QKR, NQJ) +SVN = (DPV, JRH) +CQD = (PST, DQV) +QBQ = (TNG, PNT) +HJZ = (MQC, BKF) +HPT = (GDG, VBL) +TJN = (QVX, LSL) +NDA = (VQV, PLF) +JHP = (XRJ, VKF) +QTP = (XTT, LHJ) +JTL = (GVD, GVD) +DDV = (NDJ, NVK) +SCF = (VCC, RGM) +RGL = (NSH, TMK) +KSD = (XBF, XFD) +RJL = (TPK, BVS) +QKX = (NPC, PPG) +XMR = (TBL, QTG) +CVG = (FMK, XDS) +SKS = (SVQ, THL) +CCM = (MXP, LGF) +TNG = (TCS, BMB) +XXN = (GLR, QQK) +NVK = (VRF, PMC) +RRN = (DVX, KMN) +NPC = (LJH, LJH) +JJL = (XBH, LDM) +LDV = (FXK, DMP) +KMP = (JTL, JTL) +QNQ = (RMR, GKT) +JXQ = (XBM, RJL) +CBP = (NQN, CHL) +PPG = (LJH, XTG) +LQK = (HBP, NPV) +XTT = (HML, JMG) +SVQ = (PKL, PNH) +DSL = (NCR, VPS) +LTB = (FKX, DTR) +NLH = (GFB, RTT) +QFD = (PST, DQV) +RHS = (SNV, HPJ) +JPT = (GCS, VGX) +VTH = (HPC, SML) +JRF = (LNR, HSF) +BPK = (CLB, XKS) +LHH = (RDP, KXM) +TKP = (DQF, CXL) +XVV = (NJX, QRK) +GBD = (MBC, QBQ) +PBP = (DDV, THT) +TNF = (KNT, KVD) +RFL = (VMX, DBF) +MBC = (TNG, PNT) +MCV = (VDS, PBP) +GNR = (PCC, SRV) +DHG = (GML, DLB) +TCV = (LDF, TKL) +XDS = (PSR, FQL) +VMR = (TST, NHL) +XVM = (RGK, QFB) +LJN = (MXC, DQR) +VBL = (HFH, RGS) +LCG = (PFV, CBS) +SXR = (LMF, SMX) +TGL = (VMR, JTX) +BDS = (QKH, QSR) +RGS = (CBP, DPN) +RFZ = (KKR, SMR) +JTQ = (DSR, BQJ) +BQJ = (QMD, PBN) +VVQ = (DGS, GSN) +CGG = (NNL, LCR) +CVH = (LPX, SSQ) +NGC = (GKM, TTN) +XNR = (XNP, DXD) +FBN = (DQF, CXL) +MBG = (KJQ, JDK) +JSQ = (NMV, NBS) +LRF = (VJM, MQQ) +GBC = (NCT, MPG) +NXP = (BDD, DTJ) +LGC = (BPV, HGF) +HDF = (BBQ, GDL) +RSF = (JPT, SCP) +LDF = (KBV, GTH) +QQJ = (CMB, JGH) +SHX = (DSR, BQJ) +RSP = (SNT, HBM) +GPH = (CHS, XVV) +DQJ = (QNQ, CRQ) +MMQ = (SQR, QQX) +FVF = (PCN, CGD) +BBF = (VFS, DJD) +QBT = (HFQ, PGM) +RPQ = (XNR, LVG) +CJG = (QDF, JDR) +SBR = (MSD, VMS) +SXH = (GRS, QKX) +MFB = (JTF, QTM) +DBL = (XBR, PFH) +TGJ = (QSR, QKH) +CXL = (KMK, RVR) +PGM = (FPN, PJS) +NMR = (HXM, TJF) +QGC = (STV, NJT) +VMX = (GTG, QCR) +DSH = (CRX, RQK) +PST = (CBM, JGF) +JVR = (PVK, JMV) +GRS = (NPC, NPC) +RBT = (MHN, DPX) +XBF = (XQL, BVB) +DJD = (CFF, JJL) +GLB = (PXJ, QQJ) +MQC = (HDL, GCP) +SHC = (BKK, STG) +JGH = (PVL, KJD) +XHG = (VVS, HTD) +SPF = (XMR, JGB) +GHV = (BLF, PSP) +VGN = (KSG, VGP) +FQV = (NLV, VJR) +HHR = (LJN, CQV) +GFN = (FHL, SHC) +KJQ = (NXH, JVR) +CFF = (XBH, LDM) +SFQ = (SXH, QJP) +XBR = (CQH, SCF) +XND = (DMJ, XPS) +LDQ = (BXG, KSD) +CMN = (PFP, CLL) +GCC = (HDF, QRD) +HPJ = (PMP, FRM) +BSS = (MKK, TVJ) +VTC = (DKR, MXS) +VCX = (STX, HHQ) +RQV = (XRD, CGJ) +PGK = (TMB, LBV) +HTD = (LRF, KXL) +PVR = (JSV, HDM) +BBQ = (XKC, HHR) +PKQ = (LBG, LMP) +NCN = (GGR, VCX) +PBN = (FNP, CCG) +SQD = (BMK, RPT) +QKR = (KKD, XSD) +DTJ = (DGX, LPB) +TSJ = (GNR, FKQ) +TVC = (FGC, QBT) +NCC = (RGL, KGL) +DVT = (CRX, RQK) +THL = (PKL, PNH) +QQM = (VMJ, VJS) +DKR = (NCN, HQJ) +MKF = (VLR, LQS) +VFS = (CFF, JJL) +GDF = (GFD, GPH) +DQF = (RVR, KMK) +NSX = (KLV, CLQ) +JGF = (TCV, QDH) +XKS = (PXL, CVB) +RSQ = (HQB, DMF) +DXX = (LFV, NTJ) +VKF = (MCV, MVT) +BDD = (DGX, LPB) +DNS = (PVR, CFK) +SRV = (RQC, JHM) +XDL = (QRG, BCL) +NCT = (KRK, NBF) +XQK = (THL, SVQ) +DLB = (HFT, TSF) +DVX = (CJF, NSJ) +NCR = (BSL, BRP) +CSV = (XRJ, VKF) +KLS = (TTS, VGR) +JCB = (BLM, TQL) +MXP = (NNG, XXS) +FNP = (PVB, GBB) +XGS = (GLK, GDT) +VBQ = (SRM, LHT) +GHQ = (SJG, CDX) +LQS = (JKR, XDX) +MXS = (HQJ, NCN) +MNN = (TKP, FBN) +DVR = (CVH, TRK) +VKQ = (HKQ, XHG) +KHX = (TSJ, NVT) +BMK = (SKB, JCB) +FGC = (HFQ, PGM) +TVD = (QKR, NQJ) +BNF = (CFJ, RBT) +NXN = (VKQ, JNR) +VJM = (CCS, KVL) +XRL = (QVM, KJC) +SRH = (XJJ, CDM) +FDF = (JNF, SXX) +XKM = (FDV, VTC) +BLQ = (CDT, CRD) +VMF = (QLC, HMF) +JGP = (LPS, JNC) +BVB = (HPT, LRQ) +LNR = (QFR, MDF) +VJR = (HHF, JQS) +FHQ = (MBC, QBQ) +SLM = (XJJ, CDM) +HVC = (LCR, NNL) +KNT = (XKM, VDF) +KGL = (NSH, TMK) +KNL = (GKD, SBM) +CJF = (VGN, SJD) +HXJ = (DMX, GFN) +RGR = (XTR, HNR) +PMP = (XDK, HLS) +TKB = (BLF, PSP) +VBJ = (RGL, KGL) +LCJ = (CDX, SJG) +JCM = (HKH, KDS) +CXD = (FTH, RFL) +TSF = (CXS, NXF) +BSL = (CCM, PFB) +QRC = (KPC, LJF) +MLD = (JGB, XMR) +CRR = (CRD, CDT) +GNJ = (KCN, KCN) +QRJ = (GVD, HJZ) +CDN = (SPF, MLD) +HLS = (VHT, XQX) +HML = (SBR, FMH) +RPT = (JCB, SKB) +SBM = (SSP, JSP) +VBN = (LTB, JST) +NBS = (FDF, MSG) +MDR = (GBQ, RSF) +XDM = (TGL, NLD) +SKB = (TQL, BLM) +NNL = (LXP, QTD) +KQM = (KLV, CLQ) +VLR = (JKR, XDX) +RSG = (LDQ, CPG) +LJH = (NMR, NMR) +RGK = (QQS, TMC) +SQN = (VVL, JFP) +DFP = (TKP, FBN) +SCP = (VGX, GCS) +VBP = (DMP, FXK) +NMV = (MSG, FDF) +QCF = (DXX, VLL) +HHT = (MKF, GBN) +SBZ = (DVT, DSH) +SNV = (PMP, FRM) +GQC = (KBM, DLT) +MQQ = (KVL, CCS) +VGP = (LXN, MVD) +GBN = (VLR, LQS) +MVX = (JFP, VVL) +DRX = (BTJ, FGM) +JRH = (XGJ, RSQ) +RVR = (TDT, TNF) +PVK = (QQM, JVV) +JQS = (XGS, FXR) +BCL = (RSG, QSL) +GBB = (MMK, CVT) +SSQ = (XND, DDQ) +PCC = (JHM, RQC) +CCS = (CDD, MBG) +MMP = (NBR, BJM) +MTJ = (QFD, CQD) +PVB = (CVT, MMK) +KLR = (TND, VMF) +FKX = (KHX, GQK) +FDV = (DKR, MXS) +TCB = (LHG, TQN) +JDK = (NXH, JVR) +GBQ = (SCP, JPT) +TTN = (GLB, CJJ) +JTF = (DVR, KDL) +QQQ = (TTN, GKM) +DXP = (LHH, CSF) +MFD = (BSS, PQJ) +PGN = (RJC, FSX) +MBF = (XKQ, MFB) +XXS = (FXT, GCB) +VGX = (VBJ, NCC) +FPJ = (PJP, RFZ) +XTG = (NMR, PQZ) +JGR = (XVL, KKJ) +MSG = (JNF, SXX) +CKQ = (PCN, CGD) +QSL = (LDQ, CPG) +XQL = (HPT, LRQ) +KVT = (TND, VMF) +BBX = (BNF, FQN) +CLJ = (QQR, RGR) +GSN = (VDJ, TJN) +DLT = (SXP, SFS) +XFD = (BVB, XQL) +FHL = (BKK, BKK) +FSX = (LGB, CNM) +SPQ = (KNP, GHG) +NXJ = (JXQ, PBK) +NPV = (CDN, KQX) +DPN = (CHL, NQN) +RMR = (HRC, KHL) +LPF = (XQG, QCD) +THT = (NDJ, NVK) +JNC = (PTK, PHC) +LGF = (XXS, NNG) +CVB = (CCL, GQG) +VVL = (RDJ, QHG) +LCR = (LXP, QTD) +PQJ = (TVJ, MKK) +VDF = (FDV, VTC) +GTG = (FRV, RQV) +FRM = (XDK, HLS) +LPB = (SPV, PNV) +NBF = (TTQ, CGX) +XKQ = (QTM, JTF) +BRP = (PFB, CCM) +KVD = (XKM, VDF) +XBJ = (GGF, JPG) +KDS = (GCC, SHP) +TVJ = (PSD, MTJ) +XSM = (NLJ, JRF) +BTS = (SKS, XQK) +VVS = (LRF, KXL) +SPV = (BMP, LLQ) +KQL = (BPD, NCB) +CGX = (MVF, HLJ) +XBM = (TPK, TPK) +TMK = (JTQ, SHX) +VNT = (DXX, VLL) +CBM = (QDH, TCV) +TQL = (QTP, FSN) +HKQ = (VVS, HTD) +RQC = (KQR, NLH) +FMH = (VMS, MSD) +NCB = (HRM, TPB) +BKK = (GNN, GNN) +QRG = (QSL, RSG) +JSP = (NSX, KQM) +RQP = (CRQ, QNQ) +JHR = (NJT, STV) +MXC = (MBF, FCQ) +LBV = (LVM, SSN) +KLV = (KFG, RCL) +FJM = (TXK, LCG) +QVX = (FMM, JTP) +LJF = (KLS, HTF) +QXH = (PFP, CLL) +KQR = (GFB, RTT) +MHN = (SBK, BBF) +GTH = (KFX, DSC) +GCP = (RVD, JQG) +CXS = (NGQ, JSQ) +BJM = (BXP, LSX) +LLQ = (NRD, FSK) +CSF = (RDP, KXM) +TXK = (CBS, PFV) +SXP = (TSC, BTS) +PQZ = (TJF, HXM) +KBM = (SXP, SFS) +HHF = (FXR, XGS) +TNV = (NLJ, JRF) +JST = (DTR, FKX) +XKC = (LJN, CQV) +TCS = (SVN, PGS) +PPC = (DGS, GSN) +LGB = (LGV, VBN) +MVT = (VDS, PBP) +TST = (XBJ, HLF) +QVM = (GPX, DBL) +NSJ = (SJD, VGN) +PFH = (SCF, CQH) +JTP = (FVF, CKQ) +QDF = (GHV, TKB) +TTS = (DRX, VQT) +CDT = (FXQ, TVC) +DCP = (SBM, GKD) +VPZ = (PLF, VQV) +NLD = (JTX, VMR) +HFT = (CXS, NXF) +GCS = (VBJ, NCC) +HHQ = (KMP, GQT) +RMT = (BDX, CVG) +TRC = (QVJ, KNF) +LPX = (DDQ, XND) +SQR = (HGN, GDF) +KFG = (MDC, FJM) +BGM = (RGK, QFB) +KKD = (TGJ, BDS) +LFV = (PKQ, NGP) +GPS = (LPS, JNC) +CGJ = (MVX, SQN) +DGX = (SPV, PNV) +KMK = (TDT, TNF) +BVS = (VQM, FPJ) +MDC = (TXK, LCG) +KMN = (CJF, NSJ) +QHG = (QQQ, NGC) +KXL = (VJM, MQQ) +BMB = (SVN, PGS) +NLJ = (LNR, HSF) +TSC = (XQK, SKS) +JRX = (KDS, HKH) +TND = (QLC, HMF) +QCD = (LQK, GXD) +NRD = (LCX, LPF) +HXP = (PQJ, BSS) +HLJ = (MNN, DFP) +MNT = (CFP, FGB) +KSG = (MVD, LXN) +FPN = (FHQ, GBD) +HXM = (SRH, SLM) +CLQ = (KFG, RCL) +XGJ = (DMF, HQB) +FSK = (LPF, LCX) +GDL = (HHR, XKC) +PTF = (XDM, GDD) +AAA = (PQP, VBQ) +XDX = (MDR, NKN) +SMX = (RQP, DQJ) +LBP = (RHG, MMP) +FQN = (RBT, CFJ) +KDL = (CVH, TRK) +QCA = (HXM, TJF) +MVD = (GBC, DKT) +FMK = (FQL, PSR) +PMX = (SNV, HPJ) +GLK = (XVD, DNS) +NJT = (DXP, XHQ) +SML = (RRH, PTF) +BMP = (NRD, FSK) +QKN = (MNT, JCQ) +QQK = (SPQ, LKJ) +JDR = (GHV, TKB) +DMX = (FHL, FHL) +PMC = (NXP, GLC) +HSF = (QFR, MDF) +NDJ = (PMC, VRF) +JMG = (SBR, FMH) +KHL = (NPH, VCR) +QTD = (BBX, TQP) +XHQ = (LHH, CSF) +GGF = (DLP, MMQ) +QDH = (TKL, LDF) +DMP = (MSB, TVD) +BLM = (QTP, FSN) +DBF = (QCR, GTG) +XNQ = (QQK, GLR) +HLQ = (MKF, GBN) +VDS = (DDV, THT) +LVG = (XNP, DXD) +STV = (XHQ, DXP) +KPC = (HTF, KLS) +FTH = (VMX, DBF) +KJC = (DBL, GPX) +PJP = (SMR, KKR) \ No newline at end of file diff --git a/public/inputs/day8/intro.txt b/public/inputs/day8/intro.txt index e69de29..ebd025b 100644 --- a/public/inputs/day8/intro.txt +++ b/public/inputs/day8/intro.txt @@ -0,0 +1,5 @@ +LLR + +FDA = (BBB, BBB) +BBB = (FDA, ZZZ) +ZZZ = (ZZZ, ZZZ) \ No newline at end of file diff --git a/public/inputs/day9/full-liulangzhe.txt b/public/inputs/day9/full-liulangzhe.txt index e69de29..70c5595 100644 --- a/public/inputs/day9/full-liulangzhe.txt +++ b/public/inputs/day9/full-liulangzhe.txt @@ -0,0 +1,3 @@ +0 3 6 9 12 15 +1 3 6 10 15 21 +10 13 16 21 30 45 \ No newline at end of file diff --git a/public/inputs/day9/full-minthamie.txt b/public/inputs/day9/full-minthamie.txt index e69de29..775b69b 100644 --- a/public/inputs/day9/full-minthamie.txt +++ b/public/inputs/day9/full-minthamie.txt @@ -0,0 +1,200 @@ +24 38 52 66 80 94 108 122 136 150 164 178 192 206 220 234 248 262 276 290 304 +1 6 8 2 -10 -6 67 305 879 2127 4775 10402 22342 47347 98546 200559 398101 770084 1452146 2671762 4801686 +13 21 20 3 -33 -68 -21 310 1329 3739 8646 17657 32955 57330 94141 147180 220405 317505 441256 592623 769559 +13 25 45 73 109 153 205 265 333 409 493 585 685 793 909 1033 1165 1305 1453 1609 1773 +0 4 24 80 206 467 1004 2133 4538 9611 20002 40447 78940 148304 268194 467530 787308 1283670 2031028 3124930 4684226 +0 6 15 26 44 96 265 744 1918 4505 9833 20404 41003 80756 156734 299951 564928 1044412 1891375 3351106 5807090 +17 27 38 52 80 152 341 817 1966 4641 10659 23733 51168 106936 217333 431587 841987 1622055 3098056 5880270 11098060 +18 45 87 142 216 335 557 984 1774 3153 5427 8994 14356 22131 33065 48044 68106 94453 128463 171702 225936 +2 18 48 99 198 401 809 1616 3235 6592 13768 29342 63099 135289 286447 595028 1207951 2391885 4617303 8693984 15987511 +4 15 44 91 151 223 342 661 1632 4374 11397 28029 65268 145513 313952 660626 1361776 2754565 5467334 10639035 20277385 +2 19 61 153 344 716 1392 2546 4418 7337 11755 18295 27816 41498 60950 88344 126578 179471 251993 350533 483208 +-1 -6 -17 -25 -11 54 209 503 995 1754 2859 4399 6473 9190 12669 17039 22439 29018 36935 46359 57469 +11 9 -1 -14 -15 32 205 655 1647 3611 7203 13376 23461 39258 63137 98149 148147 217917 313319 441438 610745 +9 29 58 95 143 213 330 540 917 1569 2642 4321 6827 10409 15330 21846 30177 40469 52746 66851 82375 +-4 2 26 80 184 370 679 1148 1788 2561 3376 4145 4976 6639 11533 25519 61180 143340 318038 666630 1327304 +-3 1 14 36 74 155 342 758 1626 3338 6586 12643 23999 45770 88648 174695 348059 693767 1369198 2654734 5032512 +0 3 21 65 145 280 531 1066 2272 4943 10595 21989 43981 84864 158421 286970 505752 869091 1458841 2395729 3854305 +15 23 41 86 192 422 880 1723 3173 5529 9179 14612 22430 33360 48266 68161 94219 127787 170397 223778 289868 +-7 -12 -15 -11 19 114 348 870 1996 4404 9535 20415 43342 91334 191113 397086 818939 1675156 3394633 6804881 13471197 +10 31 77 170 346 660 1191 2054 3428 5606 9065 14541 23076 35981 54631 79975 111606 146193 175029 180396 130390 +28 49 79 126 209 378 745 1526 3096 6074 11499 21264 39205 73711 143659 291374 610212 1302414 2799283 6008265 12813801 +24 54 102 180 322 609 1204 2395 4644 8640 15354 26094 42558 66883 101688 150109 215824 303066 416622 561816 744474 +9 17 29 46 89 221 583 1466 3461 7762 16757 35145 71992 144454 284498 551127 1052853 1989247 3727505 6941792 12861991 +-8 -3 18 75 202 460 963 1918 3688 6915 12797 23704 44444 84648 162926 313643 597360 1116161 2035220 3612025 6234638 +14 18 28 53 109 239 550 1268 2817 5955 12060 23768 46353 90573 178344 353904 705847 1411031 2822647 5646510 11290008 +7 14 36 88 200 425 844 1568 2737 4516 7088 10644 15370 21431 28952 37996 48539 60442 73420 87008 100524 +16 22 30 53 121 287 629 1245 2238 3688 5607 7872 10133 11703 11462 7856 -844 -15726 -35372 -52177 -45711 +-5 -8 -14 -26 -39 -31 62 400 1335 3562 8338 17782 35269 65931 117278 199952 328627 523068 809362 1221334 1802161 +7 8 17 37 64 95 147 287 673 1606 3593 7421 14242 25669 43883 71751 112955 172132 255025 368645 521444 +19 32 51 74 89 68 -27 -204 -331 94 2367 9343 26904 67034 154615 342558 744830 1606519 3448414 7358263 15565478 +25 43 66 105 193 402 866 1814 3626 6940 12859 23334 41832 74437 131577 230621 399647 682745 1147288 1893679 3068163 +10 9 16 44 108 222 396 633 926 1255 1584 1858 2000 1908 1452 471 -1230 -3883 -7760 -13176 -20492 +19 28 50 94 169 284 448 670 959 1324 1774 2318 2965 3724 4604 5614 6763 8060 9514 11134 12929 +28 38 38 26 0 -38 -67 -3 415 1893 6173 17281 44065 105169 238456 518380 1087409 2212203 4383427 8492743 16147397 +5 20 59 131 242 395 590 824 1091 1382 1685 1985 2264 2501 2672 2750 2705 2504 2111 1487 590 +6 2 6 32 96 231 528 1216 2790 6189 13018 25801 48248 85520 144484 233967 365046 551452 810222 1162806 1636928 +17 28 40 52 72 141 368 986 2458 5701 12583 27024 57355 121142 254594 530181 1088691 2196779 4350590 8465505 16231918 +12 11 21 54 140 347 809 1765 3607 6925 12517 21289 33891 49823 65647 72001 49672 -33223 -216433 -518802 -849232 +10 17 44 108 240 508 1058 2175 4363 8453 15785 28590 50844 90117 161363 294314 547409 1033610 1968447 3761345 7194253 +5 5 19 72 199 445 877 1616 2893 5129 9035 15724 26823 44569 71869 112300 170021 249565 355475 491744 661015 +-4 -2 -2 7 53 187 493 1102 2210 4100 7168 11953 19171 29753 44887 66064 95128 134330 186386 254539 342625 +11 33 78 156 276 441 647 904 1306 2186 4401 9801 21945 47136 95856 184691 338845 595351 1007096 1647786 2617986 +25 41 70 132 268 547 1081 2068 3889 7299 13789 26281 50508 97850 191284 377885 754712 1521183 3082460 6249315 12619309 +-1 -1 -3 -10 -26 -62 -145 -325 -668 -1205 -1769 -1581 1690 13954 49005 137645 346876 819457 1852938 4051920 8610837 +22 33 53 104 223 459 864 1482 2358 3629 5831 10670 22671 52347 121830 274288 588926 1203945 2350521 4401676 7940855 +12 11 21 61 167 414 950 2038 4111 7861 14402 25565 44396 75932 128321 214326 353206 572895 912299 1423397 2172661 +8 20 41 64 80 78 45 -34 -176 -400 -727 -1180 -1784 -2566 -3555 -4782 -6280 -8084 -10231 -12760 -15712 +-2 6 27 66 145 326 753 1729 3852 8242 16899 33240 62871 114658 202169 345567 574042 928878 1467259 2266926 3431805 +12 28 63 123 214 342 513 733 1008 1344 1747 2223 2778 3418 4149 4977 5908 6948 8103 9379 10782 +6 26 62 131 265 524 1024 1993 3880 7558 14699 28483 54967 105724 202813 387811 737580 1390714 2590327 4751374 8565245 +21 36 62 107 189 335 588 1045 1959 3948 8364 17885 37403 75291 145142 268083 475777 814236 1348578 2168871 3397217 +5 4 13 36 73 128 229 462 1032 2399 5601 12970 29584 66034 143565 303669 626287 1264754 2512757 4930676 9578227 +7 2 -7 -23 -46 -70 -74 14 426 1831 5961 16919 43793 105787 242259 532348 1133175 2353478 4793766 9609732 19002244 +11 12 10 2 -6 30 237 898 2586 6423 14579 31231 64432 129820 258029 509351 1002068 1965542 3836675 7431044 14243609 +0 12 39 99 221 455 901 1767 3469 6790 13116 24762 45399 80638 139043 234523 392817 668899 1191032 2265408 4610856 +6 11 26 59 112 181 265 398 725 1650 4091 9884 22385 47326 93988 176761 317168 546437 908712 1465001 2297966 +-2 -1 -2 -5 -10 -17 -26 -37 -50 -65 -82 -101 -122 -145 -170 -197 -226 -257 -290 -325 -362 +23 36 64 124 242 471 926 1841 3650 7103 13476 25071 46516 88010 172830 353435 743825 1581207 3338918 6927765 14049890 +14 21 26 22 -3 -66 -189 -399 -728 -1213 -1896 -2824 -4049 -5628 -7623 -10101 -13134 -16799 -21178 -26358 -32431 +20 27 34 41 48 55 62 69 76 83 90 97 104 111 118 125 132 139 146 153 160 +25 35 55 97 189 389 809 1671 3442 7132 14883 31017 63737 127709 247926 465970 852036 1532025 2753039 5041238 9569328 +-8 -13 -18 -23 -28 -33 -38 -43 -48 -53 -58 -63 -68 -73 -78 -83 -88 -93 -98 -103 -108 +16 28 55 120 260 532 1018 1842 3231 5681 10342 19835 39888 82462 171472 352836 711454 1398878 2676933 4984438 9036504 +21 47 100 194 346 576 916 1439 2319 3945 7149 13683 27206 55232 112757 228640 456273 890651 1694658 3138232 5655074 +0 -1 -4 2 51 208 588 1401 3038 6213 12176 23012 42041 74334 127360 211779 342396 539291 829140 1246742 1836767 +-7 2 29 78 153 263 431 717 1280 2524 5398 11960 26413 57086 120486 249988 514640 1059062 2185338 4515096 9299438 +-9 -13 -9 24 125 369 897 1964 4018 7824 14650 26566 47030 82242 144378 258964 480569 924009 1822761 3632772 7208891 +7 3 1 10 46 132 305 649 1401 3220 7764 18791 44113 98962 211849 435192 865667 1685080 3244946 6243388 12093370 +-3 6 40 115 248 453 734 1072 1404 1607 1549 1388 2562 10462 40878 134395 386683 1009100 2444674 5581361 12130176 +17 31 57 95 145 207 281 367 465 575 697 831 977 1135 1305 1487 1681 1887 2105 2335 2577 +17 35 63 100 138 167 202 346 912 2653 7213 18054 42398 95252 207535 442015 923751 1896979 3829455 7600644 14835558 +17 20 23 43 119 324 797 1822 3998 8567 17997 36951 73795 142778 266934 481665 839132 1414723 2320520 3739768 6015952 +24 36 48 60 72 84 96 108 120 132 144 156 168 180 192 204 216 228 240 252 264 +25 36 58 102 179 300 476 718 1037 1444 1950 2566 3303 4172 5184 6350 7681 9188 10882 12774 14875 +19 27 42 69 112 181 323 707 1818 4855 12500 30373 69807 153246 324893 671696 1364077 2733007 5411518 10586401 20432114 +9 14 20 40 109 300 742 1640 3309 6260 11434 20803 38807 75602 154127 325095 698165 1505485 3228408 6844265 14295557 +1 13 49 128 268 481 768 1114 1483 1813 2011 1948 1454 313 -1742 -5034 -9947 -16931 -26507 -39272 -55904 +27 39 58 87 133 230 472 1061 2398 5291 11432 24414 51728 108408 223288 449208 878965 1669359 3076342 5505049 9579383 +25 47 88 166 305 541 937 1623 2897 5453 10843 22330 46343 94795 188560 362411 671681 1200803 2073690 3465606 5615725 +10 7 4 1 -2 -5 -8 -11 -14 -17 -20 -23 -26 -29 -32 -35 -38 -41 -44 -47 -50 +7 0 -6 1 48 188 525 1278 2926 6508 14211 30477 64009 131268 262340 510426 966681 1782712 3203752 5616369 9615558 +12 21 34 53 73 85 91 148 486 1794 5844 16732 43163 102400 226741 473689 941344 1790979 3279270 5803239 9961645 +-6 1 11 32 84 196 401 743 1339 2584 5661 13657 33865 82406 193355 436439 950584 2005807 4114103 8222282 16037730 +-2 1 3 7 33 130 402 1077 2676 6379 14748 33077 71833 150980 307503 608247 1171346 2201141 4043689 7272875 12820897 +2 14 34 67 122 218 396 744 1462 3024 6534 14423 31694 67992 140856 280600 537370 991034 1764682 3042643 5094066 +11 6 7 35 123 310 628 1087 1683 2487 3919 7370 16407 38881 90356 199388 415307 819292 1539679 2772605 4809267 +-5 -9 -5 16 63 145 271 450 691 1003 1395 1876 2455 3141 3943 4870 5931 7135 8491 10008 11695 +0 12 38 84 164 302 534 910 1496 2376 3654 5456 7932 11258 15638 21306 28528 37604 48870 62700 79508 +11 21 30 41 57 81 116 169 284 664 1991 6116 17368 44822 105971 232366 477921 930727 1729380 3085003 5310331 +10 40 97 190 321 489 715 1101 1936 3862 8113 16840 33535 63567 114843 198607 330390 531124 828433 1258114 1865821 +12 28 61 130 259 479 829 1365 2200 3613 6281 11705 22919 45590 89637 171518 317356 567098 979925 1641156 2670915 +15 33 54 71 77 68 46 22 19 75 246 609 1265 2342 3998 6424 9847 14533 20790 28971 39477 +-10 -15 -20 -25 -30 -35 -40 -45 -50 -55 -60 -65 -70 -75 -80 -85 -90 -95 -100 -105 -110 +16 24 40 68 112 176 264 380 528 712 936 1204 1520 1888 2312 2796 3344 3960 4648 5412 6256 +14 25 37 46 54 74 127 236 434 829 1818 4623 12447 32735 81301 189486 416098 866725 1724199 3295640 6083768 +-3 10 37 94 212 451 922 1828 3549 6813 13019 24813 47068 88488 164148 299401 535733 939332 1613361 2715192 4480172 +12 13 24 54 105 167 213 194 34 -375 -1178 -2562 -4761 -8061 -12805 -19398 -28312 -40091 -55356 -74810 -99243 +13 22 45 88 157 258 397 580 813 1102 1453 1872 2365 2938 3597 4348 5197 6150 7213 8392 9693 +10 36 82 151 244 363 514 710 974 1342 1866 2617 3688 5197 7290 10144 13970 19016 25570 33963 44572 +4 2 -4 -8 3 49 157 361 702 1228 1994 3062 4501 6387 8803 11839 15592 20166 25672 32228 39959 +5 14 31 52 73 90 99 96 77 38 -25 -116 -239 -398 -597 -840 -1131 -1474 -1873 -2332 -2855 +-6 -12 -12 12 88 251 542 1028 1886 3631 7621 17044 38686 85898 183327 374154 730794 1370262 2475698 4325876 7334900 +11 28 64 138 279 526 930 1566 2563 4167 6888 11886 21983 44133 94954 212172 476731 1053110 2259328 4683530 9371303 +3 23 67 145 267 443 683 997 1395 1887 2483 3193 4027 4995 6107 7373 8803 10407 12195 14177 16363 +0 9 33 79 157 294 551 1042 1956 3579 6313 10715 17660 28896 48522 86272 163876 326077 657909 1309271 2526211 +17 37 65 103 168 309 627 1306 2675 5350 10574 21028 42710 89106 190006 409227 878565 1859987 3854991 7789941 15319908 +16 32 56 95 171 323 613 1144 2092 3746 6543 11082 18105 28447 42984 62651 88664 123164 170610 240385 351247 +20 48 91 149 222 310 413 531 664 812 975 1153 1346 1554 1777 2015 2268 2536 2819 3117 3430 +-7 -7 8 51 145 330 666 1236 2168 3721 6521 12093 23918 49354 102901 211466 422499 816129 1522734 2747735 4805815 +8 15 32 77 191 461 1061 2324 4860 9735 18724 34647 61791 106413 177309 286422 449448 686383 1021936 1485713 2112055 +-3 10 45 119 251 464 795 1309 2110 3349 5253 8249 13360 23283 45099 96754 221868 521974 1223292 2808615 6267122 +-7 5 37 105 246 529 1066 2023 3631 6197 10115 15877 24084 35457 50848 71251 97813 131845 174833 228449 294562 +12 39 77 138 261 529 1087 2164 4111 7491 13302 23496 42117 77700 148187 290731 580666 1167011 2336655 4626474 9012841 +8 12 15 31 99 298 761 1693 3420 6526 12168 22686 42639 80409 150574 277483 501112 887748 1550973 2693733 4691283 +18 42 80 144 252 424 678 1026 1470 1998 2580 3164 3672 3996 3994 3486 2250 18 -3528 -8760 -16108 +5 11 27 67 145 275 471 747 1117 1595 2195 2931 3817 4867 6095 7515 9141 10987 13067 15395 17985 +7 2 -2 2 40 171 511 1273 2832 5832 11359 21213 38345 67630 117402 202691 352013 621034 1118636 2054040 3817862 +-4 -2 4 20 54 113 208 371 686 1334 2653 5231 10110 19325 37293 74076 152352 321126 680882 1427086 2921742 +18 44 88 156 253 390 602 977 1692 3048 5492 9610 16071 25498 38238 53999 71318 86820 94224 83048 36961 +8 16 49 124 268 524 953 1628 2615 3934 5489 6949 7552 5807 -841 -15926 -41810 -70848 -58719 144294 952600 +5 21 47 79 128 249 599 1535 3764 8565 18133 36179 69109 128471 236007 433767 803764 1505609 2848844 5434347 10436151 +17 32 47 62 77 92 107 122 137 152 167 182 197 212 227 242 257 272 287 302 317 +3 22 64 144 282 503 837 1319 1989 2892 4078 5602 7524 9909 12827 16353 20567 25554 31404 38212 46078 +30 40 54 87 160 300 540 919 1482 2280 3370 4815 6684 9052 12000 15615 19990 25224 31422 38695 47160 +16 32 59 89 121 168 260 443 774 1312 2105 3173 4487 5944 7338 8327 8396 6816 2599 -5551 -19291 +14 28 47 76 120 184 273 392 546 740 979 1268 1612 2016 2485 3024 3638 4332 5111 5980 6944 +2 5 27 95 262 618 1301 2508 4506 7643 12359 19197 28814 41992 59649 82850 112818 150945 198803 258155 330966 +22 49 91 166 310 592 1145 2225 4330 8443 16507 32296 62914 121234 229681 425867 770702 1359733 2338603 3923674 6429022 +10 21 45 109 249 508 944 1665 2916 5250 9830 18964 37136 73179 145043 290217 588027 1206379 2498594 5203369 10858160 +-1 1 17 60 160 375 802 1588 2941 5141 8551 13628 20934 31147 45072 63652 87979 119305 159053 208828 270428 +-8 -11 -14 -17 -20 -23 -26 -29 -32 -35 -38 -41 -44 -47 -50 -53 -56 -59 -62 -65 -68 +18 23 36 76 172 359 680 1216 2177 4095 8160 16722 33931 66383 123458 216746 357524 550631 782244 997936 1065942 +0 -4 -3 25 123 366 874 1827 3482 6192 10427 16797 26077 39234 57456 82183 115140 158372 214281 285665 375759 +4 16 40 98 233 524 1106 2204 4205 7808 14308 26091 47465 86092 155675 281515 512676 948785 1797624 3494503 6941039 +-5 -13 -24 -38 -55 -75 -98 -124 -153 -185 -220 -258 -299 -343 -390 -440 -493 -549 -608 -670 -735 +10 1 -9 -12 19 157 569 1592 3851 8448 17274 33527 62558 113214 199902 345661 586600 978139 1603577 2585606 4101493 +1 3 17 69 207 524 1194 2535 5141 10166 19909 38969 76469 150297 295195 578257 1128729 2195245 4254933 8218565 15809219 +10 22 48 96 169 271 424 707 1340 2867 6558 15276 35279 79804 175904 377088 786347 1598271 3177560 6209020 11990048 +5 15 36 85 194 423 896 1878 3911 8022 16006 30782 56860 101154 174990 299719 521833 950577 1844464 3797003 8112502 +21 33 50 83 165 369 828 1761 3525 6751 12708 24207 47648 97279 203454 427794 890020 1814735 3613832 7036842 13459348 +14 17 16 14 33 141 492 1393 3430 7709 16306 33086 65160 125416 236811 439513 802698 1444181 2563736 4501038 7838391 +10 16 31 69 144 270 461 731 1094 1564 2155 2881 3756 4794 6009 7415 9026 10856 12919 15229 17800 +7 9 12 19 42 122 363 991 2458 5621 12043 24497 47820 90394 166798 302736 544530 977975 1766715 3231869 6019627 +4 0 -9 -12 9 73 190 343 468 461 281 288 2091 10462 37444 110883 291604 706830 1612875 3508468 7332309 +18 26 40 66 114 201 354 613 1034 1692 2684 4132 6186 9027 12870 17967 24610 33134 43920 57398 74050 +15 27 58 121 236 442 810 1459 2589 4562 8090 14643 27294 52405 102870 204119 404811 795173 1537354 2914045 5404064 +11 10 8 5 -4 -20 -8 168 848 2712 6927 15261 30118 54560 92871 153714 261793 492858 1065910 2564441 6430408 +15 25 51 112 246 534 1141 2384 4839 9499 17996 32919 58337 100843 171899 293232 509042 913000 1706876 3325965 6703263 +-1 9 32 68 115 169 224 272 303 305 264 164 -13 -287 -680 -1216 -1921 -2823 -3952 -5340 -7021 +-1 12 45 116 255 509 955 1730 3100 5615 10445 20077 39695 79811 161196 324214 647071 1282904 2537279 5031484 10043393 +5 7 17 37 80 186 452 1095 2586 5929 13213 28635 60273 122972 242782 463441 855411 1527931 2644425 4441369 7250350 +7 23 63 136 261 492 967 2003 4266 9050 18705 37264 71336 131359 233347 401321 670689 1092937 1742115 2723752 4187015 +17 23 39 86 206 487 1102 2368 4835 9418 17586 31629 55062 93350 155464 257533 431499 745124 1346709 2561749 5095272 +13 19 34 66 123 213 344 524 761 1063 1438 1894 2439 3081 3828 4688 5669 6779 8026 9418 10963 +19 47 95 181 329 563 912 1447 2376 4232 8219 16853 35169 72975 148923 297522 580605 1105121 2049363 3699737 6499757 +12 13 30 90 247 592 1274 2545 4842 8919 16042 28260 48765 82354 136006 219587 346696 535665 810726 1203358 1753827 +19 25 44 96 216 475 1017 2121 4318 8627 17023 33316 64703 124351 235468 437403 794357 1407245 2429070 4083784 6687930 +-1 5 27 77 186 418 884 1756 3281 5795 9737 15663 24260 36360 52954 75206 104467 142289 190439 250913 325950 +6 10 19 38 71 116 164 213 317 716 2159 6665 19190 50999 126010 292065 640208 1337090 2679499 5187348 9764889 +28 38 49 68 106 194 419 998 2423 5732 13002 28239 58983 119186 234298 450057 847278 1566034 2844087 5076334 8904464 +6 13 18 21 22 21 18 13 6 -3 -14 -27 -42 -59 -78 -99 -122 -147 -174 -203 -234 +22 37 53 70 88 107 127 148 170 193 217 242 268 295 323 352 382 413 445 478 512 +5 13 28 52 84 133 243 530 1231 2765 5806 11368 20902 36405 60541 96774 149513 224269 327824 468412 655912 +18 33 64 135 292 616 1242 2390 4418 7917 13887 24064 41514 71674 124105 215331 373274 643961 1101378 1861581 3102448 +4 3 11 47 144 355 768 1552 3075 6166 12643 26309 54757 112604 227395 450843 881296 1710389 3321733 6499619 12864200 +-5 -6 -4 1 9 20 34 51 71 94 120 149 181 216 254 295 339 386 436 489 545 +15 21 33 54 88 153 300 637 1357 2769 5331 9684 16686 27445 43350 66099 97723 140605 197493 271506 366132 +13 35 75 150 291 559 1080 2117 4210 8428 16790 32925 63054 117390 212065 371706 632795 1047961 1691365 2665352 4108557 +8 4 -5 -7 28 149 415 875 1537 2338 3176 4192 6756 16115 47584 139866 382350 969773 2311243 5249518 11507696 +22 44 86 158 264 394 520 617 737 1177 2818 7809 21017 53244 128459 299776 683577 1529631 3360043 7236153 15258355 +1 16 58 146 311 606 1131 2087 3877 7276 13696 25576 46931 84098 146721 249021 411401 662440 1041334 1600846 2410831 +0 -8 -18 -31 -37 -1 167 668 1904 4620 10147 20856 41033 78533 147776 274919 506384 922352 1657356 2930731 5090415 +8 13 29 66 147 327 720 1540 3174 6330 12364 24032 47218 94802 195005 408709 864104 1823683 3809815 7833442 15799577 +24 37 66 138 305 664 1396 2840 5623 10878 20619 38439 70902 130375 240667 447799 839626 1579987 2965704 5518232 10126239 +9 12 25 57 123 264 586 1336 3045 6781 14581 30211 60632 119124 232314 456039 910197 1852428 3827933 7963859 16532197 +1 1 3 8 18 36 66 113 183 283 421 606 848 1158 1548 2031 2621 3333 4183 5188 6366 +8 6 5 20 77 210 453 821 1278 1712 1985 2217 3629 10567 34856 104568 280948 690174 1581737 3433954 7141669 +10 30 73 157 315 611 1176 2293 4577 9315 19052 38532 76128 145922 270625 485558 843948 1423828 2336867 3739495 5846729 +19 31 37 38 48 104 293 809 2052 4780 10324 20875 39851 72351 125702 210104 339377 531813 811135 1207564 1758994 +22 35 53 86 163 339 697 1345 2408 4015 6281 9284 13037 17455 22317 27223 31546 34379 34477 30194 19415 +-1 12 38 74 122 212 439 1017 2353 5151 10577 20550 38257 68990 121315 208324 348175 562138 866740 1254094 1650808 +12 21 34 66 148 342 778 1725 3717 7769 15737 30900 58871 108978 196295 344547 590162 987797 1617724 2595526 4084622 +10 17 38 80 160 308 564 975 1609 2624 4478 8470 18011 41433 97955 230071 529016 1186982 2604228 5608829 11906538 +13 29 56 94 159 298 603 1229 2430 4640 8643 15909 29276 54467 103724 204643 421079 900583 1977702 4391236 9728713 +10 9 11 16 24 35 49 66 86 109 135 164 196 231 269 310 354 401 451 504 560 +16 32 48 66 95 157 295 595 1252 2746 6262 14612 34150 78637 176982 388789 835636 1763596 3666184 7520406 15227221 +17 33 54 75 88 91 103 198 592 1840 5226 13480 32087 71760 153269 316913 640646 1273346 2493129 4805592 9105593 +2 7 25 71 165 340 672 1350 2822 6092 13324 29067 62704 133229 278288 570754 1148182 2263637 4371047 8264983 15304355 +12 23 45 91 196 430 914 1848 3573 6715 12509 23486 44837 86956 169920 330999 636714 1201487 2215565 3985661 6992650 +17 23 30 39 47 47 28 -25 -131 -313 -598 -1017 -1605 -2401 -3448 -4793 -6487 -8585 -11146 -14233 -17913 +19 31 63 128 244 443 784 1379 2455 4494 8521 16662 33202 66592 133268 264873 521675 1016857 1959179 3725596 6981144 +8 17 46 97 170 276 468 903 1962 4479 10171 22442 47908 99367 201748 404302 805948 1608225 3225376 6510111 13207278 +12 24 54 125 279 582 1128 2038 3446 5473 8240 12114 18702 33734 74085 183016 460572 1120346 2589974 5681335 11868165 +9 11 24 62 146 317 662 1357 2732 5376 10339 19580 37005 70822 138651 278095 567675 1166753 2389242 4835946 9626380 +-1 8 38 94 191 380 785 1651 3403 6716 12596 22472 38299 62672 98951 151397 225319 327232 465026 648146 887783 +-1 -2 -10 -28 -59 -106 -172 -260 -373 -514 -686 -892 -1135 -1418 -1744 -2116 -2537 -3010 -3538 -4124 -4771 +8 21 49 111 227 425 775 1468 2961 6212 13032 26584 52062 97586 175352 303079 505798 818031 1286411 1972797 2957941 +2 7 23 51 90 138 205 349 747 1824 4504 10759 24896 56590 127806 287878 644787 1427159 3102514 6596251 13689393 +7 26 69 160 347 720 1448 2847 5484 10323 18938 33869 59304 102485 176692 307706 548167 1010270 1941209 3896660 8132539 +8 15 22 29 36 43 50 57 64 71 78 85 92 99 106 113 120 127 134 141 148 \ No newline at end of file diff --git a/public/inputs/day9/intro.txt b/public/inputs/day9/intro.txt index e69de29..70c5595 100644 --- a/public/inputs/day9/intro.txt +++ b/public/inputs/day9/intro.txt @@ -0,0 +1,3 @@ +0 3 6 9 12 15 +1 3 6 10 15 21 +10 13 16 21 30 45 \ No newline at end of file