From f38dfe836a3a7635fb564a7395e51490f00c8a82 Mon Sep 17 00:00:00 2001 From: Peter Norvig Date: Thu, 22 Aug 2019 01:33:14 -0700 Subject: [PATCH] Add files via upload --- ipynb/TwelveBalls.ipynb | 1513 +++++++++++++++++++++++---------------- 1 file changed, 883 insertions(+), 630 deletions(-) diff --git a/ipynb/TwelveBalls.ipynb b/ipynb/TwelveBalls.ipynb index 760f317..0442ce7 100644 --- a/ipynb/TwelveBalls.ipynb +++ b/ipynb/TwelveBalls.ipynb @@ -10,8 +10,7 @@ "\n", "> *You are given twelve identical-looking balls and a two-sided scale. One of the balls is of a different weight, although you don't know whether it's 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's lighter or heavier?*\n", "\n", - "This is a traditional brain-teaser puzzle, meant to be solved with paper and pencil. \n", - "But 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 odd ball might be heavier, lighter, or either, or neither. For that I'll need a program. (I originally wrote this program in 2012, but am republishing it here in revised form because the problem 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) among other venues.)\n", + "This 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. But 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 odd ball might be heavier, lighter, or either, or neither. So I'll need a computer program, not a pencil. (I originally wrote this program in 2012, but am republishing it here in revised form because 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) among other venues.)\n", "\n", "

\n", " 🎱🎱🎱🎱⚖🎱🎱🎱🎱\n", @@ -22,20 +21,22 @@ "Here are the concepts I'm dealing with:\n", "\n", "- **balls**: In the general case I have N balls. I'll represent them with a list like `[1, 2, 3]` for N = 3.\n", - "- **oddballs**: Exactly one of the balls is **odd** in its weight. \n", - "I'll represent the situation where ball N is heavier as +N, and where ball N is lighter as -N. (I'll represent the situation where no ball is odd with `0`; that's not needed for the puzzle stated above, but is a nice extension.) With N = 3, the set of all possible oddballs is `{+1, -1, +2, -2, +3, -3}`. \n", - "- **puzzle**: The puzzle stated above can be expressed with `Puzzle(N=12, weighings=3, oddities={-1, +1})`. The third argument can be any subset of `{-1, 0, +1}`, where `-1` means \"any one ball might be lighter,\" `+1` means \"any one ball might be heavier,\" and `0` means \"allow the possibility that no ball is odd; they all weigh the same.\" \n", + "- **possible oddballs**: Exactly one of the balls is different in its weight; I'll use the term **oddball** to indicate which ball is different, and how.\n", + "I'll represent the situation where ball N is heavier as +N, and where ball N is lighter as -N. With N = 3, the set of all possible oddballs is `{+1, -1, +2, -2, +3, -3}`. (As an extension that is not needed for the stated puzzle but is useful for similar puzzles: I'll represent the situation where all the balls weigh the same—no ball is odd—with `0`.)\n", + "- **puzzle**: I'll express the puzzle stated above with `Puzzle(N=12, weighings=3)`. A puzzle is defined by the balls involved, the number of weighings allowed, and the possible oddballs. (I'll add a few complications 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", "- **weight**: I'll arbitrarily say that a normal ball weighs 100, a lighter ball 99, and a heavier ball 101.\n", - "- **solution**: Given a puzzle, a solution is a **strategy tree** that can correctly discover the odd ball, whatever it is, in the allowable number of weighings.\n", - "- **strategy tree**: A tree with oddballs (integers) as leaf nodes, and interior nodes with 5 components: `Tree(L, R, gt, eq, lt)` is a node where `L` and `R` are the collections of balls to be weighed, and `gt`, `eq`, and `lt` are subtrees for the three possible results of the weighing.\n", + "- **solution**: Given a puzzle, a solution is a **strategy tree** that can correctly discover the odd ball, whatever it is, in the allowable number of weighings. Since a tree with W weighings has 3W possible outcomes (leaf nodes), we can deduce that it is impossible to find a solution in W weighings if there are more than 3W possible oddballs.\n", + "- **strategy tree**: A tree whose leaf nodes are all oddballs (ints), and whose interior nodes have 5 components: `Tree(L, R, gt, eq, lt)` is a node where `L` and `R` are the collections of balls to be weighed, and `gt`, `eq`, and `lt` are branches for subtrees corresponding to the three possible results of the weighing. (I'll also use `None` to mean \"could not find a valid tree.\")\n", "- **following a path in a tree**: 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` never gets direct access to that; the tree has to figure it out by doing weighings.\n", - "- **valid tree**: a tree is a valid solution to a puzzle if no branch uses more than the allowable number of weighings, and if, for every possible oddball in the puzzle, following the path through the tree correctly returns that oddball as the answer. I'll use `valid(tree, puzzle)` for this.\n", + "- **valid tree**: A tree is a valid solution to a puzzle if no branch uses more than the allowable number of weighings, and if, for every possible oddball in the puzzle, following the path through the tree correctly returns that oddball as the answer. I'll use `valid(tree, puzzle)` for this.\n", + "\n", + "Note: I have an idea for the definition of the `Puzzle` class: by default, the oddballs are all the \"lighter\" and \"heavier\" versions of the puzzle's balls. But if you want a different kind of puzzle, I'll allow two options: you can specify the keyword argument `oddballs=` and give a set of oddballs; whatever you want. Or you can specify the keyword argument `oddities`, whose value can be any subset of `{-1, 0, +1}`, where `-1` means \"any one ball might be lighter,\" `+1` means \"any one ball might be heavier,\" and `0` means \"it might be that no ball is odd; they all weigh the same.\"\n", "\n", "\n", "# Implementation\n", "\n", - "Let's start implementing the concepts:" + "Let's start implementing the concepts:\n" ] }, { @@ -53,10 +54,12 @@ "\n", "class Puzzle:\n", " \"Represent a specific ball-weighing puzzle.\"\n", - " def __init__(self, N=12, weighings=3, oddities={-1, +1}):\n", - " self.weighings = weighings\n", + " def __init__(self, N=12, weighings=3, oddities={-1, +1}, oddballs=None):\n", + " # If `oddballs` is None, compute them via `oddities`.\n", " self.balls = list(range(1, N + 1))\n", - " self.oddballs = {b * o for b in self.balls for o in oddities}\n", + " self.weighings = weighings\n", + " self.oddballs = (oddballs if oddballs is not None else\n", + " {b * o for b in self.balls for o in oddities})\n", " \n", "Tree = namedtuple('Tree', 'L, R, gt, eq, lt')\n", "\n", @@ -70,20 +73,21 @@ " '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) -> Tree or None:\n", - " \"Return a valid tree; one that solves the puzzle, or None.\"\n", + " \"Return a valid tree (one that solves the puzzle), or None.\"\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, Oddball):\n", + " if is_leaf(tree):\n", " return tree\n", " else:\n", - " result = weigh(tree.L, tree.R, oddball)\n", - " return follow(getattr(tree, result), oddball)\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", @@ -93,9 +97,11 @@ " for oddball in puzzle.oddballs))\n", "\n", "def depth(tree) -> int:\n", - " \"Maximum depth of a strategy tree.\"\n", - " return (0 if isinstance(tree, Oddball) else \n", - " 1 + max(depth(tree.gt), depth(tree.eq), depth(tree.lt)))" + " \"Maximum depth (number of weighings) in tree.\"\n", + " return (0 if is_leaf(tree) or tree is None\n", + " else 1 + max(depth(tree.gt), depth(tree.eq), depth(tree.lt)))\n", + "\n", + "def is_leaf(node): return isinstance(node, Oddball)" ] }, { @@ -190,40 +196,80 @@ "weight(5, oddball=-5)" ] }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Strategy for Finding a Valid Tree\n", - "\n", - "Now for the tricky part. We want to find a valid tree to solve a puzzle. The key idea is that a **weighing** gives us information by making a **partition** of the possible **oddballs** into entries for eaach of the three possible weighing results: `gt`, `eq`, or `lt`. Subsequent subtrees can handle each of the partitions.\n" - ] - }, { "cell_type": "code", "execution_count": 6, "metadata": {}, - "outputs": [], + "outputs": [ + { + "data": { + "text/plain": [ + "True" + ] + }, + "execution_count": 6, + "metadata": {}, + "output_type": "execute_result" + } + ], "source": [ - "def partition(L, R, oddballs) -> dict:\n", - " \"Build a dict of the possible outcomes (oddballs) from weighing L versus R.\"\n", - " part = dict(gt=set(), eq=set(), lt=set())\n", - " for odd in oddballs:\n", - " part[weigh(L, R, odd)].add(odd)\n", - " return part" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "For example, with 12 balls, if we weigh balls 1 and 2 on the left versus 11 and 12 on the right, then there are 4 ways the left side can be greater than the right: either 1 or 2 is heavier or 11 or 12 is lighter. Similarly there are 4 ways of getting a `lt` weighing result. The remaining 16 possible oddballs—balls 3 through 10 being either heavier or lighter—show up in the `eq` entry of the partition:" + "is_leaf(-3)" ] }, { "cell_type": "code", "execution_count": 7, "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "False" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "is_leaf(Tree([1], [2], +1, +3, +2))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Finding a Valid 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": [ + "def partition(L, R, oddballs) -> dict:\n", + " \"Build a dict that partitions the possible outcomes (oddballs) resulting from weighing L versus R.\"\n", + " part = dict(gt=set(), eq=set(), lt=set())\n", + " for odd in oddballs:\n", + " part[weigh(L, R, odd)].add(odd)\n", + " return part" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For example, with 12 balls, if we weigh balls 1 and 2 on the left versus 11 and 12 on the right, then there are 4 ways the left side can be greater than the right: either 11 or 12 is lighter or 1 or 2 is heavier. Similarly there are 4 ways of getting a `lt` weighing result. The remaining 16 possibilities—balls 3 through 10 being either heavier or lighter—show up in the `eq` branch of the partition:" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, "outputs": [ { "data": { @@ -233,7 +279,7 @@ " 'lt': {-2, -1, 11, 12}}" ] }, - "execution_count": 7, + "execution_count": 9, "metadata": {}, "output_type": "execute_result" } @@ -248,14 +294,14 @@ "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? **No!** Any one weighing can at best partition the remaining possibilities into 3 equal entries. To solve the puzzle, we need every path in the tree to end up with only one possibility. So any two weighings can handle at most 3 × 3 = 9 possibilities; here we have 16, which is too many. We call this a **bad partition**.\n", + "If this was the first weighing in our strategy tree, could we go on to solve the puzzle in 3 weighings? **No!** With two remaining weighings we can handle at most 3 × 3 = 9 possibilities; here we have 16 possibilities in the `eq` branch, which is too many. We call this a **bad partition**.\n", "\n", - "The following is a **good partition** because each of the entries has 8 possibilities, and 8 is less than 9. (Note: being a good partition does not guarantee that the problem is solvable from there; but being a bad partition guarantees that it is not solvable.)" + "The following is a **good partition** because each of the branches has 8 possibilities, and 8 is less than 9. " ] }, { "cell_type": "code", - "execution_count": 8, + "execution_count": 10, "metadata": {}, "outputs": [ { @@ -266,7 +312,7 @@ " 'lt': {-4, -3, -2, -1, 9, 10, 11, 12}}" ] }, - "execution_count": 8, + "execution_count": 10, "metadata": {}, "output_type": "execute_result" } @@ -275,6 +321,13 @@ "partition([1, 2, 3, 4], [9, 10, 11, 12], p12.oddballs)" ] }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "(Note: 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. Also note that this is a good partition with 2 remaining weighings, but would be a bad partition with only one remaining weighing.)" + ] + }, { "cell_type": "markdown", "metadata": {}, @@ -282,118 +335,82 @@ "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 will reduce the number of oddball possibilities according to the partition, and the number of remaining weighings by 1 each time.\n", - " - At each step we will randomly select two groups of balls, `L` and `R`, to be weighed.\n", - " - We will then see what partition `L` and `R` gives us, and whether the partition is good or bad.\n", - " - If the partition is bad, try another random selection of `L` and `R`.\n", - " - If the partition is good, recursively try to find solution trees for each entry in the partition. If we can do that, we're done!\n", - " - If we can't find a valid tree return `None`." - ] - }, - { - "cell_type": "code", - "execution_count": 9, - "metadata": {}, - "outputs": [], - "source": [ - "def find_tree(puzzle, oddballs, weighings) -> Tree or Oddball or None:\n", - " \"Find a strategy tree that covers all the oddballs in the given number of weighings.\"\n", - " if len(oddballs) == 1:\n", - " return oddballs.pop() # One oddball possibility left; we're done: leaf node\n", - " elif len(oddballs) == 0:\n", - " return 0 # No oddball\n", - " elif weighings == 0:\n", - " return None # Can't find a solution in the allowable weighings\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 Tree(L, R, **subtrees)\n", - " \n", - "def good_partitions(puzzle, oddballs, weighings):\n", - " \"Yield (L, R, partition) such that no partition entry is longer than 3**weighings.\"\n", - " for _ in range(1000): \n", - " L, R = random_LR(puzzle, oddballs)\n", - " part = partition(L, R, oddballs)\n", - " if max(map(len, part.values())) <= 3 ** weighings:\n", - " yield L, R, part\n", + " - We handle trivial cases when there are zero or one oddballs remaining, or no weighings remaining.\n", + " - Otherwise, we generate random partitions of the balls, and examine the good ones.\n", + " - Given a good partition, all we have to do is find good trees (i.e. not `None`) 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", - "def random_LR(puzzle, oddballs) -> (list, list):\n", - " \"Random choice of balls for L and R side.\"\n", - " # Pick a random number of balls, B, then randomly pick B balls for each side.\n", - " B = random.choice(range(1, (len(puzzle.balls) - 1) // 3 + 2))\n", - " random.shuffle(puzzle.balls) \n", - " return puzzle.balls[:B], puzzle.balls[-B:]" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here we see that the subfunction `good_partitions` does its job:" - ] - }, - { - "cell_type": "code", - "execution_count": 10, - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "([5, 6, 9, 2],\n", - " [10, 7, 4, 1],\n", - " {'gt': {-10, -7, -4, -1, 2, 5, 6, 9},\n", - " 'eq': {-12, -11, -8, -3, 3, 8, 11, 12},\n", - " 'lt': {-9, -6, -5, -2, 1, 4, 7, 10}})" - ] - }, - "execution_count": 10, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "next(good_partitions(p12, p12.oddballs, 2))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "It uses `random`, so it won't get the same result every time:" + " - We randomly select two lists of balls to be weighed, `L` and `R`, both of length `B`.\n", + " - We systematically consider all reasonable values of `B`. (All values from 1 up to 1/3 the number of balls, rounded up.)\n", + " - We then see what partition `L` and `R` gives us.\n", + " - If it is good, the function yields the `(L, R, partition)` tuple.\n", + " - In any case, we repeat the process 100 times. That number was chosen to have a very good chance of randomly selecting a good partition for solvable puzzles, and of terminating in just a few seconds for unsolvable puzzles. (If I wanted to solve puzzles with thousands of balls, I would come back and improve `good_partitions`.)\n" ] }, { "cell_type": "code", "execution_count": 11, "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "([10, 6, 12, 7],\n", - " [1, 5, 9, 11],\n", - " {'gt': {-11, -9, -5, -1, 6, 7, 10, 12},\n", - " 'eq': {-8, -4, -3, -2, 2, 3, 4, 8},\n", - " 'lt': {-12, -10, -7, -6, 1, 5, 9, 11}})" - ] - }, - "execution_count": 11, - "metadata": {}, - "output_type": "execute_result" - } - ], + "outputs": [], "source": [ - "next(good_partitions(p12, p12.oddballs, 2))" + "def find_tree(puzzle, oddballs, weighings) -> Tree or Oddball or None:\n", + " \"Find a strategy tree that covers all the oddballs in the given number of weighings.\"\n", + " if len(oddballs) == 1:\n", + " return next(iter(oddballs)) # One possibility left; we're done; leaf node\n", + " elif len(oddballs) == 0:\n", + " return 0 # No oddball\n", + " elif weighings == 0:\n", + " return None # No solution within allowable weighings; fail\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 Tree(L, R, **subtrees)\n", + " \n", + "def good_partitions(puzzle, oddballs, weighings, tries=100):\n", + " \"Yield random (L, R, partition) tuples with no partition branch longer than 3**weighings.\"\n", + " balls = list(puzzle.balls)\n", + " for _ in range(tries): \n", + " for B in range(1, (len(balls) + 2) // 3 + 1):\n", + " random.shuffle(balls)\n", + " L, R = balls[:B], balls[-B:]\n", + " part = partition(L, R, oddballs)\n", + " longest = max(part.values(), key=len)\n", + " if len(longest) <= 3 ** weighings:\n", + " yield L, R, part" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Of course, it would be great if `good_partitions` yielded *all* the good partitions, and even better if it didn't bother with redundant partitions. But that would be complicated, so instead I just have it choose random sets of balls for the left and right side, do that 1,000 times, and if I don't find a solution by then, it probably means there is none. That haphazard approach has worked so far, but I would certainly want to revisit `good_partitions` if I wanted to handle puzzles with hundreds or thousands of balls.\n", - "\n", - "I'll introduce some useful functions: `random_LR` chooses a random selection of balls for the left and right side. It makes sure there are the same number on each side, and that that number, `B`, is between 1 and 1/3 of the total number of balls (rounded up).\n" + "Here we see that `good_partitions` does its job:" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "([12, 2, 8, 5],\n", + " [3, 4, 7, 9],\n", + " {'gt': {-9, -7, -4, -3, 2, 5, 8, 12},\n", + " 'eq': {-11, -10, -6, -1, 1, 6, 10, 11},\n", + " 'lt': {-12, -8, -5, -2, 3, 4, 7, 9}})" + ] + }, + "execution_count": 12, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "next(good_partitions(p12, p12.oddballs, 2))" ] }, { @@ -407,16 +424,16 @@ }, { "cell_type": "code", - "execution_count": 12, + "execution_count": 13, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "Tree(L=[3, 2, 12, 7], R=[1, 10, 8, 9], gt=Tree(L=[10, 3, 5, 4], R=[2, 8, 9, 7], gt=Tree(L=[8, 5], R=[9, 4], gt=-9, eq=3, lt=-8), eq=Tree(L=[9, 3, 6], R=[12, 8, 1], gt=-1, eq=0, lt=12), lt=Tree(L=[12, 7, 10, 6], R=[4, 11, 9, 8], gt=7, eq=2, lt=-10)), eq=Tree(L=[10, 11, 4], R=[2, 12, 5], gt=Tree(L=[5, 1, 4], R=[8, 6, 12], gt=4, eq=11, lt=-5), eq=Tree(L=[6, 2, 1], R=[7, 5, 3], gt=6, eq=0, lt=-6), lt=Tree(L=[10, 11], R=[1, 4], gt=-4, eq=5, lt=-11)), lt=Tree(L=[10, 6, 3, 8], R=[11, 5, 1, 12], gt=Tree(L=[3, 2, 9, 4], R=[10, 11, 7, 12], gt=-12, eq=8, lt=10), eq=Tree(L=[5, 10], R=[9, 2], gt=-2, eq=-7, lt=9), lt=Tree(L=[11, 1], R=[10, 5], gt=1, eq=-3, lt=0)))" + "Tree(L=[4, 12, 9, 7], R=[10, 8, 1, 3], gt=Tree(L=[6, 12, 11, 3], R=[8, 5, 1, 7], gt=Tree(L=[3, 8, 12], R=[6, 5, 4], gt=12, eq=-1, lt=-8), eq=Tree(L=[12, 7, 1], R=[9, 10, 3], gt=-10, eq=4, lt=9), lt=Tree(L=[5, 4, 10], R=[7, 2, 9], gt=0, eq=-3, lt=7)), eq=Tree(L=[9, 5, 1, 11], R=[10, 3, 8, 6], gt=Tree(L=[6, 3, 11], R=[12, 1, 7], gt=11, eq=5, lt=-6), eq=Tree(L=[5], R=[2], gt=-2, eq=0, lt=2), lt=Tree(L=[9, 5, 4], R=[3, 11, 7], gt=-11, eq=6, lt=-5)), lt=Tree(L=[2, 5, 3, 6], R=[1, 9, 4, 8], gt=Tree(L=[8, 10, 9, 11], R=[6, 12, 2, 4], gt=-4, eq=3, lt=-9), eq=Tree(L=[2, 12], R=[7, 8], gt=-7, eq=10, lt=-12), lt=Tree(L=[8, 11], R=[2, 4], gt=8, eq=1, lt=0)))" ] }, - "execution_count": 12, + "execution_count": 13, "metadata": {}, "output_type": "execute_result" } @@ -434,16 +451,16 @@ }, { "cell_type": "code", - "execution_count": 13, + "execution_count": 14, "metadata": {}, "outputs": [ { "data": { "text/plain": [ - "Tree(L=[3], R=[2], gt=-2, eq=-1, lt=-3)" + "Tree(L=[1], R=[2], gt=-2, eq=-3, lt=-1)" ] }, - "execution_count": 13, + "execution_count": 14, "metadata": {}, "output_type": "execute_result" } @@ -464,18 +481,14 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "\n", - "\n", "# Prettier Output\n", "\n", - "Let's make the output easier to read. I'll use `[1·2·3·4 ⚖ 9·10·11·12] ➔` to mean *\"Weigh balls 1,2,3,4 versus 9,10,11,12 to get a result...\"*. I'll indent each interior node in the tree, and I'll use `>:` to mean *the result when the left hand side is greater than the right in weight is...* \n", - "\n", - "Also, note that at the top node of a tree, there's no sense randomly shuffling the balls—the only choice that matters is how many balls, `B`, to put on each side. Putting `1·2·3·4` on the left is no different than `3·7·9·12`, because each ball is undifferentiated at the start. I'll alter `random_LR` for this." + "Let's make the output easier to read. I'll use `[1·2·3·4]⚖[9·10·11·12] ➔` to mean *\"Weigh balls 1,2,3,4 versus 9,10,11,12 to get a result...\"*. I'll indent each interior node in the tree, and I'll use `>:` to mean *the result when the left hand side is greater than the right in weight is...* " ] }, { "cell_type": "code", - "execution_count": 14, + "execution_count": 15, "metadata": {}, "outputs": [], "source": [ @@ -485,65 +498,43 @@ " \n", "def indented(tree, i=0, prefix='') -> str:\n", " \"Pretty, indented string representing a strategy tree.\"\n", - " if isinstance(tree, Tree):\n", + " if tree == 0 or tree == None:\n", + " return f'{prefix}{tree}'\n", + " elif is_leaf(tree):\n", + " return f'{prefix}{tree:+d}'\n", + " else:\n", " subtrees = (indented(tree.gt, i+1, '>:'), indented(tree.eq, i+1, '=:'), indented(tree.lt, i+1, '<:'))\n", " indent = ('' if i == 0 else ('\\n' + ' ' * 5 * i))\n", - " return f'{indent}{prefix}[{items(tree.L)} ⚖ {items(tree.R)}] ➔ {\" \".join(subtrees)})'\n", - " elif tree == 0 or tree == None:\n", - " return f'{prefix}{tree}'\n", - " else:\n", - " return f'{prefix}{tree:+d}'\n", + " return f'{indent}{prefix}{side(tree.L)}⚖{side(tree.R)} ➔ {\" \".join(subtrees)})'\n", " \n", - "def items(collection) -> str: return '·'.join(map(str, sorted(collection)))\n", - "\n", - "def random_LR(puzzle, oddballs) -> (list, list):\n", - " \"Random choice of balls for L and R side.\"\n", - " # Pick a random number of balls, B, then pick B balls for each side.\n", - " B = random.choice(range(1, (len(puzzle.balls) + 2) // 3 + 1))\n", - " if oddballs == puzzle.oddballs:\n", - " puzzle.balls.sort()\n", - " else:\n", - " random.shuffle(puzzle.balls) \n", - " return puzzle.balls[:B], puzzle.balls[-B:]" + "def side(balls) -> str: return str(sorted(balls)).replace(', ', '·')" ] }, { - "cell_type": "code", - "execution_count": 15, + "cell_type": "markdown", "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1 ⚖ 3] ➔ >:-3 =:-2 <:-1)\n" - ] - } - ], "source": [ - "# 3 balls, 1 weighing, only lighter balls possible\n", - "do(Puzzle(3, 1, {-1}))" + "Also, note that at the root node of a tree, there's no sense randomly shuffling the balls—the only choice that matters is how many balls, `B`, to put on each side. Putting `1·2·3·4` on the left is no different than `3·7·9·12`, because each ball is undifferentiated at the start. I'll alter `good_partitions` to do this." ] }, { "cell_type": "code", "execution_count": 16, "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1 ⚖ 3] ➔ \n", - " >:[1 ⚖ 2] ➔ >:+1 =:-3 <:0) \n", - " =:[3 ⚖ 2] ➔ >:-2 =:0 <:+2) \n", - " <:[1 ⚖ 2] ➔ >:0 =:+3 <:-1))\n" - ] - } - ], + "outputs": [], "source": [ - "# 3 balls, 2 weighings, lighter or heavier balls possible\n", - "do(Puzzle(3, 2))" + "def good_partitions(puzzle, oddballs, weighings, tries=100):\n", + " \"Yield random (L, R, partition) tuples with no partition branch longer than 3**weighings.\"\n", + " at_root = (oddballs == puzzle.oddballs)\n", + " balls = sorted(puzzle.balls)\n", + " for _ in range(1 if at_root else tries): \n", + " for B in range(1, (len(balls) + 2) // 3 + 1):\n", + " if not at_root: random.shuffle(balls)\n", + " L, R = balls[:B], balls[-B:]\n", + " part = partition(L, R, oddballs)\n", + " longest = max(part.values(), key=len)\n", + " if len(longest) <= 3 ** weighings:\n", + " yield L, R, part" ] }, { @@ -555,25 +546,13 @@ "name": "stdout", "output_type": "stream", "text": [ - "[1·2·3·4 ⚖ 9·10·11·12] ➔ \n", - " >:[3·5·8·12 ⚖ 1·6·9·10] ➔ \n", - " >:[3·10 ⚖ 2·4] ➔ >:+3 =:-9 <:-10) \n", - " =:[2·3·6·10 ⚖ 4·8·9·12] ➔ >:+2 =:-11 <:+4) \n", - " <:[7·10·12 ⚖ 2·4·5] ➔ >:0 =:+1 <:-12)) \n", - " =:[2·3·6·11 ⚖ 1·7·8·12] ➔ \n", - " >:[1·4·11·12 ⚖ 3·6·7·9] ➔ >:-7 =:-8 <:+6) \n", - " =:[3·7·10·12 ⚖ 5·8·9·11] ➔ >:-5 =:0 <:+5) \n", - " <:[1·2·6·8 ⚖ 3·4·9·11] ➔ >:+8 =:+7 <:-6)) \n", - " <:[2·5·10·12 ⚖ 1·7·8·11] ➔ \n", - " >:[1·2·8·12 ⚖ 3·5·7·9] ➔ >:+12 =:+10 <:-1) \n", - " =:[1·7·11·12 ⚖ 4·5·8·9] ➔ >:-4 =:-3 <:+9) \n", - " <:[1·3·4·9 ⚖ 2·6·8·10] ➔ >:-2 =:+11 <:0)))\n" + "[1]⚖[3] ➔ >:-3 =:-2 <:-1)\n" ] } ], "source": [ - "# The original puzzle with 12 balls\n", - "do(p12)" + "# 3 balls, 1 weighing, only lighter balls possible\n", + "do(Puzzle(3, 1, {-1}))" ] }, { @@ -585,24 +564,75 @@ "name": "stdout", "output_type": "stream", "text": [ - "[1·2·3·4 ⚖ 9·10·11·12] ➔ \n", - " >:[1·4·10 ⚖ 2·3·12] ➔ \n", - " >:[1·5·9 ⚖ 4·7·11] ➔ >:+1 =:-12 <:+4) \n", - " =:[3·10·11 ⚖ 1·8·9] ➔ >:-9 =:0 <:-11) \n", - " <:[3·9·11·12 ⚖ 1·2·7·8] ➔ >:+3 =:-10 <:+2)) \n", - " =:[2·5 ⚖ 6·7] ➔ \n", - " >:[4·5·7·10 ⚖ 1·8·9·12] ➔ >:+5 =:-6 <:-7) \n", - " =:[2·4·7 ⚖ 8·10·11] ➔ >:-8 =:0 <:+8) \n", - " <:[1·4·6·11 ⚖ 3·7·8·12] ➔ >:+6 =:-5 <:+7)) \n", - " <:[4·9·11 ⚖ 1·10·12] ➔ \n", - " >:[1·4·9 ⚖ 6·10·12] ➔ >:+9 =:+11 <:-1) \n", - " =:[1·9·10 ⚖ 2·7·12] ➔ >:-2 =:-3 <:0) \n", - " <:[5·6·8 ⚖ 2·4·10] ➔ >:-4 =:+12 <:+10)))\n" + "[1]⚖[3] ➔ \n", + " >:[1]⚖[2] ➔ >:+1 =:-3 <:0) \n", + " =:[3]⚖[2] ➔ >:-2 =:0 <:+2) \n", + " <:[1]⚖[2] ➔ >:0 =:+3 <:-1))\n" ] } ], "source": [ - "# A different solution to the same problem\n", + "# 3 balls, 2 weighings, lighter or heavier balls possible\n", + "do(Puzzle(3, 2))" + ] + }, + { + "cell_type": "code", + "execution_count": 19, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1·2·3·4]⚖[9·10·11·12] ➔ \n", + " >:[4·7·9·12]⚖[5·8·10·11] ➔ \n", + " >:[4·8·10]⚖[1·3·7] ➔ >:+4 =:-11 <:-10) \n", + " =:[3·4·9·10]⚖[1·5·11·12] ➔ >:+3 =:+2 <:+1) \n", + " <:[6]⚖[12] ➔ >:-12 =:-9 <:0)) \n", + " =:[5·6·8·12]⚖[3·4·9·11] ➔ \n", + " >:[8]⚖[6] ➔ >:+8 =:+5 <:+6) \n", + " =:[8·9·12]⚖[3·6·7] ➔ >:-7 =:0 <:+7) \n", + " <:[1·3·5]⚖[6·9·11] ➔ >:-6 =:-8 <:-5)) \n", + " <:[3·4·12]⚖[1·2·10] ➔ \n", + " >:[1·10·11]⚖[2·4·8] ➔ >:-2 =:+12 <:-1) \n", + " =:[1·3]⚖[7·9] ➔ >:0 =:+11 <:+9) \n", + " <:[4·5·8·9]⚖[3·6·11·12] ➔ >:-3 =:+10 <:-4)))\n" + ] + } + ], + "source": [ + "# The original puzzle with 12 balls, 3 weighings\n", + "do(p12)" + ] + }, + { + "cell_type": "code", + "execution_count": 20, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1·2·3·4]⚖[9·10·11·12] ➔ \n", + " >:[1·9·11]⚖[3·10·12] ➔ \n", + " >:[1·10]⚖[5·8] ➔ >:+1 =:-12 <:-10) \n", + " =:[2·10]⚖[3·12] ➔ >:+2 =:+4 <:0) \n", + " <:[2·6·10·11]⚖[1·7·9·12] ➔ >:-9 =:+3 <:-11)) \n", + " =:[2·7·9·12]⚖[3·4·5·6] ➔ \n", + " >:[1·5·10]⚖[2·6·11] ➔ >:-6 =:+7 <:-5) \n", + " =:[1·2·10]⚖[5·8·12] ➔ >:-8 =:0 <:+8) \n", + " <:[6·12]⚖[5·11] ➔ >:+6 =:-7 <:+5)) \n", + " <:[3·4·8·11]⚖[1·5·7·10] ➔ \n", + " >:[10·12]⚖[1·3] ➔ >:-1 =:+11 <:0) \n", + " =:[8·10·12]⚖[3·6·9] ➔ >:+12 =:-2 <:+9) \n", + " <:[4·10]⚖[1·12] ➔ >:+10 =:-3 <:-4)))\n" + ] + } + ], + "source": [ + "# A different solution to the same puzzle\n", "do(p12)" ] }, @@ -610,7 +640,9 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "# Other Puzzles\n", + "I note that the traditional answer to the 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, but from there it can vary; it has no inclination to minimize the number of balls on each side of the scale, or to make one branch of the tree be similar to another branch.\n", + "\n", + "# Other Puzzles: 3 Weighings\n", "\n" ] }, @@ -623,26 +655,26 @@ }, { "cell_type": "code", - "execution_count": 19, + "execution_count": 21, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "[1·2·3·4 ⚖ 9·10·11·12] ➔ \n", - " >:[1·8·9·11 ⚖ 4·5·10·12] ➔ \n", - " >:[1·9·10·11 ⚖ 3·4·6·8] ➔ >:+1 =:-12 <:-10) \n", - " =:[1·2·7·12 ⚖ 4·5·6·10] ➔ >:+2 =:+3 <:0) \n", - " <:[4·9·12 ⚖ 3·6·7] ➔ >:+4 =:-11 <:-9)) \n", - " =:[1·5·6·12 ⚖ 4·8·9·11] ➔ \n", - " >:[2·4·6 ⚖ 1·5·7] ➔ >:+6 =:-8 <:+5) \n", - " =:[7·10 ⚖ 1·5] ➔ >:+7 =:0 <:-7) \n", - " <:[5·7·8·12 ⚖ 3·4·9·11] ➔ >:+8 =:-6 <:-5)) \n", - " <:[3·9·12 ⚖ 5·10·11] ➔ \n", - " >:[9 ⚖ 6] ➔ >:+9 =:+12 <:0) \n", - " =:[4·8·9 ⚖ 2·5·10] ➔ >:-2 =:-1 <:-4) \n", - " <:[2·3·11·12 ⚖ 4·5·8·9] ➔ >:+11 =:+10 <:-3)))\n" + "[1·2·3·4]⚖[9·10·11·12] ➔ \n", + " >:[4·6·9·11]⚖[2·5·7·12] ➔ \n", + " >:[3·4]⚖[7·8] ➔ >:+4 =:-12 <:0) \n", + " =:[3·9]⚖[1·4] ➔ >:+3 =:-10 <:+1) \n", + " <:[7·11·12]⚖[4·6·9] ➔ >:-9 =:+2 <:-11)) \n", + " =:[2·6·8]⚖[7·9·10] ➔ \n", + " >:[1·4·5·11]⚖[6·7·10·12] ➔ >:-7 =:+8 <:+6) \n", + " =:[5·7·9·12]⚖[1·4·6·8] ➔ >:+5 =:0 <:-5) \n", + " <:[2·3·11·12]⚖[4·7·8·10] ➔ >:-8 =:-6 <:+7)) \n", + " <:[4·5·9]⚖[1·3·10] ➔ \n", + " >:[1·7]⚖[3·8] ➔ >:-3 =:+9 <:-1) \n", + " =:[2·5·12]⚖[6·7·9] ➔ >:+12 =:+11 <:-2) \n", + " <:[2·3·4·5]⚖[6·8·11·12] ➔ >:0 =:+10 <:-4)))\n" ] } ], @@ -654,12 +686,12 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "Can we solve the **13-balls in 3 weighings** problem, which has 26 possibilities? " + "Can we solve the **13-balls in 3 weighings** puzzle, which has 26 possibilities? After all, 26 is less than 33." ] }, { "cell_type": "code", - "execution_count": 20, + "execution_count": 22, "metadata": {}, "outputs": [ { @@ -683,7 +715,7 @@ }, { "cell_type": "code", - "execution_count": 21, + "execution_count": 23, "metadata": {}, "outputs": [ { @@ -694,7 +726,7 @@ " 'lt': {-4, -3, -2, -1, 10, 11, 12, 13}}" ] }, - "execution_count": 21, + "execution_count": 23, "metadata": {}, "output_type": "execute_result" } @@ -705,7 +737,7 @@ }, { "cell_type": "code", - "execution_count": 22, + "execution_count": 24, "metadata": {}, "outputs": [ { @@ -716,7 +748,7 @@ " 'lt': {-5, -4, -3, -2, -1, 9, 10, 11, 12, 13}}" ] }, - "execution_count": 22, + "execution_count": 24, "metadata": {}, "output_type": "execute_result" } @@ -729,72 +761,7 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "We can do **27 balls in 3 weighings** if we know that the odd ball can only be lighter, not heavier. And we can do **26 balls** under the condition that either one ball is lighter or all the balls weigh the same. In both cases there are 27 possibilities, the maximum number we can handle in 3 weighings." - ] - }, - { - "cell_type": "code", - "execution_count": 23, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1·2·3·4·5·6·7·8·9 ⚖ 19·20·21·22·23·24·25·26·27] ➔ \n", - " >:[1·5·7·10·11·13·19·21·23 ⚖ 2·9·14·15·17·18·20·24·27] ➔ \n", - " >:[1·6·14·16·19·21·22·24 ⚖ 2·9·11·12·18·20·25·26] ➔ >:-20 =:-27 <:-24) \n", - " =:[2·5·7·8·13·14·15·22 ⚖ 1·10·11·17·19·20·23·25] ➔ >:-25 =:-26 <:-22) \n", - " <:[6·8·9·13·17·18·19·22 ⚖ 4·7·10·11·20·21·24·27] ➔ >:-21 =:-23 <:-19)) \n", - " =:[2·6·7·8·10·12·13·22 ⚖ 3·9·11·14·17·19·25·27] ➔ \n", - " >:[5·11·13·16·23·25·27 ⚖ 2·4·6·9·17·20·21] ➔ >:-17 =:-14 <:-11) \n", - " =:[1·12·16·21·24 ⚖ 2·7·11·18·22] ➔ >:-18 =:-15 <:-16) \n", - " <:[2·4·10·15·17·19·20·23·27 ⚖ 3·5·7·8·12·16·18·21·24] ➔ >:-12 =:-13 <:-10)) \n", - " <:[1·3·4·10·12·15·18·25·27 ⚖ 6·8·9·14·19·20·22·23·26] ➔ \n", - " >:[3·6·14·15·17·26·27 ⚖ 2·8·11·16·19·21·25] ➔ >:-8 =:-9 <:-6) \n", - " =:[5·11·15·23 ⚖ 7·16·20·22] ➔ >:-7 =:-2 <:-5) \n", - " <:[1·8·11·12·20·25·26 ⚖ 4·6·7·10·18·22·23] ➔ >:-4 =:-3 <:-1)))\n" - ] - } - ], - "source": [ - "do(Puzzle(27, 3, {-1}))" - ] - }, - { - "cell_type": "code", - "execution_count": 24, - "metadata": {}, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "[1·2·3·4·5·6·7·8·9 ⚖ 18·19·20·21·22·23·24·25·26] ➔ \n", - " >:[3·6·8·11·15·21·23·24 ⚖ 1·2·5·13·14·19·20·22] ➔ \n", - " >:[3·4·6·10·11·20·24·25 ⚖ 5·7·8·9·13·14·21·22] ➔ >:-22 =:-19 <:-20) \n", - " =:[5·7·12·13·17·20·21·23·26 ⚖ 2·3·4·8·9·10·19·24·25] ➔ >:-25 =:-18 <:-26) \n", - " <:[3·6·13·21·22 ⚖ 8·10·18·19·24] ➔ >:-24 =:-23 <:-21)) \n", - " =:[6·7·9·12·13·15·18·24·25 ⚖ 2·4·8·10·14·17·20·22·26] ➔ \n", - " >:[8·17·20·26 ⚖ 14·16·21·24] ➔ >:-14 =:-10 <:-17) \n", - " =:[4·9·10·11·19 ⚖ 3·8·15·16·26] ➔ >:-16 =:0 <:-11) \n", - " <:[2·11·12·14·19·22·24·26 ⚖ 4·8·13·16·18·21·23·25] ➔ >:-13 =:-15 <:-12)) \n", - " <:[2·3·6·10·14·18·19·22·23 ⚖ 1·5·7·11·13·15·20·24·26] ➔ \n", - " >:[1·2·9·11·18·19 ⚖ 3·7·8·17·22·26] ➔ >:-7 =:-5 <:-1) \n", - " =:[7·8·10·11·16·18·19·21·22 ⚖ 1·2·3·9·14·15·17·23·24] ➔ >:-9 =:-4 <:-8) \n", - " <:[1·3·8·14·18·20·22·23·24 ⚖ 2·5·7·10·12·13·16·17·25] ➔ >:-2 =:-6 <:-3)))\n" - ] - } - ], - "source": [ - "do(Puzzle(26, 3, {-1, 0}))" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "Here's a puzzle with **25 balls** with an unusual set of possibilities: either one of the odd-numbered balls is heavier, or one of the even-numbered balls is lighter, or all the balls weigh the same. I can't describe that with one call to `Puzzle`; I'll have to construct the set of oddballs separately:" + "We can do **27 balls in 3 weighings** if we know that the odd ball can only be lighter, not heavier:" ] }, { @@ -806,14 +773,31 @@ "name": "stdout", "output_type": "stream", "text": [ - "{0, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, -24, -22, -20, -18, -16, -14, -12, -10, -8, -6, -4, -2}\n" + "[1·2·3·4·5·6·7·8·9]⚖[19·20·21·22·23·24·25·26·27] ➔ \n", + " >:[9·10·13·20·21·22]⚖[7·11·15·23·24·27] ➔ \n", + " >:[2·4·7·8·12·14·17·23]⚖[3·6·11·13·18·19·21·24] ➔ >:-24 =:-27 <:-23) \n", + " =:[1·6·10·13·19·22·23]⚖[3·9·12·18·21·26·27] ➔ >:-26 =:-25 <:-19) \n", + " <:[4·5·6·13·14·18·19·20·25]⚖[2·7·9·12·15·17·21·24·26] ➔ >:-21 =:-22 <:-20)) \n", + " =:[3·7·8·12·13·18·19·21·25]⚖[1·4·5·6·10·16·17·22·24] ➔ \n", + " >:[3·4·10·26]⚖[8·16·19·20] ➔ >:-16 =:-17 <:-10) \n", + " =:[3·11]⚖[14·24] ➔ >:-14 =:-15 <:-11) \n", + " <:[1·4·6·16·17·18]⚖[3·5·12·24·26·27] ➔ >:-12 =:-13 <:-18)) \n", + " <:[3·6·8·10·12·17·19·21·25]⚖[1·2·5·13·14·16·22·23·24] ➔ \n", + " >:[1·3·14·15·16·25·27]⚖[2·6·7·19·22·23·24] ➔ >:-2 =:-5 <:-1) \n", + " =:[1·7·8·12·14·18·23]⚖[9·13·16·20·21·22·26] ➔ >:-9 =:-4 <:-7) \n", + " <:[1·2·6·10·13·17·22·23·27]⚖[3·7·9·11·15·20·21·25·26] ➔ >:-3 =:-8 <:-6)))\n" ] } ], "source": [ - "p25 = Puzzle(25, 3)\n", - "p25.oddballs = {(+b if b % 2 else -b) for b in p25.balls} | {0}\n", - "print(p25.oddballs)" + "do(Puzzle(27, 3, {-1}))" + ] + }, + { + "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. In both these puzzles there are 27 possibilities, the maximum number we can handle in 3 weighings." ] }, { @@ -825,24 +809,115 @@ "name": "stdout", "output_type": "stream", "text": [ - "[1·2·3·4·5·6·7·8·9 ⚖ 17·18·19·20·21·22·23·24·25] ➔ \n", - " >:[3·6·11·14·15·16·21·23 ⚖ 1·5·7·12·13·18·19·22] ➔ \n", - " >:[8·15·16·20·22·24·25 ⚖ 6·9·10·17·18·19·23] ➔ >:-18 =:+3 <:-22) \n", - " =:[4·5·13·14·17·23 ⚖ 7·9·11·16·20·22] ➔ >:-20 =:-24 <:+9) \n", - " <:[3·5·8·20·21·25 ⚖ 1·6·9·12·15·24] ➔ >:+5 =:+7 <:+1)) \n", - " =:[8·9·11·14·16·19·20·21·23 ⚖ 1·2·5·7·12·13·17·18·22] ➔ \n", - " >:[3·8·11·12·16·17·19 ⚖ 2·4·5·13·20·23·24] ➔ >:+11 =:0 <:-12) \n", - " =:[2·10·15·18·22 ⚖ 8·12·19·21·24] ➔ >:+15 =:0 <:-10) \n", - " <:[3·6·11·14·17·19·25 ⚖ 1·7·9·16·18·21·24] ➔ >:-16 =:+13 <:-14)) \n", - " <:[4·7·9·10·11·12·21·23·25 ⚖ 1·5·14·15·17·18·19·22·24] ➔ \n", - " >:[3·14·18·19·21·22 ⚖ 4·7·9·11·23·24] ➔ >:+21 =:+25 <:+23) \n", - " =:[1·2·10·11·13·15·23·25 ⚖ 3·5·6·12·16·18·19·24] ➔ >:-6 =:-8 <:-2) \n", - " <:[2·3·7·9·11·12·22·24 ⚖ 1·4·10·14·19·20·23·25] ➔ >:-4 =:+17 <:+19)))\n" + "[1·2·3·4·5·6·7·8·9]⚖[18·19·20·21·22·23·24·25·26] ➔ \n", + " >:[3·6·8·9·11·17·19·21·23]⚖[1·4·5·7·10·15·18·20·26] ➔ \n", + " >:[9·12·17·18·21·22]⚖[1·7·15·23·25·26] ➔ >:-26 =:-20 <:-18) \n", + " =:[5·12·13·14·15·17·21·25]⚖[1·2·4·6·8·9·16·24] ➔ >:-24 =:-22 <:-25) \n", + " <:[2·8·19·24]⚖[6·10·21·25] ➔ >:-21 =:-23 <:-19)) \n", + " =:[5·9·11·13·15·18·19·21]⚖[2·3·4·10·14·16·20·25] ➔ \n", + " >:[2·10·20]⚖[7·16·17] ➔ >:-16 =:-14 <:-10) \n", + " =:[3·7·11·12·14·25·26]⚖[5·9·15·17·18·19·24] ➔ >:-17 =:0 <:-12) \n", + " <:[1·11·20]⚖[12·13·16] ➔ >:-13 =:-15 <:-11)) \n", + " <:[2·5·9·10·20·21·26]⚖[1·6·8·11·12·15·23] ➔ \n", + " >:[6·19·20]⚖[1·9·23] ➔ >:-1 =:-8 <:-6) \n", + " =:[2·3·8·12]⚖[7·15·16·26] ➔ >:-7 =:-4 <:-3) \n", + " <:[8·9·10·19·26]⚖[1·4·5·15·18] ➔ >:-5 =:-2 <:-9)))\n" ] } ], "source": [ - "do(p25)" + "do(Puzzle(26, 3, {-1, 0}))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Here's a puzzle with **25 balls** with an unusual set of possibilities: either one of the odd-numbered balls is heavier, or one of the even-numbered balls is lighter, or no ball is odd." + ] + }, + { + "cell_type": "code", + "execution_count": 27, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "{0, 1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23, 25, -24, -22, -20, -18, -16, -14, -12, -10, -8, -6, -4, -2}\n" + ] + } + ], + "source": [ + "N = 25\n", + "p = Puzzle(N, 3, oddballs={(+b if b % 2 else -b) for b in range(N + 1)})\n", + "print(p.oddballs)" + ] + }, + { + "cell_type": "code", + "execution_count": 28, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1·2·3·4·5·6·7·8·9]⚖[17·18·19·20·21·22·23·24·25] ➔ \n", + " >:[2·4·6·9·13·17·20·21·25]⚖[3·7·10·11·12·14·15·18·22] ➔ \n", + " >:[4·5·9·15·19·22]⚖[1·2·8·12·16·23] ➔ >:+9 =:-18 <:-22) \n", + " =:[5·6·7·9·16·19·25]⚖[1·3·11·14·17·21·23] ➔ >:+5 =:-24 <:+1) \n", + " <:[9·12·21·25]⚖[7·11·18·20] ➔ >:-20 =:+3 <:+7)) \n", + " =:[5·7·9·12·13·16·17·23]⚖[2·6·8·10·14·18·20·25] ➔ \n", + " >:[2·3·9·17·22]⚖[8·13·14·21·23] ➔ >:-14 =:-10 <:+13) \n", + " =:[2·3·6·8·13·14·15·19·22]⚖[1·4·9·11·12·16·17·18·20] ➔ >:+15 =:0 <:+11) \n", + " <:[3·4·10·17·21·25]⚖[5·8·11·12·20·24] ➔ >:-12 =:-16 <:0)) \n", + " <:[4·7·9·13·16·17·24]⚖[5·6·8·12·18·21·25] ➔ \n", + " >:[1·2·12·15·22·23]⚖[7·8·10·13·14·17] ➔ >:-8 =:-6 <:+17) \n", + " =:[1·3·9·15·20·22·24]⚖[2·8·11·13·19·21·25] ➔ >:-2 =:+23 <:+19) \n", + " <:[1·10·14·21]⚖[9·17·22·25] ➔ >:+21 =:-4 <:+25)))\n" + ] + } + ], + "source": [ + "do(p)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Another variation: **27 balls, 3 weighings**, the odd ball can only be lighter, but one ball (number 27) is radioactive and can't be touched or placed on the balance scale. It might, however be the lighter ball, and you still need to report it as such if it is. (That happens when all three weighings are equal.)" + ] + }, + { + "cell_type": "code", + "execution_count": 29, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1·2·3·4·5·6·7·8·9]⚖[18·19·20·21·22·23·24·25·26] ➔ \n", + " >:[3·7·10·13·17·18·24·25]⚖[1·2·4·9·12·21·23·26] ➔ \n", + " >:[8·18·23]⚖[7·13·21] ➔ >:-21 =:-26 <:-23) \n", + " =:[5·10·12·14·18·19·21]⚖[1·3·8·11·22·24·25] ➔ >:-22 =:-20 <:-19) \n", + " <:[22·25·26]⚖[20·23·24] ➔ >:-24 =:-18 <:-25)) \n", + " =:[2·3·6·7·11·12·13·19·26]⚖[1·4·8·10·15·16·21·22·24] ➔ \n", + " >:[4·12·13·15·26]⚖[2·10·17·24·25] ➔ >:-10 =:-16 <:-15) \n", + " =:[3·9·12·15·17·26]⚖[8·11·14·21·24·25] ➔ >:-14 =:-27 <:-17) \n", + " <:[7·9·10·13·18·23·24]⚖[1·5·6·11·20·22·25] ➔ >:-11 =:-12 <:-13)) \n", + " <:[4·5·8·23]⚖[2·3·6·15] ➔ \n", + " >:[1·3·8·9·15·16·18·20·22]⚖[2·5·10·11·12·21·24·25·26] ➔ >:-2 =:-6 <:-3) \n", + " =:[2·4·9·10·18·19·21·24·26]⚖[5·6·7·8·14·15·16·22·23] ➔ >:-7 =:-1 <:-9) \n", + " <:[4·11·14·21]⚖[2·3·5·18] ➔ >:-5 =:-8 <:-4)))\n" + ] + } + ], + "source": [ + "do(Puzzle(26, 3, oddballs=range(-27, 0)))" ] }, { @@ -856,7 +931,7 @@ }, { "cell_type": "code", - "execution_count": 27, + "execution_count": 30, "metadata": {}, "outputs": [ { @@ -868,76 +943,231 @@ } ], "source": [ - "do(Puzzle(40, 4))" + "p40 = Puzzle(40, 4)\n", + "\n", + "do(p40)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ - "Unfortunately, **no**. How about **39 balls**, and how about we allow for the possibility that no ball is odd. That's 39 × 2 + 1 = 79 possibilities." + "Unfortunately, **no**. We always end up with at least one branch with 28 possibilities, but we need 27 or less:" ] }, { "cell_type": "code", - "execution_count": 28, + "execution_count": 31, + "metadata": {}, + "outputs": [], + "source": [ + "def partition_sizes(puzzle, B):\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 {branch: len(part[branch]) for branch in part}" + ] + }, + { + "cell_type": "code", + "execution_count": 32, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'gt': 26, 'eq': 28, 'lt': 26}" + ] + }, + "execution_count": 32, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "partition_sizes(p40, 13)" + ] + }, + { + "cell_type": "code", + "execution_count": 33, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'gt': 28, 'eq': 24, 'lt': 28}" + ] + }, + "execution_count": 33, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "partition_sizes(p40, 14)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "How about **39 balls**, with the possibility that no ball is odd. That's 39 × 2 + 1 = 79 possibilities, but it turns out we can find a good partition, and a solution:" + ] + }, + { + "cell_type": "code", + "execution_count": 34, + "metadata": {}, + "outputs": [], + "source": [ + "p39 = Puzzle(39, 4, {-1, 0, +1})" + ] + }, + { + "cell_type": "code", + "execution_count": 35, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'gt': 26, 'eq': 27, 'lt': 26}" + ] + }, + "execution_count": 35, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "partition_sizes(p39, 13)" + ] + }, + { + "cell_type": "code", + "execution_count": 36, "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ - "[1·2·3·4·5·6·7·8·9·10·11·12·13 ⚖ 27·28·29·30·31·32·33·34·35·36·37·38·39] ➔ \n", - " >:[7·9·10·13·14·16·26·28·30·33·34 ⚖ 4·5·6·12·17·23·27·31·35·36·37] ➔ \n", - " >:[1·2·5·10·12·16·18·25·32·35·36 ⚖ 6·9·15·21·22·23·27·30·33·37·39] ➔ \n", - " >:[1·10·11·19·22·27·31 ⚖ 9·15·25·26·28·30·36] ➔ >:+10 =:-37 <:-27) \n", - " =:[12·13·15·26·27·29·31·35·36 ⚖ 3·4·6·9·14·23·32·37·38] ➔ >:+13 =:+7 <:-31) \n", - " <:[1·4·7·22·32·33·35·37 ⚖ 10·14·21·23·27·29·31·36] ➔ >:-36 =:+9 <:-35)) \n", - " =:[1·4·8·9·12·13·17·25·27·29·36 ⚖ 2·3·7·15·16·20·22·28·31·34·38] ➔ \n", - " >:[3·13·17·18·19·22·24·25·29·39 ⚖ 4·5·8·16·20·21·28·30·36·38] ➔ >:-38 =:+1 <:+8) \n", - " =:[5·7·13·16·21·23·24·26·27·30·31·32·35 ⚖ 2·9·10·12·14·15·17·19·25·36·37·38·39] ➔ >:-39 =:+11 <:-32) \n", - " <:[2·7·8·28 ⚖ 3·12·14·27] ➔ >:+2 =:-29 <:+3)) \n", - " <:[8·11·12·14·20·24·26·31·34·36·37·38 ⚖ 4·6·15·16·17·22·23·27·29·30·33·35] ➔ \n", - " >:[2·8·9·10·14·15·18·20·22·23·25·29·39 ⚖ 3·4·6·11·12·17·21·24·31·33·35·37·38] ➔ >:-33 =:-30 <:+12) \n", - " =:[7·9·16·20·21·23·33 ⚖ 2·4·10·13·14·28·34] ➔ >:-28 =:+5 <:0) \n", - " <:[4·7·12·27·29·33·34·37 ⚖ 8·10·14·22·31·36·38·39] ➔ >:+4 =:+6 <:-34))) \n", - " =:[1·3·4·9·10·12·14·16·20·22·30 ⚖ 2·6·7·11·17·21·23·25·26·31·36] ➔ \n", - " >:[6·11·12·13·15·22·23·27·28·30·33·34·39 ⚖ 2·3·7·8·16·20·21·24·25·32·36·37·38] ➔ \n", - " >:[2·5·9·19·21·22·23·26 ⚖ 1·3·10·14·15·20·24·37] ➔ >:+22 =:-25 <:-21) \n", - " =:[8·14·17 ⚖ 6·16·31] ➔ >:+14 =:-26 <:-17) \n", - " <:[5·8·10·12·13·16·17·22·23·25·30·37·38 ⚖ 1·2·3·6·7·9·11·18·26·34·35·36·39] ➔ >:+16 =:+20 <:-23)) \n", - " =:[5·9·10·15·18·25·26·28·36 ⚖ 3·4·17·20·21·24·31·33·37] ➔ \n", - " >:[1·2·3·8·15·17·24·29·32·37·38·39 ⚖ 5·7·9·11·13·14·20·21·22·25·27·34] ➔ >:+15 =:+18 <:-24) \n", - " =:[11·15·26·36 ⚖ 5·19·23·34] ➔ >:-19 =:0 <:+19) \n", - " <:[6·12·17·22·25·27·31·34·37·38·39 ⚖ 3·5·7·9·10·18·20·24·30·33·36] ➔ >:-18 =:-15 <:+24)) \n", - " <:[1·12·14·16·21·25·26·28·31·32 ⚖ 6·7·8·10·15·17·30·34·35·38] ➔ \n", - " >:[5·8·9·19·21·22·28 ⚖ 2·18·20·25·29·31·39] ➔ >:+21 =:+26 <:+25) \n", - " =:[1·4·20·23 ⚖ 12·28·32·36] ➔ >:+23 =:-22 <:-20) \n", - " <:[2·6·11·15·16·17·19·20·31·33·34·37·38 ⚖ 3·7·8·10·12·21·22·25·28·29·30·32·35] ➔ >:+17 =:-14 <:-16))) \n", - " <:[5·9·10·13·15·29·31·34·36·38·39 ⚖ 4·6·7·14·16·18·20·27·28·30·33] ➔ \n", - " >:[4·5·10·14·17·20·27·30·31·32·34·37·38 ⚖ 2·3·8·11·12·13·18·22·28·33·35·36·39] ➔ \n", - " >:[2·5·14·20·30·34 ⚖ 3·6·12·15·38·39] ➔ >:+34 =:+31 <:+38) \n", - " =:[1·2·8·16·17·23·25·27·34·36·37·38 ⚖ 7·10·11·12·18·19·22·29·30·31·33·35] ➔ >:-7 =:-6 <:+29) \n", - " <:[1·2·8·9·10·25·34·39 ⚖ 6·21·22·23·26·27·31·36] ➔ >:+39 =:-4 <:+36)) \n", - " =:[1·4·8·10·14·15·18·19·20·21·25·30·31 ⚖ 2·3·5·6·12·13·22·23·24·26·33·37·38] ➔ \n", - " >:[2·4·6·9·13·19·22·24·25·26·27·30·38 ⚖ 1·3·5·7·8·15·18·20·29·32·35·36·37] ➔ >:-3 =:-12 <:-2) \n", - " =:[1·11·12·17·28·32 ⚖ 4·14·19·20·26·37] ➔ >:+32 =:+35 <:-11) \n", - " <:[9·14·15·28 ⚖ 4·8·22·37] ➔ >:-8 =:-1 <:+37)) \n", - " <:[1·2·5·8·13·17·18·19·20·22·24·27·28 ⚖ 3·6·7·9·11·12·14·16·23·25·29·36·39] ➔ \n", - " >:[1·5·7·8·9·12·18·21·25·26·27·29·33 ⚖ 3·10·11·13·16·20·22·23·30·31·32·35·37] ➔ >:+27 =:+28 <:-9) \n", - " =:[10·18·23·27·33·37 ⚖ 1·2·14·16·25·39] ➔ >:+33 =:+30 <:-10) \n", - " <:[3·4·6·18 ⚖ 13·22·27·28] ➔ >:-13 =:-5 <:0))))\n" + "[1·2·3·4·5·6·7·8·9·10·11·12·13]⚖[27·28·29·30·31·32·33·34·35·36·37·38·39] ➔ \n", + " >:[2·3·6·12·14·24·26·28·29·30·37·38]⚖[1·4·5·17·19·23·25·27·31·32·33·36] ➔ \n", + " >:[4·6·13·17·18·24·25·33·37·38·39]⚖[1·2·5·10·12·16·20·23·28·31·36] ➔ \n", + " >:[8·16·18·27·28·35·36·37·39]⚖[5·7·10·12·14·20·30·31·34] ➔ >:-31 =:+6 <:-36) \n", + " =:[8·11·12·22·24·29·30·34·35·37·38]⚖[3·4·13·14·15·17·18·19·23·26·32] ➔ >:-32 =:-27 <:+3) \n", + " <:[2·3·11·13·17·30·31·38]⚖[5·7·12·25·27·28·29·35] ➔ >:+2 =:-33 <:+12)) \n", + " =:[1·2·9·12·13·15·18·21·31]⚖[3·8·10·11·14·16·36·38·39] ➔ \n", + " >:[4·5·17·19·23·32·35·38]⚖[9·10·21·24·27·29·37·39] ➔ >:-39 =:+13 <:+9) \n", + " =:[2·9·13·16·19·24·29·31·32·37·39]⚖[1·4·7·10·12·17·23·26·27·30·34] ➔ >:-34 =:-35 <:+7) \n", + " <:[2·6·8·15·18·22·24·26·34·39]⚖[7·10·12·13·14·23·28·31·36·38] ➔ >:+8 =:+11 <:+10)) \n", + " <:[1·5·11·12·22·23·29·30·33·38]⚖[2·3·13·17·20·27·28·31·34·35] ➔ \n", + " >:[3·4·5·10·11·17·28·29·34·37]⚖[7·14·16·22·23·24·27·33·36·39] ➔ >:+5 =:+1 <:-28) \n", + " =:[3·4·12·30·34]⚖[2·7·10·27·28] ➔ >:+4 =:-37 <:0) \n", + " <:[17·29]⚖[8·38] ➔ >:-38 =:-30 <:-29))) \n", + " =:[1·7·8·9·12·14·17·18·26·29·32·37]⚖[3·4·5·15·19·20·23·24·28·30·34·38] ➔ \n", + " >:[3·13·15·18·23·26·28·33·35·36·39]⚖[2·6·9·10·11·14·16·24·29·31·34] ➔ \n", + " >:[2·10·12·14·18·19·24·30·35·39]⚖[1·4·5·13·17·20·22·29·31·33] ➔ >:+18 =:+26 <:-24) \n", + " =:[3·10·11·14·19·23·27·30·34]⚖[5·9·12·18·20·25·28·32·35] ➔ >:-20 =:+17 <:-19) \n", + " <:[7·9·11·24]⚖[4·8·14·15] ➔ >:-15 =:-23 <:+14)) \n", + " =:[4·9·13·20·31·32·39]⚖[7·8·16·21·22·26·35] ➔ \n", + " >:[1·3·9·13·14·15·20·21·24·28·33]⚖[4·5·6·16·17·23·27·30·35·37·39] ➔ >:-16 =:-22 <:-21) \n", + " =:[8·23·29·32·35]⚖[9·20·25·27·37] ➔ >:-25 =:0 <:+25) \n", + " <:[8·9·13·19·21·27·31·36·37]⚖[3·5·10·17·22·26·30·34·38] ➔ >:+21 =:+16 <:+22)) \n", + " <:[1·2·3·16·17·20·23·26·28·32·34·38·39]⚖[4·5·8·10·14·15·21·22·27·30·33·35·37] ➔ \n", + " >:[5·9·15·16·17·18·25·27·30·37·38]⚖[2·7·12·14·19·22·23·32·34·35·39] ➔ >:-14 =:+20 <:+23) \n", + " =:[2·5·6·9·10·12·15·17·21·23·30·36·39]⚖[1·3·7·13·14·18·24·25·28·31·33·34·38] ➔ >:-18 =:+19 <:+24) \n", + " <:[2·10·13·15·23·26·31·35·36]⚖[5·9·16·19·20·27·29·33·38] ➔ >:+15 =:-17 <:-26))) \n", + " <:[1·10·12·13·15·27·31·33·34·35·37]⚖[3·5·8·14·22·23·26·28·32·36·39] ➔ \n", + " >:[2·3·11·14·15·20·23·26·27·34·39]⚖[7·8·10·12·18·19·22·28·30·31·37] ➔ \n", + " >:[2·5·7·10·11·17·22·29·34·37·38·39]⚖[3·9·12·13·15·21·23·27·31·32·33·36] ➔ >:+34 =:-8 <:+27) \n", + " =:[1·5·8·11·12·13·15·26·29·30·32·35]⚖[3·6·7·10·17·24·25·27·34·36·37·39] ➔ >:+35 =:+33 <:-5) \n", + " <:[2·4·5·6·7·15·18·22·25·31·34·39]⚖[1·13·23·24·26·29·30·32·35·36·37·38] ➔ >:+31 =:-3 <:+37)) \n", + " =:[4·5·11·14·35·38]⚖[7·9·21·24·29·32] ➔ \n", + " >:[2·4·6·9·13·23·31·32·33]⚖[1·7·10·11·15·16·22·26·34] ➔ >:-7 =:+38 <:-9) \n", + " =:[2·4·9·13·14·19·26·27·30·38·39]⚖[8·11·12·16·18·20·23·28·33·35·37] ➔ >:+30 =:-6 <:-2) \n", + " <:[3·17·19·35]⚖[4·12·20·29] ➔ >:-4 =:-11 <:+29)) \n", + " <:[5·11·13·15·19·25·34·37·38]⚖[2·9·10·12·24·27·30·32·36] ➔ \n", + " >:[6·12·28]⚖[4·16·21] ➔ >:0 =:-10 <:-12) \n", + " =:[4·9·10·22·23·27·30·32·39]⚖[2·3·14·16·20·25·28·33·38] ➔ >:+39 =:-1 <:+28) \n", + " <:[3·14·17·18·19·21·22·23·29·30·32·33·38]⚖[1·4·8·10·11·16·24·25·26·27·31·36·37] ➔ >:+32 =:-13 <:+36))))\n" ] } ], "source": [ - "do(Puzzle(39, 4, {-1, 0, +1}))" + "do(p39)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ + "How about **80 balls** under the condition that no ball can be heavier (thus, 81 possibilities):" + ] + }, + { + "cell_type": "code", + "execution_count": 37, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "[1·2·3·4·5·6·7·8·9·10·11·12·13·14·15·16·17·18·19·20·21·22·23·24·25·26·27]⚖[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", + " >:[2·3·4·7·8·10·12·18·24·34·38·40·44·49·53·58·59·62·64·72·73·76·77·78]⚖[11·14·15·20·22·23·25·27·31·32·35·42·43·50·52·54·55·56·60·63·65·66·70·79] ➔ \n", + " >:[1·2·4·11·14·24·30·32·37·39·40·46·48·49·52·53·54·56·60·61·62·67·76·77]⚖[12·17·18·20·22·23·25·28·29·31·33·34·36·41·44·45·51·58·63·65·66·68·69·73] ➔ \n", + " >:[11·14·15·16·20·22·26·33·40·42·47·57·60·65·68·69·70·77]⚖[1·6·10·17·19·25·30·32·35·43·58·59·62·64·66·73·74·78] ➔ >:-66 =:-63 <:-65) \n", + " =:[2·3·10·12·13·14·15·17·28·30·37·39·47·50·63·65·79]⚖[1·4·6·8·20·23·26·27·34·38·40·43·54·55·61·67·71] ➔ >:-55 =:-70 <:-79) \n", + " <:[3·4·9·16·23·24·33·41·42·49·53·56·57·63·64·66·69·70·71·77·79·80]⚖[6·7·11·12·13·15·17·18·19·34·35·37·44·46·47·51·58·59·60·62·67·75] ➔ >:-60 =:-54 <:-56)) \n", + " =:[4·8·13·14·17·18·20·22·23·24·27·30·40·41·48·50·53·67·70·71·75]⚖[2·5·7·16·19·26·28·32·35·39·44·51·54·55·61·64·68·69·72·77·78] ➔ \n", + " >:[6·15·35·38·41·42·63·65·68]⚖[19·28·33·40·55·57·59·66·69] ➔ >:-69 =:-61 <:-68) \n", + " =:[9·16·23·66·73·74]⚖[17·18·29·32·55·80] ➔ >:-80 =:-57 <:-74) \n", + " <:[1·3·11·13·15·17·36·47·71·78·79]⚖[2·20·27·33·52·56·57·59·67·76·80] ➔ >:-67 =:-75 <:-71)) \n", + " <:[9·13·14·15·16·19·21·44·47·49·53·56·64·66·68·71·74·77·78·80]⚖[6·7·8·10·11·24·28·31·32·37·39·40·50·51·55·58·62·69·72·79] ➔ \n", + " >:[2·5·9·11·22·29·33·54·55·56·62·68·76·80]⚖[7·10·13·15·16·17·18·20·28·36·40·58·64·79] ➔ >:-58 =:-72 <:-62) \n", + " =:[6·9·15·19·29·41·66·73]⚖[1·23·31·51·59·60·70·78] ➔ >:-59 =:-76 <:-73) \n", + " <:[4·5·6·12·18·19·23·29·31·39·40·43·45·47·57·61·62·65·66·70·73·77]⚖[2·9·16·22·25·27·30·37·48·49·53·60·63·69·71·72·74·75·76·78·79·80] ➔ >:-78 =:-64 <:-77))) \n", + " =:[6·11·12·14·16·24·26·27·28·29·31·36·37·38·44·50·51·54·59·60·67·72·75·77·78·80]⚖[1·2·4·7·10·17·18·20·21·22·30·32·34·42·43·46·48·49·53·56·57·61·64·69·74·76] ➔ \n", + " >:[3·4·11·17·20·21·22·23·24·28·29·32·36·39·41·43·49·54·58·62·66·68·72·74·75·79]⚖[5·6·12·16·18·19·25·26·30·34·35·38·42·44·45·50·59·61·65·67·69·70·76·77·78·80] ➔ \n", + " >:[1·11·14·16·21·30·31·33·41·43·45·46·49·51·54·62·63·77·80]⚖[2·3·10·15·20·22·24·25·29·40·42·48·50·52·64·65·68·70·71] ➔ >:-42 =:-34 <:-30) \n", + " =:[1·3·6·9·19·21·23·24·26·31·39·49·53·59·64·69·80]⚖[2·4·27·30·36·38·40·41·46·50·54·57·61·63·68·71·72] ➔ >:-46 =:-48 <:-53) \n", + " <:[9·14·15·18·20·22·27·28·43·52·63·65·77·79]⚖[1·7·11·21·26·30·41·42·49·56·67·68·69·74] ➔ >:-49 =:-32 <:-43)) \n", + " =:[1·2·4·6·11·17·21·24·31·35·40·41·43·54·60·63·65·67·73·76]⚖[10·14·15·18·26·28·36·37·39·45·47·48·56·58·59·64·71·74·75·79] ➔ \n", + " >:[2·11·13·16·24·25·28·39·40·59·72·76·79]⚖[3·21·31·38·47·50·52·57·58·74·77·78·80] ➔ >:-47 =:-45 <:-39) \n", + " =:[18·25·30·34·52·57·64·75·76]⚖[13·21·33·45·53·62·70·72·80] ➔ >:-33 =:0 <:-52) \n", + " <:[1·9·35·52·69·73]⚖[4·10·31·40·42·61] ➔ >:-40 =:-41 <:-35)) \n", + " <:[5·6·9·15·20·26·30·32·33·35·37·38·39·43·45·50·53·56·58·62·66·73·74·77·79·80]⚖[2·4·8·10·11·12·14·16·18·22·23·28·40·42·44·46·48·51·52·57·60·65·68·69·71·78] ➔ \n", + " >:[1·2·3·9·24·27·35·39·45·49·51·59·62·63·70·71·76·77]⚖[16·19·21·22·30·37·38·41·42·43·44·46·50·53·64·65·73·75] ➔ >:-44 =:-28 <:-51) \n", + " =:[2·6·12·15·18·24·28·36·42·43·54·57·58·62·63·64·65·66]⚖[3·5·9·10·19·20·21·23·27·29·33·47·48·60·68·75·78·79] ➔ >:-29 =:-31 <:-36) \n", + " <:[1·3·6·7·9·12·14·41·43·50·54·61·64·65]⚖[5·11·22·25·29·32·33·35·38·49·55·62·70·71] ➔ >:-38 =:-37 <:-50))) \n", + " <:[1·6·14·15·21·23·24·25·26·29·32·38·42·53·62·65·66·67·70·71·73·76·79]⚖[3·7·8·10·13·16·17·18·20·31·34·37·39·41·47·49·54·56·58·60·64·68·75] ➔ \n", + " >:[2·6·13·16·20·27·32·33·43·46·47·48·59·61·66·67·68·71·72·74·76·78]⚖[3·5·10·12·18·23·25·28·29·30·31·34·40·45·52·54·58·60·64·73·75·80] ➔ \n", + " >:[2·6·18·24·35·36·43·46·50·52·56·58·63·64·66·68·74·76]⚖[4·5·8·9·10·12·16·17·21·26·48·51·53·60·73·75·77·78] ➔ >:-10 =:-3 <:-18) \n", + " =:[3·5·17·20·21·25·26·27·32·43·44·45·47·52·58·64·71·72·75·79]⚖[7·11·12·13·29·33·34·37·41·46·49·51·54·57·62·66·68·70·74·77] ➔ >:-7 =:-8 <:-17) \n", + " <:[4·8·12·15·18·20·21·27·28·33·38·46·47·61·70·71·79]⚖[3·6·10·16·17·26·30·31·34·35·37·48·59·64·68·73·80] ➔ >:-16 =:-13 <:-20)) \n", + " =:[1·5·12·21·22·35·38·40·52·58·61·65]⚖[4·19·25·27·29·46·48·50·53·56·59·76] ➔ \n", + " >:[8·10·12·17·27·58·76]⚖[11·15·19·46·54·62·63] ➔ >:-19 =:-4 <:-27) \n", + " =:[2·24·25·27·33·42·48·62·67]⚖[9·17·22·31·43·44·59·64·73] ➔ >:-9 =:-11 <:-2) \n", + " <:[5·18·19·23·34·41·63·69·70]⚖[2·4·17·22·26·39·43·61·68] ➔ >:-22 =:-12 <:-5)) \n", + " <:[2·3·5·7·8·9·14·17·19·20·21·22·25·27·31·32·35·38·39·45·52·53·55·57·65·69·78]⚖[10·12·18·23·24·26·29·30·33·34·37·40·43·44·58·59·60·61·64·66·68·71·72·73·74·75·77] ➔ \n", + " >:[4·12·13·24·25·35·44·49·52·56·57·59·61·62·63·64·70·78]⚖[6·7·18·19·20·23·40·41·42·45·46·47·51·67·68·71·72·79] ➔ >:-23 =:-26 <:-24) \n", + " =:[1·7·12·19·22·29·36·40·42·58·59·61·62·71·79·80]⚖[13·15·16·30·32·35·41·44·56·60·65·66·70·75·76·78] ➔ >:-15 =:-6 <:-1) \n", + " <:[14·34·36·39·41·53·70·74·76·79]⚖[3·5·6·21·28·42·49·60·62·68] ➔ >:-21 =:-25 <:-14))))\n" + ] + } + ], + "source": [ + "do(Puzzle(80, 4, {-1, 0}))" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "Looking good (except that the output is longer than the line length, and so again is hard to read).\n", + "\n", "# 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). Let's try:" @@ -945,7 +1175,7 @@ }, { "cell_type": "code", - "execution_count": 29, + "execution_count": 38, "metadata": {}, "outputs": [ { @@ -960,16 +1190,36 @@ "do(Puzzle(121, 5))" ] }, + { + "cell_type": "code", + "execution_count": 39, + "metadata": {}, + "outputs": [ + { + "data": { + "text/plain": [ + "{'gt': 82, 'eq': 78, 'lt': 82}" + ] + }, + "execution_count": 39, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "partition_sizes(Puzzle(121, 5), 41)" + ] + }, { "cell_type": "markdown", "metadata": {}, "source": [ - "That didn't work. Let's back off to 2 × 120 + 1 = 241 possibilities:" + "Nope, that didn't work. Let's back off to 2 × 120 + 1 = 241 possibilities:" ] }, { "cell_type": "code", - "execution_count": 30, + "execution_count": 40, "metadata": { "scrolled": false }, @@ -978,127 +1228,127 @@ "name": "stdout", "output_type": "stream", "text": [ - "[1·2·3·4·5·6·7·8·9·10·11·12·13·14·15·16·17·18·19·20·21·22·23·24·25·26·27·28·29·30·31·32·33·34·35·36·37·38·39·40 ⚖ 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", - " >:[2·3·6·11·12·13·25·27·29·36·38·40·42·43·44·45·50·52·54·56·60·62·69·76·78·79·81·82·83·84·85·87·91·95·99·100·104·119 ⚖ 1·4·7·14·17·18·20·21·22·30·31·32·35·37·39·47·48·55·59·64·66·70·73·77·88·89·90·101·103·105·106·108·109·111·112·114·117·120] ➔ \n", - " >:[3·5·10·12·13·18·27·28·36·37·46·52·57·61·64·67·75·80·82·85·91·94·95·97·100·102·103·108·109·112·116 ⚖ 1·2·4·6·7·9·20·26·29·33·40·43·51·54·55·56·63·65·68·70·71·72·73·87·88·90·96·104·105·111·119] ➔ \n", - " >:[2·9·17·20·27·29·38·41·43·45·49·51·52·54·55·61·65·78·81·84·85·88·90·100·104·108·112·114·116 ⚖ 1·6·7·12·14·16·28·30·33·35·42·56·58·59·64·71·72·77·80·82·93·98·102·105·106·107·109·111·119] ➔ \n", - " >:[4·6·9·10·17·18·22·27·31·32·34·36·39·40·43·44·51·54·58·71·72·74·78·81·85·88·95·98·101·104·105·108·115·116·117·118·119 ⚖ 3·5·7·12·13·15·16·20·21·26·29·46·47·48·49·56·61·62·64·66·67·68·69·73·83·89·93·96·97·99·103·109·110·112·113·114·120] ➔ >:+27 =:-111 <:-105) \n", - " =:[4·5·6·10·15·18·25·26·28·32·33·36·38·41·43·62·66·67·71·73·75·76·79·81·83·86·95·98·100·102·103·105·107·108·109·112·116·117·118 ⚖ 1·2·8·11·13·16·17·21·23·24·29·30·31·34·35·37·39·40·42·46·47·50·57·58·59·64·65·68·70·74·77·87·90·91·92·96·99·106·110] ➔ >:+36 =:+3 <:+13) \n", - " <:[3·6·12·15·17·22·26·32·34·35·38·39·43·45·46·47·55·56·60·62·66·68·71·72·77·85·87·88·93·94·100·101·114 ⚖ 2·7·11·16·18·19·23·24·30·42·49·50·51·52·57·58·65·67·74·76·79·80·82·86·89·92·95·102·106·111·113·115·116] ➔ >:+12 =:-90 <:-88)) \n", - " =:[3·7·13·17·18·19·20·21·32·36·43·48·49·56·59·63·69·70·74·75·77·79·86·87·89·91·96·98·102·108·109·113·114·115·116·118·119·120 ⚖ 1·4·6·8·10·15·16·22·23·29·30·33·35·40·41·45·46·50·52·55·58·60·61·62·71·76·82·83·84·88·99·101·103·104·106·107·112·117] ➔ \n", - " >:[7·11·12·14·17·23·26·28·29·36·37·38·43·46·48·49·51·53·54·55·56·58·67·68·69·71·72·79·83·84·90·93·94·95·96·97·105·112·114·117 ⚖ 1·4·6·15·16·18·19·27·30·31·39·40·41·42·47·50·52·62·73·75·76·80·81·85·87·88·92·98·99·100·101·102·104·108·110·113·115·116·118·120] ➔ >:-101 =:-106 <:-117) \n", - " =:[5·10·12·22·30·38·45·48·49·54·65·70·72·76·84·92·98·99·100·106·115 ⚖ 1·8·25·26·28·42·46·47·55·61·67·81·85·87·94·105·112·113·117·118·119] ➔ >:+38 =:+11 <:+25) \n", - " <:[1·3·5·14·32·33·49·54·61·63·65·69·70·71·81·85·87·88·89·95·101·102·105 ⚖ 2·20·23·25·35·36·39·40·47·48·50·58·59·60·67·77·93·97·103·111·114·115·116] ➔ >:-114 =:-120 <:-89)) \n", - " <:[2·6·10·15·33·35·38·52·56·57·60·64·67·71·88·89·91·120 ⚖ 1·5·12·13·20·29·31·39·40·43·44·47·48·63·74·90·112·113] ➔ \n", - " >:[3·7·8·16·17·18·21·22·23·27·30·31·34·36·38·45·46·47·52·57·58·69·75·81·85·88·96·97·98·100·102·103·109·111·116·117·120 ⚖ 1·5·6·14·15·19·33·39·41·51·53·56·60·63·64·65·67·71·73·76·80·84·86·87·90·91·92·93·99·101·105·106·108·110·112·113·115] ➔ >:-112 =:+2 <:+6) \n", - " =:[12·15·18·22·27·34·36·38·39·42·43·44·45·54·65·68·72·73·80·82·87·95·97·98·109·110·115·117 ⚖ 3·8·11·13·24·26·31·46·56·57·59·61·63·77·83·85·86·91·92·93·99·100·103·104·105·106·111·118] ➔ >:-103 =:-108 <:-109) \n", - " <:[1·4·7·14·17·18·24·27·28·42·43·48·60·64·72·75·80·83·88·94·95·101·103·112 ⚖ 3·10·12·20·23·29·31·35·41·52·55·57·67·68·69·70·77·81·85·92·99·102·106·111] ➔ >:0 =:+40 <:+29))) \n", - " =:[5·6·14·16·22·23·24·27·30·31·32·35·41·46·49·51·53·56·65·68·69·73·75·78·85·88·90·92·93·97·101·104·109·110·112·117·119 ⚖ 2·3·7·9·13·15·19·20·28·34·36·37·38·39·40·48·54·55·59·64·70·71·74·76·80·83·86·87·96·98·100·102·105·106·111·116·120] ➔ \n", - " >:[10·13·20·21·23·24·27·29·30·32·35·39·50·54·58·61·65·67·70·71·77·85·88·91·93·96·97·98·106·110·114·116 ⚖ 6·11·15·19·22·25·26·28·37·40·45·47·48·52·56·57·59·64·69·81·82·90·92·100·101·102·104·107·108·111·113·120] ➔ \n", - " >:[3·16·20·21·24·25·28·32·37·39·49·50·52·56·57·66·72·76·81·82·83·84·85·86·87·88·96·102·104·113 ⚖ 6·8·12·14·15·18·27·30·45·51·53·55·59·60·61·64·67·69·71·77·78·89·90·91·94·98·101·103·107·108] ➔ >:+24 =:+23 <:-102) \n", - " =:[7·12·14·17·18·38·40·57·59·64·73·75·76·77·78·88·98·102·109·110·116·120 ⚖ 1·5·8·19·20·30·32·41·47·48·52·55·62·79·81·85·86·93·104·106·111·115] ➔ >:-86 =:+16 <:+5) \n", - " <:[2·11·12·21·22·23·24·25·29·31·32·47·53·55·57·63·64·69·74·76·77·88·91·95·101·103·109·110·111·112·114·116·118·120 ⚖ 3·6·14·15·16·17·20·26·28·33·34·36·37·42·43·45·51·52·59·65·68·70·72·79·81·83·84·89·98·100·105·107·113·117] ➔ >:-98 =:-96 <:-116)) \n", - " =:[4·6·7·13·17·22·23·25·31·33·36·37·38·39·40·44·49·52·61·66·67·68·71·75·79·81·82·83·95·96·99·100·104·112·113·114 ⚖ 2·5·9·10·12·18·26·29·30·32·43·46·48·50·51·59·70·73·74·77·87·88·89·90·91·93·94·97·101·102·106·107·109·110·119·120] ➔ \n", - " >:[1·5·7·8·11·16·17·19·24·28·30·31·34·38·42·45·50·54·57·60·66·73·76·81·82·89·90·96·98·100·101·107·112·113·115·116 ⚖ 3·12·14·18·26·27·32·37·40·44·47·48·55·61·65·69·70·71·74·75·78·80·84·85·91·93·94·95·102·105·106·108·111·117·118·120] ➔ >:-94 =:+33 <:-107) \n", - " =:[2·4·11·21·26·29·38·45·46·51·53·54·59·61·69·71·73·74·81·84·87·88·91·92·93·94·95·96·98·99·112·117·118 ⚖ 5·13·15·16·19·20·24·28·34·39·43·44·47·48·49·50·52·55·58·63·70·77·80·90·97·100·101·102·103·109·113·115·116] ➔ >:-115 =:+8 <:-118) \n", - " <:[3·7·8·9·10·11·16·19·20·21·25·27·28·32·33·34·47·53·54·55·61·63·67·71·72·77·79·82·84·87·88·92·93·94·103·105·107·108 ⚖ 2·6·14·15·23·26·30·35·36·39·43·44·45·46·48·49·50·51·56·60·62·65·68·76·80·85·96·98·99·100·106·109·110·111·114·115·116·118] ➔ >:+10 =:-113 <:+26)) \n", - " <:[6·11·13·15·16·22·25·27·31·32·34·40·44·49·55·59·60·63·67·68·76·80·83·86·88·90·91·97·99·101·106·108 ⚖ 2·7·12·14·17·18·19·23·28·30·33·36·39·48·50·54·65·70·71·72·74·84·89·98·102·104·110·111·112·114·117·118] ➔ \n", - " >:[1·8·12·20·26·52·83·93·101·109·119 ⚖ 11·15·35·36·50·57·68·74·77·110·113] ➔ >:-110 =:+34 <:+15) \n", - " =:[7·10·16·17·18·22·23·36·51·53·58·61·65·73·77·80·82·86·89·93·106·113·115·119 ⚖ 5·6·11·19·20·21·25·29·32·41·45·46·71·74·79·92·95·97·102·104·105·108·112·114] ➔ >:-92 =:+9 <:-93) \n", - " <:[1·2·4·9·16·24·28·30·31·32·36·38·41·43·44·45·49·50·53·56·57·58·59·60·62·64·68·69·73·75·77·81·86·88·90·92·103·108·111·120 ⚖ 3·6·12·17·19·21·22·26·27·29·35·42·47·51·52·55·61·63·71·72·78·79·80·84·85·89·93·98·99·100·101·105·106·107·110·112·113·114·115·117] ➔ >:+28 =:-97 <:+19))) \n", - " <:[1·2·13·16·17·20·21·23·30·33·40·42·45·55·56·57·59·74·78·79·80·82·83·85·86·87·93·95·102·106·108·109·111·115·118·120 ⚖ 6·7·8·9·14·19·22·24·25·26·27·39·43·54·60·61·63·64·65·66·68·69·75·76·81·84·88·89·90·100·103·107·112·114·116·119] ➔ \n", - " >:[1·3·5·7·8·10·11·14·17·19·21·28·32·36·37·38·44·47·53·56·63·67·73·84·86·90·101·102·105·107·108·117·119 ⚖ 9·12·15·16·18·20·26·33·34·35·43·46·48·54·55·59·64·68·69·75·76·77·79·83·87·89·91·95·96·99·103·111·120] ➔ \n", - " >:[11·13·14·16·17·30·48·60·64·77·80·81·104·111·114 ⚖ 2·5·10·20·21·39·40·50·58·65·67·69·102·105·110] ➔ >:+17 =:+1 <:+21) \n", - " =:[2·6·9·12·15·19·26·30·34·40·41·42·44·47·53·54·56·69·72·80·81·95·96·99·104·106·107·110·115·118 ⚖ 4·7·8·10·17·18·24·28·29·35·37·39·50·52·57·58·59·60·63·77·78·79·83·85·87·91·103·109·114·116] ➔ >:+30 =:-100 <:-81) \n", - " <:[3·4·6·8·9·10·15·18·21·24·27·29·30·35·39·46·47·50·51·54·55·67·78·84·97·108·110·111·115·120 ⚖ 2·5·13·16·23·25·37·43·53·56·58·59·60·62·64·73·74·76·79·80·81·86·89·94·96·99·101·104·106·119] ➔ >:-119 =:+20 <:-84)) \n", - " =:[11·17·18·20·21·35·37·38·40·41·47·48·51·53·58·60·62·67·80·81·87·88·89·95·103·104·107·108·113·115·116·117 ⚖ 2·3·4·6·8·12·14·15·19·23·27·29·32·34·55·56·64·65·70·74·75·79·83·84·85·94·97·98·112·118·119·120] ➔ \n", - " >:[8·9·13·14·18·24·25·26·28·30·33·42·47·48·49·54·60·64·65·67·68·69·72·78·80·82·86·94·100·103·104·105·107·108·109·112·113·118 ⚖ 1·5·6·7·11·16·17·19·21·23·32·34·37·38·39·40·45·46·51·53·56·57·58·66·74·76·79·83·84·88·91·92·96·97·98·110·114·119] ➔ >:+18 =:+35 <:+37) \n", - " =:[1·2·8·12·13·17·19·22·25·31·32·33·34·40·45·49·51·58·59·70·72·74·87·88·90·98·99·100·115·119 ⚖ 4·5·10·15·23·28·29·38·48·50·55·56·63·77·78·79·81·82·83·86·89·92·103·108·109·114·116·117·118·120] ➔ >:+31 =:-91 <:-99) \n", - " <:[1·4·6·8·12·18·20·26·27·30·36·43·46·51·54·55·58·59·62·69·70·71·74·79·81·87·89·95·98·101·104·109·111·113·114·115·117·120 ⚖ 3·10·17·21·22·23·29·33·34·39·42·44·45·47·48·49·61·67·75·77·78·84·86·88·90·91·92·93·94·97·99·105·107·110·112·116·118·119] ➔ >:+4 =:+32 <:-104)) \n", - " <:[13·15·18·20·21·24·26·33·38·39·46·49·54·68·71·79·82·83·90·91·93·103·104·105·106·107·109·111·117·118·119·120 ⚖ 3·4·5·8·17·22·27·28·30·31·32·34·37·40·48·50·62·67·72·77·78·80·86·87·95·96·97·98·99·110·114·116] ➔ \n", - " >:[2·4·5·10·11·12·15·17·21·22·25·29·30·35·43·44·45·49·50·51·58·61·64·68·72·78·79·83·87·94·96·98·109·110·113·117·118·120 ⚖ 1·6·7·9·18·27·31·32·33·34·40·41·42·47·52·56·65·66·67·70·71·75·77·80·82·84·85·90·91·93·95·100·102·104·105·108·116·119] ➔ >:-95 =:+39 <:-87) \n", - " =:[2·6·7·18·21·24·31·33·34·35·38·39·46·51·52·54·58·59·60·62·69·70·71·73·74·79·96·106·110·111·117 ⚖ 3·4·5·10·11·12·14·19·22·27·30·41·42·44·45·48·50·55·56·66·67·80·83·93·94·104·107·113·118·119·120] ➔ >:+7 =:-85 <:+14) \n", - " <:[1·6·7·9·14·15·17·25·28·29·30·45·50·56·59·65·70·73·74·77·78·80·82·86·87·89·98·102·105·112·116·117 ⚖ 4·16·19·21·26·32·35·38·39·46·51·53·62·66·75·79·81·83·84·85·88·92·99·100·104·108·109·110·111·114·119·120] ➔ >:-83 =:+22 <:-82)))) \n", - " =:[4·7·11·17·18·19·21·23·25·27·29·30·31·32·36·39·41·45·47·52·55·63·65·67·68·69·70·72·79·80·82·86·87·88·94·112·113·114·117·120 ⚖ 1·5·6·8·9·12·14·15·20·22·34·38·42·44·49·50·54·56·57·58·60·71·74·77·78·83·84·85·91·92·97·98·99·104·108·109·110·111·115·118] ➔ \n", - " >:[1·5·7·11·13·15·20·32·45·48·51·55·58·66·70·71·76·77·85·90·92·95·112·115·117·118·120 ⚖ 4·25·33·38·43·44·47·52·54·56·57·60·61·62·65·68·72·74·75·79·81·82·88·94·96·97·99] ➔ \n", - " >:[1·4·6·8·11·18·19·22·28·29·34·35·37·41·42·43·49·51·52·57·63·65·70·71·74·75·76·77·79·80·81·87·92·95·97·104·106·115·118·120 ⚖ 3·10·12·17·21·23·24·26·27·30·31·33·38·40·44·45·46·47·48·59·60·64·67·68·69·72·78·83·84·88·93·98·105·107·110·111·113·114·117·119] ➔ \n", - " >:[3·5·6·7·9·10·14·25·30·34·37·42·58·60·61·62·67·68·70·71·72·84·85·93·96·100·108·109·111·113·119 ⚖ 2·8·12·13·15·16·17·20·22·23·27·33·39·41·50·51·53·63·64·66·74·78·81·83·86·87·88·89·101·103·106] ➔ >:+70 =:-44 <:-60) \n", - " =:[10·18·20·22·26·36·46·64·65·80·82·86·87·89·93·98·101·103·117 ⚖ 3·5·6·7·9·29·33·37·38·39·42·48·55·56·66·68·77·90·106] ➔ >:-56 =:-54 <:+55) \n", - " <:[1·9·14·18·24·26·30·47·60·61·65·66·70·71·78·85·86·88·96·98·100·104·105·108·112·115·116·117 ⚖ 8·10·16·20·22·23·28·37·39·42·45·46·49·54·55·57·63·72·76·79·83·90·91·97·103·111·113·118] ➔ >:-57 =:-74 <:+45)) \n", - " =:[2·4·5·6·9·11·13·15·17·20·22·23·26·29·33·37·44·45·47·50·51·53·57·58·59·60·63·64·75·82·86·87·104·105·106·111·113·116 ⚖ 1·3·8·10·16·18·19·24·28·30·35·38·40·41·48·49·54·66·67·71·76·78·81·83·84·85·88·91·93·94·97·98·100·101·103·118·119·120] ➔ \n", - " >:[2·3·12·13·17·29·35·57·63·73·74·78·85·89·90·95·108·117·119 ⚖ 4·9·20·22·31·33·38·45·47·60·61·62·69·70·96·103·105·114·115] ➔ >:+63 =:-49 <:-78) \n", - " =:[1·2·6·7·14·15·21·23·24·27·29·35·37·41·44·49·52·55·56·59·60·73·81·87·96·100·104·105·111·113·115·116·117·118 ⚖ 3·5·8·11·12·17·18·26·28·30·33·34·36·39·42·46·53·57·61·62·69·71·72·83·88·93·95·103·106·107·110·114·119·120] ➔ >:-42 =:+80 <:+69) \n", - " <:[11·16·22·24·28·33·38·39·41·50·51·74·75·76·78·92·98 ⚖ 7·9·12·23·25·31·54·56·62·77·80·88·101·111·114·116·118] ➔ >:+41 =:+67 <:-50)) \n", - " <:[1·2·3·9·10·22·24·25·26·29·34·41·43·46·47·48·49·50·58·66·67·69·71·72·75·77·79·80·87·92·93·95·98·101·103·104·108·110·118 ⚖ 5·8·12·13·17·18·19·21·23·31·35·37·40·42·44·51·54·57·59·61·81·82·83·85·86·89·90·94·96·97·100·107·109·112·113·114·115·119·120] ➔ \n", - " >:[4·5·13·14·15·21·23·24·31·32·37·42·43·44·46·47·51·52·66·67·70·71·77·86·87·91·95·97·100·101·103·104·114·115 ⚖ 2·6·11·18·25·28·29·33·35·36·41·48·54·56·61·62·63·64·68·69·72·75·83·89·90·93·99·106·107·110·112·117·119·120] ➔ >:+47 =:+79 <:+72) \n", - " =:[39·42·49·65·76·79·86·90·94·105·107·108·114·115 ⚖ 1·35·43·51·52·56·60·64·66·78·87·88·101·116] ➔ >:+65 =:+68 <:+52) \n", - " <:[9·17·32·43·51·58·60·64·65·75·81·85·92·96·108·115 ⚖ 1·14·16·18·23·35·47·49·52·53·57·61·71·80·88·89] ➔ >:-71 =:-77 <:-58))) \n", - " =:[3·8·26·29·31·36·37·42·44·50·51·55·58·59·64·70·71·73·75·87·89·104·111·118·120 ⚖ 5·7·13·14·15·18·25·30·35·39·41·43·48·49·53·65·66·67·72·78·82·94·98·99·117] ➔ \n", - " >:[5·6·12·15·21·26·27·28·29·30·37·39·45·48·49·50·53·56·57·59·66·70·71·74·75·76·78·83·92·93·95·96·99·100·108·109·111·112 ⚖ 1·3·8·11·13·18·22·24·25·31·32·33·34·35·38·40·41·42·43·44·60·62·63·65·67·79·80·81·87·88·91·98·101·105·110·116·117·119] ➔ \n", - " >:[1·20·32·33·38·50·57·58·62·64·67·72·73·76·92·96·101·113·114 ⚖ 4·19·29·37·40·43·51·56·63·66·75·86·94·95·99·104·108·112·120] ➔ >:-43 =:+59 <:+75) \n", - " =:[3·4·12·13·21·23·26·33·35·36·37·39·41·42·44·49·57·66·72·73·74·77·78·82·83·87·88·89·91·97·99·107·108·109·111·114·118·119 ⚖ 2·8·9·14·19·22·24·25·29·31·43·45·46·48·52·55·61·62·64·65·67·76·79·86·92·93·96·98·100·101·102·105·106·110·112·115·116·120] ➔ >:+73 =:+51 <:+64) \n", - " <:[6·10·14·18·28·35·36·40·43·45·47·49·59·61·64·66·68·77·80·81·82·83·86·87·96·98·102·107·108·115·118 ⚖ 2·4·8·11·15·16·19·30·32·33·37·41·46·48·50·51·52·67·70·71·88·91·92·95·100·105·111·112·113·116·120] ➔ >:-48 =:-53 <:-66)) \n", - " =:[4·8·10·11·14·16·31·36·44·49·50·54·55·56·57·58·60·61·63·71·73·74·75·76·81·83·87·91·92·95·96·97·98·101·103·107·110·116·117 ⚖ 1·2·5·6·15·17·21·22·23·25·26·32·39·40·43·47·48·53·59·62·64·69·72·78·79·82·84·89·90·100·102·104·105·106·108·111·113·114·118] ➔ \n", - " >:[2·4·6·11·12·18·20·21·22·25·26·30·34·36·40·42·46·49·69·70·72·76·79·81·82·83·89·93·97·100·102·103·107·110·112·116 ⚖ 3·8·9·14·15·16·17·19·28·31·38·43·44·45·47·52·55·56·57·58·61·64·68·74·75·78·84·90·96·99·108·111·113·115·117·119] ➔ >:+76 =:-62 <:+61) \n", - " =:[1·5·11·13·16·22·26·31·38·39·40·49·50·57·66·68·69·70·72·75·83·93·100·105·106·111·112·119 ⚖ 3·7·8·12·14·23·27·35·36·37·44·45·46·53·55·60·74·76·81·82·87·91·92·95·99·101·104·116] ➔ >:-46 =:0 <:+46) \n", - " <:[3·4·5·9·15·16·22·32·35·36·39·50·54·58·61·68·73·75·78·80·84·85·88·98·105·108·117 ⚖ 1·12·20·23·30·33·37·38·41·42·45·46·52·55·69·76·81·83·89·90·99·100·104·106·115·116·120] ➔ >:-76 =:+62 <:-61)) \n", - " <:[1·7·9·14·19·21·22·27·35·41·43·44·45·54·61·64·69·71·72·74·76·79·81·82·90·94·95·96·99·101·102·103·111·112·115·118·119 ⚖ 10·12·16·20·24·25·26·29·30·32·36·37·38·40·42·48·59·65·66·67·68·73·77·78·80·85·86·88·93·105·106·108·110·113·114·116·117] ➔ \n", - " >:[7·10·13·23·24·27·30·41·42·47·48·52·55·61·67·68·71·73·74·78·81·84·88·90·100·101·102·103·104·107·117 ⚖ 1·4·5·6·14·25·28·31·33·35·37·45·53·57·59·62·69·77·80·82·85·86·91·92·93·96·111·112·113·115·118] ➔ >:-59 =:+43 <:-73) \n", - " =:[2·9·12·14·17·18·20·23·24·29·30·32·33·35·36·46·57·59·64·68·71·73·77·78·79·82·83·84·92·93·95·97·107·111·112·115·118 ⚖ 3·5·8·11·16·19·26·27·28·31·37·38·40·44·45·48·49·53·54·58·60·63·66·75·80·81·86·88·90·96·98·101·104·105·108·114·119] ➔ >:-75 =:-51 <:+53) \n", - " <:[7·10·11·26·28·36·39·42·57·61·66·67·69·77·79·89·93·97·100·102·120 ⚖ 1·2·8·19·25·29·45·46·48·52·55·62·63·70·71·85·86·87·88·95·104] ➔ >:+66 =:-64 <:+48))) \n", - " <:[2·3·6·12·19·23·29·33·44·48·51·55·58·61·64·66·69·72·76·77·84·86·88·89·95·98·99·103·104·107·108·109·110·114 ⚖ 1·5·7·11·20·22·24·25·28·31·32·35·36·37·38·39·45·47·49·56·57·60·62·63·68·71·75·78·79·80·92·97·112·119] ➔ \n", - " >:[3·6·8·10·13·15·16·17·18·20·29·32·34·36·38·39·40·42·43·44·56·57·61·62·67·68·71·73·75·77·79·81·86·97·99·103·115·117·119·120 ⚖ 1·5·7·9·11·14·19·21·22·23·25·27·31·41·45·48·49·50·52·53·54·55·58·64·65·66·74·78·83·85·88·92·96·107·108·110·112·113·114·118] ➔ \n", - " >:[11·14·27·28·44·45·50·51·54·65·67·69·72·81·87·95·109·115·117 ⚖ 10·12·15·21·22·33·39·52·53·56·59·78·83·90·102·104·107·114·116] ➔ >:+44 =:+77 <:-45) \n", - " =:[7·9·10·11·15·19·21·22·29·30·32·42·49·62·63·72·76·79·85·86·91·95·104·106·107·108·110·116·118·119 ⚖ 2·5·12·18·25·26·27·35·39·40·43·45·47·52·53·55·56·60·65·68·77·83·88·90·97·98·99·101·103·114] ➔ >:-47 =:-80 <:-63) \n", - " <:[7·12·22·24·32·34·35·37·38·42·45·46·52·56·58·63·65·68·74·75·80·83·91·94·99·102·111·117·118 ⚖ 6·8·11·14·18·21·23·27·30·36·39·49·50·53·54·59·61·64·70·85·92·100·104·105·110·114·115·119·120] ➔ >:+58 =:-79 <:-68)) \n", - " =:[3·4·13·20·22·24·27·28·33·42·47·62·65·73·81·83·85·97·98·104·107·109·114 ⚖ 2·9·10·15·16·30·36·46·50·51·52·53·54·59·63·70·80·82·95·99·102·103·117] ➔ \n", - " >:[2·3·4·5·8·12·15·17·20·24·28·35·38·39·42·43·50·51·52·53·55·59·67·71·72·76·77·80·81·82·89·102·105·106·108·112·113·115·120 ⚖ 6·9·13·14·22·23·26·29·30·32·34·36·37·40·41·44·47·49·60·61·63·64·65·66·75·83·85·87·88·90·91·94·101·103·107·109·110·116·118] ➔ >:+42 =:-70 <:-52) \n", - " =:[3·4·7·10·11·12·13·17·20·23·26·27·28·30·34·40·46·58·60·63·64·65·69·70·73·80·85·87·89·90·94·97·99·102·104·114·116·119·120 ⚖ 9·15·19·29·32·37·38·39·42·44·47·49·51·52·55·66·67·71·72·74·76·78·83·84·86·91·92·95·96·98·100·105·106·109·111·112·113·117·118] ➔ >:-67 =:-41 <:+74) \n", - " <:[14·15·16·22·23·28·40·41·47·52·54·55·60·65·67·69·70·72·73·82·87·88·92·94·110·114 ⚖ 1·2·5·6·17·18·20·26·30·34·35·39·44·48·49·56·57·58·59·79·84·86·93·97·106·115] ➔ >:+54 =:+50 <:-65)) \n", - " <:[3·13·14·21·26·30·32·35·37·40·41·43·47·48·51·53·59·60·65·68·71·72·79·83·84·87·91·95·99·103·106·113·116·117 ⚖ 6·10·11·12·15·20·24·27·28·34·39·49·52·54·57·58·66·67·69·76·81·82·89·90·94·96·97·100·104·105·109·110·118·119] ➔ \n", - " >:[1·2·6·7·8·10·11·14·16·18·20·22·26·28·29·31·32·34·37·43·44·49·50·60·64·69·77·79·80·90·91·96·98·103·107·113·114·116·117·120 ⚖ 4·5·13·21·23·24·30·33·35·39·40·41·45·46·47·52·55·59·63·65·67·68·70·72·75·76·78·82·83·85·86·87·94·95·101·104·109·112·118·119] ➔ >:+60 =:+71 <:-69) \n", - " =:[3·8·17·19·24·27·28·31·37·39·42·52·55·75·76·78·82·83·85·86·89·90·100·104·109·111·116·119·120 ⚖ 1·7·12·18·21·22·25·30·43·44·46·48·50·57·58·63·64·69·81·84·88·92·94·96·97·102·110·113·117] ➔ >:+78 =:+56 <:-55) \n", - " <:[15·25·33·49·50·52·55·66·71·72·106·115 ⚖ 10·11·14·18·47·64·73·98·107·113·114·118] ➔ >:+49 =:+57 <:-72)))) \n", - " <:[3·11·12·13·14·16·20·22·26·27·29·31·35·37·41·43·45·49·53·56·71·72·73·74·76·89·92·93·94·95·96·99·106·110·111·112·115·119 ⚖ 1·2·6·7·8·17·19·21·24·25·28·32·36·42·44·46·47·48·57·58·59·66·68·78·79·82·83·84·85·87·90·97·100·102·114·116·118·120] ➔ \n", - " >:[9·11·16·17·19·22·23·27·35·42·45·47·49·51·53·54·61·63·65·69·75·77·79·81·82·84·86·90·91·94·96·97·100·102·106·111·117·118·119 ⚖ 2·5·12·13·15·18·21·25·28·34·39·41·48·50·55·56·57·59·62·68·70·71·72·73·74·78·85·89·92·93·95·99·101·105·108·109·110·114·115] ➔ \n", - " >:[5·10·11·12·16·17·18·21·24·30·32·35·38·39·41·42·43·44·47·49·53·58·59·60·62·63·66·70·75·77·88·98·100·102·106·107·112·115·117·119 ⚖ 6·7·8·9·13·20·22·25·29·36·40·46·48·50·51·54·57·68·69·72·78·83·84·85·86·87·89·91·92·95·96·97·103·104·105·108·111·116·118·120] ➔ \n", - " >:[2·5·7·10·16·23·30·33·37·38·42·43·45·47·50·51·58·61·64·67·73·74·79·80·85·87·90·97·100·101·104·111·113·120 ⚖ 1·3·4·6·12·13·18·25·31·35·39·41·53·55·60·63·66·68·70·71·72·78·81·84·91·94·98·99·106·107·114·115·117·118] ➔ >:-25 =:+119 <:+106) \n", - " =:[2·3·7·20·31·32·35·37·48·58·65·74·83·94·95·102·113·120 ⚖ 4·14·22·27·29·42·50·55·56·64·67·70·73·76·86·89·96·103] ➔ >:+94 =:-28 <:-2) \n", - " <:[5·7·9·11·14·16·18·22·24·35·36·41·49·52·63·65·66·69·70·77·80·84·86·88·99·101·103·107·109·111·113·116·117 ⚖ 3·6·8·19·23·26·28·30·34·39·40·42·45·47·51·53·59·60·64·67·73·78·79·83·85·89·93·94·95·96·100·105·108] ➔ >:+111 =:-21 <:+96)) \n", - " =:[2·8·12·17·18·21·22·23·33·36·43·49·51·52·59·62·63·65·69·75·76·80·85·88·89·93·94·104·107·113·114·116·118·120 ⚖ 5·6·13·19·20·25·27·32·34·35·37·40·44·46·50·53·55·56·58·67·68·70·71·74·78·87·90·97·101·103·106·108·112·119] ➔ \n", - " >:[2·19·21·27·32·33·40·41·45·61·63·64·66·68·70·75·77·78·86·87·91·94·95·96·98·99·101·104·106·109·110·116·117·119 ⚖ 5·8·9·12·13·15·17·23·25·26·28·34·36·37·39·42·49·52·58·62·67·69·71·79·83·85·102·103·107·108·111·113·115·118] ➔ >:0 =:-6 <:-32) \n", - " =:[7·18·20·32·49·52·54·56·60·63·66·71·77·78·81·87·89·95·100·101·102·103·106·112·114 ⚖ 4·5·8·9·16·21·23·24·26·29·36·42·44·45·47·50·51·64·90·91·98·99·105·107·111] ➔ >:-24 =:-1 <:-7) \n", - " <:[3·20·21·25·33·38·39·41·49·51·57·59·63·64·88·92·101·111·117 ⚖ 4·12·16·22·23·29·36·42·65·69·70·76·78·84·93·96·112·114·119] ➔ >:-36 =:-8 <:+112)) \n", - " <:[1·4·5·6·7·9·12·14·15·16·32·33·37·41·43·49·52·55·58·59·60·67·70·71·75·94·95·99·104·108·112·116·118 ⚖ 2·11·13·17·25·28·29·30·31·35·38·39·42·44·50·51·53·54·57·72·73·74·78·82·84·87·92·93·97·98·110·114·119] ➔ \n", - " >:[2·5·6·10·14·22·38·40·42·52·55·59·63·64·65·67·71·80·85·86·91·93·94·99·101·111·116·119 ⚖ 1·3·8·12·13·20·24·27·31·41·43·47·51·54·57·58·68·76·82·83·87·92·95·97·105·108·110·115] ➔ >:+99 =:-17 <:+95) \n", - " =:[3·11·13·17·18·20·24·28·44·49·59·67·78·80·82·97·99·100·101·102·107 ⚖ 19·31·33·40·41·45·47·54·68·72·73·76·79·85·91·104·109·110·114·115·119] ➔ >:-19 =:+89 <:+115) \n", - " <:[1·7·14·15·17·20·28·30·50·52·61·62·64·66·73·74·78·85·92·96·103·109·112·114 ⚖ 21·27·33·37·43·46·54·56·60·63·67·76·77·83·84·87·90·93·101·104·106·115·117·120] ➔ >:+92 =:+110 <:+93))) \n", - " =:[9·10·11·19·21·24·33·34·39·42·45·48·49·55·58·61·62·66·69·71·74·76·87·90·91·95·97·99·103·104·107·108·112·113·114·118·120 ⚖ 4·5·6·7·8·12·13·14·22·25·26·30·31·35·36·37·43·47·51·53·56·60·64·67·73·81·83·84·86·89·92·93·94·98·106·117·119] ➔ \n", - " >:[4·8·10·16·19·20·21·30·36·40·43·44·46·57·59·60·71·74·78·81·82·87·88·91·92·94·98·99·104·108·114·120 ⚖ 1·2·6·11·12·13·17·24·26·27·28·31·35·37·41·51·54·56·62·66·69·70·72·79·80·83·90·93·102·103·112·118] ➔ \n", - " >:[29·30·32·45·48·80·91·93·94·98 ⚖ 2·3·17·34·66·90·92·108·110·114] ➔ >:+91 =:+104 <:+108) \n", - " =:[2·3·10·14·15·17·18·23·26·27·29·30·37·38·43·47·49·50·52·56·58·62·63·67·69·71·73·77·94·95·96·97·98·99·105·109·114·115·117·118 ⚖ 1·4·5·6·9·13·16·21·24·25·33·39·44·45·51·53·54·57·60·61·66·70·74·75·78·79·80·81·82·84·85·89·90·91·92·100·102·108·113·116] ➔ >:-5 =:+107 <:+113) \n", - " <:[9·10·13·16·19·20·28·31·37·41·42·46·49·50·52·53·56·57·61·62·64·67·72·76·81·83·84·88·96·102·104·105·109·112·113·115·117 ⚖ 3·5·6·12·17·23·27·29·30·33·36·38·43·44·47·51·58·59·60·68·69·70·74·77·82·85·86·90·103·106·107·108·110·111·114·116·119] ➔ >:-30 =:-4 <:+103)) \n", - " =:[3·5·7·15·24·29·30·31·33·36·40·43·51·52·53·56·58·63·64·66·68·70·73·77·80·85·87·90·97·98·103·104·105·110·112·113·114·116·118·119 ⚖ 1·2·6·9·12·13·14·16·17·18·22·23·28·34·37·49·50·54·55·57·60·65·67·72·74·76·81·83·88·91·92·93·94·99·102·107·111·115·117·120] ➔ \n", - " >:[5·6·7·9·11·12·13·14·16·19·24·26·28·42·44·54·56·64·66·67·70·72·74·76·78·81·82·85·87·88·94·96·97·101·106·107·112·118·119 ⚖ 3·15·18·20·21·22·29·31·33·35·37·39·40·41·48·50·51·57·58·59·60·62·65·71·77·79·80·83·91·92·93·95·98·102·105·108·115·116·120] ➔ >:-18 =:-23 <:+105) \n", - " =:[1·9·15·17·18·43·46·51·60·61·69·70·84·88·97·107·111·112 ⚖ 5·12·13·22·27·30·35·38·42·81·89·94·95·96·101·114·115·119] ➔ >:-38 =:+109 <:+101) \n", - " <:[9·11·12·14·15·16·26·29·43·48·63·65·66·70·77·86·89·93·95·101·111·112·119·120 ⚖ 1·3·4·20·23·24·27·30·31·32·40·41·45·55·57·64·71·74·76·83·85·91·100·105] ➔ >:-40 =:+88 <:-15)) \n", - " <:[2·6·7·9·27·30·34·36·37·38·40·41·43·50·55·63·64·72·73·80·84·88·89·92·94·95·96·108·109·117 ⚖ 1·3·4·5·10·11·17·23·25·28·31·39·44·51·53·59·70·76·77·78·79·82·83·85·91·98·99·100·102·105] ➔ \n", - " >:[4·6·8·9·11·16·25·26·28·33·36·40·43·60·61·63·64·68·71·72·78·88·90·98·99·109·115·120 ⚖ 1·2·10·13·15·19·20·22·27·32·35·45·47·51·59·66·73·74·77·86·100·102·103·108·113·114·117·119] ➔ >:-10 =:-39 <:+117) \n", - " =:[4·8·9·21·22·27·31·33·38·41·45·46·49·57·59·62·64·65·66·74·85·86·87·89·90·94·103·111·113·114·115·117 ⚖ 1·3·10·11·14·15·17·23·25·29·30·34·37·39·40·44·52·58·69·70·71·79·80·84·88·93·97·102·104·110·116·120] ➔ >:+86 =:+81 <:-33) \n", - " <:[4·19·29·31·32·37·45·54·58·61·79·82·87·101·110·111·115 ⚖ 1·3·9·18·21·23·43·52·63·71·81·83·93·98·100·112·117] ➔ >:-9 =:-34 <:+98))) \n", - " <:[2·6·7·8·9·11·12·14·15·21·24·26·28·33·36·38·40·41·44·46·49·55·57·59·66·68·72·77·80·85·88·90·91·97·101·107·108·117 ⚖ 3·4·5·10·17·18·20·27·29·31·32·34·37·42·45·50·52·62·63·75·76·81·83·84·86·89·92·93·95·99·100·103·105·106·111·114·116·119] ➔ \n", - " >:[11·12·16·29·30·34·38·40·42·43·55·56·58·62·64·70·72·86·89·92·93·95·96·97·99·102·115·119 ⚖ 6·9·18·20·23·32·33·37·39·41·44·59·63·66·69·74·75·79·84·85·90·98·103·104·106·110·111·118] ➔ \n", - " >:[1·3·7·9·14·15·18·25·29·30·37·48·53·58·60·61·63·66·68·69·73·77·88·89·92·96·97·102·114·115 ⚖ 6·12·17·24·31·34·35·36·40·42·44·46·47·49·52·65·70·72·74·76·78·85·90·91·101·103·104·108·111·113] ➔ >:+97 =:-20 <:-37) \n", - " =:[5·8·13·15·16·20·21·23·28·29·30·31·32·33·35·39·43·45·46·51·57·58·59·60·70·71·74·76·78·83·85·86·90·91·94·97·98·107·114·115 ⚖ 1·2·3·9·10·11·14·19·22·24·25·26·36·37·38·41·42·44·47·49·54·56·62·63·66·72·79·80·88·89·99·102·104·106·108·111·113·118·119·120] ➔ >:-3 =:-27 <:-31) \n", - " <:[11·14·15·19·47·52·53·60·61·69·81·92·100·101·102·107·110·114 ⚖ 6·22·29·34·35·45·55·57·64·65·70·72·82·83·85·95·106·109] ➔ >:-29 =:+90 <:+85)) \n", - " =:[7·13·14·22·25·40·45·49·50·57·75·80·83·84·87·89·90·92·93·94·96·97·98·99·101·102·103·112·115 ⚖ 1·2·8·19·26·27·28·33·35·39·42·43·44·58·61·65·69·73·74·77·82·85·86·104·107·108·114·116·117] ➔ \n", - " >:[3·16·18·28·33·40·42·45·47·50·51·58·60·68·69·70·71·74·77·79·89·94·95·100·104·114·117·118 ⚖ 7·10·14·19·23·24·25·26·31·34·35·44·49·54·56·57·63·64·67·73·78·82·84·86·91·102·109·111] ➔ >:-35 =:+87 <:+102) \n", - " =:[6·8·10·12·16·20·22·24·26·27·28·33·38·39·43·45·46·47·52·56·71·73·76·79·83·84·88·93·97·99·104·115·116·118 ⚖ 1·3·4·5·13·18·19·23·25·29·31·34·41·48·51·53·57·63·65·66·67·68·74·75·82·85·87·94·95·105·107·110·111·112] ➔ >:+118 =:+120 <:-16) \n", - " <:[7·13·29·37·40·54·63·77·80·92·98 ⚖ 22·52·59·68·72·78·81·100·102·112·115] ➔ >:-22 =:+82 <:-13)) \n", - " <:[3·4·5·9·10·17·20·21·22·23·24·25·29·30·33·34·36·37·38·39·48·49·50·64·65·70·80·83·88·92·95·96·103·112·113·116·119 ⚖ 1·13·14·15·16·27·28·31·32·40·44·45·53·56·59·63·68·71·73·75·76·78·84·86·91·97·98·99·100·102·104·105·108·109·110·114·117] ➔ \n", - " >:[3·7·8·9·18·25·26·28·29·30·32·35·36·38·40·47·50·52·55·56·64·65·71·72·76·81·84·88·91·92·102·106·109·112·113·115 ⚖ 1·2·4·6·11·12·13·14·17·21·27·37·39·44·59·60·63·67·69·70·73·74·77·78·82·83·89·90·93·94·95·100·101·103·105·120] ➔ >:-14 =:+116 <:+83) \n", - " =:[4·7·8·9·11·18·19·24·25·30·36·37·41·43·44·47·49·54·56·58·59·60·67·74·76·81·84·85·86·87·88·103·104·105·110·112·114·115·118·120 ⚖ 1·6·10·12·21·23·28·29·33·34·38·39·40·42·45·48·53·55·57·61·62·73·75·79·82·83·89·91·92·93·94·95·97·98·99·100·102·109·113·119] ➔ >:-12 =:-26 <:-11) \n", - " <:[6·9·15·21·22·24·25·30·33·36·37·44·46·50·52·63·71·72·76·79·81·87·88·90·94·95·97·100·102·105·107·109·112·113·118 ⚖ 3·7·13·14·18·23·28·32·40·43·47·49·51·54·56·58·64·65·67·69·75·82·83·84·85·91·92·93·96·98·101·111·115·116·120] ➔ >:+100 =:+114 <:+84)))))\n" + "[1·2·3·4·5·6·7·8·9·10·11·12·13·14·15·16·17·18·19·20·21·22·23·24·25·26·27·28·29·30·31·32·33·34·35·36·37·38·39·40]⚖[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", + " >:[4·6·7·11·13·14·18·21·23·35·36·38·40·42·47·49·61·65·69·71·73·74·75·78·79·80·86·88·93·95·98·99·100·104·105·113·114·115·116]⚖[2·8·9·12·15·17·19·20·25·27·29·34·37·41·44·45·46·53·55·58·62·64·66·72·76·84·90·91·92·96·97·101·102·103·108·110·111·117·118] ➔ \n", + " >:[10·21·22·26·34·36·43·46·48·49·50·51·53·56·57·61·62·66·67·68·70·71·82·89·91·93·100·110·111·114·119·120]⚖[4·6·13·14·16·17·24·35·39·40·41·42·47·52·55·59·60·65·75·81·90·92·94·96·98·101·102·103·105·109·115·117] ➔ \n", + " >:[1·6·8·14·17·18·23·25·26·28·29·35·38·48·49·51·58·60·66·69·76·81·82·85·87·88·93·94·100·102·103·108·112·115]⚖[2·7·9·12·15·19·24·27·32·36·37·39·41·43·53·55·56·59·61·63·65·70·73·80·84·90·92·97·99·106·107·110·111·117] ➔ \n", + " >:[4·5·66·71·77·90·107]⚖[8·19·44·50·65·104·117] ➔ >:-117 =:-92 <:-90) \n", + " =:[1·2·4·5·7·14·17·18·25·26·37·40·43·46·47·49·52·56·63·74·75·76·77·78·79·84·85·88·95·105·108·109·110·118]⚖[3·12·19·21·29·33·48·50·51·53·54·58·62·64·68·71·73·83·92·98·100·101·102·103·104·106·107·111·112·114·116·117·119·120] ➔ >:-101 =:-96 <:+21) \n", + " <:[1·14·18·28·34·37·39·48·53·61·64·66·67·81·96·99·105·108·118]⚖[4·13·21·33·36·41·44·59·60·63·70·83·84·90·91·95·103·109·115] ➔ >:-103 =:-102 <:+36)) \n", + " =:[3·6·12·13·15·16·17·20·23·24·25·27·37·38·40·46·50·54·55·61·62·69·75·76·84·87·92·95·98·109·111·112·113·114·116·118·119]⚖[1·4·8·10·11·19·21·26·31·33·34·39·43·48·49·51·56·57·58·59·65·67·71·74·78·81·82·86·88·91·93·105·106·107·108·115·120] ➔ \n", + " >:[2·3·8·11·17·25·28·30·32·35·38·40·41·59·60·68·73·74·75·85·88·91·95·108·110]⚖[12·13·14·24·27·29·39·45·55·58·62·65·70·79·83·86·90·96·103·104·111·112·117·118·119] ➔ >:+38 =:+23 <:-108) \n", + " =:[17·18·41·47·67·70·71·84·88·106·109·112·114·116·117·120]⚖[5·7·13·22·24·25·39·46·49·72·78·80·93·100·101·102] ➔ >:+18 =:-97 <:+7) \n", + " <:[11·15·20·22·23·26·29·32·40·43·55·59·60·64·70·73·76·79·80·82·83·84·85·86·90·94·100·101·115·117]⚖[2·5·8·17·19·21·25·28·30·34·35·37·39·46·47·51·56·57·74·91·93·95·99·106·107·110·111·113·114·120] ➔ >:+11 =:-118 <:-84)) \n", + " <:[5·6·9·11·17·19·24·28·29·30·31·35·38·44·48·49·57·64·65·73·75·79·84·85·88·90·93·94·95·98·101·103·105·106·112·120]⚖[2·10·13·14·16·18·20·21·23·32·34·37·39·40·47·50·54·55·56·60·67·69·70·71·72·77·78·80·81·86·100·109·110·114·116·117] ➔ \n", + " >:[14·15·38·42·59·63·66·116]⚖[6·27·70·80·93·109·110·118] ➔ >:-110 =:+35 <:+6) \n", + " =:[11·26·45·58·78·81·87·94·95·97·105·118]⚖[4·12·13·19·28·48·64·74·83·84·88·91] ➔ >:-91 =:-111 <:+4) \n", + " <:[6·16·20·26·35·40·50·55·63·64·68·69·71·76·79·82·83·84·92·107·117·119]⚖[12·13·21·23·25·27·32·38·45·46·52·53·59·66·72·74·85·96·97·99·101·109] ➔ >:+40 =:+14 <:+13))) \n", + " =:[4·9·21·26·27·28·33·37·39·40·49·52·55·56·60·61·64·69·79·80·81·83·84·89·90·91·95·96·105·106·107·110·113·114·120]⚖[2·5·8·11·14·15·18·19·24·25·29·30·48·50·54·59·68·71·77·78·82·85·86·88·92·93·94·97·99·103·108·112·117·118·119] ➔ \n", + " >:[6·13·29·32·33·34·35·36·39·41·42·45·50·54·66·70·73·74·82·88·89·91·92·93·97·102·110·112·115·117·119]⚖[1·2·3·12·14·18·20·21·25·38·47·48·53·56·60·65·67·76·77·81·84·85·87·95·96·104·107·111·116·118·120] ➔ \n", + " >:[1·5·6·9·14·16·18·19·20·35·39·40·41·42·49·53·54·62·63·65·66·79·85·87·92·93·103·108·111·112·113·114·119·120]⚖[2·4·12·15·23·24·25·27·29·30·31·34·44·47·51·55·56·59·60·67·70·76·81·82·84·86·89·98·100·104·105·106·110·118] ➔ >:+39 =:+33 <:-85) \n", + " =:[4·5·19·23·24·30·37·38·66·75·77·81·90·106·115]⚖[10·17·18·26·32·34·49·61·70·89·94·96·101·110·118] ➔ >:-94 =:+28 <:+26) \n", + " <:[8·12·13·17·48·54·56·68·86·90·116·119]⚖[11·20·43·72·74·77·80·82·88·89·99·101] ➔ >:-82 =:-112 <:-119)) \n", + " =:[1·4·6·8·9·13·16·19·20·31·35·38·41·42·48·54·58·66·69·71·74·78·80·82·85·86·87·88·89·95·96·97·108·112·113·117·118]⚖[2·5·7·10·12·17·21·23·25·26·32·33·36·39·40·43·45·50·51·55·59·60·62·65·67·72·76·81·84·92·98·99·101·102·114·119·120] ➔ \n", + " >:[1·4·5·6·7·8·12·17·18·20·23·24·28·32·35·52·56·59·61·68·77·83·86·94·99·102·103·106·116·117·118·119]⚖[2·3·11·14·16·34·37·38·46·48·53·58·62·63·64·65·66·67·72·73·81·87·89·90·92·100·108·109·110·112·113·114] ➔ >:+1 =:+31 <:+16) \n", + " =:[4·15·20·22·24·36·85·91·101·103·104·106·116]⚖[3·9·29·32·33·65·67·70·74·75·79·93·107] ➔ >:+22 =:-109 <:+3) \n", + " <:[28·32·39·42·52·54·67·74·87·92]⚖[7·33·56·57·70·73·78·84·101·117] ➔ >:+32 =:+10 <:-87)) \n", + " <:[6·7·8·10·13·18·20·23·24·31·43·44·48·50·51·52·54·61·64·72·80·82·83·85·91·93·99·108·109·110·112·118·120]⚖[1·5·9·11·12·19·22·28·33·35·36·38·42·47·55·56·59·60·74·75·79·84·90·95·98·101·103·106·107·114·115·116·119] ➔ \n", + " >:[1·5·7·9·17·21·28·32·44·60·71·74·79·100·101]⚖[3·13·19·23·24·38·39·47·50·81·83·86·93·107·116] ➔ >:-107 =:-106 <:+24) \n", + " =:[3·16·24·28·30·38·40·41·53·54·55·60·65·67·68·80·84·89·94·97·99·103·106·109·113]⚖[6·8·11·12·23·26·31·32·34·39·43·47·56·62·63·66·71·75·77·79·98·100·107·114·118] ➔ >:+30 =:-81 <:-89) \n", + " <:[5·7·8·16·24·45·46·51·60·69·71·79·80·81·82·83·89·101·110]⚖[14·17·26·27·29·31·33·34·43·54·55·63·66·76·77·95·106·118·119] ➔ >:+5 =:-120 <:-83))) \n", + " <:[8·12·22·25·28·29·32·36·37·40·49·51·56·63·65·68·72·73·75·78·87·88·92·93·97·99·101·104·109·111·112·118]⚖[1·2·4·14·17·19·20·33·34·41·44·47·55·57·58·62·66·67·70·77·79·80·82·89·90·98·105·107·108·113·114·120] ➔ \n", + " >:[2·4·6·9·17·20·21·24·25·29·35·36·38·41·45·55·76·77·79·88·96·105·113·114]⚖[7·22·28·32·39·43·47·49·57·58·67·72·73·74·83·91·93·97·98·99·107·115·118·120] ➔ \n", + " >:[7·25·39·47·49·50·56·66·84·105]⚖[13·20·29·48·61·67·73·85·86·93] ➔ >:+25 =:-98 <:+29) \n", + " =:[6·12·13·32·35·39·41·55·66·89·96·105]⚖[5·8·16·38·40·43·74·75·82·93·95·113] ➔ >:+12 =:+37 <:+8) \n", + " <:[3·8·18·19·21·32·35·39·40·43·47·51·52·65·66·69·74·89·94·98·108·114]⚖[6·7·15·28·29·36·45·58·79·81·82·84·86·87·93·101·105·106·111·117·118·120] ➔ >:-105 =:-113 <:-114)) \n", + " =:[7·8·15·17·22·31·32·42·47·53·64·65·75·77·82·84·87·88·89·93·94·96·99·100·106·108·119]⚖[4·6·9·10·11·35·36·37·40·43·49·50·56·57·61·66·71·72·78·80·95·98·104·107·111·114·115] ➔ \n", + " >:[7·8·13·17·21·22·23·28·30·31·35·37·45·46·51·78·83·90·115·117·118]⚖[4·9·14·24·32·57·60·65·71·77·86·95·96·98·99·100·109·110·111·113·116] ➔ >:-95 =:+15 <:-115) \n", + " =:[2·8·14·18·23·25·36·44·46·70·84·98·110·112·114]⚖[6·16·27·51·54·57·62·64·74·86·87·92·94·111·115] ➔ >:-86 =:-116 <:+27) \n", + " <:[10·61·69·90·112·113·117]⚖[22·40·43·59·96·100·114] ➔ >:-100 =:+9 <:0)) \n", + " <:[4·7·12·16·19·22·23·40·46·48·49·56·58·61·63·68·69·74·79·80·83·85·86·87·89·92·95·104·111·112·120]⚖[3·9·10·11·17·20·26·27·28·29·35·36·45·50·51·52·53·66·67·71·73·76·81·93·98·99·102·103·107·108·117] ➔ \n", + " >:[2·4·24·26·32·35·46·50·53·57·62·70·71·72·81·86·87·89·90·103·106·109·111·112·118]⚖[14·19·22·30·31·33·42·45·54·59·61·67·69·74·79·83·92·93·96·98·100·105·110·113·116] ➔ >:-93 =:-99 <:+19) \n", + " =:[1·2·12·19·23·35·48·65·73·79·84·89·91·103·108·109]⚖[15·16·20·25·32·34·37·44·47·66·78·83·96·102·104·114] ➔ >:+2 =:-88 <:+34) \n", + " <:[7·14·17·22·31·45·52·54·59·71·73·76·97·104·114·119]⚖[4·12·19·25·35·39·43·46·48·60·61·63·80·101·102·110] ➔ >:+17 =:+20 <:-104)))) \n", + " =:[2·7·17·18·21·31·32·40·41·42·43·45·51·52·53·56·57·63·66·69·72·73·75·78·79·82·88·95·96·99·100·107·111·117]⚖[3·4·5·6·10·12·13·19·23·25·26·33·35·44·47·49·55·58·59·65·67·68·74·84·85·89·102·105·106·112·113·114·115·118] ➔ \n", + " >:[1·2·9·11·13·14·15·21·22·24·30·34·39·44·51·52·62·63·65·70·72·77·81·86·87·89·91·92·93·95·98·100·103·105·109·116]⚖[3·6·7·8·10·16·17·25·26·27·28·32·33·41·42·43·45·46·47·49·50·55·57·60·61·68·74·75·76·79·110·111·112·113·117·118] ➔ \n", + " >:[1·5·6·10·19·33·34·39·42·45·47·49·51·62·72·73·98·104·113·114·115·116·120]⚖[4·12·14·15·20·22·24·26·35·43·44·63·68·70·76·78·82·83·85·97·100·102·110] ➔ \n", + " >:[2·8·11·14·21·22·24·28·32·39·41·47·48·49·51·53·56·57·63·64·67·73·74·75·80·90·92·93·94·99·108·109·112·113·117·120]⚖[3·5·9·13·25·30·31·33·35·38·40·43·44·45·46·50·54·55·58·60·61·62·71·72·76·78·81·85·98·100·102·105·114·115·116·118] ➔ >:+51 =:-68 <:+72) \n", + " =:[6·13·15·22·41·42·55·69·73·86·91·98·100·102·105·116·118]⚖[3·9·10·38·50·51·53·54·71·72·74·94·99·101·107·109·111] ➔ >:-74 =:+52 <:-55) \n", + " <:[3·5·8·11·13·14·27·29·39·44·46·54·56·61·65·66·69·70·74·75·80·83·86·90·106·109·113·116·119·120]⚖[6·17·18·22·23·24·26·34·36·37·41·42·43·47·52·53·57·58·59·60·63·64·72·91·93·99·101·105·107·114] ➔ >:-47 =:-49 <:+63)) \n", + " =:[1·9·17·18·22·25·29·31·33·39·41·51·54·57·58·59·60·63·65·66·70·75·78·81·88·97·110·118]⚖[2·3·5·7·16·28·37·38·46·50·56·64·67·76·80·82·86·89·96·101·102·103·105·108·111·116·119·120] ➔ \n", + " >:[2·6·25·38·40·41·54·79·82·93·104·105]⚖[9·11·60·66·67·68·71·81·86·91·101·120] ➔ >:-67 =:+78 <:+66) \n", + " =:[22·29·43·48·53·82·98·104·119]⚖[3·20·36·37·51·57·61·69·115] ➔ >:+53 =:+73 <:+69) \n", + " <:[8·17·26·39·40·56·59·76·83·91·97·100·108]⚖[6·12·21·31·37·47·55·70·75·82·95·106·119] ➔ >:+56 =:-58 <:-59)) \n", + " <:[1·4·5·7·8·11·25·31·32·34·38·40·45·47·51·61·66·67·70·74·77·79·80·81·82·85·86·87·89·94·98·100·103·110·115·116·117·118·119]⚖[2·6·12·14·16·17·21·23·27·35·36·39·41·42·52·56·58·60·62·63·64·65·68·69·71·72·73·75·76·84·91·92·96·102·105·111·112·113·114] ➔ \n", + " >:[14·29·30·32·35·44·45·63·65·74·97]⚖[17·20·57·67·68·85·91·94·105·111·115] ➔ >:+45 =:+79 <:-65) \n", + " =:[4·7·17·37·41·44·46·50·51·57·77·83·92·100·110·114]⚖[2·20·21·22·23·27·40·52·53·59·60·62·70·97·99·113] ➔ >:+57 =:+43 <:-44) \n", + " <:[8·9·10·13·18·30·42·46·47·51·53·59·71·73·79·82·95·96·111·112·117]⚖[11·23·24·35·41·58·60·62·67·70·76·80·83·90·93·99·101·107·109·115·116] ➔ >:+42 =:+75 <:+41))) \n", + " =:[1·2·8·13·14·19·21·24·29·35·44·54·55·60·63·64·66·70·75·78·86·87·89·91·94·98·106·111·116·117·119·120]⚖[6·12·20·28·30·31·32·33·37·38·46·47·59·62·67·71·72·73·74·77·80·82·88·97·99·103·104·107·109·110·113·114] ➔ \n", + " >:[5·11·18·19·21·24·27·29·35·37·39·41·45·46·58·62·63·68·69·70·73·83·87·88·95·96·107·108·113·116·117·118·119·120]⚖[1·2·7·9·10·12·22·23·36·40·47·48·49·50·52·53·64·65·67·72·74·75·77·80·81·85·89·94·98·99·101·105·109·115] ➔ \n", + " >:[10·12·20·24·29·40·46·61·63·70·77·108·109]⚖[7·30·39·47·58·66·68·76·89·96·106·118·119] ➔ >:+70 =:-80 <:-77) \n", + " =:[12·32·54·55·69·71]⚖[3·31·34·81·93·113] ➔ >:+54 =:+60 <:-71) \n", + " <:[1·3·6·13·17·22·28·34·41·49·52·55·56·68·75·77·91·95·99·104·111·117]⚖[19·24·26·32·45·47·53·54·57·62·64·76·88·90·98·101·103·106·107·116·119·120] ➔ >:-62 =:-46 <:+64)) \n", + " =:[9·25·30·45·48·51·56·61·71·88·93·96·97·98·99·102·120]⚖[13·31·40·42·43·46·49·60·63·69·73·75·76·78·106·113·114] ➔ \n", + " >:[14·20·32·48·65·68·76·83·93·99·108·115·116]⚖[13·17·21·22·29·35·40·49·52·55·58·67·103] ➔ >:+48 =:+61 <:-76) \n", + " =:[15·48·50·51·69·83·89·108]⚖[6·23·29·32·100·105·110·120] ➔ >:+50 =:0 <:-50) \n", + " <:[6·18·20·22·29·40·43·46·72·73·79·81·102·105·113]⚖[12·25·38·57·60·61·65·69·75·76·83·87·88·93·104] ➔ >:-61 =:-48 <:+76)) \n", + " <:[3·5·7·10·12·21·23·25·31·34·43·45·47·48·49·53·54·55·57·59·63·69·79·80·81·82·85·89·93·95·98·102·103·104·105·113·115]⚖[8·13·18·32·38·39·40·41·42·44·50·52·56·61·62·64·65·66·70·71·73·75·76·83·88·92·96·101·107·108·109·110·111·114·116·117·120] ➔ \n", + " >:[11·16·17·21·28·33·43·51·53·55·58·70·79·80·84·86·87·96·106·107·109·117]⚖[5·8·12·15·19·23·24·44·61·63·67·71·74·78·81·90·94·100·114·115·116·120] ➔ >:+80 =:-64 <:-70) \n", + " =:[3·11·12·19·20·22·23·28·37·42·43·46·54·58·61·66·67·68·74·76·78·82·86·87·90·99·101·108·110·112·114·115]⚖[6·15·24·26·32·36·40·44·49·53·59·62·64·69·71·77·79·80·81·83·84·85·92·93·96·97·104·106·111·116·117·120] ➔ >:+46 =:-60 <:+77) \n", + " <:[15·20·25·35·51·67·71·81·95·96·109]⚖[12·18·53·62·73·76·80·91·92·115·120] ➔ >:+71 =:-54 <:+62))) \n", + " <:[1·2·3·11·12·14·16·18·20·25·28·30·32·35·41·44·45·50·53·55·56·60·67·75·76·77·80·83·85·87·88·90·98·102·107·108·111·119·120]⚖[4·6·7·10·13·15·21·23·24·26·29·36·37·42·43·47·48·52·57·59·62·64·65·74·78·79·82·89·91·95·96·99·103·105·112·113·114·115·118] ➔ \n", + " >:[1·6·9·13·14·16·23·26·46·48·54·57·62·67·68·69·71·75·78·85·92·95·97·100·101·104·113·115·117]⚖[3·5·7·8·11·15·22·25·34·35·37·38·43·49·52·55·59·70·77·80·82·84·86·87·99·116·118·119·120] ➔ \n", + " >:[4·11·13·19·21·25·29·34·41·43·44·45·46·57·62·63·67·86·90·97·98·100·104·105·120]⚖[1·10·14·28·30·35·38·39·48·51·54·59·60·68·71·76·78·81·84·85·91·96·113·114·115] ➔ >:+67 =:-52 <:-43) \n", + " =:[4·19·25·31·53·66·71·73·79·84·88]⚖[7·16·20·34·37·42·45·47·65·89·100] ➔ >:-42 =:+44 <:-79) \n", + " <:[1·9·11·19·31·32·34·41·51·56·57·63·64·66·67·69·71·84·85·92·100·112]⚖[6·12·16·30·42·50·52·58·62·72·76·78·80·81·88·93·105·106·107·109·110·114] ➔ >:-78 =:+55 <:-57)) \n", + " =:[2·6·9·10·12·15·16·20·23·25·31·38·42·43·45·46·48·51·53·54·57·58·68·73·75·78·83·90·93·98·99·102·106·109·114·117·118·119]⚖[3·5·8·11·14·17·18·19·21·26·28·30·32·34·35·36·40·49·60·61·67·71·72·76·80·81·82·86·87·91·96·101·110·111·112·113·115·120] ➔ \n", + " >:[4·9·18·19·30·32·34·36·41·56·57·67·68·72·86·93·94·104·107·114·117]⚖[7·15·17·22·25·31·44·46·48·54·60·62·63·76·77·85·97·98·100·101·106] ➔ >:+68 =:+58 <:-72) \n", + " =:[2·12·27·29·42·66·68·74·75·87·100·101·102·103·106·107·108·109·117·118]⚖[3·9·23·30·39·46·53·58·62·69·76·82·85·88·89·98·111·115·116·119] ➔ >:-69 =:-63 <:-66) \n", + " <:[11·12·27·31·37·38·39·44·46·54·55·67·71·72·73·75·78·79·81·86·88·96·97·101·103·105·106·116·117·118]⚖[4·7·17·20·21·26·29·30·35·51·52·59·60·63·66·69·80·84·87·90·92·95·99·102·104·109·111·112·113·119] ➔ >:-51 =:+49 <:-73)) \n", + " <:[3·4·11·15·18·25·26·27·29·36·38·45·49·53·54·59·60·65·66·77·78·85·87·98·99·105·113·115]⚖[2·8·9·14·17·20·23·30·39·43·47·51·61·63·70·71·75·81·90·91·92·97·101·104·106·112·117·118] ➔ \n", + " >:[4·12·21·26·28·32·36·37·38·43·48·50·52·57·61·65·66·67·68·69·75·76·81·82]⚖[1·8·19·22·29·30·39·40·42·53·56·58·72·87·94·97·98·100·104·107·109·113·117·118] ➔ >:+65 =:+59 <:-75) \n", + " =:[7·10·17·26·31·40·41·50·53·57·61·68·70·74·75·76·85·96·97·110·117]⚖[3·4·16·18·25·35·42·45·46·47·54·59·69·77·86·89·92·102·108·114·116] ➔ >:+74 =:-56 <:-41) \n", + " <:[3·19·29·35·38·39·43·46·48·49·55·60·73·74·95·109·114·118]⚖[10·13·15·16·40·42·45·47·58·62·64·75·82·85·89·111·112·115] ➔ >:-45 =:-53 <:+47)))) \n", + " <:[4·5·7·10·12·19·20·24·25·30·32·33·39·44·49·51·52·54·55·56·62·63·66·69·70·75·82·88·89·92·96·97·105·106·107·110·111·114·115·117]⚖[1·6·8·11·14·15·16·22·27·29·34·37·40·42·43·46·47·50·53·57·61·67·68·73·74·78·79·81·86·87·90·93·94·99·100·108·112·113·116·118] ➔ \n", + " >:[10·13·14·17·20·21·24·26·27·30·33·35·36·40·41·45·46·48·50·51·55·62·68·71·72·73·77·84·89·97·99·102·104·109·111·115·119]⚖[3·6·8·22·23·28·29·37·39·42·44·49·53·54·57·59·66·70·74·75·78·79·81·82·83·86·90·96·98·101·103·105·107·110·114·116·120] ➔ \n", + " >:[6·7·19·25·39·45·46·47·48·55·57·60·62·66·70·75·80·88·90·93·99·100·103·106·108·111·114·118]⚖[3·5·8·9·12·13·17·21·26·27·29·33·49·52·63·68·72·81·87·97·98·105·107·109·115·116·117·120] ➔ \n", + " >:[4·7·8·18·26·30·43·48·53·64·66·74·79·81·84·90·109·111·112]⚖[9·20·28·33·39·52·56·80·82·83·85·89·91·95·100·107·114·118·120] ➔ >:+111 =:-29 <:-8) \n", + " =:[7·9·11·15·21·22·23·32·42·45·50·52·53·54·60·77·78·87·103·105·109·111·114]⚖[1·3·8·10·14·16·24·26·30·31·35·36·37·41·44·62·67·72·80·91·93·99·118] ➔ >:-37 =:+89 <:-22) \n", + " <:[2·6·8·11·13·16·21·22·33·34·37·40·42·44·45·48·49·51·52·56·57·58·61·64·66·67·77·84·86·87·94·101·105·111·113·114·115·119·120]⚖[7·9·18·23·25·28·31·32·35·41·43·46·50·53·55·59·65·68·70·72·75·76·78·80·81·83·85·89·92·100·102·103·104·106·108·109·116·117·118] ➔ >:+115 =:+97 <:-6)) \n", + " =:[8·9·14·15·16·19·20·23·27·37·44·47·48·50·59·60·61·69·78·80·82·83·84·89·90·94·97·99·100·106·108·117·118·119]⚖[1·2·4·13·18·21·30·32·33·35·36·38·39·40·43·52·56·57·62·65·67·71·79·81·85·88·93·96·101·103·104·105·111·116] ➔ \n", + " >:[35·40·45·49·57·63·91·106]⚖[8·29·46·54·55·72·76·117] ➔ >:+106 =:-1 <:+117) \n", + " =:[5·8·11·12·13·16·26·28·42·43·54·56·58·69·74·76·77·91·97·101·105·107·115·118]⚖[1·3·10·14·15·21·23·24·33·34·38·40·45·48·49·55·70·71·73·90·93·99·100·110] ➔ >:-34 =:+92 <:-11) \n", + " <:[11·14·15·54·64·81·91]⚖[16·19·44·92·109·116·118] ➔ >:-16 =:+88 <:-15)) \n", + " <:[7·15·16·22·27·30·36·37·38·39·42·43·46·50·51·52·54·56·58·60·64·70·72·75·76·77·78·80·82·88·89·91·93·94·99·100·101·102·103·105]⚖[1·2·4·6·8·10·11·13·14·17·18·21·23·24·28·29·41·45·47·53·55·61·62·66·67·68·71·84·85·90·92·96·108·109·111·113·114·116·119·120] ➔ \n", + " >:[10·14·26·31·41·51·62·63·93·105·114]⚖[9·13·55·61·79·90·92·94·115·116·120] ➔ >:+105 =:+82 <:-14) \n", + " =:[10·15·18·25·26·34·35·39·40·42·43·46·47·53·58·59·61·62·66·67·70·79·80·89·96·99·101·110·120]⚖[3·6·8·9·11·13·23·28·29·32·50·60·69·74·76·78·82·84·85·87·92·93·95·102·108·109·111·113·119] ➔ >:+110 =:+107 <:-40) \n", + " <:[7·11·13·23·27·40·41·45·46·53·55·56·58·62·71·76·83·88·95·101·109·114·115·117]⚖[2·8·20·28·29·34·42·47·50·54·59·64·66·68·69·74·75·79·91·93·94·102·103·106] ➔ >:+114 =:+96 <:-27))) \n", + " =:[5·6·10·13·19·20·23·26·28·37·41·46·48·52·53·57·58·61·62·64·66·67·68·70·71·72·73·78·83·94·96·99·105·107·108·109·117·118·120]⚖[1·3·7·9·12·18·21·25·27·29·30·31·32·34·38·42·43·44·47·49·54·55·56·60·75·76·79·81·85·86·88·92·98·100·102·103·104·106·115] ➔ \n", + " >:[3·6·12·16·21·22·24·25·27·31·33·46·66·67·76·79·84·87·89·92·94·110·112·120]⚖[15·18·23·26·38·39·42·44·45·47·52·53·56·57·62·64·71·90·93·96·99·105·108·118] ➔ \n", + " >:[9·22·23·27·28·30·40·43·44·45·49·55·57·58·60·65·74·80·83·84·98·101·106·113·117·119]⚖[13·16·20·21·25·32·33·38·41·51·53·61·68·69·70·72·82·94·95·96·99·108·109·110·112·120] ➔ >:-38 =:-18 <:+120) \n", + " =:[2·9·11·22·43·47·58·83·103·110·111·114]⚖[3·4·6·35·45·60·78·89·91·92·106·118] ➔ >:+83 =:+109 <:-9) \n", + " <:[3·5·6·20·23·26·36·39·40·41·63·76·77·78·82·83·97·103·104·108]⚖[21·25·33·34·38·54·58·59·60·62·67·72·90·92·94·98·109·113·114·119] ➔ >:-21 =:-31 <:-3)) \n", + " =:[2·4·6·8·9·12·14·16·20·23·31·33·34·45·46·47·48·51·55·58·60·64·68·71·76·77·81·82·83·86·89·100·101·108·115·118·119]⚖[5·10·13·17·25·26·27·28·38·42·44·52·53·61·62·63·65·66·70·73·79·87·91·93·94·95·96·97·98·102·103·105·106·112·114·117·120] ➔ \n", + " >:[3·10·12·25·28·65·69·80·81·90·101·108·109·112]⚖[19·23·34·39·40·60·63·76·77·94·100·102·114·119] ➔ >:+101 =:-17 <:+119) \n", + " =:[7·17·19·20·25·28·34·37·38·46·48·51·54·57·60·62·70·71·76·90·93·95·97·98·105·118·120]⚖[1·2·6·9·27·29·35·45·50·53·58·65·69·73·79·83·84·85·87·88·91·94·96·111·115·117·119] ➔ >:-35 =:-36 <:+84) \n", + " <:[28·51·60·61·95·99·103·108·115]⚖[31·38·62·64·69·91·94·96·97] ➔ >:+95 =:-2 <:+91)) \n", + " <:[2·6·14·17·21·23·25·26·27·29·31·43·44·49·59·64·71·74·88·90·95·100·103·104·106·116·119]⚖[5·7·8·16·18·19·28·34·37·38·45·48·57·67·73·76·77·78·86·89·91·93·97·98·99·113·114] ➔ \n", + " >:[8·13·14·15·16·18·23·25·27·37·43·44·49·52·56·61·64·67·69·71·74·77·81·86·87·93·100·101·102·104·108·109·116]⚖[3·5·12·17·19·22·24·30·34·35·38·40·48·50·51·54·55·58·59·63·65·66·84·90·91·95·97·99·103·111·114·117·118] ➔ >:+104 =:-28 <:+103) \n", + " =:[6·8·9·11·25·36·39·41·57·62·77·95·96·99·103·118]⚖[1·12·13·26·35·43·49·53·72·76·85·92·104·105·114·116] ➔ >:-13 =:+102 <:+85) \n", + " <:[6·17·24·25·33·40·42·44·50·56·57·62·63·64·67·68·71·76·80·91·94·99·101·112·113·114·115·117·119·120]⚖[4·8·15·21·22·23·35·36·38·45·47·60·69·72·74·83·86·87·88·89·93·95·98·103·104·105·108·109·111·116] ➔ >:-23 =:-26 <:+98))) \n", + " <:[3·4·8·11·15·21·22·23·25·33·41·44·46·47·51·55·57·59·61·62·64·68·70·72·77·81·85·90·91·92·95·96·97·100·103·116·117·119·120]⚖[2·7·10·18·27·28·29·31·32·36·37·38·39·40·42·45·48·52·54·58·60·71·73·75·82·83·84·86·87·89·98·99·104·105·107·108·109·112·113] ➔ \n", + " >:[1·11·14·15·17·18·20·21·24·28·38·39·40·42·60·62·68·72·84·88·94·100·101·114·116·118]⚖[2·3·5·8·26·35·47·52·53·54·55·57·67·69·70·73·79·81·90·92·98·99·105·107·115·117] ➔ \n", + " >:[2·11·31·67·89·118]⚖[20·37·41·74·90·100] ➔ >:0 =:+116 <:+100) \n", + " =:[10·29·39·66·68·74·76]⚖[25·32·61·65·85·90·112] ➔ >:-32 =:-7 <:-10) \n", + " <:[1·2·7·16·17·24·31·36·45·47·49·54·56·59·69·73·75·79·80·86·93·103·106·111·120]⚖[4·9·14·19·25·29·32·33·37·38·39·52·60·61·62·65·81·88·89·91·101·108·109·115·119] ➔ >:-39 =:+90 <:+81)) \n", + " =:[4·9·13·15·18·21·30·32·36·39·40·42·46·50·52·57·58·60·61·63·69·73·75·76·79·80·82·84·91·98·99·102·110·111·114·116]⚖[2·3·5·7·12·16·22·24·25·28·29·35·41·43·45·47·49·51·54·55·64·67·70·71·81·83·88·94·95·97·100·101·105·115·118·120] ➔ \n", + " >:[3·11·14·24·27·46·49·53·55·56·60·68·75·79·90·114·116·119]⚖[4·9·12·13·18·41·47·61·65·80·88·92·98·99·102·106·109·117] ➔ >:-12 =:-5 <:-24) \n", + " =:[1·2·10·11·13·15·20·23·27·29·33·34·39·46·54·58·61·69·74·78·79·82·83·84·90·91·99·100·101·105·111·118]⚖[3·4·5·6·7·19·21·22·26·28·30·31·35·37·41·45·47·49·67·72·76·77·80·86·95·103·104·108·109·114·117·120] ➔ >:-19 =:+93 <:-20) \n", + " <:[2·4·5·7·30·35·41·44·50·61·63·66·67·71·73·84·94·95]⚖[1·9·19·21·25·48·49·57·68·70·79·88·97·100·104·107·109·117] ➔ >:+94 =:+118 <:-30)) \n", + " <:[3·16·17·19·23·25·27·34·37·39·41·43·46·48·51·54·55·56·62·67·71·75·81·82·85·87·95·109·111·112·113]⚖[2·6·9·12·15·18·24·30·38·40·42·57·60·65·68·69·73·76·84·86·89·92·94·99·100·103·104·107·110·116·119] ➔ \n", + " >:[2·16·24·33·41·45·47·57·65·72·89·94·102·104·108·110·112·117]⚖[7·13·14·27·36·38·40·43·55·60·68·69·83·85·87·100·106·115] ➔ >:+112 =:+113 <:+87) \n", + " =:[15·34·40·43·44·55·58·63·68·94·95·100·118]⚖[3·8·17·33·42·62·65·83·86·88·106·108·114] ➔ >:-33 =:-4 <:+108) \n", + " <:[1·3·6·23·26·30·43·48·54·71·72·74·76·79·83·85·89·93·95·102·105·107·113]⚖[5·13·15·16·21·24·25·39·46·51·53·59·63·64·67·68·78·81·86·103·111·114·120] ➔ >:-25 =:+99 <:+86)))))\n" ] } ], @@ -1110,14 +1360,14 @@ "cell_type": "markdown", "metadata": {}, "source": [ - "That works (although the output is not easy to read).\n", + "That works.\n", "\n", - "Or, I could solve a puzzle with 243 possibilites—242 lighter-only balls, plus the possibility that no ball is lighter:" + "Or, I could solve a puzzle with 243 possibilites (the maximum possible with 5 weighings): 242 lighter-only balls, plus the possibility that no ball is odd:" ] }, { "cell_type": "code", - "execution_count": 31, + "execution_count": 41, "metadata": { "scrolled": false }, @@ -1126,127 +1376,127 @@ "name": "stdout", "output_type": "stream", "text": [ - "[1·2·3·4·5·6·7·8·9·10·11·12·13·14·15·16·17·18·19·20·21·22·23·24·25·26·27·28·29·30·31·32·33·34·35·36·37·38·39·40·41·42·43·44·45·46·47·48·49·50·51·52·53·54·55·56·57·58·59·60·61·62·63·64·65·66·67·68·69·70·71·72·73·74·75·76·77·78·79·80·81 ⚖ 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", - " >:[3·6·12·16·22·23·24·25·29·33·39·40·42·43·44·45·51·52·54·66·68·70·78·80·81·87·89·90·92·94·97·99·101·103·107·110·112·113·120·125·127·137·141·144·146·152·155·157·158·165·166·169·173·174·175·176·180·183·184·192·193·194·197·201·212·213·216·217·218·224·228·229·230·235·237·240 ⚖ 2·7·9·13·19·20·21·26·30·31·32·38·41·48·49·53·56·58·64·67·69·71·74·75·76·77·82·84·86·88·95·100·105·109·111·114·115·116·126·128·129·133·134·139·142·145·147·148·149·162·163·172·177·178·179·182·190·191·206·207·209·210·211·214·220·221·222·223·225·226·233·234·238·239·241·242] ➔ \n", - " >:[1·8·10·11·18·19·21·30·34·37·41·46·55·56·57·59·61·65·66·70·71·73·74·81·83·85·93·97·113·116·120·121·123·125·126·135·136·137·141·149·150·154·155·166·169·174·177·178·179·180·184·185·191·192·193·202·207·211·212·213·218·219·224·225·233·242 ⚖ 2·6·15·20·23·24·27·31·33·40·43·44·45·48·52·58·60·67·68·69·75·86·88·89·90·95·99·103·108·112·114·118·122·128·129·131·132·134·138·151·156·159·162·163·164·168·172·175·182·183·187·190·195·196·197·198·199·203·204·215·220·223·226·232·238·240] ➔ \n", - " >:[3·11·13·15·28·31·34·35·39·42·43·44·57·60·64·65·66·68·70·77·82·91·94·95·96·102·105·109·112·113·116·118·129·130·133·137·147·160·161·170·171·197·203·211·212·213·214·219·220·223·226·233·235 ⚖ 7·23·24·27·33·37·38·52·58·62·74·81·84·85·86·90·100·101·104·106·107·111·119·123·124·128·138·144·148·154·158·159·165·167·168·172·174·176·179·180·182·184·186·189·192·194·198·199·200·204·206·238·239] ➔ \n", - " >:[2·4·5·15·16·26·27·29·33·38·45·56·58·59·66·70·75·77·78·79·81·83·84·88·91·93·97·98·102·103·104·106·108·113·116·118·135·138·140·142·146·149·151·155·158·171·180·182·183·187·196·203·216·224·239 ⚖ 1·3·9·10·11·20·21·28·34·36·42·44·51·54·57·60·76·82·87·94·95·96·115·122·128·129·130·134·137·143·148·150·156·159·160·163·165·168·170·176·178·181·186·189·190·202·206·208·209·211·218·220·225·235·238] ➔ >:-238 =:-172 <:-182) \n", - " =:[7·13·18·27·31·32·37·46·47·48·49·51·65·77·81·83·84·85·92·97·108·110·119·120·123·124·130·134·136·142·151·152·156·160·161·162·166·167·171·172·184·188·214·220·223·226·230·240 ⚖ 2·3·5·15·21·23·26·30·34·38·40·41·54·56·57·58·62·79·86·90·98·100·106·109·115·116·129·131·137·139·150·157·164·169·174·178·181·183·186·190·193·198·200·201·204·207·225·229] ➔ >:-190 =:-163 <:-162) \n", - " <:[3·16·24·27·32·39·40·41·48·49·52·58·60·64·67·70·74·84·87·91·94·96·98·103·113·117·130·132·147·151·158·162·163·167·172·179·185·186·190·204·205·209·213·219·223·242 ⚖ 7·13·14·25·26·30·31·35·44·55·57·66·82·90·93·115·118·120·121·125·131·133·154·155·159·165·176·178·183·193·194·195·198·199·201·202·208·216·220·222·227·229·235·239·240·241] ➔ >:-220 =:-226 <:-223)) \n", - " =:[1·7·8·11·23·25·27·32·35·64·65·70·72·80·81·86·88·89·102·105·106·108·113·123·140·145·146·160·162·170·171·174·177·178·190·193·203·204·214·218·225·230·234·240·241 ⚖ 2·9·17·21·22·28·37·40·50·52·56·62·63·67·77·83·87·95·96·97·101·112·115·117·119·122·125·126·129·136·143·151·153·156·159·163·164·168·189·191·206·219·222·237·239] ➔ \n", - " >:[3·5·12·21·23·27·29·36·37·47·59·61·70·82·87·89·91·95·96·101·102·103·104·113·114·117·133·137·139·141·142·149·152·156·157·162·164·172·175·186·189·193·196·198·201·205·211·212·215·216·219·227·228·231·239·242 ⚖ 6·7·28·31·33·42·52·55·57·64·67·68·72·73·75·77·79·80·83·84·85·86·98·99·109·115·119·125·128·130·131·145·160·167·169·174·181·182·184·185·187·190·192·200·202·203·206·210·223·224·229·230·233·235·236·241] ➔ >:-206 =:-222 <:-239) \n", - " =:[3·4·6·22·28·32·34·36·40·44·47·59·62·63·64·65·66·68·75·80·88·95·99·100·101·107·110·112·113·117·118·122·123·125·130·136·144·150·153·155·159·162·168·174·177·178·182·185·191·199·200·201·203·209·216·231·233·235·242 ⚖ 9·11·13·14·16·17·18·30·35·37·42·43·48·56·57·60·67·76·79·89·91·97·102·105·109·114·116·121·124·127·128·131·138·139·141·143·151·152·158·163·169·171·175·176·183·186·204·205·214·215·217·219·221·222·223·224·232·236·240] ➔ >:-221 =:-210 <:-209) \n", - " <:[5·27·30·43·46·56·64·78·96·103·106·113·121·135·179·182·183·190·214·216·222·224·231 ⚖ 1·13·36·38·49·57·65·66·74·77·84·102·117·124·134·186·203·209·225·234·236·238·242] ➔ >:-234 =:-241 <:-214)) \n", - " <:[9·18·22·28·29·30·32·38·43·53·54·68·74·82·84·92·93·104·108·110·111·119·120·136·142·144·149·157·170·171·176·177·180·183·191·226·233·238·240 ⚖ 1·2·4·8·12·14·17·34·37·41·57·60·69·70·75·83·94·100·129·133·135·150·151·152·155·156·162·164·165·178·186·194·207·208·211·221·222·228·229] ➔ \n", - " >:[8·10·12·20·24·29·31·32·38·39·41·43·48·51·60·61·63·65·78·80·82·84·90·93·94·98·112·113·118·122·128·131·137·140·141·155·156·157·159·160·162·163·180·184·186·187·193·195·197·199·204·207·213·215·225·226·231·235·241 ⚖ 5·6·21·23·25·26·45·50·53·56·58·59·62·66·74·75·77·81·85·87·89·92·95·104·106·109·110·115·124·126·135·139·143·148·152·153·161·170·171·172·174·176·177·181·185·192·194·198·200·205·211·216·218·221·222·223·227·240·242] ➔ >:-211 =:-178 <:-207) \n", - " =:[7·11·12·16·17·24·25·27·31·32·38·44·50·53·54·55·60·61·65·72·75·81·84·88·91·92·96·97·100·103·105·106·107·111·115·118·122·125·126·132·137·144·148·156·160·161·163·164·169·170·175·176·177·178·187·188·191·200·201·204·205·211·212·218·220·225·228·232·239 ⚖ 4·9·15·18·19·20·22·23·29·30·33·35·39·41·56·57·66·69·71·73·74·76·79·82·86·94·99·102·104·109·112·113·114·120·128·130·134·139·140·147·149·150·152·154·159·162·167·173·179·180·185·186·192·194·195·198·199·202·203·207·208·210·215·219·223·224·231·238·241] ➔ >:-179 =:-242 <:-225) \n", - " <:[4·29·33·43·55·56·57·67·71·73·74·81·93·113·132·150·152·158·164·167·179·194·204·213·215·221·229·233·240 ⚖ 5·6·26·45·47·58·59·63·91·106·131·134·135·141·142·144·156·157·160·171·178·184·185·189·191·199·217·231·239] ➔ >:-191 =:-177 <:-233))) \n", - " =:[3·8·9·11·13·16·17·18·22·26·27·29·34·36·37·41·44·46·51·58·71·77·81·83·84·87·93·99·101·103·104·107·110·112·115·116·117·120·121·122·123·125·128·130·135·137·139·142·151·152·154·162·164·175·177·178·181·183·186·187·188·189·190·192·196·210·214·216·217·219·220·222·225·226·229·231·242 ⚖ 1·4·5·6·10·12·15·19·21·24·25·31·32·40·43·45·47·48·52·54·57·59·62·64·66·67·68·72·82·85·90·91·97·98·105·109·129·132·134·138·140·141·143·145·146·148·153·155·160·165·170·173·180·182·184·193·194·195·197·199·200·201·203·204·208·213·218·224·227·228·232·233·234·237·238·239·240] ➔ \n", - " >:[3·5·6·10·15·16·18·20·21·24·27·32·33·36·38·44·46·48·53·57·60·61·62·67·72·73·77·78·79·81·83·87·91·92·93·98·101·103·104·105·108·110·112·121·122·127·132·140·143·144·148·151·154·155·159·160·162·168·169·173·176·177·178·181·182·183·184·190·193·194·196·197·200·201·204·208·211·229·236·239 ⚖ 1·2·4·8·14·26·28·29·30·40·41·45·47·51·54·58·66·68·70·71·74·76·80·82·88·90·96·97·100·106·109·113·114·117·118·119·124·128·131·133·134·135·136·137·141·142·146·147·149·150·152·156·157·163·165·166·167·174·180·185·186·187·191·195·199·209·210·212·215·217·221·223·224·226·227·231·234·235·237·242] ➔ \n", - " >:[2·6·8·11·14·18·21·23·24·25·26·27·28·29·30·35·38·43·50·52·53·61·68·73·81·83·84·86·89·91·99·101·102·108·116·123·124·125·130·134·135·136·142·146·147·148·149·154·156·171·172·173·177·179·182·185·187·192·194·195·201·202·203·204·206·212·217·224·226·229·230·231·234·235·237·238·240·241·242 ⚖ 7·10·17·19·32·33·39·41·42·44·45·46·47·48·51·55·56·57·58·59·63·67·74·77·78·82·88·90·96·98·104·105·106·107·110·113·117·118·121·122·127·128·129·132·140·141·143·144·145·153·155·157·158·160·161·163·164·168·169·176·178·180·183·188·189·190·197·199·200·205·208·209·210·211·215·218·219·220·232] ➔ >:-199 =:-227 <:-195) \n", - " =:[5·6·12·22·25·29·48·54·61·63·67·80·87·88·96·103·144·156·161·163·164·176·181·182·186·191·195·199·200·203·205·208·209·219·231·234 ⚖ 7·23·24·30·31·38·40·43·75·77·82·83·86·104·106·109·113·117·124·126·127·132·134·139·146·148·157·166·172·179·183·185·193·215·232·241] ➔ >:-232 =:-170 <:-203) \n", - " <:[2·4·7·9·12·14·22·26·31·32·34·37·39·40·52·56·57·58·62·64·70·73·79·80·94·100·111·112·113·116·123·124·130·131·133·141·142·145·152·153·157·160·163·170·172·175·177·181·182·184·186·190·192·194·204·210·212·216·219·236·240·242 ⚖ 8·15·16·17·20·24·25·30·33·38·42·49·50·55·59·84·85·86·88·89·90·91·93·95·96·99·102·106·109·110·117·121·125·137·138·140·146·147·148·151·154·167·168·169·171·173·178·179·180·185·196·205·208·209·213·217·220·227·232·233·234·238] ➔ >:-208 =:-200 <:-204)) \n", - " =:[1·4·7·8·10·14·15·16·17·18·19·24·26·27·28·32·39·48·55·61·63·66·68·69·74·81·84·85·88·89·94·100·102·105·106·109·114·115·118·119·132·135·136·138·139·140·141·142·145·147·149·150·153·154·155·158·162·163·166·168·170·177·179·183·184·186·188·189·191·192·194·204·208·213·215·229·231·235·236·238 ⚖ 2·11·13·20·21·29·30·31·35·37·41·43·45·49·50·52·53·59·62·64·67·73·75·76·77·79·80·90·96·97·98·107·108·110·111·112·116·122·124·126·127·129·130·133·144·146·156·159·160·164·165·167·173·174·175·176·180·185·187·190·193·195·201·203·205·211·216·220·223·225·226·227·228·230·233·234·237·239·240·242] ➔ \n", - " >:[2·9·12·17·22·24·28·30·36·37·42·43·45·53·56·57·61·62·68·69·73·74·77·79·80·83·98·105·115·119·120·122·124·126·132·136·141·144·152·153·167·169·172·175·178·179·180·182·186·191·195·196·197·203·210·219·222·226·228·230·233·239·240 ⚖ 4·11·13·16·21·25·40·41·47·49·50·60·63·64·67·75·76·84·85·87·89·90·91·95·97·106·108·109·110·112·123·125·129·131·133·142·147·149·150·151·154·156·161·162·163·168·170·184·187·189·199·205·207·213·217·221·229·231·232·236·238·241·242] ➔ >:-205 =:-185 <:-167) \n", - " =:[11·23·25·30·39·47·48·51·59·61·63·72·75·83·92·102·111·112·115·116·125·131·136·137·144·148·152·161·168·171·172·176·186·194·195·201·204·208·211·221·229·230·231·235·238·240·241 ⚖ 5·9·13·18·20·24·29·31·41·43·44·46·49·50·64·74·79·81·93·101·103·105·109·120·121·129·130·134·135·143·145·153·156·157·162·164·180·187·191·197·198·199·206·209·219·220·242] ➔ >:-198 =:-202 <:-171) \n", - " <:[3·44·73·85·87·94·95·104·117·128·145·195·203·218·221·236·241 ⚖ 33·43·50·60·66·69·72·80·109·120·138·168·187·193·194·207·220] ➔ >:-168 =:-215 <:-236)) \n", - " <:[1·2·5·7·12·13·15·20·23·27·28·35·39·41·44·49·50·53·55·56·57·59·61·63·71·74·79·84·85·89·91·92·101·107·108·111·113·118·119·121·123·127·128·130·133·134·144·145·150·152·160·165·166·173·177·181·188·191·203·213·214·215·216·221·227·231·232·234·238·239·240·242 ⚖ 8·14·19·21·24·25·29·30·42·43·45·46·52·58·64·65·66·68·70·76·77·78·87·90·93·94·98·99·100·103·110·112·114·117·122·124·125·136·137·138·141·143·146·147·148·149·157·158·163·164·169·171·172·174·175·178·182·183·185·186·187·193·202·205·223·225·226·228·229·230·235·236] ➔ \n", - " >:[6·14·16·17·19·23·33·37·38·39·43·49·53·57·59·70·79·80·83·85·86·87·106·109·112·116·119·124·125·127·132·138·150·151·152·153·163·179·186·192·195·199·204·207·229·233·234 ⚖ 2·7·11·13·20·24·27·30·47·48·50·51·58·66·72·74·76·77·81·88·90·91·100·102·103·105·118·130·133·156·158·160·161·164·171·181·185·188·193·198·211·213·222·231·237·238·242] ➔ >:-164 =:-187 <:-186) \n", - " =:[2·3·9·10·13·15·16·17·22·23·27·28·33·35·38·40·43·44·48·50·51·56·60·61·66·70·72·74·78·80·85·91·92·98·103·105·107·109·112·113·118·121·125·126·127·129·130·131·146·147·148·156·157·158·159·163·166·168·172·180·181·184·188·192·194·198·203·205·207·211·216·219·221·222·225·227·228·229·233·236 ⚖ 4·6·8·11·12·18·20·24·26·36·41·46·49·52·53·54·59·62·63·65·67·71·73·75·77·79·81·82·86·88·93·94·95·96·97·100·101·102·116·122·123·132·133·136·139·140·144·149·150·151·152·153·155·161·165·167·169·173·183·185·186·187·189·200·202·204·209·210·213·214·217·223·226·230·231·237·239·240·241·242] ➔ >:-189 =:-196 <:-219) \n", - " <:[2·3·4·7·9·12·16·18·20·22·25·31·32·35·43·48·56·59·60·63·68·70·72·76·79·80·85·87·94·98·100·105·106·109·121·123·124·125·126·128·129·132·134·138·142·143·148·150·151·153·155·168·169·180·183·187·191·192·196·199·203·204·207·222·224·228·231·232·239 ⚖ 1·10·11·14·17·37·38·40·42·44·45·46·50·53·55·58·65·69·71·75·77·78·84·86·89·90·92·99·101·103·108·111·113·114·115·118·127·131·137·141·144·149·152·159·162·170·171·173·175·176·177·179·181·182·186·189·197·206·208·213·214·215·217·218·221·223·226·235·240] ➔ >:-181 =:-188 <:-231))) \n", - " <:[5·9·12·13·14·17·18·24·35·40·43·49·51·56·57·59·61·65·67·68·70·72·74·76·80·83·88·91·92·93·94·95·96·98·108·110·111·117·120·129·133·137·140·153·158·160·162·171·173·174·177·178·179·184·186·189·190·191·194·196·198·201·202·204·205·211·217·221·222·224·227·228·231·234·237·242 ⚖ 3·4·6·8·15·25·26·28·31·32·33·34·38·39·41·42·45·46·52·53·58·63·64·71·75·77·79·81·82·85·86·89·90·97·100·101·104·105·106·109·112·116·118·125·127·128·134·139·142·143·145·148·149·154·156·163·165·169·180·182·187·195·199·207·209·210·213·218·220·225·226·229·230·233·235·240] ➔ \n", - " >:[6·9·14·31·32·34·37·43·47·58·60·64·67·68·69·72·76·77·83·84·85·86·92·94·95·99·103·105·109·114·115·118·132·133·136·141·150·163·168·172·173·176·177·178·179·180·181·182·185·192·193·197·198·200·203·204·218·219·223·229·232·234 ⚖ 1·2·7·10·29·44·46·49·52·57·61·65·71·73·78·82·88·89·91·93·96·102·104·106·120·122·125·126·127·128·131·137·140·143·147·149·162·164·169·174·183·184·194·196·199·202·205·206·209·210·211·214·216·217·222·228·230·235·236·237·238·242] ➔ \n", - " >:[3·5·12·16·18·22·23·25·33·35·41·43·50·53·56·57·58·60·61·64·65·66·70·71·73·74·75·76·77·80·84·85·86·91·99·101·103·107·108·115·116·123·126·128·129·133·134·135·140·142·143·149·151·154·157·158·160·163·166·168·174·176·177·178·185·191·192·194·195·209·210·211·212·222·224·225·230·233·238·240 ⚖ 4·6·7·8·9·14·19·21·26·29·34·36·40·44·52·54·68·72·79·81·82·88·89·90·94·97·100·102·106·109·110·111·113·119·121·124·125·130·136·137·138·139·146·153·155·159·161·162·165·167·169·171·172·175·179·182·183·184·187·188·189·199·201·205·206·207·208·214·215·217·219·220·223·226·227·229·231·234·239·241] ➔ >:-169 =:-235 <:-230) \n", - " =:[1·3·10·12·15·18·21·28·36·45·53·57·61·63·64·81·84·90·93·100·107·111·113·118·121·127·130·137·149·151·152·164·168·179·181·183·184·189·198·215·217·218·221·224·226·238·240 ⚖ 2·11·19·22·26·39·42·44·52·58·67·69·77·82·85·94·103·114·116·123·126·128·131·134·143·150·154·157·159·161·162·172·173·175·176·177·185·193·199·203·206·211·213·220·228·235·239] ➔ >:-213 =:-165 <:-240) \n", - " <:[2·15·18·19·21·32·36·40·47·66·70·72·79·88·93·100·104·106·114·117·120·121·126·131·132·135·137·145·146·150·154·156·160·164·170·171·178·186·195·196·197·206·211·214·217·218·221·224·233·238·240 ⚖ 4·10·11·16·26·30·33·34·35·43·44·45·52·56·58·60·61·67·69·71·74·77·78·81·84·105·109·119·123·127·134·136·142·151·153·157·165·180·182·183·191·192·193·194·200·201·204·226·234·236·237] ➔ >:-180 =:-229 <:-218)) \n", - " =:[1·5·6·11·13·20·21·26·30·35·38·40·43·45·48·50·51·52·53·54·56·62·64·66·67·70·72·73·76·78·81·84·87·89·95·97·116·118·121·122·124·125·127·129·134·139·142·143·145·149·150·154·155·165·168·170·177·178·192·193·197·201·206·210·213·218·223·225·227·228·229·235·236·239 ⚖ 4·14·15·17·18·22·24·25·27·29·32·41·42·46·55·58·61·63·65·69·71·74·77·82·83·91·92·94·100·102·104·108·111·112·119·123·140·144·148·151·161·163·164·167·169·173·175·179·180·182·183·184·186·187·191·195·198·202·203·205·207·211·214·215·216·217·219·222·226·230·232·237·240·241] ➔ \n", - " >:[3·4·6·8·24·30·34·43·69·71·79·95·110·116·125·133·135·147·148·150·151·153·155·159·169·173·179·180·185·204·205·206·210·216·218·220·230·238 ⚖ 1·2·10·17·22·32·33·42·50·55·60·63·80·88·103·106·115·123·126·134·143·149·152·154·158·164·170·175·194·196·207·222·224·228·229·237·239·242] ➔ >:-175 =:-183 <:-216) \n", - " =:[1·4·15·16·23·26·27·39·41·43·45·47·48·49·51·52·53·54·55·58·59·60·64·68·71·73·74·80·86·88·91·93·99·101·111·112·116·119·126·130·135·136·139·140·144·152·154·156·161·162·165·171·174·176·182·183·185·191·193·194·199·210·211·220·221·223·226·229·232·233·238·239·241·242 ⚖ 6·7·8·17·18·19·24·29·31·32·33·36·37·42·46·56·57·62·65·67·75·77·78·83·84·90·94·97·98·102·109·110·118·121·122·124·128·132·133·134·138·142·143·148·149·150·151·157·158·159·160·166·167·170·172·178·184·186·189·190·195·197·198·201·203·207·209·214·219·225·228·235·236·237] ➔ >:-166 =:-212 <:-176) \n", - " <:[1·3·4·8·16·20·21·23·30·32·35·36·37·44·48·49·57·58·70·71·72·73·74·76·77·82·84·87·89·93·105·106·108·109·113·114·121·123·128·131·135·143·144·146·157·160·169·173·175·177·178·182·187·191·193·194·195·196·199·201·205·207·209·213·215·227·228·229·235·236·238 ⚖ 2·7·13·14·15·19·27·31·33·34·42·45·46·51·61·62·66·68·69·85·90·94·95·96·97·99·102·103·104·115·116·117·119·120·127·129·134·139·141·145·148·149·150·151·153·158·159·166·167·168·181·183·184·185·188·189·190·192·198·202·210·211·214·216·217·219·223·225·234·239·242] ➔ >:-192 =:-197 <:-193)) \n", - " <:[1·2·7·12·14·18·19·21·28·29·30·38·40·42·48·59·63·67·68·69·71·76·81·87·88·92·98·100·102·115·117·119·123·125·127·128·129·133·135·146·148·150·154·159·160·162·163·166·174·175·178·189·191·192·193·202·203·206·210·212·214·217·220·237 ⚖ 11·13·16·31·32·33·35·41·43·44·46·47·56·62·90·94·95·96·103·104·105·106·109·110·111·112·116·118·126·134·136·137·138·139·149·151·153·157·158·167·171·172·176·180·184·188·196·201·205·207·208·209·215·223·224·226·230·231·233·234·235·238·239·240] ➔ \n", - " >:[3·10·15·17·18·20·26·28·34·35·36·43·44·45·51·53·55·59·62·64·70·75·77·78·85·88·94·96·97·101·103·106·111·113·114·116·117·119·122·128·132·134·137·138·139·140·143·145·148·160·173·175·176·180·181·182·185·192·198·199·200·201·202·203·205·210·211·213·216·226·227·229·231·235·240 ⚖ 9·12·14·24·30·31·33·37·40·46·48·49·50·58·67·69·71·72·74·80·81·83·84·87·90·93·95·98·102·104·107·109·123·124·125·126·127·130·133·144·147·151·152·156·157·158·161·164·165·166·167·169·170·174·177·178·183·184·186·188·190·191·193·194·195·204·207·212·217·222·225·233·237·238·241] ➔ >:-184 =:-224 <:-201) \n", - " =:[4·5·10·16·17·23·33·49·55·64·67·69·96·97·103·109·114·121·126·138·150·152·170·171·176·182·185·189·195·197·201·206·208·219·222·224·225·228·229·236·241 ⚖ 2·13·15·24·27·29·32·35·53·58·63·65·79·83·87·98·105·111·112·120·129·136·142·145·149·153·160·162·165·166·173·178·187·193·196·198·200·202·207·214·235] ➔ >:-173 =:-194 <:-228) \n", - " <:[8·10·12·16·22·23·24·28·30·31·37·49·52·55·57·62·67·68·71·75·96·102·103·113·114·119·123·133·136·140·142·143·149·156·158·159·166·170·173·180·189·201·204·206·220·222·223·237 ⚖ 1·5·15·26·33·44·50·51·53·59·76·78·79·81·85·87·100·101·107·109·116·118·129·138·144·145·150·151·154·160·163·165·169·174·175·195·198·199·203·207·218·224·225·230·233·235·240·241] ➔ >:-174 =:-217 <:-237)))) \n", - " =:[1·4·9·10·12·14·21·25·28·34·40·41·45·50·55·57·58·59·60·66·70·71·77·78·80·83·86·87·88·93·94·96·97·98·104·109·112·114·120·123·124·126·132·135·138·143·144·145·146·149·155·158·169·170·174·188·189·190·191·192·194·198·199·201·212·215·220·223·225·227·228·231·238·239 ⚖ 3·6·8·13·16·18·19·20·22·27·29·33·37·38·46·47·51·53·54·56·62·67·68·69·84·85·89·91·92·99·100·105·110·111·115·117·118·119·121·122·127·128·130·134·136·139·140·142·151·152·153·162·163·164·165·173·175·177·178·179·186·195·200·203·204·206·209·210·213·219·224·226·230·236] ➔ \n", - " >:[2·4·6·8·9·13·15·16·24·27·28·36·46·47·52·61·62·64·65·67·77·79·81·83·84·85·87·89·94·95·96·102·112·114·119·121·122·125·127·129·130·131·132·135·143·146·148·152·154·162·169·170·172·177·185·187·189·194·195·198·200·203·205·208·210·213·214·215·216·217·220·221·227·231·233·237·241 ⚖ 1·3·5·10·14·20·23·25·31·32·39·40·41·43·44·45·49·53·59·60·63·66·68·71·73·76·78·80·82·91·92·109·113·116·118·120·124·126·134·136·137·140·141·142·147·151·153·156·159·160·161·163·164·165·166·173·176·178·180·182·184·186·188·192·193·196·197·199·207·209·223·224·229·232·234·239·242] ➔ \n", - " >:[1·2·5·20·21·24·25·28·32·39·42·46·49·50·52·57·62·68·69·73·75·77·90·94·97·99·105·107·111·120·127·131·132·137·140·144·148·149·151·153·154·156·161·162·164·165·166·167·170·171·172·173·178·185·194·195·197·200·201·202·204·218·220·226·229·233·236·240·242 ⚖ 7·8·9·10·11·12·14·15·22·34·35·38·40·41·53·55·58·61·78·79·82·83·84·85·89·91·96·98·104·114·116·121·123·124·126·128·135·136·141·142·147·152·155·159·174·179·180·182·184·188·190·191·193·198·199·205·210·211·214·215·216·217·223·224·227·230·232·237·239] ➔ \n", - " >:[3·4·7·18·20·24·25·29·30·33·34·42·47·52·64·70·71·72·77·79·83·86·98·101·105·118·119·124·128·133·134·139·142·147·157·161·162·163·167·172·181·183·185·189·191·199·202·206·207·208·209·211·221·222·227·236·237·238 ⚖ 6·9·14·23·32·38·40·41·48·49·53·54·58·60·65·67·69·73·74·80·84·85·87·91·102·107·109·115·123·127·129·130·138·140·141·145·146·153·156·158·164·168·171·179·180·184·188·200·204·212·214·217·223·226·230·231·234·242] ➔ >:-91 =:-136 <:-142) \n", - " =:[17·18·28·43·44·46·47·53·56·61·63·68·71·77·83·94·107·109·111·112·117·119·133·134·137·138·139·143·146·150·162·168·169·179·185·193·196·197·199·207·220·221·231·240 ⚖ 3·7·10·12·22·23·30·55·60·62·64·66·70·72·74·81·86·106·108·116·118·120·123·132·144·145·149·161·165·166·175·182·183·184·188·203·204·213·215·217·222·230·234·235] ➔ >:-118 =:-92 <:-134) \n", - " <:[5·7·11·22·26·28·29·30·35·43·46·47·52·53·55·60·62·63·66·67·71·79·83·87·88·100·102·105·106·109·111·113·117·122·131·136·141·142·144·146·147·148·149·153·158·162·164·166·167·168·184·189·190·192·194·196·199·200·201·203·207·213·219·232·235·242 ⚖ 4·6·8·9·12·15·23·36·37·40·41·42·44·48·49·51·54·56·57·58·64·69·74·75·77·84·86·93·96·101·103·107·108·110·120·124·125·126·133·137·139·140·145·150·160·165·169·170·176·178·185·186·197·209·211·212·217·221·227·228·229·230·231·233·234·237] ➔ >:-140 =:-151 <:-153)) \n", - " =:[3·5·7·14·15·18·25·30·31·33·38·40·51·61·62·63·67·68·71·73·77·88·91·92·93·98·99·103·113·114·115·116·120·122·123·125·131·139·141·142·143·145·148·156·157·158·170·173·174·187·193·195·197·198·205·211·213·219·222·224·229·234·236·237·239 ⚖ 1·2·10·11·16·17·19·20·21·22·23·24·26·32·34·42·45·48·52·54·55·64·65·76·78·79·82·83·89·94·101·104·105·107·109·110·112·117·124·127·129·134·136·140·146·163·164·165·175·181·182·188·196·199·204·208·212·214·215·218·226·230·231·233·240] ➔ \n", - " >:[2·8·9·13·14·18·25·26·29·30·31·35·38·43·49·50·51·54·56·58·63·75·85·86·87·92·94·102·104·105·108·113·116·124·127·131·140·141·142·144·147·149·150·151·154·158·165·170·171·180·183·191·192·195·199·200·202·205·215·220·225 ⚖ 4·12·15·16·21·24·27·28·32·39·40·44·52·59·60·61·62·64·67·70·74·82·90·93·97·110·114·119·120·122·125·126·129·137·139·156·159·161·168·169·173·174·176·177·178·184·186·196·201·207·211·217·221·222·223·224·228·236·240·241·242] ➔ >:-110 =:-117 <:-105) \n", - " =:[4·9·11·14·15·20·25·26·36·47·48·50·56·59·62·71·72·75·81·85·88·90·91·102·107·126·128·134·138·139·143·146·151·152·153·157·158·170·177·179·181·182·187·190·193·199·203·209·214·216·227·232·234·235·240 ⚖ 8·18·27·29·30·33·37·38·39·41·53·54·57·68·69·70·78·79·89·92·99·103·104·110·111·113·121·122·123·125·129·130·135·141·145·147·149·150·163·168·176·180·191·196·198·204·205·206·207·208·212·213·217·225·228] ➔ >:-111 =:-100 <:-128) \n", - " <:[2·8·11·15·16·19·25·33·34·39·43·51·56·58·59·63·68·71·73·79·82·92·94·95·98·99·102·104·124·129·131·134·142·143·148·155·172·175·176·178·181·187·188·195·197·198·199·200·204·205·206·210·214·216·222·225·232·233·238·239·241·242 ⚖ 9·18·21·22·24·27·30·37·40·41·46·48·50·55·60·62·66·67·69·74·76·78·81·83·84·97·103·105·106·107·109·113·116·118·119·121·125·137·139·144·145·147·150·153·154·156·158·162·165·167·168·170·171·180·186·202·207·208·218·219·230·237] ➔ >:-139 =:-115 <:-99)) \n", - " <:[1·8·10·19·20·21·23·28·38·40·48·50·52·53·58·62·71·77·79·84·87·89·91·93·95·97·106·107·109·111·112·115·121·124·129·138·139·144·147·149·155·158·163·164·171·172·174·182·186·187·189·206·207·209·211·212·216·221·227·230·235·236·242 ⚖ 3·4·18·22·26·27·30·33·35·37·42·43·47·54·57·63·73·78·81·85·94·98·100·101·108·120·123·125·126·127·130·131·132·134·136·141·143·145·156·157·159·166·167·175·178·180·183·184·188·190·191·192·193·195·198·199·200·205·208·214·218·228·234] ➔ \n", - " >:[1·2·5·6·13·15·16·26·28·30·37·40·46·60·67·70·73·87·102·103·120·125·126·127·138·141·146·154·159·161·162·172·178·182·183·193·196·197·200·213·215·220·224·230·235 ⚖ 3·7·12·21·29·47·50·51·52·53·68·78·79·85·93·94·96·97·98·104·109·111·117·124·133·137·149·150·152·155·157·165·176·177·179·181·191·201·206·212·214·218·221·228·238] ➔ >:-85 =:-130 <:-127) \n", - " =:[4·7·8·12·20·22·23·27·32·36·39·40·41·42·51·53·54·59·63·69·72·74·78·79·81·85·88·93·96·101·104·108·124·128·139·147·148·152·153·156·160·161·162·164·171·173·174·177·182·187·193·196·202·203·206·207·208·209·210·211·224·237 ⚖ 1·2·6·18·25·26·28·31·34·44·45·55·57·62·64·68·71·77·80·82·83·84·86·94·97·99·102·103·110·112·114·115·121·122·133·137·138·142·149·151·154·158·159·167·168·169·172·176·184·186·188·201·213·215·218·219·221·226·228·231·238·242] ➔ >:-122 =:-119 <:-152) \n", - " <:[2·7·9·10·13·17·31·36·37·41·42·46·50·51·52·58·60·65·72·74·76·84·86·88·91·93·95·96·110·116·118·122·123·125·126·128·131·133·136·141·142·145·149·156·165·167·173·175·180·182·184·186·190·191·193·194·199·200·202·203·205·207·208·210·211·212·214·235·239·241 ⚖ 4·5·8·12·15·24·25·28·29·32·34·35·39·40·44·47·56·63·64·69·71·75·79·80·85·98·101·102·106·109·112·113·115·117·121·129·135·137·139·144·148·153·159·161·166·168·170·171·174·176·177·187·188·196·198·206·209·216·217·218·220·224·225·226·230·232·236·237·238·240] ➔ >:-121 =:-89 <:-84))) \n", - " =:[2·4·5·6·11·22·23·26·29·38·55·56·58·59·60·65·67·76·78·87·89·93·94·97·100·103·106·110·111·112·113·114·115·116·119·121·124·126·127·133·134·138·142·143·144·147·149·150·152·155·157·158·161·167·168·174·175·180·181·182·183·184·189·190·191·194·197·198·204·205·208·211·223·224·229·230·233·237·241 ⚖ 3·13·14·17·19·20·24·28·31·32·34·36·37·39·41·44·46·49·50·51·52·57·61·62·63·64·69·70·71·73·75·80·90·91·95·98·101·102·107·108·117·122·123·125·130·135·136·139·145·148·153·156·163·164·172·173·178·179·187·192·195·199·202·213·215·216·217·218·221·222·225·228·231·234·235·238·239·240·242] ➔ \n", - " >:[1·2·5·7·11·12·14·16·17·18·26·27·30·33·44·45·48·49·53·58·66·69·72·74·76·80·82·84·85·90·93·94·97·98·99·101·103·105·111·115·120·121·124·125·126·127·129·130·139·141·142·144·145·146·155·163·164·168·172·177·181·186·187·195·197·198·201·205·210·213·216·219·221·224·225·227·230·232·238·241 ⚖ 3·4·6·10·15·19·20·21·24·28·31·37·38·46·47·52·55·57·61·62·63·64·67·70·75·78·79·81·86·88·89·107·108·116·117·119·122·128·131·132·135·136·137·140·143·147·148·149·151·153·154·157·161·162·169·173·176·180·183·185·188·192·193·194·200·204·206·207·211·212·215·218·220·222·223·226·231·236·240·242] ➔ \n", - " >:[3·6·9·12·17·20·21·24·27·37·40·41·46·48·49·50·51·53·62·64·69·87·88·93·95·96·100·104·105·107·112·113·121·122·123·130·132·136·141·145·146·153·156·157·163·165·169·172·175·176·181·190·191·192·193·195·205·206·212·214·215·220·225·227·232·240 ⚖ 7·8·11·15·26·29·39·43·54·55·56·59·60·61·63·65·66·67·68·74·76·77·78·82·83·84·85·91·94·99·102·116·118·124·126·128·129·135·137·138·148·150·151·152·154·155·171·173·183·186·187·194·198·199·200·201·209·211·224·226·230·231·233·235·239·242] ➔ >:-148 =:-108 <:-107) \n", - " =:[5·10·15·16·17·18·19·37·41·42·44·45·46·56·60·64·65·67·69·72·73·76·79·82·87·94·95·96·97·99·105·108·112·116·122·127·135·137·139·140·145·147·153·155·157·165·166·169·174·176·177·178·182·186·191·194·195·196·197·210·211·215·216·229·231 ⚖ 2·3·9·11·12·13·23·26·27·33·48·50·52·55·62·63·68·77·85·88·91·92·100·101·103·104·109·110·111·113·119·121·123·124·126·130·132·134·136·138·141·142·143·146·149·152·154·156·161·168·171·175·179·181·185·187·192·205·208·221·224·232·234·237·241] ➔ >:-156 =:-102 <:-95) \n", - " <:[15·20·31·42·46·51·56·72·73·78·97·101·129·158 ⚖ 40·55·68·90·110·133·140·142·155·170·187·205·233·239] ➔ >:-90 =:-125 <:-101)) \n", - " =:[14·15·23·26·27·29·30·36·40·45·47·52·53·55·56·58·60·63·69·73·77·79·81·84·85·88·89·92·99·101·110·116·118·120·121·124·125·129·134·135·136·140·142·145·146·149·153·155·158·159·160·162·173·177·179·184·186·189·191·193·197·199·208·213·214·215·221·227·228·233·234·237·239·242 ⚖ 1·2·3·4·10·12·13·17·18·19·20·21·22·24·28·34·35·37·38·41·54·59·61·64·68·80·82·86·90·95·96·100·108·109·114·115·117·122·123·127·138·141·148·150·152·154·163·166·168·172·174·180·182·183·185·187·190·194·198·201·203·204·206·207·209·210·218·223·225·226·229·232·236·238] ➔ \n", - " >:[2·5·6·7·17·18·27·28·30·31·34·35·41·43·44·46·49·52·53·54·66·67·72·75·76·77·86·90·96·97·103·105·108·113·115·117·119·121·125·126·148·149·150·151·152·154·155·156·157·159·161·163·165·170·171·172·182·189·191·192·195·196·197·199·210·211·221·225·226·228·230·231·241 ⚖ 1·11·12·19·21·22·23·25·33·36·38·40·42·56·58·61·68·69·71·73·79·82·84·88·89·91·93·104·106·107·112·114·122·123·124·128·129·130·132·134·139·142·143·145·147·158·162·166·168·169·174·175·177·178·180·181·184·185·190·194·198·200·201·205·207·208·213·215·216·223·224·227·232] ➔ >:-82 =:-141 <:-154) \n", - " =:[4·6·7·11·17·19·33·35·37·39·52·56·63·70·71·72·77·81·85·92·93·98·102·110·114·115·116·118·121·122·124·127·128·129·130·136·137·139·140·142·143·153·156·159·170·172·188·192·193·194·196·197·207·208·210·211·212·218·220·223·225·237 ⚖ 9·10·15·16·21·22·23·24·36·38·42·46·49·51·54·55·60·61·65·69·82·83·88·90·97·100·108·109·111·112·113·120·131·132·133·141·147·151·158·161·166·168·169·175·177·178·182·186·190·199·201·204·206·214·215·216·217·219·226·233·234·235] ➔ >:-131 =:0 <:-137) \n", - " <:[2·4·7·16·18·33·42·43·50·58·59·63·67·68·76·77·78·79·80·82·88·90·95·96·98·99·104·105·109·112·114·123·130·134·138·140·141·160·162·164·169·175·184·195·208·210·216·220·228·231·233·234·237 ⚖ 1·5·9·10·14·24·25·26·28·29·31·32·44·45·61·64·71·73·75·85·94·102·110·113·115·117·118·122·128·129·136·155·156·161·168·170·172·173·176·177·181·183·192·194·197·200·204·205·218·222·235·236·242] ➔ >:-129 =:-159 <:-160)) \n", - " <:[5·13·14·16·18·21·34·47·52·59·60·62·72·85·91·94·96·99·101·103·104·106·109·112·113·114·115·120·123·128·148·151·152·153·166·175·177·179·185·191·193·198·205·213·214·216·219·220·233·234·237·238·241·242 ⚖ 2·3·7·9·11·22·27·30·31·35·37·49·53·66·68·69·82·88·95·100·102·111·117·119·130·132·133·135·137·138·143·150·154·158·161·162·168·172·173·176·180·188·189·195·197·200·204·206·207·208·211·218·221·223] ➔ \n", - " >:[1·3·7·8·9·24·29·32·35·38·42·44·46·51·59·67·70·74·75·81·82·86·90·93·100·117·119·123·125·127·128·134·137·138·139·141·145·146·150·167·168·170·171·177·181·183·185·187·189·190·191·192·197·210·216·222·225·228·230·232·239 ⚖ 4·6·13·15·18·33·34·37·41·50·53·63·65·66·68·69·72·76·87·89·97·105·107·109·115·122·124·126·130·135·136·148·149·151·157·160·161·162·166·173·174·188·195·200·202·204·206·208·209·211·212·214·217·223·224·226·231·237·240·241·242] ➔ >:-161 =:-133 <:-150) \n", - " =:[7·10·13·17·19·21·29·32·45·48·53·66·74·77·78·80·95·100·105·110·116·124·131·136·155·167·172·178·180·182·185·189·190·191·194·215·222·231·238 ⚖ 6·12·22·27·34·39·40·42·43·44·47·50·55·70·73·97·98·101·104·106·112·118·120·122·129·130·133·145·152·157·161·203·206·210·212·224·225·228·242] ➔ >:-157 =:-147 <:-116) \n", - " <:[2·3·6·11·16·20·23·25·41·54·58·64·65·73·86·91·113·124·127·132·136·141·154·161·170·174·177·180·183·191·192·194·195·207·209·225·228·230·233·234·236 ⚖ 1·18·39·47·52·55·57·61·66·72·75·76·79·83·84·89·93·97·98·99·104·106·116·119·135·138·143·148·150·152·162·179·186·188·189·208·212·221·224·237·239] ➔ >:-106 =:-103 <:-113))) \n", - " <:[7·8·10·12·16·26·28·33·36·37·39·42·43·56·58·62·63·64·72·73·74·82·83·84·85·99·101·103·106·109·118·119·120·124·127·133·143·144·146·149·153·155·156·160·181·182·184·187·189·197·199·200·201·205·210·216·220·221·227·229·231·234·236·237·241·242 ⚖ 1·2·3·5·11·20·23·27·30·31·32·44·54·57·60·69·78·80·87·88·90·91·92·93·95·96·98·105·117·121·122·126·129·132·135·136·137·138·140·141·147·154·157·161·162·163·165·167·171·174·176·178·179·185·193·196·198·202·208·209·222·223·225·230·232·239] ➔ \n", - " >:[1·6·12·20·22·28·34·47·48·56·62·63·64·66·69·70·71·75·80·81·85·93·96·106·112·116·132·146·148·154·155·162·168·169·171·172·173·177·181·186·191·194·201·207·208·214·217·218·219·222·229·231·233·239 ⚖ 3·4·15·16·23·24·37·39·40·49·54·55·58·68·88·91·95·99·100·102·103·104·105·109·114·115·126·128·130·138·140·142·143·144·149·151·152·156·157·158·161·175·178·185·188·195·205·206·209·215·228·234·235·236] ➔ \n", - " >:[1·5·6·9·18·20·22·29·30·32·35·36·42·43·45·47·59·61·62·64·65·74·76·92·95·96·101·102·109·114·126·131·133·144·150·164·165·171·173·175·179·182·186·187·190·192·197·201·211·214·218·220·224·228·233·234·239·240·241 ⚖ 4·12·16·41·46·48·50·51·52·63·67·69·80·81·82·88·90·91·99·100·103·104·106·115·116·120·123·124·128·130·135·136·140·141·145·149·151·152·154·157·162·167·170·174·176·178·180·183·193·194·196·206·209·216·219·222·223·226·232] ➔ >:-88 =:-138 <:-126) \n", - " =:[1·5·6·13·15·18·23·24·29·34·35·41·42·43·44·53·54·55·56·62·63·67·70·71·75·81·83·85·88·91·94·95·99·100·105·106·107·110·115·116·120·122·125·129·133·135·136·137·138·140·143·148·152·155·157·160·161·162·165·166·167·175·181·185·192·203·204·206·210·214·221·225·226·230·232·235·236·237·238 ⚖ 2·3·4·8·9·17·20·21·25·28·31·45·47·48·51·52·64·68·72·74·76·79·80·86·89·90·96·98·104·108·109·112·114·117·119·121·123·127·132·134·139·142·145·146·149·153·156·158·164·169·170·173·177·179·186·187·190·195·196·198·199·200·202·207·211·213·216·217·220·222·223·224·227·228·229·239·240·241·242] ➔ >:-98 =:-87 <:-135) \n", - " <:[2·15·25·27·31·39·45·50·52·54·60·61·68·70·74·78·81·85·88·90·97·105·108·109·118·121·122·123·125·127·128·129·130·132·137·142·146·157·158·165·166·178·187·188·191·200·201·205·207·208·209·211·220·221·222·226·230·233·235 ⚖ 4·7·9·10·16·19·33·40·43·47·55·57·58·62·63·65·69·75·76·77·80·91·96·99·101·102·107·111·116·117·119·124·135·138·140·141·144·149·151·154·162·164·170·173·174·176·177·181·182·183·193·217·218·224·228·234·237·240·241] ➔ >:-96 =:-93 <:-132)) \n", - " =:[6·8·12·14·16·18·19·24·28·32·36·39·43·45·46·48·52·53·54·55·60·64·66·71·77·81·82·83·94·95·96·97·98·99·100·101·102·115·123·131·132·136·139·140·141·143·146·148·151·152·154·155·157·171·175·176·181·182·185·186·190·206·213·216·225·228·229·231·236·239 ⚖ 3·5·10·17·20·22·25·30·31·37·40·42·44·47·57·58·65·73·74·76·78·84·86·87·89·93·103·104·105·107·108·109·110·111·114·118·122·125·129·130·135·149·153·159·160·162·163·164·166·167·172·173·179·180·187·189·193·194·198·199·202·204·207·210·218·219·220·227·232·240] ➔ \n", - " >:[1·7·13·22·24·26·28·31·33·39·44·46·50·51·53·56·63·68·69·71·74·77·78·79·94·96·97·100·101·102·103·109·114·116·117·118·123·129·135·137·139·146·147·148·151·152·160·168·171·172·179·182·184·187·191·193·195·200·201·204·209·215·221·224·229·239·240·242 ⚖ 2·6·8·14·16·17·18·20·23·27·37·38·45·49·60·66·73·76·80·81·82·86·89·91·95·98·105·106·108·111·115·119·122·125·127·128·132·133·134·138·140·143·153·156·157·159·162·163·164·167·177·181·188·189·192·194·199·206·207·208·213·219·230·233·235·236·237·238] ➔ >:-86 =:-104 <:-114) \n", - " =:[1·3·4·5·6·7·9·13·14·17·23·31·38·39·40·49·53·55·66·68·69·71·75·76·80·82·84·85·92·95·97·98·99·100·102·112·113·114·115·117·119·120·126·128·134·137·143·149·150·157·161·163·172·174·175·181·183·184·188·191·195·198·201·203·204·207·209·216·219·224·225·236·239·240 ⚖ 8·10·11·15·19·21·22·25·26·33·34·37·41·42·43·44·45·46·47·48·51·52·54·59·61·62·63·64·65·67·70·73·79·83·87·90·91·96·103·108·111·122·130·131·133·135·142·145·146·148·151·159·166·167·168·171·173·176·179·180·189·193·196·208·212·213·214·218·220·226·228·229·230·242] ➔ >:-145 =:-158 <:-112) \n", - " <:[7·14·15·16·32·41·50·52·57·64·66·68·71·81·83·84·85·86·95·103·114·115·119·122·123·132·134·140·143·146·149·156·165·166·167·189·194·202·203·220·222·228·231·233 ⚖ 3·4·5·9·21·22·25·26·28·31·33·34·37·55·60·65·77·90·97·112·124·130·141·152·154·157·171·173·178·185·187·188·191·192·195·198·204·209·210·218·223·224·230·234] ➔ >:-97 =:-94 <:-123)) \n", - " <:[1·5·6·10·14·15·18·21·32·33·36·37·38·40·41·42·47·54·57·60·63·65·69·72·74·78·79·87·95·96·100·102·106·112·113·115·116·117·122·123·124·127·129·132·133·135·137·141·142·146·147·149·161·165·166·168·173·176·180·185·191·196·197·198·200·203·209·223·224·228·231·234·235·237·239·241·242 ⚖ 3·4·11·13·16·20·25·27·28·30·31·35·39·44·48·49·51·52·53·58·70·77·81·82·89·90·93·94·97·105·107·108·109·120·121·130·131·138·143·145·148·150·151·153·154·156·157·158·163·164·169·170·183·184·186·188·189·190·193·199·201·202·205·206·208·211·212·213·214·217·218·225·226·227·230·236·238] ➔ \n", - " >:[5·8·13·14·22·41·43·47·50·54·59·66·72·73·77·80·90·94·96·113·114·116·119·126·129·138·143·144·153·155·170·173·181·185·188·190·191·194·195·198·204·209·222·228·229·230·231·232·242 ⚖ 2·3·9·19·21·23·26·29·30·31·37·38·42·44·49·60·61·65·84·88·89·98·99·107·111·115·120·122·136·137·140·141·166·168·174·177·178·201·205·206·207·210·212·216·219·223·227·238·240] ➔ >:-120 =:-109 <:-143) \n", - " =:[2·10·13·15·17·20·22·28·30·33·34·35·42·45·49·50·51·52·54·60·62·63·70·75·81·83·86·92·96·97·113·126·131·139·140·141·143·146·150·154·156·157·162·166·167·169·177·178·180·181·182·191·195·197·198·201·206·213·217·220·221·233·235·237·240 ⚖ 14·16·18·21·23·24·25·26·29·31·41·56·58·59·65·66·68·71·73·74·84·85·87·89·90·93·109·111·112·114·119·120·125·127·129·132·134·136·138·144·148·152·163·170·173·176·184·187·189·194·199·204·205·208·210·212·215·216·218·222·224·228·229·231·238] ➔ >:-144 =:-155 <:-83) \n", - " <:[12·16·19·20·21·23·30·38·40·41·48·49·50·54·55·58·60·61·62·63·69·70·74·75·76·77·78·81·84·90·91·93·94·96·97·98·100·103·111·112·117·123·129·131·132·135·138·140·145·147·149·150·153·159·160·164·165·167·168·170·177·179·189·190·196·197·209·211·227·232·237·239·241·242 ⚖ 1·2·7·9·15·18·22·24·27·28·29·32·35·36·39·42·44·47·52·53·56·59·65·67·68·71·80·83·86·87·88·99·101·102·107·114·115·116·122·124·125·127·134·137·142·151·152·154·156·157·171·173·175·182·186·187·188·191·195·198·201·206·207·208·210·213·216·217·220·224·226·230·231·238] ➔ >:-124 =:-146 <:-149)))) \n", - " <:[8·9·15·20·21·22·27·28·31·33·34·39·47·51·54·56·57·59·63·64·70·71·73·74·75·79·81·86·87·94·103·107·113·115·117·119·124·125·131·138·140·141·143·146·147·151·153·155·167·170·171·174·176·181·185·186·188·189·192·193·208·209·210·215·218·219·222·226·228·229·230·234·235·238 ⚖ 1·2·4·5·7·10·13·16·17·19·24·26·30·32·35·36·37·40·41·42·53·60·62·65·68·76·78·83·85·88·89·91·95·100·106·108·110·111·114·116·121·130·132·137·139·144·149·150·158·160·163·164·165·175·177·179·184·198·199·201·202·203·207·211·214·216·221·223·224·227·231·233·241·242] ➔ \n", - " >:[4·8·10·13·15·16·17·20·23·24·26·32·34·35·38·43·44·45·47·48·49·54·57·58·61·66·73·77·80·81·90·94·95·98·101·103·104·105·108·113·117·124·133·134·136·137·138·139·143·146·150·151·152·153·157·158·173·174·176·177·183·186·188·189·190·194·200·203·204·205·217·220·224·228·235 ⚖ 1·2·6·7·14·18·22·25·28·29·31·33·36·37·39·50·51·52·53·55·59·60·67·76·78·79·82·83·84·86·87·88·100·109·111·114·118·119·122·130·131·132·141·144·147·148·155·156·164·167·169·170·171·175·179·180·187·191·192·196·198·201·206·208·209·211·214·226·227·231·232·238·239·240·241] ➔ \n", - " >:[2·4·6·12·15·16·17·18·19·21·22·26·31·35·36·40·42·51·55·61·62·68·76·77·82·83·84·85·87·91·92·97·99·106·107·111·112·115·116·117·119·121·124·125·126·128·129·130·131·137·139·140·141·148·149·157·159·167·168·177·185·186·190·191·197·198·199·207·214·215·216·218·220·221·222·224·226·228·229·230·235 ⚖ 1·3·5·8·9·11·20·24·25·27·34·37·38·41·44·48·52·57·60·63·65·66·67·71·72·73·74·75·86·89·98·101·105·108·109·110·114·118·120·122·132·133·134·135·136·138·145·150·152·155·156·161·164·166·171·172·173·174·175·176·178·179·182·187·188·195·196·203·206·208·209·211·212·213·217·223·231·233·236·237·239] ➔ \n", - " >:[8·25·34·36·37·48·53·58·76·86·97·103·117·124·126·138·141·152·156·161·164·183·195·197·201·205·207·213·219·224·240·242 ⚖ 1·9·38·51·52·57·68·69·78·84·85·90·105·106·109·115·121·125·137·147·155·159·163·168·171·175·182·189·198·215·232·235] ➔ >:-1 =:-60 <:-37) \n", - " =:[2·5·6·9·10·14·15·23·25·29·31·32·35·38·40·45·46·50·53·54·61·68·84·87·89·93·94·96·98·99·103·106·112·118·120·121·122·124·125·134·135·136·138·141·143·146·148·149·151·159·160·161·164·165·167·170·174·185·187·189·190·191·192·196·202·204·209·210·212·215·216·220·223·225·231·234·236·237·239 ⚖ 1·7·8·13·16·18·19·20·26·27·28·30·36·37·43·49·52·55·56·57·59·60·65·66·67·70·75·76·77·80·81·85·88·92·104·105·110·111·113·114·117·119·123·126·127·128·130·131·133·144·150·155·156·157·158·162·163·168·172·176·178·181·183·184·186·188·193·201·203·205·208·213·218·227·233·235·238·240·241] ➔ >:-7 =:-78 <:-53) \n", - " <:[3·8·13·16·20·23·24·26·27·30·33·42·54·59·69·75·76·79·81·83·84·85·87·94·96·109·113·115·116·117·120·132·138·144·147·150·159·165·170·176·177·181·182·184·185·193·195·197·202·203·205·206·207·211·213·217·218·220·226·229·234·235 ⚖ 2·5·11·17·18·22·29·35·38·47·49·52·53·57·58·61·74·77·80·86·88·91·92·95·97·100·104·107·118·122·126·127·128·131·133·134·141·142·143·149·151·155·156·157·158·160·162·164·168·172·173·174·175·188·191·201·204·208·219·228·237·240] ➔ >:-2 =:-36 <:-76)) \n", - " =:[2·9·10·12·13·14·19·20·24·25·27·36·38·39·42·44·45·48·50·51·52·55·64·68·81·84·85·86·90·97·102·108·109·110·111·119·121·122·123·126·139·147·148·154·161·164·166·167·171·178·180·186·190·191·193·200·202·205·207·211·219·233·236·242 ⚖ 4·7·11·17·26·30·33·41·46·56·58·61·62·66·67·69·72·73·75·80·83·87·88·91·93·95·100·101·106·112·114·116·118·127·128·132·134·135·142·149·155·165·168·174·176·177·181·188·192·195·199·201·206·215·222·223·226·227·228·229·232·237·238·241] ➔ \n", - " >:[1·3·26·27·32·36·41·42·50·57·59·61·66·67·74·83·84·92·95·97·98·102·103·106·113·124·127·130·131·137·138·139·140·141·142·153·166·169·184·194·195·200·204·213·217·218·224·227·237·240 ⚖ 5·10·13·17·19·34·35·39·46·48·51·52·60·62·68·70·71·73·78·80·85·91·93·96·101·105·114·119·121·135·136·151·152·161·162·170·172·189·201·202·205·209·210·211·214·215·219·225·229·232] ➔ >:-62 =:-30 <:-41) \n", - " =:[2·11·12·13·14·15·18·19·23·27·29·32·37·40·43·44·56·59·73·76·80·82·96·99·106·112·120·123·124·131·134·139·140·141·143·146·147·149·153·156·164·170·187·188·189·190·197·198·203·206·210·213·217·220·221·225·227·229·232·234·237 ⚖ 1·5·8·17·20·22·24·25·26·31·34·35·42·46·50·52·61·62·64·69·77·81·84·85·86·87·89·90·91·92·94·95·118·126·128·130·133·135·136·154·155·157·162·169·171·172·173·183·185·186·191·192·193·194·196·202·205·216·222·235·242] ➔ >:-5 =:-65 <:-40) \n", - " <:[3·4·13·17·18·23·38·41·43·50·56·57·59·60·61·66·68·69·71·72·76·80·83·87·89·90·91·96·97·99·102·103·104·106·111·116·117·118·120·121·123·124·125·128·134·135·141·143·145·149·167·171·173·176·178·179·180·181·182·185·191·192·195·199·204·215·219·223·226·230·235·237·240·241 ⚖ 1·5·8·11·12·14·19·20·21·22·24·26·31·33·34·48·51·52·55·58·63·65·74·75·77·78·79·81·82·86·88·95·98·108·109·114·119·126·127·130·132·136·140·142·144·147·148·152·153·154·160·163·164·170·174·189·190·193·194·196·202·205·207·208·210·213·214·220·224·225·227·232·234·236] ➔ >:-19 =:-42 <:-68)) \n", - " <:[8·12·13·17·23·32·55·57·68·69·75·85·90·96·100·127·129·142·157·159·160·166·171·173·174·178·182·185·199·203·211·215·216·221·229·230·238·239·240·241·242 ⚖ 2·16·24·26·27·39·42·43·52·61·63·64·76·80·83·101·106·113·119·122·124·125·131·135·152·155·164·170·172·176·177·180·186·192·194·195·201·222·224·236·237] ➔ \n", - " >:[6·15·17·25·26·27·32·33·34·37·39·40·41·43·45·54·72·74·81·87·88·89·93·94·103·116·118·119·127·128·134·142·143·145·148·153·155·157·162·182·184·192·193·197·198·207·213·216·219·222·228·230·231·239·241 ⚖ 4·12·14·18·24·28·38·47·48·49·57·61·64·65·66·75·79·80·82·83·90·96·100·101·102·105·106·109·117·121·122·129·132·133·140·151·158·160·161·172·174·176·178·180·186·190·200·202·209·210·218·221·232·236·242] ➔ >:-24 =:-16 <:-26) \n", - " =:[4·7·17·19·21·26·27·33·36·37·40·44·50·53·58·62·69·75·81·84·85·86·96·97·99·102·104·116·120·122·123·124·126·134·135·138·139·141·146·148·149·151·154·159·162·164·165·166·170·171·179·180·183·185·190·191·196·199·202·204·209·212·217·222·223·228·230·234·235·240·242 ⚖ 1·3·6·8·13·16·20·22·23·25·29·31·32·34·35·38·41·42·43·51·52·54·55·61·64·68·70·72·77·79·83·90·92·108·109·112·114·117·119·121·125·132·133·137·140·150·152·153·157·158·174·175·178·186·188·189·192·198·200·208·210·213·214·216·219·220·221·224·231·232·233] ➔ >:-35 =:-10 <:-4) \n", - " <:[1·2·6·7·8·9·13·16·23·30·31·34·38·42·43·44·45·46·47·48·52·61·62·69·70·76·77·78·79·82·87·88·92·93·95·96·103·105·108·110·111·112·114·115·130·133·134·137·139·143·146·150·152·156·159·161·165·166·172·173·176·179·185·186·188·195·197·198·202·205·207·209·231·233·234·242 ⚖ 5·11·12·15·26·29·32·36·37·39·49·50·51·54·59·60·64·66·67·72·74·75·80·81·83·86·89·91·94·98·102·109·113·117·119·124·125·126·129·132·138·141·144·145·147·148·151·153·155·160·162·164·167·170·174·178·180·189·191·193·196·200·201·204·210·213·214·215·221·222·224·226·229·230·235·239] ➔ >:-32 =:-17 <:-13))) \n", - " =:[5·6·12·17·20·21·23·25·26·29·34·38·39·53·54·56·58·60·61·63·71·73·74·77·85·90·96·103·105·110·112·114·116·121·123·127·131·140·144·145·147·149·150·172·177·179·180·184·185·186·188·191·192·193·201·202·204·205·213·217·218·224·225·226·227·228·229·231·232·235·237·239 ⚖ 1·3·7·11·14·19·22·24·27·31·40·41·42·43·46·47·51·62·64·66·67·69·72·79·84·86·87·88·89·91·93·94·98·104·107·109·113·118·125·130·134·137·139·143·155·156·158·160·161·167·168·176·181·182·187·197·198·203·207·208·209·212·214·215·216·223·230·234·238·240·241·242] ➔ \n", - " >:[4·5·11·12·13·14·15·17·20·21·23·27·28·40·41·46·58·60·64·73·79·83·84·85·87·92·97·99·101·104·108·113·118·119·121·127·128·138·139·141·146·148·150·162·163·164·172·175·180·182·187·192·193·196·197·198·200·201·204·205·212·213·214·215·217·218·222·225·226·228·229·230·238·239 ⚖ 1·3·9·19·25·30·33·35·36·37·45·48·49·52·53·54·57·61·66·70·72·74·77·80·81·82·86·90·95·105·106·107·116·122·123·125·131·133·134·144·151·152·153·159·160·161·165·167·168·169·173·174·177·181·185·188·191·195·202·203·210·219·221·223·224·227·232·233·234·236·237·240·241·242] ➔ \n", - " >:[2·3·21·24·32·34·37·38·43·46·50·53·64·67·73·79·80·81·87·91·94·99·107·108·109·113·114·115·118·119·122·124·125·126·130·138·141·143·144·146·154·161·169·172·174·178·187·191·198·203·205·208·211·222·231·234·239·240·241 ⚖ 6·10·11·15·18·20·23·26·42·48·49·51·54·56·59·63·66·69·71·74·82·83·97·100·106·111·112·116·120·127·131·133·134·148·156·157·171·173·175·177·179·180·181·183·188·189·196·200·201·206·207·209·215·217·225·227·229·232·238] ➔ >:-66 =:-72 <:-3) \n", - " =:[8·9·17·25·39·49·51·60·61·65·69·73·80·94·96·100·105·120·125·130·136·138·140·143·145·154·155·165·172·178·182·198·210·216·227·231·234·236·238·240 ⚖ 2·3·10·14·18·29·31·48·67·83·86·87·90·92·110·114·115·122·124·131·135·141·144·146·147·149·150·152·157·163·169·176·179·192·204·206·208·211·235·242] ➔ >:-67 =:-43 <:-69) \n", - " <:[9·11·13·16·18·25·27·33·34·36·39·42·59·60·63·64·69·75·80·85·94·99·104·114·119·121·124·127·129·130·132·133·135·141·144·147·149·152·154·158·159·161·164·170·172·176·179·180·181·183·186·189·197·198·203·209·214·216·218·224·225·233·242 ⚖ 3·14·15·19·20·21·28·30·37·38·43·61·66·67·70·77·78·86·88·91·92·93·95·97·102·107·111·112·117·118·122·138·143·146·148·150·151·153·155·156·160·163·175·178·182·184·188·191·204·206·207·212·213·217·221·222·229·230·231·235·238·240·241] ➔ >:-14 =:-46 <:-11)) \n", - " =:[5·6·13·16·21·27·28·29·35·39·41·45·48·50·53·60·61·63·66·71·76·79·88·91·95·103·104·108·111·112·119·120·126·137·143·148·150·152·153·154·159·164·166·168·172·177·180·182·183·184·185·192·193·199·201·203·206·207·210·211·216·217·225·227·228·229·233·241 ⚖ 3·4·12·17·24·26·30·32·33·37·43·44·46·52·54·58·59·62·64·68·69·75·80·83·90·92·93·100·105·106·107·109·110·118·121·122·123·125·135·138·139·140·141·142·144·147·151·156·158·161·165·170·173·186·190·194·196·197·198·202·212·213·220·221·223·226·236·237] ➔ \n", - " >:[6·32·44·45·46·51·54·60·62·64·70·83·84·92·93·117·140·150·158·160·179·203·219·220·237 ⚖ 18·25·26·27·34·36·40·52·73·74·75·108·110·129·141·147·155·171·172·178·197·198·204·216·222] ➔ >:-52 =:-80 <:-44) \n", - " =:[2·7·14·16·17·20·23·27·29·34·37·42·46·47·55·58·66·67·68·69·70·84·85·86·99·110·113·125·129·138·140·145·147·149·151·152·153·155·156·163·166·178·180·181·186·199·202·203·204·217·218·219·224·226·232·241·242 ⚖ 4·8·13·18·21·28·48·52·60·63·64·72·78·88·90·95·103·104·112·119·120·121·123·124·128·134·137·141·142·148·150·154·160·161·162·172·173·175·184·185·188·191·192·194·196·197·205·206·210·214·220·228·231·234·236·238·239] ➔ >:-18 =:-49 <:-55) \n", - " <:[5·6·13·14·18·20·21·31·38·44·50·55·61·80·92·96·102·119·126·127·128·135·138·152·157·163·174·177·178·180·187·188·193·196·205·209·212·220·221·222·225·229·230·233·236 ⚖ 1·7·10·16·17·30·32·39·45·47·49·51·64·65·68·79·81·88·91·109·114·117·121·123·129·133·134·139·147·150·158·164·173·183·186·195·198·201·203·214·223·227·232·234·238] ➔ >:-45 =:-48 <:-50)) \n", - " <:[5·15·17·22·23·26·27·29·30·31·40·56·57·62·67·77·84·94·102·103·108·111·113·114·115·117·119·126·127·130·132·135·147·149·155·169·173·176·177·181·182·183·184·187·195·198·205·207·213·215·217·222·226·229·233·236·241 ⚖ 4·6·11·12·25·28·39·42·43·46·52·54·59·60·66·68·69·70·71·72·78·81·85·89·91·109·110·112·116·122·123·124·131·133·140·143·145·153·158·160·161·163·166·172·179·185·196·197·203·208·209·214·221·224·227·234·238] ➔ \n", - " >:[2·3·6·10·13·14·15·16·18·22·33·34·35·37·39·41·45·47·49·57·60·61·62·65·70·71·72·74·75·81·82·83·94·95·97·99·100·104·108·109·112·113·116·117·122·124·128·129·132·135·142·144·145·146·149·157·163·170·174·177·178·181·184·187·194·199·200·201·204·205·207·210·217·218·224·227·228·229·232·238 ⚖ 1·4·11·17·20·21·24·25·27·28·32·48·52·54·58·64·68·69·73·76·79·84·87·91·92·96·98·101·102·107·110·118·120·121·125·126·134·136·137·138·141·143·147·153·154·156·158·160·161·162·165·167·168·169·175·176·179·180·182·183·189·190·192·195·196·202·203·208·211·213·214·220·222·223·226·230·231·234·239·241] ➔ >:-25 =:-12 <:-6) \n", - " =:[4·6·8·11·38·41·56·66·71·72·80·87·102·107·109·112·117·120·131·137·144·157·163·173·174·175·193·194·202·205·206 ⚖ 3·5·15·20·40·44·57·58·68·86·88·89·101·115·123·134·141·145·147·149·155·168·172·176·181·184·188·213·223·237·239] ➔ >:-58 =:-61 <:-38) \n", - " <:[13·21·38·46·49·50·51·59·60·61·62·64·68·73·77·79·83·88·92·95·102·111·115·124·131·134·135·138·143·145·146·156·164·167·169·170·171·176·190·203·225·226·229·232·237·242 ⚖ 4·6·8·12·16·28·29·34·36·56·57·65·71·78·97·101·105·110·116·121·125·126·127·132·139·149·160·180·182·183·186·189·192·193·195·198·204·205·209·214·215·216·218·220·227·239] ➔ >:-29 =:-23 <:-77))) \n", - " <:[1·11·13·15·17·18·20·23·24·26·27·35·36·38·39·40·47·49·51·54·57·61·62·65·66·68·70·80·86·87·91·92·99·100·111·113·118·122·123·127·134·135·136·139·142·147·148·154·155·158·159·160·165·174·176·179·183·185·188·193·196·197·199·200·202·207·209·217·219·221·224·228·234·235·238·240·241 ⚖ 3·5·6·8·9·19·25·30·32·34·37·41·43·45·46·55·56·64·67·69·71·73·74·75·83·84·88·89·90·93·94·97·98·103·105·106·107·109·115·121·126·130·133·137·140·141·143·149·150·156·161·162·169·170·171·172·178·187·189·190·192·198·201·204·208·212·214·215·216·218·222·229·230·231·233·237·242] ➔ \n", - " >:[1·3·5·7·8·12·13·15·18·27·28·33·38·42·43·47·50·73·75·80·82·83·84·88·90·91·94·95·98·99·102·103·108·110·113·115·116·120·125·130·133·134·137·139·140·141·143·146·147·153·157·163·164·167·168·170·171·175·176·178·179·182·185·188·194·199·201·203·204·206·207·209·218·220·222·223·230·231·232·238 ⚖ 2·4·6·10·14·16·17·20·22·24·29·30·31·32·36·39·41·45·46·48·52·57·60·61·62·64·65·69·71·74·79·85·86·87·92·96·97·104·105·109·112·118·119·121·122·123·124·127·128·129·131·135·145·148·149·151·152·154·156·160·165·169·173·174·187·190·196·200·202·210·214·215·224·226·227·233·237·239·241·242] ➔ \n", - " >:[2·4·10·16·17·22·31·32·34·35·37·39·48·49·51·55·58·61·62·63·66·67·69·70·72·74·78·80·82·83·87·88·89·90·92·93·96·97·100·104·105·110·114·119·121·129·131·134·141·143·144·151·152·163·166·171·172·184·186·192·199·203·204·209·210·212·215·216·217·219·220·221·228·229·233·236·237·240·242 ⚖ 1·3·9·11·12·14·20·23·25·26·27·28·30·40·42·43·44·53·56·60·64·68·73·79·81·91·94·98·101·102·109·111·112·113·118·120·124·125·127·128·130·132·133·136·145·146·156·157·159·160·162·165·168·169·173·174·178·179·181·185·189·190·191·193·196·201·205·206·208·213·214·224·225·226·230·232·235·238·239] ➔ >:-64 =:-71 <:-74) \n", - " =:[4·11·28·30·32·42·43·46·48·51·53·54·56·59·60·61·63·65·69·77·82·86·87·95·97·104·109·111·114·117·118·133·137·146·156·161·164·170·175·178·179·180·181·185·188·189·201·203·210·214·222·238 ⚖ 7·8·9·23·29·39·50·52·70·72·73·76·80·91·98·101·112·116·120·121·131·132·134·152·153·154·155·159·165·169·172·177·190·192·193·196·197·198·202·206·207·212·218·220·224·225·228·229·233·239·241·242] ➔ >:-9 =:-34 <:-56) \n", - " <:[1·3·7·9·10·12·16·19·27·30·32·38·41·43·45·50·75·82·84·88·90·91·95·98·101·115·119·122·124·127·131·133·134·141·143·145·158·160·161·163·164·165·167·173·174·175·177·178·179·183·187·194·204·207·211·219·222·224·225·229·232·235·236·241·242 ⚖ 2·5·11·17·18·22·23·24·28·29·37·47·52·53·55·62·64·65·69·73·74·79·86·97·99·100·104·107·111·121·123·128·132·136·137·138·142·144·148·149·151·153·155·157·162·166·168·171·172·188·190·191·196·199·206·208·213·214·216·220·221·223·227·234·238] ➔ >:-73 =:-8 <:-75)) \n", - " =:[3·7·9·14·21·25·26·27·48·51·62·63·79·83·84·85·88·92·100·102·114·120·141·142·148·159·160·164·165·166·172·173·181·185·188·191·195·196·199·201·207·209·214·221·222 ⚖ 6·12·15·17·20·24·31·32·34·39·50·53·56·59·61·73·75·76·81·96·101·105·108·111·112·115·118·119·121·123·125·132·137·146·147·157·168·176·178·187·189·197·206·210·213] ➔ \n", - " >:[4·7·10·13·19·22·31·42·43·54·55·58·73·79·89·95·96·105·106·107·110·111·123·126·129·130·131·134·141·142·172·181·190·191·193·194·200·202·211·212·223·224·229·239·241 ⚖ 9·17·24·26·34·36·37·46·47·59·68·91·99·100·102·103·104·117·132·138·149·150·163·165·174·175·178·179·182·192·195·201·205·209·210·215·217·218·225·226·231·232·233·234·238] ➔ >:-59 =:-81 <:-31) \n", - " =:[8·14·19·20·24·28·35·37·38·40·42·43·44·47·64·67·72·73·77·78·85·86·103·106·109·111·116·123·126·127·129·131·135·136·138·140·159·160·161·162·163·167·168·169·175·176·178·180·182·183·189·194·203·204·205·208·211·214·218·223·225·227·232·234·241 ⚖ 1·6·7·10·11·12·16·17·18·22·26·27·30·31·32·41·49·53·60·63·65·71·75·81·82·83·87·93·96·97·98·100·102·105·107·108·110·112·113·115·118·119·121·125·130·133·142·144·145·148·152·170·173·174·177·179·187·209·212·215·224·228·235·237·238] ➔ >:-22 =:-33 <:-28) \n", - " <:[3·14·15·16·17·22·23·25·28·33·35·37·38·51·53·55·56·57·58·63·66·68·71·73·74·75·77·82·83·84·86·89·91·99·112·114·116·123·124·126·131·142·144·148·149·151·152·158·159·163·165·169·175·183·185·188·190·196·198·202·204·205·208·211·212·218·219·222·223·225·226·229·236·238·239 ⚖ 1·2·10·13·19·21·24·26·27·29·30·31·32·34·42·43·46·54·64·65·70·72·78·80·81·85·87·88·90·92·95·102·103·105·107·108·110·113·117·118·121·122·125·132·135·137·139·141·143·150·153·156·160·161·172·176·180·181·189·192·193·194·195·197·199·203·214·215·216·217·228·230·231·237·240] ➔ >:-21 =:-79 <:-63)) \n", - " <:[8·9·12·14·17·19·20·22·23·25·30·31·34·40·41·43·50·51·58·59·60·65·66·69·70·80·82·91·100·101·104·107·111·112·115·119·120·125·130·134·151·155·159·160·163·170·176·177·184·187·189·194·195·204·211·219·234·241 ⚖ 2·10·18·42·46·47·48·54·56·57·61·62·67·71·79·81·83·87·90·93·98·99·108·110·121·122·126·127·129·132·142·144·152·154·156·157·161·174·178·181·182·183·185·191·196·198·202·203·206·209·210·213·214·216·225·228·231·240] ➔ \n", - " >:[10·11·17·18·36·45·51·57·77·83·86·95·113·116·117·119·126·130·134·141·144·146·157·173·179·186·197·211·226 ⚖ 1·4·13·15·24·29·31·35·38·50·54·59·62·70·74·76·85·91·115·127·147·154·163·167·168·214·220·223·234] ➔ >:-54 =:-47 <:-57) \n", - " =:[2·8·10·11·14·18·19·21·22·25·27·32·34·37·48·50·63·65·69·71·74·93·96·99·102·109·114·116·121·123·129·132·134·140·146·147·148·156·159·160·161·163·171·176·177·190·191·194·198·201·203·204·205·206·209·210·219·221·234·237·238·240·242 ⚖ 7·15·17·20·23·24·30·35·38·40·41·43·44·51·56·57·67·68·80·83·84·85·86·94·98·104·107·108·117·119·124·131·133·136·139·141·142·144·149·153·155·157·164·165·167·168·170·173·175·178·179·187·195·207·208·213·215·217·218·220·223·225·235] ➔ >:-15 =:-39 <:-27) \n", - " <:[1·2·3·5·7·9·10·16·22·26·33·34·37·38·42·43·46·47·51·55·60·61·63·64·68·76·88·92·95·101·109·110·111·112·113·114·116·119·121·123·133·136·139·142·150·151·154·156·163·168·170·172·173·179·180·181·182·186·190·192·195·197·198·199·200·204·209·214·215·218·220·223·224·233·240 ⚖ 8·12·13·19·24·25·27·35·39·41·44·45·48·54·56·59·65·70·71·72·78·79·80·81·83·84·85·86·91·94·97·98·103·104·105·107·115·117·128·130·131·132·137·138·141·145·146·149·153·158·159·160·161·162·165·166·167·175·184·185·188·189·194·196·202·206·211·212·216·217·219·225·228·232·234] ➔ >:-70 =:-20 <:-51)))))\n" + "[1·2·3·4·5·6·7·8·9·10·11·12·13·14·15·16·17·18·19·20·21·22·23·24·25·26·27·28·29·30·31·32·33·34·35·36·37·38·39·40·41·42·43·44·45·46·47·48·49·50·51·52·53·54·55·56·57·58·59·60·61·62·63·64·65·66·67·68·69·70·71·72·73·74·75·76·77·78·79·80·81]⚖[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", + " >:[2·3·5·8·16·17·20·21·22·31·34·37·38·43·45·47·48·49·51·52·53·58·61·67·71·72·73·74·76·79·80·84·85·91·95·96·99·102·115·120·121·123·125·127·129·132·135·139·140·146·148·155·159·161·164·171·172·177·181·182·184·185·188·189·190·195·204·206·207·211·213·214·215·220·224·225·230·231·234·235·240]⚖[1·9·10·11·12·14·19·24·26·27·32·33·36·46·54·55·57·64·66·68·69·75·78·81·82·83·86·87·88·90·93·98·101·103·105·106·109·110·113·114·117·118·119·122·128·130·133·141·142·143·144·145·152·153·163·165·167·175·176·178·179·180·187·191·192·193·197·199·201·202·208·210·216·219·222·226·227·233·239·241·242] ➔ \n", + " >:[2·3·4·18·20·23·26·27·35·36·37·39·44·49·50·58·60·62·66·68·73·75·79·81·82·83·89·90·97·101·103·106·108·116·124·128·132·135·136·137·138·141·144·149·154·155·160·165·174·178·180·182·187·192·193·197·198·206·207·209·211·217·218·221·232·237·238·239·241]⚖[1·5·9·10·11·12·13·16·17·19·22·29·30·41·45·46·47·56·65·70·74·77·80·84·86·88·96·102·109·114·115·119·120·125·126·133·134·143·148·151·153·157·161·162·163·167·169·172·181·183·188·190·191·194·196·199·201·203·205·210·213·214·222·224·227·228·231·240·242] ➔ \n", + " >:[1·8·14·17·18·20·22·26·37·42·45·48·49·50·55·58·64·67·69·70·71·72·77·78·82·83·86·87·93·96·98·102·104·105·110·117·119·120·126·132·133·135·138·140·142·143·147·149·151·155·156·158·160·166·167·169·171·173·175·178·182·184·185·191·192·196·202·216·220·221·223·226·227·235·236·238·241]⚖[3·4·5·7·9·12·13·15·16·19·27·28·29·31·34·35·38·39·43·47·51·56·63·65·68·79·84·89·90·91·94·97·99·103·108·111·115·116·122·127·129·130·134·139·141·145·146·150·152·159·161·163·164·165·170·172·174·177·179·181·186·193·194·198·199·200·203·206·207·209·210·212·215·219·228·234·240] ➔ \n", + " >:[7·24·27·29·37·39·47·53·54·59·64·76·93·95·116·122·133·142·146·153·155·158·177·210·213·220]⚖[17·31·36·40·43·58·73·88·101·104·107·112·118·131·136·145·151·156·159·163·168·175·179·200·202·230] ➔ >:-163 =:-199 <:-210) \n", + " =:[3·8·10·17·20·21·22·25·28·43·45·49·51·54·79·89·101·112·117·119·120·128·131·134·152·167·170·177·182·193·196·200·203·205·206·210·214·219·222·223·230·237·240·241]⚖[6·11·18·27·55·56·61·66·70·71·74·76·80·91·96·99·102·106·110·113·118·123·127·130·133·141·142·155·157·160·166·183·188·201·204·208·215·217·224·225·228·231·233·235] ➔ >:-201 =:-242 <:-222) \n", + " <:[14·20·36·37·46·66·82·114·128·132·139·144·167·189·194·206·208·212·217·220·221·226·231·232]⚖[10·11·13·16·40·41·53·69·74·75·76·90·98·100·124·135·146·161·170·172·184·198·202·227] ➔ >:-227 =:-191 <:-167)) \n", + " =:[2·4·14·20·24·30·36·37·43·45·48·50·51·52·56·58·59·61·68·69·70·71·74·75·78·85·90·94·103·105·106·116·121·122·130·133·134·135·136·141·145·146·150·152·159·164·172·175·176·177·181·182·188·192·200·201·205·208·215·227·241]⚖[5·6·10·11·12·17·21·23·25·31·38·42·47·53·62·66·72·79·80·82·83·86·92·93·96·111·113·115·117·118·119·120·126·129·131·153·154·155·157·161·162·165·168·170·173·179·183·186·187·193·199·214·216·221·225·226·232·234·237·238·240] ➔ \n", + " >:[2·6·15·54·60·80·94·97·99·103·104·108·109·118·119·139·145·149·154·162·164·169·178·190·211·223·226]⚖[7·16·17·22·26·50·56·61·73·77·85·89·96·100·105·107·113·122·148·161·166·179·187·202·213·235·239] ➔ >:-179 =:-216 <:-226) \n", + " =:[5·8·43·50·87·107·122·123·124·137·157·165·173·179·185·186·190·194·197·214·219·223·224·232]⚖[18·21·39·40·48·52·70·74·92·94·97·100·102·106·131·138·145·156·161·182·183·191·200·202] ➔ >:-202 =:-233 <:-219) \n", + " <:[5·12·28·32·45·51·59·60·68·69·74·75·78·87·90·92·94·96·101·117·120·122·127·145·152·153·162·167·171·175·177·190·213·223·227]⚖[4·23·33·38·47·55·62·88·93·97·102·113·118·130·140·143·150·157·159·160·168·172·181·184·185·188·192·204·208·209·211·215·224·225·242] ➔ >:-208 =:-176 <:-175)) \n", + " <:[1·3·7·13·17·20·23·34·35·41·46·48·49·64·66·70·71·77·84·87·88·99·101·113·133·134·148·152·153·162·163·168·175·180·185·187·196·197·210·217·222·223·226·227·238·240]⚖[5·10·16·22·26·50·54·58·72·73·74·83·89·91·97·112·119·121·124·125·128·129·130·135·144·146·147·158·160·164·165·167·170·172·173·174·177·178·184·192·200·213·218·229·234·242] ➔ \n", + " >:[16·17·42·81·89·112·115·130·144·166·178·185·201·219·234·235]⚖[1·26·53·56·78·91·106·113·122·136·145·148·152·165·214·216] ➔ >:-165 =:-192 <:-178) \n", + " =:[23·33·37·42·51·68·82·85·108·111·134·147·152·158·165·183·184·191·213·226·235·239·242]⚖[5·13·25·57·78·102·106·107·118·151·162·173·178·186·187·196·197·208·227·229·233·237·241] ➔ >:-241 =:-193 <:-239) \n", + " <:[16·19·25·48·51·63·68·74·105·110·120·128·131·133·147·148·157·164·189·193·196·197·210·217·236·242]⚖[2·14·17·24·33·37·70·80·84·92·101·104·117·121·127·132·144·159·161·170·180·209·211·216·219·238] ➔ >:-180 =:-187 <:-197))) \n", + " =:[4·5·6·8·9·10·11·12·13·14·17·27·41·44·46·48·49·54·55·60·61·72·73·74·75·76·79·80·82·87·89·94·103·108·113·117·120·124·125·130·131·133·137·139·140·146·147·148·149·152·154·156·157·160·161·166·168·171·183·185·186·188·189·194·197·199·201·207·208·209·212·221·225·231·237·240·241·242]⚖[3·7·18·19·22·24·25·26·32·33·35·36·37·47·51·56·58·62·65·71·77·81·88·90·92·93·95·96·98·101·102·104·106·109·110·111·115·118·119·123·127·134·135·142·143·150·153·162·163·164·165·173·174·175·178·179·180·184·190·204·205·211·213·214·216·218·219·220·222·223·226·227·228·229·232·234·235·239] ➔ \n", + " >:[1·4·5·7·9·11·12·14·17·18·20·28·29·33·34·35·39·41·42·43·45·49·51·53·59·62·64·69·74·78·79·84·89·90·94·100·104·111·115·128·130·134·136·137·138·139·146·149·152·155·162·165·166·167·172·173·181·184·187·189·191·193·195·205·207·209·212·214·224·227·231·233·234·236·242]⚖[19·22·24·30·32·40·44·54·56·60·61·63·65·66·68·70·76·81·86·87·92·93·95·98·102·103·107·114·117·118·119·120·121·124·125·126·127·131·132·133·135·140·141·142·143·144·147·150·151·154·157·161·163·164·176·178·179·182·190·194·197·200·210·213·215·219·221·223·225·229·232·237·239·240·241] ➔ \n", + " >:[11·30·37·41·51·53·59·71·74·85·88·115·122·124·128·136·144·149·157·162·167·180·184·193·201·217·223·225·235]⚖[3·7·9·12·28·42·45·46·52·56·62·65·67·84·93·95·101·120·123·139·166·183·186·189·191·192·205·229·230] ➔ >:-229 =:-232 <:-223) \n", + " =:[5·8·9·16·17·23·27·34·40·47·48·72·76·84·91·94·100·104·111·113·131·132·144·150·152·162·167·174·175·176·178·181·191·198·204·212·219·220·224·225·231·235·238·240]⚖[3·7·12·18·24·28·37·42·43·45·54·66·74·87·90·106·107·108·112·119·122·128·130·135·143·151·153·173·180·183·187·195·200·207·211·215·216·217·218·221·223·226·239·242] ➔ >:-218 =:-228 <:-174) \n", + " <:[3·11·13·26·34·35·48·53·55·59·60·78·87·88·102·104·114·121·126·131·139·151·154·162·167·172·175·178·188·191·212·213·214·218·229·232·239]⚖[5·7·12·18·23·37·45·46·50·56·62·65·66·84·90·96·105·123·124·129·136·144·147·150·152·159·182·186·198·201·205·215·216·217·228·234·236] ➔ >:-205 =:-173 <:-162)) \n", + " =:[6·7·9·11·22·29·33·34·35·36·40·45·48·50·54·57·59·60·62·71·75·76·77·78·86·97·101·108·118·120·123·125·128·133·134·139·145·147·148·151·155·160·163·166·167·170·171·177·183·185·188·189·192·193·197·198·200·201·209·210·213·214·221·223·226·229·232·234]⚖[1·3·4·12·18·19·20·25·27·30·31·41·46·49·63·65·68·69·72·73·82·89·92·93·94·98·99·100·110·111·112·113·114·115·116·122·126·131·132·140·143·144·146·149·150·152·156·157·159·162·172·176·179·184·187·190·199·203·206·207·208·215·217·219·220·227·236·237] ➔ \n", + " >:[24·27·29·37·39·41·50·65·74·76·83·86·91·93·99·120·122·126·129·134·140·141·156·172·190·191·193·197·199·217·224·226·241]⚖[1·8·10·12·13·31·32·33·45·47·60·67·70·71·73·75·114·115·119·121·128·132·135·136·143·145·148·154·171·185·186·203·240] ➔ >:-203 =:-236 <:-217) \n", + " =:[4·15·18·38·57·59·66·69·74·84·101·105·111·133·139·147·172·196·199·207·216]⚖[16·25·30·33·42·43·49·54·81·103·128·163·176·182·203·204·213·224·228·229·238] ➔ >:-238 =:-169 <:-196) \n", + " <:[9·17·27·34·41·44·60·67·117·118·122·166·198·201·209·225]⚖[20·25·31·35·107·121·123·133·148·184·200·207·210·217·219·237] ➔ >:-200 =:-170 <:-198)) \n", + " <:[9·10·12·16·20·28·30·33·35·36·37·40·41·44·45·49·56·62·64·66·67·72·73·78·85·86·93·97·99·102·103·105·108·110·117·118·138·141·146·149·152·155·157·162·165·169·171·173·175·178·179·180·182·183·184·185·186·195·196·201·209·210·215·216·223·229·235·240·242]⚖[7·14·15·17·18·22·25·31·34·42·43·47·55·59·61·68·70·71·75·76·77·81·89·90·91·104·106·107·109·113·115·119·120·124·127·128·131·135·143·144·148·153·154·158·160·163·164·166·168·170·172·174·190·192·198·202·203·204·208·217·224·225·226·232·233·236·237·238·239] ➔ \n", + " >:[16·20·24·31·34·44·45·48·51·52·78·82·85·108·109·136·143·164·166·169·179·192·212·214·216·217·227·228·238·241·242]⚖[5·12·55·67·71·75·77·89·91·100·111·116·126·132·137·138·153·159·160·168·186·188·195·197·211·215·221·225·230·231·235] ➔ >:-168 =:-237 <:-166) \n", + " =:[4·7·26·30·58·62·63·73·125·129·154·165·170·183·193·195·205·212·217·231·237]⚖[2·8·34·40·46·71·83·132·162·169·172·174·188·194·197·200·204·224·235·236·239] ➔ >:-194 =:-221 <:-212) \n", + " <:[8·15·18·24·53·66·73·95·109·110·125·130·136·150·165·176·182·183·191·200·230·232]⚖[4·27·31·44·63·90·94·101·128·131·138·158·173·174·197·207·209·222·224·225·227·233] ➔ >:-209 =:-186 <:-183))) \n", + " <:[4·7·9·10·13·16·18·21·23·24·26·27·30·32·35·44·45·47·60·62·63·77·78·79·82·83·85·87·91·93·96·100·107·108·112·113·114·115·118·139·140·141·146·151·155·156·157·158·164·166·167·168·171·173·178·182·185·189·196·197·200·204·208·209·210·214·215·217·219·225·229·237]⚖[5·17·19·22·25·36·38·39·41·46·48·50·64·68·70·71·72·74·76·80·81·86·88·92·101·102·106·109·110·111·121·124·126·127·131·134·135·142·143·145·148·149·150·153·159·161·162·165·169·177·179·181·183·184·186·188·190·193·195·202·203·205·207·216·218·227·228·234·235·236·241·242] ➔ \n", + " >:[3·5·6·7·8·9·11·18·21·22·36·39·43·49·50·51·53·62·80·81·86·93·100·104·105·111·118·120·121·125·144·145·172·197·199·204·206·207·223·234·235·238]⚖[13·14·16·20·23·24·38·40·44·60·67·69·70·79·90·91·96·98·108·109·114·119·131·135·140·142·143·150·151·155·159·176·177·178·180·184·186·188·203·210·237·241] ➔ \n", + " >:[4·9·27·29·41·48·53·57·59·76·80·94·99·100·135·139·141·145·146·150·162·166·172·177·182·185·192·195·214·228·233]⚖[1·25·37·40·54·62·65·66·82·93·111·114·125·128·131·133·140·142·158·171·174·178·179·180·184·208·213·215·218·225·231] ➔ >:-184 =:-188 <:-177) \n", + " =:[2·25·28·33·45·47·60·61·73·86·101·120·125·140·144·146·155·159·161·165·171·172·181·191·192·215·219·234·236·240]⚖[13·14·17·18·19·29·34·46·62·67·80·81·90·91·99·115·117·128·142·174·176·190·194·197·210·223·231·232·235·237] ➔ >:-190 =:-195 <:-181) \n", + " <:[50·58·60·67·85·96·103·133·134·142·153·168·174·187·189·197·202·205·210·218·234·242]⚖[10·13·28·35·45·57·62·63·68·70·87·92·117·140·179·198·201·207·212·221·223·225] ➔ >:-207 =:-235 <:-234)) \n", + " =:[2·4·9·13·16·18·25·27·28·34·40·54·58·60·63·65·70·75·76·81·84·85·88·93·97·99·101·103·104·105·117·121·124·144·149·156·158·166·174·178·182·186·193·198·201·205·206·213·214·217·218·222·224·234·238]⚖[1·5·8·15·20·21·22·26·31·32·35·47·49·55·56·61·62·69·79·82·83·86·94·96·98·111·114·116·119·123·125·129·130·136·139·141·145·150·152·153·155·157·172·175·180·184·188·191·194·208·229·230·237·239·240] ➔ \n", + " >:[1·15·64·82·96·101·105·135·143·145·147·157·160·172·176·182·189·192·194·198·227·242]⚖[12·20·21·36·42·48·62·65·75·84·87·95·99·103·115·126·142·148·164·183·230·235] ➔ >:-230 =:-240 <:-172) \n", + " =:[3·11·12·14·16·23·62·63·71·94·97·99·101·127·138·145·150·151·155·156·167·168·170·180·187·195·204·208·218·222·224·225·229·231·234·238]⚖[6·9·22·24·28·29·30·39·40·47·53·55·59·60·70·72·87·107·120·129·134·135·143·144·146·157·179·182·184·185·206·215·220·227·237·242] ➔ >:-220 =:-211 <:-231) \n", + " <:[8·11·14·31·35·46·50·51·52·61·64·82·103·121·129·132·145·146·147·154·157·173·183·189·194·199·206·214·216·225·230·233]⚖[25·29·33·54·66·70·78·79·93·96·99·111·114·120·125·128·134·139·142·148·152·160·166·167·186·197·200·213·228·229·239·241] ➔ >:-213 =:-224 <:-206)) \n", + " <:[1·9·13·26·27·28·29·35·39·45·47·49·59·69·73·74·75·82·83·84·85·91·95·96·98·100·101·104·108·109·111·115·123·126·127·129·134·136·137·138·139·140·151·153·158·160·166·167·175·180·186·195·199·203·204·207·215·217·218·223·225·227·231·236·238·239·240·241]⚖[3·4·6·11·12·17·18·20·21·23·30·37·38·42·50·51·56·60·62·63·67·70·72·80·90·97·105·107·110·114·118·120·121·124·128·132·146·147·149·150·154·155·165·170·171·173·174·179·182·183·184·190·191·194·200·206·208·209·211·213·214·216·219·222·226·229·234·235] ➔ \n", + " >:[6·9·21·40·48·57·78·79·105·106·109·124·132·141·145·154·156·166·167·171·177·178·188·190·206·216]⚖[17·20·24·29·31·32·70·77·82·85·101·115·119·131·136·137·140·152·173·182·208·210·213·220·230·237] ➔ >:-182 =:-214 <:-171) \n", + " =:[13·18·26·31·33·35·88·106·122·129·139·142·165·176·177·182·185·193·194·214·229·239]⚖[23·37·39·45·51·53·54·73·80·90·104·119·124·126·132·134·161·168·189·203·219·221] ➔ >:-189 =:-164 <:-185) \n", + " <:[7·23·48·50·55·63·79·86·97·100·106·109·110·111·114·140·147·156·178·191·206·207·211·223·225·236·241]⚖[1·3·12·16·35·36·43·61·77·81·85·99·102·112·122·123·139·145·176·177·179·189·204·221·222·224·234] ➔ >:-204 =:-215 <:-225)))) \n", + " =:[14·15·17·18·20·21·28·37·38·42·50·51·52·54·55·56·57·58·60·62·76·77·78·84·86·87·89·93·100·104·107·109·113·115·122·123·125·126·128·131·139·141·142·143·144·145·147·156·158·161·166·167·168·173·184·191·195·198·200·202·203·209·210·216·222·227·232·233·237·238·239·240·241·242]⚖[1·3·4·9·11·12·22·23·24·25·27·30·33·36·39·45·63·64·66·67·68·69·70·71·79·83·90·91·92·94·95·97·98·99·102·103·105·108·110·112·114·116·118·119·124·133·134·136·137·146·151·157·162·163·169·170·175·178·181·182·183·187·189·190·201·206·211·213·215·221·226·231·234·235] ➔ \n", + " >:[2·3·4·15·29·30·33·35·37·46·48·58·63·72·78·80·87·88·90·99·101·103·106·107·115·119·120·127·129·133·134·136·137·143·145·148·151·155·163·164·165·168·170·177·180·182·189·191·198·205·220·225·227·229·232·234·236·241·242]⚖[20·22·26·28·31·32·36·38·42·44·49·52·53·56·64·74·79·82·83·84·86·91·92·93·95·98·104·112·114·117·118·128·131·135·138·139·150·157·159·160·169·171·174·175·179·185·192·201·208·211·214·216·217·219·221·228·238·239·240] ➔ \n", + " >:[14·20·24·28·40·42·52·53·57·64·65·69·70·79·83·89·95·96·97·99·109·114·115·128·131·134·138·142·143·145·147·149·150·151·160·167·171·176·178·184·185·187·188·190·196·209·222·227·228·229·230·238]⚖[5·10·17·26·27·38·44·46·50·51·55·56·63·67·68·78·82·93·98·100·104·110·112·117·118·120·125·127·132·137·144·146·152·154·156·159·161·162·164·166·172·177·182·195·197·198·211·219·220·231·235·242] ➔ \n", + " >:[21·57·74·118·127·150·153·191·201·217·226]⚖[7·30·75·79·93·112·120·144·193·219·230] ➔ >:-112 =:-98 <:-118) \n", + " =:[7·10·13·21·22·32·40·42·49·72·74·76·82·86·92·102·111·114·119·120·124·126·129·136·150·154·159·165·167·169·170·172·176·184·188·196·198·204·218·220·224·227·229·234·236·237·242]⚖[3·4·5·14·17·19·26·29·33·34·38·44·50·52·56·58·62·63·68·69·79·81·88·89·91·107·110·115·117·127·134·138·139·143·149·152·161·173·175·183·207·208·209·212·216·217·240] ➔ >:-91 =:-157 <:-92) \n", + " <:[3·114·127·134·138·172·180·187·195]⚖[56·95·105·188·198·200·204·224·225] ➔ >:-95 =:-83 <:-114)) \n", + " =:[18·20·21·29·56·73·74·82·89·93·97·100·101·103·110·119·130·134·146·151·157·163·174·178·179·180·181·189·196·204·206·208·211·213·225·231·241]⚖[8·10·16·17·27·32·44·49·54·59·61·72·80·81·94·96·102·106·115·116·117·128·137·139·153·164·173·176·177·194·197·205·212·216·222·230·237] ➔ \n", + " >:[12·14·19·20·24·26·28·35·49·50·61·70·78·85·97·108·110·111·116·120·123·126·133·134·164·166·176·179·181·200·214·215·219·220·221·226·232·235·242]⚖[9·15·29·30·41·45·59·60·63·64·66·68·81·82·86·88·92·99·101·102·103·106·113·135·138·151·154·177·180·183·184·189·195·224·225·228·231·234·239] ➔ >:-102 =:-94 <:-116) \n", + " =:[6·9·10·21·36·38·47·52·55·58·66·69·70·101·108·114·141·142·202·211·213·218·224·228·233·240·241]⚖[12·14·20·26·32·34·39·59·73·79·87·90·103·105·106·122·125·126·127·129·144·151·167·173·196·223·234] ➔ >:-105 =:-124 <:-108) \n", + " <:[8·11·15·24·30·39·47·52·62·74·79·81·91·93·97·102·104·119·120·124·149·155·158·164·167·170·186·198·209·217·229]⚖[2·9·10·18·28·31·32·38·40·41·48·61·71·73·90·94·125·131·143·145·146·176·193·194·205·213·219·223·233·237·240] ➔ >:-146 =:-110 <:-97)) \n", + " <:[6·14·16·24·29·33·35·41·49·59·64·71·74·82·85·91·92·94·95·96·103·114·115·126·129·131·134·137·139·141·143·152·156·158·160·162·163·166·174·175·180·186·187·191·196·197·210·212·220·222·229·234·235·237·238·240]⚖[1·3·10·17·21·30·31·36·39·45·48·51·56·58·60·61·66·67·72·73·77·83·86·93·97·99·104·109·110·112·116·117·118·119·123·124·125·128·132·136·144·148·159·167·168·171·172·181·185·207·208·217·223·230·232·239] ➔ \n", + " >:[3·11·12·13·17·19·24·30·36·37·42·46·47·49·57·71·72·96·99·104·106·109·124·126·132·142·157·163·172·198·201·203·206·209·217·218·219·220·221·229·234·236]⚖[4·5·9·18·26·29·31·40·43·58·60·63·67·74·95·110·118·127·130·131·133·134·136·145·148·154·155·156·158·159·161·162·164·165·166·168·182·187·208·213·214·226] ➔ >:-136 =:-119 <:-99) \n", + " =:[2·6·7·12·13·15·17·18·31·36·39·41·46·49·59·62·63·69·79·85·87·88·100·109·117·133·137·145·146·147·153·161·163·165·166·183·184·185·188·193·204·206·213·216·231·238·242]⚖[14·26·34·44·55·57·58·65·68·75·82·84·86·95·101·102·103·104·112·121·122·123·127·129·136·144·150·151·157·167·168·173·174·181·187·194·197·207·209·211·220·226·233·234·237·240·241] ➔ >:-151 =:-90 <:-133) \n", + " <:[24·25·42·45·61·64·67·73·75·85·88·110·114·118·126·132·137·146·149·151·158·162·163·173·178·189·198·204·216·217·225]⚖[1·2·11·13·28·32·51·52·59·78·83·94·97·102·105·107·119·127·134·154·161·165·185·202·211·213·220·222·229·231·233] ➔ >:-134 =:-103 <:-137))) \n", + " =:[2·4·5·6·8·9·10·12·14·15·18·19·21·22·26·27·31·32·36·42·44·45·50·53·56·63·67·68·73·74·75·78·79·81·82·86·93·96·97·98·105·109·111·115·118·124·128·137·140·142·145·148·153·154·155·157·159·162·166·170·175·176·180·183·184·187·192·195·199·209·214·217·219·221·222·223·231·233·235·238]⚖[11·13·20·25·33·35·37·39·40·43·46·47·49·52·54·55·57·58·59·60·61·62·64·65·71·76·80·83·84·87·88·89·90·95·100·106·107·110·116·117·120·125·127·131·132·133·135·136·138·139·144·150·151·158·164·165·167·168·169·171·178·181·189·191·193·197·200·201·206·207·208·215·216·225·226·227·230·239·240·241] ➔ \n", + " >:[1·11·13·16·23·28·31·38·40·43·44·45·47·48·49·50·58·65·66·73·76·79·81·83·85·88·96·97·99·100·101·105·107·108·116·118·124·130·133·134·136·138·144·145·147·150·159·161·166·168·169·170·175·184·189·192·193·194·195·200·202·216·217·219·221·222·223·225·228·229·235·238·240·241]⚖[3·5·7·10·15·19·20·24·26·27·29·37·39·41·42·52·53·56·60·64·67·69·75·78·80·82·90·92·98·103·106·110·111·112·113·114·115·119·120·122·125·126·131·132·137·140·142·152·156·157·158·162·163·171·176·178·182·187·188·190·196·198·205·208·210·215·218·220·224·226·227·230·237·239] ➔ \n", + " >:[23·51·60·66·80·103·105·112·114·132·142·159·176·179·201·217·223·233·234·236]⚖[14·48·79·88·97·101·102·104·120·124·137·144·169·177·200·215·218·225·232·239] ➔ >:-120 =:-106 <:-132) \n", + " =:[1·7·12·14·20·34·35·36·49·51·57·76·92·93·95·120·122·135·144·146·151·157·159·162·169·174·180·189·190·206·223·225·234·239·240]⚖[3·13·17·23·27·28·45·50·56·65·66·68·78·79·84·87·112·114·117·118·133·134·138·141·149·156·163·172·185·191·192·199·204·205·218] ➔ >:-117 =:-127 <:-135) \n", + " <:[2·12·21·31·33·34·70·81·86·88·101·105·109·110·115·117·123·124·125·129·131·133·149·156·159·165·195·203·211·215·216·220·225·237·239·241·242]⚖[10·16·23·35·45·52·56·57·61·64·68·69·72·98·108·119·120·134·137·138·140·143·144·155·157·161·164·168·179·182·185·187·190·191·204·224·228] ➔ >:-138 =:-150 <:-88)) \n", + " =:[4·7·11·12·16·25·26·33·43·49·50·55·56·58·67·70·71·73·74·92·93·95·97·98·100·101·105·107·117·130·140·145·147·148·149·153·154·156·159·173·174·178·187·188·208·212·214·216·230·234·238·239]⚖[1·3·10·19·23·36·37·44·45·47·52·53·54·57·59·62·63·65·66·76·77·81·85·90·91·103·119·127·128·129·134·142·151·152·158·161·163·166·179·182·192·193·194·200·201·205·218·231·232·235·237·241] ➔ \n", + " >:[40·55·68·73·75·77·85·88·94·95·98·110·121·135·159·186·197·214·229·238]⚖[32·42·43·57·62·86·87·113·117·133·152·170·173·184·192·193·196·205·211·215] ➔ >:-152 =:-129 <:-85) \n", + " =:[9·11·27·29·31·36·38·43·44·45·46·48·53·66·70·71·88·93·99·104·106·113·114·118·120·121·124·126·129·131·137·148·151·155·161·162·165·166·167·170·171·173·177·181·182·189·190·192·198·207·212·218·222·234·238·240]⚖[2·3·7·8·10·12·13·14·19·21·22·23·34·55·60·64·69·73·74·81·82·83·89·90·91·94·98·101·107·115·123·135·136·140·141·143·149·156·160·163·164·168·180·186·187·191·196·199·202·208·220·224·226·228·229·242] ➔ >:-160 =:0 <:-121) \n", + " <:[8·9·13·20·26·28·29·34·38·48·51·54·58·78·81·88·92·99·105·111·112·116·120·122·128·130·131·136·146·147·153·160·165·168·170·178·188·189·193·202·205·208·212·213·214·222·228·231·239·241]⚖[2·5·7·10·31·33·52·61·62·63·65·66·68·75·79·82·83·87·89·95·98·100·102·107·114·119·126·127·149·158·161·169·174·176·184·190·201·206·207·209·210·216·219·220·225·226·233·234·240·242] ➔ >:-149 =:-101 <:-130)) \n", + " <:[1·8·15·17·21·23·28·30·34·36·42·46·64·70·76·79·82·89·93·102·107·112·114·115·116·117·133·138·141·146·148·157·159·161·165·176·185·186·190·194·201·203·204·208·211·212·214·216·220·224·228·230·233·237·240]⚖[2·10·14·16·19·22·25·31·40·43·47·56·59·62·67·68·69·71·72·73·77·83·85·87·88·90·91·96·98·100·103·104·105·108·119·121·128·129·144·150·151·153·154·160·162·173·174·182·198·199·202·218·221·223·234] ➔ \n", + " >:[4·11·28·52·55·57·60·89·96·98·123·152·176·178·183·198·220·226]⚖[3·8·21·22·29·39·42·54·61·80·84·107·132·148·154·164·231·233] ➔ >:-154 =:-153 <:-96) \n", + " =:[28·31·39·47·56·61·75·98·114·140·141·153·158·164·170·173·184·191·193·225·233·236·237·238·239·241]⚖[5·9·21·24·33·43·45·48·73·80·81·89·95·104·111·113·123·132·142·149·171·188·209·220·230·232] ➔ >:-111 =:-155 <:-140) \n", + " <:[3·4·5·14·17·18·22·25·40·42·52·57·65·66·75·76·78·82·92·94·99·110·126·127·128·132·134·145·146·150·153·157·158·162·166·180·206·210·211·225·227·240]⚖[1·2·8·16·19·23·30·33·41·47·55·56·61·64·70·73·85·95·96·106·107·125·129·142·148·151·164·171·173·176·182·183·187·193·195·198·200·208·215·218·230·239] ➔ >:-148 =:-159 <:-82))) \n", + " <:[5·8·9·15·16·27·28·32·43·46·50·54·55·59·61·63·65·74·75·78·79·81·89·90·91·96·100·108·115·117·122·123·124·125·127·130·131·132·143·146·148·156·159·160·162·164·169·171·173·176·179·181·182·196·198·200·201·202·208·210·215·218·219·222·223·224·234·239·242]⚖[1·3·4·7·12·22·29·33·35·36·38·39·42·48·52·57·58·64·67·68·72·80·83·84·85·86·87·88·93·94·97·98·99·102·107·111·113·121·126·133·137·141·144·153·163·167·170·172·184·185·187·188·192·193·195·199·203·205·206·207·209·211·212·221·225·231·232·236·237] ➔ \n", + " >:[4·5·11·12·13·14·17·24·31·36·46·47·51·52·55·60·64·82·87·90·92·97·103·104·105·107·116·119·120·122·125·128·132·134·137·139·141·146·149·151·160·168·169·176·183·188·193·195·202·204·206·209·220·224·226·230·232·236·240·241]⚖[6·8·9·10·22·23·25·27·28·29·34·35·37·38·40·45·49·57·59·88·93·99·100·102·106·113·114·118·121·126·140·153·154·159·162·165·166·170·171·172·173·174·175·177·178·179·186·187·200·201·203·210·214·217·219·223·227·229·231·234] ➔ \n", + " >:[5·11·12·24·26·43·48·60·63·66·69·73·79·82·85·87·93·98·101·114·129·131·132·139·142·162·163·164·165·168·172·188·212·220·226·228·232·234]⚖[2·8·9·16·20·25·30·36·38·39·41·49·58·68·70·71·76·80·95·105·106·109·110·111·120·126·151·161·166·174·179·183·184·191·201·210·236·238] ➔ >:-126 =:-113 <:-93) \n", + " =:[9·43·54·81·97·106·130·144·145·147·148·149·177·197·199·201·202·209·217·236·241]⚖[1·3·24·29·32·36·37·44·70·72·79·83·86·95·133·139·163·179·200·210·211] ➔ >:-86 =:-84 <:-144) \n", + " <:[5·17·22·23·31·34·43·45·46·51·63·64·66·70·74·81·87·90·106·112·114·116·121·124·129·134·137·144·145·155·164·170·171·176·179·180·184·185·188·203·206·209·214·216·219·239·242]⚖[3·4·7·13·21·30·32·36·39·40·48·56·59·60·73·77·79·91·93·96·105·107·126·132·136·147·149·151·153·154·156·161·165·174·177·181·183·189·192·205·207·211·212·220·235·236·237] ➔ >:-107 =:-141 <:-87)) \n", + " =:[1·4·7·10·13·21·22·23·27·29·35·38·39·40·42·44·49·50·61·62·63·64·67·72·81·82·84·85·87·88·90·112·114·117·118·121·125·133·139·144·147·149·157·159·161·168·174·176·177·178·181·183·187·190·191·192·197·198·199·201·203·209·212·220·225·226·235]⚖[2·6·8·12·14·15·17·20·25·26·32·36·43·45·46·51·56·58·65·69·73·74·75·76·77·83·94·98·106·109·111·122·132·135·136·138·140·142·143·146·148·151·152·154·156·158·164·166·171·175·180·185·188·193·194·204·205·208·216·217·218·228·231·233·238·240·242] ➔ \n", + " >:[19·37·60·66·67·86·96·102·106·118·122·123·138·142·144·147·153·168·174·181·185·194·199·205·211·213·221·227·229]⚖[22·24·26·31·49·53·56·70·73·83·101·134·140·145·148·156·158·159·173·176·180·182·186·197·204·214·232·233·240] ➔ >:-158 =:-109 <:-142) \n", + " =:[9·28·37·38·49·58·59·70·84·90·94·97·103·113·119·120·135·136·137·139·145·148·149·155·158·185·194·199·219·220·227·229·231]⚖[1·22·23·29·39·47·51·53·54·67·71·82·89·92·99·101·104·153·156·160·161·165·171·172·175·197·214·215·225·228·232·233·235] ➔ >:-104 =:-128 <:-145) \n", + " <:[50·70·84·130·161·182·197·238]⚖[39·42·44·54·109·139·230·231] ➔ >:-139 =:-147 <:-161)) \n", + " <:[7·10·11·21·38·43·52·61·64·65·66·72·88·96·97·114·115·118·120·122·124·126·130·131·147·150·182·185·189·193·196·199·204·215·224·235·239]⚖[2·6·13·20·25·29·36·40·41·44·45·68·73·74·76·79·91·109·123·125·127·135·137·139·143·160·164·170·174·177·178·184·202·231·233·237·242] ➔ \n", + " >:[2·5·10·14·18·21·25·28·37·44·47·56·65·68·75·79·82·86·92·95·101·103·110·117·123·127·133·135·142·144·145·151·165·182·184·189·199·201·205·208·220·224·235·236]⚖[16·20·22·27·33·34·39·41·50·60·61·66·72·81·93·98·111·119·121·131·139·141·143·148·150·160·161·164·173·178·187·193·195·207·209·210·211·213·228·229·230·232·238·239] ➔ >:-143 =:-125 <:-123) \n", + " =:[6·38·51·54·57·63·64·69·75·77·103·104·117·122·128·129·142·152·153·156·163·167·173·188·206·224·226·231·236]⚖[5·10·12·14·21·22·32·47·55·89·92·106·107·109·115·125·127·130·138·139·180·184·186·202·204·211·220·233·238] ➔ >:-89 =:-100 <:-156) \n", + " <:[9·19·28·30·47·54·57·62·63·66·70·72·77·79·80·81·82·88·89·99·109·112·114·120·122·125·128·139·148·156·160·170·175·178·179·187·189·193·194·204·206·214·223·233]⚖[8·12·16·18·21·27·37·38·49·52·56·58·60·64·84·98·104·110·115·119·127·135·141·144·145·146·147·152·162·164·168·174·180·183·190·202·216·224·228·231·232·237·239·240] ➔ >:-115 =:-131 <:-122)))) \n", + " <:[1·2·4·8·9·11·12·20·25·27·30·31·32·35·36·40·45·51·54·56·58·62·63·66·72·79·80·82·84·86·92·104·119·124·137·140·141·142·144·148·151·154·158·159·162·163·167·168·170·171·173·175·179·182·183·185·187·193·195·199·200·201·203·204·213·215·216·219·220·223·226·228·231·234·239·242]⚖[5·10·15·19·21·29·37·38·39·43·46·50·52·53·55·59·64·67·68·69·70·71·73·74·76·77·81·87·88·90·91·94·97·98·101·103·106·107·109·111·113·129·131·133·135·136·138·143·145·149·156·157·164·165·169·174·177·178·186·190·192·194·197·198·202·208·212·221·222·224·225·229·233·235·237·240] ➔ \n", + " >:[1·3·10·12·20·23·27·28·29·31·32·35·41·45·48·49·50·52·53·56·62·64·68·73·74·75·78·83·87·92·98·99·100·104·107·108·116·118·119·123·124·126·132·139·144·149·159·160·165·166·172·176·178·183·184·186·187·193·194·195·199·207·220·221·222·223·229·230·235·236·240]⚖[4·5·11·13·14·17·19·22·24·26·33·38·40·43·44·47·55·67·70·71·72·77·80·89·90·91·97·109·122·125·128·129·135·137·143·146·153·154·157·161·167·168·169·173·174·181·182·185·188·190·191·197·203·204·205·206·210·211·212·213·218·219·224·225·228·231·232·237·238·241·242] ➔ \n", + " >:[2·3·6·9·13·15·19·31·32·46·48·49·53·56·58·61·66·67·68·69·72·74·76·77·79·85·86·88·99·100·105·106·107·108·111·115·119·120·121·127·131·132·134·141·154·155·166·168·173·190·191·192·193·194·195·197·203·206·208·214·217·219·222·224·228·235·236]⚖[4·5·7·10·18·21·26·27·28·33·34·42·50·51·52·55·59·65·71·78·80·81·82·92·93·96·101·102·110·113·122·125·130·135·137·140·147·151·152·159·161·162·164·165·171·172·174·176·179·182·188·189·196·205·207·209·211·212·216·218·227·229·231·232·234·239·241] ➔ \n", + " >:[71·81·129·131·173·185·201]⚖[51·55·76·82·109·204·206] ➔ >:-55 =:-5 <:-71) \n", + " =:[5·20·22·27·43·49·50·66·68·69·72·74·80·82·89·95·100·116·133·136·139·160·163·176·188·191·196·210·211·218·226·234·236]⚖[2·17·38·39·57·59·60·61·83·106·112·114·129·135·143·148·152·156·162·166·173·175·206·209·213·214·216·217·222·223·224·225·232] ➔ >:-38 =:-70 <:-43) \n", + " <:[3·12·22·28·32·44·70·77·83·122·145·162·182·198·200·205·206]⚖[4·45·51·67·68·72·75·86·181·190·197·202·214·216·230·238·242] ➔ >:-67 =:-19 <:-77)) \n", + " =:[3·5·6·19·21·26·33·34·35·39·47·48·52·57·59·71·100·104·107·118·120·122·123·128·129·141·150·162·164·166·170·177·188·194·195·197·201·202·211·214·219·220·223·224·228·230·231·233·237·240·241]⚖[2·7·10·22·23·24·25·27·37·42·51·65·70·72·76·80·81·86·91·96·98·99·105·110·112·117·124·131·136·139·140·143·146·151·153·158·159·160·167·179·180·181·187·190·192·205·207·208·216·226·238] ➔ \n", + " >:[6·10·26·30·32·37·39·47·60·66·75·94·97·119·137·153·196·197·232]⚖[3·4·7·15·27·42·54·64·81·92·102·116·143·162·163·175·182·186·209] ➔ >:-81 =:-76 <:-37) \n", + " =:[2·21·31·35·54·55·69·96·101·155·158·160·166·183·186·201·215·222·223·240]⚖[8·15·16·25·30·51·53·57·80·97·107·114·148·165·173·180·194·200·206·212] ➔ >:-15 =:-46 <:-69) \n", + " <:[6·13·14·40·44·51·52·59·98·100·111·113·120·127·143·148·159·161·164·166·171·177·181·207·226]⚖[28·32·39·48·55·67·71·76·90·91·95·124·133·146·152·155·158·168·190·196·197·222·223·240·241] ➔ >:-39 =:-21 <:-59)) \n", + " <:[18·19·25·34·35·36·40·43·48·50·52·54·56·58·73·77·85·92·94·118·119·125·146·148·153·162·164·166·167·168·172·177·180·181·182·191·192·201·205·206·209·215·216·219·220·226·227·230·238·242]⚖[1·6·20·22·28·29·30·41·49·51·53·63·72·74·78·87·89·96·98·101·102·103·106·107·111·114·116·124·133·135·136·137·141·149·161·169·173·174·176·178·186·193·194·195·203·210·224·228·231·241] ➔ \n", + " >:[1·2·18·21·22·32·36·44·46·48·51·57·59·60·61·67·74·77·80·82·83·95·98·99·101·107·110·114·116·120·128·138·141·145·154·169·192·194·195·196·209·219·231]⚖[8·9·20·27·29·30·38·40·54·63·66·69·81·84·90·92·93·96·113·115·117·121·126·131·136·160·167·176·190·197·207·210·211·212·214·216·218·226·229·235·239·241·242] ➔ >:-29 =:-53 <:-74) \n", + " =:[3·21·26·36·39·43·68·70·74·77·80·85·87·97·101·108·115·121·122·131·142·153·157·160·165·167·170·171·178·181·197·201·204·229·232]⚖[4·11·19·29·30·37·45·46·50·53·59·63·64·65·69·96·98·100·102·103·104·133·135·144·150·174·195·207·208·216·221·223·228·238·239] ➔ >:-64 =:-10 <:-68) \n", + " <:[5·31·52·62·75·84·117·137·140·141·156·161·169·170·172·174·179·192·206·212·214·215·218·224·234]⚖[10·15·28·34·41·43·45·56·57·67·68·70·73·77·85·111·125·148·151·165·171·187·188·209·231] ➔ >:-73 =:-50 <:-52))) \n", + " =:[3·7·8·9·14·16·26·36·44·49·52·59·61·62·65·66·72·76·77·80·81·83·84·85·87·89·95·96·99·102·106·109·111·112·114·115·119·123·124·126·129·133·137·140·141·142·143·144·149·152·155·157·158·161·165·170·182·184·187·192·199·202·204·208·209·210·213·216·217·220·222·223·224·225·226·227·228·233·239]⚖[2·4·5·6·11·13·15·17·21·22·23·27·31·33·34·35·45·48·51·56·63·64·67·68·69·70·78·79·82·86·91·92·94·97·98·100·108·113·120·121·125·128·131·134·139·147·154·156·159·160·163·167·168·169·172·174·176·181·183·185·194·195·196·203·205·211·215·218·219·221·230·231·232·234·235·236·240·241·242] ➔ \n", + " >:[12·21·28·29·30·33·34·39·42·47·51·53·72·76·77·78·80·83·92·97·102·109·128·144·146·155·159·160·167·172·181·187·188·190·197·213·217·219·221·228·234·242]⚖[8·16·17·20·22·26·32·37·48·50·55·57·63·66·67·68·71·74·94·99·110·113·117·118·121·130·134·136·137·139·154·171·176·182·184·185·196·203·205·206·224·241] ➔ \n", + " >:[6·17·20·23·36·45·51·54·58·77·89·90·101·110·112·117·126·129·131·133·173·178·183·187·205·218·222·224·233]⚖[1·11·13·18·22·30·32·38·43·44·78·79·80·94·96·111·122·125·128·150·156·158·160·170·193·201·216·231·239] ➔ >:-22 =:-48 <:-17) \n", + " =:[6·9·21·50·61·63·76·77·78·108·155·164·211]⚖[23·42·56·70·81·84·100·132·137·141·217·218·224] ➔ >:-23 =:-13 <:-6) \n", + " <:[13·20·26·27·28·34·36·37·49·54·59·60·67·68·71·72·75·91·100·119·126·137·141·142·149·164·165·170·191·205·214·215·221·223·227·239]⚖[14·33·46·55·57·65·69·73·79·81·82·86·89·90·94·104·113·123·124·131·139·161·179·192·208·216·222·224·225·226·229·230·231·233·236·240] ➔ >:-33 =:-78 <:-34)) \n", + " =:[1·9·11·13·16·17·19·21·26·30·31·33·34·38·41·49·50·60·63·64·69·75·80·84·85·104·105·106·107·113·117·119·121·130·132·141·143·144·146·148·150·156·159·160·163·167·168·169·171·173·176·179·188·189·192·195·196·200·201·204·206·207·218·222·226·227·232·234·242]⚖[3·4·12·14·18·22·25·28·29·35·37·43·45·53·55·57·59·61·68·72·73·74·76·78·79·86·88·90·91·92·93·95·96·97·98·99·100·101·109·115·120·123·124·125·126·127·128·129·140·145·151·158·162·164·170·172·183·184·185·193·194·199·213·214·215·221·225·228·231] ➔ \n", + " >:[3·5·25·41·44·46·50·51·56·57·62·68·69·75·76·77·79·84·86·95·98·99·102·105·106·109·110·114·123·136·145·146·152·155·158·161·162·167·169·170·171·177·182·193·194·198·200·201·203·212·216·221·223·225·226·233·234·240·242]⚖[14·16·17·21·23·28·29·32·43·45·48·49·55·58·64·72·87·89·90·91·94·97·101·103·104·108·112·113·115·117·118·120·127·131·143·148·150·154·156·179·181·183·187·188·191·192·195·199·202·204·207·210·211·214·217·222·229·237·239] ➔ >:-28 =:-18 <:-57) \n", + " =:[1·6·36·37·42·43·46·59·73·80·88·96·125·131·143·144·158·160·165·171·201·217·220·233·236·239·240]⚖[13·14·15·19·22·25·30·41·47·51·67·70·81·87·93·109·110·117·118·121·127·163·166·195·205·212·215] ➔ >:-47 =:-24 <:-42) \n", + " <:[17·19·26·37·41·49·52·63·70·90·98·109·113·117·128·130·131·136·137·140·152·156·164·166·174·184·189·190·199·200·207·212·222·225·233·239·240·241]⚖[6·8·11·24·28·31·32·42·46·56·60·61·66·73·79·80·82·86·97·99·114·149·150·153·154·162·165·180·192·194·197·214·221·227·229·231·234·242] ➔ >:-60 =:-75 <:-41)) \n", + " <:[1·8·9·16·18·26·29·33·38·42·53·54·55·56·62·64·65·68·78·85·87·89·93·94·95·102·105·110·120·124·128·140·149·151·153·154·157·166·175·183·187·188·189·190·193·196·197·198·199·203·213·220·221·223·234·238·242]⚖[6·7·10·12·15·17·21·22·24·30·32·34·37·44·51·61·70·73·74·76·77·81·82·99·100·103·104·106·111·114·121·122·131·136·138·139·144·161·171·174·177·180·181·185·186·192·195·204·207·219·222·224·226·232·237·240·241] ➔ \n", + " >:[9·11·15·24·27·28·33·35·37·40·44·50·55·56·60·62·77·82·92·96·99·101·106·116·129·150·152·155·157·160·162·167·177·181·183·185·190·195·203·208·217·223·226·235·237]⚖[1·2·3·7·14·22·26·30·47·59·67·69·71·73·74·80·83·97·100·105·113·117·119·123·127·128·130·131·143·144·165·171·175·178·189·205·206·218·222·224·225·233·238·239·241] ➔ >:-7 =:-61 <:-44) \n", + " =:[43·49·79·124·128·136·141·148·149·162·201·206·239]⚖[14·18·19·28·34·54·119·120·160·170·171·194·203] ➔ >:-14 =:-3 <:-49) \n", + " <:[11·18·21·26·61·75·82·84·98·120·132·157·181·205·213·217·221·222·233]⚖[14·16·69·71·93·100·125·141·143·150·154·158·176·186·191·208·210·212·229] ➔ >:-16 =:-65 <:-26))) \n", + " <:[1·2·3·15·16·18·19·25·26·30·31·32·33·34·40·41·42·43·45·48·54·60·74·75·77·88·89·96·97·98·101·105·107·114·115·116·120·123·125·126·128·134·139·147·160·171·174·175·177·180·182·185·187·189·190·192·197·199·200·201·203·209·218·221·224·228·229·232·233·240]⚖[4·11·13·20·21·24·28·36·37·39·49·51·56·57·61·62·65·68·70·78·79·80·82·85·91·93·95·102·110·112·118·119·122·124·129·136·137·145·148·150·154·159·164·166·167·168·170·172·179·181·183·184·188·191·194·196·204·207·208·211·212·213·215·220·223·226·234·237·241·242] ➔ \n", + " >:[4·5·7·10·17·18·21·34·40·44·45·46·48·57·60·68·70·74·79·80·81·98·99·106·118·130·131·132·139·140·143·159·162·166·168·187·192·193·198·202·208·209·212·213·219·220·221·225·229·237·240]⚖[1·9·11·12·22·24·28·30·37·39·51·55·56·64·73·75·77·83·84·85·86·91·95·101·111·114·116·122·123·126·127·128·133·136·141·142·148·149·153·154·155·184·195·205·207·214·223·226·228·230·235] ➔ \n", + " >:[26·40·46·51·83·84·85·87·127·136·139·163·180·199·202·221·227·234·242]⚖[11·27·28·43·44·49·72·75·111·117·123·143·144·155·189·190·208·209·210] ➔ >:-11 =:-56 <:-51) \n", + " =:[5·8·25·35·37·45·51·56·57·62·71·73·75·87·90·104·119·148·156·187·192·194·197·209·226·228]⚖[4·6·16·17·20·29·46·65·67·70·84·88·93·97·98·123·137·142·153·174·183·201·219·220·225·238] ➔ >:-20 =:-36 <:-62) \n", + " <:[2·10·23·34·36·38·41·44·46·50·53·63·76·78·80·85·91·95·101·106·107·113·118·133·134·136·137·140·147·155·159·165·188·192·199·200·202·204·205·224·232]⚖[8·12·13·15·20·25·35·39·40·56·57·62·65·74·79·83·84·92·98·109·111·121·123·125·128·138·142·143·146·167·172·185·194·196·211·216·218·219·229·231·237] ➔ >:-79 =:-4 <:-80)) \n", + " =:[6·9·12·14·16·18·19·23·25·30·31·32·34·37·48·49·52·53·58·64·65·67·69·70·73·78·82·83·85·86·87·89·90·91·96·97·103·105·107·110·116·117·118·124·132·133·137·143·144·147·148·151·159·160·161·164·165·167·169·171·172·174·177·184·185·193·194·197·200·205·208·209·215·220·225·226·232·233·236·238·239]⚖[2·3·5·8·11·13·15·22·24·26·29·36·38·39·40·41·50·51·57·59·61·63·72·76·77·79·81·92·95·98·99·101·104·106·111·119·120·122·123·126·130·131·134·139·140·141·142·145·149·150·153·154·155·157·162·163·166·173·176·178·181·189·190·196·198·204·206·211·212·213·217·218·221·222·223·224·227·229·231·234·237] ➔ \n", + " >:[8·47·54·79·105·141·150·172·193·201]⚖[5·6·59·63·117·137·159·160·177·180] ➔ >:-63 =:-72 <:-8) \n", + " =:[34·40·48·59·66·78·89·91·98·101·110·112·117·123·131·158·159·162·174·189·206·208·213·220·228·233·239·241]⚖[8·17·35·36·50·58·63·75·79·82·88·94·96·97·105·118·132·137·147·148·175·183·185·186·190·201·211·218] ➔ >:-35 =:-27 <:-66) \n", + " <:[1·7·12·32·34·41·44·75·95·96·99·120·132·139·144·149·189·196·204·225]⚖[23·58·71·84·90·106·118·124·126·143·155·156·166·177·178·195·207·213·229·234] ➔ >:-58 =:-9 <:-12)) \n", + " <:[12·16·21·23·25·30·32·36·38·41·44·46·57·60·61·63·65·69·71·72·82·88·90·93·95·99·105·106·127·136·144·146·148·151·157·172·175·176·177·191·193·199·200·201·202·204·206·211·216·217·218·221·234·236]⚖[3·5·8·18·22·24·27·34·40·45·47·54·68·79·81·84·86·87·92·97·101·102·111·114·116·117·124·125·134·137·139·142·143·145·150·152·153·154·155·156·161·162·169·174·179·180·183·189·192·195·205·213·230·235] ➔ \n", + " >:[36·41·54·64·67·125·148·179·185·231·235·239]⚖[14·19·22·40·98·116·127·161·164·177·193·203] ➔ >:-40 =:-45 <:-54) \n", + " =:[1·13·16·17·24·25·27·41·42·46·49·51·55·59·68·72·81·83·85·86·87·89·96·99·101·105·107·123·127·132·136·140·142·143·144·149·151·162·164·165·166·171·174·183·184·185·199·200·208·218·225·234·236·237]⚖[5·9·12·21·23·26·28·30·31·32·35·36·38·53·54·56·58·60·62·65·69·70·71·79·95·100·104·108·109·110·115·116·119·122·131·152·153·168·169·170·179·180·186·187·190·192·202·207·210·212·213·227·228·239] ➔ >:-31 =:-2 <:-1) \n", + " <:[25·54·57·74·82·102·104·110·131·132·161·193·202·207·210·212·224·241]⚖[1·3·5·19·29·32·60·72·76·103·116·123·126·155·169·200·209·216] ➔ >:-32 =:-30 <:-25)))))\n" ] } ], @@ -1261,9 +1511,12 @@ "# What's Next?\n", "\n", "- What other puzzles can you solve?\n", - "- Can you make a table of solvable and unsolvable puzzles?\n", + "- Can you make a table of solved and unsolved puzzles? \n", + "- Can you prove the unsolved puzzles are unsolvable? \n", + "- Can you prove that it is never necessary to put more than 1/3 the number of balls (rounded up) on either side?\n", "- What happens when it is a possibility that *two or more* balls are odd?\n", - "- Can you prove which puzzles are unsolvable? Can you modify the `good_partitions` function to be exhaustive (but not redundant, and still efficient)?\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.\n", + "- Can you modify the `good_partitions` function to be exhaustive (but not redundant, and still efficient)?\n", "- Can you find trees that minimize the *mean* number of weighings, rather than minimizing the *maximum* number of weighings?\n", "- What else can you discover?\n" ]