{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "
Peter Norvig
2012
updated 2019, 2023
\n", "\n", "# Weighing Twelve Balls on a Scale: ①②③④ ⚖ ⑤⑥⑦⑧ \n", "\n", "Here is [a classic](https://en.wikipedia.org/wiki/Balance_puzzle) brain-teaser puzzle (first appearing in 1945), meant to be solved with paper and pencil: \n", "\n", "- *You are given twelve identical-looking balls and a two-sided balance scale. One of the balls is of a different weight, although you don't know whether it is lighter or heavier. How can you use just three weighings of the scale to determine not only what the different ball is, but also whether it is lighter or heavier?*\n", "\n", "\n", "\n", "However I want to solve not just this specific puzzle, but related puzzles where you can vary (a) the number of balls, (b) the number of weighings allowed, and (c) whether the different ball is known to be heavier, lighter, either, or possibly neither. So I'll be better served by a computer program, not a pencil. \n", "\n", "I originally wrote this program in Lisp around 1980, ported it to Python in 2012, and am republishing it here in revised form after I saw the puzzle was mentioned in the [538 Riddler](https://fivethirtyeight.com/features/which-billiard-ball-is-rigged/) for 16 August 2019. It also appeared in a [Numberplay](https://wordplay.blogs.nytimes.com/2014/07/21/12coin/) column in 2014 (with coins instead of balls), in the Museum of Math's [Mind-Benders for the Quarantined!](https://momath.org/civicrm/?page=CiviCRM&q=civicrm/event/info&reset=1&id=1620) series in 2020, and in many other venues.\n", "\n", "\n", "# Defining the Vocabulary\n", " \n", "Here are the main concepts:\n", "\n", "- **Ball**: A ball is represented by a positive integer, just to tell them apart. A list of balls by a list, e.g. `[1, 2, 3]`.\n", "- **Oddball**: One of the balls is different in weight; I'll use the term **oddball** to indicate which ball is different, and how. I'll use `+N` to mean ball `N` is heavier, `-N` to mean ball `N` is lighter, and `0` to mean that all the balls weigh the same. (So `0` cannot be a ball number.) \n", "- **Puzzle**: I'll express the puzzle stated above with `Puzzle(N=12, weighings=3)`. A puzzle is defined by the number of balls, the number of weighings allowed, and the possible oddballs (I'll say how to describe them later).\n", "- **Weighing**: I can weigh a collection of balls on the left versus a collection on the right, and the result will be that the left side is greater than, equal to, or less than the right in weight. I'll denote that with the call `weigh(L, R, oddball)`, which returns a string, `'gt'`, `'eq'`, or `'lt'`.\n", "- **Solution**: Given a puzzle, a solution is a **strategy tree** that can correctly discover the oddball, whatever it is, in the allowable number of weighings. `None` indicates the failure to find a solution.\n", "- **Strategy tree**: A tree whose leaf nodes are oddballs and whose interior nodes have 5 components: `Node(L, R, gt, eq, lt)` is a node where `L` and `R` are the lists of balls to be weighed, and `gt`, `eq`, and `lt` are branches for subtrees corresponding to the three possible weighing results. \n", "- **Following a path**: I'll use `follow(tree, oddball)` to say *follow the path through the tree, doing each weighing under the assumption of the given oddball, and return the leaf node reached by the path–the oddball that the tree predicts.* Note that the function `follow` gets to see what the oddball is, but the `tree` does not; there is one static tree that has to figure out the oddball by doing weighings, and it has to work for any oddball.\n", "- **Valid solution**: A solution, `tree`, is a **valid solution** to a puzzle if`follow(tree, oddball) == oddball` for every oddball in the puzzle. I use `valid(tree, puzzle)` for this.\n", "\n", "\n", "# Implementation of Data Types\n", "\n", "Most of the types are straightforward. The `Puzzle(...)` class is more complex. You can specify the number of balls, the number of allowable weighings, and the possible oddballs, which should be a set consisting of oddball numbers, or it could contain `lt` and/or `gt` to indicate that any of the balls might be less than or greater than the others, respectively." ] }, { "cell_type": "code", "execution_count": 1, "metadata": {}, "outputs": [], "source": [ "from collections import namedtuple\n", "from typing import Union, Literal, Optional, Dict, Set, Tuple, List\n", "import random\n", "\n", "Ball = int # Balls are positive integers\n", "Oddball = int # Oddballs are positive, negative, or zero integers\n", "Leaf = Oddball # Leaves in a tree are oddballs\n", "Node = namedtuple('Node', 'L, R, gt, eq, lt') # A Node is a tuple of 5 components\n", "Tree = Union[Node, Leaf] # A tree can be an interior node or a leaf\n", "results = (lt, eq, gt) = ('lt', 'eq', 'gt') # The result of a weighing is one of these three\n", "\n", "class Puzzle:\n", " \"\"\"Represent a specific ball-weighing puzzle. You can specify the number of balls, `N`,\n", " the number of allowable `weighings`, and the `oddballs` as a set of oddball numbers, and/or\n", " the constants `lt` or `gt`.\"\"\"\n", " def __init__(self, N=12, weighings=3, oddballs={lt, gt}):\n", " self.ob_input = oddballs # Remember the original input\n", " balls = tuple(range(1, N + 1))\n", " if gt in oddballs: oddballs = oddballs - {gt} | {+b for b in balls}\n", " if lt in oddballs: oddballs = oddballs - {lt} | {-b for b in balls}\n", " if eq in oddballs: oddballs = oddballs - {eq} | {0}\n", " self.__dict__.update(N=N, weighings=weighings, oddballs=oddballs, balls=balls)\n", " def __repr__(self): \n", " return f'Puzzle(N={self.N}, weighings={self.weighings}, oddballs={self.ob_input}'" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Implementation of Basic Functions\n", "\n", "Here are all the straightforward utility functions; everything except the main function `find_tree` that actually solves a puzzle." ] }, { "cell_type": "code", "execution_count": 2, "metadata": {}, "outputs": [], "source": [ "def weigh(L, R, oddball) -> Literal[results]:\n", " \"Weigh balls L against balls R, given the oddball; return gt, eq, or lt.\"\n", " Δ = sum(weight(b, oddball) for b in L) - sum(weight(b, oddball) for b in R)\n", " return gt if Δ > 0 else lt if Δ < 0 else eq\n", "\n", "def weight(ball, oddball) -> int: \n", " \"How heavy is this ball (given that we know what the oddball is)?\"\n", " return 101 if +ball == oddball else 99 if -ball == oddball else 100\n", " \n", "def solve(puzzle) -> Optional[Tree]:\n", " \"Return a valid tree (one that solves the puzzle), or None for failure.\"\n", " tree = find_tree(puzzle, puzzle.oddballs, puzzle.weighings)\n", " return tree if valid(tree, puzzle) else None\n", " \n", "def follow(tree, oddball) -> Oddball:\n", " \"Follow a path through the tree and return the oddball that the tree leads us to.\"\n", " if isinstance(tree, Leaf):\n", " return tree\n", " else:\n", " branch = weigh(tree.L, tree.R, oddball)\n", " return follow(getattr(tree, branch), oddball)\n", " \n", "def valid(tree, puzzle) -> bool:\n", " \"Does the strategy tree solve the puzzle correctly for all possible oddballs?\"\n", " return (tree is not None and\n", " depth(tree) <= puzzle.weighings and \n", " all(follow(tree, oddball) == oddball \n", " for oddball in puzzle.oddballs))\n", "\n", "def depth(tree) -> int:\n", " \"Maximum depth (number of weighings) in tree.\"\n", " return (0 if isinstance(tree, Leaf) or tree is None\n", " else 1 + max(depth(tree.gt), depth(tree.eq), depth(tree.lt)))\n", "\n", "def first(iterable): return next(iter(iterable))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's try out some of these functions:" ] }, { "cell_type": "code", "execution_count": 3, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Puzzle(N=8, weighings=3, oddballs={'gt', 'lt'}" ] }, "execution_count": 3, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# A puzzle with 8 balls and 3 weighings allowed\n", "p8 = Puzzle(8, 3) \n", "p8" ] }, { "cell_type": "code", "execution_count": 4, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "(1, 2, 3, 4, 5, 6, 7, 8)" ] }, "execution_count": 4, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p8.balls " ] }, { "cell_type": "code", "execution_count": 5, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{-8, -7, -6, -5, -4, -3, -2, -1, 1, 2, 3, 4, 5, 6, 7, 8}" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p8.oddballs" ] }, { "cell_type": "code", "execution_count": 6, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "'gt'" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# If we weigh balls [1, 2] against [3, 4] and 4 is lighter, the result should be 'gt'\n", "weigh([1, 2], [3, 4], -4)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 7, "metadata": {}, "output_type": "execute_result" } ], "source": [ "# If ball 4 is light, then it should be true that ball 1 weighhs more than ball 4\n", "weight(1, oddball=-4) > weight(4, oddball=-4)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Finding a Valid Solution Tree\n", "\n", "Now we've got all the pieces we need to find a valid tree to solve a puzzle. The key concept is that a **weighing** gives us information by making a **partition** of the possible **oddballs** into branches for each of the three possible weighing results: `gt`, `eq`, or `lt`. If each of the partitions is small enough, subsequent weighings can handle each of them. Here's what I mean by a partition:" ] }, { "cell_type": "code", "execution_count": 8, "metadata": {}, "outputs": [], "source": [ "Partition = Dict[Literal[results], Set[Oddball]]\n", "\n", "def partition(L, R, oddballs) -> Partition:\n", " \"A dict that partitions the possible outcomes from weighing L versus R.\"\n", " dic = dict(gt=set(), eq=set(), lt=set())\n", " for odd in oddballs:\n", " dic[weigh(L, R, odd)].add(odd)\n", " return dic" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "For example, with 12 balls, if we weigh balls [1, 2, 3] on the left versus [10, 11, 12] on the right, then there are 6 ways the left side can be greater than the right: either 10, 11 or 12 is lighter or 1, 2, or 3 is heavier. Similarly there are 6 ways of getting a `lt` weighing result. The remaining 12 possibilities—balls 4 through 9 being either heavier or lighter—show up in the `eq` branch of the partition:" ] }, { "cell_type": "code", "execution_count": 9, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'gt': {-12, -11, -10, 1, 2, 3},\n", " 'eq': {-9, -8, -7, -6, -5, -4, 4, 5, 6, 7, 8, 9},\n", " 'lt': {-3, -2, -1, 10, 11, 12}}" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p12 = Puzzle(12, 3)\n", "\n", "partition([1, 2, 3], [10, 11, 12], p12.oddballs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "If this was the first weighing in our strategy tree, could we go on to solve the puzzle in 3 weighings? \n", "\n", "**No!** The key insight is that a tree with w weighings can distinguish at most 3w oddballs, because each weighing has three possible results. After using one weighing we can only solve the puzzle if every branch of the partition has no more than 32 = 9 oddballs, but here we have 12 oddballs in the `eq` branch. We call this a **bad partition**. A good partition is one where no branch has more than 3w oddballs. Being a good partition does not guarantee that the puzzle is solvable from there; but being a bad partition guarantees that it is not solvable.\n", " " ] }, { "cell_type": "code", "execution_count": 10, "metadata": {}, "outputs": [], "source": [ "def good_partition(part, w) -> bool:\n", " \"Is this a partition which might lead to a solution in w more weighings?\"\n", " return all(len(oddballs) <= 3 ** w for oddballs in part.values())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "The following is a good partition because each of the branches has 8 possibilities, and 8 is less than 32:" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'gt': {-12, -11, -10, -9, 1, 2, 3, 4},\n", " 'eq': {-8, -7, -6, -5, 5, 6, 7, 8},\n", " 'lt': {-4, -3, -2, -1, 9, 10, 11, 12}}" ] }, "execution_count": 11, "metadata": {}, "output_type": "execute_result" } ], "source": [ "p = partition([1, 2, 3, 4], [9, 10, 11, 12], p12.oddballs)\n", "p" ] }, { "cell_type": "code", "execution_count": 12, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "True" ] }, "execution_count": 12, "metadata": {}, "output_type": "execute_result" } ], "source": [ "good_partition(p, 2)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "So now we have a viable approach to implementing `find_tree`:\n", "\n", " - We call `find_tree(puzzle, oddballs, weighings)`. At the top level, the oddballs and number of weighings come from the puzzle. At recursive levels, we use the oddballs from the partition.\n", " - We handle trivial cases when there are zero or one oddballs remaining, or no weighings remaining.\n", " - Otherwise, we ask `good_partitions` to generate random partitions and yield the good ones.\n", " - Given a good partition, try to find valid trees for each of the three branches. If we can find that, return the tree as a solution.\n", " - If we can't find good trees for any partition, return `None` to indicate failure.\n", " \n", "The rest of the work is done by `good_partitions`:\n", "\n", " - Select two lists of balls to be weighed, `L` and `R`, both of length `B`.\n", " - See what partition `L` and `R` gives us.\n", " - If it is good, yield the `(L, R, partition)` tuple.\n", " - Repeat for all possible values of `B`.\n", " - Randomly shuffle the balls and repeat the whole process, trying to generate more good partitions. I chose to repeat 100 times, to have a good chance of finding a solution for solvable puzzles, and of terminating in just a few seconds for unsolvable puzzles. \n", " - However, I note that for most puzzles, on the first weighing, there's no sense making multiple tries with randomly shuffled balls–the only choice that matters is how many balls, `B`, to put on each side, because the balls are undifferentiated at this point. So I try each value of `B` only once on the first weighing. However, some puzzles actually do differentiate between balls (you could use `oddballs` to say that ball 1 can only be light and ball 2 can only be heavy); for those puzzles we need to try repeatedly.\n", " - If I wanted to solve puzzles with thousands of balls, not just dozens, I would come back and improve `good_partitions`." ] }, { "cell_type": "code", "execution_count": 13, "metadata": {}, "outputs": [], "source": [ "def find_tree(puzzle, oddballs, weighings) -> Tree or None:\n", " \"Find a tree that covers all the oddballs in the given number of weighings.\"\n", " if len(oddballs) == 1:\n", " return first(oddballs) # One possibility left; we're done; leaf node\n", " elif len(oddballs) == 0:\n", " return 0 # No oddball (a possibility for some puzzles)\n", " elif weighings == 0:\n", " return None # No solution; failure\n", " else:\n", " for L, R, part in good_partitions(puzzle, oddballs, weighings - 1):\n", " subtrees = {r: find_tree(puzzle, part[r], weighings - 1) for r in part}\n", " if None not in subtrees.values(): \n", " return Node(L, R, **subtrees)\n", " \n", "def good_partitions(puzzle, oddballs, weighings, tries=100) -> Tuple[List[Ball], List[Ball], Partition]:\n", " \"Yield random (L, R, partition) tuples of good partitions.\"\n", " balls = sorted(puzzle.balls)\n", " if weighings == puzzle.weighings and puzzle.ob_input.issubset({eq, lt, gt, 0}): \n", " tries = 1 # First weighing, undifferentiated balls: only need to try once.\n", " for _ in range(tries): \n", " for B in range(1, 1 + len(balls) // 2):\n", " L, R = balls[:B], balls[-B:]\n", " dic = partition(L, R, oddballs)\n", " if good_partition(dic, weighings):\n", " yield L, R, dic\n", " random.shuffle(balls)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here we see that `good_partitions` does its job:" ] }, { "cell_type": "code", "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "([1, 2, 3, 4],\n", " [9, 10, 11, 12],\n", " {'gt': {-12, -11, -10, -9, 1, 2, 3, 4},\n", " 'eq': {-8, -7, -6, -5, 5, 6, 7, 8},\n", " 'lt': {-4, -3, -2, -1, 9, 10, 11, 12}})" ] }, "execution_count": 14, "metadata": {}, "output_type": "execute_result" } ], "source": [ "first(good_partitions(p12, p12.oddballs, 2))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Solving Some Puzzles\n", "\n", "Now we're ready to solve puzzles! We'll start with the original 12-ball puzzle, `p12`:" ] }, { "cell_type": "code", "execution_count": 15, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Node(L=[1, 2, 3, 4], R=[9, 10, 11, 12], gt=Node(L=[9, 2, 11], R=[4, 10, 8], gt=Node(L=[1, 2], R=[11, 12], gt=2, eq=-10, lt=0), eq=Node(L=[4, 3], R=[9, 1], gt=3, eq=-12, lt=1), lt=Node(L=[5, 12], R=[11, 4], gt=-11, eq=-9, lt=4)), eq=Node(L=[7, 10, 2, 4, 11], R=[8, 12, 5, 9, 1], gt=Node(L=[1, 2, 3, 4, 5], R=[8, 9, 10, 11, 12], gt=-8, eq=7, lt=-5), eq=Node(L=[1, 2, 3, 4, 5, 6], R=[7, 8, 9, 10, 11, 12], gt=6, eq=0, lt=-6), lt=Node(L=[1, 2, 3, 4, 5], R=[8, 9, 10, 11, 12], gt=5, eq=-7, lt=8)), lt=Node(L=[5, 2, 4, 9], R=[8, 1, 10, 6], gt=Node(L=[1], R=[12], gt=0, eq=9, lt=-1), eq=Node(L=[7, 2, 8], R=[3, 12, 9], gt=-3, eq=11, lt=12), lt=Node(L=[12, 1, 4], R=[11, 2, 6], gt=-2, eq=10, lt=-4)))" ] }, "execution_count": 15, "metadata": {}, "output_type": "execute_result" } ], "source": [ "solve(p12)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "OK, that's hard to read—my bad. Let's look at a much easier puzzle: 3 balls, 1 weighing allowed, and the oddball can only be heavier:" ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Node(L=[1], R=[3], gt=1, eq=2, lt=3)" ] }, "execution_count": 16, "metadata": {}, "output_type": "execute_result" } ], "source": [ "tree = solve(Puzzle(3, 1, oddballs={gt}))\n", "tree" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "This trivial tree says you weigh the first ball against the third (leaving the second unweighed), and the three possible weighing results tell you which of the three balls is heavier. " ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Prettier Output\n", "\n", "Let's make the output easier to read. The function `do(puzzle)` will solve a puzzle, verify that the tree is valis, and print the tree in a pretty format.\n", "\n", "I'll use `①②③④ ⚖ ⑨⑩⑪⑫ ➔` to represent a weighing; I'll use `>:+①` to represent the situation where the left side is heavier than the right resulting in ball 1 being heavy; and I'll use `=:⌖` to represent the situation where the two sides balance, resulting in no ball being an oddball." ] }, { "cell_type": "code", "execution_count": 17, "metadata": {}, "outputs": [], "source": [ "def do(puzzle):\n", " \"Solve the puzzle; verify the solution; and print the solution in a pretty format.\"\n", " tree = solve(puzzle)\n", " assert (tree is None) or valid(tree, puzzle)\n", " print(pretty_str(tree))\n", " \n", "def pretty_str(tree, i=0, prefix='') -> str:\n", " \"Pretty, indented string representing a strategy tree.\"\n", " if tree is None:\n", " return 'None'\n", " elif tree == 0:\n", " return f'{prefix}⌖'\n", " elif isinstance(tree, Leaf):\n", " return f'{prefix}{\"+\" if tree > 0 else \"-\"}{ball_str(abs(tree))}'\n", " else:\n", " subtrees = (pretty_str(tree.gt, i+1, '>:'), \n", " pretty_str(tree.eq, i+1, '=:'), \n", " pretty_str(tree.lt, i+1, '<:'))\n", " indent = ('' if i == 0 else ('\\n' + ' ' * i))\n", " def side(balls): return ''.join(map(ball_str, sorted(balls)))\n", " return f'{indent}{prefix}{side(tree.L)} ⚖ {side(tree.R)} ➔ {\" \".join(subtrees)}'\n", " \n", "def ball_str(i) -> str:\n", " \"\"\"Character string representing ball number `i`.\"\"\"\n", " balls =' ①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿'\n", " return balls[i] if (1 <= i < len(balls)) else str(i) + ' '" ] }, { "cell_type": "code", "execution_count": 18, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "① ⚖ ③ ➔ >:+① =:+② <:+③\n" ] } ], "source": [ "# The easier puzzle from before: 3 balls, 1 weighing, only heavier balls possible\n", "do(Puzzle(3, 1, {gt}))" ] }, { "cell_type": "code", "execution_count": 19, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "① ⚖ ③ ➔ \n", " >:② ⚖ ① ➔ >:⌖ =:-③ <:+① \n", " =:① ⚖ ② ➔ >:-② =:⌖ <:+② \n", " <:① ⚖ ② ➔ >:⌖ =:+③ <:-①\n" ] } ], "source": [ "# 3 balls, 2 weighings, lighter or heavier balls possible\n", "do(Puzzle(3, 2, {lt, gt}))" ] }, { "cell_type": "code", "execution_count": 20, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④ ⚖ ⑨⑩⑪⑫ ➔ \n", " >:①⑦⑩⑫ ⚖ ②⑥⑧⑨ ➔ \n", " >:① ⚖ ⑫ ➔ >:+① =:-⑨ <:⌖ \n", " =:①⑦⑫ ⚖ ④⑤⑪ ➔ >:-⑪ =:+③ <:+④ \n", " <:①⑦⑪⑫ ⚖ ③⑤⑥⑩ ➔ >:-⑩ =:+② <:-⑫ \n", " =:②⑦⑩ ⚖ ①⑥⑧ ➔ \n", " >:⑥⑦⑨ ⚖ ②⑤⑪ ➔ >:+⑦ =:-⑧ <:-⑥ \n", " =:①②③④⑤ ⚖ ⑧⑨⑩⑪⑫ ➔ >:+⑤ =:⌖ <:-⑤ \n", " <:④⑤⑧⑨⑫ ⚖ ①②③⑥⑩ ➔ >:+⑧ =:-⑦ <:+⑥ \n", " <:①⑩⑫ ⚖ ③⑧⑨ ➔ \n", " >:⑫ ⚖ ⑩ ➔ >:+⑫ =:-③ <:+⑩ \n", " =:④⑦⑧ ⚖ ②③⑤ ➔ >:-② =:+⑪ <:-④ \n", " <:① ⚖ ⑫ ➔ >:⌖ =:+⑨ <:-①\n" ] } ], "source": [ "# The original puzzle with 12 balls and 3 weighings\n", "do(p12)" ] }, { "cell_type": "code", "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④ ⚖ ⑨⑩⑪⑫ ➔ \n", " >:③⑩⑪ ⚖ ④⑦⑨ ➔ \n", " >:①②③ ⚖ ⑩⑪⑫ ➔ >:+③ =:-⑨ <:⌖ \n", " =:②⑫ ⚖ ③⑧ ➔ >:+② =:+① <:-⑫ \n", " <:④⑥⑧⑩ ⚖ ①⑤⑨⑫ ➔ >:+④ =:-⑪ <:-⑩ \n", " =:③⑤⑧⑪ ⚖ ①②⑥⑨ ➔ \n", " >:①②③④⑤ ⚖ ⑧⑨⑩⑪⑫ ➔ >:+⑤ =:-⑥ <:+⑧ \n", " =:①②③④⑤⑥ ⚖ ⑦⑧⑨⑩⑪⑫ ➔ >:-⑦ =:⌖ <:+⑦ \n", " <:①②③④⑤ ⚖ ⑧⑨⑩⑪⑫ ➔ >:-⑧ =:+⑥ <:-⑤ \n", " <:②④⑧⑫ ⚖ ①③⑤⑦ ➔ \n", " >:③⑩ ⚖ ①⑥ ➔ >:-① =:+⑫ <:-③ \n", " =:②⑩ ⚖ ⑦⑪ ➔ >:+⑩ =:+⑨ <:+⑪ \n", " <:①② ⚖ ⑪⑫ ➔ >:⌖ =:-④ <:-②\n" ] } ], "source": [ "# A different random solution to the same puzzle\n", "do(p12)" ] }, { "cell_type": "markdown", "metadata": { "tags": [] }, "source": [ "I note that the traditional answer to the 12-ball puzzle weighs 4 balls on each side of the first weighing, three balls on the second weighing, and 2 balls on the third weighing. But my program is not so orderly. It always weighs 4 balls on the first weighing (because that is the only good partition), but from there it can vary; it won't necessarily minimize the number of balls on each side of the scale, nor make one branch of the tree be symmetric with another branch.\n", "\n", "# Other Puzzles with 3 Weighings\n", "\n" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can do **12 balls in 3 weighings** even when we add in the possibility that there is no oddball–all the balls weigh the same:" ] }, { "cell_type": "code", "execution_count": 22, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④ ⚖ ⑨⑩⑪⑫ ➔ \n", " >:①⑥⑫ ⚖ ②④⑨ ➔ \n", " >:① ⚖ ⑫ ➔ >:+① =:-⑨ <:⌖ \n", " =:③⑪ ⚖ ⑧⑨ ➔ >:+③ =:-⑩ <:-⑪ \n", " <:③⑤⑦⑧⑨ ⚖ ①④⑥⑩⑫ ➔ >:-⑫ =:+② <:+④ \n", " =:①⑥⑧ ⚖ ③⑦⑩ ➔ \n", " >:⑧ ⚖ ⑥ ➔ >:+⑧ =:-⑦ <:+⑥ \n", " =:①②③④⑤ ⚖ ⑧⑨⑩⑪⑫ ➔ >:+⑤ =:⌖ <:-⑤ \n", " <:④⑦⑧⑪ ⚖ ①③⑤⑨ ➔ >:+⑦ =:-⑥ <:-⑧ \n", " <:③⑥⑧⑪ ⚖ ①④⑤⑨ ➔ \n", " >:②④⑦ ⚖ ①③⑥ ➔ >:-① =:+⑪ <:-④ \n", " =:②④⑨⑩⑪ ⚖ ③⑤⑥⑦⑧ ➔ >:+⑩ =:+⑫ <:-② \n", " <:①②③ ⚖ ⑩⑪⑫ ➔ >:⌖ =:+⑨ <:-③\n" ] } ], "source": [ "do(Puzzle(12, 3, oddballs={lt, gt, 0}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Can we solve the **13-balls in 3 weighings** puzzle, which has 26 possibilities? After all, 26 is less than 33 = 27." ] }, { "cell_type": "code", "execution_count": 23, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "None\n" ] } ], "source": [ "p13 = Puzzle(13, 3)\n", "do(p13)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**No**, and the reason is that there is no first weighing that partitions the 26 possibilities into three branches, each of which has 9 or fewer possibilities (and thus can be handled in the two remaining weighings). No matter what we do, there will always be a branch with 10 or more possibilities:" ] }, { "cell_type": "code", "execution_count": 24, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'gt': {-13, -12, -11, -10, 1, 2, 3, 4},\n", " 'eq': {-9, -8, -7, -6, -5, 5, 6, 7, 8, 9},\n", " 'lt': {-4, -3, -2, -1, 10, 11, 12, 13}}" ] }, "execution_count": 24, "metadata": {}, "output_type": "execute_result" } ], "source": [ "partition([1, 2, 3, 4], [10, 11, 12, 13], p13.oddballs)" ] }, { "cell_type": "code", "execution_count": 25, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{'gt': {-13, -12, -11, -10, -9, 1, 2, 3, 4, 5},\n", " 'eq': {-8, -7, -6, 6, 7, 8},\n", " 'lt': {-5, -4, -3, -2, -1, 9, 10, 11, 12, 13}}" ] }, "execution_count": 25, "metadata": {}, "output_type": "execute_result" } ], "source": [ "partition([1, 2, 3, 4, 5], [9, 10, 11, 12, 13], p13.oddballs)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "I'll define `partition_sizes` to make this more clear:" ] }, { "cell_type": "code", "execution_count": 26, "metadata": {}, "outputs": [], "source": [ "def partition_sizes(puzzle, B) -> List[int]:\n", " \"How big is each branch of a partition with B balls on both sides?\"\n", " part = partition(puzzle.balls[:B], puzzle.balls[-B:], puzzle.oddballs)\n", " return [len(oddballs) for oddballs in part.values()]" ] }, { "cell_type": "code", "execution_count": 27, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "{2: [4, 18, 4], 3: [6, 14, 6], 4: [8, 10, 8], 5: [10, 6, 10], 6: [12, 2, 12]}" ] }, "execution_count": 27, "metadata": {}, "output_type": "execute_result" } ], "source": [ "{B: partition_sizes(p13, B) for B in range(2, 7)}" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "We can do **27 balls in 3 weighings** if we know that the oddball can only be lighter, not heavier:" ] }, { "cell_type": "code", "execution_count": 28, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④⑤⑥⑦⑧⑨ ⚖ ⑲⑳㉑㉒㉓㉔㉕㉖㉗ ➔ \n", " >:③⑪⑯⑲⑳㉖ ⚖ ①⑨⑱㉒㉓㉕ ➔ \n", " >:⑲㉒㉔ ⚖ ⑦㉑㉕ ➔ >:-㉕ =:-㉓ <:-㉒ \n", " =:⑲㉔ ⚖ ⑩㉑ ➔ >:-㉑ =:-㉗ <:-㉔ \n", " <:⑥⑨⑫⑮⑲㉔㉗ ⚖ ①④⑦⑩⑱㉑㉖ ➔ >:-㉖ =:-⑳ <:-⑲ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫ ⚖ ⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗ ➔ \n", " >:①②③⑤⑨⑮⑱⑲㉑㉒㉕㉗ ⚖ ⑥⑦⑧⑩⑪⑫⑭⑰⑳㉓㉔㉖ ➔ >:-⑰ =:-⑯ <:-⑱ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬ ⚖ ⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗ ➔ >:-⑮ =:-⑭ <:-⑬ \n", " <:②③⑧⑫⑬㉕㉗ ⚖ ④⑤⑪⑭⑲㉑㉖ ➔ >:-⑪ =:-⑩ <:-⑫ \n", " <:①⑤⑦⑪㉔㉗ ⚖ ③④⑧⑮⑲㉖ ➔ \n", " >:④⑤⑩⑮ ⚖ ①⑧⑯㉒ ➔ >:-⑧ =:-③ <:-④ \n", " =:②⑤⑧⑪⑫⑭⑮㉔ ⚖ ①④⑨⑰⑱⑳㉒㉓ ➔ >:-⑨ =:-⑥ <:-② \n", " <:①②⑧⑩⑫⑮㉑㉔㉖ ⚖ ④⑤⑥⑪⑯⑱㉒㉓㉗ ➔ >:-⑤ =:-⑦ <:-①\n" ] } ], "source": [ "do(Puzzle(27, 3, {lt}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "And we can do **26 balls** under the condition that either one ball is lighter or all the balls weigh the same:" ] }, { "cell_type": "code", "execution_count": 29, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④⑤⑥⑦⑧⑨ ⚖ ⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ \n", " >:③⑤⑨⑰⑲㉓㉔ ⚖ ④⑥⑩⑯⑱㉒㉖ ➔ \n", " >:①⑬⑰㉖ ⚖ ⑤⑥⑫⑱ ➔ >:-⑱ =:-㉒ <:-㉖ \n", " =:⑭⑮⑱㉒㉔㉕ ⚖ ①④⑬⑰⑳㉓ ➔ >:-⑳ =:-㉑ <:-㉕ \n", " <:②⑤⑥⑧⑨⑩⑯㉓ ⚖ ①③⑪⑮⑲㉑㉕㉖ ➔ >:-⑲ =:-㉔ <:-㉓ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫ ⚖ ⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ \n", " >:①③⑤⑦⑮⑱㉖ ⚖ ④⑥⑧⑩⑪⑯㉔ ➔ >:-⑯ =:-⑰ <:-⑮ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬ ⚖ ⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ >:-⑭ =:⌖ <:-⑬ \n", " <:①⑤⑦⑧⑪⑯⑱㉓㉔㉕ ⚖ ②④⑥⑨⑫⑭⑮⑳㉒㉖ ➔ >:-⑫ =:-⑩ <:-⑪ \n", " <:①②⑤⑫㉑㉒㉓ ⚖ ③④⑥⑩⑲⑳㉖ ➔ \n", " >:⑥⑭ ⚖ ④⑱ ➔ >:-④ =:-③ <:-⑥ \n", " =:④⑤⑧⑫⑰⑳㉓㉔ ⚖ ①②③⑦⑩⑪⑭㉕ ➔ >:-⑦ =:-⑨ <:-⑧ \n", " <:②③⑦⑫⑬⑳㉑㉔ ⚖ ④⑤⑥⑧⑰⑲㉒㉕ ➔ >:-⑤ =:-① <:-②\n" ] } ], "source": [ "do(Puzzle(26, 3, {lt, eq}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Here's a puzzle with **26 balls** where either one of the odd-numbered balls is heavier, or one of the even-numbered balls is lighter, or there is no oddball." ] }, { "cell_type": "code", "execution_count": 30, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[0, 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]\n" ] } ], "source": [ "N = 26\n", "odd_even = [(+b if b % 2 else -b) for b in range(N + 1)]\n", "p26 = Puzzle(N, 3, oddballs=set(odd_even))\n", "print(odd_even)" ] }, { "cell_type": "code", "execution_count": 31, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "④⑥⑪⑫⑭⑮⑰⑳㉕ ⚖ ①②③⑨⑩㉒㉓㉔㉖ ➔ \n", " >:①⑥⑨⑩⑬⑮⑯⑱㉑㉒ ⚖ ②③④⑤⑦⑧⑫⑳㉔㉕ ➔ \n", " >:①②③ ⚖ ㉔㉕㉖ ➔ >:-㉔ =:+⑮ <:-② \n", " =:①②③④⑤⑥⑦⑧⑨⑩ ⚖ ⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ >:-㉖ =:+⑪ <:+⑰ \n", " <:①②③④⑤ ⚖ ㉒㉓㉔㉕㉖ ➔ >:-㉒ =:-⑩ <:+㉕ \n", " =:①②③④⑤⑥⑦⑧⑨ ⚖ ⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ \n", " >:①③⑥⑦⑨⑯⑱⑲㉖ ⚖ ⑩⑫⑬⑭⑰⑳㉑㉔㉕ ➔ >:+⑦ =:+⑤ <:-⑱ \n", " =:①⑦⑩⑪⑰⑱⑳㉑㉓㉕㉖ ⚖ ②③⑤⑥⑧⑨⑬⑭⑮⑯㉔ ➔ >:-⑯ =:⌖ <:+⑬ \n", " <:①⑥⑧⑨⑰⑱㉑ ⚖ ②③⑤⑦⑩⑭㉖ ➔ >:+㉑ =:+⑲ <:-⑧ \n", " <:①②③④⑤⑥⑦ ⚖ ⑳㉑㉒㉓㉔㉕㉖ ➔ \n", " >:②③④⑧⑫⑮⑳㉔㉕ ⚖ ⑤⑥⑩⑪⑬⑱㉑㉒㉓ ➔ >:+③ =:+① <:-⑳ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫ ⚖ ⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ >:+⑨ =:-⑭ <:-⑫ \n", " <:⑦⑧⑨⑮⑯⑰⑱㉔㉕㉖ ⚖ ④⑤⑩⑫⑭⑲⑳㉑㉒㉓ ➔ >:-④ =:-⑥ <:+㉓\n" ] } ], "source": [ "do(p26)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Another variation: **27 balls, 3 weighings**, the oddball can only be heavier, but one ball (number 27) is poisonous and can't be touched or placed on the balance scale. It might, however be the heavier ball, and you still need to report it as such if it is. \n", "\n", "We describe this situation by defining a puzzle with 26 (weighable) balls, but with the oddballs including all the positive ball numbers, plus +27. Note that when all three weighings are equal, the strategy tree correctly reports `+㉗`." ] }, { "cell_type": "code", "execution_count": 32, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④⑤⑥⑦⑧⑨ ⚖ ⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ \n", " >:③④⑦⑩⑯㉒㉔㉕㉖ ⚖ ②⑧⑨⑫⑬⑰⑱⑲㉓ ➔ \n", " >:③⑭⑯⑰⑱㉒㉖ ⚖ ⑥⑦⑪⑲⑳㉑㉕ ➔ >:+③ =:+④ <:+⑦ \n", " =:①③⑪⑬⑭⑮㉒ ⚖ ⑥⑧⑨⑩⑫㉑㉕ ➔ >:+① =:+⑤ <:+⑥ \n", " <:①③⑧⑫⑬⑰㉑ ⚖ ②⑥⑦⑭⑱⑲㉕ ➔ >:+⑧ =:+⑨ <:+② \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫ ⚖ ⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ \n", " >:①②③⑤⑥⑩⑭⑯⑰⑲㉑ ⚖ ④⑦⑧⑨⑪⑬⑮⑱⑳㉓㉕ ➔ >:+⑩ =:+⑫ <:+⑪ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬ ⚖ ⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖ ➔ >:+⑬ =:+㉗ <:+⑭ \n", " <:⑦⑩⑮⑲㉖ ⚖ ③⑤⑪⑬⑯ ➔ >:+⑮ =:+⑰ <:+⑯ \n", " <:②⑩⑳㉓㉔ ⚖ ⑧⑪⑱⑲㉒ ➔ \n", " >:⑩⑫⑬⑱㉔ ⚖ ①⑮⑲⑳㉒ ➔ >:+㉔ =:+㉓ <:+⑳ \n", " =:④⑦⑪⑮⑱⑳㉑㉓ ⚖ ①②⑤⑬⑭⑲㉔㉕ ➔ >:+㉑ =:+㉖ <:+㉕ \n", " <:⑨⑩⑪⑱ ⚖ ③④⑤㉒ ➔ >:+⑱ =:+⑲ <:+㉒\n" ] } ], "source": [ "do(Puzzle(26, 3, oddballs={gt, 27}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# Puzzles with 4 Weighings\n", "\n", "We can tackle larger puzzles. With 4 weighings, we can theoretically handle up to 34 = 81 possibilities. Can we solve for **40 balls**, heavy or light?" ] }, { "cell_type": "code", "execution_count": 33, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "None\n" ] } ], "source": [ "p40 = Puzzle(40, 4)\n", "\n", "do(p40)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Unfortunately, **no**, we didn't find a solution. It is because the `partition_sizes` always leaves us with a branch of size 28 or more, which can;t be handled in the three remaining weighings:" ] }, { "cell_type": "code", "execution_count": 34, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[26, 28, 26]" ] }, "execution_count": 34, "metadata": {}, "output_type": "execute_result" } ], "source": [ "partition_sizes(p40, 13)" ] }, { "cell_type": "code", "execution_count": 35, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[28, 24, 28]" ] }, "execution_count": 35, "metadata": {}, "output_type": "execute_result" } ], "source": [ "partition_sizes(p40, 14)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "How about **39 balls, 4 weighings**, heavier or lighter, with the possibility that no ball is odd? That's 39 × 2 + 1 = 79 possibilities, which is less than 81. " ] }, { "cell_type": "code", "execution_count": 36, "metadata": {}, "outputs": [], "source": [ "p39 = Puzzle(39, 4, {lt, eq, gt})" ] }, { "cell_type": "code", "execution_count": 37, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[26, 27, 26]" ] }, "execution_count": 37, "metadata": {}, "output_type": "execute_result" } ], "source": [ "partition_sizes(p39, 13)" ] }, { "cell_type": "code", "execution_count": 38, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬ ⚖ ㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴ ➔ \n", " >:⑦⑧⑪⑫⑮㉑㉓㉖㉙㉞㊲㊴ ⚖ ②⑥⑨⑬⑭⑰㉒㉘㉛㉜㉟㊱ ➔ \n", " >:①②③⑤⑦⑪⑮⑯⑱㉙㉚㉛㉟ ⚖ ⑧⑩⑬⑭⑰⑲㉑㉒㉓㉕㉖㉘㉞ ➔ \n", " >:①④⑪⑬⑭⑯㉑㉒㉔㉖㉗㉘㉙㉚㉜㊲ ⚖ ③⑤⑥⑧⑩⑫⑮⑱⑳㉓㉕㉛㉞㊱㊳㊴ ➔ >:+⑪ =:+⑦ <:-㉘ \n", " =:①③⑥⑧⑯⑲㉒㉔㉜㉞㊴ ⚖ ②⑤⑦⑨⑮⑰㉑㉓㉖㊱㊲ ➔ >:-㊱ =:+⑫ <:-㉜ \n", " <:①②④⑪⑳㉒㉖㉗㉘㉚ ⚖ ⑥⑦⑧⑩⑮⑰㉕㉝㉟㊳ ➔ >:-㉟ =:-㉛ <:+⑧ \n", " =:④⑥⑪⑮㉓㉔㉙㉝㉞ ⚖ ③⑤⑦⑧⑬⑯㉗㊱㊳ ➔ \n", " >:⑤⑦⑧⑩⑪㉗㉚㉛㉜㉝㉞㊱㊲ ⚖ ⑨⑫⑬⑯⑰⑱㉒㉓㉔㉕㉖㉟㊳ ➔ >:-㊳ =:+④ <:-㉗ \n", " =:③⑤⑥⑧⑨⑬⑮⑱㉖㉗㉝㉞㉟ ⚖ ②⑦⑩⑪⑭⑯⑳㉑㉘㉚㉛㉜㊴ ➔ >:-㉚ =:+① <:+⑩ \n", " <:①⑦⑫⑱⑳㉒㉔㉕㉗㉙㊱ ⚖ ②③⑩⑮⑯⑰㉑㉛㉜㉝㉟ ➔ >:-㉝ =:+⑤ <:+③ \n", " <:④⑤⑦⑨⑩⑮⑯㉔㉖㉚㉟㊱㊲ ⚖ ①②③⑧⑫⑰⑲㉑㉘㉙㉛㉝㉞ ➔ \n", " >:⑦⑬⑲㉔㉜㊲ ⚖ ⑨㉓㉕㉗㉙㉚ ➔ >:-㉙ =:-㉞ <:+⑨ \n", " =:①③⑤⑧⑨⑫⑭⑲㉘㉛㉞㊲㊳ ⚖ ⑥⑦⑪⑮⑯⑳㉒㉓㉔㉙㉝㉟㊴ ➔ >:-㊴ =:+⑬ <:+⑥ \n", " <:①② ⚖ ㊳㊴ ➔ >:+② =:-㊲ <:⌖ \n", " =:①②⑤⑥⑦⑧⑨⑪⑫⑮⑰㉖㉞㊳㊴ ⚖ ④⑩⑬⑱⑲㉒㉓㉔㉕㉗㉘㉙㉚㉝㊱ ➔ \n", " >:④⑤⑥⑨⑩⑭⑮⑱⑲㉒㉚㉛㊳ ⚖ ①②⑬⑳㉑㉓㉕㉗㉝㉞㉟㊱㊴ ➔ \n", " >:②④⑨⑭⑲㉒㉔㉖㉝㉟㊴ ⚖ ⑦⑧⑩⑫⑮⑯㉓㉗㉚㊱㊲ ➔ >:-㉓ =:-㉕ <:+⑮ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯ ⚖ ㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴ ➔ >:-㉔ =:+⑰ <:+㉖ \n", " <:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱ ⚖ ㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴ ➔ >:-㉒ =:-⑲ <:-⑱ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲ ⚖ ㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴ ➔ \n", " >:③⑥⑨⑫⑳㉓㉕㉙㉚㉟㊱㊳ ⚖ ④⑮⑯㉑㉔㉗㉛㉜㉝㉞㊲㊴ ➔ >:-㉑ =:+⑭ <:+⑯ \n", " =:②⑤⑧⑨⑩⑬⑮⑳㉓㉔㉝㉞㉟㊳ ⚖ ③⑥⑪⑫⑯⑰⑲㉑㉕㉙㉚㉛㉜㊴ ➔ >:+⑳ =:⌖ <:-⑳ \n", " <:④⑬⑭⑮㉑㉘㉝㉟ ⚖ ①③⑤⑧㉕㉞㊱㊳ ➔ >:+㉑ =:-⑯ <:-⑭ \n", " <:③⑮⑰⑲㉑㉔㉕㉙ ⚖ ⑦⑧⑬⑭⑱㉗㉚㉜ ➔ \n", " >:③⑥⑨⑪⑭⑮⑯㉑㉕㉛㉞㊲㊳㊴ ⚖ ④⑤⑦⑧⑫⑰⑱㉓㉔㉘㉙㉚㉜㊱ ➔ >:+㉕ =:+⑲ <:+㉔ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰ ⚖ ㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴ ➔ >:-㉖ =:+㉒ <:+㉓ \n", " <:⑤⑦⑨⑬⑮ ⚖ ②⑰㉙㉜㊱ ➔ >:-⑰ =:+⑱ <:-⑮ \n", " <:①⑤⑥⑧⑭㉒㉙㉚㉟㊲㊳㊴ ⚖ ③④⑯⑰⑱㉓㉕㉗㉘㉝㉞㊱ ➔ \n", " >:②④⑨⑯⑲㉑㉓㉔㉖㉗㉘㉙㊳ ⚖ ③⑥⑪⑬⑭⑱⑳㉕㉚㉛㉜㉝㊱ ➔ \n", " >:⑥⑦⑨⑫⑬⑭⑮⑯⑱⑳㉑㉓㉗㉛㉟㊴ ⚖ ③④⑧⑩⑪⑰⑲㉔㉕㉖㉘㉙㉜㉝㉞㊲ ➔ >:-③ =:+㊳ <:+㉙ \n", " =:②④⑤⑦⑫⑬⑮⑰⑱㉒㉕㉚㉛㊴ ⚖ ⑧⑩⑭⑯⑲⑳㉔㉖㉗㉝㉞㉟㊱㊳ ➔ >:+㊴ =:+㊲ <:+㉟ \n", " <:①②③④ ⚖ ㊱㊲㊳㊴ ➔ >:⌖ =:+㉚ <:-④ \n", " =:⑨⑫⑲⑳㉔㉕㉗㉙㉞㊴ ⚖ ②④⑥⑩⑪㉓㉘㉛㊲㊳ ➔ \n", " >:⑨⑩⑳ ⚖ ②⑭㊴ ➔ >:-② =:-⑪ <:-⑩ \n", " =:①⑥⑫⑬⑰⑱⑳㉑㉓㉛㉞㊳㊴ ⚖ ③④⑤⑦⑨⑩⑭⑮㉒㉔㉙㉝㊲ ➔ >:-⑦ =:+㉜ <:-⑬ \n", " <:①⑧⑨⑯㉗㉛㉜㉝㊴ ⚖ ⑥㉑㉒㉓㉕㉙㉚㊱㊲ ➔ >:+㉛ =:-⑫ <:-⑨ \n", " <:②③⑧⑪㉒㉓㉛㊱ ⚖ ①⑤⑫⑮⑲㉕㉝㉞ ➔ \n", " >:②④⑥⑫⑰⑱㉑㉕㉖㉙㉜㉟㊲㊳ ⚖ ①③⑦⑨⑩⑭⑮⑯⑲⑳㉒㉓㊱㊴ ➔ >:-① =:-⑤ <:+㊱ \n", " =:①⑥⑦⑬⑯⑰㉓㉘㉛㉝㊲㊳㊴ ⚖ ②④⑨⑪⑭⑮㉒㉔㉖㉙㉚㉜㉞ ➔ >:+㉘ =:+㉗ <:-⑥ \n", " <:⑦⑨㉔㉘㉟ ⚖ ②⑧⑰㉗㉝ ➔ >:-⑧ =:+㉞ <:+㉝\n" ] } ], "source": [ "do(p39)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "How about **80 balls, 4 weighings** under the condition that no ball can be heavier (thus, 81 possibilities, the maximum)? (Unfortunately, the output gets ugly, because we ran out of unicode circled-number characters, and have to use just integers.)" ] }, { "cell_type": "code", "execution_count": 39, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗ ⚖ 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 ➔ \n", " >:①②④⑤⑥⑱⑲㉔㉕㉗㉚㉜㉟51 55 57 60 61 62 63 65 70 71 ⚖ ⑦⑧⑩⑭⑮㉒㉖㊱㊳㊷㊺㊻㊿53 56 59 64 66 72 73 74 78 79 ➔ \n", " >:②⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑳㉗㉘㉙㉚㉛㉜㉞㊱㊼55 57 58 60 61 62 63 66 72 74 76 ⚖ ①④⑤⑥⑲㉑㉒㉓㉔㉕㉝㉟㊲㊳㊵㊶㊷㊸㊹㊺㊻51 52 53 56 59 65 68 69 70 71 73 77 80 ➔ \n", " >:③④⑨⑩⑪⑫⑬⑮⑲⑳㉑㉕㉖㉘㉚㉛㉜㉞㊲㊵㊶㊹㊾㊿52 54 56 57 61 62 64 72 75 76 77 78 ⚖ ①②⑤⑥⑦⑧⑭⑯⑰⑱㉒㉓㉔㉗㉙㉝㊱㊳㊷㊸㊺㊼㊽53 55 63 65 66 67 68 69 70 73 74 79 80 ➔ >:-73 =:-59 <:-56 \n", " =:③④⑤⑧⑬⑭⑮㉑㉒㉓㉖㉘㉚㊱㊺㊻㊿53 54 60 61 62 63 64 66 75 77 ⚖ ②⑥⑦⑩⑫⑳㉗㉙㉛㉜㉝㉞㊶㊸㊹㊽52 55 59 65 68 69 71 74 76 79 80 ➔ >:-79 =:-78 <:-64 \n", " <:⑥⑨⑲㉓㉛㊱㊲㊹㊺㊿51 63 66 70 73 76 ⚖ ②⑬㉖㉗㉘㉟㊸㊼㊽57 60 61 65 68 74 75 ➔ >:-74 =:-72 <:-66 \n", " =:④⑥⑧⑨⑪⑱㉖㉗㉞㊱㊵㊷㊸㊼㊾57 58 64 67 69 70 74 79 ⚖ ⑦⑮⑰㉑㉒㉔㉕㉙㉚㉛㉜㉟㊳㊻51 54 55 59 60 61 63 68 80 ➔ \n", " >:③⑳㉖54 62 ⚖ ②⑰㉓㉔68 ➔ >:-68 =:-80 <:-54 \n", " =:②③⑦⑮⑲⑳㉖㉘㉙㉛㉜㉝㊱㊲㊶㊼51 53 55 57 59 67 69 73 76 79 ⚖ ④⑩⑪⑬⑭⑰㉒㉓㉕㊳㊵㊷㊽56 60 61 62 63 64 65 66 70 74 75 78 80 ➔ >:-75 =:-77 <:-76 \n", " <:①⑥⑪㉒㉓㉔57 59 63 66 67 68 ⚖ ⑤⑰⑳㊺51 58 60 64 65 71 74 76 ➔ >:-58 =:-69 <:-67 \n", " <:①⑦⑪⑬⑲⑳㉓㉕㉖㉗㉚㉛㊳㊴㊵㊻53 57 61 62 69 ⚖ ④⑥⑩⑯⑱㉜㊱㊶㊷㊺㊽㊾52 60 63 67 71 72 76 77 78 ➔ \n", " >:⑱㉑㉝㊽52 57 65 66 71 ⚖ ⑤⑰㉗㉘㊱㊿61 63 64 ➔ >:-63 =:-60 <:-71 \n", " =:③④⑧⑮⑯⑱⑳㉑㉓㉖㊱㊴㊸㊻51 59 63 66 68 70 73 75 79 80 ⚖ ①②⑩⑭⑲㉕㉙㉚㉛㉜㉟㊵㊷㊺㊽㊾52 53 57 62 65 69 71 74 ➔ >:-65 =:-55 <:-70 \n", " <:④⑥⑧⑬⑮㉔㉕㉚㉟㊳㊾㊿51 53 54 57 58 65 67 74 78 ⚖ ②⑦⑩⑫⑳㉒㉗㉜㉝㉞㊹㊺㊽59 60 62 66 68 69 72 73 ➔ >:-62 =:-61 <:-57 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱ ⚖ ㊺㊻㊼㊽㊾㊿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 ➔ \n", " >:③⑨⑩⑱⑲⑳㉕㉗㉘㉝㉟㊱㊶㊸㊻㊼51 54 57 60 63 65 66 69 70 71 72 ⚖ ②⑤⑫⑰㉒㉓㉖㉛㉜㊳㊴㊵㊷㊽㊿52 56 58 59 61 67 68 73 76 77 78 79 ➔ \n", " >:⑤⑧⑱⑲㉓㉕㉖㉗㉛㉜㉞㊴㊵㊶㊷㊺㊻52 53 55 57 59 60 62 64 67 68 71 72 73 75 78 80 ⚖ ①②③⑦⑨⑩⑪⑫⑬⑭⑮⑰⑳㉑㉒㉔㉘㉙㉝㉟㊱㊲㊳㊸㊹㊿54 58 61 63 70 76 79 ➔ >:-㊿ =:-㊽ <:-52 \n", " =:⑥⑱㉑㊷㊹㊺㊿57 59 66 69 ⚖ ⑫⑮⑳㉛㊵㊻53 56 58 63 73 ➔ >:-53 =:-㊾ <:-㊺ \n", " <:⑫⑰㉞㊱㊲㊴㊶㊷㊸㊹51 52 55 59 63 69 70 74 77 79 ⚖ ④⑤⑦⑪⑯⑱㉕㉗㉛㉝㊼㊽56 64 65 66 71 73 78 80 ➔ >:-㊼ =:-㊻ <:-51 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴ ⚖ ㊷㊸㊹㊺㊻㊼㊽㊾㊿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 ➔ \n", " >:④⑥⑫⑯⑰⑳㉚㉞㉟㊵㊹62 64 65 67 68 71 79 80 ⚖ ②⑨⑪⑭㉑㉕㉗㉘㉛㉜㊱㊲㊸㊺㊽55 70 75 76 ➔ >:-㊸ =:-㊷ <:-㊹ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵ ⚖ ㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿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 ➔ >:-㊶ =:⌖ <:-㊵ \n", " <:⑥⑮⑳㉑㉔㉝㉟㊳㊽53 59 61 71 73 79 ⚖ ④⑤⑫⑲㉓㉙㊲㊿52 57 58 64 65 75 76 ➔ >:-㊲ =:-㊴ <:-㊳ \n", " <:⑦⑩㉔㉖㉘㉙㉚㊷㊸㊹㊼㊽51 52 56 58 59 62 65 68 71 72 77 ⚖ ②④⑥⑨⑬⑭⑱㉑㉕㉗㉜㉝㉞㊲㊳55 57 63 66 67 69 74 79 ➔ \n", " >:②⑤⑥⑧⑨⑫⑬⑭⑰⑱㉖㉚㉛㉞㊱㊳㊸㊹㊺㊻㊿54 55 57 59 61 64 65 66 72 73 77 ⚖ ①④⑩⑪⑯⑳㉑㉒㉔㉗㉘㉙㉜㊲㊴㊶㊷㊼㊽㊾52 53 56 58 60 63 70 71 75 76 78 80 ➔ >:-㉜ =:-㉝ <:-㉞ \n", " =:①③④⑩⑪⑭⑰⑱㉑㉒㉓㉜㉟㊲㊳㊶㊸㊹㊻㊼㊽53 56 57 64 66 68 70 71 72 73 74 75 77 79 80 ⚖ ⑤⑥⑦⑧⑨⑫⑬⑮⑯⑳㉔㉕㉖㉗㉙㉝㊱㊴㊵㊷㊺㊿51 52 54 55 58 59 60 61 62 63 65 67 69 78 ➔ >:-㊱ =:-㉛ <:-㉟ \n", " <:②⑧⑨⑩⑪⑫⑬⑭⑰⑲⑳㉔㉕㉗㉘㉛㉝㉞㊱㊲㊳㊶㊹㊾52 54 55 58 63 66 67 68 69 72 73 78 79 80 ⚖ ①④⑤⑥⑦⑮⑯⑱㉑㉒㉓㉖㉙㉜㉟㊴㊵㊷㊸㊺㊻㊼㊽㊿51 53 56 59 61 62 64 65 70 71 74 75 76 77 ➔ >:-㉙ =:-㉚ <:-㉘ \n", " <:③⑦⑧⑨⑪⑰⑲⑳㉖㉙㉛㉜㉟㊳㊴㊵㊸53 54 57 59 62 63 72 75 77 ⚖ ②⑩⑫⑬⑭⑮⑱㉔㉗㉘㉞㊷㊹㊺51 52 56 60 65 67 68 70 71 76 79 80 ➔ \n", " >:⑤⑧⑪⑭⑯⑰⑱⑳㉓㉔㉖㉘㊲㊳㊶㊽㊿51 54 56 59 60 61 62 63 68 71 72 74 76 ⚖ ①③④⑨⑬⑮㉑㉕㉗㉜㉝㉞㉟㊱㊵㊻㊼52 55 57 58 65 66 67 69 70 73 77 78 80 ➔ \n", " >:⑭㉗75 ⚖ ⑬㉓67 ➔ >:-⑬ =:-⑮ <:-㉗ \n", " =:③⑫㉕㉗㉘㉚㊴㊵㊺㊽53 56 59 67 68 70 76 78 79 ⚖ ①②⑤⑮⑯⑰㉑㉒㉛㉞㊹㊼54 62 63 64 71 72 75 ➔ >:-② =:-⑩ <:-⑫ \n", " <:①⑱㊴㊹51 54 58 66 ⚖ ⑩⑭㉗㊼㊾57 67 73 ➔ >:-⑭ =:-㉔ <:-⑱ \n", " =:①③⑦⑭⑯⑰⑲㉓㉗㉜㊴㊸㊺㊻㊽52 54 63 65 67 69 72 75 78 ⚖ ②④⑥⑧⑩㉕㉖㉙㉚㉛㊱㊲㊳㊵㊷㊼51 55 62 66 70 73 76 77 ➔ \n", " >:⑥⑫⑯⑳㉗㉚㉟㊱㊺51 53 59 65 67 71 73 76 ⚖ ③⑧⑪⑱⑲㉔㉕㉘㉙㊴㊷㊻㊿52 54 55 69 ➔ >:-㉕ =:-④ <:-⑥ \n", " =:③⑦⑨⑩⑪⑫⑯㉒㉔㉖㉝㉞㊲㊴㊵㊷㊹㊺㊾52 53 54 55 63 64 65 67 69 71 75 76 77 78 80 ⚖ ①②④⑤⑧⑬⑮⑰⑱⑲⑳㉓㉗㉘㉙㉛㉜㉟㊳㊸㊻㊼㊿57 58 59 60 61 62 68 70 73 74 79 ➔ >:-⑤ =:-㉑ <:-㉒ \n", " <:③④⑧⑩⑪㉒㉓㉔㉕㉙㉛㉝㊱㊶㊸㊹㊽㊾51 53 55 56 61 62 66 72 76 79 80 ⚖ ①②⑤⑥⑦⑫⑬⑭⑮⑰㉑㉗㉘㉞㊳㊴㊵㊷㊼㊿52 54 57 58 64 65 68 75 78 ➔ >:-① =:-⑯ <:-㉓ \n", " <:④⑦⑩⑬⑱⑲㉓㉕㉖㉗㉝㉞㊲㊷㊹㊾59 63 64 67 70 71 74 ⚖ ①③⑧⑨⑫㉛㉟㊱㊳㊵㊻㊿54 56 58 60 61 66 68 72 73 77 80 ➔ \n", " >:②④⑦⑨⑩⑪⑫⑬⑱⑲㉑㉓㉔㉕㉗㉚㉞㉟㊳㊶㊺㊻56 60 65 68 69 75 76 79 80 ⚖ ⑧⑯㉒㉖㉙㉜㉝㊱㊴㊵㊷㊸㊹㊼㊽㊿53 54 55 57 58 59 62 63 64 70 71 72 73 74 78 ➔ >:-⑧ =:-③ <:-⑨ \n", " =:①⑦⑧⑫⑭⑰㉒㉓㉕㉖㊸㊼59 66 73 ⚖ ⑩⑪⑬⑲㉔㉗㉘㉛53 55 56 60 61 64 77 ➔ >:-⑪ =:-⑳ <:-⑰ \n", " <:①④⑥⑯㉔㉖㊳㊼70 77 ⚖ ⑦⑩⑪㉙㉚㉜㉞69 73 79 ➔ >:-⑦ =:-⑲ <:-㉖\n" ] } ], "source": [ "do(Puzzle(80, 4, {lt, eq}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Looking good (except that the output is longer than the line length, and so is hard to read).\n", "\n", "# Puzzles with 5 Weighings\n", "\n", "With 5 weighings, 35 = 243, so I might be able to handle up to 121 lighter-or-heavier balls (242 possibilities):" ] }, { "cell_type": "code", "execution_count": 40, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "None\n" ] } ], "source": [ "p5 = Puzzle(121, 5)\n", "do(p5)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Nope, that didn't work. Let's check the partition sizes (they need to be 81 or less to solve in 4 more weighings):" ] }, { "cell_type": "code", "execution_count": 41, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[80, 82, 80]" ] }, "execution_count": 41, "metadata": {}, "output_type": "execute_result" } ], "source": [ "partition_sizes(p5, 40)" ] }, { "cell_type": "code", "execution_count": 42, "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[82, 78, 82]" ] }, "execution_count": 42, "metadata": {}, "output_type": "execute_result" } ], "source": [ "partition_sizes(p5, 41)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Let's back off to **120 balls, 5 weighings** for 2 × 120 + 1 = 241 possibilities:" ] }, { "cell_type": "code", "execution_count": 43, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵ ⚖ 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 ➔ \n", " >:①②③④⑦⑨⑬⑮⑱㉓㉕㉗㉚㊱㊴㊶㊻㊼㊽㊾53 55 57 59 60 65 66 67 70 72 76 81 82 84 85 98 109 111 113 118 120 ⚖ ⑩⑫⑭⑯⑰⑲⑳㉑㉘㉛㉜㉝㉞㉟㊲㊳㊵56 58 61 62 63 68 69 71 73 74 75 80 83 87 91 92 99 103 106 107 110 112 114 119 ➔ \n", " >:①⑨⑯㉒㉕㉗㉙㉚㉞㊷㊹㊺㊾51 52 53 57 59 60 61 66 67 68 69 70 72 79 84 86 87 92 97 100 101 107 110 113 116 118 ⚖ ③④⑤⑧⑩⑫⑱⑲⑳㉑㉓㉔㉟㊱㊲㊳㊵㊶㊸㊻㊿54 56 65 71 73 74 75 77 78 82 83 88 93 95 99 105 106 119 ➔ \n", " >:①⑦⑪⑬㉓㉕㉖㉛㉜㉝㊳㊸51 58 59 68 73 78 79 81 83 89 90 96 99 103 104 109 111 117 118 119 120 ⚖ ③④⑥⑲㉑㉔㉘㉟㊲㊶㊷㊹㊻㊾㊿52 55 65 66 70 74 77 95 98 100 101 106 107 108 110 112 113 116 ➔ \n", " >:①㊶106 ⚖ ㉛93 101 ➔ >:+① =:+㉕ <:-106 \n", " =:②㉕㉙㉚㊿59 62 71 89 96 ⚖ ④⑨㊺52 77 82 90 98 99 114 ➔ >:+㉚ =:+㉗ <:+⑨ \n", " <:①⑥⑨⑫⑳㉑㉔㉕㉗㉘㉛㉟㊵㊷㊸㊹㊺㊻㊾㊿52 57 58 60 61 62 63 67 70 71 76 77 78 81 83 85 86 90 92 93 96 98 100 101 102 103 104 106 107 108 110 115 ⚖ ③④⑤⑩⑪⑬⑮⑯⑰㉒㉓㉖㉚㉜㉞㊱㊲㊳㊴㊶51 53 55 56 64 65 66 68 69 72 74 75 79 80 82 84 88 89 91 95 97 99 105 109 111 112 113 114 116 117 118 120 ➔ >:-99 =:-119 <:-83 \n", " =:④⑥⑪⑫⑬⑲㉙㉚㉜㊲㊳㊹㊼㊿51 52 53 55 57 58 59 60 62 64 66 67 71 74 75 82 83 85 86 88 90 94 96 98 99 101 103 108 112 115 116 119 ⚖ ⑤⑦⑧⑨⑯⑱⑳㉑㉒㉓㉕㉖㉗㉞㉟㊵㊶㊷㊺㊻61 63 69 73 76 77 79 81 87 91 92 93 95 97 100 102 104 105 106 107 110 111 113 114 117 118 ➔ \n", " >:②⑰⑳㉔㉗㊲㊹㊼55 56 58 63 79 85 91 98 107 108 111 112 113 ⚖ ③⑨㉘㉙㉚㉛㉝㊴㊶㊷㊺61 65 69 70 77 97 103 114 117 120 ➔ >:-114 =:+⑬ <:-91 \n", " =:②⑯⑱㉒㉔㉟㊱㊲㊻68 79 81 86 89 90 93 94 95 99 100 105 107 109 117 ⚖ ④⑥⑧⑭⑮⑰⑲㉚㉜㉞㊳㊶㊺㊿55 61 63 70 71 82 98 103 114 120 ➔ >:+② =:+㊴ <:+⑮ \n", " <:②⑩⑪⑬⑭⑮⑯㉔㉖㉞㉟㊵㊸㊹㊺㊻㊽㊾51 55 59 62 63 66 67 69 70 72 73 74 78 80 82 84 89 90 91 92 95 97 101 104 106 107 108 110 115 117 ⚖ ①③⑥⑦⑧⑫⑱⑳㉒㉓㉗㉙㉚㉛㉜㉝㊱㊴㊶㊼㊿52 56 57 58 60 61 65 71 75 76 77 79 83 85 93 94 98 99 100 102 105 109 112 113 114 118 119 ➔ >:-112 =:-103 <:+⑦ \n", " <:①③④⑫⑬㉑㉔㉖㉘㉚㉜㊹㊽㊿52 55 57 59 68 72 77 81 83 87 94 97 99 101 102 103 104 107 108 113 114 ⚖ ②⑥⑨⑩⑮⑯㉓㉕㉟㊳㊴㊵㊾51 53 60 62 63 64 66 70 80 85 89 90 92 95 96 98 100 106 109 111 117 119 ➔ \n", " >:③⑦⑩⑬⑭⑯⑳㉖㉘㉚㉜㉞㊴51 53 55 57 61 77 79 84 85 88 96 97 99 103 104 112 114 116 120 ⚖ ①②④⑤⑧⑪⑱㉒㉓㉕㉗㉟㊲㊷㊽52 59 62 68 69 72 73 78 80 81 91 98 100 110 113 115 119 ➔ >:+③ =:-92 <:+④ \n", " =:②③④⑨⑪⑰㉒㉕㉘㉙㉛㉜㉞㉟㊱㊲㊴㊹㊺51 60 61 62 64 65 67 69 70 79 83 89 90 91 96 98 100 103 105 108 110 115 117 118 119 ⚖ ⑥⑩⑭⑯⑲⑳㉑㉗㉚㉝㊳㊵㊶㊻㊼㊽㊿54 55 58 59 63 71 72 76 77 78 80 81 85 86 87 88 94 95 97 102 104 106 107 111 112 113 120 ➔ >:+㊱ =:+⑱ <:-110 \n", " <:②③⑤⑥⑬⑭⑯㉑㉒㉔㉜㉝㉟㊵㊷㊹㊽㊾52 55 56 58 59 61 62 65 66 67 68 69 71 74 75 76 77 78 80 84 85 90 91 96 98 100 102 105 107 109 110 116 118 119 ⚖ ①④⑦⑩⑪⑫⑰⑱⑲⑳㉕㉗㉘㉙㉚㉛㊱㊲㊴㊶㊸㊻㊼㊿51 53 54 57 60 63 70 72 73 79 81 82 83 87 88 89 92 93 94 95 97 99 112 113 114 115 117 120 ➔ >:-87 =:+㉓ <:-107 \n", " =:③⑫⑮⑰⑱⑲⑳㉒㉓㊱㊲㊵㊶55 58 60 67 69 77 81 83 84 85 87 93 99 100 101 103 107 109 111 114 115 119 ⚖ ①⑥⑬⑭㉑㉔㉕㉖㉙㉚㉛㉝㉞㉟㊺㊻54 57 62 63 68 71 72 73 79 86 89 90 96 97 104 105 110 116 120 ➔ \n", " >:⑤⑥⑧⑫⑰⑱⑲㉒㉓㉕㊴㊼51 62 67 82 84 87 90 96 97 99 108 113 ⚖ ③⑯㉖㉗㉞㊵㊶㊷㊿56 60 61 63 65 71 77 80 86 91 92 94 106 110 116 ➔ \n", " >:③④⑤⑦⑩⑭⑯⑱㉒㉓㉕㉜㊳㊷㊺㊻㊼㊾51 53 55 57 62 71 75 81 83 84 85 92 98 104 116 120 ⚖ ②⑥⑨⑪㉚㉟㊲52 54 56 58 59 60 63 64 65 69 72 73 76 77 78 80 82 87 88 94 95 102 103 106 107 111 114 ➔ >:+㉒ =:-86 <:-116 \n", " =:④⑪⑮⑱㉕㉗㉟㊶㊽52 54 55 56 61 73 75 77 81 85 87 89 91 93 96 97 98 101 103 107 113 118 119 ⚖ ⑩⑭⑯㉑㉖㉙㉚㉜㉞㊵㊸㊺㊻㊼㊾51 59 60 62 68 82 83 86 95 102 105 109 110 111 115 116 117 ➔ >:-105 =:-104 <:-89 \n", " <:①②⑳㉖㊱59 62 63 68 70 71 72 90 94 102 108 109 114 118 ⚖ ⑨⑩⑪⑲㉑㉗㊴㊹㊾60 69 78 83 96 103 106 107 116 119 ➔ >:-96 =:-97 <:-90 \n", " =:⑤⑥⑩㉒㉕㉘㉜㊴㊷㊸55 69 71 78 114 115 116 117 ⚖ ⑧⑪⑲㉓㊵㊼㊿64 65 66 70 79 88 91 97 100 106 108 ➔ \n", " >:④⑤⑦⑨⑫⑬⑭⑮⑯⑰⑱⑲㉑㉖㉗㉝㊸㊺㊾59 60 73 79 83 84 88 90 91 99 100 101 103 106 107 110 116 ⚖ ①③⑧⑪⑳㉓㉘㉛㉟㊵㊶㊹㊻㊼㊽53 55 61 63 64 65 66 67 69 77 78 85 86 92 96 109 112 114 117 118 119 ➔ >:+⑤ =:-108 <:-88 \n", " =:⑤⑥⑨⑪⑯⑲⑳㉓㉔㉕㉜㉞㉟㊱㊲㊳㊴㊵㊸㊺㊽㊾52 56 62 66 68 69 70 71 72 74 76 82 84 86 89 96 97 98 99 101 102 106 108 110 111 112 117 120 ⚖ ①②③④⑧⑩⑫⑭⑮⑰⑱㉑㉖㉘㉙㉚㉛㉝㊶㊷㊹㊻53 54 55 57 58 59 61 65 67 73 75 77 78 79 80 81 87 90 93 94 100 104 105 107 114 115 118 119 ➔ >:-94 =:-95 <:-102 \n", " <:⑦⑧⑩⑲⑳㉒㉓㉔㉖㉙㉛㉜㉟㊳㊴㊿61 72 78 79 92 105 106 107 114 117 120 ⚖ ②⑨⑫⑬⑯⑰⑱㉞㊹㊻㊽62 64 76 82 85 90 95 96 98 99 102 103 108 112 113 116 ➔ >:+⑧ =:+⑪ <:-117 \n", " <:④⑥⑯⑲㉑㉚㊲㊳㊷㊿54 68 81 85 88 89 91 94 95 97 99 105 107 110 113 115 117 ⚖ ⑧⑨⑪⑭⑳㉔㉗㉞㊱㊼51 52 53 55 65 66 71 72 87 92 96 98 100 101 108 111 114 ➔ \n", " >:①③④⑥⑪㉕㉜㊶51 55 58 59 65 70 71 72 73 76 77 92 94 96 97 99 100 106 110 111 112 116 117 119 ⚖ ⑤⑧⑫⑮⑲㉖㉗㉘㉙㉝㉞㉟㊱㊹㊾54 60 62 64 66 74 82 85 88 89 91 93 102 103 107 108 118 ➔ >:+⑥ =:-101 <:-100 \n", " =:②④⑧⑩⑪⑫⑮⑯⑳㉑㉔㉕㉖㉗㉟㊲㊳㊴㊵㊺㊽54 57 58 60 64 65 66 67 68 69 72 74 75 77 78 82 83 92 93 94 101 103 104 106 107 108 109 112 ⚖ ①③⑤⑥⑦⑨⑭⑰⑱⑲㉒㉓㉚㉜㉝㉞㊱㊶㊹㊼㊾㊿52 53 55 56 59 61 63 71 76 80 81 85 86 89 91 97 98 100 105 111 113 114 115 116 118 119 120 ➔ >:+㉖ =:+㉙ <:-93 \n", " <:①②③④⑤⑥ ⚖ 115 116 117 118 119 120 ➔ >:-115 =:+㉔ <:⌖ \n", " <:①③⑥⑧⑬⑮⑯⑱⑲㉔㉚㉛㉟㊳㊸㊺51 56 59 62 71 74 77 78 79 81 82 86 91 92 95 97 99 110 115 119 ⚖ ②④⑨⑩⑪⑭⑰㉑㉒㉘㉙㊱㊲㊴㊵㊷㊿55 57 58 60 63 68 72 73 84 89 90 93 96 98 105 107 108 109 111 ➔ \n", " >:⑦⑪⑫⑬⑭⑰⑱㉒㉓㉔㉖㉗㉛㉞㉟㊱㊵㊷㊹㊼㊿51 53 54 55 57 68 71 79 82 88 91 92 94 96 97 99 102 104 108 109 111 114 ⚖ ①②③④⑤⑮⑯⑳㉑㉕㉘㉜㉝㊲㊴㊸㊺58 59 63 65 69 70 72 73 74 75 80 83 85 86 87 89 90 98 103 106 110 112 115 116 118 120 ➔ \n", " >:②⑤⑧⑩⑬⑯⑱⑳㉑㉒㉓㉔㉕㉖㉘㉙㉝㊱㊲㊶㊸㊾56 60 61 62 66 68 69 74 75 76 79 82 85 86 91 92 94 95 97 100 103 106 107 109 110 111 114 119 120 ⚖ ①⑥⑦⑨⑪⑫⑭⑮⑰㉗㉛㉞㊴㊵㊷㊹㊺㊻㊼㊿52 53 54 55 57 58 59 63 64 65 67 70 72 77 80 83 87 88 89 90 93 96 98 99 101 102 104 105 115 117 118 ➔ >:-98 =:+㉟ <:+㉛ \n", " =:②⑤⑧⑨⑪⑫⑬⑭⑲㉑㉕㉖㉘㉛㉞㊱㊲㊵㊻㊾㊿51 58 60 61 63 64 70 71 72 73 74 75 77 79 83 85 94 97 99 100 102 103 105 106 107 108 110 115 116 118 119 ⚖ ①④⑥⑦⑩⑮⑯⑱㉒㉓㉔㉗㉙㉚㉜㉝㉟㊳㊴㊶㊷㊸㊹㊽52 53 54 55 56 57 59 62 65 66 67 68 76 78 82 86 88 90 92 93 98 104 109 112 113 114 117 120 ➔ >:+⑲ =:-84 <:+㊳ \n", " <:⑯㉗㊺59 62 65 71 76 90 98 99 103 106 109 112 113 115 116 ⚖ ②⑬⑮㉚㉛㊲㊴㊷㊸㊿53 70 81 87 94 105 118 120 ➔ >:+⑯ =:-111 <:-109 \n", " =:③⑤⑧⑮⑱㉒㉓㉕㉖㉙㉞㊱㊲㊳㊼59 67 70 82 86 94 95 99 103 105 107 118 ⚖ ④⑨⑪⑭⑯㉑㉔㉜㉝㉟㊸㊻51 60 63 66 68 80 81 85 96 108 110 113 114 117 119 ➔ \n", " >:①②⑦⑨⑩⑪⑯⑰㉖㉗㉛㉝㊶㊹51 54 55 56 59 60 62 63 65 69 71 72 74 75 76 77 78 80 85 86 87 91 93 100 103 106 112 115 118 120 ⚖ ⑤⑥⑭⑮⑳㉑㉓㉔㉕㉘㉙㉟㊳㊴㊽㊿58 61 64 66 70 81 82 84 88 90 92 94 97 98 99 101 102 104 105 108 109 110 111 113 114 116 117 119 ➔ >:-113 =:+㉞ <:-85 \n", " =:⑧⑩⑬⑮⑯⑰⑱⑳㉑㉒㉓㉖㉛㉜㉝㉞㊲㊴㊵㊶㊷㊸㊽52 53 55 56 58 59 62 63 68 69 71 75 85 86 88 89 90 92 97 100 101 102 107 109 112 114 117 118 ⚖ ②③⑤⑥⑦⑫⑭㉕㉘㉙㉚㉟㊱㊹㊺㊻㊾㊿51 54 57 60 61 65 66 67 70 73 74 76 77 78 80 83 84 87 91 93 94 95 96 98 99 103 104 105 106 108 110 115 116 ➔ >:+⑳ =:-120 <:+⑫ \n", " <:①⑤⑥⑪⑫⑮⑳㉒㉓㉘㉙㉚㉝㉞㊱㊴㊷㊻㊼㊽52 59 61 63 66 67 68 70 72 75 76 77 78 80 82 84 85 86 91 95 98 99 102 105 106 111 113 114 116 118 ⚖ ③④⑦⑧⑩⑬⑭⑰⑲㉑㉔㉕㉗㉛㊲㊳㊵㊶㊸㊹51 53 54 55 56 57 58 60 62 65 69 71 73 87 88 89 90 93 94 97 100 103 104 107 108 112 115 117 119 120 ➔ >:+㉝ =:+㉜ <:-118 \n", " <:②⑨⑩⑯⑱⑲㉑㉔㉕㉜㉞㉟㊱㊵㊸㊽㊾51 52 53 54 56 58 60 65 67 68 70 73 74 76 79 84 88 89 96 99 101 106 110 112 ⚖ ③④⑫⑬⑭⑰⑳㉒㉖㉘㉙㉚㊶㊺㊻㊼㊿59 62 63 66 69 75 80 85 86 87 92 93 97 98 100 102 104 107 111 114 116 117 119 120 ➔ \n", " >:④⑧⑪㉑㉕㉜㊶㊹㊻51 59 62 65 66 74 75 87 92 103 105 109 117 118 119 120 ⚖ ⑤⑥⑩⑫⑭⑮⑯㉚㉟㊲㊺52 53 63 71 72 73 76 88 89 90 99 102 111 115 ➔ >:+㉑ =:+㊵ <:+⑩ \n", " =:③⑨㉖㉞㊵㊷㊹㊿53 54 55 58 61 63 64 65 76 77 79 80 85 89 94 95 97 100 102 103 107 109 111 112 113 118 120 ⚖ ②④⑧⑩⑪⑫⑬⑱⑳㉗㉙㉜㉟㊲㊳㊶㊸㊻㊽51 56 66 67 68 71 73 81 86 88 90 91 98 104 108 110 ➔ >:-81 =:-82 <:+㊲ \n", " <:①③⑤⑧⑬⑭㉕㉝51 52 54 69 78 81 84 88 95 99 100 105 110 111 115 ⚖ ⑩⑫⑯㉑㉖㉗㉘㉞㊱㊹62 64 68 75 80 82 90 91 97 104 112 117 118 ➔ >:+⑭ =:+⑰ <:+㉘ \n", " =:②⑥⑬㉑㉔㉕㉗㉜㉝㉟㊳㊴㊽㊾㊿62 63 68 69 70 73 75 79 83 84 85 90 92 98 104 106 110 114 116 120 ⚖ ⑪⑭⑲㉒㉚㉛㊲㊵㊶㊷㊹㊺㊻㊼52 53 54 58 61 65 72 74 76 78 81 82 87 95 96 97 100 101 103 109 112 ➔ \n", " >:⑥⑦⑧⑪⑮⑯⑲㉑㉚㉜㉝㉞㉟㊵㊷㊾㊿52 54 55 59 63 65 70 71 82 83 86 94 101 107 114 116 120 ⚖ ②④⑨⑫⑭⑳㉕㉗㉛㊱㊳㊹㊺㊻㊽51 57 62 64 69 72 73 76 79 81 84 85 87 91 95 103 110 115 119 ➔ \n", " >:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾ ⚖ 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 ➔ \n", " >:②⑧⑬⑭㉒㉓㉗㉜㉝㊵㊺㊻㊼㊿62 64 70 72 74 80 85 86 90 92 95 104 106 116 ⚖ ①③④⑩⑪⑳㉖㉘㉚㉛㉞㊱㊷㊸㊹51 53 56 63 68 73 75 76 84 87 97 117 120 ➔ >:-76 =:+㊾ <:-72 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿51 ⚖ 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 ➔ >:+㊿ =:+63 <:+70 \n", " <:④⑩⑱㉛㊲㊳㊹㊼㊽53 59 63 65 69 70 73 78 81 83 84 92 94 101 102 104 106 107 111 116 ⚖ ⑦㉒㉕㉞㊴㊶㊷㊻㊾㊿51 55 58 60 62 64 66 68 75 80 87 93 95 103 105 110 117 119 120 ➔ >:-㊻ =:-㊺ <:-㊹ \n", " =:①②③④⑦⑧⑬⑮⑯⑱⑲㉕㉚㊱㊶㊺㊼㊽㊾㊿51 54 55 56 59 60 62 64 66 68 69 71 72 78 80 87 88 91 92 95 97 98 99 102 103 104 107 110 111 ⚖ ⑤⑥⑨⑩⑪⑰⑳㉑㉒㉖㉗㉘㉙㉜㉝㉞㉟㊳㊴㊷㊸㊹52 57 58 61 65 67 70 73 76 79 84 86 89 90 94 100 101 105 106 108 112 113 116 117 118 119 120 ➔ \n", " >:③⑤⑥⑦⑩⑫⑯⑲㉘㉟㊲㊷㊾51 53 54 58 60 68 71 72 75 81 82 83 86 88 89 90 93 96 99 101 104 111 118 ⚖ ⑨⑬⑭⑮㉔㉗㉝㊱㊴㊵㊸㊹㊻㊿52 59 63 66 69 70 73 74 76 78 79 84 87 91 94 95 102 103 108 109 112 119 ➔ >:+68 =:-61 <:-58 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼ ⚖ 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 ➔ >:-74 =:-53 <:+75 \n", " <:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸ ⚖ 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 ➔ >:-78 =:-㊼ <:-㊶ \n", " <:③④⑥⑨⑩⑬⑳㉖㉗㉚㉝㊵㊷㊺㊽㊾㊿53 55 59 60 63 66 68 69 75 81 83 85 88 94 98 99 101 102 109 112 113 116 119 ⚖ ①②⑤⑧⑮⑯⑱⑲㉒㉓㉘㉛㉞㊳㊴㊶㊸㊻㊼54 56 58 67 70 73 77 79 80 84 89 96 100 103 106 107 108 114 115 117 118 ➔ \n", " >:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿51 52 ⚖ 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 ➔ >:+㊽ =:-54 <:+69 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿51 52 53 54 55 56 ⚖ 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 ➔ >:-65 =:+62 <:-52 \n", " <:②③⑦⑧⑪⑫⑬⑮⑲⑳㉑㉕㉖㉘㉛㉝㉟㊴㊼㊾㊿51 53 54 55 58 64 65 67 68 69 75 76 81 84 85 86 87 89 91 93 94 95 96 99 100 101 103 107 112 113 116 119 ⚖ ④⑤⑨⑭⑯⑰⑱㉒㉓㉔㉙㉚㉜㉞㊱㊲㊳㊶㊷㊸㊹㊺56 59 60 61 62 63 70 71 72 74 77 78 79 80 82 90 92 97 98 102 104 105 106 108 109 110 111 115 117 118 120 ➔ >:-㊷ =:+73 <:+79 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿51 52 53 54 55 56 ⚖ 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 ➔ \n", " >:⑬⑭㉓㉚㊳㊶㊺㊽51 60 71 77 79 86 94 104 114 ⚖ ⑩⑪⑰⑲㉒㉗㊵㊹55 58 66 80 92 96 103 115 120 ➔ \n", " >:②⑪⑭⑮⑰⑱⑲㉖㉙㊴㊸㊹㊽51 54 56 60 65 66 67 71 75 88 96 102 104 107 112 114 115 118 ⚖ ①⑥⑬⑳㉗㉜㉝㊲㊵㊺㊼㊿57 59 61 63 68 72 77 79 87 89 90 92 95 97 100 101 111 117 120 ➔ >:+51 =:-80 <:-66 \n", " =:②③⑫⑯⑱⑲㉜㉝60 69 70 73 76 78 87 88 90 92 95 103 110 120 ⚖ ④⑧⑪㊶㊾51 52 54 56 57 63 64 66 67 74 75 77 82 91 94 112 115 ➔ >:-67 =:+㊸ <:+56 \n", " <:②⑤⑨㉒㉛㉜㊲㊴㊶㊷㊸㊹㊻52 53 55 57 62 63 65 74 77 79 80 85 90 92 96 100 106 111 114 116 ⚖ ①⑦⑪⑫⑱㉓㉙㉚㊳㊵㊽54 56 60 61 69 70 72 73 75 78 82 86 89 93 101 103 108 109 115 117 118 119 ➔ >:+55 =:-71 <:-77 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿51 52 53 54 55 56 57 58 59 ⚖ 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 ➔ \n", " >:③④⑥⑦⑧⑫⑭⑮⑯⑱⑲㉓㉙㉛㉟㊱㊳㊸㊻㊽㊾㊿51 53 56 57 58 61 62 69 73 76 77 80 81 83 84 87 90 91 94 95 98 100 103 104 105 110 111 115 116 117 120 ⚖ ②⑤⑨⑩⑪⑬⑰⑳㉑㉒㉔㉖㉗㉘㉚㉜㉝㉞㊴㊵㊶㊹㊺52 54 55 59 60 63 65 67 70 72 74 75 78 79 82 86 88 89 92 93 97 99 102 106 107 108 109 113 118 119 ➔ >:+57 =:-64 <:+59 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿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 ➔ >:+60 =:⌖ <:-60 \n", " <:⑦⑬⑮⑱㉒㉓㉕㉗㉞㉟㊳56 57 58 63 64 69 73 75 76 82 86 89 91 94 98 99 102 103 108 109 113 114 115 116 120 ⚖ ①④⑪⑭⑲㉑㉘㉛㊱㊶㊷㊺㊾㊿52 55 61 66 68 71 72 74 77 78 80 81 83 87 88 92 100 105 110 111 117 119 ➔ >:+64 =:-59 <:-57 \n", " <:③④⑧⑩⑪⑫⑭⑮⑱⑳㉖㉗㉘㉛㊱㊲㊳㊼㊿51 53 55 56 64 67 70 71 72 81 82 84 86 87 95 96 99 100 102 110 112 119 ⚖ ①②⑤㉑㉕㉙㉝㉞㉟㊴㊵㊸㊹㊻㊾54 57 58 59 60 62 63 68 69 73 74 75 76 78 85 89 91 93 98 101 103 104 107 113 115 118 ➔ \n", " >:㉑㊲㊳㊸67 85 ⚖ ㊻53 74 75 101 109 ➔ >:+67 =:+71 <:-㊸ \n", " =:①②④⑥⑪⑬⑲㉑㉔㉚㉛㉟㊳㊻㊼㊾㊿51 52 54 58 59 60 64 65 66 74 76 78 79 81 83 85 86 88 89 91 92 95 98 100 105 112 113 115 117 118 ⚖ ⑤⑦⑧⑨⑩⑭⑮⑯⑰⑱⑳㉒㉓㉖㉘㉙㉞㊲㊴㊵㊷㊸㊹㊺㊽56 57 61 63 67 69 80 82 90 93 97 99 101 103 104 106 107 108 109 110 111 120 ➔ >:+66 =:+77 <:+80 \n", " <:②⑨㉕㉟55 57 59 84 85 86 93 ⚖ ㉝51 68 70 78 81 94 99 108 113 116 ➔ >:-51 =:-56 <:-55 \n", " <:①②③⑦⑩⑯⑲⑳㉑㉖㉛㉜㉞㊳㊴㊶㊷㊸㊻㊿51 56 61 62 65 69 78 79 81 82 85 88 93 95 96 98 100 104 106 107 110 117 118 119 ⚖ ④⑤⑥⑪⑫⑬⑮⑰⑱㉓㉔㉘㉙㉚㉝㉟㊱㊲㊹㊼㊽52 54 59 64 70 72 73 80 84 86 87 89 91 92 94 97 99 105 111 112 113 114 120 ➔ \n", " >:①③⑤⑧⑩⑫⑭⑱㉕㉗㉚㉛㉝㉞㊴㊶㊷㊹㊻㊾52 53 55 58 59 62 73 81 84 86 93 94 98 108 110 111 113 115 ⚖ ④⑨⑬⑮⑰⑲㉒㉓㉙㊱㊵㊼51 54 57 60 61 63 67 68 71 72 74 76 77 78 82 88 92 96 102 103 104 105 106 107 109 112 ➔ \n", " >:①③⑦⑯⑰⑱㉑㉔㉗㉘㉙㉞㉟㊳㊴㊻㊾㊿53 54 55 56 57 61 63 72 84 85 87 89 91 102 104 106 107 108 109 110 114 116 118 120 ⚖ ②④⑥⑧⑨⑩⑪⑳㉛㉝㊱㊲㊵㊶㊺㊼㊽51 58 60 64 66 67 70 75 76 77 78 80 81 82 83 86 90 92 94 97 98 100 101 112 113 ➔ >:+㊻ =:+㊷ <:+㊶ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿51 ⚖ 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 ➔ >:-70 =:+65 <:-㊽ \n", " <:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽ ⚖ 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 ➔ >:-73 =:+61 <:+78 \n", " =:①④⑤⑥⑦⑧⑩⑪⑫⑬⑭⑱㉔㉖㉚㉛㉞㊴㊸㊹㊽㊿53 55 57 63 67 70 72 78 81 84 86 88 90 91 92 93 97 100 101 102 108 109 110 111 112 114 115 118 ⚖ ②③⑨⑯⑰⑲⑳㉑㉒㉓㉙㉝㉟㊱㊵㊶㊻㊼㊾51 52 54 58 59 60 62 64 65 66 69 73 74 75 77 79 82 83 87 94 96 98 99 104 105 106 107 113 116 117 119 ➔ \n", " >:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾ ⚖ 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 ➔ >:-75 =:+53 <:-㊾ \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺ ⚖ 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 ➔ >:+㊺ =:-68 <:+76 \n", " <:①②③⑦⑨⑳㉑㉗㉘㉙㉛㉝㊱㊲㊴㊵㊷㊸㊹㊽53 55 59 60 68 70 72 74 75 78 85 87 89 93 98 101 104 105 107 108 109 112 117 119 120 ⚖ ④⑥⑧⑪⑬⑭⑮⑯⑱⑲㉒㉔㉕㉜㉟㊳㊶㊼㊿54 58 61 62 64 66 69 71 73 77 82 84 86 88 94 95 96 97 99 100 102 103 110 113 114 115 ➔ >:+74 =:-63 <:+58 \n", " <:②④⑦⑧⑩⑪⑫⑬⑭⑮⑱㉔㉕㉙㊱㊳㊶㊻51 52 53 54 55 57 61 62 64 68 73 74 76 78 88 89 92 93 95 96 97 98 101 103 114 116 117 120 ⚖ ⑨⑯⑳㉑㉒㉓㉖㉘㉚㉛㉜㉝㉞㉟㊲㊺㊼㊾㊿56 60 63 67 70 71 72 75 80 81 84 85 86 87 91 94 99 100 102 105 106 109 110 111 112 115 118 ➔ \n", " >:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿51 52 ⚖ 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 ➔ >:+52 =:+54 <:-㊿ \n", " =:⑨㉓㊹54 62 63 71 73 79 83 89 95 97 101 106 110 116 119 ⚖ ⑯⑰㉟㊵㊼㊿52 53 57 58 68 76 78 81 91 93 94 111 ➔ >:+㊹ =:-69 <:-79 \n", " <:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾ ⚖ 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 ➔ >:+㊼ =:-62 <:+72 \n", " <:①④⑦⑧⑨⑬⑭⑮㉒㉕㉖㉜㊱㊲㊷53 60 63 66 71 72 74 78 80 81 82 85 92 95 96 98 101 103 104 111 112 113 116 120 ⚖ ⑥⑩⑫⑲㉔㉘㉝㉞㉟㊳㊴㊵㊸㊼㊾52 54 57 58 59 61 62 67 70 75 77 79 83 87 88 89 91 102 105 107 110 115 118 119 ➔ \n", " >:①⑧⑫⑮⑰⑳㉑㉖㉚㉟㊲㊶㊻㊾54 56 58 60 61 66 70 72 78 81 82 84 86 87 90 93 96 98 99 102 108 109 117 ⚖ ⑤⑩⑭⑱㉒㉓㉔㉗㉛㉜㉝㊳㊵㊹㊺52 53 55 57 59 63 65 71 73 74 85 91 94 97 100 101 103 104 105 111 113 120 ➔ \n", " >:②⑥⑦㉔㉙㉛㊲㊳㊻㊼㊾59 60 61 63 64 78 84 85 89 97 98 104 107 116 120 ⚖ ③④⑤⑧⑬⑰⑳㉗㉚㉝㊱㊵㊶㊽㊿54 55 67 70 77 81 99 106 108 109 119 ➔ \n", " >:③⑤⑩⑲⑳㉞㉟㊱㊷㊹㊼㊿55 57 60 63 66 78 106 109 116 119 ⚖ ①⑥⑦⑧⑫⑭⑯㉔㉕㉖㉙㉝㊴㊻52 59 67 77 96 98 100 101 ➔ >:-㉝ =:-㊵ <:+98 \n", " =:①⑤⑭⑯⑲⑳㊺52 53 54 60 69 72 78 82 83 94 100 101 110 112 113 114 ⚖ ⑥⑬㉕㉖㉝㉟㊲㊵㊾58 63 66 74 79 80 81 85 90 92 93 96 102 105 ➔ >:+82 =:-⑩ <:+96 \n", " <:④⑤⑥⑦⑪⑬⑯⑰⑲㉔㉘㉚㉛㉞㉟㊸㊺㊿52 53 54 57 60 61 62 68 69 71 72 76 77 80 83 84 87 88 89 90 91 92 94 95 98 105 106 107 111 112 113 114 115 117 120 ⚖ ①②③⑧⑩⑫⑭⑮⑱㉑㉒㉓㉕㉖㉗㉙㉜㉝㊱㊲㊳㊹㊻㊼㊽55 56 58 59 63 64 65 66 67 70 73 75 78 79 82 86 93 96 97 101 102 103 104 108 109 110 116 119 ➔ >:-㊳ =:+81 <:-㉔ \n", " =:②⑥⑪⑬⑲⑳㉖㉛㉜㊵㊹㊼㊿51 63 71 72 74 79 85 87 88 89 93 96 97 107 112 ⚖ ⑮㉒㉓㉔㉘㉚㉝㊲㊴㊶㊷58 61 65 66 75 81 83 86 90 91 92 94 103 111 113 118 120 ➔ \n", " >:⑦⑧⑪⑭⑳㉑㉚㉞㉟㊳㊵㊺㊽㊿51 52 56 57 60 64 66 67 70 71 78 79 81 83 85 87 91 94 95 98 99 107 108 118 120 ⚖ ④⑤⑥⑩⑬⑮⑰⑲㉓㉔㉖㉗㉙㊴㊸㊻㊼㊾53 59 61 69 74 77 86 88 89 90 92 100 102 103 104 105 106 109 112 115 116 ➔ >:-㊴ =:-㉘ <:+112 \n", " =:③④⑤⑧⑩⑪⑬⑮⑰⑱㉕㉛㉝㊴㊵㊶㊸㊻㊼㊽51 52 53 56 58 59 61 64 66 67 71 79 81 86 89 91 93 94 95 99 109 110 112 113 114 115 118 120 ⚖ ②⑥⑨⑫⑯⑲㉑㉒㉖㉗㉘㉙㉚㉟㊱㊷㊺㊾55 57 62 63 70 72 73 75 76 77 80 82 83 85 87 92 96 98 100 101 102 103 104 105 107 108 111 116 117 119 ➔ >:+95 =:-㉞ <:+116 \n", " <:⑩⑭⑲㉑㉕㉙㉛㉝㊵㊷㊸㊹㊺55 56 65 71 77 80 84 92 101 104 116 117 ⚖ ⑧⑨⑮⑰㉓㉔㊲㊴㊼㊽㊿58 59 63 68 69 70 73 94 97 98 102 103 113 118 ➔ >:+92 =:-⑥ <:-⑲ \n", " <:②③⑩⑪⑫⑭⑮⑯⑱⑳㉑㉔㉖㉛㉟㊱㊲㊴㊷㊸㊹㊼㊽54 64 67 73 80 81 88 90 92 93 94 99 101 105 108 110 111 112 115 117 118 119 120 ⚖ ④⑦⑧⑰⑲㉒㉕㉗㉜㉝㉞㊳㊵㊶㊺㊻55 56 57 58 61 62 63 65 66 69 70 71 72 74 75 76 77 78 79 82 86 87 95 96 100 102 104 109 114 116 ➔ \n", " >:⑨㉕㉗㉙㉚㊱㊲㊴㊶㊷㊼㊿54 62 67 69 76 81 85 96 103 110 114 117 119 120 ⚖ ④⑫⑭⑮⑯㉒㉖㉞㊹57 59 70 84 86 88 93 99 100 104 106 108 111 112 113 115 118 ➔ >:+120 =:+101 <:+111 \n", " =:①③⑧⑮㉓㉕㉘㉛㉝㊵㊷㊹㊾52 55 58 60 69 71 72 73 74 80 93 94 102 103 107 114 115 ⚖ ⑩⑪⑫⑬⑭⑰⑱㉑㉖㉙㉜㊱㊴㊶㊽53 54 56 63 65 75 82 83 85 91 99 100 104 116 120 ➔ >:+103 =:+113 <:+85 \n", " <:④⑤⑥⑨⑬⑮⑱㉓㉕㉖㉘㉝㉟㊲㊴㊵㊸㊻㊿54 57 68 70 72 75 78 79 80 84 88 93 104 105 106 110 116 117 120 ⚖ ①②⑧⑩⑪⑭⑯⑲㉗㉚㉞㊳㊶㊹㊺51 52 53 55 56 60 62 63 65 67 69 74 76 77 83 85 86 87 89 91 92 101 118 ➔ >:+104 =:-⑫ <:-㉟ \n", " =:④⑫⑰⑱⑲⑳㉑㉔㉕㉗㉚㊱㊶㊼㊽52 53 55 58 62 66 67 71 75 77 93 94 96 99 100 106 108 110 117 ⚖ ③⑧⑮㉒㉓㉖㉜㉟㊲㊴㊸㊹51 56 59 64 65 69 70 73 76 78 80 83 86 88 91 95 101 104 105 109 113 114 ➔ \n", " >:⑦⑨⑩⑱㉗㉚㉞㊳㊹㊽58 63 67 78 79 90 94 97 98 103 106 119 ⚖ ⑤⑧⑪⑭⑮⑰㉒㉓㉖㉘㊱㊷㊼57 61 66 69 72 99 100 101 117 ➔ \n", " >:③⑤⑦⑧⑪⑫⑬⑭⑯⑰⑱⑳㉒㉛㉟㊳㊴㊸㊺㊽51 55 58 61 62 63 64 65 68 69 74 78 80 83 85 91 93 95 96 97 100 101 102 104 105 107 108 109 111 112 113 114 115 117 118 119 120 ⚖ ①②④⑥⑨⑩⑮㉑㉓㉔㉕㉖㉗㉘㉙㉚㉜㉝㉞㊱㊲㊵㊶㊷㊹㊻㊾㊿52 53 54 56 57 59 60 66 67 70 71 72 75 76 77 81 82 86 87 88 89 90 92 94 98 99 103 110 116 ➔ >:-㉓ =:+106 <:+94 \n", " =:③⑨⑮⑱66 68 73 79 92 93 94 98 106 109 111 ⚖ ②⑭⑰㉕㊲㊸㊹㊾64 67 85 86 87 101 102 ➔ >:+93 =:+108 <:-③ \n", " <:①⑤⑫⑰㊱㊵㊷㊺㊼㊽㊿53 54 59 60 61 63 65 67 68 71 74 75 78 79 90 94 96 105 110 111 112 114 117 118 ⚖ ③④⑧⑩⑪⑭⑯⑲⑳㉓㉖㉘㉙㉚㉝㉞㊲㊶㊾51 52 56 66 69 72 84 85 98 100 101 106 108 109 115 119 ➔ >:+117 =:+99 <:+100 \n", " =:①④⑤⑧⑨⑯⑲㉓㉜㊸㊻㊾51 56 57 59 70 71 72 73 79 85 89 91 99 110 113 115 117 118 ⚖ ②⑪⑭⑰㉑㉔㉗㉙㊱㊵㊶㊷㊹52 58 63 68 74 77 78 80 88 92 97 98 104 106 108 112 116 ➔ \n", " >:⑤⑦⑭⑰㉑㉒㉓㉙㊷㊺㊻㊿60 63 73 74 79 83 87 89 92 93 97 101 104 107 113 119 120 ⚖ ①②④⑨⑫⑱⑲⑳㉖㉗㉝㉟㊲㊵㊹㊼㊽59 65 69 75 77 81 88 91 100 102 109 116 ➔ >:-② =:-⑪ <:-㉙ \n", " =:②③⑨⑩⑪⑬⑯㉑㉒㉕㉗㉙㊱㊶㊸㊹㊻㊼㊽㊾52 53 54 55 57 58 59 60 70 72 73 74 75 80 81 82 87 88 89 90 91 92 96 101 102 105 110 113 ⚖ ①⑤⑦⑫⑭⑲㉓㉖㉘㉚㉜㉝㉞㊳㊴㊵㊷㊺51 61 62 63 64 66 67 68 69 77 78 83 84 85 86 93 94 95 98 99 103 104 108 109 111 112 114 116 117 119 ➔ >:+90 =:-㉛ <:+84 \n", " <:①⑤⑩⑬⑮⑰⑱⑲㉑㉓㉗㉙㉛㉜㊳㊷㊹㊿51 54 58 59 61 62 70 71 74 75 78 82 85 88 91 96 97 98 101 106 107 110 112 ⚖ ③⑧⑪⑫⑳㉕㉚㉞㉟㊱㊲㊵㊸㊺㊾52 55 57 60 69 72 73 77 80 81 86 89 90 92 93 94 95 99 100 102 105 109 113 116 119 120 ➔ >:+97 =:-⑯ <:-⑤ \n", " <:①④⑦⑫⑭⑳㉚㉛㊱㊴㊶㊻㊼㊾㊿52 54 56 61 63 68 70 72 73 78 80 81 83 84 87 88 89 93 94 98 100 105 108 110 111 114 115 ⚖ ②③⑤⑥⑧⑨⑩⑪⑬⑰㉓㉔㉗㉘㉙㉞㊲㊳㊸㊽51 53 55 60 74 75 76 79 92 95 97 99 101 106 107 109 112 113 116 118 119 120 ➔ \n", " >:⑰㉘㊳㊿51 92 ⚖ ㉗㊸㊽65 89 90 ➔ >:-㉗ =:+114 <:-⑰ \n", " =:⑦⑨⑫⑯⑳㉑㉙㉚㉜㊱㊳㊵㊺㊻㊽㊿52 54 55 59 68 73 75 78 79 80 81 97 105 107 108 114 115 116 117 118 ⚖ ⑤⑧⑪⑱⑲㉒㉖㉘㉞㉟㊲㊴㊶㊹㊾51 53 60 61 63 67 71 72 74 77 82 85 90 91 92 99 100 103 104 109 111 ➔ >:-⑱ =:+86 <:-㉑ \n", " <:①④⑤⑦⑧⑨⑩⑯⑲㉒㉓㉔㉖㉗㉛㉜㉝㉞㉟㊱㊸㊹㊼㊽㊾52 53 56 57 62 63 64 65 68 70 71 72 77 78 82 84 85 88 90 92 93 94 95 96 100 103 104 105 115 116 117 120 ⚖ ②⑥⑪⑫⑬⑭⑮⑰⑱⑳㉑㉕㉘㉙㊲㊳㊵㊶㊷㊺㊻㊿51 54 55 58 59 60 61 66 67 69 73 74 75 76 79 80 83 86 87 89 91 97 98 99 101 102 108 109 110 111 112 113 114 118 119 ➔ >:-⑳ =:-㉚ <:+109 \n", " <:②③⑧⑩⑰㉑㉒㉔㉗㉙㉞㊱㊲㊶㊷㊺㊻㊽㊾㊿52 54 55 56 58 60 63 64 69 72 73 74 76 82 85 88 91 93 96 99 102 103 106 109 111 116 ⚖ ①⑦⑪⑫⑯⑱⑲㉓㉕㉖㉘㉚㉛㉜㉝㉟㊴㊸㊹㊼51 53 57 59 61 62 70 75 79 80 81 83 89 92 94 97 98 100 101 105 108 110 112 113 115 120 ➔ \n", " >:①⑥⑩㉜㊴㊺51 67 70 71 72 83 91 92 98 102 114 ⚖ ⑪⑭㉔㉗㉚㊲㊽56 57 69 77 79 80 88 99 101 108 ➔ \n", " >:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲ ⚖ 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 ➔ >:⌖ =:+91 <:+102 \n", " =:②⑥⑨⑪⑫⑬⑭⑯㉒㉓㉕㉛㉝㊲㊸㊼52 58 59 62 65 66 69 73 74 77 82 86 87 88 89 91 111 ⚖ ①④⑧㉔㉖㉙㉚㊱㊶㊷㊺㊾51 53 55 56 64 67 75 76 92 93 98 100 101 102 103 105 109 110 113 116 120 ➔ >:-㉖ =:-⑦ <:-㉕ \n", " <:⑪⑫⑲㉙㉟㊳㊺56 58 64 68 75 80 82 89 90 92 95 99 118 ⚖ ⑤⑯㉑㉔㉗㉚㉛㉜㊲60 62 63 74 77 86 88 98 102 111 114 ➔ >:-㉜ =:-① <:+88 \n", " =:①②③⑪⑫⑭⑮㉕㉜㊱㊳㊴㊺㊽㊿57 61 70 76 78 80 83 99 103 104 105 106 111 115 118 ⚖ ④⑤⑥⑬⑳㉗㉝㉞㉟㊲㊵㊸53 58 63 66 67 75 79 81 82 86 88 93 97 100 109 113 114 119 ➔ \n", " >:⑩㉕㉟㊱㊳㊵㊷㊸66 74 84 86 102 108 111 113 ⚖ ⑬㉜㊽55 56 57 67 72 73 94 96 97 99 101 110 118 ➔ >:-⑬ =:-④ <:+118 \n", " =:㉗53 76 87 91 97 106 ⚖ ⑯㊱60 79 100 107 109 ➔ >:+87 =:-⑨ <:+107 \n", " <:③⑤⑬㉖㊴㊵㊸㊹㊺㊾66 93 103 ⚖ ⑪⑭⑯㉝53 60 63 64 101 112 114 119 120 ➔ >:-⑭ =:-⑮ <:+119 \n", " <:⑥⑧⑨⑩⑫⑲㉑㉖㉘㉜㊱㊲㊳㊵㊷㊹52 59 65 67 69 71 73 74 78 79 83 92 96 99 108 109 114 115 118 120 ⚖ ①②④⑦⑪⑬⑰⑳㉒㉓㉛㉝㊴㊶㊸㊺㊻㊼㊽51 54 62 66 75 80 81 82 86 88 90 93 94 101 107 113 119 ➔ \n", " >:①⑤⑥⑫㉒㉖㉚㊱㊲52 66 67 70 73 82 83 90 94 101 106 110 117 ⚖ ②③⑮⑱㉕㉙㊳㊴㊻㊼㊽53 56 60 61 77 92 102 104 107 112 119 ➔ >:+83 =:+115 <:-㉒ \n", " =:②⑦⑨⑩⑫⑯⑰⑳㉓㉗㉘㉙㉜㊲㊷㊸㊹㊻㊽㊾51 52 54 58 60 61 62 65 66 71 72 74 79 84 85 87 88 95 100 101 104 106 107 108 109 110 114 120 ⚖ ①③④⑥⑧⑪⑬⑭⑱⑲㉑㉒㉕㉚㉛㉝㉞㉟㊱㊳㊴㊵㊺㊿53 55 64 67 68 73 75 78 80 81 82 83 86 89 93 94 98 102 103 111 113 115 117 118 ➔ >:+110 =:+105 <:+89 \n", " <:⑳㊱108 110 114 ⚖ ⑧⑩71 93 107 ➔ >:-⑧ =:-㊲ <:-㊱\n" ] } ], "source": [ "do(Puzzle(120, 5, {lt, gt, 0}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "That works.\n", "\n", "Or, I could solve a puzzle with 243 possibilites (the maximum possible with 5 weighings): **242 balls**, lighter-only, plus the possibility that no ball is odd:" ] }, { "cell_type": "code", "execution_count": 44, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿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 ⚖ 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 ➔ \n", " >:①③⑦⑧⑪⑬⑯⑳㉑㉘㉚㉜㉞㊴㊵㊸㊻㊿51 58 59 60 66 67 68 78 82 87 97 98 103 107 110 111 113 118 122 123 124 125 126 129 132 140 143 144 146 150 155 156 157 159 160 165 166 169 171 172 173 174 175 177 178 181 188 195 197 204 206 207 209 211 216 220 221 222 229 235 240 241 ⚖ ②④⑨⑩⑮⑰⑱⑲㉓㉔㉕㉖㉗㉙㉛㊳㊾56 62 63 65 69 70 71 75 77 79 80 83 85 89 90 93 96 100 102 105 112 115 116 117 121 127 135 136 137 138 141 149 152 153 158 161 162 163 164 176 179 183 187 189 193 194 198 199 202 203 214 215 219 223 224 225 227 228 232 236 237 238 242 ➔ \n", " >:①②⑨⑫⑱⑳㉒㉓㉔㉕㉖㉚㉛㉝㉞㉟㊱㊲㊸㊹㊻㊼㊽㊿52 55 57 60 62 63 64 72 77 79 81 85 87 93 94 95 107 109 113 114 119 123 127 130 139 140 141 152 153 154 157 166 171 174 181 184 195 196 198 199 201 203 207 209 213 215 216 217 218 224 225 227 229 230 231 232 233 235 238 241 ⚖ ⑤⑪⑬㉗㉘㉙㉜㊴㊵㊶㊺53 56 61 65 68 69 70 71 74 75 76 78 80 82 84 86 88 90 91 99 102 105 106 111 117 118 120 124 126 128 133 134 135 138 142 143 147 149 151 156 158 159 163 167 169 170 172 173 175 178 179 180 183 185 190 191 192 193 200 204 206 210 212 219 220 221 222 223 234 236 237 239 242 ➔ \n", " >:⑩⑯⑱㉓㉕㉗㉚㉛㊶㊹52 53 54 57 58 63 66 67 69 76 81 82 85 86 87 94 95 100 101 103 110 117 121 123 124 130 133 147 148 151 152 153 154 164 166 167 168 172 174 175 179 182 184 185 188 189 190 198 200 207 210 216 220 225 226 227 231 237 238 242 ⚖ ①②③⑨㉒㉔㉖㉙㉟㊲㊳㊴㊷㊺㊻㊼㊾51 55 60 62 64 65 68 73 75 77 79 83 84 91 99 102 106 108 112 114 119 131 134 136 137 140 142 146 149 155 157 158 169 170 171 176 181 192 193 194 195 203 204 211 212 213 214 217 219 222 224 234 236 ➔ \n", " >:②③⑩⑬⑭⑰⑱⑲㉑㉒㉔㉛㉜㊵㊶㊺㊻54 55 57 58 64 65 70 72 73 75 76 77 78 79 80 81 83 88 89 97 106 107 108 112 116 120 124 127 135 136 137 140 141 151 154 155 160 166 169 175 177 178 181 184 186 190 193 196 206 208 210 211 213 215 220 221 224 231 234 238 240 ⚖ ⑧⑨⑳㉘㉙㉝㉞㉟㊱㊲㊳㊽㊾51 52 60 62 63 67 71 74 82 84 85 86 91 93 96 101 103 104 114 119 121 122 125 128 131 132 142 144 147 148 152 158 159 161 162 163 165 171 173 179 180 183 185 188 189 192 194 197 200 203 204 207 212 216 218 222 223 225 226 230 232 235 236 241 242 ➔ >:-236 =:-219 <:-193 \n", " =:⑦⑬⑮㉛㊷㊼58 68 70 76 78 85 88 92 100 101 103 105 112 115 117 138 143 146 153 156 163 175 176 177 191 200 201 211 212 231 232 237 239 ⚖ ⑤⑥⑱⑳㉞㉟㊻63 65 67 83 89 90 93 95 98 107 111 124 129 130 147 148 154 155 162 170 183 184 192 194 198 205 208 213 216 220 230 241 ➔ >:-183 =:-223 <:-163 \n", " <:㉝㊵㊾52 54 68 69 73 75 80 85 106 111 130 138 176 203 205 211 212 229 242 ⚖ ⑬⑲㉚㊱㊴㊼64 71 97 104 108 113 115 120 147 162 169 173 218 221 235 237 ➔ >:-237 =:-179 <:-242 \n", " =:③④⑧⑮㉔㉕㉙㉛㉝㉟㊴㊶㊺㊿57 65 67 70 73 76 78 83 86 87 88 92 94 95 96 100 101 102 105 110 111 112 113 116 117 119 125 130 131 132 133 136 138 139 141 143 145 147 150 151 154 157 159 160 161 166 169 173 175 178 180 184 185 188 190 191 194 195 200 201 203 211 214 216 218 219 221 223 228 229 230 232 233 235 237 240 241 ⚖ ①②⑤⑩⑫⑬⑯⑳㉒㉓㉖㉜㉞㊱㊲㊳㊵㊸㊼㊾51 52 53 54 55 56 58 59 60 62 66 69 72 74 77 79 80 89 90 91 93 97 98 103 104 108 109 114 118 120 121 122 123 124 126 127 128 129 134 135 137 142 144 146 148 163 165 170 171 176 177 179 181 189 192 196 197 198 199 202 204 207 210 213 215 220 224 225 231 238 242 ➔ \n", " >:⑤⑬⑭⑯⑰⑱⑲㉓㉖㉚㉛㉜㉟㊱㊲㊴㊺㊽㊿54 55 56 57 58 59 60 61 62 66 68 71 73 74 76 79 81 85 86 87 88 89 90 92 93 96 100 101 102 104 105 107 110 111 112 113 115 118 120 122 123 128 130 131 133 135 139 140 141 142 143 149 150 154 155 161 162 165 171 175 176 179 180 181 183 185 186 187 190 192 193 197 198 199 203 206 208 210 211 213 215 222 223 225 226 227 229 230 235 236 237 240 241 ⚖ ①②③⑧⑩⑪⑫⑮⑳㉑㉒㉔㉕㉗㉘㉙㉝㊳㊵㊶㊷㊸㊹㊻㊼㊾51 53 63 65 67 69 70 72 75 77 78 80 83 84 91 95 97 98 99 103 106 108 109 114 116 117 119 121 125 126 127 129 132 134 136 137 138 144 145 146 147 148 151 152 153 156 157 158 159 160 164 166 167 168 169 170 172 173 174 177 178 184 188 191 195 196 200 201 202 204 205 207 209 212 214 217 218 219 220 224 228 231 232 233 234 242 ➔ >:-202 =:-189 <:-176 \n", " =:①③⑫⑯⑲㉑㉖㉗㉝㊳㊵㊷㊾51 52 61 63 67 71 76 80 86 90 93 95 97 101 103 108 110 120 123 124 127 140 151 161 164 167 168 173 184 185 191 200 201 204 205 213 216 219 221 233 ⚖ ⑦⑨⑪⑰㉒㉙㉟㊸㊺㊻㊼53 57 58 69 70 74 92 96 98 99 102 104 106 117 118 121 122 131 134 141 149 157 158 160 162 166 176 178 180 186 193 194 203 211 215 222 225 228 231 232 234 237 ➔ >:-162 =:-187 <:-164 \n", " <:②⑥㊴㊷㊹㊽55 62 63 75 90 91 94 100 127 130 133 137 142 143 150 155 159 163 181 195 199 200 205 215 228 229 232 ⚖ ⑤⑯⑱㉑㉓㉛㉞㊱㊳㊵54 64 72 106 109 117 122 132 139 141 149 153 169 183 197 203 209 214 219 223 227 230 231 ➔ >:-214 =:-194 <:-228 \n", " <:①②④⑤⑥⑧⑨⑮⑱㉑㉓㉔㉕㉗㉙㉛㉜㉝㊳㊵㊷㊸㊻㊼53 55 58 69 71 72 73 74 75 76 77 85 88 89 90 93 94 95 101 104 105 107 110 111 115 116 117 121 122 123 131 133 135 137 142 143 144 145 147 148 156 159 161 164 165 172 173 176 177 180 183 184 186 188 194 196 200 202 204 206 207 208 209 218 220 221 225 229 232 235 236 238 239 241 ⚖ ③⑦⑩⑪⑫⑭⑲⑳㉒㉖㉚㉟㊴㊹㊺㊾51 52 54 59 60 61 62 63 64 66 67 68 78 80 81 82 83 84 87 91 92 96 97 98 99 100 102 108 112 113 114 118 120 124 125 128 129 130 132 136 139 140 141 146 149 151 152 153 154 155 157 160 162 166 169 170 171 174 178 182 185 187 189 193 195 198 203 211 212 213 215 216 217 222 223 226 228 231 234 237 240 242 ➔ \n", " >:①②⑥⑧⑨⑪⑫⑬⑯⑲⑳㉑㉓㉔㉕㉖㉗㉚㉜㉝㊲㊴㊶㊸㊺㊽㊾52 55 56 59 63 64 66 67 75 76 78 79 80 83 84 91 92 94 95 100 102 104 106 107 108 112 115 118 121 125 128 129 132 133 134 140 143 147 150 151 153 157 160 161 163 164 165 166 167 168 170 171 175 178 179 180 188 190 193 194 198 199 200 201 205 208 210 217 219 220 221 225 230 235 237 239 240 242 ⚖ ③④⑤⑦⑩⑮⑰⑱㉒㉘㉛㉟㊵㊹㊻㊼㊿51 53 54 58 60 61 65 68 69 70 72 73 74 77 81 82 85 86 87 88 89 90 93 96 97 101 103 109 111 113 114 116 119 122 124 126 127 130 135 136 137 138 139 141 142 144 145 146 148 149 152 154 156 158 159 162 172 173 174 176 177 181 182 183 184 185 187 189 192 196 197 202 203 204 206 207 209 212 213 222 226 228 229 232 233 234 236 238 ➔ >:-203 =:-215 <:-198 \n", " =:61 92 133 170 171 181 220 224 240 ⚖ 115 141 144 145 148 190 199 233 235 ➔ >:-199 =:-227 <:-224 \n", " <:⑤⑦⑩⑯⑱㉑㉔㉕㉛㉟㊴㊾㊿55 58 65 66 68 71 74 77 79 85 89 91 92 96 98 102 103 105 106 109 114 115 120 125 127 130 133 135 138 144 150 153 154 156 164 169 170 171 173 177 179 182 183 186 192 196 198 199 203 204 210 214 215 225 227 228 230 236 240 242 ⚖ ①②③⑥⑧⑪⑬㉓㉗㉙㉚㉜㊱㊷㊸㊼52 53 64 67 73 75 82 84 86 93 95 104 110 111 121 122 123 128 129 132 136 142 143 147 148 149 158 161 162 165 172 174 175 176 180 181 184 185 187 189 190 191 193 197 205 208 211 212 219 221 224 229 231 232 235 239 241 ➔ >:-232 =:-238 <:-225 \n", " =:⑦⑧⑬⑮⑯⑰㉓㉔㉕㉗㉚㉛㉝㉟㊳㊴㊶㊸㊹㊻㊽52 53 57 60 62 69 75 78 79 81 83 91 93 94 96 98 100 103 104 105 106 108 114 119 120 124 126 127 133 134 138 144 146 147 149 150 153 154 155 157 161 166 167 168 174 175 178 179 186 188 190 194 195 203 205 207 210 211 212 215 216 217 221 224 225 228 229 231 232 236 241 ⚖ ①③④⑨⑩⑭⑱㉒㉖㉘㉙㉜㉞㊲㊵㊷㊺51 54 55 58 61 63 64 66 67 68 70 72 73 74 76 77 80 82 85 86 87 88 89 92 95 97 99 102 107 110 111 112 113 115 117 118 121 122 125 129 131 132 140 141 142 145 148 160 162 163 170 171 173 176 177 180 181 185 187 193 196 199 201 204 213 218 219 220 223 227 230 233 235 237 242 ➔ \n", " >:⑦⑪⑭⑱㉗㉚㉞㊵㊼㊾㊿53 64 65 66 68 70 73 75 78 82 84 85 91 92 95 107 109 112 113 118 120 129 133 135 139 141 147 150 154 155 156 157 159 163 166 168 172 177 180 182 187 190 197 201 213 220 232 234 236 ⚖ ④⑥⑬⑯⑳㉓㉖㉘㉙㉛㉝㉟㊶54 56 61 63 69 87 88 89 98 100 117 124 126 130 131 136 140 142 145 153 161 164 165 167 171 174 176 178 183 188 192 193 196 206 210 211 218 219 221 229 230 235 237 238 239 240 242 ➔ \n", " >:⑩⑬㉑㉕㉙㉟㊲㊵㊶㊹㊼㊽58 59 67 69 71 74 75 79 86 88 94 95 97 103 113 116 117 118 119 120 142 144 148 155 158 160 162 164 167 175 182 186 190 191 194 198 207 211 214 216 221 222 224 230 231 232 235 ⚖ ②⑦⑪⑱⑳㉞㊸51 55 57 62 63 65 68 76 77 84 87 90 91 92 99 102 105 109 111 112 125 127 128 132 137 141 147 150 153 156 166 168 171 177 180 181 184 187 192 195 197 209 210 213 217 218 223 225 226 234 240 241 ➔ >:-218 =:-196 <:-230 \n", " =:③⑪㊽56 78 79 84 91 97 111 124 134 142 165 190 193 208 212 219 221 222 225 233 ⚖ ㉛㉝㊱㊵㊶55 68 80 81 90 145 167 170 171 173 181 192 201 213 216 220 235 237 ➔ >:-170 =:-185 <:-233 \n", " <:②④⑥⑮⑯⑱⑲⑳㉙㉚㉟㊱㊲㊼㊿51 54 59 62 67 71 73 77 78 83 85 90 92 93 95 97 98 106 114 115 116 118 119 120 122 124 125 130 132 136 140 148 150 155 158 160 161 162 168 172 178 179 180 181 182 185 188 192 195 199 200 207 214 216 217 221 222 228 231 235 236 237 239 241 ⚖ ①⑤⑦⑧⑩⑪⑫⑬⑭⑰㉕㉖㉘㉛㉜㉞㊴㊵㊺㊻㊾52 53 57 58 63 64 65 69 72 76 79 84 86 88 99 102 109 110 111 117 121 123 128 129 133 135 139 146 149 151 152 154 156 157 163 164 167 170 173 175 176 177 184 187 189 193 196 198 208 211 213 215 218 227 229 233 234 238 ➔ >:-213 =:-201 <:-180 \n", " =:⑨⑩⑰㉓㉛㊻㊽54 58 63 65 68 70 72 73 75 76 79 81 82 84 88 89 90 99 105 110 115 118 123 128 131 132 134 142 148 149 156 157 170 175 177 184 187 206 208 210 211 222 223 225 226 233 236 237 ⚖ ①⑥⑮⑱⑲⑳㉒㉘㊱㊴52 60 61 62 64 66 77 86 97 98 102 106 109 114 119 121 124 136 146 147 151 154 155 162 164 166 171 172 174 183 185 188 190 191 192 195 198 201 204 205 215 230 234 240 241 ➔ \n", " >:㊴112 123 194 202 207 234 ⚖ 118 184 192 213 220 231 236 ➔ >:-192 =:-191 <:-234 \n", " =:②③④⑮⑰⑱⑳㉑㉕㉙㉛㉜㉞㉟㊲㊳㊵㊹㊽51 53 54 55 63 65 68 69 70 75 77 80 81 82 83 85 86 92 94 99 107 108 109 113 114 115 116 118 121 124 128 134 135 153 154 155 156 158 160 163 164 166 169 170 172 173 180 181 183 185 186 188 189 190 194 195 196 198 199 200 202 204 206 211 214 215 220 221 222 224 236 ⚖ ①⑥⑧⑨⑪⑫⑭⑲㉒㉓㉔㉖㉗㉚㉝㊴㊷㊸㊺㊿52 56 61 62 66 71 73 76 78 79 84 87 88 91 93 95 96 97 103 104 105 111 117 120 123 127 129 132 136 137 139 140 142 143 144 147 148 149 150 152 157 159 162 165 168 175 177 179 182 193 197 203 205 207 208 209 210 217 218 225 226 227 229 231 232 233 234 235 238 240 ➔ >:-182 =:-239 <:-200 \n", " <:⑤⑥⑫⑭⑮⑲㉗㉘㉚㉝㉟㊴㊶㊺㊽53 56 60 61 63 65 66 71 74 83 85 103 105 111 115 118 126 132 135 139 149 150 151 153 155 162 173 175 179 182 188 189 194 196 200 201 208 209 215 217 225 227 228 233 235 241 242 ⚖ ⑨㉑㉔㉛㉜㉞㊱㊳㊵㊷㊹㊻59 64 67 70 75 76 77 80 81 88 89 90 91 92 100 110 113 114 116 117 120 123 124 125 127 131 133 140 143 147 152 156 161 165 167 174 178 180 197 203 206 207 210 214 220 221 224 226 230 237 ➔ >:-226 =:-184 <:-208 \n", " <:⑤⑥⑦⑨⑩㉑㉓㉗㉙㉚㉜㊳㊴㊶㊹㊺㊼53 55 58 61 63 64 65 67 68 69 70 72 73 75 85 86 91 99 117 119 122 123 124 127 132 134 135 141 147 153 155 156 159 161 164 167 169 170 176 188 189 193 196 199 205 216 217 222 223 224 225 232 233 237 238 239 240 242 ⚖ ②⑪⑬⑳㉕㉘㉛㉞㉟㊱㊵㊸㊻㊽㊿51 54 56 57 60 62 79 80 83 84 87 88 89 92 94 95 97 98 106 107 108 112 113 114 116 118 131 137 138 144 145 149 158 162 163 166 168 171 173 174 175 180 184 187 192 194 195 200 201 206 208 210 211 212 213 220 226 227 234 241 ➔ \n", " >:⑤⑧⑨㊴55 76 85 90 95 100 113 117 136 143 167 212 ⚖ ⑳㉘㉛57 79 82 91 94 104 106 137 164 193 210 219 222 ➔ >:-210 =:-168 <:-212 \n", " =:③⑰⑳㊴52 71 76 101 103 109 135 148 166 168 175 181 186 197 233 ⚖ ⑥⑩㉚51 55 61 67 85 91 113 128 131 143 167 170 190 192 207 227 ➔ >:-190 =:-231 <:-186 \n", " <:⑦⑨⑪⑫⑭⑮⑯⑲⑳㉑㉕㉗㉙㊳㊴㊺㊽54 55 61 64 66 71 75 81 83 84 85 90 93 94 100 102 105 111 117 120 129 131 136 138 140 143 146 148 152 153 163 164 168 171 178 181 183 184 186 188 189 190 191 195 197 205 207 209 211 214 216 222 224 225 230 232 235 ⚖ ②③⑥⑩⑬㉒㉚㉝㉞㉟㊲㊶㊸㊹㊻㊿51 52 56 57 67 68 70 72 73 74 78 80 86 98 101 103 106 108 109 112 115 122 123 125 130 134 135 139 142 144 145 150 151 159 161 165 166 169 170 177 179 187 193 196 200 201 202 203 204 215 217 221 228 234 238 239 241 242 ➔ >:-217 =:-167 <:-205 \n", " <:②⑤⑥⑦⑧⑩⑪⑲⑳㉚㉛㉝㉟㊱㊵㊶㊻㊽㊾51 53 55 58 63 69 75 77 78 80 81 83 88 89 90 91 92 95 100 101 102 103 104 106 108 112 115 117 119 120 122 129 130 136 143 145 146 155 159 161 166 179 182 185 190 191 193 200 201 205 206 207 208 211 213 215 218 220 222 228 229 231 232 233 235 237 239 241 242 ⚖ ①③⑫⑯⑰㉒㉓㉔㉖㉙㉞㊲㊷㊹㊼52 54 56 57 61 62 64 65 68 70 71 72 73 74 82 87 93 94 96 97 98 105 107 109 116 118 124 126 131 132 133 134 135 138 139 141 142 147 148 149 151 152 156 157 158 160 162 164 165 168 169 170 172 173 174 175 176 177 180 186 192 196 197 202 210 212 214 219 223 225 230 236 240 ➔ \n", " >:⑦⑧⑱㉓㉖㉜㊳㊻52 54 56 57 60 67 68 69 74 77 79 83 97 99 102 105 106 109 112 113 116 121 125 126 127 128 130 140 142 150 152 155 162 167 168 170 172 174 175 178 181 186 188 195 198 199 204 208 209 210 220 229 231 232 241 ⚖ ③⑥⑩⑪⑫⑮⑰⑲㉒㉗㉚㉛㉞㊲㊶㊷㊹㊺㊼51 53 55 61 62 63 70 76 78 80 88 92 103 104 107 123 133 135 136 139 141 149 153 159 165 171 173 176 185 190 191 192 194 205 207 215 217 221 222 224 226 233 238 240 ➔ \n", " >:②⑧⑩⑭⑱㉒㉖㉗㉘㉛㉜㉞㉟㊱㊴㊵㊷㊸㊻㊿51 54 61 66 70 74 78 80 81 86 87 89 90 93 95 98 99 100 101 105 106 107 111 116 119 121 124 128 129 131 132 135 138 140 144 151 156 162 163 164 165 166 168 176 178 185 187 188 189 195 199 201 205 206 209 213 214 217 221 224 227 228 229 230 237 239 241 ⚖ ④⑤⑥⑦⑨⑫⑬⑮⑯⑰⑲⑳㉑㉓㉔㉝㊶㊹㊺㊾55 56 58 60 62 67 68 69 72 75 77 79 82 83 85 88 96 97 108 110 113 115 117 118 126 127 130 134 136 141 142 143 146 147 148 154 157 158 159 169 170 173 175 177 179 181 183 190 194 196 200 202 207 208 211 212 218 219 220 222 223 225 232 233 234 235 242 ➔ >:-173 =:-240 <:-165 \n", " =:②③⑤⑨⑩⑲⑳㉑㉒㉖㉝㊲㊵㊽㊿51 55 58 64 68 69 71 78 84 86 94 99 101 103 109 110 112 118 125 130 135 139 141 143 144 145 152 155 160 164 167 168 172 177 179 183 186 190 192 193 195 199 201 215 219 221 222 223 226 228 231 232 235 237 239 241 ⚖ ①⑧⑫⑬⑭⑰⑱㉓㉚㊱㊶㊸㊹㊺㊻㊾53 61 65 66 67 70 72 73 77 79 80 83 85 90 97 98 100 104 106 107 108 116 121 122 124 133 136 138 147 148 150 156 157 159 165 166 169 170 181 189 191 198 206 208 210 211 214 216 217 224 225 227 230 236 238 ➔ >:-169 =:-197 <:-177 \n", " <:③⑤⑩⑯⑱㉟㊴㊼57 59 64 74 88 89 92 98 107 111 118 120 128 144 145 155 156 159 164 168 169 171 174 180 183 187 189 197 217 242 ⚖ ②⑥㊶㊹㊽60 68 69 70 71 78 80 108 113 114 119 129 133 141 149 150 152 166 172 173 178 179 181 184 195 209 211 218 222 224 227 233 240 ➔ >:-172 =:-175 <:-174 \n", " =:②⑨⑪⑭㉓㉔㉚㉜㉟㊱㊳㊷㊸㊻㊽㊾51 54 61 64 68 71 74 75 79 82 84 85 87 88 93 96 97 101 105 106 108 113 114 117 118 124 126 132 135 136 140 146 149 150 154 155 156 157 160 161 162 163 164 167 168 170 172 173 180 185 188 190 191 192 198 200 202 203 208 212 213 214 216 218 220 221 223 227 229 230 232 241 ⚖ ③④⑤⑥⑦⑧⑩⑫⑬⑮⑯⑱⑲⑳㉕㉖㉗㉘㉙㉝㊲㊴㊶㊺㊼53 55 56 57 58 65 66 67 69 73 76 77 80 95 102 103 104 109 110 111 115 116 122 123 125 127 128 130 134 138 141 145 147 151 152 153 159 166 169 174 176 177 178 181 182 186 189 193 194 196 199 207 209 210 217 222 225 226 228 231 237 240 242 ➔ \n", " >:⑤⑥⑧⑬⑯⑰⑱㉑㉒㉔㉕㉗㉛㉞㊳㊴㊵㊸㊹㊽51 53 54 55 56 61 64 65 68 71 76 77 78 79 80 82 91 92 95 97 100 101 104 106 107 108 112 113 114 117 124 125 129 132 133 136 137 139 142 144 145 146 147 149 151 152 154 155 156 161 164 165 166 173 175 176 177 178 187 190 194 195 199 202 211 214 222 230 234 240 241 242 ⚖ ①②④⑦⑨⑩⑪⑫⑲⑳㉖㉘㉙㉜㉝㉟㊷㊼㊾㊿52 57 58 59 62 66 67 69 70 72 73 84 89 90 94 96 99 102 103 105 111 115 116 119 120 121 123 127 128 130 131 135 138 141 143 148 153 158 159 167 169 170 171 172 174 179 180 181 182 183 185 186 191 192 196 203 206 207 210 212 213 216 217 220 221 224 225 228 229 232 238 239 ➔ >:-181 =:-209 <:-178 \n", " =:②③⑥⑨⑱㉔㉕㉘㉜㊴㊷㊸㊾53 58 59 63 66 68 69 70 71 77 79 80 82 83 85 88 90 91 93 94 95 98 99 100 105 116 117 125 131 134 137 139 140 143 145 146 148 150 163 164 166 171 172 177 184 189 194 196 199 202 206 213 214 217 225 228 229 230 234 235 236 237 238 240 241 ⚖ ④⑤⑦⑪⑭⑯⑲㉑㉙㊲㊳㊶㊹㊺㊽㊿51 56 57 62 64 73 84 87 96 97 101 104 106 107 108 110 111 112 114 119 120 122 128 129 130 133 135 138 141 142 144 149 151 153 154 155 156 158 159 162 167 173 175 178 179 182 186 187 193 200 204 207 215 216 218 219 220 221 227 231 233 242 ➔ >:-204 =:-195 <:-171 \n", " <:⑧⑪⑯㉘㊵㊶㊹㊼56 64 65 79 81 83 95 102 104 112 114 120 126 132 136 145 155 165 169 172 176 179 182 183 185 197 201 219 221 222 223 225 226 235 ⚖ ⑨⑬⑲㉛㊱㊲㊿51 68 73 85 86 88 109 113 115 118 123 127 130 135 143 147 157 166 170 174 188 191 194 196 199 200 211 213 214 217 220 230 237 238 242 ➔ >:-188 =:-216 <:-221 \n", " <:③④⑤⑥⑫⑬⑮⑯⑰⑱⑲㉓㉕㉖㉗㉚㉞㊴㊻㊼㊿51 52 53 56 57 60 65 69 74 75 76 82 84 93 95 96 97 98 101 105 107 109 110 111 112 115 117 120 122 123 125 128 130 131 138 139 142 143 148 151 155 158 160 161 163 165 170 171 176 181 185 187 188 192 198 199 200 204 205 206 208 213 216 217 218 220 223 226 228 230 231 232 236 238 239 240 241 242 ⚖ ①⑦⑧⑨⑩⑪⑭⑳㉒㉘㉛㉜㉟㊲㊳㊶㊸㊹㊽㊾54 55 59 62 63 64 71 72 73 77 78 79 81 83 86 87 88 89 91 92 94 99 102 103 113 114 119 121 124 126 127 129 132 133 134 135 136 137 140 147 149 150 153 154 156 159 162 164 166 167 168 169 172 173 179 180 182 183 184 186 190 191 195 196 201 202 203 209 211 212 214 215 219 221 224 225 233 234 235 ➔ \n", " >:⑩㉔㉕㉗㉙㉛㊹52 54 57 58 60 64 66 67 68 70 71 73 74 77 81 83 88 92 94 98 99 103 104 105 108 111 113 115 117 118 123 124 127 129 131 133 134 135 148 153 154 158 162 163 166 171 173 175 179 182 194 195 196 200 202 208 217 220 226 232 ⚖ ④⑧⑨⑫⑭⑮⑯㉒㉓㉖㉜㊱㊷㊸㊺㊻㊽55 61 65 78 86 95 96 97 101 109 112 119 120 122 125 126 136 139 142 143 145 147 149 151 160 164 172 177 178 181 183 184 185 188 189 191 193 198 201 209 210 212 214 218 222 228 234 235 236 237 ➔ >:-235 =:-211 <:-166 \n", " =:④⑤⑨⑩⑪⑭㉑㉒㉔㉜㉝㊱㊴㊵㊶㊷㊻51 57 75 76 77 80 82 88 89 90 97 100 101 103 107 109 113 121 124 127 129 133 134 136 143 146 150 157 159 161 164 170 172 181 182 183 184 186 187 188 190 198 201 203 211 218 221 222 224 228 231 235 236 ⚖ ③⑦⑫⑬⑮⑯⑲㉕㊳㊸㊺㊼㊽㊾53 54 55 56 59 60 63 64 66 67 68 70 72 74 79 83 85 93 104 105 110 119 120 125 135 139 142 145 151 154 155 158 162 163 168 171 177 185 189 193 194 195 197 199 200 202 207 209 214 217 219 225 227 233 238 241 ➔ >:-207 =:-229 <:-222 \n", " <:④⑧⑨⑬⑲⑳㉒㉙㉚㉝㉞㉟㊱㊲㊳㊷㊹㊺㊽㊾㊿52 53 57 63 64 71 79 84 86 88 90 99 101 104 108 110 112 113 117 120 125 129 139 140 144 146 148 149 156 157 163 168 170 177 180 188 192 196 197 211 213 217 219 220 227 230 231 237 239 ⚖ ②③⑤⑥⑦⑪⑯⑱㉓㉗㉜㊸54 55 58 60 62 65 67 68 69 70 78 81 83 87 95 97 103 109 114 115 119 122 123 124 126 131 133 134 135 143 147 154 160 161 164 167 176 178 183 190 194 201 207 208 209 214 215 216 222 225 226 228 229 232 235 238 241 242 ➔ >:-241 =:-206 <:-220 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿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 ⚖ 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 ➔ \n", " >:②④⑤⑦⑳㉓㉙㉛㊴㊸60 61 63 66 67 75 80 81 82 85 89 90 93 94 96 98 101 114 115 116 118 120 122 123 124 125 127 138 141 146 150 153 155 158 160 161 163 169 170 172 173 176 183 186 196 201 203 204 208 210 219 223 224 227 233 235 ⚖ ⑨⑭⑯⑰⑱㉒㉕㉚㉟㊳㊵㊶㊺㊻㊾51 53 54 62 65 71 73 78 84 87 97 100 104 105 106 107 108 109 112 113 121 136 137 139 142 143 145 151 152 157 164 165 178 180 187 188 192 197 198 200 206 207 209 211 212 217 221 226 228 234 236 ➔ \n", " >:①②③④⑧⑭⑰⑲㉑㉖㉘㉚㉛㉜㉝㉟㊴㊶㊽㊿55 63 73 78 80 81 83 84 86 87 89 94 95 101 104 107 109 110 112 114 116 121 122 123 128 129 133 135 136 140 146 149 150 151 157 159 164 166 172 174 175 178 179 181 183 185 186 187 191 194 196 198 199 201 203 207 208 209 211 214 215 216 217 220 221 222 224 225 226 227 229 238 ⚖ ⑥⑩⑫⑬⑮⑱⑳㉓㉔㉙㊱㊲㊳㊵㊷㊸㊺㊻㊾52 53 58 61 62 65 66 67 71 74 82 85 88 91 92 96 97 98 100 103 106 115 117 118 119 120 124 130 131 132 134 137 141 143 144 145 147 154 156 158 160 161 162 163 165 167 169 170 171 173 176 177 180 182 184 189 190 192 193 197 200 202 204 206 210 213 219 223 230 231 232 234 240 ➔ \n", " >:②④⑫⑬⑭⑰㉒㉞㊷㊽59 62 64 68 77 81 95 103 119 127 137 144 151 153 166 178 186 191 194 196 205 207 230 ⚖ ⑧⑯㉑55 66 67 71 75 82 88 97 105 107 114 118 145 149 162 165 170 177 180 185 187 212 214 216 220 222 223 238 240 242 ➔ >:-145 =:-143 <:-137 \n", " =:⑥⑦⑬⑭⑳㉓㉖㉙㉚㉞㊱㊲㊳㊴㊵㊷㊸㊾53 54 55 58 62 65 66 67 70 72 73 79 82 83 86 87 89 91 92 94 95 96 98 100 102 103 105 107 109 111 112 113 117 118 119 122 124 125 126 131 132 133 137 138 141 142 143 144 147 149 150 151 154 156 159 161 166 167 168 170 172 173 176 178 182 184 185 187 188 189 192 193 194 195 196 197 200 203 205 206 207 209 211 212 214 215 219 220 222 224 225 227 229 235 236 238 242 ⚖ ①②③④⑤⑧⑩⑪⑫⑮⑯⑰⑱⑲㉑㉒㉔㉕㉗㉘㉜㉝㉟㊶㊹㊺㊻㊼㊽㊿51 52 56 57 59 60 61 63 64 69 71 74 75 76 77 78 80 81 84 85 88 90 93 97 99 101 104 106 114 115 116 120 121 127 128 129 130 134 135 136 139 140 145 148 153 155 157 158 162 163 165 169 171 174 175 177 179 180 181 186 190 191 198 199 201 202 204 210 213 216 217 218 221 223 226 228 230 231 232 233 234 237 239 240 241 ➔ >:-139 =:-152 <:-142 \n", " <:⑦⑯⑲㉑㉔㉖㉘㉙㉛㉞㉟㊳㊸㊹㊾㊿52 61 65 68 71 73 76 77 81 84 90 93 96 98 99 100 110 111 112 114 115 116 118 126 127 129 132 140 141 143 147 154 156 157 161 166 167 168 169 177 182 184 185 187 189 190 192 193 195 199 203 205 206 214 215 216 217 219 220 224 225 227 228 230 234 235 236 237 ⚖ ①②③④⑫⑮⑳㉒㉚㉜㊶㊷㊼㊽51 53 56 57 58 62 63 64 67 72 74 75 78 82 83 86 89 92 95 103 105 108 109 113 117 121 122 123 124 130 131 133 136 137 139 142 145 148 149 155 158 159 162 163 165 170 171 173 174 179 180 188 194 200 201 202 204 208 210 212 213 222 226 229 231 232 233 238 240 242 ➔ >:-136 =:-151 <:-157 \n", " =:⑪⑫⑭㉔㉕㉖㉛㉜㉞㉟㊱㊵㊶㊷㊸㊻㊼㊿53 55 57 58 59 63 69 85 86 87 88 98 101 106 110 111 118 120 125 128 130 131 135 147 148 150 161 162 163 179 180 185 186 192 193 198 212 215 218 219 222 224 225 226 227 239 ⚖ ⑤㉑㉗㉘㊲㊾54 56 61 68 78 79 81 82 83 84 89 92 93 94 96 97 100 107 108 109 113 114 115 119 121 122 123 124 129 136 137 140 141 142 143 146 154 155 158 159 166 171 173 182 188 195 201 203 205 206 209 216 230 231 233 235 238 241 ➔ \n", " >:①④⑦⑨⑫⑬⑰⑱⑲㉘㉚㉞㊸51 56 58 60 66 68 71 73 74 80 89 93 95 100 103 105 129 132 146 156 159 167 169 170 171 175 182 190 193 195 203 206 209 214 219 222 228 232 237 ⚖ ⑭⑮㉑㉕㉗㊴㊷㊻㊿70 81 82 86 88 91 94 98 99 101 106 110 113 121 125 127 130 139 140 141 143 147 152 166 176 183 185 188 196 198 199 200 201 208 211 216 218 221 224 226 239 240 242 ➔ >:-140 =:-154 <:-159 \n", " =:⑯㉑㉒㉔㉟㊲㊹㊾63 65 66 76 84 93 107 116 129 144 145 158 163 169 170 171 174 176 178 184 191 193 197 206 212 217 229 237 ⚖ ⑳㊳67 71 72 78 89 96 98 101 102 106 108 113 130 131 137 139 148 152 154 156 162 164 167 180 181 185 186 198 202 207 213 219 226 232 ➔ >:-156 =:-149 <:-144 \n", " <:①⑰㉘㉛㉟82 87 88 89 92 99 112 114 117 119 125 133 134 147 151 153 177 182 188 194 195 227 238 ⚖ ⑯㉜㊷52 58 65 66 70 86 98 110 111 118 121 135 142 145 158 170 180 184 197 204 210 224 226 230 240 ➔ >:-135 =:-148 <:-147 \n", " <:③⑧⑮⑱⑲㉔㉕㉙㉚㉛㉞㉟㊳㊵㊷㊸㊹㊻㊽㊿51 52 53 59 60 61 68 73 75 82 84 85 88 92 93 94 96 97 98 99 100 104 105 108 109 110 111 112 114 116 117 118 119 120 123 126 127 129 131 132 137 138 139 141 143 147 148 150 151 156 165 166 169 172 174 177 180 181 184 185 186 188 190 191 192 194 196 197 198 207 209 211 212 213 214 215 216 218 220 221 223 225 226 228 229 232 233 237 240 242 ⚖ ①②④⑤⑦⑨⑩⑪⑬⑭⑯⑰⑳㉑㉒㉖㉗㉜㉝㊱㊲㊴㊺㊼55 56 57 58 64 65 66 69 70 71 72 76 77 78 80 81 83 86 87 89 90 91 95 101 102 103 106 113 115 121 122 124 125 128 134 135 136 142 144 145 146 149 152 154 155 157 159 160 162 163 164 168 170 171 173 175 176 178 179 182 183 187 193 195 199 200 201 202 203 204 205 206 208 210 217 219 222 224 227 230 231 234 235 236 238 239 ➔ \n", " >:②③⑨⑭⑯㉒㉔㉖㉘㉙㊴㊻55 57 67 70 73 74 82 86 87 89 91 100 105 108 119 132 134 137 139 147 149 152 153 160 163 168 175 179 180 192 202 203 206 211 212 220 221 223 230 233 238 239 ⚖ ④⑪⑮⑰⑲㉗㉛㉝㉞㊲㊸㊽56 60 65 72 81 83 85 98 102 118 128 129 131 135 141 151 155 164 174 178 181 183 185 186 187 193 195 197 201 207 208 213 217 218 222 225 226 227 228 237 240 242 ➔ >:-155 =:-146 <:-160 \n", " =:③④⑤⑥⑦⑧⑩⑮⑯⑱㉑㉕㉗㉙㉚㉛㉜㉞㊲㊳㊷㊸㊺㊽㊾53 54 69 74 75 77 78 80 81 82 83 84 85 86 87 88 89 91 93 96 98 102 105 106 108 109 112 113 114 115 116 118 119 127 139 142 143 144 146 148 149 153 154 155 156 157 160 162 163 172 173 174 178 179 181 183 189 191 194 196 200 203 204 206 209 210 211 213 214 215 217 218 220 221 222 225 227 229 232 233 234 239 241 242 ⚖ ①②⑨⑪⑫⑬⑭⑰⑲⑳㉒㉓㉔㉘㉝㊱㊴㊵㊶㊹㊻㊼51 52 55 56 57 59 61 62 63 64 65 66 67 68 70 71 72 73 76 79 97 100 101 103 104 107 111 117 120 121 123 124 125 128 129 130 131 133 134 135 136 140 141 147 150 151 159 161 164 165 167 168 169 170 175 177 180 182 184 185 186 187 188 190 192 193 195 197 198 199 201 202 205 207 208 212 216 219 223 226 228 230 231 235 237 238 240 ➔ >:-161 =:-158 <:-153 \n", " <:⑤⑨⑰⑱㉓㉖㉜㊴㊸㊹㊿60 69 71 72 74 75 76 83 88 90 94 105 109 111 123 125 128 135 138 146 155 157 158 162 163 164 167 170 174 188 189 197 199 202 203 206 215 216 221 226 227 237 238 239 241 242 ⚖ ①②④⑥⑧⑮㉑㉔㉗㉘㉛㉟㊲㊶㊼㊽53 59 62 70 73 78 79 84 86 95 99 106 107 110 113 115 117 122 124 127 129 131 132 136 147 150 156 173 184 186 191 194 198 205 211 212 217 219 224 230 236 ➔ >:-150 =:-141 <:-138 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿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 ⚖ 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 ➔ \n", " >:⑯㉑㉒㉔㉕㉗㉛㊲㊷㊺㊾52 55 56 58 60 65 83 88 90 91 92 93 99 104 106 107 108 109 111 114 122 127 128 130 137 140 142 146 147 151 156 164 174 179 182 184 185 200 212 214 215 228 237 238 239 242 ⚖ ②③⑥⑬⑰⑳㉓㉚㉝㉞㊵㊶㊼㊽㊿51 53 72 78 84 86 95 97 102 110 120 126 131 133 135 145 150 154 159 162 169 171 176 177 180 195 196 198 199 205 208 209 210 218 219 220 222 223 224 229 233 240 ➔ \n", " >:③⑥⑩⑪⑬⑮⑱⑳㉒㉓㉔㉕㉝㉞㊴㊵㊶㊽51 60 64 65 68 69 73 75 76 82 88 89 92 93 98 100 105 109 111 113 116 120 121 124 125 126 127 128 129 130 134 136 138 140 141 142 151 153 155 156 157 158 160 163 173 174 176 178 185 187 194 197 199 204 208 210 215 219 222 226 228 236 239 ⚖ ①②⑤⑦⑲㉘㉚㉜㊳㊸㊹㊼㊿53 54 55 63 66 67 70 72 74 77 80 81 84 85 86 90 94 95 96 101 102 104 106 108 115 119 131 132 135 137 139 145 147 149 150 152 154 159 162 164 165 167 169 170 172 175 180 181 186 188 191 192 195 196 198 202 207 209 211 212 218 223 224 227 229 232 237 240 ➔ >:-131 =:-133 <:-126 \n", " =:⑦⑪⑫⑭⑰⑱⑳㉒㉓㉖㉗㉛㊱㊵㊹53 55 59 67 71 73 74 81 83 87 100 107 110 114 134 136 140 144 148 151 152 153 154 156 161 162 164 177 185 188 191 192 195 204 205 212 214 215 220 221 223 225 229 230 231 232 235 236 237 238 239 241 ⚖ ①③⑥⑬⑮⑲㉑㉕㉘㉚㉞㉟㊲㊴㊺㊼㊿56 58 60 62 64 66 68 75 77 79 82 84 90 93 94 95 96 98 109 113 115 116 119 124 126 128 129 130 131 133 135 137 149 163 167 175 176 179 181 187 190 193 197 198 199 207 211 222 228 233 ➔ >:-129 =:-132 <:-134 \n", " <:①③⑦⑫⑭⑱⑳㉔㉞㊳㊵57 67 69 80 83 88 93 94 95 98 104 105 109 110 112 115 123 125 130 138 140 144 151 155 160 164 172 176 187 188 208 209 215 225 227 228 239 ⚖ ②⑨㉒㉛㉜㉟㊶㊺52 53 58 64 68 70 71 75 76 81 84 86 87 91 113 116 124 127 131 132 134 136 143 156 158 163 175 179 180 183 184 185 197 201 204 210 218 229 235 240 ➔ >:-127 =:-128 <:-130 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿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 ⚖ 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 ➔ \n", " >:⑤⑧⑨㉓㉗㉜㊳㊵㊶㊹㊺㊾51 54 55 56 65 72 77 82 85 90 94 99 104 123 129 130 132 133 134 135 139 142 143 148 155 164 166 171 174 179 181 197 199 200 208 213 218 220 222 226 230 238 239 ⚖ ⑫㉑㉕㊻㊼㊿57 58 62 66 67 73 79 81 83 92 95 97 108 109 112 113 115 118 119 124 126 131 138 141 147 150 156 159 162 167 168 169 170 177 183 191 195 198 204 205 206 207 209 210 215 217 232 235 242 ➔ >:-124 =:-125 <:-123 \n", " =:①②③④⑤⑥⑦⑧⑨⑩⑪⑫⑬⑭⑮⑯⑰⑱⑲⑳㉑㉒㉓㉔㉕㉖㉗㉘㉙㉚㉛㉜㉝㉞㉟㊱㊲㊳㊴㊵㊶㊷㊸㊹㊺㊻㊼㊽㊾㊿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 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 ➔ >:-122 =:⌖ <:-121 \n", " <:④㉔㉝㉟㊴53 55 67 70 72 78 89 105 115 116 119 124 126 133 138 144 150 156 159 161 191 194 201 202 204 229 230 231 233 235 ⚖ ⑥⑬⑯⑰㊱㊵㊷㊹52 54 59 65 76 99 100 107 118 128 131 137 147 166 174 175 180 181 183 189 190 197 198 212 223 227 237 ➔ >:-118 =:-120 <:-119 \n", " <:⑤⑥⑫⑮㉗㉙㉝㊱㊲㊴㊵㊸66 69 73 74 83 89 97 108 113 115 117 120 122 124 126 129 132 142 147 149 151 158 159 169 173 174 183 184 185 188 199 206 211 215 217 221 222 242 ⚖ ①⑦⑬㉒㉕㊶㊻㊼51 52 54 62 84 93 99 100 111 112 116 123 130 134 138 143 144 148 150 156 161 165 176 179 189 190 191 192 195 197 205 212 214 220 225 226 228 229 231 233 234 236 ➔ \n", " >:①③⑪⑮⑳㉙㉞㉟㊲㊴㊶㊷㊺㊼㊿51 54 62 67 70 72 75 77 82 86 88 89 90 98 106 108 111 113 114 118 124 126 130 132 133 134 144 145 149 152 154 160 163 167 172 182 183 189 191 193 201 204 205 212 213 217 222 228 230 233 240 241 ⚖ ②④⑥⑦⑨⑫⑲㉖㉚㉜㉝㊳㊻57 59 60 61 63 65 68 69 71 73 74 78 80 87 93 94 96 99 104 107 116 120 123 125 127 137 140 141 153 156 159 162 170 171 173 175 177 178 184 185 187 195 202 210 214 215 218 226 227 229 232 234 236 238 ➔ >:-116 =:-112 <:-111 \n", " =:③⑦⑨⑮⑲⑳㉑㉙㉚㉞㊶㊷㊸㊺52 53 57 58 66 71 78 82 87 88 91 95 98 100 106 107 109 113 119 127 133 137 140 142 150 153 156 164 165 170 173 175 181 187 188 194 196 198 210 212 214 216 226 227 230 ⚖ ①⑤⑩⑬㉓㉔㉕㉜㊱54 60 72 73 75 76 81 83 86 90 102 108 110 112 115 118 120 121 123 129 131 136 152 157 159 163 172 183 184 186 189 190 191 192 195 197 199 201 206 208 211 219 220 222 224 225 232 234 238 242 ➔ >:-110 =:-114 <:-109 \n", " <:⑥⑪⑬⑭⑳㉜㉞㊳㊵㊶㊹㊽54 56 58 63 66 67 68 71 72 77 81 86 87 88 90 92 94 99 103 107 109 112 113 121 127 130 131 132 136 139 148 149 157 160 162 169 171 174 178 187 189 191 193 194 195 197 198 204 209 210 212 217 221 223 225 231 236 237 ⚖ ①③⑮⑯⑰⑱⑲㉕㉟㊱㊲㊴㊷㊸㊺㊻㊿51 53 57 60 64 70 73 78 84 93 96 97 101 105 108 110 111 114 115 116 120 122 125 135 137 140 142 143 144 145 151 153 154 158 159 161 163 164 168 175 177 179 180 181 184 188 205 220 222 226 228 233 234 ➔ >:-115 =:-117 <:-113 \n", " <:①③④⑨⑪⑫⑬⑮⑯㉒㉚㉟㊲㊵㊶㊹㊼52 57 64 65 68 69 71 72 73 74 77 78 89 90 91 93 101 102 103 104 105 110 113 115 117 118 120 122 123 124 127 132 134 138 139 141 142 147 155 161 163 165 166 167 168 172 173 175 176 179 181 184 187 191 194 196 200 202 204 206 207 208 209 211 212 217 219 222 229 230 231 235 240 ⚖ ②⑤⑥⑦⑩⑰⑱⑲⑳㉑㉓㉔㉖㉘㉙㊱㊴㊷㊸㊺㊻㊽㊾㊿51 54 58 61 62 63 76 80 82 83 84 85 86 87 88 99 100 112 114 116 119 121 129 131 135 136 137 140 143 144 145 146 148 149 152 154 156 157 160 162 164 169 170 174 177 178 182 185 186 189 195 197 198 199 201 203 213 215 223 228 236 237 238 239 241 242 ➔ \n", " >:⑥⑦⑧⑨⑭⑰⑱⑲㉑㉒㉖㉙㉛㊱㊲㊳㊵㊶㊾53 54 59 60 65 66 67 70 71 72 78 79 80 85 88 90 92 94 98 99 103 105 109 110 111 113 115 116 119 120 122 123 132 133 135 137 140 141 145 147 149 152 153 159 161 162 167 169 173 179 182 183 189 196 200 202 203 212 216 220 223 224 225 234 238 240 241 ⚖ ②④⑤⑫⑬⑯⑳㉔㉕㉚㉜㉟㊴㊸㊹㊻㊼㊽㊿51 55 61 62 64 69 81 83 86 87 89 96 97 101 104 107 108 112 117 118 121 124 127 134 136 142 144 146 148 151 154 156 157 158 163 165 166 168 170 174 178 184 186 187 188 191 194 197 199 201 205 206 208 209 210 214 215 218 221 227 229 230 231 233 235 237 239 ➔ \n", " >:①④⑨⑩⑭⑮⑰㉕㉜㉝㊱㊲㊺㊻52 53 56 57 60 61 63 66 71 73 78 82 84 87 88 90 91 94 104 108 119 120 122 128 131 132 137 138 139 143 146 150 152 153 156 157 161 162 171 172 173 176 177 180 181 186 190 191 192 193 199 201 203 205 207 219 220 221 230 232 239 ⚖ ⑲㉑㉔㉖㉗㉘㉙㉛㉟㊳㊵㊶㊹㊼㊽㊾㊿51 54 55 59 62 67 75 76 79 80 85 86 95 97 99 106 107 111 112 113 116 117 125 136 140 144 145 147 149 151 154 155 164 167 169 170 174 187 194 197 200 202 209 210 211 215 217 218 222 226 227 228 229 231 234 236 238 241 ➔ >:-86 =:-83 <:-87 \n", " =:①⑤⑧⑫⑬⑱㉖㉛㉝㉟㊶51 52 63 66 68 69 81 82 85 90 95 96 99 101 102 106 113 115 117 121 124 127 138 147 150 153 158 176 181 192 201 202 209 215 220 221 223 224 228 229 232 233 237 240 ⚖ ②③④⑭⑯⑰⑳㉑㉒㉔㉕㊱㊹㊻㊿59 65 78 83 84 87 98 104 105 110 111 112 114 118 123 130 132 133 134 139 144 146 149 159 161 164 175 183 184 186 187 188 189 194 197 199 203 204 210 216 ➔ >:-84 =:-100 <:-82 \n", " <:②⑤⑩⑬⑮⑱⑳㉒㉚㉛㉝㉟㊲㊳㊴㊵㊶㊻51 53 54 55 58 62 64 69 77 80 82 83 85 86 89 91 92 93 98 101 103 104 108 109 122 124 125 127 128 129 138 140 143 144 146 147 150 152 157 159 162 170 171 174 181 183 184 186 187 192 193 194 199 201 204 210 211 212 214 219 221 222 227 231 236 241 242 ⚖ ①③④⑦⑨⑪⑭㉔㉗㉙㉞㊸㊺㊼㊾52 56 59 60 61 63 65 66 67 68 72 73 75 78 79 84 88 90 94 100 102 107 111 112 115 116 117 118 119 121 123 126 130 131 132 134 135 136 137 141 142 155 156 158 163 166 168 173 175 179 182 188 191 196 198 203 205 206 208 213 217 218 220 223 225 229 233 234 237 239 ➔ >:-88 =:-99 <:-85 \n", " =:③⑤⑥⑧⑮⑯㉘㉛㉜㊵㊽㊾52 59 62 67 74 75 80 81 86 91 92 93 97 98 103 105 110 124 126 127 130 137 139 142 149 152 153 154 166 175 177 183 187 189 201 202 204 205 209 215 216 221 230 237 238 ⚖ ②㉓㉙㉝㉞㉟㊲㊳㊷㊺㊿51 56 57 58 63 65 71 72 73 76 84 94 99 100 101 106 107 115 120 133 135 145 148 151 155 160 162 164 167 168 169 171 184 190 191 192 194 212 220 223 224 225 231 234 239 242 ➔ \n", " >:④⑦⑧⑨⑩⑪⑬⑭⑮⑯⑲㉑㉒㉕㉜㊱㊳㊴㊶㊷㊼㊿51 52 54 55 57 59 61 63 66 67 68 69 70 71 73 75 76 78 81 82 83 84 85 90 91 92 95 96 99 101 102 103 104 107 108 109 112 113 115 116 117 119 121 122 123 124 128 129 131 134 135 137 139 140 141 142 144 147 148 149 150 152 153 154 155 158 162 163 164 170 171 173 174 176 180 182 185 187 188 193 196 197 198 199 206 208 209 220 221 229 235 241 ⚖ ①②③⑤⑥⑫⑰⑱⑳㉓㉔㉖㉗㉙㉚㉛㉝㉞㊲㊵㊹㊺㊻㊽㊾53 56 58 60 62 64 65 72 74 77 79 80 86 87 88 89 93 94 97 98 105 110 111 114 118 125 126 127 130 132 133 136 138 143 145 146 151 156 157 159 160 161 165 166 167 168 169 172 175 177 178 179 181 183 184 189 190 191 192 194 195 200 201 202 203 204 205 207 210 211 214 215 216 218 219 224 225 226 227 228 230 231 234 236 237 238 239 240 242 ➔ >:-94 =:-106 <:-107 \n", " =:④⑥⑪㉛㊳㊺㊽㊿52 61 68 78 104 108 111 127 131 136 140 144 155 158 159 180 181 184 191 192 194 199 202 205 206 210 220 221 228 232 235 240 ⚖ ①⑦⑭⑰⑳㉘㉞㊲㊵55 63 75 81 84 91 93 94 96 98 102 103 105 106 110 116 122 160 177 186 188 201 208 212 213 216 217 225 231 236 238 ➔ >:-96 =:-95 <:-108 \n", " <:⑥⑦⑨⑪⑬⑯⑲㉗㉙㉟㊼㊽㊿51 56 60 65 67 68 69 73 74 76 77 78 80 88 93 94 95 98 104 105 107 114 122 123 137 138 140 142 143 145 148 149 150 153 160 163 165 166 168 170 171 173 174 177 181 182 187 196 197 205 207 216 219 221 223 232 234 236 ⚖ ①②⑤⑧⑭⑱⑳㉒㉜㊷㊸㊹㊺㊻㊾54 58 61 62 63 64 66 70 71 75 79 82 83 85 86 89 97 99 109 110 120 126 128 129 133 134 136 144 147 151 154 155 158 161 164 176 178 180 186 191 192 193 195 203 206 209 213 215 217 218 225 228 230 239 241 242 ➔ >:-97 =:-92 <:-98 \n", " <:⑥⑩⑪⑰⑲㉑㉕㉗㉙㉞㊱㊴㊸㊻㊽53 59 62 65 66 67 68 71 78 81 83 86 87 88 89 90 92 95 97 99 104 108 111 115 116 121 125 126 130 131 133 135 139 145 147 149 151 152 153 157 158 159 161 163 169 171 172 175 176 177 178 187 189 190 195 200 208 209 212 217 218 219 221 222 223 224 230 233 235 236 238 ⚖ ①②④⑤⑨⑫⑬⑯㉒㉓㉔㉚㉛㉜㊶㊷㊹㊺51 52 54 55 57 58 60 61 63 64 70 73 76 80 84 85 94 98 101 102 105 107 109 110 117 120 123 127 128 132 136 138 141 148 154 155 162 164 166 168 170 173 179 182 183 186 188 192 193 194 196 197 199 202 203 204 206 207 213 216 226 227 228 229 234 237 240 241 ➔ \n", " >:②⑨㉚㉛㊲㊳㊼62 64 71 81 91 101 118 123 124 126 133 139 143 173 174 186 198 199 201 202 207 211 228 230 239 ⚖ ㉒㉓㉙㊹㊺㊻㊽51 54 61 70 72 76 84 89 95 96 102 108 109 110 120 131 154 155 161 204 206 214 223 224 226 ➔ >:-102 =:-105 <:-101 \n", " =:②⑤⑦⑧⑨⑩⑫⑬⑲㉒㉕㉛㉜㉝㉟㊱㊲㊸㊼㊽㊿53 56 58 59 60 64 69 70 73 74 75 81 84 86 90 94 95 98 102 103 106 108 112 118 122 125 127 133 135 138 139 140 142 143 145 146 150 151 152 153 156 161 162 167 172 175 178 180 181 182 185 188 189 190 193 200 204 205 206 212 216 219 221 224 231 233 ⚖ ③⑥⑭⑮⑯⑰⑱㉑㉗㉚㊴㊶㊷㊺㊻㊾51 52 63 65 67 78 79 80 82 88 89 92 93 97 99 101 107 111 115 116 121 124 126 128 130 131 132 136 137 144 149 154 155 157 160 163 165 169 170 173 176 177 179 183 186 191 192 194 195 197 198 203 207 209 210 213 217 218 220 222 226 227 229 230 232 235 236 237 238 240 241 ➔ >:-93 =:-91 <:-103 \n", " <:⑦⑬⑮㉒㉛㉜㊱㊸㊹㊺㊽56 72 73 74 89 91 94 98 114 118 119 123 128 134 135 140 141 146 151 159 175 178 180 189 194 196 210 212 214 222 231 232 ⚖ ①⑤⑩⑯⑲㉓㉕㉙㊴㊶52 54 62 65 68 85 86 104 107 108 112 120 124 126 127 131 154 158 161 172 176 179 181 182 198 199 207 208 211 220 235 236 239 ➔ >:-104 =:-90 <:-89 \n", " <:②⑪⑫⑮⑱⑳㉑㉔㉕㉗㉙㉚㉛㉟㊱㊸㊹㊼51 57 58 64 65 75 76 80 81 82 87 90 93 94 95 99 103 107 118 119 120 127 128 130 131 132 133 139 140 141 147 148 149 151 155 156 158 160 165 167 170 175 182 187 190 193 195 196 207 216 217 218 225 230 231 233 237 242 ⚖ ①⑤⑩⑬⑭⑯⑲㉖㉜㊳㊴㊵㊺㊻㊽52 53 55 59 60 61 62 66 68 70 74 77 84 89 91 92 98 101 105 108 109 110 113 116 124 125 126 129 134 136 137 144 145 146 152 161 162 163 173 174 176 177 185 186 188 191 192 194 200 201 203 208 209 211 215 219 220 226 227 229 235 ➔ \n", " >:④⑤⑧⑨⑩⑬⑭㉔㉖㉗㉘㉚㊲㊴㊶㊸㊼㊽㊾㊿51 54 59 64 65 67 70 81 83 84 94 95 100 103 104 109 114 116 118 121 124 136 150 151 152 156 157 163 174 177 178 187 188 189 196 208 219 223 224 226 229 234 239 241 ⚖ ①⑫⑰⑲⑳㉜㉝㉞㊵㊹㊺㊻52 56 57 62 73 74 75 76 78 80 82 89 90 91 96 102 108 113 119 122 127 131 132 134 137 140 143 146 158 160 161 167 169 172 182 186 192 194 198 203 213 214 215 218 220 221 222 228 235 236 238 242 ➔ \n", " >:②④⑭⑯⑱㉑㉓㉘㊱㊵㊸㊻㊼㊽㊿51 52 53 54 58 64 69 81 85 86 92 95 96 99 100 108 109 110 123 130 139 143 147 153 159 166 167 172 181 182 184 186 194 196 199 200 201 204 218 219 220 229 231 236 237 239 241 ⚖ ①⑤⑧⑩⑰⑲㉝㉞㊳㊹57 59 68 71 74 78 82 84 87 93 98 102 103 104 105 116 117 118 122 131 133 137 138 140 142 144 145 151 154 155 156 158 162 168 175 179 180 185 187 189 191 192 203 208 212 213 214 224 225 232 234 238 ➔ \n", " >:④⑮㉑㉔㉖㉗㉙㉚㉛㊸㊼63 65 68 69 74 75 76 81 83 86 87 92 95 101 103 112 115 121 122 123 130 132 135 137 140 141 143 144 150 155 156 160 161 164 169 170 171 175 187 191 192 193 195 200 201 202 203 206 210 217 224 229 237 241 ⚖ ①③⑨⑩⑪⑭㉘㉝㊳㊶㊺㊽56 58 59 62 67 71 77 78 80 93 94 97 99 102 106 108 110 119 120 125 126 128 129 133 138 145 148 149 153 154 163 165 172 174 177 178 184 190 199 213 215 216 219 220 221 222 223 227 228 233 234 236 240 ➔ >:-① =:-⑲ <:-74 \n", " =:⑩⑱㉕㉜㊻㊼56 59 73 76 78 85 100 103 107 108 123 136 162 181 189 192 198 203 212 213 222 223 238 ⚖ ⑤⑧㉟㊲㊺90 95 98 106 109 117 118 133 135 137 138 166 173 176 180 182 184 194 195 196 202 226 233 239 ➔ >:-㊺ =:-62 <:-㉜ \n", " <:⑱⑳51 52 65 67 72 74 82 85 86 104 110 113 118 119 126 136 150 151 158 163 174 178 185 189 204 213 229 230 236 ⚖ ⑧⑪⑮⑯㊱㊴㊻㊿63 64 69 84 99 101 102 108 112 124 131 144 147 160 161 170 176 190 192 196 202 207 233 ➔ >:-㊻ =:-㊵ <:-52 \n", " =:⑦⑨⑬⑭⑲㉓㉗㉚㉟㊲㊳㊴㊵㊶㊸57 58 63 66 71 73 77 79 83 85 90 94 95 96 100 107 108 110 114 115 118 120 121 127 128 133 139 144 146 148 152 160 162 169 172 173 176 177 178 184 189 192 193 194 195 196 200 201 207 209 212 217 219 222 223 226 231 233 234 235 241 ⚖ ⑧⑩⑪⑫⑯㉘㉙㉜㉝㊱㊹㊺㊽㊿52 54 55 64 65 68 70 72 74 76 80 81 82 86 89 101 103 104 109 111 112 117 123 124 125 130 131 132 134 135 136 137 140 142 145 147 149 153 155 157 158 161 164 166 167 168 174 182 188 190 191 197 198 199 204 205 206 208 211 214 225 238 ➔ \n", " >:①⑥⑧⑨⑩⑪⑫⑲⑳㉔㉖㉝㊲㊴㊽㊿51 52 54 55 57 61 64 67 69 72 73 74 77 79 80 84 87 91 92 93 94 95 96 99 100 101 103 105 108 110 111 114 115 118 120 123 128 130 131 132 136 137 139 140 143 145 150 152 160 161 166 167 170 171 172 175 177 183 185 187 189 190 191 192 193 195 196 198 199 201 204 205 207 208 216 217 218 219 220 221 222 223 224 226 228 233 234 235 236 239 240 ⚖ ②④⑤⑦⑬⑭⑮㉑㉓㉕㉗㉘㉙㉛㉜㉟㊱㊳㊵㊷㊸㊹㊺㊻㊼㊾53 58 60 62 63 65 66 68 70 71 76 81 83 85 86 88 89 90 97 98 104 106 107 109 117 119 121 122 125 126 127 129 133 134 135 138 141 142 144 146 147 148 154 155 156 157 158 162 163 164 165 168 169 173 176 178 179 180 181 184 186 188 194 200 202 203 206 209 210 211 212 213 214 227 229 230 231 232 238 241 242 ➔ >:-68 =:-⑯ <:-55 \n", " =:②⑤⑦⑬⑭⑯⑳㉔㉖㉘㉙㉝㊵㊹㊺㊻㊽㊿52 53 57 59 63 64 71 72 75 76 79 87 88 95 99 102 103 105 106 107 109 111 113 115 120 125 126 127 128 134 136 137 138 139 140 143 144 145 148 149 151 152 155 161 162 165 170 172 174 176 177 178 180 183 184 185 187 190 191 192 193 196 199 201 204 205 206 207 208 209 222 223 226 231 232 237 238 242 ⚖ ①⑥⑧⑨⑰⑱㉑㉒㉓㉕㉗㉚㉞㉟㊲㊳㊴㊶㊸㊼㊾51 54 55 56 58 61 65 66 67 68 69 70 73 74 77 81 82 83 84 86 90 94 96 97 101 108 114 116 118 122 123 129 131 133 141 146 147 153 154 156 157 158 159 160 163 167 168 169 171 175 181 182 186 189 197 198 200 202 203 210 211 212 213 217 218 219 221 224 225 228 230 234 236 239 241 ➔ >:-61 =:-60 <:-53 \n", " <:③⑥⑧⑩㉕㉜㊴㊵㊹㊺55 67 73 76 77 78 85 94 96 99 104 108 109 118 120 124 128 136 140 142 143 145 148 151 152 157 158 162 169 180 189 198 203 208 213 218 219 220 224 225 232 237 ⚖ ②④⑦⑬⑲⑳㉔㊿56 65 66 68 72 80 81 83 93 95 98 105 113 123 125 129 130 132 135 144 147 154 155 159 165 167 172 174 185 188 201 202 209 211 212 214 221 222 228 233 234 239 240 242 ➔ >:-66 =:-㊳ <:-77 \n", " <:⑤⑦⑬㉑㉓㉔㉙㉞㊳㊵㊶㊺㊽㊿52 53 57 60 63 65 68 74 75 79 80 87 88 89 90 93 97 103 106 111 114 115 119 124 137 140 141 152 161 162 167 172 173 175 181 183 184 187 190 195 197 199 207 212 213 214 219 220 221 224 226 233 234 235 236 ⚖ ②⑥⑩⑪⑫⑯⑱㉒㉚㉜㉝㊱㊴㊷㊹54 56 59 61 64 66 67 72 81 83 84 91 95 99 101 102 107 110 113 118 120 123 139 142 145 147 149 158 163 164 166 169 170 174 176 177 179 188 198 204 206 210 211 215 216 217 218 225 229 230 231 232 237 239 ➔ \n", " >:④⑤⑥⑨⑭⑱⑲㉜㉟㊺㊻㊽51 53 54 57 59 63 73 75 76 80 81 83 88 94 95 96 97 99 102 104 105 107 112 114 116 121 122 126 131 139 143 152 154 157 159 160 169 171 174 178 180 185 190 196 203 205 210 212 213 217 218 222 225 230 235 236 ⚖ ①⑩⑳㉑㉓㉗㊵㊶㊷㊾㊿62 66 67 69 72 79 86 100 103 106 113 115 120 128 129 140 141 144 148 150 151 155 161 162 163 166 167 170 172 175 176 177 179 181 182 183 184 186 187 192 195 197 199 200 204 206 207 209 219 220 226 228 229 231 232 233 242 ➔ >:-⑩ =:-㊴ <:-59 \n", " =:⑧⑪⑫⑬⑭⑰㉒㉘㊱㊳㊵㊺㊻㊿58 71 92 104 113 114 120 122 130 132 137 139 149 154 155 163 169 175 178 181 199 206 218 233 ⚖ ①④⑤⑯㉑㉖㉜㉝㉞㊶㊹51 53 54 57 59 72 73 75 83 95 98 100 101 127 134 135 162 185 188 190 205 210 214 225 231 240 241 ➔ >:-㉖ =:-70 <:-⑭ \n", " <:⑬⑯㉔㊶56 87 102 103 129 140 145 171 173 186 199 201 221 238 ⚖ ③⑤⑭53 82 85 92 119 125 150 151 169 172 192 206 215 230 239 ➔ >:-⑤ =:-㊽ <:-⑬ \n", " =:②④⑨⑪⑱㉔㉘㉜㉝㊲㊵㊸㊼㊿63 68 69 79 83 86 91 92 97 99 100 108 110 112 118 122 123 124 125 129 140 141 142 146 147 148 152 154 156 157 159 167 168 169 178 182 187 195 198 200 210 213 214 218 219 220 229 230 240 ⚖ ①③⑤⑧⑩⑫⑬⑯⑲㉒㉓㉖㊱㊳㊶㊹52 56 57 59 60 70 71 72 75 77 78 82 84 87 88 89 96 102 107 111 113 114 115 116 120 127 128 132 145 149 150 151 160 170 176 179 180 191 193 196 201 205 224 225 232 234 242 ➔ \n", " >:②④⑤⑧⑪⑫⑭⑳㉑㉗㉚㉛㊱㊳㊴㊸㊹54 55 56 61 62 63 64 66 67 68 74 78 82 84 86 89 94 96 97 98 99 105 106 107 109 110 115 118 120 121 123 125 126 127 130 133 135 140 142 144 148 150 151 154 156 157 158 160 164 166 168 172 177 178 180 182 187 190 193 194 195 200 201 203 207 209 211 214 216 218 219 223 226 228 231 232 234 235 238 241 242 ⚖ ⑦⑨⑩⑯⑰⑱⑲㉒㉔㉕㉘㉙㉜㉝㉞㉟㊲㊵㊶㊺㊼㊽㊿51 52 53 58 60 65 69 70 72 73 75 79 80 81 83 92 95 100 101 102 104 108 111 112 113 117 122 124 129 132 134 136 137 139 141 143 149 153 155 159 162 163 165 169 170 171 173 176 179 181 184 188 191 192 196 197 198 202 204 206 210 212 213 215 217 220 221 222 224 225 227 230 233 236 237 ➔ \n", " >:㊶70 120 157 189 221 ⚖ ⑮㉒68 93 151 158 ➔ >:-㉒ =:-72 <:-㊶ \n", " =:②④⑥⑧⑪⑭⑮㉔㉚㉜㉞㉟㊱㊴㊶㊷㊺㊻㊿52 59 60 61 62 66 67 69 71 75 77 82 84 85 86 89 92 94 95 100 105 106 110 113 114 115 116 118 121 122 125 128 130 132 133 139 140 143 144 145 148 150 156 163 165 169 171 175 179 180 181 192 194 195 203 205 206 207 208 212 213 214 218 219 223 224 228 232 234 235 238 242 ⚖ ⑦⑨⑫⑬⑯⑱⑳㉑㉒㉓㉗㉙㉝㊲㊸㊹㊼㊽㊾54 55 56 57 58 63 65 72 73 76 78 81 83 87 90 97 99 101 103 104 108 109 112 117 119 123 127 129 135 136 137 142 146 147 149 151 153 155 157 158 161 162 164 166 168 173 174 176 177 178 183 184 185 186 187 189 190 191 196 202 211 215 217 220 225 227 229 230 231 237 239 241 ➔ >:-㉓ =:-③ <:-71 \n", " <:②③④⑤⑩⑬⑱㉘㊲㊽52 53 58 60 63 68 70 71 76 77 78 91 92 94 95 96 98 108 110 128 132 136 143 144 148 154 155 157 159 160 163 172 174 181 182 190 194 198 203 205 208 210 216 220 225 230 232 239 ⚖ ①⑨⑮⑰㉕㉗㉙㉜㉝㉟㊳㊷㊸㊹㊿56 61 64 66 67 73 75 80 83 89 97 100 106 107 112 116 117 121 123 124 126 135 142 149 158 164 171 173 176 178 179 183 184 187 189 192 202 204 207 219 223 234 241 ➔ >:-56 =:-⑧ <:-78 \n", " =:⑯⑳㉒㉙㉚㉜㉟㊲㊳㊴㊵㊷㊺㊻51 62 67 71 73 78 82 84 87 93 94 96 100 101 102 103 105 108 113 114 115 118 121 124 132 160 163 167 171 172 183 184 192 197 198 211 213 228 232 233 237 238 239 240 ⚖ ①④⑩⑪⑫㉗㉘㉞㊱㊾52 53 54 60 63 65 70 75 80 85 86 90 92 98 99 104 106 107 110 125 131 133 136 141 143 146 149 151 156 158 161 164 166 176 178 179 191 194 203 204 208 209 215 218 224 231 235 242 ➔ \n", " >:②③⑥⑭⑰⑱⑲㉑㉓㊵㊸㊹㊽㊾㊿55 60 69 71 72 74 75 76 77 78 79 84 89 91 98 101 106 108 110 122 123 124 132 142 143 145 146 147 150 152 155 158 163 167 179 180 181 182 183 187 189 190 192 201 209 210 211 212 213 217 225 235 236 238 ⚖ ④⑤⑩㉒㉔㉖㉜㉝㉟㊲㊴㊷51 53 54 57 63 66 67 73 80 81 82 86 88 92 96 100 102 103 104 111 115 116 118 119 120 121 128 133 136 138 149 161 164 169 170 172 178 184 186 191 195 198 202 203 204 206 215 219 220 224 227 229 230 237 239 241 242 ➔ >:-54 =:-㉞ <:-㊾ \n", " =:⑦⑨⑪㉒㉔㉕㉟㊵㊹㊼52 53 62 71 79 81 87 89 94 97 102 104 126 127 133 134 140 142 145 148 171 173 174 175 187 190 195 202 206 212 215 218 223 224 225 227 235 236 240 ⚖ ④⑥⑫⑬⑭㉖㉛㊷㊸㊺㊿55 56 61 64 69 70 72 77 78 80 85 105 106 113 116 118 124 125 128 137 144 147 149 159 163 169 170 183 186 188 191 194 197 198 201 226 228 239 ➔ >:-⑥ =:-⑰ <:-⑦ \n", " <:⑳㉑㊴㊹㊺53 59 63 67 90 91 93 96 101 103 106 108 109 112 120 121 124 125 128 132 134 144 145 150 151 154 158 160 161 167 170 172 176 192 195 196 201 202 205 214 217 219 226 229 240 ⚖ ④⑦⑲㉓㉕㉙㉜㉝㊶㊼55 57 64 66 68 73 75 80 81 85 88 99 111 115 118 122 127 129 133 140 142 147 157 159 165 168 169 175 180 181 184 197 206 210 212 222 225 233 236 242 ➔ >:-73 =:-㊷ <:-67 \n", " <:①③④⑤⑯㉓㉕㉖㉚㉛㉟㊴㊷㊺㊼㊿52 56 57 58 65 69 73 74 75 76 84 89 91 98 104 105 106 107 110 114 115 116 117 118 119 122 127 128 129 130 133 136 139 142 143 145 147 148 149 154 155 158 173 174 177 178 182 185 186 188 190 191 193 194 196 203 206 208 210 211 216 217 222 223 224 231 237 238 ⚖ ②⑥⑨⑩⑪⑫⑬⑭⑱⑲⑳㉑㉗㉘㉜㉞㊲㊵㊶㊸㊹㊽51 54 55 59 60 61 62 64 67 70 72 77 80 82 83 87 92 94 100 108 111 112 120 123 124 126 131 134 137 138 140 141 146 152 159 160 163 164 168 175 176 179 181 183 184 198 205 207 209 212 213 220 221 225 227 228 229 232 233 234 235 241 ➔ \n", " >:①②③⑤⑥⑦⑧⑪⑫⑮⑯⑰⑳㉒㉓㉖㉗㉝㊲㊳㊶㊷㊸㊼㊽㊿51 53 60 64 70 74 75 78 86 87 88 90 92 94 96 97 102 103 105 112 113 116 119 120 121 126 127 128 130 134 135 136 138 140 142 143 147 148 150 151 157 159 162 167 170 173 174 175 180 187 188 190 191 194 198 202 203 204 206 210 212 215 217 220 222 228 233 239 240 241 ⚖ ④⑨⑩⑬⑱⑲㉑㉔㉛㉜㉟㊴㊵㊹㊻㊾54 55 58 62 63 66 67 68 69 71 72 73 76 77 79 81 82 84 85 91 95 98 99 100 101 106 108 109 114 117 122 124 125 129 132 139 141 145 152 154 156 158 160 161 163 164 168 169 171 172 176 177 178 179 181 182 184 192 196 197 201 207 208 209 211 216 221 223 224 225 227 229 230 231 232 234 236 237 238 242 ➔ >:-⑨ =:-㉘ <:-㊲ \n", " =:①③⑤⑥⑧⑨⑩⑭⑮㉑㉘㉛㉜㉝㊳㊵㊺㊻53 57 60 72 73 77 78 80 81 82 83 85 91 92 100 102 103 106 108 111 112 114 116 117 118 122 126 128 130 134 136 138 144 146 148 149 154 156 159 160 169 170 172 177 183 184 187 188 191 192 194 200 202 206 208 210 212 213 216 218 219 220 226 235 238 240 241 ⚖ ④⑦⑫⑯⑰⑱⑲⑳㉒㉓㉔㉗㉚㉞㊲㊴㊶㊸㊹㊼54 55 62 64 66 67 69 70 75 76 79 86 87 88 90 94 96 98 101 104 105 107 109 113 115 119 121 123 124 125 127 131 133 137 139 140 141 142 143 150 151 155 157 158 163 168 171 175 176 178 180 181 185 190 193 197 201 209 211 221 224 227 233 234 242 ➔ >:-79 =:-63 <:-㉝ \n", " <:①③④⑤⑩⑪⑲㉑㉒㉔㉙㉚㉛㊱㊲㊳㊴㊷㊼52 54 55 64 75 77 79 81 83 88 89 90 96 97 102 107 108 110 111 115 119 123 126 128 131 135 140 141 142 143 152 155 162 163 165 166 169 170 171 175 181 183 185 186 194 195 198 199 200 202 204 205 206 207 208 210 211 215 216 221 223 224 226 227 228 233 237 239 242 ⚖ ②⑥⑦⑫⑭⑯⑱⑳㉖㉝㉞㊵㊶㊺㊻51 53 56 57 59 60 61 63 65 68 69 70 71 73 74 76 80 84 85 91 92 95 99 101 103 104 105 106 114 116 117 118 120 122 127 129 133 134 136 137 138 144 146 150 151 153 156 157 161 164 172 173 174 176 178 188 190 193 196 197 201 212 214 218 219 220 222 229 230 231 232 236 240 ➔ >:-69 =:-㊿ <:-④ \n", " <:①③④⑤⑪⑮⑰㉑㉒㉔㉕㉖㉗㉘㉙㉜㊲52 59 64 65 69 71 74 77 82 88 90 94 96 98 100 101 103 104 106 118 120 124 128 129 132 133 142 143 144 147 150 151 153 154 160 163 167 172 175 193 205 218 219 220 222 223 231 241 242 ⚖ ②⑭⑲㉚㉛㉝㉟㊳㊴㊵㊶㊸㊻㊽㊾51 53 55 57 58 70 72 73 81 84 86 95 99 102 105 107 112 136 141 152 156 164 166 169 177 178 180 181 185 188 190 192 200 204 206 207 208 209 210 211 212 213 214 215 216 217 227 232 235 237 240 ➔ \n", " >:②③④⑤⑧⑨⑩⑮⑱㉑㉒㉔㉚㉞㊲㊵㊶㊹㊺㊻53 54 55 56 57 59 60 64 70 73 75 80 84 85 87 89 93 94 99 103 104 107 108 111 115 116 118 123 124 126 135 139 141 142 145 146 147 150 153 155 158 160 166 167 168 170 172 173 174 182 193 195 196 198 200 204 206 207 208 210 214 217 218 223 225 228 230 238 240 ⚖ ①⑦⑭⑯⑲㉓㉖㉙㉛㉜㊱㊴㊷㊽㊾㊿51 52 63 67 69 71 74 81 83 88 90 95 96 97 98 100 102 106 110 112 113 114 119 120 121 125 128 131 132 133 134 136 140 143 148 151 154 157 159 162 163 164 171 175 176 177 179 180 181 183 184 186 188 189 190 191 194 202 209 211 213 216 219 221 222 227 229 231 232 233 234 235 239 ➔ \n", " >:④⑨⑫⑬⑮⑯㉒㉔㉕㉙㉚㉛㉜㉝㉞㊳㊷㊺57 61 72 74 76 78 82 83 89 91 95 97 105 107 108 114 117 122 129 133 145 146 147 150 153 156 165 167 183 188 189 193 199 200 201 202 205 214 215 217 230 231 233 235 240 ⚖ ①⑤⑦⑧⑱㉑㉓㉗㉘㊵㊸㊹㊽51 53 54 62 64 66 85 86 93 94 96 100 102 106 109 110 111 113 119 121 123 127 130 131 136 138 149 154 162 164 168 169 172 177 178 182 184 185 190 192 194 196 204 207 210 211 212 218 239 241 ➔ >:-51 =:-81 <:-㉛ \n", " =:②⑦⑧⑪⑫⑯⑰⑱⑲⑳㉒㉔㉖㉘㉜㉝㉞㊲㊸㊺㊻㊽㊾㊿53 55 60 61 62 64 67 68 71 73 78 81 86 90 94 97 99 101 102 104 105 107 108 112 116 117 118 120 124 128 142 148 156 158 161 162 170 174 179 182 184 189 191 193 197 198 199 200 202 205 210 211 212 218 222 224 229 231 233 238 239 241 242 ⚖ ①③⑨⑩⑬㉛㊱㊴㊵㊷㊹㊼51 52 57 58 65 72 76 77 80 82 83 84 89 91 92 96 98 109 113 114 115 119 121 122 125 126 129 131 132 134 141 143 144 145 146 147 151 160 163 164 165 166 171 172 173 175 176 177 178 180 181 183 185 186 187 188 190 194 195 201 203 207 208 209 215 219 221 223 225 226 227 230 234 235 236 ➔ >:-58 =:-㉟ <:-㊸ \n", " <:④⑧⑫⑭⑯⑱㉑㉔㉕㉗㉚㉝53 60 62 80 88 91 94 95 104 108 115 116 123 132 133 150 154 160 166 168 169 170 173 180 187 189 190 194 199 202 205 208 210 212 213 216 222 226 236 ⚖ ①⑦⑨⑳㉒㉘㉙㉜㉟㊴㊵㊶㊺55 57 58 75 84 93 103 106 109 118 121 124 125 127 128 131 136 137 140 143 148 149 151 153 161 163 171 175 178 181 184 192 200 209 211 228 230 233 ➔ >:-57 =:-② <:-㉚ \n", " =:④⑧⑬⑭⑱⑳㉒㉛㉜㊳㊶㊾51 59 60 61 63 71 72 74 76 81 82 84 95 96 99 101 106 112 113 115 116 119 120 125 126 128 136 137 142 147 151 156 158 159 161 170 173 180 181 182 185 187 188 189 192 194 195 197 198 200 201 205 210 211 212 213 225 228 234 236 238 ⚖ ①②⑫⑯⑰⑲㉑㉓㉔㉘㉙㉟㊱㊲㊵㊷㊸㊻㊼55 56 58 65 69 73 78 83 85 88 89 93 94 98 100 102 107 108 118 121 122 124 133 138 140 141 145 149 152 153 154 155 164 165 176 183 184 186 191 196 202 204 207 208 214 215 218 220 224 226 227 229 239 242 ➔ \n", " >:⑦⑨⑪⑭⑱㉖㉚㊱㊲㊵㊹㊺55 60 63 68 79 88 89 94 101 102 107 112 119 120 121 128 129 133 134 136 137 141 145 147 151 156 157 163 166 172 177 179 181 183 184 194 200 210 213 222 225 227 230 242 ⚖ ①⑬⑲㉑㉝㉞㉟㊼㊾56 64 66 69 77 86 97 108 111 114 115 116 117 124 127 130 138 140 143 146 150 152 165 174 175 180 188 190 193 197 201 202 203 206 207 208 211 215 216 219 226 228 232 235 239 240 241 ➔ >:-㊼ =:-⑫ <:-㊱ \n", " =:②③④⑨⑩⑱⑳㉒㉗㉜㊷㊹㊼㊽㊿51 54 64 65 67 71 72 83 88 89 95 98 105 108 111 118 124 125 126 132 134 135 140 143 144 146 147 152 162 164 165 167 168 170 173 184 186 197 205 206 209 211 214 221 231 235 236 237 ⚖ ⑮⑰㉛㊱㊴㊵㊺㊾53 56 60 62 63 68 76 79 80 81 84 86 87 90 91 92 94 97 100 104 112 113 123 138 139 148 154 156 157 159 160 161 166 169 171 174 179 183 185 190 196 202 203 208 216 217 219 220 222 225 226 230 232 240 242 ➔ >:-80 =:-75 <:-㊹ \n", " <:①⑪⑮㉒㉖㉚㉝㉟㊾㊿54 59 63 70 76 80 85 86 88 90 91 93 94 99 103 104 106 108 114 120 121 124 126 127 129 130 132 137 138 144 147 149 153 154 156 166 168 170 184 185 189 190 194 202 205 211 213 215 216 232 235 ⚖ ④⑥⑲⑳㉔㉙㊳㊶㊹㊻㊼㊽51 55 60 73 74 75 77 78 81 92 100 107 112 115 116 122 123 135 136 139 141 143 145 151 155 160 162 163 167 173 175 177 179 180 181 191 195 198 200 203 207 208 210 212 219 224 227 233 236 ➔ >:-⑳ =:-⑱ <:-76 \n", " <:⑦⑧⑫⑭⑮⑯⑱⑲⑳㉑㉒㉙㉚㉛㉝㉞㉟㊱㊵㊸㊻㊾㊿51 52 57 58 66 68 71 72 74 77 80 85 90 91 92 94 95 96 97 101 104 105 107 113 115 123 127 134 137 138 141 146 156 160 161 162 163 171 172 173 174 178 180 187 193 195 196 197 198 199 202 205 210 211 222 227 228 229 230 234 237 ⚖ ①④⑤⑨⑩⑪⑬㉕㉗㉘㊲㊶㊹㊺㊼56 59 63 67 69 70 73 79 81 82 83 86 87 88 98 102 109 110 118 119 120 122 130 131 132 133 136 140 142 143 144 145 147 148 150 151 152 154 159 164 165 170 176 177 181 182 184 185 188 189 190 191 192 194 201 208 209 215 216 218 220 221 223 225 226 231 232 236 239 ➔ \n", " >:②⑧⑮⑱㉑㉗㉛㊶㊺60 66 85 87 90 106 107 126 151 178 208 217 226 235 237 ⚖ ①㉕㉜㊵㊹㊻㊾52 53 82 84 91 94 99 103 136 164 180 181 192 193 202 222 236 ➔ >:-㉕ =:-⑪ <:-㉗ \n", " =:④⑤⑩⑬⑮⑰⑱⑲㉓㉛㊳㊵㊾52 58 61 63 64 69 70 76 77 78 83 87 96 100 101 110 119 123 124 130 131 133 134 135 136 139 146 147 151 157 159 166 177 179 180 181 187 192 194 195 198 202 206 209 217 223 231 236 239 ⚖ ①②③⑧⑫⑯㉒㉖㉞㊱㊴51 54 62 65 66 71 72 74 79 81 94 95 99 103 106 115 117 121 125 132 137 138 144 149 156 158 160 163 168 169 174 183 188 189 191 193 196 197 200 203 205 212 213 218 220 224 226 230 234 235 240 ➔ >:-65 =:-㉔ <:-64 \n", " <:⑤⑩⑪⑬⑭⑲㉓㉖㉗㉘㉙㉟㊲㊵㊷㊺㊻㊽㊿54 58 61 67 69 76 77 86 87 93 99 100 104 105 111 114 116 119 123 126 127 128 129 134 138 143 148 151 154 155 156 160 165 167 169 170 174 178 179 180 181 185 188 189 191 195 199 200 202 206 208 210 213 217 218 221 227 230 231 232 234 236 ⚖ ②③⑥⑦⑨⑫⑯⑰⑱㉑㉔㉕㉚㉛㉜㉝㊱㊳51 52 56 60 63 66 71 72 75 78 81 83 84 85 89 92 95 96 97 101 103 109 110 112 115 118 120 125 130 131 133 139 142 144 145 150 158 159 161 171 172 177 186 190 192 193 194 198 201 207 209 212 214 215 216 222 223 224 226 233 235 238 239 ➔ >:-㉑ =:-⑮ <:-㉙\n" ] } ], "source": [ "do(Puzzle(242, 5, {lt, 0}))" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "# What's Next?\n", "\n", "- What other puzzles can you solve?\n", "- Can you make a table summarizing the space of solved and unsolved puzzles? \n", "- Can you *prove* the unsolved puzzles are unsolvable? \n", "- Currently, when `solve` returns `None`, it means \"no solution was found, but there's no proof that a solution doesn't exist.\" Can you modify `solve` to return a result that indicates there is no possible solution? (Maybe you can only do this on some puzzles, not all.)\n", "- What about puzzles where your task is to identify *which* ball is odd, but not *how* it is odd? That is, if you get the possibilities down to `{-3, +3}` then you're done; you know ball 3 is the odd one, and you don't care if it is heavy or light.\n", "- Can you find trees that minimize the *mean* number of weighings, rather than minimizing the *maximum* number of weighings?\n", "- What happens when it is a possibility that *two* balls are odd? Or more?\n", "- What if you had two or more balance scales that you could use in parallel, and the goal was to minimize the number of weighing time periods, not the total number of weighings?\n", "- What else can you discover?" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.8.15" } }, "nbformat": 4, "nbformat_minor": 4 }