├── 1 ├── gold_answer.txt ├── silver_answer.txt ├── gold.py ├── silver.py ├── silver_puzzle.txt ├── gold_puzzle.txt └── input.txt ├── 2 ├── gold_answer.txt ├── silver_answer.txt ├── gold.py ├── silver.py ├── silver_puzzle.txt ├── gold_puzzle.txt └── input.txt ├── 3 ├── silver_puzzle.txt ├── gold_answer.txt ├── silver_answer.txt ├── gold.py ├── silver.py ├── gold_puzzle.txt └── input.txt ├── 4 ├── gold_answer.txt ├── silver_answer.txt ├── silver_puzzle.txt ├── gold.py ├── gold_puzzle.txt ├── silver.py └── input.txt ├── 5 ├── gold_answer.txt ├── silver_answer.txt ├── silver_puzzle.txt ├── gold.py ├── silver.py ├── gold_puzzle.txt └── input.txt ├── 6 ├── gold_answer.txt ├── silver_answer.txt ├── gold.py ├── silver.py ├── gold_puzzle.txt ├── silver_puzzle.txt └── input.txt └── README.md /3/silver_puzzle.txt: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /1/gold_answer.txt: -------------------------------------------------------------------------------- 1 | 765748 2 | -------------------------------------------------------------------------------- /2/gold_answer.txt: -------------------------------------------------------------------------------- 1 | 598 2 | -------------------------------------------------------------------------------- /2/silver_answer.txt: -------------------------------------------------------------------------------- 1 | 634 2 | -------------------------------------------------------------------------------- /4/gold_answer.txt: -------------------------------------------------------------------------------- 1 | 2468 2 | -------------------------------------------------------------------------------- /4/silver_answer.txt: -------------------------------------------------------------------------------- 1 | 1864 2 | -------------------------------------------------------------------------------- /5/gold_answer.txt: -------------------------------------------------------------------------------- 1 | 5955 2 | -------------------------------------------------------------------------------- /5/silver_answer.txt: -------------------------------------------------------------------------------- 1 | 4030 2 | -------------------------------------------------------------------------------- /6/gold_answer.txt: -------------------------------------------------------------------------------- 1 | 4982 2 | -------------------------------------------------------------------------------- /6/silver_answer.txt: -------------------------------------------------------------------------------- 1 | 1663 2 | -------------------------------------------------------------------------------- /1/silver_answer.txt: -------------------------------------------------------------------------------- 1 | 27732508 2 | -------------------------------------------------------------------------------- /3/gold_answer.txt: -------------------------------------------------------------------------------- 1 | 174103751 2 | -------------------------------------------------------------------------------- /3/silver_answer.txt: -------------------------------------------------------------------------------- 1 | 100411201 2 | -------------------------------------------------------------------------------- /3/gold.py: -------------------------------------------------------------------------------- 1 | import re 2 | import sys 3 | 4 | # Read input from stdin 5 | input_string = sys.stdin.read() 6 | 7 | # Find all valid mul instructions 8 | matches = re.findall(r'mul\((\d{1,3}),(\d{1,3})\)', input_string) 9 | 10 | # Sum the results of the multiplications 11 | total = sum(int(x) * int(y) for x, y in matches) 12 | 13 | print(total) 14 | -------------------------------------------------------------------------------- /3/silver.py: -------------------------------------------------------------------------------- 1 | import re 2 | import sys 3 | 4 | # Read input from stdin 5 | input_string = sys.stdin.read() 6 | 7 | # Define the regex pattern 8 | pattern = r"(?Pmul\((?P\d{1,3}),(?P\d{1,3})\))|(?Pdo\(\))|(?Pdon't\(\))" 9 | 10 | total = 0 11 | enabled = True 12 | 13 | # Iterate over all matches in the input string 14 | for match in re.finditer(pattern, input_string): 15 | if match.group('do'): 16 | enabled = True 17 | elif match.group('dont'): 18 | enabled = False 19 | elif match.group('mul') and enabled: 20 | a = int(match.group('a')) 21 | b = int(match.group('b')) 22 | total += a * b 23 | 24 | # Output the total sum 25 | print(total) 26 | -------------------------------------------------------------------------------- /1/gold.py: -------------------------------------------------------------------------------- 1 | # Read input from standard input 2 | import sys 3 | 4 | left_list = [] 5 | right_list = [] 6 | 7 | for line in sys.stdin: 8 | if line.strip() == '': 9 | continue # skip empty lines 10 | parts = line.strip().split() 11 | if len(parts) != 2: 12 | continue # skip lines that don't have exactly two numbers 13 | left_num, right_num = map(int, parts) 14 | left_list.append(left_num) 15 | right_list.append(right_num) 16 | 17 | # Sort both lists 18 | left_list.sort() 19 | right_list.sort() 20 | 21 | # Compute the sum of absolute differences 22 | total_distance = sum(abs(a - b) for a, b in zip(left_list, right_list)) 23 | 24 | # Print the result 25 | print(total_distance) 26 | -------------------------------------------------------------------------------- /5/silver_puzzle.txt: -------------------------------------------------------------------------------- 1 | While the Elves get to work printing the correctly-ordered updates, you have a little time to fix the rest of them. 2 | 3 | For each of the incorrectly-ordered updates, use the page ordering rules to put the page numbers in the right order. For the above example, here are the three incorrectly-ordered updates and their correct orderings: 4 | 5 | 75,97,47,61,53 becomes 97,75,47,61,53. 6 | 61,13,29 becomes 61,29,13. 7 | 97,13,75,29,47 becomes 97,75,47,29,13. 8 | After taking only the incorrectly-ordered updates and ordering them correctly, their middle page numbers are 47, 29, and 47. Adding these together produces 123. 9 | 10 | Find the updates which are not in the correct order. What do you get if you add up the middle page numbers after correctly ordering just those updates? 11 | -------------------------------------------------------------------------------- /2/gold.py: -------------------------------------------------------------------------------- 1 | def is_safe(levels): 2 | differences = [levels[i+1] - levels[i] for i in range(len(levels)-1)] 3 | # Check that no differences are zero 4 | if any(d == 0 for d in differences): 5 | return False 6 | # Check that all differences are between 1 and 3 inclusive in absolute value 7 | if not all(1 <= abs(d) <= 3 for d in differences): 8 | return False 9 | # Check if all increasing or all decreasing 10 | if all(d > 0 for d in differences) or all(d < 0 for d in differences): 11 | return True 12 | else: 13 | return False 14 | 15 | safe_reports = 0 16 | 17 | # Read input data 18 | import sys 19 | 20 | for line in sys.stdin: 21 | levels = list(map(int, line.strip().split())) 22 | if levels and is_safe(levels): 23 | safe_reports += 1 24 | 25 | print(safe_reports) 26 | -------------------------------------------------------------------------------- /2/silver.py: -------------------------------------------------------------------------------- 1 | def is_safe(levels): 2 | differences = [levels[i+1] - levels[i] for i in range(len(levels)-1)] 3 | # Check that no differences are zero 4 | if any(d == 0 for d in differences): 5 | return False 6 | # Check that all differences are between 1 and 3 inclusive in absolute value 7 | if not all(1 <= abs(d) <= 3 for d in differences): 8 | return False 9 | # Check if all increasing or all decreasing 10 | if all(d > 0 for d in differences) or all(d < 0 for d in differences): 11 | return True 12 | else: 13 | return False 14 | 15 | safe_reports = 0 16 | 17 | # Read input data 18 | import sys 19 | 20 | for line in sys.stdin: 21 | levels = list(map(int, line.strip().split())) 22 | if levels and is_safe(levels): 23 | safe_reports += 1 24 | 25 | print(safe_reports) 26 | -------------------------------------------------------------------------------- /1/silver.py: -------------------------------------------------------------------------------- 1 | from collections import Counter 2 | import sys 3 | 4 | # Initialize lists 5 | left_list = [] 6 | right_list = [] 7 | 8 | # Read input from stdin 9 | for line in sys.stdin: 10 | if line.strip() == '': 11 | continue # Skip empty lines 12 | parts = line.strip().split() 13 | if len(parts) != 2: 14 | continue # Skip lines that don't have exactly two numbers 15 | left_num, right_num = map(int, parts) 16 | left_list.append(left_num) 17 | right_list.append(right_num) 18 | 19 | # Count occurrences in the right list 20 | right_counter = Counter(right_list) 21 | 22 | # Calculate the similarity score 23 | similarity_score = 0 24 | for num in left_list: 25 | count_in_right = right_counter.get(num, 0) 26 | similarity_score += num * count_in_right 27 | 28 | # Output the result 29 | print(similarity_score) 30 | -------------------------------------------------------------------------------- /4/silver_puzzle.txt: -------------------------------------------------------------------------------- 1 | The Elf looks quizzically at you. Did you misunderstand the assignment? 2 | 3 | Looking for the instructions, you flip over the word search to find that this isn't actually an XMAS puzzle; it's an X-MAS puzzle in which you're supposed to find two MAS in the shape of an X. One way to achieve that is like this: 4 | 5 | M.S 6 | .A. 7 | M.S 8 | Irrelevant characters have again been replaced with . in the above diagram. Within the X, each MAS can be written forwards or backwards. 9 | 10 | Here's the same example from before, but this time all of the X-MASes have been kept instead: 11 | 12 | .M.S...... 13 | ..A..MSMS. 14 | .M.S.MAA.. 15 | ..A.ASMSM. 16 | .M.S.M.... 17 | .......... 18 | S.S.S.S.S. 19 | .A.A.A.A.. 20 | M.M.M.M.M. 21 | .......... 22 | In this example, an X-MAS appears 9 times. 23 | 24 | Flip the word search from the instructions back over to the word search side and try again. How many times does an X-MAS appear? 25 | -------------------------------------------------------------------------------- /5/gold.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | def main(): 4 | lines = sys.stdin.read().splitlines() 5 | # Split input into ordering rules and updates 6 | idx = lines.index('') 7 | ordering_rules_lines = lines[:idx] 8 | updates_lines = lines[idx+1:] 9 | 10 | ordering_rules = [] 11 | for line in ordering_rules_lines: 12 | X, Y = map(int, line.strip().split('|')) 13 | ordering_rules.append((X, Y)) 14 | 15 | total = 0 16 | for update_line in updates_lines: 17 | update_pages = list(map(int, update_line.strip().split(','))) 18 | page_to_index = {page: idx for idx, page in enumerate(update_pages)} 19 | correct = True 20 | for X, Y in ordering_rules: 21 | if X in page_to_index and Y in page_to_index: 22 | if page_to_index[X] >= page_to_index[Y]: 23 | correct = False 24 | break 25 | if correct: 26 | middle_page = update_pages[len(update_pages)//2] 27 | total += middle_page 28 | 29 | print(total) 30 | 31 | if __name__ == "__main__": 32 | main() 33 | -------------------------------------------------------------------------------- /2/silver_puzzle.txt: -------------------------------------------------------------------------------- 1 | The engineers are surprised by the low number of safe reports until they realize they forgot to tell you about the Problem Dampener. 2 | 3 | The Problem Dampener is a reactor-mounted module that lets the reactor safety systems tolerate a single bad level in what would otherwise be a safe report. It's like the bad level never happened! 4 | 5 | Now, the same rules apply as before, except if removing a single level from an unsafe report would make it safe, the report instead counts as safe. 6 | 7 | More of the above example's reports are now safe: 8 | 9 | 7 6 4 2 1: Safe without removing any level. 10 | 1 2 7 8 9: Unsafe regardless of which level is removed. 11 | 9 7 6 2 1: Unsafe regardless of which level is removed. 12 | 1 3 2 4 5: Safe by removing the second level, 3. 13 | 8 6 4 4 1: Safe by removing the third level, 4. 14 | 1 3 6 7 9: Safe without removing any level. 15 | Thanks to the Problem Dampener, 4 reports are actually safe! 16 | 17 | Update your analysis by handling situations where the Problem Dampener can remove a single level from unsafe reports. How many reports are now safe? 18 | -------------------------------------------------------------------------------- /4/gold.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | def main(): 4 | # Read the grid from stdin 5 | grid = [line.strip() for line in sys.stdin if line.strip()] 6 | if not grid: 7 | print(0) 8 | return 9 | 10 | # Convert the grid to a list of lists for easier indexing 11 | grid = [list(line) for line in grid] 12 | 13 | # Get the dimensions of the grid 14 | nrows = len(grid) 15 | ncols = len(grid[0]) 16 | 17 | word = 'XMAS' 18 | word_length = len(word) 19 | 20 | # Directions: N, NE, E, SE, S, SW, W, NW 21 | directions = [(-1, 0), (-1, 1), (0, 1), (1, 1), 22 | (1, 0), (1, -1), (0, -1), (-1, -1)] 23 | 24 | count = 0 25 | 26 | for i in range(nrows): 27 | for j in range(ncols): 28 | for dx, dy in directions: 29 | k = 0 30 | x, y = i, j 31 | while k < word_length: 32 | # Check boundaries 33 | if 0 <= x < nrows and 0 <= y < ncols: 34 | if grid[x][y] == word[k]: 35 | x += dx 36 | y += dy 37 | k += 1 38 | else: 39 | break 40 | else: 41 | break 42 | if k == word_length: 43 | count += 1 44 | 45 | print(count) 46 | 47 | if __name__ == "__main__": 48 | main() 49 | -------------------------------------------------------------------------------- /3/gold_puzzle.txt: -------------------------------------------------------------------------------- 1 | "Our computers are having issues, so I have no idea if we have any Chief Historians in stock! You're welcome to check the warehouse, though," says the mildly flustered shopkeeper at the North Pole Toboggan Rental Shop. The Historians head out to take a look. 2 | 3 | The shopkeeper turns to you. "Any chance you can see why our computers are having issues again?" 4 | 5 | The computer appears to be trying to run a program, but its memory (your puzzle input) is corrupted. All of the instructions have been jumbled up! 6 | 7 | It seems like the goal of the program is just to multiply some numbers. It does that with instructions like mul(X,Y), where X and Y are each 1-3 digit numbers. For instance, mul(44,46) multiplies 44 by 46 to get a result of 2024. Similarly, mul(123,4) would multiply 123 by 4. 8 | 9 | However, because the program's memory has been corrupted, there are also many invalid characters that should be ignored, even if they look like part of a mul instruction. Sequences like mul(4*, mul(6,9!, ?(12,34), or mul ( 2 , 4 ) do nothing. 10 | 11 | For example, consider the following section of corrupted memory: 12 | 13 | xmul(2,4)%&mul[3,7]!@^do_not_mul(5,5)+mul(32,64]then(mul(11,8)mul(8,5)) 14 | Only the four highlighted sections are real mul instructions. Adding up the result of each instruction produces 161 (2*4 + 5*5 + 11*8 + 8*5). 15 | 16 | Scan the corrupted memory for uncorrupted mul instructions. What do you get if you add up all of the results of the multiplications? 17 | -------------------------------------------------------------------------------- /4/gold_puzzle.txt: -------------------------------------------------------------------------------- 1 | "Our computers are having issues, so I have no idea if we have any Chief Historians in stock! You're welcome to check the warehouse, though," says the mildly flustered shopkeeper at the North Pole Toboggan Rental Shop. The Historians head out to take a look. 2 | 3 | The shopkeeper turns to you. "Any chance you can see why our computers are having issues again?" 4 | 5 | The computer appears to be trying to run a program, but its memory (your puzzle input) is corrupted. All of the instructions have been jumbled up! 6 | 7 | It seems like the goal of the program is just to multiply some numbers. It does that with instructions like mul(X,Y), where X and Y are each 1-3 digit numbers. For instance, mul(44,46) multiplies 44 by 46 to get a result of 2024. Similarly, mul(123,4) would multiply 123 by 4. 8 | 9 | However, because the program's memory has been corrupted, there are also many invalid characters that should be ignored, even if they look like part of a mul instruction. Sequences like mul(4*, mul(6,9!, ?(12,34), or mul ( 2 , 4 ) do nothing. 10 | 11 | For example, consider the following section of corrupted memory: 12 | 13 | xmul(2,4)%&mul[3,7]!@^do_not_mul(5,5)+mul(32,64]then(mul(11,8)mul(8,5)) 14 | Only the four highlighted sections are real mul instructions. Adding up the result of each instruction produces 161 (2*4 + 5*5 + 11*8 + 8*5). 15 | 16 | Scan the corrupted memory for uncorrupted mul instructions. What do you get if you add up all of the results of the multiplications? 17 | -------------------------------------------------------------------------------- /4/silver.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | def main(): 4 | # Read the grid from stdin 5 | grid = [line.strip() for line in sys.stdin if line.strip()] 6 | if not grid: 7 | print(0) 8 | return 9 | 10 | # Convert the grid to a list of lists for easier indexing 11 | grid = [list(line) for line in grid] 12 | 13 | # Get the dimensions of the grid 14 | nrows = len(grid) 15 | ncols = len(grid[0]) 16 | 17 | count = 0 18 | 19 | # Define acceptable sequences 20 | valid_sequences = {'MAS', 'SAM'} 21 | 22 | # Iterate over the grid, excluding the borders 23 | for i in range(1, nrows - 1): 24 | for j in range(1, ncols - 1): 25 | # Check if diagonals are within bounds 26 | if (0 <= i-1 < nrows and 0 <= i+1 < nrows and 27 | 0 <= j-1 < ncols and 0 <= j+1 < ncols): 28 | 29 | # Left diagonal positions 30 | l1 = grid[i-1][j-1] 31 | l2 = grid[i][j] 32 | l3 = grid[i+1][j+1] 33 | left_diag = l1 + l2 + l3 34 | 35 | # Right diagonal positions 36 | r1 = grid[i-1][j+1] 37 | r2 = grid[i][j] 38 | r3 = grid[i+1][j-1] 39 | right_diag = r1 + r2 + r3 40 | 41 | # Check if both diagonals form 'MAS' or 'SAM' 42 | if left_diag in valid_sequences and right_diag in valid_sequences: 43 | count += 1 44 | 45 | print(count) 46 | 47 | if __name__ == "__main__": 48 | main() 49 | -------------------------------------------------------------------------------- /1/silver_puzzle.txt: -------------------------------------------------------------------------------- 1 | Your analysis only confirmed what everyone feared: the two lists of location IDs are indeed very different. 2 | 3 | Or are they? 4 | 5 | The Historians can't agree on which group made the mistakes or how to read most of the Chief's handwriting, but in the commotion you notice an interesting detail: a lot of location IDs appear in both lists! Maybe the other numbers aren't location IDs at all but rather misinterpreted handwriting. 6 | 7 | This time, you'll need to figure out exactly how often each number from the left list appears in the right list. Calculate a total similarity score by adding up each number in the left list after multiplying it by the number of times that number appears in the right list. 8 | 9 | Here are the same example lists again: 10 | 11 | 3 4 12 | 4 3 13 | 2 5 14 | 1 3 15 | 3 9 16 | 3 3 17 | For these example lists, here is the process of finding the similarity score: 18 | 19 | The first number in the left list is 3. It appears in the right list three times, so the similarity score increases by 3 * 3 = 9. 20 | The second number in the left list is 4. It appears in the right list once, so the similarity score increases by 4 * 1 = 4. 21 | The third number in the left list is 2. It does not appear in the right list, so the similarity score does not increase (2 * 0 = 0). 22 | The fourth number, 1, also does not appear in the right list. 23 | The fifth number, 3, appears in the right list three times; the similarity score increases by 9. 24 | The last number, 3, appears in the right list three times; the similarity score again increases by 9. 25 | So, for these example lists, the similarity score at the end of this process is 31 (9 + 4 + 0 + 0 + 9 + 9). 26 | 27 | Once again consider your left and right lists. What is their similarity score? 28 | -------------------------------------------------------------------------------- /6/gold.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | # Read the map from stdin 4 | lines = [line.rstrip('\n') for line in sys.stdin] 5 | 6 | grid = [list(row) for row in lines] 7 | rows = len(grid) 8 | cols = len(grid[0]) if rows > 0 else 0 9 | 10 | # Directions in order: up, right, down, left 11 | directions = { 12 | '^': (-1, 0), 13 | '>': (0, 1), 14 | 'v': (1, 0), 15 | '<': (0, -1) 16 | } 17 | 18 | # We also need a way to turn right: 19 | # up -> right, right -> down, down -> left, left -> up 20 | turn_right = {'^': '>', '>': 'v', 'v': '<', '<': '^'} 21 | 22 | # Find the guard's starting position and direction 23 | start_r = start_c = None 24 | direction = None 25 | 26 | for r in range(rows): 27 | for c in range(cols): 28 | if grid[r][c] in directions: 29 | start_r, start_c = r, c 30 | direction = grid[r][c] 31 | # Replace the guard symbol with '.' since it's effectively empty space after we start 32 | grid[r][c] = '.' 33 | break 34 | if direction: 35 | break 36 | 37 | # Set for visited positions 38 | visited = set() 39 | visited.add((start_r, start_c)) 40 | 41 | r, c = start_r, start_c 42 | d = direction 43 | 44 | while True: 45 | # Check the cell in front of the guard 46 | dr, dc = directions[d] 47 | nr, nc = r + dr, c + dc 48 | 49 | # If the next position is outside the grid, stop 50 | if not (0 <= nr < rows and 0 <= nc < cols): 51 | break 52 | 53 | # If there is something (#) in front, turn right 54 | if grid[nr][nc] == '#': 55 | d = turn_right[d] 56 | # Don't move yet, just turn 57 | continue 58 | else: 59 | # Move forward 60 | r, c = nr, nc 61 | visited.add((r, c)) 62 | 63 | # Print the number of distinct visited positions 64 | print(len(visited)) 65 | -------------------------------------------------------------------------------- /2/gold_puzzle.txt: -------------------------------------------------------------------------------- 1 | Fortunately, the first location The Historians want to search isn't a long walk from the Chief Historian's office. 2 | 3 | While the Red-Nosed Reindeer nuclear fusion/fission plant appears to contain no sign of the Chief Historian, the engineers there run up to you as soon as they see you. Apparently, they still talk about the time Rudolph was saved through molecular synthesis from a single electron. 4 | 5 | They're quick to add that - since you're already here - they'd really appreciate your help analyzing some unusual data from the Red-Nosed reactor. You turn to check if The Historians are waiting for you, but they seem to have already divided into groups that are currently searching every corner of the facility. You offer to help with the unusual data. 6 | 7 | The unusual data (your puzzle input) consists of many reports, one report per line. Each report is a list of numbers called levels that are separated by spaces. For example: 8 | 9 | 7 6 4 2 1 10 | 1 2 7 8 9 11 | 9 7 6 2 1 12 | 1 3 2 4 5 13 | 8 6 4 4 1 14 | 1 3 6 7 9 15 | This example data contains six reports each containing five levels. 16 | 17 | The engineers are trying to figure out which reports are safe. The Red-Nosed reactor safety systems can only tolerate levels that are either gradually increasing or gradually decreasing. So, a report only counts as safe if both of the following are true: 18 | 19 | The levels are either all increasing or all decreasing. 20 | Any two adjacent levels differ by at least one and at most three. 21 | In the example above, the reports can be found safe or unsafe by checking those rules: 22 | 23 | 7 6 4 2 1: Safe because the levels are all decreasing by 1 or 2. 24 | 1 2 7 8 9: Unsafe because 2 7 is an increase of 5. 25 | 9 7 6 2 1: Unsafe because 6 2 is a decrease of 4. 26 | 1 3 2 4 5: Unsafe because 1 3 is increasing but 3 2 is decreasing. 27 | 8 6 4 4 1: Unsafe because 4 4 is neither an increase or a decrease. 28 | 1 3 6 7 9: Safe because the levels are all increasing by 1, 2, or 3. 29 | So, in this example, 2 reports are safe. 30 | 31 | Analyze the unusual data from the engineers. How many reports are safe? 32 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # O1 LLM Solutions for Advent of Code 2 | 3 | This repository demonstrates using OpenAI's O1 LLM capabilities (via ChatGPT) to solve Advent of Code challenges. For each solution, you can find: 4 | 5 | - The original prompt used 6 | - The public ChatGPT conversation 7 | - Number of prompt iterations required 8 | - Time taken to reach a solution 9 | 10 | ## Solution Stats 11 | 12 | | Day | Solved (Silver/Gold) | Iterations | Time Taken | One-Shot Success | Chat Link | 13 | |-----|---------------------|------------|------------|------------------|-----------| 14 | | 1 | ✅/✅ | 1 | 20s | ✅ | [Chat](https://chatgpt.com/share/674c9de5-1d4c-8005-8b67-2bb1029cb4b9) | 15 | | 2 | ✅/✅ | 1 | 30s | ✅ | [Chat](https://chatgpt.com/share/674d42f4-1424-8005-826b-453db70d2645) | 16 | | 3 | ✅/✅ | 1 | 60s | ✅ | [Chat](https://chatgpt.com/share/674ea076-a0f4-8005-944d-2653f0991c5c) | 17 | | 4 | ✅/✅ | 1 | 33s | ✅ | [Chat](https://chatgpt.com/share/67504736-fc5c-8005-a5b7-b4e8ddb0c854) | 18 | | 5 | ✅/✅ | 1 | 62s | ✅ | [Chat](https://chatgpt.com/share/67517d28-9acc-8005-b33c-abc378bc0177) | 19 | | 6 | ✅/✅ | 1 | 2s | ✅ | [Chat](https://chatgpt.com/share/6752973a-9bc0-8005-a40e-053888cbaf9f) | 20 | 21 | ## Approach 22 | 23 | Each puzzle solution includes: 24 | 1. Initial prompt to ChatGPT 25 | 2. Run code locally to validate the solution 26 | 3. Iterate 27 | 28 | The goal is to showcase both the potential and limitations of using LLMs for algorithmic problem solving. 29 | 30 | ## Running the Code 31 | 32 | ``` 33 | python3 1/gold.py < 1/input.txt 34 | python3 1/silver.py < 1/input.txt 35 | ``` 36 | 37 | ## Original Puzzles & Answers 38 | 39 | Each puzzle includes: 40 | - Original puzzle text 41 | - Example inputs 42 | - Correct answers for both parts 43 | 44 | This allows for: 45 | - Testing other LLMs against same problems 46 | - Validating solutions 47 | - Benchmarking different approaches 48 | -------------------------------------------------------------------------------- /6/silver.py: -------------------------------------------------------------------------------- 1 | import sys 2 | 3 | lines = [line.rstrip('\n') for line in sys.stdin] 4 | grid = [list(row) for row in lines] 5 | rows = len(grid) 6 | cols = len(grid[0]) if rows > 0 else 0 7 | 8 | # Directions and turning right logic 9 | directions = {'^': (-1, 0), '>': (0, 1), 'v': (1, 0), '<': (0, -1)} 10 | turn_right = {'^': '>', '>': 'v', 'v': '<', '<': '^'} 11 | 12 | # Find guard start 13 | start_r = start_c = None 14 | start_d = None 15 | for r in range(rows): 16 | for c in range(cols): 17 | if grid[r][c] in directions: 18 | start_r, start_c = r, c 19 | start_d = grid[r][c] 20 | grid[r][c] = '.' # Replace with empty space now that we have the direction 21 | break 22 | if start_d: 23 | break 24 | 25 | def simulate_with_obstruction(grid): 26 | """ 27 | Simulates the guard's movement on the given grid until the guard either: 28 | - Leaves the map (returns False for no loop) 29 | - Enters a repeated state (returns True for loop) 30 | 31 | The guard always starts from (start_r, start_c) facing start_d. 32 | """ 33 | r, c = start_r, start_c 34 | d = start_d 35 | 36 | visited_states = set() 37 | visited_states.add((r, c, d)) 38 | 39 | while True: 40 | dr, dc = directions[d] 41 | nr, nc = r + dr, c + dc 42 | 43 | # If next position is outside, no loop 44 | if not (0 <= nr < rows and 0 <= nc < cols): 45 | return False 46 | 47 | # If obstacle ahead, turn right 48 | if grid[nr][nc] == '#': 49 | d = turn_right[d] 50 | else: 51 | # Move forward 52 | r, c = nr, nc 53 | 54 | # If we have seen this state before, it's a loop 55 | if (r, c, d) in visited_states: 56 | return True 57 | visited_states.add((r, c, d)) 58 | 59 | def is_valid_obstruction(r, c): 60 | # Cannot place obstruction at the guard's start 61 | if (r, c) == (start_r, start_c): 62 | return False 63 | 64 | if grid[r][c] != '.': 65 | return False 66 | 67 | # Temporarily place obstruction 68 | grid[r][c] = '#' 69 | loop_formed = simulate_with_obstruction(grid) 70 | # Restore 71 | grid[r][c] = '.' 72 | 73 | return loop_formed 74 | 75 | count = 0 76 | for r in range(rows): 77 | for c in range(cols): 78 | if is_valid_obstruction(r, c): 79 | count += 1 80 | 81 | print(count) 82 | -------------------------------------------------------------------------------- /5/silver.py: -------------------------------------------------------------------------------- 1 | import sys 2 | from collections import defaultdict, deque 3 | 4 | def main(): 5 | lines = sys.stdin.read().splitlines() 6 | # Split input into ordering rules and updates 7 | idx = lines.index('') 8 | ordering_rules_lines = lines[:idx] 9 | updates_lines = lines[idx+1:] 10 | 11 | # Parse the ordering rules 12 | ordering_rules = [] 13 | for line in ordering_rules_lines: 14 | X, Y = map(int, line.strip().split('|')) 15 | ordering_rules.append((X, Y)) 16 | 17 | total = 0 18 | for update_line in updates_lines: 19 | update_pages = list(map(int, update_line.strip().split(','))) 20 | page_to_index = {page: idx for idx, page in enumerate(update_pages)} 21 | correct = True 22 | for X, Y in ordering_rules: 23 | if X in page_to_index and Y in page_to_index: 24 | if page_to_index[X] >= page_to_index[Y]: 25 | correct = False 26 | break 27 | if not correct: 28 | # Reorder the update using topological sort 29 | # Build the graph 30 | graph = defaultdict(list) 31 | in_degree = defaultdict(int) 32 | nodes_in_update = set(update_pages) 33 | for page in nodes_in_update: 34 | in_degree[page] = 0 # Initialize in-degree 35 | 36 | for X, Y in ordering_rules: 37 | if X in nodes_in_update and Y in nodes_in_update: 38 | graph[X].append(Y) 39 | in_degree[Y] += 1 40 | 41 | # Perform topological sort 42 | # Initialize the queue with nodes of in-degree zero 43 | queue = deque() 44 | page_order = [] 45 | # For determinism, use the order from the original update 46 | for page in update_pages: 47 | if in_degree[page] == 0: 48 | queue.append(page) 49 | 50 | while queue: 51 | page = queue.popleft() 52 | page_order.append(page) 53 | for neighbor in graph[page]: 54 | in_degree[neighbor] -= 1 55 | if in_degree[neighbor] == 0: 56 | queue.append(neighbor) 57 | 58 | if len(page_order) != len(nodes_in_update): 59 | print("Cycle detected, cannot perform topological sort.") 60 | continue # Skip this update 61 | 62 | # Extract the middle page number 63 | middle_page = page_order[len(page_order)//2] 64 | total += middle_page 65 | 66 | print(total) 67 | 68 | if __name__ == "__main__": 69 | main() 70 | -------------------------------------------------------------------------------- /6/gold_puzzle.txt: -------------------------------------------------------------------------------- 1 | The Historians use their fancy device again, this time to whisk you all away to the North Pole prototype suit manufacturing lab... in the year 1518! It turns out that having direct access to history is very convenient for a group of historians. 2 | 3 | You still have to be careful of time paradoxes, and so it will be important to avoid anyone from 1518 while The Historians search for the Chief. Unfortunately, a single guard is patrolling this part of the lab. 4 | 5 | Maybe you can work out where the guard will go ahead of time so that The Historians can search safely? 6 | 7 | You start by making a map (your puzzle input) of the situation. For example: 8 | 9 | ....#..... 10 | .........# 11 | .......... 12 | ..#....... 13 | .......#.. 14 | .......... 15 | .#..^..... 16 | ........#. 17 | #......... 18 | ......#... 19 | The map shows the current position of the guard with ^ (to indicate the guard is currently facing up from the perspective of the map). Any obstructions - crates, desks, alchemical reactors, etc. - are shown as #. 20 | 21 | Lab guards in 1518 follow a very strict patrol protocol which involves repeatedly following these steps: 22 | 23 | If there is something directly in front of you, turn right 90 degrees. 24 | Otherwise, take a step forward. 25 | Following the above protocol, the guard moves up several times until she reaches an obstacle (in this case, a pile of failed suit prototypes): 26 | 27 | ....#..... 28 | ....^....# 29 | .......... 30 | ..#....... 31 | .......#.. 32 | .......... 33 | .#........ 34 | ........#. 35 | #......... 36 | ......#... 37 | Because there is now an obstacle in front of the guard, she turns right before continuing straight in her new facing direction: 38 | 39 | ....#..... 40 | ........># 41 | .......... 42 | ..#....... 43 | .......#.. 44 | .......... 45 | .#........ 46 | ........#. 47 | #......... 48 | ......#... 49 | Reaching another obstacle (a spool of several very long polymers), she turns right again and continues downward: 50 | 51 | ....#..... 52 | .........# 53 | .......... 54 | ..#....... 55 | .......#.. 56 | .......... 57 | .#......v. 58 | ........#. 59 | #......... 60 | ......#... 61 | This process continues for a while, but the guard eventually leaves the mapped area (after walking past a tank of universal solvent): 62 | 63 | ....#..... 64 | .........# 65 | .......... 66 | ..#....... 67 | .......#.. 68 | .......... 69 | .#........ 70 | ........#. 71 | #......... 72 | ......#v.. 73 | By predicting the guard's route, you can determine which specific positions in the lab will be in the patrol path. Including the guard's starting position, the positions visited by the guard before leaving the area are marked with an X: 74 | 75 | ....#..... 76 | ....XXXXX# 77 | ....X...X. 78 | ..#.X...X. 79 | ..XXXXX#X. 80 | ..X.X.X.X. 81 | .#XXXXXXX. 82 | .XXXXXXX#. 83 | #XXXXXXX.. 84 | ......#X.. 85 | In this example, the guard will visit 41 distinct positions on your map. 86 | 87 | Predict the path of the guard. How many distinct positions will the guard visit before leaving the mapped area? 88 | -------------------------------------------------------------------------------- /6/silver_puzzle.txt: -------------------------------------------------------------------------------- 1 | While The Historians begin working around the guard's patrol route, you borrow their fancy device and step outside the lab. From the safety of a supply closet, you time travel through the last few months and record the nightly status of the lab's guard post on the walls of the closet. 2 | 3 | Returning after what seems like only a few seconds to The Historians, they explain that the guard's patrol area is simply too large for them to safely search the lab without getting caught. 4 | 5 | Fortunately, they are pretty sure that adding a single new obstruction won't cause a time paradox. They'd like to place the new obstruction in such a way that the guard will get stuck in a loop, making the rest of the lab safe to search. 6 | 7 | To have the lowest chance of creating a time paradox, The Historians would like to know all of the possible positions for such an obstruction. The new obstruction can't be placed at the guard's starting position - the guard is there right now and would notice. 8 | 9 | In the above example, there are only 6 different positions where a new obstruction would cause the guard to get stuck in a loop. The diagrams of these six situations use O to mark the new obstruction, | to show a position where the guard moves up/down, - to show a position where the guard moves left/right, and + to show a position where the guard moves both up/down and left/right. 10 | 11 | Option one, put a printing press next to the guard's starting position: 12 | 13 | ....#..... 14 | ....+---+# 15 | ....|...|. 16 | ..#.|...|. 17 | ....|..#|. 18 | ....|...|. 19 | .#.O^---+. 20 | ........#. 21 | #......... 22 | ......#... 23 | Option two, put a stack of failed suit prototypes in the bottom right quadrant of the mapped area: 24 | 25 | ....#..... 26 | ....+---+# 27 | ....|...|. 28 | ..#.|...|. 29 | ..+-+-+#|. 30 | ..|.|.|.|. 31 | .#+-^-+-+. 32 | ......O.#. 33 | #......... 34 | ......#... 35 | Option three, put a crate of chimney-squeeze prototype fabric next to the standing desk in the bottom right quadrant: 36 | 37 | ....#..... 38 | ....+---+# 39 | ....|...|. 40 | ..#.|...|. 41 | ..+-+-+#|. 42 | ..|.|.|.|. 43 | .#+-^-+-+. 44 | .+----+O#. 45 | #+----+... 46 | ......#... 47 | Option four, put an alchemical retroencabulator near the bottom left corner: 48 | 49 | ....#..... 50 | ....+---+# 51 | ....|...|. 52 | ..#.|...|. 53 | ..+-+-+#|. 54 | ..|.|.|.|. 55 | .#+-^-+-+. 56 | ..|...|.#. 57 | #O+---+... 58 | ......#... 59 | Option five, put the alchemical retroencabulator a bit to the right instead: 60 | 61 | ....#..... 62 | ....+---+# 63 | ....|...|. 64 | ..#.|...|. 65 | ..+-+-+#|. 66 | ..|.|.|.|. 67 | .#+-^-+-+. 68 | ....|.|.#. 69 | #..O+-+... 70 | ......#... 71 | Option six, put a tank of sovereign glue right next to the tank of universal solvent: 72 | 73 | ....#..... 74 | ....+---+# 75 | ....|...|. 76 | ..#.|...|. 77 | ..+-+-+#|. 78 | ..|.|.|.|. 79 | .#+-^-+-+. 80 | .+----++#. 81 | #+----++.. 82 | ......#O.. 83 | It doesn't really matter what you choose to use as an obstacle so long as you and The Historians can put it into position without the guard noticing. The important thing is having enough options that you can find one that minimizes time paradoxes, and in this example, there are 6 different positions you could choose. 84 | 85 | You need to get the guard stuck in a loop by adding a single new obstruction. How many different positions could you choose for this obstruction? 86 | -------------------------------------------------------------------------------- /1/gold_puzzle.txt: -------------------------------------------------------------------------------- 1 | The Chief Historian is always present for the big Christmas sleigh launch, but nobody has seen him in months! Last anyone heard, he was visiting locations that are historically significant to the North Pole; a group of Senior Historians has asked you to accompany them as they check the places they think he was most likely to visit. 2 | 3 | As each location is checked, they will mark it on their list with a star. They figure the Chief Historian must be in one of the first fifty places they'll look, so in order to save Christmas, you need to help them get fifty stars on their list before Santa takes off on December 25th. 4 | 5 | Collect stars by solving puzzles. Two puzzles will be made available on each day in the Advent calendar; the second puzzle is unlocked when you complete the first. Each puzzle grants one star. Good luck! 6 | 7 | You haven't even left yet and the group of Elvish Senior Historians has already hit a problem: their list of locations to check is currently empty. Eventually, someone decides that the best place to check first would be the Chief Historian's office. 8 | 9 | Upon pouring into the office, everyone confirms that the Chief Historian is indeed nowhere to be found. Instead, the Elves discover an assortment of notes and lists of historically significant locations! This seems to be the planning the Chief Historian was doing before he left. Perhaps these notes can be used to determine which locations to search? 10 | 11 | Throughout the Chief's office, the historically significant locations are listed not by name but by a unique number called the location ID. To make sure they don't miss anything, The Historians split into two groups, each searching the office and trying to create their own complete list of location IDs. 12 | 13 | There's just one problem: by holding the two lists up side by side (your puzzle input), it quickly becomes clear that the lists aren't very similar. Maybe you can help The Historians reconcile their lists? 14 | 15 | For example: 16 | 17 | 3 4 18 | 4 3 19 | 2 5 20 | 1 3 21 | 3 9 22 | 3 3 23 | Maybe the lists are only off by a small amount! To find out, pair up the numbers and measure how far apart they are. Pair up the smallest number in the left list with the smallest number in the right list, then the second-smallest left number with the second-smallest right number, and so on. 24 | 25 | Within each pair, figure out how far apart the two numbers are; you'll need to add up all of those distances. For example, if you pair up a 3 from the left list with a 7 from the right list, the distance apart is 4; if you pair up a 9 with a 3, the distance apart is 6. 26 | 27 | In the example list above, the pairs and distances would be as follows: 28 | 29 | The smallest number in the left list is 1, and the smallest number in the right list is 3. The distance between them is 2. 30 | The second-smallest number in the left list is 2, and the second-smallest number in the right list is another 3. The distance between them is 1. 31 | The third-smallest number in both lists is 3, so the distance between them is 0. 32 | The next numbers to pair up are 3 and 4, a distance of 1. 33 | The fifth-smallest numbers in each list are 3 and 5, a distance of 2. 34 | Finally, the largest number in the left list is 4, while the largest number in the right list is 9; these are a distance 5 apart. 35 | To find the total distance between the left list and the right list, add up the distances between all of the pairs you found. In the example above, this is 2 + 1 + 0 + 1 + 2 + 5, a total distance of 11! 36 | 37 | Your actual left and right lists contain many location IDs. What is the total distance between your lists? 38 | -------------------------------------------------------------------------------- /5/gold_puzzle.txt: -------------------------------------------------------------------------------- 1 | Satisfied with their search on Ceres, the squadron of scholars suggests subsequently scanning the stationery stacks of sub-basement 17. 2 | 3 | The North Pole printing department is busier than ever this close to Christmas, and while The Historians continue their search of this historically significant facility, an Elf operating a very familiar printer beckons you over. 4 | 5 | The Elf must recognize you, because they waste no time explaining that the new sleigh launch safety manual updates won't print correctly. Failure to update the safety manuals would be dire indeed, so you offer your services. 6 | 7 | Safety protocols clearly indicate that new pages for the safety manuals must be printed in a very specific order. The notation X|Y means that if both page number X and page number Y are to be produced as part of an update, page number X must be printed at some point before page number Y. 8 | 9 | The Elf has for you both the page ordering rules and the pages to produce in each update (your puzzle input), but can't figure out whether each update has the pages in the right order. 10 | 11 | For example: 12 | 13 | 47|53 14 | 97|13 15 | 97|61 16 | 97|47 17 | 75|29 18 | 61|13 19 | 75|53 20 | 29|13 21 | 97|29 22 | 53|29 23 | 61|53 24 | 97|53 25 | 61|29 26 | 47|13 27 | 75|47 28 | 97|75 29 | 47|61 30 | 75|61 31 | 47|29 32 | 75|13 33 | 53|13 34 | 35 | 75,47,61,53,29 36 | 97,61,53,29,13 37 | 75,29,13 38 | 75,97,47,61,53 39 | 61,13,29 40 | 97,13,75,29,47 41 | The first section specifies the page ordering rules, one per line. The first rule, 47|53, means that if an update includes both page number 47 and page number 53, then page number 47 must be printed at some point before page number 53. (47 doesn't necessarily need to be immediately before 53; other pages are allowed to be between them.) 42 | 43 | The second section specifies the page numbers of each update. Because most safety manuals are different, the pages needed in the updates are different too. The first update, 75,47,61,53,29, means that the update consists of page numbers 75, 47, 61, 53, and 29. 44 | 45 | To get the printers going as soon as possible, start by identifying which updates are already in the right order. 46 | 47 | In the above example, the first update (75,47,61,53,29) is in the right order: 48 | 49 | 75 is correctly first because there are rules that put each other page after it: 75|47, 75|61, 75|53, and 75|29. 50 | 47 is correctly second because 75 must be before it (75|47) and every other page must be after it according to 47|61, 47|53, and 47|29. 51 | 61 is correctly in the middle because 75 and 47 are before it (75|61 and 47|61) and 53 and 29 are after it (61|53 and 61|29). 52 | 53 is correctly fourth because it is before page number 29 (53|29). 53 | 29 is the only page left and so is correctly last. 54 | Because the first update does not include some page numbers, the ordering rules involving those missing page numbers are ignored. 55 | 56 | The second and third updates are also in the correct order according to the rules. Like the first update, they also do not include every page number, and so only some of the ordering rules apply - within each update, the ordering rules that involve missing page numbers are not used. 57 | 58 | The fourth update, 75,97,47,61,53, is not in the correct order: it would print 75 before 97, which violates the rule 97|75. 59 | 60 | The fifth update, 61,13,29, is also not in the correct order, since it breaks the rule 29|13. 61 | 62 | The last update, 97,13,75,29,47, is not in the correct order due to breaking several rules. 63 | 64 | For some reason, the Elves also need to know the middle page number of each update being printed. Because you are currently only printing the correctly-ordered updates, you will need to find the middle page number of each correctly-ordered update. In the above example, the correctly-ordered updates are: 65 | 66 | 75,47,61,53,29 67 | 97,61,53,29,13 68 | 75,29,13 69 | These have middle page numbers of 61, 53, and 29 respectively. Adding these page numbers together gives 143. 70 | 71 | Of course, you'll need to be careful: the actual list of page ordering rules is bigger and more complicated than the above example. 72 | 73 | Determine which updates are already in the correct order. What do you get if you add up the middle page number from those correctly-ordered updates? 74 | -------------------------------------------------------------------------------- /6/input.txt: -------------------------------------------------------------------------------- 1 | ....#.......#.............#..##...................#..#..#..................................#....#................................. 2 | ................................#..#.............##.....#....#....................#.............................................#. 3 | .#....#.........................................................................................#.#............................... 4 | .......#.......#..................#........#..................................#...............#...........#....................... 5 | ..#......................#.....#...........#..........................................................................#........... 6 | .#.............#.............#....#...............#..#................................................#..........#................ 7 | .#............................................#........#........................................#...............................#. 8 | ...............#...........#....#............................................#.......#...................................#........ 9 | .#.........................#................#.........#..##.....#........................................#........................ 10 | .........#...#......#..................#...........................................................#...#..............#........... 11 | ..................#..#....................#...................#.....................#......#....#...........#..#.........#........ 12 | .........................................................................................#..........#............................. 13 | ...........#...........#.....#..................#....................#............................................................ 14 | ........#...........................................#............#...........................#.........................#.......... 15 | ....##....##..............................#.................................................................#....#....#.......#... 16 | ..#............#.........##....................................................#.....................#.....................#...... 17 | ......#.......#.##.......##...........................................#........#................#................................. 18 | ..#...#.........................................#....................#.....#........#....#......#......#................#......... 19 | .#...................##............................................................#....................#.......................#. 20 | ......#....#.....#............#............#.................................................#..#.......#..........#.............. 21 | ...............#....#.........#.............................................................................................#..... 22 | ...........#..........................#..............................................#.........#...............#..#..............# 23 | ...........#...#.................#........................................#...................#....#.............................. 24 | ........#................................#...........................................................#.......#.................... 25 | ...........#....................#.....#.........................................................#..............#....#...#......... 26 | ..........#........................................................#..............#..............................#................ 27 | ..............................##...........................................#.....................................................# 28 | ...#..#........................................................................................................#........#.....##.. 29 | .......#........#........#.#.....................#................................................#.......................#...#... 30 | ...............#.......................................................................#.........#......#.#.##.................... 31 | ......#..................#.....#..................#..#..................#.................#..#.....#...................#....#..... 32 | .....#........#.............#....#...............................#.................#.............................................. 33 | ....................................................#.......#......................................#....#......................... 34 | ...#.............#...............#.............#......#.#..............#......#.............#..................................... 35 | ..............#..................#............................................#..#.........................#...................... 36 | .............#............#........#........................................#..................................................... 37 | ...#.........#.............#.........#............#..........................................#................#...#............... 38 | ...........#.................#...................................................................#................................ 39 | ...#..............................................................................................................#............... 40 | ..........#...............#...#......#...............##..............................................#....#...................#... 41 | .........................................#...................................................#..#.....................#........... 42 | ......#..#.........#....................................#....................#..........#......#.................................. 43 | ........#.........................................#................#.#.......#.......................#............#..............# 44 | ..........................#...............#....................#.............................#..............#..................... 45 | ..........................#...........#............................................#....#...#..................................... 46 | ...........#........#..........#..............................................................#...##......#.......#......#........ 47 | ....#..........#...#...................##..........#.........................................#....#............................... 48 | ...............................................................#................................................#..........#...... 49 | ................................................................................................................#.....#........... 50 | ...#.....................#......................................................................#....................#............ 51 | ......................##...........#.......#.......#.......................................#...................................... 52 | ......#......#........#....................................................................................#...................... 53 | .......#......................#.........................................................#.......#................................. 54 | ...............#..........#...#.#..........#.....#..............##.......#.....#....................................#............. 55 | .......##....................................................................................#.#...#..........................#... 56 | ......#.............#.#.........................#....#......#......#...............#.........#..#................................. 57 | .........................#........#.........................#....#..................#.................#............#......#.#..... 58 | ............#............#......................#.#................##........#.................................................... 59 | ......#..............................#...........#.......#........#.................#............................................. 60 | ............................................#.....................................................#.................#...#......... 61 | .................#.......................................#..................##...#..............................#......#.......#.. 62 | .#..#................#.#......................................#..........#..........#...........................#.......#......... 63 | .........................................................................#.....##.............................#.............#..... 64 | .#.......................#.....................#....##....#........................................#.............................. 65 | ......#...........................................##..........#......#.........................#..#..........#....#...#........... 66 | ........#.#....................................................................................#.................................. 67 | ..........#..............................#.....#......#.........#............................#........................#........... 68 | ....................#................................................................#...............................#........#... 69 | ....................................#.......#...................................##.........................#...................... 70 | .....................#.....................................#.........#..........................#................................. 71 | .......#.................................#.....................#........................................#....................#.... 72 | ......................................................................#.....#........................#.......................#.... 73 | ..#............................#..................#...#.........#..........#..#.........................................#.#....... 74 | ....#............................................................................#.............................#..#.....#......... 75 | ......#..................................#.............................................................................#.........# 76 | ....#......................................................................#................#.....#...........................#... 77 | .............#.........................#.#....................#........................#......................................#... 78 | ....#......................................................................#...#..................#..........#....#............... 79 | .......#....#.#..#..#....#........#.....................................................#..................#..#................... 80 | #..............#....................................#.......................................#.....................#...........#... 81 | #.........#....#..#.........#.................#..................#.#..............................##......................#....... 82 | ................#.........#......................................................................................................# 83 | ...............................#.........#.................................................................#.....#.#.............. 84 | ..........#................#.............................#.............#.......#..........................................#....... 85 | .....#.........#........#..............#.......................................#.........^........................................ 86 | ........................#................#........#.......................................#............................#...#...... 87 | ......#.....#.......#.................................................#...............#.....#..................................... 88 | ..................................................#......#.....................................#....#....#.##....................# 89 | .........................................................................#...#..............#...............#..................... 90 | ..........#.................#...................#.........................................................................#....#.. 91 | ...........#.....................#.....#.......................................#....................#............#........#....... 92 | ......................#...........#........................................................................................#...... 93 | ..........#.......#.................................................................................#.......#..................... 94 | ........#.....................................#..................................................##............................... 95 | .......#................................#.........#..#..................................................................#......... 96 | ...........#...................##.............#...............................#..........#....................#.....#...#......... 97 | ....................................##..#..........................................#.............................................. 98 | ...............#..#............#..............................#.#.#........#......#............................................... 99 | ..#..................................#....#....................................................................................... 100 | ........................#.................##.........#......................#........................#.#.#........................ 101 | .......................................#.##....................................................................#.................. 102 | ..................................##............#..............................................................................#.. 103 | ..#.................................................#.....................................................................#....... 104 | ................#..#..#...#.........#...#.................................................................#.....................## 105 | .....#......................#...........#.............#........................................................................... 106 | ........#.....................#..............................................#................#..............................#.... 107 | ........#.............#.........................#.............................................#................#..........#......# 108 | #........#...................................#....#......#...............................#........................................ 109 | ...........#........#..................................................#.............#..........................#.............#... 110 | ....................#..#.#.................................................#.#...........#................................#.#..... 111 | .......................#...................................................#....................................................#. 112 | ......#......................................#..........##.......................#...........#.........#.......................... 113 | .......#..................#..................#......................#............................#.............#...#.............. 114 | .....................................................................................#........#................#.........#........ 115 | ............................#..............................................................#.....#........#......#................ 116 | ..#..........................#.........#.................#...........#...#....#........................#.......#.............#.... 117 | .#.....#.....#.....................#........#...............#............#.##........#..................................#......... 118 | ............#.#..................................#..#.........#.................#............................#........#.....#..... 119 | ............#.........................#..................................#........................................................ 120 | ....................#................#...........#..........................................................................#..... 121 | ....................#.....................................................#.........#......#...........#...#.#..................#. 122 | ........#..........#.......................................#...............#....#............#.....................#.............. 123 | .......#...#......#...................#.......#..........................#.........................#...................#.......... 124 | .#............#....###...............###................................#.............................#........................... 125 | .............................#.......#..............................#.#.........................................#..#.............. 126 | ...............#.........#...................#...................................#..#..................#.......................... 127 | ........#.......#..#..................#........................................................................#...............#.. 128 | .#.............#.....................#........#..........................#.........#..........................#...........#....... 129 | .....#.............#.....#..........#.....#.............#............#.............................#..........................#... 130 | ...................#.......................#......#.#..............#..###.....#......................#...........#.......#.#...... 131 | -------------------------------------------------------------------------------- /3/input.txt: -------------------------------------------------------------------------------- 1 | ]@;why()]&where()@select()mul(589,854)${ <-}$how()^#mul(517,928)^(%@#who()@'mul(82,659):don't()mul(670,226)when(626,911)from()&%{%where())-mul(244,869)<]mul(582,125)why()>why())+mul(96,44)mul(179,145):*~^what()~what()who(595,39)+mul(174,903)%?<]&~mul(13,307)how(98,997)}who()select()?^{:mul(858,7)]from()why()how()mul(681,532)from()when()from(){select()>[{(}mul(908,908) $,mul(221,664)!:)~mul(327,84)how()-&~+ ]mul(865,773);*who()%,/%where()+mul(543,871)!(){]from()mul(257,93)(?(]mul(659,259)}~-#)]/what()why()mul(647,723)what()(why()who()who()select()$(where()mul(189,838)who()&mul(231,195):?[+#/ what()mul(892,824)(:mul(467,622)how()mul(245,161)(} ~mul(5,520),mul(116,331)what()mul(227,866)$#mul(4,224)#;{~mul(543,410):#[/what(272,644)what()>:+why()mul(869,342)} mul(990,443)(mul(575,968)>who()'~;where()-^mul(496,181){why()/}do()mul(334,968)mul(390,266)what(),don't()@<-who(302,636)mul(780,340)-?who()]mul(256,735)who()mul(230,265)- why(),[/select()>-mul(822,763)who()how()<*-@mul(914,719)where()from(),mul(515,606)when()#~)how()mul(412,4)where())>@[mul(264,473)when()#mul(164,221)when()<when()why()from()'#mul(122,483)mul(866,284))^why()$!mul(620,149)mul(620,850)select(){#@[why()+#!mul(999,114)!mul(151,527)who();>+:)+what()where()(mul(34,202):*,!where()]#!mul(668,743);/<{when()}when()%mul(768,640)*)<{mul(920,573)??:mul(438,188)^&mul(126,506)}mul&mul(733,119) 2 | *#!*& ,[mul(23,230):& who(794,799)]mul(501,249)),^(&%:;%mul(383,5~when()how()!where()mul(284,350)select()]#+*do()select()select()&(~!who()mul(450,794)where()}$<~do()-'when()$,who()where()(&[mul(216,443);mul(973,192)who(){)+?:$from()mul(711,798)mul(103,581)-*/',mul(634,298):~from()*'what()mul(908,815)who()@!what(),&[when()#from(566,230)don't()[)@:('when(135,517)@[~mul(168,993)&{mul(766,123)mul(617,944)what()how(612,771)>mul(36,224#{):*#mul(188,512)mul(761,172)-]<#who()}{;mul(546,680)do()from())-mul(45,151)from()~,<%$where()(why(994,767)~mul(61,14)@?mul(52]why()!{}mul(993,666)*when()from():mul(383,122)<>where()$*^,where()%!do()where()when()&who()>),&mul(752,434),$*mul(4,982)how()*<+?why()[when()#@-:who()mul(608,612)do()~from()*{{&what()mul(449,733)>}(how()%(mul(124,264)from()?+,~!mul(349,575)?*why()-:mul(219,424)'where()+{mul(896,353)$~mul(170,156),-~(mul(336,127)~;%mul(952,324)@&what(593,379)[~from()+(mul(663,926)&*who():mul(926,664)mul(730,590)++) /%@+^mul(376>select()}]~{why()mul(816,831)@?~*mul(827,787)}~,{how()]mul(36,953)< ~[&)mul(710(who()when()[-mul(238,172)from()how()}&[(mul(116,962),]mul(32,211)*;mul(52,576);,&%/!why()$mulselect(387,81)^from()?where()]]from()mul(751,197)~ ]}where()*mul(394,798)?mul(470,152)why()>;from():;mul(37,777)@%who()$ -)why()how()mul(683,322)]/?:&(from()(<-mul(528,165)-mul(853,835)mul(51,666);]]}@~where()mul(277,561)what()-)who(531,214) (select(464,268)[mul(462,883)when()/#&;*(how()mul(971,528)+{* who()]from()!:mul(987,908)from()'^ +~who()'# mul(309,850)@([:-mul(954,596)}%,where():mul(299,674)~how(369,907)@*from()mul(288,319)%from()/#/-mul(379,967)]when())~>(select(),&+mul(375,757)>!?~[ don't():mul(850,510))[#}how()mul(339,21){[select()@what()#(*mul(850,794)where()}where()mul(732;mul(949,117)<-why()@ mul(164,964)why()where()do()>; what()(why()mul(301,339)-from()+mul(772,733)%<-*mul(676,652)>-$what()$,:#mul(241,262)mul(779,695)who()where()@~^mul(953,533)'?}-mul(574,8){}>!/'{mul(120,422)from():[who()'mul(134,206){mul<@;why()who()what(174,369)?)+don't(){%-mul(309,356)how():how()% mul(68,976)%'who(848,62)-select()<<;]?don't()how()who()^:mul(721,500)!%(@[^$]%>don't()/;}~<%<]~from()mul(124,237)when()why()?mul(667,691)(select()why(801,843)from())where()]);mul(934,249))(#[[(!@where()mul(719,833)why()%{,%why()-{@what()mul(143,782)?mul(236,29):when(705,76);%where()who()mul(35,222)}how();[ +^mul(841,155);mul(6%{mul(112,401)-:when()/ !-@'mul(737,347))%+mul(544,414))>&mul(637,69)'*{:'-how(),mul(335,890)~>?select()when()mul(404,466)@^{~?&$(^$mul(272,686)};*%who()mul(17,310)~?+//{who()what()[ mul(828,379)~from():mul(962,479)*-]when(){/~'select():mul(537,147)mul(273,8)]how()when(606,831)-from()mul(113,55)select()]](-mul(335,418))$how()what(),select()]where()mul(208,124)[*:*<*~!mul(857,835)(^+from()select()[mul(324,847)(mul(27,487)/where()?>$$#select()%!mul(998,728)&:;mul(185,675)$how()%>(mul(750,550)?!#^!#do()select()#select()from()why()mul(231,706)why()>[< :where()mul(210,674)?!mul(455,525from()who(225,80)[!mul(69,976)/mul(498,162)!%*mul(930,795)who()from() *mul(467,174)$mul(711,259/>;select()$*from()where()]mul(788,339)*from()'*)}from()mul(714,649)%!>mul(894,470)-$?from()/mul(794,135):))}*mul(165,454):*,;&(mul(527,765)when(430,743)!select()}-'{{?mul(734,592)&+^who()mul(541,139)?(@mul(310,602)who(915,791)#why()mul(372,17)where()&^{what(802,670)/{/?from()mul(87,377);mul(859,482)mul(682,385)do()mul(760,768)&}&$mul(56,548>-'^select()from(): ]mul(591,699))when()where()$~{;~-mul(789,792)mul(816,432)>select()!+{?'why()mul(119,972)who()'what()~mul(197,605)&+mul(363,327)where()from())mul(833,826)[from(223,745)?why()when()what()select(528,707)?$don't()mul(208,697)select(),~,};}&-mul(766,143)why()}/mul(184,251)where()'}from(355,411)!mul(32,532)mul(256,569)mul(505,421)^mul(170,571),select()select()]@!how()select()select()mul/<~'[do() /who()]from()((select()^mul(792/why(),< ((how()mul(151,968)when(576,645))how()how(748,886)from()what()where()mul(353~mul(294,14)when()%@(&how()+[who()&&where()}+mul(107,18) 4 | when()+[[$,/mul(214,168))where()#:~{[?what()mul(247,154)!<-!mul(157,305)+#when():[*,!mul(908,273)who()who(328,847)'~#don't() *why()when()~mul(43,270):mul(846,863)from())*/mul(460,803)<-[-when()@mul(429,235)%}-']~>select();mul(699,447) } why()what()mul(207,60)>% mul(975,236)*>',who()^]where()how()mul(448,703)#mul(210,872)how()!+what(),mul(981,127)what()[why(),how()?{where(982,584)from()@,mul(356,291)(mul(383,710)%()^how()::{what()/mul(33,273)how(),)*why()what()%]when()mul(324,71)where()+-%^what()-mul(333,808)mul(567,862),#)#[:[do()+,^~why()>({mul(919,726)what()select(),-%,how()%mul(176+$ {~mul(367,970)where()#mul(979,781)*{-+$^[ where()do():})who()why()[mul(735,790)!}*-)&where()mul(127,446)//]~&who(464,5)!:];mul(637,648)$},why() (~+mul(334,39);;@-*from(919,410)when()mul(234,40)mul(484,981)-select():] ! +why()@*&$mul(484,129*@select();:%-@${(mul(118,602),{}select(),who()mul(309,820)when(){/(what()$mul(752,138),why()+what();~<]mul(27,797)[{;what()&!?mul(790,119)what()what()where()#<+:^]mul(114,600)#where()+what()&^^when()don't()+@mul(26,835):$who(670,428))mul(128,236)#&?[-mul(963,974)~what(),where()~~mul(511,248)^]mul(727,492)/)#---how()how()mul(137,681)*](mul(112,337)how()why()/from()mul(602,710)mul(649,464)when()when()>< from()where()mul(729,307)/;!what():mul(373,940)($#}(^/select()mul(155,225)^[@'<$mul(578,989)when())when()who()where(728,446)*-,mul(505,564)when(856,695)]mul(609,465)where()$?,*from()who()mul(763,718)~,do()-from()+mul(700,342)from()'};^mul(9,577){#where() {^how()what()don't()[[^[:~,mul(563,892)mul(945,545#when()}why()<@[ mul(6,257):!@@^:^+^~mul(772,130)how()do()!who()+<)]%!why()mul(384,171)select()$why()[select()%why(793,440)when()$how()mul(364,920)how()^select()mul(826,816)[%]@}mul(891,416)^]what()%%({]mul(569,947)how()from()from()#{>mul(796,659),where()]^mul(235,994)${mul(315,694)how()))mul(253,674)$who(),>$~mul(41,530)(*(~?mul(616,99)who()@where():where()&;+why()]mul(658,220)^when()?mul(754,366)from():<~!$mul(898,950)who()@&mul(94,544)!/]who()/!?(mul(751,464)'from() mul(59,58)who()@]~)what()mul(694,790{?what()+ @'&mul(835,235)when()-mul(297,423)>@*mul(20,635)*!mul(889,955)( )from()[mul(586,592),)({mul;mul(275,534)'why()mul(286,601);who()}&'mul(524,526)mul(716,437);when()?*/mul+mul(341,491)/[mul(271??-select(640,365)where()mul(856,857):why()[&&mul(155,676)'])-mul(285,962)%(,/who()&where()why()mul(237,335)from()select(39,590)]&)mul(196,617)/}~when()mul(773,534)&<){!mul(840,240)mul(259,240)how();!?mul(404,805)mul(963,770)-why()from(776,365)^mul(631,33){{&>mul(840,149)!++'#'#;?mul(501select()who()$why()~>$mul(986,499)~]*(select(590,180);?what();do()))mul(518,563) 5 | ,&(select()/#@mul(142,176)<+from()select()mul(675,444)*$'select()%what()#]mul(260,681)*(>how()#+*mul(800,885)-where()&?@[*when()from();do()(&from():#mul(626,59)@$%#who()mul(918,45)+[(!! how()mul(636,583)(&)who():!%-%mul(713,392)when()$%mul(445,40)&~%#-'%mulwhat()@>@mul(556,475)why()where()$~(from();mul(111,289))&+who()&select()@mul(603,119),{!;how()],*<'mul(258,922)@ [^(?%mul(923,465)where()from();what()}^select() #mul(269,177)+select():don't()^!&/mul(351,938)]',^/why()mul(198,845)who()from()do()$when()what()-who()%] ,mul(856,405)why()mul(858,985)^*what(); mul(935,994)from()#)'select()#mul(118,794)%(where()select()%>mul(502,362)who())mul(410,257);@(@-,mul(850,203),from()when(297,956)<@%{how()mul(336,134)'+ ]how(950,425)when()}mul(635,646)[)} why()~mul(784,93)mul(268,459){)~select();;mul(237,251)what();mul(408,339)+from()'why()@%mul(708,708)mul/mul(408,187)-where()-??$~$ ;mul(474,656)what()[:do()~~-!mul(680,402)/select()?((how()how()+mul(554,8)#mul(650,749)mul(78,63)&*why()+[{who()#{-mul(969,124);}>from()mul(111,152)+why()from()mul(979,902)&';/from()[mul(269,698)(-/where()*how()}mul(558,314)@select()mul(767,511)!)@$%?'>when()mul(548,448)>#{where()@(-[*when()mul(865,189)]where())*@mul(298,707)>+))-<*/who()do()]#'}mul(907,948) //when(411,489)what()>,@{+mul(531,197) who()mul(295,590)$$(how()mul(650,275)(from(863,97)}}!^-^,what()mul(677,618)+$mul(751,83)-+from()how()-~mul(200,556)^'}>[when()mul(95,717} ;when()$#(&'^{mul(802,848)/when()<~mul(442;}mul(496,455)^]*$how()?}from()select()mul(914,635);mul(86,655)!++mul(692,303)!how()mul(550,704)#})*#;how()+&mul(696,443)%<%from();how();mul(873,149)mul(293,653)}%#: where();(mul(815,587)'+-where(),>select()mul(571,536)mul(591,230);@mul(260,248)&:mul(148,24)mul(246,496)[when()why(797,860)?#!mul(227,69)*select()mul(279,848)+##mul(79,786)% ,]mul(916,494))*$;{when()! >don't()from()$ !<*(when();select()mul(207,342)!when()<:*&!select()({mulwhen() where()how())/>when(114,161)!@(do();[$$how(18,592) *#why()where()mul(439,193)}]@%~from()]!}don't()^how()what()who()when()who(968,843)mul(534,530)*mul(75,303)mul(113,965)how()<<[{;mul(815,821)from()mul(926,936)#- >+)when()?do()mul(883[;;mul(147,254)*#}/when()mul(750,402)}-&,mul(852,52)~$where()mul(731,737)<~%,;,,^')mul(22,190)@~-%from()( mul(378,829)(&%>#;!)when()mul(740,339)){/what()mul(540,592)mul(964,822)+mul(770,246)+why())mul(863,653)^from()*+?select()@<-'mul(313,656)what()don't(),-+what()@@#$mul(507,90)(:when(731,317)%who()why(),!(mul(485,972)%?mul(729,643)#>(#>+from()mul(145,213)mul(449,499)/@;:(]!]$mul(926,176)+mul(684,228)select(465,755)what()'mul(164,505)mul(577,347)'^from():$::}mul(478,394)%-* mul(890,910)mul(435,174)from()mul(45,739)#'}}?+ mul(608,614)#who())(mul(437,279)mul(135,37)&+(how();^~&?mul(819'] mul(119,163)@where()>from()?<@ ;-mulwhat()what(),$who()^mul(720,224)];[>mul(159,464)mul(212,783)[mul(737,184)',;where()!select() ^{don't()'<)when(531,575)((>'*,mul(693,133)~?what()mul(762,58);'*[!mul(357,260]+&$(select():%how()mul(81,45)}*what();how()mul(832,898)mul(982from()?when()why()[)mul(192,688)mul(173,865)mul(803,918)%mul(672,984)?^what(886,509)+@^*;]mul(527,340))mul(249,872)!select()#)mul(200,814)what()] @ who()don't()~what()#what()mul(314,985)from()~*,%[mul(638,521)select()>#mul(438,516)~~+&)mul(616,938)where(571,82))?/}*from()^~:mul(501,633)$!>how()mul(573,985)@what()mul(644,942)/*'select()%mul(906,350)>*how()<:''mul(782,807)}where()/^~ mul(85,249)@why(306,270)mul(456,289)?-mul(619,539)!do()mul(855,724)!:mul(732,256)mul(170,879)#@-^}mul(909,290)??what()[>mul(372,185)*select(){where()don't()who()##mul(385,998)*?*[+[~mul(372,856)how()&why()from()&<&mul(994,771) why(893,306)/~^who()!!}mul(546,38)from()& why()^}~*@where()mul(422,592)who()from(680,610)~where()*who(779,112)how()mul(504,670);%-}:how()%mul(593,39)/$mul(9,683)!mul(690,886)?how()#$mul(789,984)*!^ $~!mul(810,923))when()who()how(),@what()mul(110,783)>mul(915,154):what()#select()when()when()]mul(527,185)~#>>?%who()what()what()mul(639,775)do()[-&when()how()where()who()>mul(536,148),{from()what()']who()mul(881,967)$;mul(17,490)+}!:>where()^mul(173,498){&>from(470,979)mul(984,973)from();{&;[mul(996,319)from()when(231,33)>&(mul(367,363)mul(656,760){%$&((?-how()mul(659,794)@^where()<,+do()~who()~&]why()^mul(426,888)&}<~;mul(74,172)/how())%:how()];{mul(21,986)>mul(150,723){what()}from()mul(878,969):']when()~ where()mul(462,974)>+mul(885,808)?<[!(mul(488,285))(mul(788,538),{+who()when(829,876)&!mul(854,972){when()mul(437,889)>()/mul(336,730)^($when()@mul(486,936)][how(),$] '}don't()<]~~?)mul(321,307) select()^(mul(954,263)*~select()select(637,420))/??why()why()mul(94,567)~{#:from()-mul(311,510)'^ when();&what():mul(854,744))[~~do()]-who()-%-from()how()mul(338,481)how();why()@why()do()}from(){mul(196,713)@+(&^mul(35,164)mul(459,290)how(485,936)]]/ 7 | -------------------------------------------------------------------------------- /4/input.txt: -------------------------------------------------------------------------------- 1 | MAMAMASXXXSAMXSSSSSXMXMAMMSXMASAMXMXSSXMXXXXMSMSSMXXSAXMMSSSMSXMMXSMMMMSSMMMAMMMMSMMSXMAXMASMMSXASXSAMXXAAMXMXMAMXMAAXMASXSMXSSSSSSSSXMXSAMX 2 | MSMMMMSXAAAMSMMAAMMMMAMASXMASAMMSXAXXMAMSMMMMXAMAMXAMMXSAAAAASASMASXAAMXAAXSAMAMMAAXXAMXMMSMMXMAMSAMXMMMSMMAXXXMXSMSMSMASMSMAMAAAAAAXXSASAAX 3 | XAAXMAMMSMMMSAMMMMXAMAMXAAXAMXSAMAMXMSXMAASASMSMAMMXXAAMXMSMMSAMMAMXMXSXSMMMASMXSSMMMAMAAMAAASXSAMXMAXSAAAMSSSMMAAAASAMXXAMMAMAMMMMMMMMASMMS 4 | SSXMMAXAAXMASMMXSXSMSSSSSXMSSMMXSAMXXAAXSMSASAMAMXXMMMXXAMXXXMXMMSXMSAXMAMXSXMXAAMXSASMMSXXMMAAXMXXSAXMMMSAAAXAASMMMSXSSMSMSASXSMXAXASMMMMAX 5 | XXASMSSSMMMMSAMAMAXMAAMAMXMAAXAAMMMMMSSMAAMMMMMSSSSXSAASMSAXSAMXXXAAMAMSAMXSXAMMMMASAMAXMMMSAMXMSAMASXAAAMMMMMAMMAXXXAAAAMASASXAMSMSMSXXAMXM 6 | MSXMAAAAXMSAMAMXSAMAMSMSMMXSMMMXSAXAAAXXMMMXMXMAAXAAMMXSAAMSMAMSAMMMMAMSASAMMSMSAMXSASXMSAAAAXSXMASAAXSMXMMASMMSSSMXMMMSSMAMAMMMMSAAXMAMSXSA 7 | ASMMMMAMAXMASMMMMASMXAXAMXAAAXMASXSMSXSSXSAMXAMMSMMMMSMMXMMMXAMXXSAMSSMXAMMSMXASMSASAMXXMMSSSMMXSXMASMXMSMSASAAXMASXXXAAXMAXAASXMMSMSMXSAAAS 8 | AXAXAMAXMMSXMASXSXMXSXSXXMXSAMXMSMMAXMAMASXASXSXAMAAAAASXMSXSXSASAAXAMMMSXXAMMMMAMASXMXMSXMAAAXASASAXXMASAMXSMMMMMMMSMMSSSMMSMMXXAXMXMSAMXMM 9 | AMXSMSMXSAMAMSAAMMMMSMMXXAAXAXMAMAMAMMAMXMAXXMAXSSSMSSSMAAMXMMMMMMSMSMSAAMSSSXSSSMMMMMXMMAMXMMMAXAMASAMXMMMMMMSMSMAAAAMAMAMXXAMSMXXSAMXMAAXS 10 | XAMMAMAAMMMAMAMXXAAAXAAMMMMXMMMMSSMSXMASASMSAMMMMAAAXXXXMMMAAAXASXMAXAMMMMAAXAXMASXAAXAMSMMASMSXMAMXSMMAXAAMXAAXAMMSSSMXSAMASAMAAASMMMAXMMMA 11 | SSSMAMMMSASMSSXSSSSSSMXSXAAASAXMAMAMXMMXAXAXMASAXXSMMMMASASMMXXASAMSMAMAASXMMSMSAMMSMSMXAAXMSAAXSXMXMAXAMSSSMSSSSSMMAAMAMAMASAMMMMXAASMMSAAM 12 | AAAMXSXXMASXAXXXAAAXAMAMMMMXMASMSMSMMSAMSMMMSXSXSAMAAAAMSAAAASMMMAMAAAMSMSAXAXAMMSMAMAMSSSMXMMMXMAAASXMSXAAXAXMAMSXMMAMASAMASMMXAMMMMSXASMSX 13 | MSMMMSXSMSMMMMMMSMMMAMASASMSMXMXMAXAAMAMXAMASXSAMMSSMSMXMMXMASAXMAMXXAXMXSMMMSSXMAMAMAMMAXXAXAXASMMMSAAMMMMMSMMAMSXXMASASASXMXMMAXASAMMXMMMM 14 | XMAAAMMMSAAAASXAXMSSXSASAXAAXMSMMMMMMSMMSXMAXAMAMXAAXMXSXMASXSAMXXMMSSXMASAMXAXXSSXSSSSMAMMSXSXMMSSXMMSMAXMXMAXASXAASXMMSXMASASXSSMSAAXMXMAS 15 | XMSMXSAXMSSMXMMXSAXAAMASAMSMMMSAAXAAXAAMXMMXSASMMMSSMMASASXSAMMMXMAAAAAMAMAMMXMMMAAMAMMMASXXAXXAAAXXXAXXSMXMASMXSMMMSXAMSASMMASXXAXSAMXXXMAS 16 | SMXSASAMMAMXAXAAXMMMXMXMMMXAXASMMSSSSSSMSXAMSAMMAXMAMMASXSAMXMAAASMMXSMMAXASMSXAMMMMAXMXXSAMAMSMMSSMMMSMMMXSAMMMMMXAXMXMMAMAMXMMXXMSASXMSAMX 17 | AAAMMSASMMSSSSXMMXAXXMMAXXXMMMSAMXAXMAXAMMSXMAMMXSSXMMAXMXMMMMMSXSAAAXMXSSMSASXSMSXXMMMMMMAMAMXMAAAAAXAAAAMMXMASAAMXSMMSSSSSMMXMSMASAMXAMSMM 18 | SMMSMMXMAAAAAAAAASXMMSAMXMSXMXSMSMSMMMMSMAMMXXMSMMMMAMXSAMMAAAXXASMMMSAAAAAMAMSMAMAMSASAAMAXAMAMMSSSSXSSMSXXMASMMXSAAAAAAMAXSAAMAAXMAMMXMASX 19 | MAMMXMASMMMXMXMMMMSAAAMXSMMAXMMAAAAMAAAMMXSAMSXSMAMASXMAXAMSMSSMMMAAAXMMSMXMAMAMAMAMSASMSSSSSSXSMAAAAAMXMMMAXXXXXAMXSMMMSMSMSSMMASMSSMSAMXMM 20 | MAMXASMSASMMSAMXMAMMMMXASXSAMSMSMSMMSSMMXMMASMAMSAMSAMXSMSAMAMXMASXMXMXMXXASASMSSSSXMMMAXAXAASASMMXMMXMAMXAMMMMMSAMXXAMXXXXAMMMMAXAXAASXMAMX 21 | SSSSMSXXXAAAMXSAMSMSXXMASMMAAMMXMXMAMAMSMMMSAMXMMXXAMMXXAXXMMMASASAMXMAAASASASXSAMXAASMMMXMSMMXMAXMMXXXAMXSXAAAXAMMMXSAMXAMSMASMAMXMMMMMSXSA 22 | SAAAAXAMMXMMMASMMXAMAAXMMXMMMMXAMMSXMAASAXXXXMSSSMSSXSXMMMMMXSXMAXXMAMXSMSXMMMXMMMSSMMAASMMAMXMMMMMSAMSASXMSSSSSSSSSMXAMMMMAMAMMXMXAXXMAASAM 23 | MMSMMMAXSMSAMMSXAMAMMMMMMAXXAMSMSAAXMSMSSMMMXSAAAAXMAMASASAMXMAMMMSSSSXMAXMXSXASXMAXASMMSASMSAAAMXXAAMSSMMMAMAAAAAAAMSMMAXAMMASMMMMSSSMMMSXA 24 | MAMXXXMASAMAMSSMMXAMAAAAMSXMAXAMMMXMMAMXMMAMSMMSMXMMAMASMSSSMSMMMXAAAMAMMMMMMSMMAAAXMSAASXMAXXSMSASMSMXMMMXMMMMMSMSXMAAXMMSXMAXAAXAAAAASASMS 25 | MSSMMXSAMAMXSAMAMSXSSXMXXAASXMMSASAMMMSMXSMSAXMAMMXSXSXSASMMMAMAMXMSMMAMXAAAMMMSAMXSXSMMMAMXMMMMAMXAXMAXAAASXMAXXXXMMXSMAAMXMSSSMMMSSSMMASAX 26 | XXAAXAMASAMXMASAMSMMAMSSMMMMXAXSASMMAAAAMSXMASXSXSMXMSXMXMAAMAXSSSMAXSXSXSSXSAAXAMAMXXMAXXMXMAXMXAMXMMSSMMMMAAXMMMMAAAXAMMSMMMAXMXAAMXXMMMAM 27 | MSSMMMSAMAMASAMXXSAMXMAAAMMMSMMMXMASMSMSMXASMMMMAAXAAMSXXSSMSSSXAASAMSMSAAAAMMMSAMASXMSSMSXXSSSMSSSSXAAMASMSSMSXAMAMMXSAMAXAASMSMSMSSXXXAMXM 28 | AXAXAXMMSASASXXMASAMXMXSMMAMXMASAMMMXAXXXMMMAAAMAMSMMAMMMMXMAMMMSMMMSXAMMMMXMSASXSAXAAAXASMASASAAXAAMMMSAMXAAMAMMMXASASAMXSXMMXAAAAMXMASXSSM 29 | XXMXSXMASXSAMXMAMXSMASAMXSAXAXXSXSXMSSMMAAXSSMMXAXAXSSXXAAXMASXAAAASXMMMXAMXAXAMAMASXSSMAMAXXAMMMMXMAAAMXSMXMMMSSSMAMAMAMXSASXSMSMXMAMMMAAAS 30 | SXMAXAMXSXMAXMASMMMMAMMSXSAMSMMMMSAMXXAMXSXXAAMSMSAXXMMSMSSSSSXSSSMSXAXMSMMMMSAMXMMMMAMXMAMAMSMMSMXSMMXMXSMMMXXXAAMXMXMSSMSAMAXAAXASMSAXMSMM 31 | AASASAMAXASAMAXXSAAMXSAMXMAMXASMASMMAMSMAMMMMXMAMMXMAXXAMAAMMMMXXXAXXMAAXAAAXSAXXSXMMMMAXXSAMXAAAAAMAXMMAXMASMSMSMMMMMMMAAMMMSMSMSXSASASXMXA 32 | SMMASMMMSMMMXMSASXXSAMXSMMSMSAMAXSAMMMXMSXMAMAMXSMSSMMSASMMMAAMMAMAMMSMMSSMMMSXMASAXAASMSXAXAXMMMMSSSMAMSSSMSAAAXMAXXAASXMMSAAXAAXAMAMAMAXSA 33 | MXMMMMAAXMASAAMXMAMMXSXMASAXMMMXMSXMMMSAXASASXSXMAAMAASMMXMSSSSMXMAXMAAXMASMMMASAMXMMMMSAMSMMSSSXAXAMXMAMXMAMXMMMSMSSSMSMAAMSMSMSMMMMMSMXMAS 34 | SXXAASMXMSASMMMSXSXMAMAMSSMSMXMAXMMSAAMXMASASAXMMMMSMMSSXAMXAAAASXMMAXMMXAXMMSAMASMSXSSSMMAAAAAXMXMSMXXXMMMXSSSSXXAAAMASMMMXMMXXXXAXASXMASXM 35 | MXSMXXMSMMXSAAMSAXSMASMMAXXAXAAXXMASMMMMMXMAMMMSXXXXMASMSMSMMMMMMASXMSSMMXXAMMMMXMAAASAMXSSSMMSMMMXMAMSMMAMXAAAMAMMMSMASAMXASXMASMSSMSASXMAS 36 | XMAMXSAAMMSSXMXMAMXSMSXMMSSSSMSSXMMSMSMSMSMXXAASMMMXMXMAAMAMASXXMAMAAAMMAMXMMAXMXXXMSMASAMXAAAMAMAAMAMAASASXMMMMXMAXXMAMMMMMSASXXAASXSXMASAM 37 | SMSAMMXMMSXMASAMSMAMMMAAAMXAMAAMXMAXAAAMASMMMMAMMAAAMAMSMSASMSAMMSSMMMXMMSAXSXMMMMXXXAXMAMSSMMSAMSXSASMXSAXXXAXAASXSXMASXMXXMAMMMMMMMSASXMXS 38 | XAMXMASMXSAMASXSAMXSASMMSSMMMMMSSSMXSMSMAMAMAMXSMMSXSAMMXSXSXXXMAAAASXXMAMMMMXXAAAXMSMMMXMXAMXMAMXASMSXMMXMAMASXXSMAMAXAMASMXSXSAXMAASASXAMM 39 | MXMSMASAASAMMSXSAXMXASAMMAMXMXMAMAAMMMMMXSMMAXAXAMXXSXXSAMXMASMAMMSMMSMMSXXAMXSSMSSXMASXSXMAMAXXMMMMAMXMAMMAMMMMAMAMMSSMMAMSAMAMSSSMXSAMMSSM 40 | ASMXMAXMMSXMAMMXMMSMMMMXXXMAXXSMSSMMAAMMMMASAMSMAMMASAXMASXMMMASMMMMAMXAAASXSAXAAAAMAMXAMAMSSSXSASAXMSMMAMSASXXMAMMXAAAXMASMMMAMAMAMAMAMMMAM 41 | XMASMSXSASAMASXXSASASXMSSXSXXXAXAXMSXSMMASMMMAMSMMXAMMMSMMXMMXSAMAMMSSMXSMAAMMSMMMSMMXMMMMMAAAAMASMSAAAMAMSAMXXSASMMMSSMMXSASMSMMSAMXSSMASMM 42 | XSXMAXAMXXAMXMMAMASXMAAXSAXAMAMMXSXSMAXSMXXAMAXASXMXMXMAMXASAMMAMXMAMAMAAXMXMAMAASAMMASXSXSMMMXMXMMXMSSMMXXAXMMSASXXAAMASXMAASAAXSASXSXSAMXM 43 | MXXSAMAMSSSMAMMSMAMASMMMMSMMMMMMXSAMXSASAMSXMSSMMSMAMMMSMSXMAMMAMXMXSAMXMMSMMMSMMSAMSAMXAAMXSXAXMAMAAMAAMAXMASAMAMXMMSXSAXMMMXMSMSAMMMMMSMMM 44 | SAMXMXAXMAMAASAMSASAXASXMAMMAXASAMXMAMXMAMSAXMAXAAMASMAMXMASAMASMSMAMXSXMAXXAMXMAMAMMXMSMMMAASMXMAMMSMSMMAXSAMXMAMASMXXXMXXXXXXXAMXMAXAAAXAA 45 | MMSMMMMMMAMMMMAMSMMMSAMXXMMSASMSAMSMXSSMMMMAMSMMSMSASMAMASAMXSMAAXMAMAXAMASXSMSAXXMMMSMMXAXXXXMASASXAAXXMAMMMMASASAXMMMMXXMSMMMMSMASASMSXMXM 46 | XMAMSASXMXMMASXMXSAAMAMMXMASAXXXXMAMAMXASMSMAMXMAXMXXMAMXMAXXSMMXMMSSMMMMXSAMSMMSAMXXAAXSSMMSMSASASMMMMAXXAMAXXSAMXXAAAMAXMAMAXAAMXMAXAAMSMS 47 | MSAXSASASMASASASAMMSMSAMXMAMMMXSAXAASMSXMAAXSXAXMMSXSMXSAMSMMSASAAXXAMMAMAMXMAMXMXASMMSMXAASAMMXMXMXMMSMMMXSSXXMMMMASMSSMMSSSXMMMXSMMMMMSAAA 48 | AMXMMXMAMXXMASMMMSXXMAMXXSSSSSXAMSXMXAMXMMMMMSMSMAAMMASMMMAAXSAMMMMSAMSXMMMASXMAXASXMAXAMSMMASXSMASMMAAAAAMAMXSMSAXXMAXAMAAXAMSMSAXASXMXSMSX 49 | MSMMXMASMXMXXXAXAMAXXXXSAAAAXSAMXMAMSMMMSXMXXAMAMMSAMMMAXSSMMMMMASXMAMXMMXMAXAXSSXMAXAMSMMXSSMAMSAMAMSSSMSMMMXMASMSMMXSAMMMMMMMAAXXMMAXXXMAM 50 | AAAXSAAASXMSMSMMSMAMXSAMMMMMMMSXASAMAAAASAMXMSSXXXAXSSMXMMXMAAAXMSASASMSMAMSMSXMAMSSMSSXAXXSAMXMASXSMMXXAXMXSAMAMMAXAAMASXMAAAMAMMSSSXMASMMM 51 | SSSMAMSSSMASAMXAAXMASMAXXXSXAMASAMAXSMMXXAMAAXMASMMMMAXSXXASMSMSAXASASAAMSMMAMXMXMXAAXAMMMMMMMAAXXXMASMMSMMXSASASMMMMXMAMAMSSMSAXXXAAXMAXXAM 52 | XMMMMAMAMXAMMMMSSXMSXXMMSMAMSXMSMSSMXXXSMSSXSXSAAXAAXMMSMSXMAAMMMMXMMMXMMAAMXMAMXMSMMMMMAXAAAMSMMSSMMMXAAAXXSMMMAAXSAAMSSSMAXMSMSSMMMMMAMSAX 53 | MASXXAMAMMXSXSMMXXXAMASAMASXMAXSAAXASMMXAXSAAAXASXSSSXAXAMMMMSMSMSMAMASXSMMSASASAMMAXAXSXMSXSXXAMASAMSMSSSXAXAAMSAMSMMSMAAMAMAXMXXAAMAXAMMSA 54 | MAMASXSASXMMAMAAXSMASAMAXSAAMAMSMMMSMSAMXMMMMXMXMAAAAMSSXMASAMMAAAMAMMSAAXXSASXXASXMSSXMSMXAXAMXMASXMAMMAXMMMSXXMXMXXXXMXMMAAXMSMSSMSMMMXAMX 55 | MASXMASXSASMSSMMSMAMMASXMMMSMAAXAXXXAMMXAAAMMXSAMXMXMAMAXSXMASMMSMSSSMMMMMAMMMMSXMMMAXAAXMMMMMMSMMSXSASAMASXMMSMMASMMSMMSSSMMAAAAXXMAXAMMAMX 56 | SASXSASXSAMAAMAMAAXMSMMXMAAAMXSMSMSMAMAXSSMSSXMASXXSXSSMXMAMMMXAMAAAXMAXXXAMAAXMAXAMSSMMMXSXSAAXAASXSASAAAXMAAXMSASAAXAAAXAMMSSMSMSSSSXMAAMX 57 | MAMAMAXMMAMMMSSSSSMXXXMASMSXSXXAMAAMAMMXMAXAXASAMXXSAAAXSSSMMSMMMSMMMMSSXMASMMSAMMSMMAAMAMXAMXSSMMSAMASXMSSSMMMXMASMMXMMSSXMMAAXMAXAAXMASASA 58 | MSMSMAMSSSMXAAXAAAMXMAMXMAXXSAMAMSMSSSMASMMMSMMAXSAMXMMMXAAMAMAMXAXXAXMAXSXMXAMAMAMXMSXMSSMMMAMAMAMAMAMXMAXAAXXXMMSXSXAAXXMASXMMMXMXMASXXAAX 59 | MXXMAXMMAXXMMMMMMMAAMAMXMSSMMAMAMMAAAAAXMXMAAMSSMMMSXXXSMMMMMSSMSMSSMSMAMMSMMMSAMXMAXAXSAAASMMXAMXXAMASXMASXMSMAXXMAMXMXMAAXAAAAMAMMSAMXMSMS 60 | MSASMMSMMMMAXXAXAXSMASXSAAAXAMXSMMMMSMMMSXMSXXAMASAMMXAXAMXMMAAXXXAASXMASASXMXSXXAMAMXXMMMMMAMXMSXSASAMXAAMXAXMAMMMAMMSSSXSAAMSSSMSAMASMMAXA 61 | ASAMXXXAAXASMMSSMXAMXMAMMSSMSAMXMSXMAMMAXMAXMMSSMMASAXMSSMASMSMMXMMMMXSXMASAXXMMXSMMASMSMSSMSMASAMXMMASXMASMXMAMMXSASAAXAAXXXXAMMASMSAMAMAXM 62 | XMXMASXSMMXAXSAMXAAXAMXMAAAXMAMAMXAASXMSSMSSXAMAXSSMMMASXMASAXAXMMSMMAMXMAMMMAAMAMASXMAAASXAASXMAMMMSASAMXXMASAMMMSAMMMMMMMMMMMSXMXAMMSAMSMX 63 | SMSSXXMMASMXSMMXSSSMSSSMSSSMXMSMXXSMMXMAXAXSMMSMMXXAAMMMAMSMAMXMMAAAMASAXMAMMXXMASAMXMXMSMMMMMSAMXSAMAMMXMXSASAMSAMXXSMAAXAXAAAMAXMMMMAMXAAM 64 | SAAXXMASAMXXMASAAXXXAAXAMXXXAAAXMMXAMXSAMMMMXASMSMMSMSXSAMAMMMSSMSMXMXSXSSMSMSMMXMMMMMSMXXAASXSMSMMASXSSSMASAMXMMAMSAMXSAMMSSMSSXMAXSSMSSMSA 65 | MMMSMSMMMMXMSAMXSMSMMSMXMXSSMSASXSXAMAMXXSASMMXAAMAAXMMSAXAMXAXXAMASMMXAAXMAMAASXXMAAXAXASXMMAXXAASAMMMAAMASXMASMMMSAAAMMSMAXMAAAMMMXAXXAAAX 66 | SMXMASAAMMMXMAMMXAXXMAMAMXMAAMXXAMSMMAXMASASXSMSMMSASXAXSSSSMXSMMMAAASMMMXSMSMSMMMSSXSMSAMXAMAMSSXMMSAMSMMASASXSASASXMXMAAMMSMMASXSSSMMSMMMS 67 | AMAMXSSMSASASMSSMXMAXAMASAMMXMXMAMAXXMXSAMAMAMAMAAXXMASMMMAAMAXAAMSSSMAXSAMXXXXAMAAMMSXMXMXXMAAXXXAXSMXASMAXXMASAMASMAXMSSSXXXXAMAAASXAMXMAX 68 | SXXSXMXMXMSASAAAMASASXSMSASAXAASASMSXAASXMAMXMAMMMSMXAXMAASAMXSSMMAXAXSMMMMAMMSMMMXSASMSASXSSSSSMSMMXMXXMMMMMMXMXMAMXMXXMAXMASMMSMMMMMSMAMSM 69 | MSMMAAMMSXMAMMXMXASASMAASAMASXMSAMAXMMMSASMSMMSSMAAXMASXMMMAMXMAXXXMSMXAXAMAXXAXMAMMMSAXASAMAMAAXXMMXXMAXASASASMXMAMMMSSMAMMAMXAAXAAXAAMAMAA 70 | MAXSMMMASAMXMSASMASAXAMAMAXAMXXMXMSMMSASXMMAAAXAMXSSSXMXSXXMASMSMSXAXXXXSXSAMXXMXSXAXMXMAMAMXMXSMSASMAXMSXSASASAMXSMAAAXMASMXSXSXSSXSSMSSSMS 71 | SXXMXSMMSAAMXXAXMXMAMSXSSSMSMXXSSMMAMSASAMXSMMSXMXXAXAXAMMSSMMAAAMMSMMSMMMMAMSAMXMXMSAMXXSXMXSXAAMAAMSAMXMMAMAMAMAXSMMSMSAMMAMAMXAXXAMXAXAXX 72 | XSAXAMAXXAMXMMSMSXMAMMAAXAAXMMSAAMMAMMAMMMAXAMXXMXMASXMXAAXASMXMAMMXAAAASAMAMXAMASAMAXXSMAAXAMSMSMSMAXAMASMMMXMXMSMXMAMXMASAMMAMXAMXMMMMMSMS 73 | SAMXASMMSMMAAAMAMMMAXMXMXMMMXMASMMSMMSAMXMASAMMMMSMAMXAXMMSMMXXXSASMMSSSMSMSXXAMAMASASMAMSXMAMMXMAAAMSXSASAMSAMXMAAAMASXMASAXSAMXASAASXSXAAX 74 | SMSMXAMAAASMSSMAMAMSXSAMMSAMXMAMXXSAAAASXMXSAMMAXAAASMSMMAAAASMAMAMAXAMXMXMAAMSMMSAMAXXAMXAMXMAASMSSMAASXSAMXSMAMMXSSXMAMASAMMMSAAMASMAMSMMM 75 | XXXMSXMXXMMMAMMAMXMXAXMMAMXSXMAXXSMMMSXMASAMAMSSSXSMAXXAMSXSAMMAMAMSMASASAMMSMMAXMAMASXSSMSMAXSMXXAAMMMMMMMMXMXAMXAXAMSXMAMAAAAXMXMSMMSMAXAA 76 | SAMXMSSMSMMMASXMMAXMAMSSSSXMXSASMXXXAXASAMXMSAMXMMMMXMMMMAAAXSSMSSSXXMMASMSAMAMXMSAMXMAXAAAMXMXXXSSMMSAXXAAAAMSSSMXSAMXXMXSMSMSSXXXAAXMSXMAS 77 | MXSAMXSAAAXSMSASMXMMSMAAXAAMXXMAMSXMSMMMXSAAXMMMXAMMSMASMMMMXAAXAMXAMMMXMXMAXXMAAMXMAMMMMSMSSSMMMMAAXSAASMSSMXAMAAAMAMXMXXAAXAAXAASMSMMASXXM 78 | SMSASAMXMMMMAMAMXAXAXMMSMSMMASMSAMMMXASXMAAXXMAMMMXAMXAXMSMXMSMMSSSMSASMSMSSMSSSSSSMMSXAXXMAMAAAASXMMMXMMXAAXMASMMMSMMSAMMSMMMMMMMXAAAMAMMMM 79 | AAXXMMSMSSSMAMXMSXMASXSAAAAXXSAAAXSMSAMAMXMMMSMSSSMSSMSSMAXSAXAAAAAASXMAAAXMAMAAAAAAASMMMXMASXSMMXASXSXXXMAMMMMMMAXSXAXXMAAAAXMASMSMXSMMSAAX 80 | MSMAMAMMAAMSAMXAMASASMMMSSMMXMMMSMMAMXSAMASAAAXAAAXMAXMAMASMSSMMMSMMMAMSMSMMAMMMMSMMMXASXMSAMAAMAMXSXMASXSSXSSMMSMSXMMSMSSSXMMSMSAAAXMXMAXSX 81 | AXMXMAMMMSMMMSMASXMASAXXAMASMSAAAAMXMASASAMMSSSMSMMSSMMAMXXAMXMMAMAAXSXXAXASXSASXMASXSMMAAMASMMMSXMMAMAMXAMXXAXMAXSMMSAMAAMASMMMMMMSMMAMSAXX 82 | MMMXMAMAXAMXAAMXMXMAMMMMASMMASMMSSXAMMSXMASAMXAMAXXMMSMMSSSMMASMMSSMMXAMAMMXAXMMXMAMMAMSMMMAMAAXMAXSAMASXXMASMMMMSMAXSASMMSAMAAMMXMXAMAMXAMM 83 | SAMAXAMMSMSMSSSXMXMXSXMSXMXMXMXMMXXXXMXAXMAMXMSSXSMMAMXSMMAASAMAXAMXXMAMAMXMSMMSAMAMSAMXSASXSMMMSMMSXSXXXXSXSMAMSAMSMSAMXMMAMSMMXAMMSMMXMXMA 84 | SSMMSXSAAXSAMXAMMAMMMAMXAMXSAMMSXAMMXMXMMMAMAMAMXMMMXSMMAASXMASXMASMMMMSMMSAXAAXMMMMXAXAMXSMXXMAAXXXMAMMSXSASXAXXAMMMMMMASMSMMSSSMMAAXXSMMSS 85 | MMSMAAMMMMSSSXMASASXSMMSMMASAXAXMAMAAMXSASASXMASXMAXMAMSAMMXSASASMMAASXAASMAMMAXXAMXMSSSMMSAMSMMSXXASAAMAAMAMMMXSAMAMAASMMAAAMAMAAMSSMMXSAAM 86 | XAAMMMMAXXXAXMAXSAXAAAXAMXAMXMMSASMXSXASAXASXSASXMAXSAMXASMMMAMAMAMSMSMMXMMXMMSASASAAXAAXAMXMAMXMXSXMASMMXMAMAMMAXSXSSXSMMSMMMAMMMMAAAXAMMSM 87 | MSSMXAMSXSMMMMSMMMMSMMSMSMMSASMAMXMAXMMMXMXMXMAXASMASXMSAMXAMAMAMMMMMSXSMMXXXAMMXAXMXMSMMMSASASASMSASAMXSXSMSSMSAMXAXMASXAAAASXXSAMXSMMXSXMM 88 | MMAAMSMXAMXMAMAAMXAAAMXAAASAAMSMXSMASAXMXMSAMXAXAMMAXAMMAMXMSXSMMSAAXMASAMSAMMSSMMSXSXXXMASMSXSAXASAMMXAMASAAAAAXAMXMMMXMAXSMXSAXAMXXAXXSMMM 89 | SSMSMXAMMMAMAXSMMMXXXMSMSMSMMMXXSXMASMSSMSASXMASMXMXMMMSMMSMAAAAASMSAMAMAAMSXSAXAXAASAMASAMXMAMXMXXMASXMMAXMMMMSXSXMXSMMMSMMAXMSMSASXSMAXAAX 90 | AXXMAMAMASAMSXMAXAMSSMSAXAMXSXMSSXAMMAMAMXAXXSXAXAXAAXMXSAAMMSMMMMXXAMXXXMSAMAXSMMMMMAMASMSSSXSAXSAMASXXMMMXAXAMAMMSAMAXAAAMSMAMXXSXMXSSXSMS 91 | MXMMMMMMAMASMASAMXAMAAMAMXMAXAMAMMSXMAMAMMXMXMASMMSMSMMAMMSSXMAXMMSSMMSMSXMASMAXAAXASXMASXAMAAMAXSAMASXSASAMMMSMMMAMASAMSSXMXMSAMXMXXAAXXXAM 92 | XAAASAAMSSMAMAMASMSSMMMMMMMMXAMMSAXXSSSSMSASAMXAMXAAAAMXSAMXXSXSXAXAXAAXXASAMXAMSMSASAMXSMXSMXMXMXAMMSASAXMAXAAAAMXSAMMMAAMSXMXXMAXAMXSSMMAM 93 | SXXXXMXXMAMMMMSAMAXAXMSMAMXSAMMXMXMMAAXAASASMSSSMSMSSSXAMMSXMAASMSSMMSSSSMMASMSXXASASMMMMAMAASMXMSMMXMXMMMXMSMSXMXAMXAXMMSMXAMAMXASXSAMAXAAS 94 | SMMSSMSXXAMXMASASMSAMXAMMMAXMASXMASXMMMMMMXMAMMMMXAXAXMASAMMAMXMAAAAMMMAAXASMMXAMXMXMMSMMAXAXAXXAAXXAXASAMAAXMMASMMSASMSXXMSSMASAMMAMASXMXSS 95 | XASAAAAMSMMXXMMASAMXASMSSMMSXASXMASAXXAAXMXSXMASXMMMASMMMASXSSSMSMMMMAMMMMXMAXSSMSMSMAXSSSSSMSAMSMSSMSASASXMSASAMXSAMMAXAXAAXMAMMXSXSXMAASAX 96 | XSMSMMMAAASMSSMAMMSMMMSAMXXSMXMAMASXMSSSXMMMASAMMAXSAMAAMAMAAAAAXXMSSMMMXSXSXMAAAXAAMAMXSAAXAMXXAAXAXMAMAMAAMXMXMXMMXMXMXMMMSMSSXASMMAXXSXSX 97 | SXAAMASXSSMAAAMSSMAAAMMMSXMXXXSAMMSMMXMAXSASAMMMXXXMASMMMSMMMMMAXAXAAAXSAMMMSMSMMMXMASMMMMMXXXXSMSMSMMAMXMMMMMMSMAXMASMSMMAAAXAAMXSASMSXXAMS 98 | AMMMSASMXAMMMXSAAXSXMMAASASMMXAXSASXXAMXMSAXASXSAXMSXMASAXXXSXXMMMMSSMMMASAAAXAXMXMXMMAAXASXMSMXMAAAMXXXXXSMAAAMMASMMSAAAMMXSSMXMASAMASAMAMS 99 | MSXXMASAXXMSMXMMMMMXSMMMSAMXAAMMMASASXSSMMSMAXAAMXMAXSAMSAMXMXMMSAAXMMMSAMMSSSMSSMMAMAMMMMSAMAAAXXSMSMSASAAMSMSSMMSASMXMMXSMMXXAMXMAMMMMMSMX 100 | XAMMMMMXMXMXXXAMSMAASAMAMXMMSMXAMAMMMXAAXAXMSMSMXSXAXMXXMXMASASASMMMAMXMASAMXXMAAXSXSASMXAMAMSSXSXMXSAAAMMXMXSAMXMSMMAMXSAXAXASXXMXMAMXXXAMX 101 | SMAXXAAAXAMAMMMAAMMMSAMXXAMAASASMSSMSMMMSASAAAAAMAMXSSMMXASASAMASASMXMASAMXMSMMSSMMASASXMMSAMAAASXSAMXMXMASMMAMSAMXAXXMAXMSMMMXMXSAMASMSSMSS 102 | AXSXSMSXSASAXAMMMSAAMAMXMMMSMSXMAAMASAXMXAMMMSMSMSMMAAASMXSAMXMXMAMAMSASAXAXAAAAAAMAMXMXAASAMMMMMAMSSSXMSAAAXMXSASMMMSMMMMAXXMASAAAMXSAASMAX 103 | SMMASAMXMASMSXSAXSMSXSMSXMAMMSAMMMSASAMAMSMMXMAMAAMMMSMMAAMMMXMXMXMAMMASXMXSMSMSSMMXSAMMSMSXMAMAMXMAMAAXMMSAMXMSMMXXAAASASMSASXMASMMXMMMMMSS 104 | XAMXMXMASXMAAAMAMMAXAAAXASASASXMAMMXSAXMAXAMXMAMSSXSXMXAMXMAMASASASXXMAMXAXMMMXMAXSASAXAAXXMSSSMSSMSSSMMXMXMMMMXXSMMSSSMAMASMAMXXAAXMAMAAMAS 105 | SMMSMASASAMMMSMSXMAMMMMMXMAMAMASXSMASAMMMMMMAMXMAMAXASXSMMSASXSASASMSMXMXXMSXMASMXMASAMSMSXMAMAXAAXAAMAAAMXMASMSXSAAXMAMXMAMSSSMSMXMXAMSMSAS 106 | SMAAMXMASAMASAMMAMSXXAXMAMXMXMMAMAAMXXXAAAAXMSSMAXMSAMXAAXSASAMXMAMAAMMSMMXSASAMMASAMMMXAMXMASAMSSMMSMSSXSAXXAAMASXMMMMMSMSXMXAAXXAASMMMAMXS 107 | MMSSSMSASAMXMAMSAMXMSMSMSXXXSSSMSSMMMMSMSSXSASXMSMXXAXXSMMMMMXMAMAMMAXMAMXASAMASXMSAMXAMAMASMMMAMXAXAAAAAMMSXMAMMMMXMAAMAAMMASMMMMMXASAMXMMM 108 | SMMMAAMASAMASMMSASAAAAMAXXMASAXXXXAXXAAXMAXMMMAAMSMMMAXMSAMXXAXASXMSASMASMASASASAASXMMSSXSAMXSXMXMASXSMMMMASASAMSAMXSMSSMSMAAMMAAXSMMSXMMSAM 109 | MAAMMMMAMAMAXAAMASXSMSMAMAMMMMMMMSXMMSMSXMMXSSMMXAXAXMXMAXSXSMSASAXMAMXAMMXSAMASXMMMXAAXAMMXMMAMSAXXXAXXMMASXMASXMMMSAAXAXMMMXXMSXMAXMAMMXAS 110 | SSMMMAMXSXXXMMMMAMMMAMMXXAMAAXAAXXAXXMASMAAAMXMXSMXSAASXSMSAAMMAMMMMMMMSXMXMXMXMAMMXMMSXMMSAXSAMXSMASXMASMXMMSXMMAAAMXMMMMXASMSXXAMMMSAMSSMM 111 | XAAXSSSMMMMMAAAXXXXMMMMSSMSSSMSSSSMMAMMMAMMXXAXAMXAXMASAAAXMMMMSMXAAXAAMASAXMMXSMMSAMXXXAASMMMSXSAMAXXXXXSAAXMAMSSMSSXXAASMMSAMASXMSAXXXAAMX 112 | SMMAAAAXAAMSSSSSSSMMAAMXAXMAMAAAMASAMXXASMSASMMXMMSSXAMMMMXXAXMAASXSSMMXAXASAXAXMASASAMMMMSXSAXXSAMASMXMASMXMXAMXAXXXXSMXSASMAMXMASAAMSMSAMX 113 | XAMMSSMMSSMMAAAMXMAMSSMMAMXAMMMMMAMMMSAMXAMAMSAMXAMAMSSXSMSSSSXSXMMMMXSMMSMMAMMSMMMXMMSMMASAMAMASXMASAXMAXMSSSMXAMXMSMMSASXMMAMAXXMMSSXAMXMA 114 | XXXAAAAXAMAMXMMMMXSMAAXSMMMMSXAMMXSAAXAMMSMAMAXAMXXAMXMASAXMASAXMAXAAAXXAAAXSASAMXSMAAAAXASXMXMXMASAXMXMSSXAAAASXSAAXAAAMSXSSSSSMAXXXMAXMAXS 115 | MMMMSSMMASXMSXMASAXMMMMAAAXMAMXMAAMMMSMMMMAASMXSXSAMXMMAMMMSAMXMMXMMMSMMSMXMMMSAMXASMSSSMMSAAXMASMMXSAAXAMMMSMMAXSMSSMMMXMAMAXAAXAMXMASASMMM 116 | SAAAMAMXAXAMXASASAMXAAXSSMSSMSSMMSSMXXMAAXSMSXMMASMXAXMAXMAXAMSSMMSXMAAXAXSAMASAMMMMMAXXAXSMMMSASAAASXMSASXAXAXMXSAMXAAAAMMMSMSMSMSMXAMMMAAX 117 | SASMSASMXSAMSXMASAASMMXMXMXAAAXAXMAMMMSMSMMMXMAMXMAXMSMMSMXSAMAAAAXAMMSMASMAMMMXSAXAMMXSSMSASAMMXMMXSAMXXMMMMMMXAMAMSSMSXSXAXAMAAAAAMSSSSMMM 118 | MAMXMASAASMMXXMASMXSMSAMXMSMMMSMMSXMXAMMXAMXAAMXMSSMAAASAXAXAMSSMMXSMSAMMMXAMXMAXXSSMSAXMASAMSSMSMSMMAMXXMXSASMMXSAMMMMXAXMASMMSMSMSMMAMAAXX 119 | MAMXMMMMMSAXMAXXMMMSASMSAAMASXAMAXXMSSMASXMSAMSAMAAXXSXMAMMSSMAMAAAMXSASAAXXSAMMSMMXAMXSMAMMMXSAAXAASAMXXMASMSXMAMAXAMSMSAMXSMMXXMMXXMSMSMSA 120 | MAXXMXAXXXMMSASXXSSMMMXSAMXMMSMMSSMXAAMAMMXSAMSAMXSAMXXMAMXAXMASMMMSAMAMMMSMMASAAAMMSMSXMASASAMSMMXXMAXMXMAXMSAMXSSXXMAAMAMXMAXXAXASAXMAAAMA 121 | SSSMMSXSMSMMXAAXASXSMXXXAXMAASXAAAXMXSMSXSAMAMMXSAMMXMAXSAMXSSMSXMMMXMXMXAAAXSMXMMMAXXMASAXXMAXXXMSSSSMAMMXSASXSAAAASXMMMMMASXMMMMMMAMMMMXMM 122 | MMAXAXAXMASXMMMMXMAXXASMSMSMASMMSSMSMMMXAMAXXMAAMASMASXMXMASXAXMASAAMMSMMSXSXXAXMMMMSXXAMXMSSSMSAXAXAAXXMAAMXMASMMMAMAXASASAXMMAAXAAXMASMSSM 123 | MMAMMSMAMAXMASAMMMSMAXAAAXAMMSAMXMAAMAXMMMSMAMMMSASXMXASAMXMSSMSASMMSAAAAXAMAMMMMAAXAXMXSASAAAAXMMSSMMSSMMSMMAMXXASAMXMXMAMXSSMSXSMSSXXAXAAS 124 | SMSXMAXXMSMSAMAMSAASMSMSMSXSAXXAMMSMSMXAAAAMXMAAMAMXSMMMMXXXAMAMAMXAMXSMMSMMAMAASMSMMMAAXMAMSMMMXAXAAXAAAAAXMSMMSXMAMSXSMSMMXMAXAMAAXMMXMSMM 125 | XAAASXSXAAAMMMSMMMMSXAXMASAMASXMAMMMAMMSMSSSSMMSSXMASAXSXSMMSMSMSSSXSAXMMMASXSMXMXAMXASXSXMXMMSAMMSSMMMSMAMAXMAMXSMAXMASAXXAAMAMAMMXSXMAXAMX 126 | SMSXMASMXMXMXAMAMXSMMMMMMMSMAMMXSASMMSAXAXAAAXAAMAMASAMXAAAMAAAAMAAAMASMAXMMMXMAXSAMXXXAAMXXAAMAMXAMXSXMXXXMXSXMASXMAMAMMMASXMXXXMXAMASXSASM 127 | XAXMMXMAMXMMMMSAMXAASXAXMAXMAXMXXAMAAAXMMMMMMMMXMAMXSXAMSMSSMSMXMMMMMMXXSSMAMSMMMSAXXXMMMMASXMSAMMASASAMXSSMAAAMXMASXMAXAMAMXMSXSSMMSAMXXXMA 128 | MXMASAXXAMAXAXAMXMMMMASXMXSSMXSMMAMMMMMAXAXAXAMMSSSXXMSAMAXAAMXAMXAXXMMXMAXSMSASASXSMSMXAMASXAMASMSMMSAMAXAMMSSMMSAMMXSMSAMXASAMXAAAMASXMSSS 129 | XAXSMMXXSXSXSSSXSAMXMXMASMXMMASASXMXXAASMMSMSXSAAMAMXAXXMXSMMMSXSAASAMAMSMMMASAMMMASAAASXMASMXMASXXAXSAMASMXMAMAXMSXSAMMMMSXMMMSSSMMSAAAAAXM 130 | SMSMMASXMAMSAAMAMMXXXAMXXMASMASAMXAASMSMAXSXSAMMSSMMXSXASAMXSXSAXMXMAXSAAXAMXMAMXAAMMMMSAMXXXAMAXASMMSXSAMXSMXSSMMAXMASASASXXAAXAMXMMMSMMMSS 131 | MXMAAAMAMAMMMMMAMMAMSASAMXXMMXSAXMMMMMAMSMMAMXMAMMMSXAXXMASAXMXMMXASAMXSXMASXMASAMXSXXXSAMXXSXSSSMMAXMAXAMAXMXXMAMXSMAMXMAMMSMSMSMASXMMAMAAX 132 | SASMMXSXMAMMXMMXSMAXSAMMMMSXMASMSMSMMSAMXAMAMAMMXAASMMAMMXMAMMASMXXXXXMASMAMXXAXXXAXXXAXXAXMMAAMAMXXMASMSMXMAMXSAMMXMAMXMAMAAAAXXSASAMMAMMSS 133 | SASMSAAMAXXMAXXSAMXMMMMASAMAMASXAAAAAMAXSAMXXXSASMMSASMSSSMMASASMASMXXMAXMAMAMMSMMSSSSMMSSXMMSMMXMASAAXAMASAMMXSASAASASASMSSMSMXAMXXMMXASXMA 134 | MAMAMMSAAMMSASXAASXSAXSASXSAMMXXMSMSMSAMSAMMSMSASAAMXMAAXXAXAXAMXAAMAMMMMSAMSMMAAXAAXXAAAXASAMAMAMXSMMMAMAMMXSXSAMMXXMXASAAMXMASXSXMASXXSMSS 135 | MAMXMXAXXAXAAAMSAMXSAMMASASMMSXXXAXXXMAMSXMAAAMASMMSSMMMMSSMSSSXMAMSASASXSAAAAMSMMMXMMMMSSXMASMMAXMXAXSXMASXSMAMAXMSXMSAMMMSSMAXMAMSASMASAMX 136 | SMSSXXXMMSXMSMAMASMXXAMXMXMAASMSSMSXMAXXMMMSSSMAMXAXAXXMXAXXAAAXXXMSXSASXSMMXSMAXXSMSAMXAMAMAMMMSSSMMMXAMASXAASMSMAMAMMAMXAAAMASMSMMASMSMMXA 137 | MMAMAMAMAMAAXXXSXMAMMSAMXAMMMMAXXAAMASXSMAMMAMMMMMMMXMXSMMXMMXMXMMMMAMMMXXXMAXMMMXSASASMASAMXXSAXXAASXSSMAXXASMAXMXMAMSAMMMMSMMXAXAMAMXXASMS 138 | SMXSASAMSSMMSSMMMMAMSXMASMSMSMSMMMMMMMAASMMMXMASMMMSXSAMAXSASAXMAAASXSSSMSMMMSAMSAMMMAMXMXMASAMMSSSMMMMMMSSMSAMXMMXSSXSMSXSAAXMMSMMMSSMSMMAA 139 | AAASMSASAXAAAXAAXSASXAXMASAXMAMAAAXAAMSMMXASAMMSAASAAMASAMSAMXMASXMSAAASAMXAASAMMAAXMXMASAMXMAAXMAMAAAAAMMAMXAAAAXAAXAMAMAMSSMXXMASAAAMMAMSM 140 | MMMSAMXMXSXMSSMMMSXSMSMAXSSMMXMSSSSMSMMXXSSSMSXSMMMXSSMMMMMAMMMMXSMMMMMMSMSMMSMMSAMXAXSXSMXXASXXMASXSSSSSSXMSSMASMSSMMMMMXMAXMSMSSMMSSMSAMXX 141 | -------------------------------------------------------------------------------- /1/input.txt: -------------------------------------------------------------------------------- 1 | 39472 15292 2 | 41795 28867 3 | 66901 41393 4 | 49097 61173 5 | 56143 52888 6 | 95316 12022 7 | 12479 41393 8 | 44746 54563 9 | 75154 45829 10 | 11303 70489 11 | 34369 42303 12 | 19787 10318 13 | 57355 54563 14 | 17649 78041 15 | 78041 90912 16 | 42025 70838 17 | 83962 27416 18 | 58852 60140 19 | 10900 78041 20 | 81682 86361 21 | 73646 59340 22 | 69559 52888 23 | 11792 37020 24 | 16986 60140 25 | 64640 99547 26 | 72905 79616 27 | 49132 68436 28 | 60004 25440 29 | 83058 36384 30 | 56218 51713 31 | 42752 85502 32 | 53210 25564 33 | 97525 46775 34 | 85200 81707 35 | 93134 17917 36 | 92436 29703 37 | 43282 26102 38 | 56561 17917 39 | 38517 60140 40 | 21394 11537 41 | 22870 56891 42 | 91081 75176 43 | 58106 60279 44 | 31335 96310 45 | 32992 60140 46 | 38454 54563 47 | 33694 74901 48 | 18307 90620 49 | 34138 37678 50 | 30210 35783 51 | 25191 15227 52 | 47869 11537 53 | 51431 99893 54 | 59221 57034 55 | 67820 46594 56 | 25286 65918 57 | 49630 64107 58 | 49512 23996 59 | 75253 19155 60 | 91755 44731 61 | 84331 14322 62 | 10777 45829 63 | 44531 31325 64 | 44387 44368 65 | 22092 78828 66 | 62647 74552 67 | 73962 61652 68 | 70872 38663 69 | 41669 17917 70 | 36394 39664 71 | 86666 32126 72 | 94564 71364 73 | 86975 65813 74 | 80625 26674 75 | 60822 44368 76 | 70000 88293 77 | 22902 68436 78 | 14424 12070 79 | 49549 76372 80 | 98327 15292 81 | 16200 41393 82 | 75176 59283 83 | 87545 56534 84 | 52574 42041 85 | 89909 82203 86 | 59362 25776 87 | 31396 65918 88 | 23097 67302 89 | 16639 73771 90 | 88531 61423 91 | 96093 57034 92 | 66284 27416 93 | 66985 80547 94 | 49619 82916 95 | 15828 96310 96 | 64988 54786 97 | 21667 65918 98 | 74847 53532 99 | 80596 74328 100 | 63472 77634 101 | 38623 37355 102 | 38050 77634 103 | 57186 77092 104 | 32231 96310 105 | 53056 85502 106 | 99616 27723 107 | 44092 39113 108 | 28177 73886 109 | 43152 71052 110 | 63504 85873 111 | 82199 13631 112 | 16827 95980 113 | 12662 94593 114 | 15202 19317 115 | 11297 44368 116 | 75181 23789 117 | 82671 11537 118 | 27416 28613 119 | 32617 17917 120 | 32093 56597 121 | 43092 81496 122 | 98048 38603 123 | 33815 94399 124 | 49197 75323 125 | 72360 38805 126 | 12218 57034 127 | 79339 25820 128 | 55769 11065 129 | 24748 33341 130 | 73771 85800 131 | 33005 51346 132 | 53234 37678 133 | 35799 99893 134 | 67715 72495 135 | 39385 60140 136 | 80517 67721 137 | 23083 27416 138 | 35643 34652 139 | 20015 85084 140 | 54047 68436 141 | 90892 27416 142 | 83304 45829 143 | 52334 42025 144 | 22737 48971 145 | 44841 85502 146 | 54440 88682 147 | 59337 44466 148 | 86226 44368 149 | 79865 23789 150 | 92432 25313 151 | 16492 46594 152 | 77422 38673 153 | 93057 23789 154 | 27428 87965 155 | 91111 85502 156 | 16734 96310 157 | 92704 91204 158 | 71080 32126 159 | 79064 38805 160 | 21521 98343 161 | 14447 42025 162 | 88341 78869 163 | 13881 64574 164 | 98689 57609 165 | 96688 20324 166 | 83204 66011 167 | 30155 78041 168 | 79383 57771 169 | 66777 42501 170 | 79365 29078 171 | 38302 85502 172 | 59476 41393 173 | 12235 97187 174 | 79638 13709 175 | 12734 77092 176 | 26482 96310 177 | 53709 38414 178 | 78983 68436 179 | 56875 32126 180 | 34652 79445 181 | 47807 44368 182 | 20838 37678 183 | 77644 42695 184 | 91040 34471 185 | 19857 38805 186 | 37257 19299 187 | 84323 45829 188 | 45765 27807 189 | 80010 17917 190 | 50993 17917 191 | 87739 17917 192 | 21074 83774 193 | 21486 65838 194 | 85062 65414 195 | 64425 60832 196 | 46875 72398 197 | 77011 94090 198 | 16732 14509 199 | 63302 48158 200 | 96936 81496 201 | 54563 77092 202 | 32946 37678 203 | 57558 40189 204 | 77371 20945 205 | 70922 27416 206 | 34893 44368 207 | 20064 61173 208 | 42298 26409 209 | 50286 87965 210 | 37070 28219 211 | 25648 15174 212 | 72425 49204 213 | 70118 23789 214 | 43832 54563 215 | 40026 23789 216 | 20922 60128 217 | 85906 96310 218 | 62704 75007 219 | 14096 81496 220 | 27162 56750 221 | 93880 67721 222 | 61173 16445 223 | 73917 75176 224 | 95980 77092 225 | 89429 38668 226 | 95730 32268 227 | 99893 54563 228 | 87309 76137 229 | 74425 11641 230 | 96310 90444 231 | 76188 96310 232 | 50165 37678 233 | 80206 36550 234 | 64022 73771 235 | 65510 95980 236 | 71848 87965 237 | 79418 95980 238 | 52569 85502 239 | 89371 99893 240 | 68344 73771 241 | 19148 81496 242 | 83338 34652 243 | 15292 64493 244 | 50026 85502 245 | 46923 42025 246 | 65318 36031 247 | 84727 65918 248 | 12709 19317 249 | 49025 13484 250 | 45423 65918 251 | 71561 56750 252 | 70652 95980 253 | 49677 67721 254 | 87744 15824 255 | 68616 77092 256 | 56750 98610 257 | 27368 15292 258 | 96635 72495 259 | 82682 86884 260 | 49305 22888 261 | 57058 76493 262 | 71872 15292 263 | 37337 99893 264 | 49141 27416 265 | 58652 59221 266 | 68121 59924 267 | 15655 27416 268 | 62826 52888 269 | 21376 13478 270 | 90582 73415 271 | 15256 83645 272 | 75807 77837 273 | 25162 67721 274 | 20898 69247 275 | 92171 40775 276 | 32584 57034 277 | 68026 65918 278 | 89047 81496 279 | 77634 16657 280 | 76187 67862 281 | 34375 68115 282 | 17970 36680 283 | 73342 11537 284 | 88262 68436 285 | 85191 41393 286 | 13235 74763 287 | 84522 26546 288 | 24204 83774 289 | 50892 44388 290 | 73708 45829 291 | 20453 35352 292 | 17601 54563 293 | 72728 31817 294 | 53568 77092 295 | 51327 87796 296 | 32562 45829 297 | 57528 73771 298 | 65476 62414 299 | 87452 38805 300 | 27996 67569 301 | 20039 42216 302 | 46643 62818 303 | 52888 37678 304 | 78679 89549 305 | 40854 47456 306 | 83512 83774 307 | 40653 19984 308 | 15653 87965 309 | 24606 28934 310 | 31608 43847 311 | 15608 87965 312 | 44105 78041 313 | 51928 21069 314 | 33215 11537 315 | 13283 56032 316 | 99082 34188 317 | 52093 96310 318 | 61555 22523 319 | 42163 59313 320 | 70384 21347 321 | 68901 14849 322 | 45947 68914 323 | 43211 17917 324 | 49277 42695 325 | 34180 83406 326 | 92846 50278 327 | 79167 38805 328 | 20193 77092 329 | 20458 44368 330 | 32126 81496 331 | 66236 83382 332 | 12738 28293 333 | 44729 99893 334 | 69671 86850 335 | 83285 58736 336 | 56016 96747 337 | 99469 68436 338 | 93215 19776 339 | 25585 44206 340 | 53706 83774 341 | 87427 59088 342 | 46185 56750 343 | 36420 42025 344 | 75640 12667 345 | 62041 58764 346 | 29681 37678 347 | 52824 41716 348 | 89079 32126 349 | 99760 84744 350 | 96415 38301 351 | 63171 23789 352 | 29436 16140 353 | 83447 73771 354 | 75739 11537 355 | 82453 65918 356 | 84569 65918 357 | 21534 77172 358 | 12101 74770 359 | 77859 42695 360 | 52861 85502 361 | 35871 21725 362 | 42076 39498 363 | 27769 65918 364 | 42055 60140 365 | 15647 46042 366 | 71930 43847 367 | 64803 48360 368 | 57132 72709 369 | 86112 88764 370 | 32257 35904 371 | 65077 15267 372 | 26467 43122 373 | 16903 22211 374 | 90305 42025 375 | 40337 91440 376 | 88470 45958 377 | 25305 98303 378 | 96579 89051 379 | 79525 73920 380 | 41786 95980 381 | 67337 20284 382 | 18437 60448 383 | 24149 18786 384 | 90518 60165 385 | 61117 68317 386 | 47404 89642 387 | 70455 43847 388 | 42695 30003 389 | 32127 63953 390 | 71650 35205 391 | 25690 60128 392 | 99806 68436 393 | 46357 39579 394 | 74131 46594 395 | 47895 47800 396 | 26468 43847 397 | 41393 15292 398 | 70792 96310 399 | 64983 72495 400 | 14730 75176 401 | 67663 97315 402 | 79374 31240 403 | 69026 83411 404 | 22680 23789 405 | 71431 27416 406 | 77808 21074 407 | 22211 70174 408 | 98616 17996 409 | 92938 38805 410 | 89127 85502 411 | 51477 87965 412 | 90677 99208 413 | 59730 77092 414 | 98858 84528 415 | 30238 83774 416 | 75429 87965 417 | 27930 37678 418 | 14348 52888 419 | 16626 68436 420 | 71073 65918 421 | 41699 44368 422 | 97130 26865 423 | 17234 64748 424 | 19638 73771 425 | 32507 38805 426 | 70053 43714 427 | 74550 11537 428 | 32214 89987 429 | 58219 74181 430 | 94952 15292 431 | 33006 61173 432 | 47639 45559 433 | 40240 72346 434 | 25466 73771 435 | 91357 54563 436 | 34918 44368 437 | 36904 57034 438 | 82039 60128 439 | 83050 27542 440 | 33904 36886 441 | 49071 77634 442 | 29378 68436 443 | 31555 17917 444 | 10652 44368 445 | 38017 98107 446 | 61056 61173 447 | 14038 22737 448 | 23926 14836 449 | 87700 17917 450 | 27680 67320 451 | 17606 20744 452 | 71665 38805 453 | 73591 90610 454 | 75931 23789 455 | 45829 13721 456 | 11852 62648 457 | 82002 43847 458 | 18278 11819 459 | 76392 78041 460 | 12128 92298 461 | 39019 24002 462 | 29212 78830 463 | 70049 96310 464 | 97782 75559 465 | 93518 42025 466 | 24972 68164 467 | 79331 82197 468 | 53946 63209 469 | 29692 36006 470 | 90018 47044 471 | 80392 94377 472 | 36656 49166 473 | 71114 96458 474 | 58048 34652 475 | 41279 38805 476 | 52537 41393 477 | 33546 39103 478 | 70780 60140 479 | 36455 62146 480 | 87797 11284 481 | 21614 83774 482 | 87965 65918 483 | 84530 87965 484 | 31327 60140 485 | 18367 73575 486 | 64436 15292 487 | 20247 99322 488 | 33510 34652 489 | 38591 60472 490 | 26569 34652 491 | 95619 32751 492 | 75902 15292 493 | 13377 27416 494 | 67381 85502 495 | 33665 27308 496 | 49639 27416 497 | 41023 11537 498 | 25245 21668 499 | 88275 89008 500 | 86587 90992 501 | 77709 68436 502 | 49679 89471 503 | 84751 42695 504 | 89970 60140 505 | 35926 60128 506 | 29813 42025 507 | 37865 72495 508 | 16156 60194 509 | 27868 76472 510 | 77973 75176 511 | 22695 79830 512 | 58595 56952 513 | 95239 96639 514 | 71032 95980 515 | 91716 75176 516 | 78993 43847 517 | 99915 98469 518 | 97751 11537 519 | 85502 60039 520 | 50198 68602 521 | 63219 28654 522 | 65281 95499 523 | 59926 63079 524 | 90344 17917 525 | 84508 68436 526 | 11497 53277 527 | 23204 60128 528 | 23323 44368 529 | 59901 82429 530 | 40780 54563 531 | 86228 77092 532 | 15570 92416 533 | 30888 63270 534 | 13324 60221 535 | 69364 15292 536 | 95308 87722 537 | 60190 92919 538 | 99873 76986 539 | 14117 75176 540 | 93167 42025 541 | 31214 26740 542 | 63953 75176 543 | 16764 87965 544 | 53411 18481 545 | 23762 20430 546 | 62056 95980 547 | 72495 72495 548 | 77818 55142 549 | 87870 41393 550 | 38763 72435 551 | 95817 27379 552 | 73572 71492 553 | 86836 15292 554 | 67571 55135 555 | 84424 68436 556 | 38842 33961 557 | 25252 99893 558 | 52969 60128 559 | 75457 98187 560 | 15405 56750 561 | 85810 34652 562 | 52562 40472 563 | 26458 87835 564 | 57049 12947 565 | 92406 43679 566 | 71405 15292 567 | 13004 24537 568 | 26183 19467 569 | 57431 44368 570 | 49655 87965 571 | 61580 52775 572 | 50127 68060 573 | 22900 37678 574 | 82172 73771 575 | 64722 44368 576 | 20817 27416 577 | 29505 94508 578 | 83118 42025 579 | 11609 73771 580 | 91300 50758 581 | 12871 69985 582 | 76642 85502 583 | 59612 45829 584 | 22493 21789 585 | 97865 28573 586 | 38509 42695 587 | 62726 22786 588 | 97473 60140 589 | 11612 72495 590 | 22478 94640 591 | 78811 58753 592 | 57737 91274 593 | 96232 94576 594 | 97572 81557 595 | 82900 32111 596 | 19759 70364 597 | 72856 63532 598 | 96772 39170 599 | 23639 34568 600 | 51369 85502 601 | 57419 77634 602 | 26364 26509 603 | 75781 74064 604 | 18008 75570 605 | 90125 23030 606 | 28428 38805 607 | 33799 68436 608 | 81411 99893 609 | 32078 27808 610 | 79975 83566 611 | 52755 69516 612 | 57264 49914 613 | 64517 17917 614 | 73224 32126 615 | 35194 46594 616 | 56603 22108 617 | 19967 84231 618 | 77598 41393 619 | 48288 85502 620 | 59468 85296 621 | 47471 60128 622 | 92962 87965 623 | 33647 54992 624 | 40482 83774 625 | 54705 45831 626 | 68436 40140 627 | 83774 16001 628 | 50181 56750 629 | 46534 37678 630 | 73109 83774 631 | 14691 72139 632 | 45203 18499 633 | 93717 41393 634 | 90942 61173 635 | 93639 96310 636 | 43230 81496 637 | 35162 81496 638 | 99850 74025 639 | 86446 27902 640 | 83395 77092 641 | 34567 42695 642 | 38120 75176 643 | 43847 15292 644 | 18314 93498 645 | 35219 43847 646 | 57034 68631 647 | 65653 31365 648 | 63354 20793 649 | 57162 43136 650 | 82266 44368 651 | 12486 98890 652 | 95955 63953 653 | 84375 34652 654 | 86891 38805 655 | 30860 34652 656 | 39153 72495 657 | 60323 23789 658 | 54199 15292 659 | 56072 56750 660 | 93245 57078 661 | 76450 43847 662 | 59767 54737 663 | 68416 85814 664 | 37507 52294 665 | 95599 37678 666 | 26535 82789 667 | 24134 75314 668 | 44403 73771 669 | 98864 37678 670 | 65407 46261 671 | 79131 19317 672 | 13530 17917 673 | 65218 14610 674 | 25382 22670 675 | 92220 75176 676 | 85985 59377 677 | 70302 24147 678 | 64121 64263 679 | 67721 96310 680 | 23443 43847 681 | 84136 34307 682 | 63440 59221 683 | 53644 63953 684 | 55702 45127 685 | 38805 68295 686 | 85325 50302 687 | 23500 28669 688 | 69804 52427 689 | 84397 22809 690 | 27004 85502 691 | 37093 29693 692 | 96090 45829 693 | 94277 65918 694 | 75959 20621 695 | 14695 69851 696 | 21277 99893 697 | 25052 65918 698 | 62281 23789 699 | 28206 11537 700 | 61780 38805 701 | 43950 43399 702 | 77501 40253 703 | 73366 47747 704 | 24723 53159 705 | 18309 29185 706 | 88351 87965 707 | 32451 87965 708 | 27961 82138 709 | 15868 23052 710 | 83064 81496 711 | 68951 11537 712 | 97293 50439 713 | 56831 57301 714 | 80363 47574 715 | 33684 60128 716 | 10701 20752 717 | 42064 36397 718 | 69486 96133 719 | 47015 99893 720 | 29202 42695 721 | 82115 23789 722 | 95165 52036 723 | 57418 47142 724 | 67506 38805 725 | 58868 87965 726 | 74165 44368 727 | 30214 83774 728 | 83623 17917 729 | 17331 68436 730 | 30459 14907 731 | 67434 65918 732 | 40727 90836 733 | 61581 93472 734 | 33819 63953 735 | 49763 86280 736 | 97486 67721 737 | 26812 33295 738 | 12336 43847 739 | 18378 73771 740 | 84937 99191 741 | 35224 65918 742 | 49694 27416 743 | 49529 78672 744 | 18201 35773 745 | 74497 46594 746 | 68037 34652 747 | 36953 68436 748 | 85485 92527 749 | 88430 99893 750 | 71498 83659 751 | 60128 23848 752 | 96672 27416 753 | 64061 79790 754 | 59825 54563 755 | 74366 68436 756 | 41534 11537 757 | 87667 21591 758 | 10150 75176 759 | 44315 45829 760 | 14678 42695 761 | 72111 96310 762 | 58956 23680 763 | 69294 42025 764 | 20619 57034 765 | 37843 27416 766 | 29529 27615 767 | 19702 83774 768 | 32072 14710 769 | 50568 11537 770 | 51287 85502 771 | 94333 32126 772 | 18585 34938 773 | 23789 61804 774 | 46594 77092 775 | 79106 26759 776 | 41356 96103 777 | 10594 81496 778 | 11595 59026 779 | 98318 49115 780 | 13672 15783 781 | 13257 42025 782 | 72928 26741 783 | 93735 52496 784 | 53663 34203 785 | 58872 52888 786 | 65915 99893 787 | 75718 58779 788 | 38451 39438 789 | 35425 27416 790 | 12378 93586 791 | 91509 97927 792 | 56599 27778 793 | 44971 57034 794 | 21719 65918 795 | 20336 93128 796 | 18110 46594 797 | 99088 60128 798 | 85957 97300 799 | 32492 42695 800 | 43009 96238 801 | 70212 31422 802 | 34312 11537 803 | 61916 42723 804 | 51817 11537 805 | 72892 90401 806 | 32753 99893 807 | 54502 62779 808 | 39127 48368 809 | 13434 51199 810 | 44413 20326 811 | 32900 68436 812 | 65505 83774 813 | 83501 87965 814 | 50906 36556 815 | 61014 44368 816 | 95454 75176 817 | 77008 41393 818 | 58087 75176 819 | 69905 93067 820 | 37788 59221 821 | 31700 42326 822 | 78758 15292 823 | 60428 95980 824 | 82953 34652 825 | 57964 63113 826 | 11094 96310 827 | 64195 19317 828 | 52961 80659 829 | 36007 54563 830 | 75733 54563 831 | 25387 76167 832 | 11537 65918 833 | 60140 17917 834 | 45111 15292 835 | 99999 67189 836 | 63747 11537 837 | 20625 43214 838 | 92339 10979 839 | 24864 38805 840 | 26017 79424 841 | 57414 95980 842 | 63707 17917 843 | 88020 54563 844 | 37973 29335 845 | 30076 87838 846 | 52584 65918 847 | 49038 25377 848 | 61582 83162 849 | 21115 86682 850 | 67207 68436 851 | 74877 15341 852 | 44094 99893 853 | 41244 26837 854 | 84493 97732 855 | 61793 97981 856 | 28185 67721 857 | 18529 23789 858 | 53238 80962 859 | 56830 34020 860 | 42491 37938 861 | 44708 77092 862 | 54024 23873 863 | 81496 20953 864 | 23812 37678 865 | 86480 44368 866 | 68399 47559 867 | 35185 75176 868 | 37233 33363 869 | 75966 83774 870 | 54671 15292 871 | 39056 21920 872 | 55159 60140 873 | 70822 21845 874 | 43695 56792 875 | 46035 37430 876 | 44197 81496 877 | 72777 99476 878 | 36610 97933 879 | 69757 15287 880 | 87912 83774 881 | 34679 83581 882 | 34931 15292 883 | 93254 71634 884 | 64175 45693 885 | 87296 75176 886 | 94232 17596 887 | 93856 68436 888 | 44368 15292 889 | 93430 11537 890 | 51742 31698 891 | 37653 85502 892 | 83663 94306 893 | 28522 93651 894 | 94057 22959 895 | 64826 94855 896 | 42079 99893 897 | 79925 26385 898 | 74592 25770 899 | 20675 72495 900 | 65728 50739 901 | 92462 59954 902 | 23381 77025 903 | 44104 65121 904 | 48953 81496 905 | 37678 46594 906 | 63422 89239 907 | 49735 35632 908 | 85048 71538 909 | 19402 81496 910 | 86874 45829 911 | 73564 45829 912 | 74511 64584 913 | 17917 29104 914 | 53604 13639 915 | 13699 12819 916 | 42901 71544 917 | 64254 65918 918 | 42770 45829 919 | 96114 44368 920 | 93782 56750 921 | 57646 90086 922 | 46334 49872 923 | 63175 54563 924 | 98847 47091 925 | 15551 22124 926 | 91269 83774 927 | 42322 96310 928 | 99400 32126 929 | 29079 65918 930 | 51358 42025 931 | 57109 22211 932 | 75643 19675 933 | 50779 42100 934 | 68902 61940 935 | 91483 15861 936 | 72751 95639 937 | 22226 75719 938 | 30515 37678 939 | 44941 94189 940 | 60907 78041 941 | 96158 41829 942 | 58058 99893 943 | 20085 37678 944 | 78405 88266 945 | 47918 87965 946 | 76270 42402 947 | 60874 87102 948 | 74798 23789 949 | 89867 43847 950 | 21013 95168 951 | 50155 73771 952 | 96922 60329 953 | 73275 54563 954 | 85392 98615 955 | 69178 91775 956 | 26665 49635 957 | 41944 41525 958 | 48235 82994 959 | 74950 61557 960 | 60869 73771 961 | 19317 15074 962 | 28433 68991 963 | 27814 90764 964 | 62468 41393 965 | 71778 92876 966 | 19383 57314 967 | 74225 72460 968 | 45257 55015 969 | 37807 73771 970 | 66601 11537 971 | 32475 68436 972 | 65861 35241 973 | 65154 35982 974 | 32341 11537 975 | 43126 99893 976 | 81648 91534 977 | 93016 63953 978 | 37226 43847 979 | 24429 17917 980 | 35226 99893 981 | 95560 75176 982 | 77626 32126 983 | 16841 37678 984 | 94072 18811 985 | 49716 15715 986 | 69498 94453 987 | 77092 88716 988 | 51658 41708 989 | 99436 76299 990 | 56787 27416 991 | 53173 83774 992 | 42871 37678 993 | 39206 43847 994 | 52384 37678 995 | 19944 42936 996 | 74914 19845 997 | 65918 67721 998 | 38226 56750 999 | 86853 74909 1000 | 18560 15292 1001 | -------------------------------------------------------------------------------- /5/input.txt: -------------------------------------------------------------------------------- 1 | 66|19 2 | 99|87 3 | 99|55 4 | 49|28 5 | 49|64 6 | 49|81 7 | 43|81 8 | 43|55 9 | 43|13 10 | 43|39 11 | 18|34 12 | 18|51 13 | 18|66 14 | 18|53 15 | 18|65 16 | 83|87 17 | 83|74 18 | 83|56 19 | 83|26 20 | 83|17 21 | 83|47 22 | 84|64 23 | 84|81 24 | 84|43 25 | 84|61 26 | 84|57 27 | 84|66 28 | 84|12 29 | 74|14 30 | 74|88 31 | 74|64 32 | 74|66 33 | 74|15 34 | 74|99 35 | 74|49 36 | 74|52 37 | 87|26 38 | 87|38 39 | 87|57 40 | 87|18 41 | 87|84 42 | 87|43 43 | 87|28 44 | 87|65 45 | 87|22 46 | 64|45 47 | 64|14 48 | 64|77 49 | 64|55 50 | 64|94 51 | 64|29 52 | 64|56 53 | 64|26 54 | 64|25 55 | 64|22 56 | 88|37 57 | 88|77 58 | 88|55 59 | 88|76 60 | 88|64 61 | 88|35 62 | 88|57 63 | 88|99 64 | 88|43 65 | 88|13 66 | 88|19 67 | 19|56 68 | 19|76 69 | 19|37 70 | 19|14 71 | 19|99 72 | 19|64 73 | 19|83 74 | 19|43 75 | 19|24 76 | 19|15 77 | 19|35 78 | 19|77 79 | 48|58 80 | 48|39 81 | 48|15 82 | 48|81 83 | 48|75 84 | 48|29 85 | 48|13 86 | 48|35 87 | 48|45 88 | 48|12 89 | 48|61 90 | 48|14 91 | 48|37 92 | 53|14 93 | 53|42 94 | 53|15 95 | 53|83 96 | 53|25 97 | 53|12 98 | 53|77 99 | 53|58 100 | 53|76 101 | 53|48 102 | 53|39 103 | 53|37 104 | 53|56 105 | 53|55 106 | 29|62 107 | 29|97 108 | 29|88 109 | 29|65 110 | 29|17 111 | 29|52 112 | 29|42 113 | 29|38 114 | 29|51 115 | 29|28 116 | 29|22 117 | 29|47 118 | 29|87 119 | 29|84 120 | 29|45 121 | 14|24 122 | 14|62 123 | 14|87 124 | 14|56 125 | 14|65 126 | 14|47 127 | 14|45 128 | 14|18 129 | 14|42 130 | 14|75 131 | 14|17 132 | 14|92 133 | 14|58 134 | 14|84 135 | 14|25 136 | 14|83 137 | 77|13 138 | 77|17 139 | 77|22 140 | 77|38 141 | 77|94 142 | 77|58 143 | 77|75 144 | 77|24 145 | 77|49 146 | 77|92 147 | 77|83 148 | 77|84 149 | 77|87 150 | 77|56 151 | 77|18 152 | 77|47 153 | 77|45 154 | 45|74 155 | 45|26 156 | 45|97 157 | 45|18 158 | 45|75 159 | 45|57 160 | 45|38 161 | 45|49 162 | 45|19 163 | 45|51 164 | 45|94 165 | 45|62 166 | 45|28 167 | 45|92 168 | 45|34 169 | 45|88 170 | 45|87 171 | 45|84 172 | 24|26 173 | 24|88 174 | 24|42 175 | 24|22 176 | 24|65 177 | 24|34 178 | 24|17 179 | 24|62 180 | 24|97 181 | 24|94 182 | 24|47 183 | 24|28 184 | 24|52 185 | 24|49 186 | 24|38 187 | 24|29 188 | 24|84 189 | 24|18 190 | 24|75 191 | 35|25 192 | 35|38 193 | 35|14 194 | 35|18 195 | 35|26 196 | 35|87 197 | 35|97 198 | 35|24 199 | 35|22 200 | 35|58 201 | 35|65 202 | 35|94 203 | 35|29 204 | 35|47 205 | 35|56 206 | 35|76 207 | 35|45 208 | 35|37 209 | 35|62 210 | 35|77 211 | 62|48 212 | 62|88 213 | 62|81 214 | 62|49 215 | 62|97 216 | 62|15 217 | 62|99 218 | 62|51 219 | 62|84 220 | 62|53 221 | 62|61 222 | 62|65 223 | 62|34 224 | 62|66 225 | 62|64 226 | 62|28 227 | 62|92 228 | 62|74 229 | 62|38 230 | 62|57 231 | 62|19 232 | 39|25 233 | 39|22 234 | 39|13 235 | 39|62 236 | 39|35 237 | 39|24 238 | 39|58 239 | 39|56 240 | 39|14 241 | 39|94 242 | 39|87 243 | 39|77 244 | 39|47 245 | 39|26 246 | 39|18 247 | 39|76 248 | 39|83 249 | 39|42 250 | 39|75 251 | 39|97 252 | 39|29 253 | 39|37 254 | 92|43 255 | 92|28 256 | 92|55 257 | 92|99 258 | 92|49 259 | 92|81 260 | 92|34 261 | 92|19 262 | 92|88 263 | 92|66 264 | 92|15 265 | 92|39 266 | 92|51 267 | 92|17 268 | 92|48 269 | 92|57 270 | 92|74 271 | 92|84 272 | 92|61 273 | 92|64 274 | 92|52 275 | 92|35 276 | 92|12 277 | 81|29 278 | 81|55 279 | 81|58 280 | 81|25 281 | 81|39 282 | 81|35 283 | 81|76 284 | 81|77 285 | 81|56 286 | 81|12 287 | 81|24 288 | 81|83 289 | 81|22 290 | 81|64 291 | 81|13 292 | 81|75 293 | 81|45 294 | 81|15 295 | 81|99 296 | 81|47 297 | 81|37 298 | 81|87 299 | 81|42 300 | 81|14 301 | 15|77 302 | 15|22 303 | 15|94 304 | 15|56 305 | 15|47 306 | 15|76 307 | 15|24 308 | 15|83 309 | 15|75 310 | 15|18 311 | 15|14 312 | 15|29 313 | 15|58 314 | 15|12 315 | 15|13 316 | 15|64 317 | 15|39 318 | 15|45 319 | 15|87 320 | 15|37 321 | 15|35 322 | 15|25 323 | 15|55 324 | 15|42 325 | 28|88 326 | 28|35 327 | 28|53 328 | 28|57 329 | 28|76 330 | 28|12 331 | 28|81 332 | 28|77 333 | 28|14 334 | 28|19 335 | 28|48 336 | 28|39 337 | 28|61 338 | 28|99 339 | 28|83 340 | 28|66 341 | 28|55 342 | 28|34 343 | 28|51 344 | 28|43 345 | 28|15 346 | 28|37 347 | 28|64 348 | 28|25 349 | 37|42 350 | 37|26 351 | 37|77 352 | 37|47 353 | 37|92 354 | 37|62 355 | 37|22 356 | 37|45 357 | 37|94 358 | 37|25 359 | 37|56 360 | 37|24 361 | 37|58 362 | 37|14 363 | 37|18 364 | 37|87 365 | 37|38 366 | 37|17 367 | 37|13 368 | 37|75 369 | 37|83 370 | 37|97 371 | 37|65 372 | 37|29 373 | 38|12 374 | 38|57 375 | 38|81 376 | 38|43 377 | 38|34 378 | 38|61 379 | 38|17 380 | 38|28 381 | 38|49 382 | 38|55 383 | 38|88 384 | 38|51 385 | 38|53 386 | 38|39 387 | 38|92 388 | 38|15 389 | 38|84 390 | 38|19 391 | 38|64 392 | 38|52 393 | 38|48 394 | 38|99 395 | 38|74 396 | 38|66 397 | 56|17 398 | 56|38 399 | 56|13 400 | 56|22 401 | 56|87 402 | 56|65 403 | 56|42 404 | 56|74 405 | 56|75 406 | 56|49 407 | 56|94 408 | 56|84 409 | 56|28 410 | 56|26 411 | 56|62 412 | 56|52 413 | 56|92 414 | 56|18 415 | 56|24 416 | 56|97 417 | 56|29 418 | 56|45 419 | 56|47 420 | 56|58 421 | 25|77 422 | 25|29 423 | 25|62 424 | 25|58 425 | 25|47 426 | 25|56 427 | 25|42 428 | 25|87 429 | 25|65 430 | 25|75 431 | 25|92 432 | 25|97 433 | 25|13 434 | 25|83 435 | 25|84 436 | 25|94 437 | 25|38 438 | 25|24 439 | 25|74 440 | 25|22 441 | 25|26 442 | 25|45 443 | 25|17 444 | 25|18 445 | 47|18 446 | 47|62 447 | 47|51 448 | 47|28 449 | 47|52 450 | 47|97 451 | 47|88 452 | 47|22 453 | 47|49 454 | 47|43 455 | 47|92 456 | 47|26 457 | 47|17 458 | 47|19 459 | 47|74 460 | 47|66 461 | 47|87 462 | 47|53 463 | 47|38 464 | 47|84 465 | 47|94 466 | 47|57 467 | 47|34 468 | 47|65 469 | 55|62 470 | 55|42 471 | 55|87 472 | 55|18 473 | 55|22 474 | 55|24 475 | 55|76 476 | 55|75 477 | 55|58 478 | 55|35 479 | 55|94 480 | 55|39 481 | 55|12 482 | 55|14 483 | 55|13 484 | 55|47 485 | 55|29 486 | 55|37 487 | 55|45 488 | 55|56 489 | 55|26 490 | 55|77 491 | 55|25 492 | 55|83 493 | 17|74 494 | 17|43 495 | 17|84 496 | 17|28 497 | 17|15 498 | 17|51 499 | 17|35 500 | 17|57 501 | 17|52 502 | 17|12 503 | 17|39 504 | 17|99 505 | 17|66 506 | 17|88 507 | 17|49 508 | 17|48 509 | 17|55 510 | 17|64 511 | 17|61 512 | 17|81 513 | 17|76 514 | 17|34 515 | 17|19 516 | 17|53 517 | 12|42 518 | 12|37 519 | 12|75 520 | 12|47 521 | 12|14 522 | 12|18 523 | 12|25 524 | 12|35 525 | 12|13 526 | 12|22 527 | 12|83 528 | 12|45 529 | 12|56 530 | 12|76 531 | 12|26 532 | 12|87 533 | 12|29 534 | 12|65 535 | 12|24 536 | 12|94 537 | 12|62 538 | 12|58 539 | 12|77 540 | 12|97 541 | 52|25 542 | 52|35 543 | 52|64 544 | 52|77 545 | 52|53 546 | 52|28 547 | 52|57 548 | 52|61 549 | 52|14 550 | 52|66 551 | 52|55 552 | 52|81 553 | 52|37 554 | 52|99 555 | 52|12 556 | 52|34 557 | 52|88 558 | 52|76 559 | 52|19 560 | 52|43 561 | 52|48 562 | 52|51 563 | 52|39 564 | 52|15 565 | 61|12 566 | 61|87 567 | 61|24 568 | 61|81 569 | 61|25 570 | 61|77 571 | 61|45 572 | 61|15 573 | 61|83 574 | 61|47 575 | 61|37 576 | 61|56 577 | 61|39 578 | 61|13 579 | 61|14 580 | 61|75 581 | 61|58 582 | 61|29 583 | 61|76 584 | 61|55 585 | 61|64 586 | 61|99 587 | 61|35 588 | 61|42 589 | 76|38 590 | 76|45 591 | 76|94 592 | 76|97 593 | 76|14 594 | 76|83 595 | 76|13 596 | 76|24 597 | 76|18 598 | 76|56 599 | 76|22 600 | 76|26 601 | 76|42 602 | 76|65 603 | 76|75 604 | 76|37 605 | 76|25 606 | 76|58 607 | 76|87 608 | 76|47 609 | 76|77 610 | 76|92 611 | 76|29 612 | 76|62 613 | 94|84 614 | 94|28 615 | 94|57 616 | 94|66 617 | 94|26 618 | 94|81 619 | 94|99 620 | 94|88 621 | 94|38 622 | 94|74 623 | 94|62 624 | 94|97 625 | 94|34 626 | 94|19 627 | 94|51 628 | 94|49 629 | 94|65 630 | 94|53 631 | 94|48 632 | 94|17 633 | 94|52 634 | 94|43 635 | 94|92 636 | 94|61 637 | 65|17 638 | 65|61 639 | 65|19 640 | 65|99 641 | 65|53 642 | 65|81 643 | 65|43 644 | 65|88 645 | 65|28 646 | 65|49 647 | 65|84 648 | 65|66 649 | 65|92 650 | 65|38 651 | 65|64 652 | 65|39 653 | 65|48 654 | 65|57 655 | 65|74 656 | 65|15 657 | 65|55 658 | 65|52 659 | 65|34 660 | 65|51 661 | 57|66 662 | 57|24 663 | 57|55 664 | 57|19 665 | 57|25 666 | 57|15 667 | 57|14 668 | 57|35 669 | 57|48 670 | 57|77 671 | 57|81 672 | 57|61 673 | 57|43 674 | 57|64 675 | 57|56 676 | 57|76 677 | 57|58 678 | 57|99 679 | 57|12 680 | 57|39 681 | 57|83 682 | 57|53 683 | 57|37 684 | 57|13 685 | 51|66 686 | 51|55 687 | 51|25 688 | 51|53 689 | 51|48 690 | 51|81 691 | 51|12 692 | 51|99 693 | 51|39 694 | 51|43 695 | 51|61 696 | 51|76 697 | 51|57 698 | 51|14 699 | 51|37 700 | 51|77 701 | 51|35 702 | 51|15 703 | 51|64 704 | 51|19 705 | 51|56 706 | 51|34 707 | 51|83 708 | 51|88 709 | 42|18 710 | 42|51 711 | 42|66 712 | 42|28 713 | 42|17 714 | 42|84 715 | 42|26 716 | 42|45 717 | 42|49 718 | 42|38 719 | 42|87 720 | 42|74 721 | 42|75 722 | 42|88 723 | 42|94 724 | 42|52 725 | 42|97 726 | 42|22 727 | 42|62 728 | 42|65 729 | 42|47 730 | 42|92 731 | 42|57 732 | 42|34 733 | 97|66 734 | 97|15 735 | 97|28 736 | 97|49 737 | 97|52 738 | 97|17 739 | 97|81 740 | 97|84 741 | 97|38 742 | 97|61 743 | 97|43 744 | 97|65 745 | 97|99 746 | 97|48 747 | 97|55 748 | 97|34 749 | 97|19 750 | 97|57 751 | 97|88 752 | 97|74 753 | 97|64 754 | 97|51 755 | 97|53 756 | 97|92 757 | 34|43 758 | 34|76 759 | 34|39 760 | 34|35 761 | 34|53 762 | 34|55 763 | 34|37 764 | 34|57 765 | 34|66 766 | 34|77 767 | 34|58 768 | 34|61 769 | 34|13 770 | 34|48 771 | 34|83 772 | 34|14 773 | 34|25 774 | 34|15 775 | 34|99 776 | 34|56 777 | 34|19 778 | 34|12 779 | 34|64 780 | 34|81 781 | 75|22 782 | 75|88 783 | 75|28 784 | 75|66 785 | 75|74 786 | 75|65 787 | 75|51 788 | 75|62 789 | 75|94 790 | 75|97 791 | 75|52 792 | 75|57 793 | 75|49 794 | 75|18 795 | 75|19 796 | 75|92 797 | 75|38 798 | 75|17 799 | 75|26 800 | 75|87 801 | 75|47 802 | 75|34 803 | 75|43 804 | 75|84 805 | 22|57 806 | 22|28 807 | 22|88 808 | 22|18 809 | 22|17 810 | 22|92 811 | 22|52 812 | 22|19 813 | 22|26 814 | 22|62 815 | 22|53 816 | 22|61 817 | 22|65 818 | 22|38 819 | 22|51 820 | 22|97 821 | 22|66 822 | 22|43 823 | 22|84 824 | 22|74 825 | 22|34 826 | 22|94 827 | 22|49 828 | 22|48 829 | 58|49 830 | 58|74 831 | 58|45 832 | 58|26 833 | 58|62 834 | 58|87 835 | 58|22 836 | 58|88 837 | 58|75 838 | 58|47 839 | 58|65 840 | 58|24 841 | 58|18 842 | 58|17 843 | 58|42 844 | 58|97 845 | 58|94 846 | 58|29 847 | 58|84 848 | 58|92 849 | 58|28 850 | 58|38 851 | 58|51 852 | 58|52 853 | 26|92 854 | 26|99 855 | 26|34 856 | 26|74 857 | 26|61 858 | 26|81 859 | 26|43 860 | 26|19 861 | 26|48 862 | 26|62 863 | 26|65 864 | 26|38 865 | 26|17 866 | 26|28 867 | 26|51 868 | 26|15 869 | 26|52 870 | 26|84 871 | 26|88 872 | 26|66 873 | 26|53 874 | 26|57 875 | 26|97 876 | 26|49 877 | 13|65 878 | 13|17 879 | 13|94 880 | 13|58 881 | 13|47 882 | 13|22 883 | 13|49 884 | 13|84 885 | 13|51 886 | 13|29 887 | 13|75 888 | 13|92 889 | 13|42 890 | 13|26 891 | 13|87 892 | 13|24 893 | 13|97 894 | 13|28 895 | 13|18 896 | 13|74 897 | 13|62 898 | 13|38 899 | 13|52 900 | 13|45 901 | 66|83 902 | 66|55 903 | 66|25 904 | 66|13 905 | 66|61 906 | 66|39 907 | 66|43 908 | 66|58 909 | 66|15 910 | 66|35 911 | 66|14 912 | 66|53 913 | 66|24 914 | 66|56 915 | 66|29 916 | 66|64 917 | 66|37 918 | 66|77 919 | 66|48 920 | 66|76 921 | 66|99 922 | 66|81 923 | 66|12 924 | 99|75 925 | 99|14 926 | 99|39 927 | 99|22 928 | 99|77 929 | 99|42 930 | 99|45 931 | 99|83 932 | 99|12 933 | 99|29 934 | 99|15 935 | 99|37 936 | 99|58 937 | 99|18 938 | 99|35 939 | 99|56 940 | 99|47 941 | 99|64 942 | 99|25 943 | 99|76 944 | 99|13 945 | 99|24 946 | 49|57 947 | 49|88 948 | 49|19 949 | 49|99 950 | 49|35 951 | 49|76 952 | 49|25 953 | 49|61 954 | 49|15 955 | 49|39 956 | 49|66 957 | 49|34 958 | 49|52 959 | 49|14 960 | 49|48 961 | 49|37 962 | 49|55 963 | 49|43 964 | 49|51 965 | 49|12 966 | 49|53 967 | 43|61 968 | 43|14 969 | 43|45 970 | 43|25 971 | 43|83 972 | 43|64 973 | 43|35 974 | 43|12 975 | 43|37 976 | 43|53 977 | 43|15 978 | 43|76 979 | 43|29 980 | 43|58 981 | 43|56 982 | 43|48 983 | 43|77 984 | 43|24 985 | 43|42 986 | 43|99 987 | 18|17 988 | 18|97 989 | 18|61 990 | 18|52 991 | 18|48 992 | 18|19 993 | 18|57 994 | 18|81 995 | 18|74 996 | 18|43 997 | 18|49 998 | 18|62 999 | 18|84 1000 | 18|92 1001 | 18|94 1002 | 18|38 1003 | 18|26 1004 | 18|88 1005 | 18|28 1006 | 83|18 1007 | 83|49 1008 | 83|24 1009 | 83|42 1010 | 83|45 1011 | 83|62 1012 | 83|65 1013 | 83|29 1014 | 83|22 1015 | 83|97 1016 | 83|75 1017 | 83|13 1018 | 83|58 1019 | 83|94 1020 | 83|38 1021 | 83|84 1022 | 83|92 1023 | 83|52 1024 | 84|49 1025 | 84|52 1026 | 84|48 1027 | 84|15 1028 | 84|35 1029 | 84|34 1030 | 84|37 1031 | 84|74 1032 | 84|99 1033 | 84|19 1034 | 84|39 1035 | 84|76 1036 | 84|53 1037 | 84|55 1038 | 84|88 1039 | 84|28 1040 | 84|51 1041 | 74|19 1042 | 74|55 1043 | 74|12 1044 | 74|51 1045 | 74|57 1046 | 74|34 1047 | 74|48 1048 | 74|76 1049 | 74|28 1050 | 74|53 1051 | 74|35 1052 | 74|81 1053 | 74|37 1054 | 74|61 1055 | 74|39 1056 | 74|43 1057 | 87|51 1058 | 87|17 1059 | 87|92 1060 | 87|49 1061 | 87|88 1062 | 87|34 1063 | 87|53 1064 | 87|74 1065 | 87|62 1066 | 87|48 1067 | 87|94 1068 | 87|52 1069 | 87|66 1070 | 87|19 1071 | 87|97 1072 | 64|18 1073 | 64|24 1074 | 64|58 1075 | 64|13 1076 | 64|35 1077 | 64|87 1078 | 64|47 1079 | 64|83 1080 | 64|76 1081 | 64|37 1082 | 64|75 1083 | 64|12 1084 | 64|42 1085 | 64|39 1086 | 88|39 1087 | 88|48 1088 | 88|25 1089 | 88|66 1090 | 88|83 1091 | 88|81 1092 | 88|15 1093 | 88|61 1094 | 88|14 1095 | 88|56 1096 | 88|12 1097 | 88|34 1098 | 88|53 1099 | 19|61 1100 | 19|48 1101 | 19|42 1102 | 19|58 1103 | 19|81 1104 | 19|39 1105 | 19|29 1106 | 19|55 1107 | 19|13 1108 | 19|25 1109 | 19|12 1110 | 19|53 1111 | 48|47 1112 | 48|25 1113 | 48|64 1114 | 48|76 1115 | 48|24 1116 | 48|99 1117 | 48|77 1118 | 48|56 1119 | 48|42 1120 | 48|83 1121 | 48|55 1122 | 53|13 1123 | 53|81 1124 | 53|99 1125 | 53|64 1126 | 53|75 1127 | 53|45 1128 | 53|61 1129 | 53|35 1130 | 53|24 1131 | 53|29 1132 | 29|75 1133 | 29|26 1134 | 29|49 1135 | 29|74 1136 | 29|94 1137 | 29|92 1138 | 29|34 1139 | 29|57 1140 | 29|18 1141 | 14|77 1142 | 14|13 1143 | 14|97 1144 | 14|38 1145 | 14|29 1146 | 14|26 1147 | 14|94 1148 | 14|22 1149 | 77|62 1150 | 77|42 1151 | 77|65 1152 | 77|97 1153 | 77|74 1154 | 77|26 1155 | 77|29 1156 | 45|47 1157 | 45|17 1158 | 45|52 1159 | 45|66 1160 | 45|65 1161 | 45|22 1162 | 24|87 1163 | 24|51 1164 | 24|92 1165 | 24|45 1166 | 24|74 1167 | 35|75 1168 | 35|83 1169 | 35|13 1170 | 35|42 1171 | 62|52 1172 | 62|43 1173 | 62|17 1174 | 39|12 1175 | 39|45 1176 | 92|53 1177 | 1178 | 62,65,92,74,49,52,28,88,57,61,81,99,15 1179 | 61,99,55,39,35,76,25,77,83,13,29,45,47 1180 | 84,97,38,34,94,65,57,81,19,66,74 1181 | 49,52,51,88,66,19,43,53,48,61,81,99,15,55,39,12,35,76,37 1182 | 13,58,25,62,12,37,97,29,42,87,77 1183 | 94,75,58,38,62,29,56,26,18,97,47,49,24,42,45,22,17,13,74,84,83,65,87 1184 | 48,64,37,13,24,42,75 1185 | 75,22,18,94,26,62,97,65,38,92,17,84,74,49,52,51,88,34,66 1186 | 34,66,43,53,81,64,13 1187 | 52,28,88,61,81,15,12 1188 | 19,53,48,64,55,99,56,34,43,77,88,76,66,25,35 1189 | 12,35,76,37,14,25,83,56,13,58,24,29,42,45,75,47,87,22,18,94,26,62,97 1190 | 48,81,84,28,92,34,43,66,51,57,62,97,17,65,49,19,15,88,38,52,61,99,53 1191 | 48,58,29,53,37,25,64,76,77,55,15,83,45 1192 | 22,24,35,45,75,87,26,77,56,14,76,12,62,37,97,18,83,58,13,94,47 1193 | 49,52,28,51,88,57,66,19,43,53,61,81,99,15,64,55,39,12,35,76,37 1194 | 26,97,65,38,49,52,88,48,99 1195 | 34,57,66,19,43,53,48,61,81,99,15,64,55,39,12,35,76,37,14,25,77,83,13 1196 | 45,75,22,84,28 1197 | 34,76,15,49,55,84,66,19,35,64,12 1198 | 35,76,37,14,25,77,83,56,58,24,42,45,47,87,22,18,62,97,65 1199 | 42,76,48,29,81,45,58,99,53,61,14,83,24,35,64 1200 | 55,61,77,53,43,83,57,48,99,15,66,56,14,25,12 1201 | 84,49,52,51,88,34,57,19,43,48,61,99,55,35,76 1202 | 52,28,34,57,66,53,48,61,99,55,12,35,76,37,14 1203 | 74,49,52,28,51,88,34,57,43,53,48,81,99,64,55,12,35,76,37 1204 | 76,65,87,83,58,38,26,77,42,25,47,13,97,24,45,18,22,29,37,56,75,62,94 1205 | 53,99,15,12,76,25,77,29,45 1206 | 43,53,48,61,81,99,15,64,55,39,12,35,76,37,14,25,83,56,13,58,24,29,42 1207 | 39,14,37,64,61,58,56 1208 | 99,65,55,88,28,48,19 1209 | 88,38,26,99,19,66,17,49,34,43,53,61,28,65,74,92,62 1210 | 35,39,45,12,83,56,47,42,25,75,37,81,24,76,99,87,64,14,29 1211 | 55,81,61,43,25,88,35,48,66,12,15,14,34,52,37,99,19,64,57 1212 | 75,47,87,22,18,94,26,62,97,65,38,92,17,84,74,49,52,28,51,88,34,57,19 1213 | 37,14,25,77,83,56,13,24,42,45,47,87,22,18,94,26,62,97,65,38,92 1214 | 58,45,47,18,94,26,92,17,52,28,51 1215 | 76,37,58,24,42,45,47 1216 | 56,13,24,29,42,47,87,22,18,94,26,62,97,65,38,92,17,84,74,49,52 1217 | 34,88,84,66,75,19,57,94,62,47,49 1218 | 45,75,47,87,22,18,94,26,62,97,65,38,17,84,74,49,52,28,51,88,34,57,66 1219 | 28,84,52,49,42,26,18,38,97,75,17,94,87 1220 | 35,99,58,61,48,37,15,19,55,64,53,81,13,56,43,39,24 1221 | 57,19,53,99,12,37,58 1222 | 75,25,83,14,64,12,77,39,56,45,35,81,61,99,76,13,55,47,24,58,29,42,37 1223 | 83,14,92,62,38,42,24,75,26,97,29,94,13,37,47,18,25,45,22 1224 | 45,75,47,87,22,18,94,26,62,65,38,92,17,84,74,49,52,28,51,88,34,57,66 1225 | 52,64,55,17,38,92,43,53,65,51,28,74,66,88,19,81,99,84,57,48,61,15,49 1226 | 83,56,58,24,42 1227 | 18,94,26,62,97,65,38,92,17,84,74,49,52,28,51,88,34,57,66,19,43,53,61 1228 | 17,74,49,28,51,88,66,53,61,99,55,12,35 1229 | 57,66,19,43,53,48,61,64,55,39,12,76,37,14,25,77,83,13,58 1230 | 43,58,61,39,57,14,37,77,66,81,55,48,99,12,13,64,15,53,19,56,76 1231 | 55,39,12,76,37,14,25,77,83,56,13,58,24,29,42,45,75,47,87,22,18,94,26 1232 | 65,92,17,84,52,28,51,88,34,66,19,43,53,48,61,81,99,64,55 1233 | 52,28,51,88,34,57,66,19,43,53,48,61,99,15,64,55,39,12,35,37,25 1234 | 56,42,18,65,14,45,94,22,26,58,75,47,25 1235 | 76,37,14,25,77,56,13,58,24,29,42,45,75,87,18,94,26,62,97,65,38 1236 | 81,97,62,17,43,28,15,51,38 1237 | 65,17,84,74,49,52,51,34,43,48,61,81,99,15,55 1238 | 92,74,52,66,53,81,12 1239 | 24,45,75,47,22,94,62,97,65,92,17,74,52,51,88 1240 | 49,52,88,34,57,66,19,53,61,81,99,15,64,39,12,35,37 1241 | 17,84,74,49,52,28,51,88,34,57,66,19,43,53,48,81,99,15,39,12,35 1242 | 37,58,87,45,47,55,94,22,35,42,18,26,77 1243 | 62,97,65,92,49,34,57,43,53,48,81,99,15 1244 | 28,88,34,57,66,19,43,53,48,61,81,99,15,64,55,12,76,37,14,25,77 1245 | 34,57,19,43,53,48,61,81,99,15,64,55,39,12,35,76,37,14,25,77,83,56,13 1246 | 29,92,94,77,24,62,58,42,65,97,84,47,75,22,25,87,83,26,18 1247 | 74,28,51,34,57,19,43,48,61,81,15,64,55,12,35,76,37 1248 | 35,12,76,25,42,13,37,26,77,87,39,29,94,56,45,47,14,58,75,22,24,83,62 1249 | 94,26,97,52,88,34,57,43,81 1250 | 75,47,87,18,94,26,62,97,65,38,92,17,84,49,52,51,88,34,57,66,19 1251 | 35,83,81,15,24 1252 | 29,39,55,64,13,47,12,18,42,87,24,94,14 1253 | 49,52,28,51,88,34,57,66,19,53,48,61,81,99,15,55,39,12,35,37,14 1254 | 48,61,81,15,55,39,35,76,37,14,77,56,13,58,24,29,42,45,75 1255 | 39,35,14,83,24,29,45,87,22,26,62 1256 | 43,53,61,81,15,55,39,76,25,77,58,29,42 1257 | 49,81,61,48,55,88,15,12,14,37,51,57,66,34,99,52,64,39,76 1258 | 97,47,37,87,75,83,77,94,45,56,76,42,25,13,29,22,18,58,14,38,65 1259 | 53,48,15,12,35,13,58,29,45 1260 | 42,22,12,47,75,35,18,24,58,45,97,29,13,76,25,26,37,87,94,56,83 1261 | 49,47,26,74,65,38,19,57,84,92,66,43,87,52,97,94,17,34,18,28,62 1262 | 55,39,12,35,76,14,77,56,13,29,45,75,47,87,22,18,26 1263 | 58,97,28,84,18,29,42,92,13,87,47 1264 | 24,64,76,13,83,15,77,61,56,42,75,12,81,39,45,25,29,37,14,48,58,99,55 1265 | 92,74,49,28,57,53,81 1266 | 58,24,29,42,45,75,47,87,22,18,94,26,62,97,65,38,92,17,84,49,52,28,51 1267 | 74,43,84,28,19,87,62,38,94,88,18,66,47,34,65 1268 | 34,66,61,15,55,35,25,77,83 1269 | 29,42,45,47,22,65,38,92,49,28,51,88,34 1270 | 13,24,29,42,45,75,47,87,94,65,74,49,28 1271 | 37,25,77,83,56,42,45,47,62,38,92 1272 | 77,56,24,42,45,75,26,62,97,17,74 1273 | 57,66,19,43,53,48,61,81,99,15,55,39,12,35,37,25,56 1274 | 48,35,76,64,77,37,43,39,61,15,99 1275 | 83,56,58,24,42,45,87,22,94,97,65,92,84,74,49 1276 | 77,64,14,22,37,29,39,13,24,76,83,99,35 1277 | 58,66,99,15,43,25,64,76,12,61,19,35,13,14,39 1278 | 37,14,58,42,47,87,22,65,92 1279 | 55,61,42,75,81,15,58,64,83,13,25,14,48,56,24,29,39,77,45,99,12 1280 | 92,43,65,52,66,61,74,81,84,62,15,53,97,28,19,57,88,34,17,51,49 1281 | 26,62,97,65,38,92,17,84,74,49,52,28,51,34,57,66,19,43,53,48,61,81,99 1282 | 47,87,22,18,94,62,65,92,74,49,52,28,88,57,43 1283 | 92,52,94,81,57,49,97 1284 | 25,77,83,56,13,58,29,42,45,75,87,22,94,26,62,97,65,17,84 1285 | 84,94,97,45,47,66,92,26,49,88,57 1286 | 47,42,94,24,12,87,37,64,35 1287 | 38,87,51,97,65,94,52,26,66,57,49,18,75,92,62,17,88,84,47,34,74,45,22 1288 | 26,97,84,88,66,61,99 1289 | 66,43,62,65,87,94,17,57,49,97,19,52,47 1290 | 28,84,65,66,74,38,55,99,64 1291 | 14,77,83,13,29,42,45,75,47,22,26,62,65 1292 | 62,65,38,92,52,88,15 1293 | 84,88,66,19,61,81,12 1294 | 14,55,76,48,88,43,49,28,57,37,15,53,66,19,39,52,64,81,51 1295 | 87,22,18,94,26,62,97,65,38,92,17,84,74,49,52,28,51,88,34,19,53 1296 | 28,42,38,87,22,45,97,34,92,51,17,26,47,29,94,18,49,52,74,75,65,84,62 1297 | 97,17,18,26,45,13,22,29,94,25,38,87,42,56,47,14,62,24,58 1298 | 17,84,74,52,28,88,34,57,66,19,43,99,64,55,35 1299 | 48,99,15,64,39,12,37,14,83,56,13,24,42,45,75 1300 | 14,25,77,83,56,13,58,24,29,42,45,75,47,22,18,94,26,62,97,65,38,92,17 1301 | 55,25,15,35,58,24,19,77,39,66,12,13,37,53,56,81,76,14,43,61,48,83,64 1302 | 14,19,83,48,76,24,13,61,29,15,25,37,12,99,81 1303 | 88,34,99,64,35,83,56 1304 | 22,94,26,62,97,65,92,17,84,74,28,88,34,57,66,19,48 1305 | 43,83,53,25,51,57,37 1306 | 99,77,64,28,37,12,15,43,25 1307 | 84,52,51,34,19,43,48,61,99,15,64,55,39,35,76 1308 | 56,24,38,75,62,29,74,26,47,17,94,97,45,87,52,49,42,84,13 1309 | 13,58,24,29,42,87,94,26,65,74,28 1310 | 97,65,38,92,17,84,74,49,52,28,51,88,34,57,66,19,53,48,61,81,99,15,64 1311 | 42,94,56,76,25,58,37,45,14,18,12,22,87,47,24,75,26,97,13 1312 | 26,49,28,57,22,45,87,66,18,92,65 1313 | 42,18,92,17,84,34,57 1314 | 52,28,51,88,34,57,66,19,43,53,48,61,81,99,15,55,39,12,35,76,37,14,25 1315 | 47,38,92,17,84,74,49,88,34,66,43 1316 | 76,53,15,19,51,37,66,83,35,48,61,88,55,77,81 1317 | 87,94,97,65,38,92,84,49,52,28,51,88,66,43,53 1318 | 19,52,99,49,66,34,53,81,61,64,57,74,12,55,43,39,15,92,17,88,28 1319 | 55,39,12,35,14,13,42,45,75 1320 | 29,84,24,75,18,38,47,22,87,28,42,49,74,51,17,65,88,26,62,45,97,92,52 1321 | 87,58,49,42,75,84,52 1322 | 53,48,61,81,99,15,64,55,39,12,35,76,37,25,77,56,13,58,24,42,45 1323 | 52,57,66,48,61,37,25 1324 | 55,12,35,37,14,25,77,13,58,29,42,45,75,47,87,22,18 1325 | 81,15,64,39,12,76,25,77,83,56,13,24,42,45,75,47,87 1326 | 18,38,17,84,49,52,34,19,43,48,61 1327 | 88,52,66,97,74,17,92,94,65,45,75,84,87,51,47 1328 | 19,53,48,99,55,12,76,14,25,77,83,56,13,58,29 1329 | 13,24,29,45,87,94,26,62,65,84,74,49,28 1330 | 77,55,75,26,42,37,29 1331 | 37,56,42,45,47,13,35,55,22,83,75,64,58,76,15,14,18 1332 | 66,97,26,65,57,92,88,62,18,51,74,94,38,48,53,19,49,52,34 1333 | 56,26,18,92,49,38,83,13,47,97,94 1334 | 49,52,88,19,43,81,99,15,12,35,76,37,14 1335 | 37,83,35,24,13,43,12,99,77,66,64,14,55,39,48,58,76 1336 | 17,26,51,22,38,42,57,74,84,92,34 1337 | 29,42,45,75,47,87,18,26,62,97,38,17,74,52,34 1338 | 19,43,53,48,61,81,64,55,12,35,76,14,25,77,83,58,24 1339 | 99,28,15,14,12,55,37,49,51 1340 | 28,12,53,81,43,74,76,57,55,64,35,52,37,34,99,49,51,88,66,48,19,39,61 1341 | 18,94,26,62,65,92,17,84,74,52,51,88,34,57,53,48,61 1342 | 39,12,35,76,37,14,25,77,83,56,13,24,29,42,45,75,47,87,22,18,94,26,62 1343 | 25,77,83,56,13,58,24,29,42,45,75,47,22,18,94,26,62,97,65,38,92,17,84 1344 | 57,66,19,43,48,61,81,99,15,64,55,39,35,76,37,25,83,56,58 1345 | 53,55,57,81,28,48,74,39,17,38,52,61,66,15,84,51,92 1346 | 22,77,12,42,39,14,45,37,29,94,18,83,55,75,47,24,35,76,56,13,58,26,25 1347 | 58,25,22,42,26,14,62,29,18,56,83 1348 | 34,76,37,25,83,56,13 1349 | 77,56,24,42,45,22,18,26,62,97,38,92,17,84,74 1350 | 29,87,94,26,65,17,84,74,49,52,28,88,34 1351 | 15,64,55,39,12,35,14,25,77,24,29,42,45,75,47,87,18 1352 | 47,65,43,94,74,38,62 1353 | 22,18,94,26,62,97,92,17,84,52,28,88,34,66,43,53,48 1354 | 28,51,57,66,43,53,99,64,55,12,76,37,25 1355 | 24,83,58,35,14,45,64,75,15,29,25,76,81,55,42,39,77,13,61,47,56 1356 | 26,62,97,65,38,92,17,84,74,49,52,28,88,34,57,66,19,43,53,48,61,81,99 1357 | 81,15,12,35,14,25,56,13,58,75,87 1358 | 37,14,25,77,83,56,13,58,29,42,45,75,87,22,94,26,62,97,65,38,92 1359 | 64,55,37,58,45,22,94 1360 | 38,92,17,84,74,49,52,28,51,88,34,57,19,43,53,48,61,81,99,15,64,55,39 1361 | 15,64,55,39,12,35,76,37,14,25,77,83,56,58,24,29,42,45,75,47,87,22,18 1362 | 14,25,77,83,56,58,24,29,42,45,75,47,87,22,18,94,26,97,65,92,17 1363 | 65,26,38,62,24,29,94,45,84,17,51,42,52,87,28 1364 | 56,13,29,42,45,87,22,18,26,62,97,65,92,84,74,49,52 1365 | 97,65,38,92,17,84,74,52,28,51,88,34,57,66,19,43,53,48,61,81,99,15,64 1366 | 22,62,97,17,74,49,28,51,43,53,48 1367 | 35,99,25,12,76,53,64,48,15,19,52,57,61,43,51,81,14,88,66,37,55,34,28 1368 | 22,18,94,26,62,97,65,38,17,84,74,49,52,28,51,88,34,57,66,19,43,53,48 1369 | 74,94,97,47,65,29,49,87,18,13,24,52,84,58,22,56,75,42,17,62,38 1370 | 65,92,17,74,49,52,28,34,57,66,43,48,61,81,99,64,55 1371 | -------------------------------------------------------------------------------- /2/input.txt: -------------------------------------------------------------------------------- 1 | 8 10 13 14 12 2 | 40 42 45 47 49 49 3 | 45 48 51 52 55 58 62 4 | 61 63 64 67 69 72 74 81 5 | 95 97 98 99 98 99 6 | 84 85 88 89 88 85 7 | 20 23 21 24 25 28 31 31 8 | 15 16 18 17 18 22 9 | 31 32 30 32 34 39 10 | 72 74 74 77 78 11 | 2 4 4 5 8 9 6 12 | 68 69 72 72 72 13 | 73 74 77 77 80 82 83 87 14 | 11 13 15 16 16 17 23 15 | 73 74 78 81 84 16 | 51 52 54 58 59 56 17 | 40 42 46 48 51 53 53 18 | 18 19 20 21 25 29 19 | 21 22 23 27 28 31 38 20 | 3 5 8 9 14 15 21 | 1 4 5 6 13 12 22 | 50 51 57 59 60 60 23 | 42 45 48 54 57 61 24 | 17 20 23 24 29 31 37 25 | 50 49 50 51 52 54 55 26 | 9 7 8 10 13 16 15 27 | 16 14 17 18 18 28 | 49 47 50 53 55 59 29 | 21 20 23 26 27 30 35 30 | 78 77 78 81 84 82 85 86 31 | 94 91 94 93 96 93 32 | 13 12 14 12 13 13 33 | 19 17 18 20 19 23 34 | 57 54 57 55 57 64 35 | 86 84 84 85 88 36 | 16 14 14 16 15 37 | 74 72 74 74 77 79 80 80 38 | 51 48 49 49 53 39 | 26 24 27 29 30 33 33 38 40 | 76 73 77 79 80 82 41 | 78 75 78 79 83 80 42 | 65 64 67 68 72 72 43 | 11 9 12 15 19 20 21 25 44 | 30 29 33 34 36 37 38 43 45 | 15 12 14 16 23 26 46 | 78 77 82 85 82 47 | 59 58 65 66 66 48 | 53 52 54 56 62 64 68 49 | 54 51 54 56 63 64 71 50 | 47 47 48 49 51 52 51 | 21 21 24 27 28 31 28 52 | 13 13 16 17 18 21 21 53 | 5 5 7 10 13 16 17 21 54 | 3 3 4 6 12 55 | 44 44 41 42 44 45 48 51 56 | 76 76 73 76 79 82 80 57 | 81 81 83 85 84 84 58 | 46 46 43 46 50 59 | 81 81 83 85 88 85 88 95 60 | 10 10 10 13 14 61 | 75 75 75 77 76 62 | 43 43 43 45 45 63 | 92 92 93 93 97 64 | 52 52 53 53 59 65 | 77 77 78 82 85 66 | 20 20 24 26 28 26 67 | 4 4 8 9 12 12 68 | 43 43 46 50 54 69 | 45 45 46 50 51 56 70 | 67 67 68 69 70 77 78 80 71 | 57 57 62 65 63 72 | 53 53 60 63 65 65 73 | 67 67 73 74 76 80 74 | 8 8 14 16 17 19 26 75 | 9 13 14 17 20 23 76 | 84 88 91 94 97 94 77 | 19 23 24 26 29 30 30 78 | 57 61 64 66 68 69 73 79 | 28 32 33 35 42 80 | 17 21 23 26 25 26 28 81 | 77 81 79 80 82 83 85 83 82 | 87 91 92 89 92 92 83 | 39 43 42 43 47 84 | 39 43 46 44 50 85 | 54 58 59 59 61 64 86 | 61 65 65 66 68 65 87 | 62 66 68 69 70 70 70 88 | 15 19 19 22 24 28 89 | 67 71 73 73 74 79 90 | 75 79 83 84 86 87 89 90 91 | 13 17 19 20 24 26 23 92 | 38 42 44 47 50 54 55 55 93 | 22 26 30 31 33 37 94 | 40 44 47 50 52 53 57 64 95 | 27 31 34 41 42 96 | 44 48 50 51 56 53 97 | 46 50 51 54 55 62 63 63 98 | 54 58 61 66 67 71 99 | 45 49 52 54 56 62 64 70 100 | 7 13 15 17 19 21 22 101 | 69 74 76 79 82 79 102 | 69 75 78 81 83 85 85 103 | 45 50 51 52 55 58 62 104 | 29 36 39 41 42 49 105 | 50 55 54 57 59 62 65 106 | 32 37 35 38 40 42 40 107 | 50 57 58 57 60 61 61 108 | 79 86 89 91 89 93 109 | 30 35 33 36 41 110 | 6 13 15 16 16 18 111 | 20 25 28 31 31 32 29 112 | 87 92 93 96 96 98 98 113 | 15 20 20 23 27 114 | 11 17 20 23 23 28 115 | 52 59 60 64 67 116 | 2 8 9 10 14 15 16 13 117 | 76 81 84 85 89 91 91 118 | 43 48 51 55 57 60 63 67 119 | 8 14 15 17 21 27 120 | 4 9 10 16 18 19 22 25 121 | 71 78 84 85 87 84 122 | 4 11 14 20 22 22 123 | 37 42 47 48 49 53 124 | 72 79 82 87 90 97 125 | 58 57 54 53 50 47 44 46 126 | 83 81 78 77 77 127 | 40 37 36 33 32 31 27 128 | 34 31 28 26 23 22 19 13 129 | 50 47 44 45 43 130 | 33 30 29 32 35 131 | 89 88 85 83 80 79 81 81 132 | 47 46 47 46 42 133 | 59 57 55 52 49 46 48 41 134 | 85 82 82 80 78 77 74 73 135 | 71 68 68 65 64 63 61 64 136 | 92 89 86 85 84 84 84 137 | 97 96 93 93 92 91 87 138 | 76 74 71 71 70 63 139 | 38 37 33 32 29 26 25 140 | 54 52 49 46 42 43 141 | 47 46 44 40 40 142 | 99 98 94 91 88 87 84 80 143 | 86 85 82 78 77 71 144 | 19 18 17 11 10 145 | 62 60 58 52 53 146 | 46 44 37 36 35 32 32 147 | 50 47 45 39 35 148 | 74 71 70 67 60 57 51 149 | 87 90 89 87 85 83 150 | 28 29 28 25 24 23 21 24 151 | 44 46 44 41 38 35 35 152 | 70 71 70 67 64 63 59 153 | 49 52 49 46 40 154 | 88 89 87 88 87 85 155 | 44 47 45 42 43 41 43 156 | 3 5 8 7 6 3 3 157 | 85 88 91 88 85 81 158 | 55 58 55 54 57 54 47 159 | 16 18 16 15 15 14 13 160 | 75 77 75 75 78 161 | 43 46 43 40 38 38 36 36 162 | 94 95 94 91 88 88 87 83 163 | 68 70 69 67 64 64 58 164 | 79 82 78 77 75 74 72 165 | 51 53 49 47 48 166 | 43 45 42 40 38 34 32 32 167 | 43 44 43 41 39 35 32 28 168 | 55 57 53 51 44 169 | 43 45 44 37 36 34 170 | 88 90 88 85 78 76 79 171 | 57 60 57 52 50 50 172 | 43 46 40 39 38 37 36 32 173 | 95 96 89 88 81 174 | 82 82 81 78 76 73 70 69 175 | 73 73 72 71 69 68 71 176 | 43 43 42 41 38 38 177 | 23 23 20 17 13 178 | 42 42 40 37 35 28 179 | 10 10 8 6 9 8 180 | 40 40 39 41 42 181 | 6 6 4 6 5 5 182 | 31 31 30 32 30 26 183 | 35 35 34 32 34 33 32 25 184 | 27 27 25 24 24 23 21 185 | 54 54 52 49 49 48 45 47 186 | 56 56 56 55 55 187 | 51 51 48 48 47 43 188 | 19 19 19 17 11 189 | 54 54 52 49 46 42 41 190 | 65 65 64 60 61 191 | 24 24 23 19 16 13 13 192 | 64 64 60 57 53 193 | 88 88 87 86 83 79 73 194 | 48 48 42 39 37 36 33 195 | 76 76 71 70 69 68 69 196 | 26 26 24 19 19 197 | 21 21 18 16 11 9 5 198 | 46 46 45 43 41 40 33 26 199 | 32 28 27 26 25 24 200 | 60 56 55 52 51 49 51 201 | 54 50 49 47 46 46 202 | 42 38 35 34 32 29 25 203 | 94 90 87 86 83 81 74 204 | 58 54 53 50 49 52 50 205 | 52 48 46 44 46 49 206 | 29 25 23 21 18 17 20 20 207 | 23 19 18 21 19 17 13 208 | 37 33 32 34 28 209 | 82 78 75 75 73 71 68 65 210 | 31 27 25 23 22 19 19 22 211 | 55 51 48 48 48 212 | 38 34 32 29 27 27 26 22 213 | 55 51 50 48 48 47 42 214 | 81 77 75 71 70 215 | 43 39 37 33 31 34 216 | 55 51 50 49 48 47 43 43 217 | 19 15 11 9 6 2 218 | 71 67 66 62 61 58 52 219 | 41 37 36 35 30 29 26 23 220 | 53 49 43 40 37 39 221 | 88 84 82 79 74 72 70 70 222 | 97 93 87 85 81 223 | 96 92 91 84 83 78 224 | 68 63 61 59 57 56 225 | 98 91 90 87 85 83 84 226 | 31 24 23 21 18 17 17 227 | 70 64 63 61 57 228 | 61 54 52 49 46 43 37 229 | 23 17 15 13 12 11 14 13 230 | 49 42 39 41 39 38 40 231 | 33 26 29 27 26 26 232 | 37 31 32 30 28 25 21 233 | 70 63 60 63 60 57 56 50 234 | 56 50 48 47 44 41 41 39 235 | 39 34 34 33 30 28 27 29 236 | 63 56 54 54 54 237 | 86 80 80 77 75 74 71 67 238 | 24 18 15 14 12 11 11 6 239 | 69 64 62 60 56 55 240 | 82 76 72 71 69 66 63 65 241 | 85 78 74 72 72 242 | 78 72 68 67 63 243 | 79 74 72 70 68 64 59 244 | 52 47 41 40 39 36 34 31 245 | 46 41 40 34 31 28 31 246 | 26 19 16 14 9 9 247 | 72 67 62 60 56 248 | 85 78 72 69 68 63 249 | 83 80 77 77 74 74 250 | 54 50 48 45 41 38 34 251 | 60 57 59 62 60 252 | 41 38 40 47 50 52 56 253 | 74 72 73 71 74 75 77 77 254 | 67 65 63 61 60 56 55 48 255 | 5 9 10 11 8 10 14 256 | 71 70 73 74 71 75 257 | 81 78 77 77 76 74 258 | 56 56 53 55 56 60 259 | 74 77 78 80 81 84 84 83 260 | 62 62 59 57 53 261 | 79 85 85 88 90 94 262 | 32 30 31 33 33 34 35 35 263 | 3 7 6 9 10 12 14 14 264 | 37 39 36 33 33 265 | 51 52 47 46 45 44 44 266 | 56 52 50 49 49 47 45 46 267 | 52 58 61 62 64 68 268 | 46 46 43 41 40 37 34 269 | 49 49 50 52 53 55 58 58 270 | 35 32 33 37 38 37 271 | 48 45 47 49 48 50 51 272 | 8 10 10 11 11 273 | 47 48 51 53 55 54 274 | 40 37 38 44 50 275 | 51 58 60 63 60 67 276 | 33 34 37 44 46 48 51 55 277 | 25 22 19 20 19 278 | 66 69 70 73 76 79 77 83 279 | 72 72 71 70 63 62 58 280 | 64 62 61 60 59 56 58 51 281 | 18 19 16 15 12 9 282 | 4 1 4 5 6 9 10 283 | 76 70 68 64 67 284 | 40 44 45 48 52 54 285 | 61 68 70 77 79 81 81 286 | 14 12 12 14 17 19 20 21 287 | 29 33 35 36 40 288 | 90 90 88 88 86 85 84 87 289 | 19 24 27 30 37 41 290 | 64 63 61 57 56 55 52 53 291 | 75 75 72 70 64 61 64 292 | 66 69 73 74 78 293 | 56 57 54 51 51 49 45 294 | 56 56 57 63 66 295 | 9 13 16 19 21 22 22 296 | 65 62 63 68 68 297 | 88 82 80 77 74 298 | 74 72 73 80 82 84 87 89 299 | 67 62 60 58 57 59 55 300 | 60 63 61 57 52 301 | 63 67 70 77 77 302 | 71 68 69 68 67 64 61 62 303 | 55 59 60 60 62 60 304 | 59 59 56 54 53 53 53 305 | 25 25 23 25 23 20 23 306 | 59 53 52 50 50 49 47 307 | 57 57 59 61 63 65 70 308 | 16 16 17 18 21 21 22 22 309 | 36 30 29 32 33 310 | 52 51 49 42 40 40 311 | 34 36 39 41 42 40 40 312 | 97 90 89 87 84 82 79 79 313 | 15 11 9 7 4 4 314 | 21 25 27 24 27 30 27 315 | 29 30 29 28 27 30 23 316 | 18 22 26 27 30 34 317 | 35 39 42 44 45 48 52 58 318 | 10 13 15 16 17 20 17 21 319 | 29 30 32 33 35 36 41 42 320 | 91 87 84 82 75 74 71 70 321 | 93 93 91 93 91 90 90 322 | 64 64 61 60 58 53 53 323 | 41 44 42 44 43 42 38 324 | 56 57 55 51 49 45 325 | 67 73 76 78 79 78 326 | 79 79 81 83 87 88 88 327 | 57 60 57 56 54 49 328 | 34 34 35 36 38 36 38 39 329 | 64 63 60 54 50 330 | 88 89 86 86 89 331 | 17 16 19 23 24 27 31 332 | 91 87 86 83 80 77 73 333 | 23 21 23 24 26 29 34 334 | 53 51 48 47 45 43 39 36 335 | 13 20 22 26 29 30 33 31 336 | 91 90 87 85 81 81 337 | 15 16 15 12 11 11 8 8 338 | 79 74 71 68 67 66 62 339 | 59 59 58 51 45 340 | 38 40 45 48 51 51 341 | 54 56 54 51 49 49 48 42 342 | 9 11 12 15 17 21 343 | 32 26 25 20 19 19 344 | 36 43 46 48 48 49 345 | 9 7 7 9 12 17 346 | 17 21 24 27 32 33 35 36 347 | 78 75 73 72 70 69 66 66 348 | 51 46 44 41 39 38 34 34 349 | 96 96 93 90 88 85 81 83 350 | 21 27 30 32 33 36 41 38 351 | 46 48 45 42 41 38 34 352 | 87 84 86 84 87 90 96 353 | 80 80 81 85 90 354 | 33 38 41 40 42 44 45 44 355 | 66 60 58 54 53 356 | 26 19 16 14 10 4 357 | 40 44 47 47 49 52 56 358 | 71 76 77 78 79 79 359 | 92 92 91 92 95 93 360 | 73 70 68 63 61 60 61 361 | 32 32 34 39 39 362 | 53 49 46 43 40 38 36 35 363 | 68 71 69 67 66 61 55 364 | 57 61 68 69 71 75 365 | 73 77 79 82 84 85 87 85 366 | 7 9 10 11 14 13 16 14 367 | 15 10 12 9 8 1 368 | 62 63 61 54 52 369 | 31 35 36 38 39 38 39 370 | 79 77 76 75 74 73 70 63 371 | 59 58 60 61 62 67 65 372 | 80 76 75 74 73 71 66 68 373 | 59 64 67 71 73 80 374 | 52 46 43 43 39 375 | 67 62 59 55 51 376 | 55 59 62 62 65 67 68 68 377 | 92 92 89 86 85 84 83 78 378 | 37 44 46 46 47 44 379 | 21 17 13 11 11 380 | 11 15 16 17 20 21 24 31 381 | 95 91 89 86 89 382 | 15 16 18 19 19 22 383 | 50 50 47 44 42 45 384 | 20 16 13 13 10 7 5 5 385 | 13 20 21 22 28 386 | 57 53 51 47 46 45 48 387 | 10 10 8 6 4 1 3 2 388 | 64 68 71 73 74 80 86 389 | 10 16 18 16 19 19 390 | 87 90 86 84 84 391 | 29 22 20 21 19 16 392 | 2 3 5 9 15 393 | 67 70 67 66 63 63 62 394 | 66 63 67 70 72 74 75 75 395 | 98 98 96 95 94 94 396 | 64 68 70 73 75 78 80 82 397 | 41 41 37 34 33 31 31 398 | 84 84 85 89 90 91 93 97 399 | 17 17 13 12 7 400 | 20 13 10 7 7 5 5 401 | 94 96 94 93 92 89 91 402 | 38 38 41 43 47 49 51 403 | 79 76 73 72 70 68 65 404 | 50 47 44 41 38 405 | 20 18 15 14 13 10 8 7 406 | 75 78 80 83 84 86 407 | 88 90 92 95 97 98 408 | 58 55 52 51 50 49 409 | 87 89 91 93 95 97 410 | 4 6 7 10 11 411 | 33 34 35 36 38 40 43 44 412 | 85 83 80 78 77 76 73 71 413 | 56 55 54 51 50 47 414 | 23 25 27 30 31 33 415 | 22 19 16 13 12 11 9 416 | 13 11 8 5 4 417 | 61 63 64 67 70 72 418 | 97 95 92 89 87 419 | 72 73 76 78 81 84 420 | 62 59 58 55 52 421 | 73 71 69 68 66 65 64 62 422 | 58 60 61 63 65 66 68 423 | 85 87 89 90 93 95 424 | 32 33 35 36 38 39 40 42 425 | 63 64 66 67 70 71 426 | 71 68 66 63 61 427 | 89 90 91 94 95 96 428 | 66 64 62 61 58 429 | 34 35 38 39 41 43 44 46 430 | 56 58 60 62 65 68 69 72 431 | 51 50 47 45 43 42 40 432 | 36 37 40 43 45 46 433 | 57 55 54 51 50 434 | 72 75 78 80 82 84 87 90 435 | 37 40 41 42 43 45 47 436 | 58 61 64 67 68 437 | 28 25 22 20 18 17 14 13 438 | 37 34 31 29 27 25 439 | 48 50 53 56 57 58 61 62 440 | 90 87 84 83 82 80 441 | 85 84 81 79 76 73 442 | 71 73 75 78 79 81 82 443 | 92 91 88 86 84 82 444 | 41 40 39 38 35 34 445 | 5 7 8 10 12 15 16 446 | 24 25 27 28 31 32 447 | 14 13 11 10 9 8 5 448 | 39 41 44 46 48 449 | 13 10 7 6 3 2 450 | 2 4 7 10 11 12 13 16 451 | 33 30 29 27 25 24 23 452 | 30 33 36 37 38 41 43 46 453 | 67 64 61 58 57 54 454 | 32 33 35 38 41 42 44 45 455 | 17 14 12 10 8 5 4 2 456 | 44 43 41 38 35 33 32 29 457 | 25 28 31 32 35 37 458 | 28 30 33 34 37 40 459 | 19 16 15 13 12 460 | 18 17 14 11 10 461 | 82 80 77 74 73 71 462 | 98 96 94 93 90 89 88 463 | 56 53 51 50 49 47 45 44 464 | 26 29 30 32 34 35 36 465 | 44 47 49 50 53 466 | 72 74 75 78 81 84 85 467 | 55 53 52 51 49 468 | 80 77 76 75 72 69 67 469 | 47 48 50 52 53 56 58 60 470 | 96 95 94 91 89 87 84 81 471 | 11 14 16 19 21 23 26 29 472 | 5 8 10 12 15 16 19 473 | 62 64 65 66 67 474 | 41 40 38 36 34 32 29 475 | 66 69 71 72 75 476 | 7 8 11 14 15 18 19 20 477 | 49 48 46 43 41 38 36 478 | 94 93 90 89 87 84 81 479 | 47 50 51 53 55 57 58 59 480 | 25 22 19 18 16 14 12 10 481 | 65 64 61 59 56 54 52 49 482 | 54 55 57 58 60 63 64 65 483 | 59 61 62 63 66 69 484 | 71 68 65 62 60 57 56 485 | 34 35 38 41 44 47 49 51 486 | 35 36 38 39 42 43 487 | 75 78 81 82 85 88 90 93 488 | 54 57 60 63 66 489 | 3 6 7 10 13 14 16 490 | 44 42 40 38 36 491 | 67 66 65 64 62 60 492 | 21 22 24 27 28 29 31 33 493 | 1 2 3 5 8 11 13 494 | 62 64 67 68 70 72 74 495 | 82 83 84 85 88 496 | 55 57 59 62 63 64 497 | 31 28 27 24 23 22 19 498 | 12 15 18 19 20 499 | 7 9 11 14 15 18 19 22 500 | 28 25 24 21 18 15 12 501 | 80 77 75 72 71 68 67 502 | 32 30 28 27 25 503 | 50 52 55 57 59 60 504 | 24 22 19 17 16 13 10 7 505 | 18 20 23 26 27 28 29 32 506 | 75 77 80 81 82 83 507 | 84 82 81 78 75 73 72 71 508 | 47 46 45 42 40 39 36 33 509 | 24 22 21 20 17 15 12 510 | 22 24 25 28 31 511 | 40 38 36 35 34 31 28 512 | 3 5 6 7 9 513 | 31 33 36 39 42 43 46 514 | 70 69 68 67 64 61 60 57 515 | 71 72 74 77 80 516 | 81 82 85 86 89 92 93 94 517 | 45 47 50 52 55 56 59 62 518 | 69 67 66 65 63 62 59 519 | 65 63 61 60 59 56 53 520 | 64 62 59 56 54 51 48 45 521 | 45 43 41 38 35 33 31 29 522 | 13 16 18 20 22 23 24 25 523 | 61 59 56 53 51 48 47 524 | 18 21 23 25 27 28 30 32 525 | 68 65 63 60 57 526 | 51 53 55 56 58 61 64 65 527 | 80 82 84 87 90 528 | 37 39 41 42 44 529 | 81 83 85 86 88 530 | 85 87 90 91 93 531 | 19 16 15 13 11 8 6 532 | 36 35 33 31 29 533 | 43 41 40 38 37 534 | 25 26 28 31 33 36 37 40 535 | 70 68 67 65 63 60 58 56 536 | 2 5 7 10 11 14 537 | 61 59 57 56 55 538 | 44 42 41 39 36 33 30 539 | 80 81 83 85 88 89 92 93 540 | 41 42 43 44 46 49 50 51 541 | 3 6 7 10 13 542 | 95 94 93 91 88 87 543 | 84 82 81 78 76 544 | 81 83 84 86 87 89 92 545 | 46 45 42 41 38 546 | 43 45 48 50 51 53 547 | 69 68 65 62 59 548 | 83 82 79 78 76 73 70 549 | 17 18 21 22 25 28 29 31 550 | 64 66 67 70 71 72 74 77 551 | 69 68 67 64 61 59 552 | 50 47 45 42 40 38 553 | 70 73 76 79 80 82 84 86 554 | 25 22 19 18 15 13 11 555 | 83 80 78 77 76 73 70 69 556 | 46 48 49 50 51 557 | 44 46 48 50 51 53 56 59 558 | 53 51 48 45 42 41 38 559 | 49 51 52 54 57 560 | 24 22 19 16 14 12 10 561 | 67 69 72 75 78 562 | 9 6 5 3 1 563 | 8 11 14 16 17 20 23 26 564 | 32 33 35 37 39 42 45 46 565 | 84 82 79 78 77 74 71 70 566 | 45 46 49 52 54 56 58 60 567 | 34 33 30 29 27 26 24 23 568 | 65 67 68 71 72 75 76 79 569 | 3 6 9 12 15 17 570 | 29 27 26 25 23 20 19 18 571 | 61 60 58 56 54 51 48 45 572 | 51 52 54 57 59 573 | 52 55 58 60 63 66 574 | 40 43 45 47 49 575 | 73 71 70 68 66 64 576 | 79 77 74 72 70 577 | 77 76 74 72 69 68 66 63 578 | 57 56 54 53 50 49 579 | 25 22 21 20 18 17 15 580 | 82 81 78 75 74 71 581 | 89 87 86 85 82 79 582 | 38 35 34 32 30 27 26 583 | 65 68 70 73 74 76 584 | 49 50 51 52 54 585 | 63 65 67 69 72 74 76 586 | 15 16 18 19 22 24 25 587 | 52 50 47 45 42 588 | 76 75 73 71 68 65 62 589 | 59 58 57 55 54 53 590 | 71 68 66 63 62 60 591 | 64 62 59 57 54 592 | 19 16 13 12 9 8 593 | 86 87 89 90 92 594 | 74 71 69 68 66 595 | 65 64 63 61 58 56 596 | 67 64 61 60 58 56 597 | 78 79 80 81 84 86 89 598 | 12 14 17 20 22 23 599 | 41 42 44 47 48 49 52 54 600 | 40 39 38 37 35 32 601 | 13 14 16 18 21 602 | 14 15 16 17 18 19 603 | 83 84 85 87 89 90 93 604 | 38 36 34 33 32 29 26 24 605 | 79 76 73 71 69 606 | 73 72 69 66 64 607 | 92 89 87 85 82 608 | 68 65 63 62 60 609 | 12 13 15 18 21 24 27 610 | 87 88 91 94 96 611 | 75 74 72 70 68 67 65 612 | 79 81 84 87 90 93 613 | 48 50 51 54 55 58 60 61 614 | 66 69 71 74 75 78 615 | 48 46 44 41 40 37 35 616 | 46 48 49 50 51 52 54 55 617 | 82 85 87 90 93 94 97 618 | 79 76 73 70 69 68 619 | 90 87 85 83 82 80 78 620 | 47 49 50 51 52 621 | 64 63 60 59 58 56 53 622 | 72 71 69 67 66 64 623 | 59 58 56 54 53 52 50 48 624 | 39 42 45 48 51 52 54 625 | 40 41 43 46 49 50 52 626 | 53 55 57 58 60 62 64 67 627 | 27 24 22 20 18 16 14 13 628 | 17 14 12 10 8 7 6 629 | 1 3 6 8 11 630 | 73 70 68 66 65 63 631 | 63 60 59 58 55 52 632 | 69 68 66 64 63 62 60 633 | 29 31 32 34 36 37 38 634 | 66 67 69 71 74 76 78 79 635 | 73 72 71 68 67 65 636 | 97 94 91 90 88 637 | 13 14 16 17 19 22 24 638 | 33 36 39 40 43 44 45 639 | 24 21 20 17 14 11 8 7 640 | 34 35 38 39 42 45 46 47 641 | 63 66 67 68 71 72 75 77 642 | 71 73 75 78 80 82 84 87 643 | 38 40 41 43 44 45 47 49 644 | 79 77 74 72 69 67 66 645 | 49 50 52 53 56 646 | 63 65 68 71 73 74 77 78 647 | 67 70 71 73 74 77 79 648 | 70 67 66 64 61 60 59 56 649 | 27 29 31 33 34 650 | 53 56 59 60 63 66 69 651 | 54 53 50 49 48 47 46 652 | 23 22 20 19 17 653 | 31 33 36 39 42 44 654 | 83 80 78 77 74 73 70 655 | 90 87 85 82 81 656 | 74 71 68 65 63 60 57 54 657 | 38 41 44 47 48 51 54 658 | 28 27 25 23 22 20 659 | 84 85 88 90 93 95 96 660 | 62 65 68 69 71 661 | 90 88 85 82 80 78 662 | 19 18 16 14 11 8 6 663 | 62 60 58 56 55 54 664 | 79 82 83 86 87 89 92 665 | 42 40 38 37 35 666 | 7 10 11 12 14 16 18 667 | 85 88 91 92 94 95 98 99 668 | 43 45 46 48 51 53 55 669 | 18 21 24 27 29 32 34 670 | 67 69 72 73 76 77 671 | 75 78 80 83 85 86 672 | 88 85 84 81 80 673 | 27 28 30 31 33 674 | 89 92 93 94 96 675 | 78 76 73 72 69 68 65 64 676 | 71 69 67 66 63 60 58 677 | 35 32 30 27 25 23 20 18 678 | 6 8 11 13 15 679 | 81 79 77 75 74 72 680 | 68 67 64 61 59 56 54 681 | 45 44 43 40 37 36 33 31 682 | 91 89 87 86 84 81 80 683 | 91 90 89 86 85 82 81 684 | 40 42 44 45 48 51 54 685 | 43 41 40 39 38 36 33 686 | 16 13 11 10 7 6 687 | 64 63 62 59 56 688 | 23 26 28 30 33 35 37 40 689 | 41 38 37 36 33 30 690 | 43 41 40 39 38 35 691 | 84 86 87 88 89 92 95 692 | 78 76 75 74 71 68 66 693 | 70 72 73 75 78 694 | 30 33 34 37 40 43 46 49 695 | 86 88 89 92 93 94 95 696 | 31 33 35 37 40 697 | 75 77 80 82 84 85 698 | 63 61 59 57 54 53 52 699 | 30 28 27 26 24 700 | 33 35 38 40 41 43 44 45 701 | 73 74 76 78 80 81 84 86 702 | 61 64 67 68 69 70 72 703 | 37 40 42 44 45 47 704 | 44 41 40 38 37 36 34 31 705 | 21 20 19 16 14 13 11 10 706 | 91 90 88 85 83 80 79 707 | 17 19 20 21 23 25 708 | 29 30 32 34 36 39 42 45 709 | 57 60 62 63 64 65 710 | 64 61 59 58 57 55 711 | 32 31 28 26 23 712 | 65 66 67 69 72 713 | 14 13 10 7 4 714 | 25 24 21 20 18 15 13 715 | 84 87 89 91 94 716 | 73 72 69 66 64 63 60 717 | 47 44 43 42 41 40 718 | 25 28 30 31 32 719 | 90 91 92 95 98 720 | 86 83 82 80 77 75 72 721 | 46 49 52 53 56 722 | 50 52 54 57 60 63 64 723 | 36 37 38 39 41 43 44 45 724 | 31 28 25 22 20 725 | 63 64 66 68 70 71 726 | 71 74 75 77 79 81 84 727 | 20 21 23 24 26 29 728 | 69 66 64 62 60 729 | 15 16 18 21 24 26 27 30 730 | 32 31 29 26 23 21 731 | 10 12 13 16 19 20 22 24 732 | 68 69 70 73 76 78 733 | 71 70 68 66 63 61 60 57 734 | 88 85 82 79 77 76 75 735 | 47 50 51 54 57 59 736 | 12 13 16 18 21 22 737 | 97 94 93 92 91 89 86 738 | 89 86 85 82 81 79 77 76 739 | 24 26 27 30 33 740 | 91 92 93 94 97 741 | 94 92 89 87 86 85 82 742 | 45 46 49 51 52 54 57 743 | 52 49 47 46 43 744 | 65 64 62 61 58 57 56 54 745 | 23 26 27 30 33 746 | 78 77 74 71 68 747 | 39 42 43 46 49 748 | 85 87 90 93 94 96 98 749 | 97 94 92 90 88 85 82 79 750 | 81 79 76 75 74 72 70 751 | 87 89 92 94 96 97 752 | 74 77 79 80 83 85 87 90 753 | 62 60 57 54 51 50 754 | 84 85 87 90 92 93 755 | 81 78 77 75 72 69 66 63 756 | 58 61 63 65 66 69 757 | 63 62 59 57 55 53 51 758 | 82 85 87 90 91 93 95 98 759 | 56 53 52 50 49 48 760 | 59 58 55 52 51 761 | 27 30 33 36 37 39 762 | 30 28 27 24 22 19 17 763 | 54 53 52 49 48 47 44 43 764 | 10 13 14 15 17 19 765 | 70 67 65 64 62 60 766 | 84 83 82 80 77 76 75 73 767 | 83 86 89 92 93 95 97 99 768 | 21 22 23 24 27 30 33 769 | 52 49 46 43 41 770 | 68 65 62 61 59 771 | 63 66 68 69 71 74 77 772 | 72 71 68 67 66 65 773 | 6 8 11 12 15 18 20 23 774 | 85 84 83 80 78 75 73 775 | 1 2 3 4 5 7 776 | 94 91 88 86 84 777 | 44 46 47 48 50 51 54 56 778 | 50 53 55 56 59 62 779 | 96 94 91 90 88 87 85 780 | 84 82 79 76 75 74 781 | 61 64 67 70 71 74 77 78 782 | 80 82 85 86 88 90 92 94 783 | 14 16 19 20 22 25 784 | 34 35 37 40 43 45 47 785 | 16 14 11 10 8 6 5 786 | 86 89 92 93 95 97 98 787 | 73 74 75 77 80 81 788 | 22 19 18 17 16 14 12 789 | 79 78 77 75 72 71 790 | 19 20 21 24 26 28 30 791 | 63 61 59 58 55 53 792 | 34 37 39 42 44 46 793 | 84 83 81 78 75 72 70 69 794 | 31 34 36 39 40 43 795 | 67 64 63 61 58 56 796 | 56 57 58 61 63 66 69 797 | 70 73 75 77 78 798 | 81 84 85 87 90 93 94 799 | 2 4 7 9 11 14 15 800 | 25 22 20 18 16 14 11 801 | 17 18 19 20 21 22 802 | 35 37 40 43 44 46 47 803 | 64 61 59 57 55 52 804 | 95 92 90 89 87 85 84 805 | 69 67 66 63 60 59 56 53 806 | 73 76 79 82 84 86 87 807 | 59 58 56 55 53 51 50 808 | 53 56 57 60 61 63 65 67 809 | 14 13 11 9 7 810 | 88 86 84 82 80 78 75 811 | 24 26 29 30 33 812 | 63 64 65 66 69 71 813 | 86 84 83 80 78 75 72 70 814 | 33 32 30 29 27 24 815 | 75 72 71 68 66 65 63 816 | 36 38 39 41 44 46 48 817 | 32 30 29 28 27 24 21 19 818 | 23 21 20 18 17 14 11 10 819 | 21 23 24 25 26 28 820 | 56 59 62 64 65 67 70 73 821 | 79 76 73 70 68 66 65 822 | 77 79 81 83 85 86 87 89 823 | 34 35 36 37 39 824 | 41 38 37 34 33 32 31 29 825 | 22 19 18 16 15 14 826 | 9 12 13 16 19 827 | 70 71 72 75 76 828 | 25 28 31 32 34 829 | 51 48 46 45 44 42 40 38 830 | 20 17 15 13 10 8 831 | 53 50 49 46 43 42 39 36 832 | 85 88 89 90 92 833 | 72 75 77 78 80 82 84 834 | 61 60 57 56 53 835 | 62 60 58 55 52 51 48 47 836 | 97 94 93 91 88 85 84 82 837 | 49 51 53 56 57 58 838 | 2 3 6 8 9 10 12 13 839 | 23 20 17 14 11 840 | 21 23 26 29 30 32 34 35 841 | 74 73 70 67 65 842 | 24 21 18 16 13 12 843 | 69 71 74 76 77 844 | 82 80 79 76 75 73 71 70 845 | 18 19 22 24 27 28 30 846 | 55 58 60 63 65 847 | 59 57 56 55 52 848 | 55 58 60 63 65 68 69 71 849 | 63 65 67 68 71 74 76 77 850 | 44 41 38 35 33 30 851 | 47 45 43 41 38 35 33 852 | 29 30 33 34 35 37 38 39 853 | 66 65 63 60 58 55 52 854 | 61 64 66 68 69 70 71 74 855 | 98 96 94 91 90 856 | 57 59 60 63 65 68 69 857 | 75 78 79 80 82 83 84 87 858 | 78 80 83 85 87 859 | 66 67 68 70 72 73 76 79 860 | 53 50 49 47 46 861 | 29 30 32 34 35 38 40 862 | 72 74 75 78 80 81 863 | 5 6 7 9 11 14 16 17 864 | 88 87 85 82 81 79 77 76 865 | 12 14 15 17 19 21 866 | 74 73 72 69 66 65 867 | 24 25 28 31 32 868 | 62 64 65 68 69 71 73 869 | 63 60 57 55 52 50 49 870 | 5 8 9 11 12 15 17 20 871 | 42 44 47 49 52 54 872 | 28 29 30 33 34 35 873 | 46 44 41 39 38 874 | 85 86 87 90 92 94 875 | 59 58 56 55 53 876 | 82 79 77 76 74 877 | 96 94 92 89 86 85 878 | 51 49 46 44 41 40 37 879 | 43 46 47 50 52 880 | 26 23 22 19 17 15 12 9 881 | 39 42 44 45 46 882 | 84 83 80 78 76 75 883 | 65 64 61 58 56 55 884 | 10 9 8 5 4 2 1 885 | 62 61 60 58 55 53 50 886 | 42 40 39 37 34 32 30 27 887 | 79 76 74 71 69 67 64 888 | 97 96 93 90 87 85 83 889 | 16 19 22 23 24 890 | 48 47 46 43 40 38 36 891 | 37 34 31 28 25 23 892 | 44 43 41 40 38 35 893 | 47 44 42 40 39 38 36 894 | 27 29 32 34 36 895 | 43 41 39 38 35 896 | 83 82 79 77 74 897 | 39 41 44 46 47 49 52 53 898 | 51 48 47 45 43 41 39 37 899 | 27 28 29 32 35 900 | 14 15 17 20 23 26 901 | 35 32 31 28 27 25 902 | 62 60 57 54 53 50 49 903 | 14 11 8 6 5 904 | 67 65 64 63 60 905 | 38 37 36 34 31 29 28 906 | 4 7 10 13 14 15 18 21 907 | 2 4 5 8 10 11 908 | 4 7 10 13 15 16 909 | 68 66 64 61 58 910 | 91 89 87 86 83 81 911 | 94 93 91 88 86 83 82 912 | 2 5 8 10 11 13 913 | 72 70 68 66 63 60 59 56 914 | 70 67 64 61 58 55 52 51 915 | 7 8 10 12 15 16 19 22 916 | 62 60 57 55 52 50 48 45 917 | 33 32 29 26 23 20 19 918 | 46 47 49 50 52 919 | 20 21 24 25 27 29 920 | 29 32 35 37 40 41 42 44 921 | 82 79 76 74 72 71 69 67 922 | 68 71 74 76 79 923 | 71 69 68 65 63 61 60 58 924 | 15 18 20 21 23 925 | 54 51 49 46 45 926 | 91 88 86 84 81 79 76 74 927 | 24 25 26 28 29 30 33 928 | 18 21 23 25 27 29 929 | 25 26 27 30 31 930 | 7 9 10 13 15 16 931 | 50 48 45 43 42 40 38 932 | 23 25 26 28 29 933 | 56 57 58 59 60 63 66 934 | 35 34 32 30 27 24 23 20 935 | 57 55 52 51 48 45 44 936 | 80 77 76 74 72 69 68 66 937 | 31 30 28 27 25 23 20 938 | 94 93 92 90 89 86 85 82 939 | 53 51 48 47 44 42 41 940 | 4 6 8 10 11 13 16 941 | 46 45 44 41 39 36 33 32 942 | 62 65 66 67 68 943 | 84 83 81 80 79 944 | 79 76 73 72 71 70 67 945 | 55 57 59 60 61 946 | 92 90 88 86 84 81 947 | 24 27 28 30 31 34 35 948 | 86 83 80 77 74 71 68 65 949 | 94 91 90 89 86 84 83 950 | 55 53 52 51 50 47 951 | 44 45 48 51 53 54 57 952 | 22 23 26 27 28 29 953 | 88 91 94 97 99 954 | 71 69 67 66 65 955 | 23 22 19 16 13 10 8 956 | 41 43 46 48 51 53 55 57 957 | 90 89 87 86 84 958 | 45 43 42 39 37 959 | 12 13 14 15 18 20 22 960 | 56 54 51 50 48 961 | 10 11 14 17 18 19 21 962 | 19 22 23 24 26 28 30 963 | 84 82 81 79 78 77 75 72 964 | 12 15 18 20 23 26 28 31 965 | 95 94 91 88 85 82 966 | 47 46 45 42 39 967 | 62 60 58 56 55 968 | 8 11 12 13 16 19 21 969 | 38 40 42 43 45 48 970 | 67 68 69 71 73 74 971 | 60 61 62 63 64 67 68 972 | 57 58 60 63 66 67 70 71 973 | 79 82 83 84 86 87 974 | 68 69 72 75 78 81 975 | 33 36 37 39 42 44 46 976 | 21 19 17 15 12 9 977 | 66 67 69 71 74 75 77 978 | 93 90 89 87 86 85 84 979 | 10 12 15 18 21 24 27 30 980 | 61 64 67 69 72 75 78 981 | 98 95 94 92 89 982 | 13 11 9 7 5 983 | 68 65 64 62 59 57 54 52 984 | 62 59 58 56 55 54 52 51 985 | 85 82 80 78 76 75 74 986 | 58 55 52 50 48 46 987 | 64 67 69 72 74 75 76 988 | 64 61 60 58 57 55 53 989 | 39 40 42 44 45 48 50 53 990 | 13 15 18 21 24 991 | 7 9 11 14 17 19 992 | 41 38 35 33 30 993 | 20 23 24 26 28 994 | 72 73 74 75 77 79 80 83 995 | 21 20 17 15 14 12 11 10 996 | 46 49 52 55 57 58 61 64 997 | 42 45 47 49 52 998 | 93 92 90 88 87 84 82 80 999 | 17 14 11 9 8 6 4 1000 | 56 57 60 63 65 67 68 70 1001 | --------------------------------------------------------------------------------