{ "cells": [ { "cell_type": "markdown", "id": "06774c1b-6cc6-4f6e-8f4a-bafd572f8ac3", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "# Topological Functions" ] }, { "cell_type": "code", "execution_count": 517, "id": "5178de6f-a93c-45b1-9608-b0bbe8a771f2", "metadata": {}, "outputs": [], "source": [ "from itertools import chain, combinations, permutations, product, pairwise\n", "from math import prod, log\n", "from copy import deepcopy\n", "import networkx as nx\n", "from fractions import Fraction\n", "import json\n", "from operator import add\n", "\n", "def hs_array_to_fr(hs_array):\n", " return prod([pow(dims[d], hs_array[d]) for d in range(len(dims))])\n", "\n", "def hs_array_to_cents(hs_array):\n", " return (1200 * log(hs_array_to_fr(hs_array), 2))\n", "\n", "def expand_pitch(hs_array):\n", " expanded_pitch = list(hs_array)\n", " frequency_ratio = hs_array_to_fr(hs_array)\n", " if frequency_ratio < 1:\n", " while frequency_ratio < 1:\n", " frequency_ratio *= 2\n", " expanded_pitch[0] += 1\n", " elif frequency_ratio >= 2:\n", " while frequency_ratio >= 2:\n", " frequency_ratio *= 1/2\n", " expanded_pitch[0] += -1\n", " return tuple(expanded_pitch)\n", "\n", "def expand_chord(chord):\n", " return tuple(expand_pitch(p) for p in chord)\n", "\n", "def collapse_pitch(hs_array):\n", " collapsed_pitch = list(hs_array)\n", " collapsed_pitch[0] = 0\n", " return tuple(collapsed_pitch)\n", "\n", "def collapse_chord(chord):\n", " return tuple(collapse_pitch(p) for p in chord)\n", "\n", "def transpose_pitch(pitch, trans):\n", " return tuple(map(add, pitch, trans))\n", "\n", "def transpose_chord(chord, trans):\n", " return tuple(transpose_pitch(p, trans) for p in chord)\n", "\n", "def cent_difference(hs_array1, hs_array2):\n", " return hs_array_to_cents(hs_array2) - hs_array_to_cents(hs_array1)\n", "\n", "def pitch_difference(hs_array1, hs_array2):\n", " return transpose_pitch(hs_array1, [p * -1 for p in hs_array2])\n", "\n", "# this is modified for different chord sizes like original version\n", "def grow_chords(chord, root, min_chord_size, max_chord_size):\n", " #this could use the tranpose_pitch function\n", " branches = [branch for alt in [-1, 1] for d in range(1, len(root)) if (branch:=(*(r:=root)[:d], r[d] + alt, *r[(d + 1):])) not in chord]\n", " subsets = chain.from_iterable(combinations(branches, r) for r in range(1, max_chord_size - len(chord) + 1))\n", " for subset in subsets:\n", " extended_chord = chord + subset\n", " if(len(extended_chord) < max_chord_size):\n", " for branch in subset:\n", " yield from grow_chords(extended_chord, branch, min_chord_size, max_chord_size)\n", " if(len(extended_chord) >= min_chord_size):\n", " yield tuple(sorted(extended_chord, key=hs_array_to_fr))\n", "\n", "def chords(chord, root, min_chord_size, max_chord_size):\n", " # this will filter out the 4x dups of paths that are loops, there might be a faster way to test this\n", " return set(grow_chords(chord, root, min_chord_size, max_chord_size))\n", "\n", "# this is very slow, I have an idea in mind that my be faster by simply growing the chords to max_chord_size + max_sim_diff\n", "# technically at that point you have generated both chords and can get the second chord from the first\n", "def edges(chords, min_symdiff, max_symdiff, max_chord_size): \n", "\n", " def reverse_movements(movements):\n", " return {value['destination']:{'destination':key, 'cent_difference':value['cent_difference'] * -1} for key, value in movements.items()}\n", "\n", " def is_directly_tunable(intersection, diff):\n", " # this only works for now when intersection if one element - need to fix that\n", " return max([sum(abs(p) for p in collapse_pitch(pitch_difference(d, list(intersection)[0]))) for d in diff]) == 1\n", "\n", " for combination in combinations(chords, 2):\n", " [expanded_base, expanded_comp] = [expand_chord(chord) for chord in combination]\n", " edges = []\n", " transpositions = set(pitch_difference(pair[0], pair[1]) for pair in set(product(expanded_base, expanded_comp)))\n", " for trans in transpositions:\n", " expanded_comp_transposed = transpose_chord(expanded_comp, trans)\n", " intersection = set(expanded_base) & set(expanded_comp_transposed)\n", " symdiff_len = sum([len(chord) - len(intersection) for chord in [expanded_base, expanded_comp_transposed]])\n", " if (min_symdiff <= symdiff_len <= max_symdiff):\n", " rev_trans = tuple(t * -1 for t in trans)\n", " [diff1, diff2] = [list(set(chord) - intersection) for chord in [expanded_base, expanded_comp_transposed]]\n", " base_map = {val: {'destination':transpose_pitch(val, rev_trans), 'cent_difference': 0} for val in intersection}\n", " base_map_rev = reverse_movements(base_map)\n", " maps = []\n", " diff1 += [None] * (max_chord_size - len(diff1) - len(intersection))\n", " perms = [list(perm) + [None] * (max_chord_size - len(perm) - len(intersection)) for perm in set(permutations(diff2))]\n", " for p in perms:\n", " appended_map = {\n", " diff1[index]:\n", " {\n", " 'destination': transpose_pitch(val, rev_trans) if val != None else None, \n", " 'cent_difference': cent_difference(diff1[index], val) if None not in [diff1[index], val] else None\n", " } for index, val in enumerate(p)}\n", " yield (tuple(expanded_base), tuple(expanded_comp), {\n", " 'transposition': trans,\n", " 'symmetric_difference': symdiff_len, \n", " 'is_directly_tunable': is_directly_tunable(intersection, diff2),\n", " 'movements': base_map | appended_map\n", " },)\n", " yield (tuple(expanded_comp), tuple(expanded_base), {\n", " 'transposition': rev_trans,\n", " 'symmetric_difference': symdiff_len, \n", " 'is_directly_tunable': is_directly_tunable(intersection, diff1),\n", " 'movements': base_map_rev | reverse_movements(appended_map)\n", " },)\n", "\n", "def graph_from_edges(edges):\n", " g = nx.MultiDiGraph()\n", " g.add_edges_from(edges)\n", " return g\n", "\n", "def generate_graph(chord_set, min_symdiff, max_symdiff, max_chord_size):\n", " #chord_set = chords(pitch_set, min_chord_size, max_chord_size)\n", " edge_set = edges(chord_set, min_symdiff, max_symdiff, max_chord_size)\n", " res_graph = graph_from_edges(edge_set)\n", " return res_graph\n", "\n", "def display_graph(graph):\n", " show_graph = nx.Graph(graph)\n", " pos = nx.draw_spring(show_graph, node_size=5, width=0.1)\n", " plt.figure(1, figsize=(12,12)) \n", " nx.draw(show_graph, pos, node_size=5, width=0.1)\n", " plt.show()\n", " #plt.savefig('compact_sets.png', dpi=150)\n", "\n", "def path_to_chords(path, start_root):\n", " current_root = start_root\n", " start_chord = tuple(sorted(path[0][0], key=hs_array_to_fr))\n", " chords = ((start_chord, start_chord,),)\n", " for edge in path:\n", " trans = edge[2]['transposition']\n", " movements = edge[2]['movements']\n", " current_root = transpose_pitch(current_root, trans)\n", " current_ref_chord = chords[-1][0]\n", " next_ref_chord = tuple(movements[pitch]['destination'] for pitch in current_ref_chord)\n", " next_transposed_chord = tuple(transpose_pitch(pitch, current_root) for pitch in next_ref_chord)\n", " chords += ((next_ref_chord, next_transposed_chord,),)\n", " return tuple(chord[1] for chord in chords)\n", "\n", "def write_chord_sequence(seq, path):\n", " file = open(path, \"w+\")\n", " content = json.dumps(seq)\n", " content = content.replace(\"[[[\", \"[\\n\\t[[\")\n", " content = content.replace(\", [[\", \",\\n\\t[[\")\n", " content = content.replace(\"]]]\", \"]]\\n]\")\n", " file.write(content)\n", " file.close()" ] }, { "cell_type": "markdown", "id": "b0722b0d-43fd-4c06-a932-248bf62fab6f", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "# This is the static version, which will be the middle piece" ] }, { "cell_type": "markdown", "id": "ea38a1da-7eac-4434-97b6-3208379affa0", "metadata": {}, "source": [ "## path functions" ] }, { "cell_type": "code", "execution_count": 518, "id": "aea5215c-8551-4685-b761-11c2dc74cf22", "metadata": {}, "outputs": [], "source": [ "from random import choice, choices, seed\n", "\n", "# This is for the static version\n", "def stochastic_hamiltonian(graph):\n", " \n", " def movement_size_weights(edges):\n", " \n", " def max_cent_diff(edge):\n", " res = max([abs(v) for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None])\n", " return res\n", " \n", " def min_cent_diff(edge):\n", " res = [abs(v) for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " res.remove(0)\n", " return min(res)\n", " \n", " for e in edges:\n", " yield 1000 if ((max_cent_diff(e) < 200) and (min_cent_diff(e)) > 50) else 1\n", "\n", " def hamiltonian_weights(edges):\n", " for e in edges:\n", " yield 10 if e[1] not in [path_edge[0] for path_edge in path] else 1 / graph.nodes[e[1]]['count']\n", " \n", " def contrary_motion_weights(edges):\n", "\n", " def is_contrary(edge):\n", " cent_diffs = [v for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " cent_diffs.sort()\n", " return (cent_diffs[0] < 0) and (cent_diffs[1] == 0) and (cent_diffs[2] > 0)\n", "\n", " for e in edges:\n", " yield 10 if is_contrary(e) else 1\n", " \n", " def is_directly_tunable_weights(edges):\n", " for e in edges:\n", " yield 10 if e[2]['is_directly_tunable'] else 0\n", "\n", " def voice_crossing_weights(edges):\n", " \n", " def has_voice_crossing(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " source_order = [ordered_source.index(p) for p in source]\n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " destination_order = [ordered_destination.index(p) for p in destination]\n", " return source_order != destination_order\n", "\n", " for e in edges:\n", " yield 10 if not has_voice_crossing(e) else 0\n", "\n", " def is_bass_rooted(chord):\n", " return max([sum(abs(p) for p in collapse_pitch(pitch_difference(chord[0], p))) for p in chord[1:]]) == 1\n", " \n", " check_graph = graph.copy()\n", " next_node = choice([node for node in graph.nodes() if is_bass_rooted(node)])\n", " check_graph.remove_node(next_node)\n", " for node in graph.nodes(data=True):\n", " node[1]['count'] = 1\n", " path = []\n", " while (nx.number_of_nodes(check_graph) > 0) and (len(path) < 5000):\n", " out_edges = list(graph.out_edges(next_node, data=True))\n", " factors = [\n", " movement_size_weights(out_edges), \n", " hamiltonian_weights(out_edges), \n", " contrary_motion_weights(out_edges), \n", " is_directly_tunable_weights(out_edges),\n", " voice_crossing_weights(out_edges)\n", " ]\n", " weights = [prod(a) for a in zip(*factors)]\n", " edge = choices(out_edges, weights=weights)[0]\n", " #edge = random.choice(out_edges)\n", " next_node = edge[1]\n", " node[1]['count'] += 1\n", " path.append(edge)\n", " if next_node in check_graph.nodes:\n", " check_graph.remove_node(next_node)\n", " return path" ] }, { "cell_type": "markdown", "id": "17c03eb3-b670-494b-a6db-225b1ac10525", "metadata": {}, "source": [ "## model" ] }, { "cell_type": "code", "execution_count": 519, "id": "4e3ef738-7f64-47c3-9129-0450fd031375", "metadata": {}, "outputs": [], "source": [ "dims = (2, 3, 5, 7, 11)\n", "root = (0, 0, 0, 0, 0)\n", "chord = (root,)\n", "chord_set = chords(chord, root, 3, 3)\n", "graph = generate_graph(chord_set, 4, 4, 3)" ] }, { "cell_type": "code", "execution_count": 520, "id": "6e0de0e5-7973-4a15-ae90-5bbb4a1ef49d", "metadata": {}, "outputs": [], "source": [ "seed(1954111620240509) \n", "path = stochastic_hamiltonian(graph)\n", "#for edge in path:\n", "# print(edge)\n", "write_chord_sequence(path_to_chords(path, root), \"everything_in_between.txt\")" ] }, { "cell_type": "markdown", "id": "b2e73f16-563f-4783-a6e9-0e5130be80e0", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## profiling " ] }, { "cell_type": "code", "execution_count": 11, "id": "7f2d356f-6377-46cf-bbb1-32111be90f4f", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "The line_profiler extension is already loaded. To reload it, use:\n", " %reload_ext line_profiler\n" ] } ], "source": [ "%load_ext line_profiler" ] }, { "cell_type": "code", "execution_count": 134, "id": "7f141bf5-fdcb-4c01-a10b-3e86d3d1a7b4", "metadata": {}, "outputs": [], "source": [ "chord_set = chords(chord, root, 3, 3)" ] }, { "cell_type": "code", "execution_count": 136, "id": "88850b8c-a743-44d0-b863-7cd9066690d9", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Timer unit: 1e-09 s\n", "\n", "Total time: 0.112228 s\n", "File: /tmp/ipykernel_515812/2679284550.py\n", "Function: edge_data at line 74\n", "\n", "Line # Hits Time Per Hit % Time Line Contents\n", "==============================================================\n", " 74 def edge_data(chords, min_symdiff, max_symdiff, max_chord_size):\n", " 75 990 29603044.0 29902.1 26.4 [expanded_base, expanded_comp] = [expand_chord(chord) for chord in chords]\n", " 76 990 229527.0 231.8 0.2 edges = []\n", " 77 990 23648371.0 23887.2 21.1 transpositions = set(pitch_difference(pair[0], pair[1]) for pair in set(product(expanded_base, expanded_comp)))\n", " 78 9193 2315267.0 251.9 2.1 for trans in transpositions:\n", " 79 8203 33386775.0 4070.1 29.7 expanded_comp_transposed = transpose_chord(expanded_comp, trans)\n", " 80 8203 8393773.0 1023.3 7.5 intersection = set(expanded_base) & set(expanded_comp_transposed)\n", " 81 8203 11812057.0 1440.0 10.5 symdiff_len = sum([len(chord) - len(intersection) for chord in [expanded_base, expanded_comp_transposed]])\n", " 82 8203 2530596.0 308.5 2.3 if (min_symdiff <= symdiff_len <= max_symdiff):\n", " 83 rev_trans = tuple(t * -1 for t in trans)\n", " 84 [diff1, diff2] = [list(set(chord) - intersection) for chord in [expanded_base, expanded_comp_transposed]]\n", " 85 base_map = {val: {'destination':transpose_pitch(val, rev_trans), 'cent_difference': 0} for val in intersection}\n", " 86 base_map_rev = reverse_movements(base_map)\n", " 87 tunability = is_directly_tunable(intersection, diff2)\n", " 88 maps = []\n", " 89 diff1 += [None] * (max_chord_size - len(diff1) - len(intersection))\n", " 90 perms = [list(perm) + [None] * (max_chord_size - len(perm) - len(intersection)) for perm in set(permutations(diff2))]\n", " 91 for p in perms:\n", " 92 appended_map = {\n", " 93 diff1[index]:\n", " 94 {\n", " 95 'destination': transpose_pitch(val, rev_trans) if val != None else None, \n", " 96 'cent_difference': cent_difference(diff1[index], val) if None not in [diff1[index], val] else None\n", " 97 } for index, val in enumerate(p)}\n", " 98 edges.append((tuple(expanded_base), tuple(expanded_comp), {\n", " 99 'transposition': trans,\n", " 100 'symmetric_difference': symdiff_len, \n", " 101 'is_directly_tunable': tunability,\n", " 102 'movements': base_map | appended_map\n", " 103 }))\n", " 104 edges.append((tuple(expanded_comp), tuple(expanded_base), {\n", " 105 'transposition': rev_trans,\n", " 106 'symmetric_difference': symdiff_len, \n", " 107 'is_directly_tunable': tunability,\n", " 108 'movements': base_map_rev | reverse_movements(appended_map)\n", " 109 }))\n", " 110 990 308812.0 311.9 0.3 return edges if edges != [] else None" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "lprun -f edge_data edges(chord_set, 3, 3, 4)" ] }, { "cell_type": "markdown", "id": "94ab1f6a-d020-444a-b67d-e62428ed416f", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "# This is for the rising version/yitgadal, which will be either the last of the 3 pieces (with option of the pieces played in reverse)" ] }, { "cell_type": "markdown", "id": "6af2ac39-ffae-4403-af81-c214ac257aac", "metadata": {}, "source": [ "## path functions" ] }, { "cell_type": "code", "execution_count": 521, "id": "6e4ecb10-344b-4721-b2f4-68de91d712db", "metadata": {}, "outputs": [], "source": [ "from random import choice, choices\n", "\n", "# This is for the rising version / yitgadal\n", "def stochastic_hamiltonian(graph):\n", " \n", " def movement_size_weights(edges):\n", " \n", " def max_cent_diff(edge):\n", " res = max([v for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None])\n", " return res\n", " \n", " def min_cent_diff(edge):\n", " res = [v for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " res.remove(0)\n", " return min(res)\n", " \n", " for e in edges:\n", " yield 1000 if ((max_cent_diff(e) < 175) and (min_cent_diff(e)) >= 0) else 1\n", "\n", " def hamiltonian_weights(edges):\n", " for e in edges:\n", " yield 10 if e[1] not in [path_edge[0] for path_edge in path] else 1 / graph.nodes[e[1]]['count']\n", " \n", " def contrary_motion_weights(edges):\n", "\n", " def is_contrary(edge):\n", " cent_diffs = [v for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " cent_diffs.sort()\n", " return (cent_diffs[0] < 0) and (cent_diffs[1] == 0) and (cent_diffs[2] > 0)\n", "\n", " for e in edges:\n", " yield 2 if is_contrary(e) else 1\n", " \n", " def is_directly_tunable_weights(edges):\n", " for e in edges:\n", " yield 10 if e[2]['is_directly_tunable'] else 0\n", "\n", " def transposition_weight(edges):\n", " for e in edges:\n", " yield 1000 if 0 <= hs_array_to_cents(e[2]['transposition']) < 100 else 0\n", "\n", " def is_sustained_voice(edges, voice):\n", " \n", " def is_sustained(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " return ordered_source[voice] == ordered_destination[voice]\n", "\n", " for e in edges:\n", " yield 10 if is_sustained(e) else 0\n", "\n", " def voice_crossing_weights(edges):\n", " \n", " def has_voice_crossing(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " source_order = [ordered_source.index(p) for p in source]\n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " destination_order = [ordered_destination.index(p) for p in destination]\n", " return source_order != destination_order\n", "\n", " for e in edges:\n", " yield 10 if not has_voice_crossing(e) else 0\n", "\n", " def is_bass_rooted(chord):\n", " return max([sum(abs(p) for p in collapse_pitch(pitch_difference(chord[0], p))) for p in chord[1:]]) == 1\n", " \n", " check_graph = graph.copy()\n", " #next_node = choice([node for node in graph.nodes() if is_bass_rooted(node)])\n", " next_node = choice(list(graph.nodes()))\n", " print(next_node)\n", " check_graph.remove_node(next_node)\n", " for node in graph.nodes(data=True):\n", " node[1]['count'] = 1\n", " path = []\n", " while (nx.number_of_nodes(check_graph) > 0) and (len(path) < 500):\n", " out_edges = list(graph.out_edges(next_node, data=True))\n", " #print([l for l in zip(movement_size_weights(out_edges), hamiltonian_weights(out_edges))])\n", " factors = [\n", " movement_size_weights(out_edges), \n", " hamiltonian_weights(out_edges), \n", " voice_crossing_weights(out_edges),\n", " #contrary_motion_weights(out_edges), \n", " #is_directly_tunable_weights(out_edges),\n", " #transposition_weight(out_edges)\n", " #is_sustained_voice(out_edges, 0)\n", " ]\n", " weights = [prod(a) for a in zip(*factors)]\n", " edge = choices(out_edges, weights=weights)[0]\n", " next_node = edge[1]\n", " node[1]['count'] += 1\n", " path.append(edge)\n", " if next_node in check_graph.nodes:\n", " check_graph.remove_node(next_node)\n", " print(len(check_graph.nodes()))\n", " return path" ] }, { "cell_type": "markdown", "id": "62a5c827-d57f-4eea-a43d-56e24c0e2ff3", "metadata": {}, "source": [ "## model" ] }, { "cell_type": "code", "execution_count": 522, "id": "a76dc0f3-02e2-4739-9014-b53d3a590e3d", "metadata": {}, "outputs": [], "source": [ "dims = (2, 3, 5, 7, 11)\n", "root = (0, 0, 0, 0, 0)\n", "chord = (root,)\n", "chord_set = chords(chord, root, 3, 3)\n", "graph = generate_graph(chord_set, 2, 2, 3)" ] }, { "cell_type": "code", "execution_count": 523, "id": "7b76d848-fe53-4b60-b414-46cfe570f78b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "((3, 0, -1, 0, 0), (0, 0, 0, 0, 0), (-1, 0, -1, 0, 1))\n", "0\n" ] }, { "data": { "text/plain": [ "159" ] }, "execution_count": 523, "metadata": {}, "output_type": "execute_result" } ], "source": [ "seed(20240509)\n", "path = stochastic_hamiltonian(graph)\n", "#for edge in path:\n", "# print(edge)\n", "write_chord_sequence(path_to_chords(path, root), \"rise_yitgadal.txt\")\n", "len(path)" ] }, { "cell_type": "markdown", "id": "4a9a4688-c648-4339-a328-4c514fca75f2", "metadata": {}, "source": [ "# This is for the beginning/breysheet, which will be the first of the set of 3 (with option in reverse)" ] }, { "cell_type": "markdown", "id": "6849a0ac-cb9b-45f2-b32d-5695a06549d9", "metadata": {}, "source": [ "## functions for analyzing a recording and filtering the data" ] }, { "cell_type": "code", "execution_count": 3, "id": "91fd1700-6f41-4a4c-98cb-8355075d44d2", "metadata": {}, "outputs": [], "source": [ "#ffmpeg -i video.mkv -acodec pcm_s16le -ar 16000 -ac 2 bereshit_chant.wav\n", "#sox bereshit_chant.wav bereshit_chant_snippet.wav trim 4 60" ] }, { "cell_type": "code", "execution_count": 483, "id": "51be5ff2-2b7f-4350-878f-09e79d4bff1f", "metadata": {}, "outputs": [], "source": [ "import crepe\n", "from scipy.io import wavfile" ] }, { "cell_type": "code", "execution_count": 484, "id": "9b8e1e21-c5f5-4d77-8d1c-094b073b8322", "metadata": {}, "outputs": [], "source": [ "sr, audio = wavfile.read('/home/mwinter/Downloads/bereshit_chant_snippet.wav')" ] }, { "cell_type": "code", "execution_count": 485, "id": "01f8f969-fc3c-46a2-acfd-b1f956e438bc", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "\u001b[1m76/76\u001b[0m \u001b[32m━━━━━━━━━━━━━━━━━━━━\u001b[0m\u001b[37m\u001b[0m \u001b[1m24s\u001b[0m 303ms/step\n" ] } ], "source": [ "time, frequency, confidence, activation = crepe.predict(audio, sr, step_size = 25)\n", "#time, frequency, confidence = [list(time), list(frequency), list(confidence)]" ] }, { "cell_type": "markdown", "id": "6909f6c9-b8b7-4fe8-bca3-57fb8b8851b3", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## legacy stuff" ] }, { "cell_type": "code", "execution_count": 58, "id": "63d4b87f-7782-4aec-9066-6f2710f3d997", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "2\n", "51.0\n", "1\n", "46.0\n", "1\n", "44.0\n", "0\n", "41.0\n", "0\n", "39.0\n", "2\n", "53.0\n", "1\n", "42.0\n", "2\n", "51.0\n", "1\n", "41.0\n", "0\n", "37.0\n", "0\n", "36.0\n", "1\n", "42.0\n", "2\n", "49.0\n", "2\n", "48.0\n", "0\n", "37.0\n", "2\n", "49.0\n", "0\n", "39.0\n", "1\n", "44.0\n", "2\n", "51.0\n", "0\n", "40.0\n", "0\n", "39.0\n", "1\n", "44.0\n", "2\n", "52.0\n", "2\n", "51.0\n", "1\n", "42.0\n", "1\n", "41.0\n", "0\n", "37.0\n", "0\n", "36.0\n", "1\n", "44.0\n", "2\n", "49.0\n", "2\n", "48.0\n", "1\n", "46.0\n", "0\n", "39.0\n", "1\n", "44.0\n", "2\n", "51.0\n", "0\n", "41.0\n", "0\n", "39.0\n", "2\n", "53.0\n", "0\n", "40.0\n", "1\n", "45.0\n", "2\n", "51.0\n", "1\n", "41.0\n", "0\n", "36.0\n", "1\n", "46.0\n", "2\n", "52.0\n", "2\n", "48.0\n", "1\n", "44.0\n", "1\n", "42.0\n", "2\n", "53.0\n", "0\n", "41.0\n", "2\n", "51.0\n", "0\n", "39.0\n", "0\n", "37.0\n", "2\n", "49.0\n", "0\n", "40.0\n", "0\n", "41.0\n", "0\n", "40.0\n", "1\n", "45.0\n", "1\n", "46.0\n", "0\n", "39.0\n", "1\n", "45.0\n", "1\n", "44.0\n", "1\n", "45.0\n", "1\n", "44.0\n", "1\n", "42.0\n", "1\n", "41.0\n", "1\n", "39.0\n", "0\n", "40.0\n", "0\n", "39.0\n", "2\n", "52.0\n", "2\n", "53.0\n", "2\n", "52.0\n", "0\n", "37.0\n", "2\n", "51.0\n", "0\n", "36.0\n", "2\n", "52.0\n", "2\n", "51.0\n", "2\n", "49.0\n", "2\n", "48.0\n", "0\n", "34.0\n", "2\n", "46.0\n", "1\n", "44.0\n", "1\n", "45.0\n", "2\n", "51.0\n", "2\n", "52.0\n", "0\n", "39.0\n", "0\n", "40.0\n", "0\n", "42.0\n", "0\n", "44.0\n", "0\n", "45.0\n", "1\n", "47.0\n", "1\n", "49.0\n", "1\n", "50.0\n", "2\n", "54.0\n", "0\n", "41.0\n", "2\n", "56.0\n", "2\n", "57.0\n", "1\n", "46.0\n", "1\n", "50.0\n", "1\n", "48.0\n", "1\n", "47.0\n", "1\n", "44.0\n", "2\n", "53.0\n", "0\n", "45.0\n", "0\n", "43.0\n", "0\n", "42.0\n", "0\n", "39.0\n", "2\n", "57.0\n", "2\n", "55.0\n", "2\n", "54.0\n", "2\n", "51.0\n", "0\n", "41.0\n", "1\n", "46.0\n", "2\n", "53.0\n", "0\n", "39.0\n", "1\n", "44.0\n", "2\n", "51.0\n", "1\n", "42.0\n", "1\n", "41.0\n", "0\n", "37.0\n", "0\n", "36.0\n", "1\n", "42.0\n", "0\n", "37.0\n", "1\n", "44.0\n", "0\n", "39.0\n", "2\n", "49.0\n", "2\n", "48.0\n", "2\n", "49.0\n", "2\n", "51.0\n", "2\n", "50.0\n", "1\n", "43.0\n", "2\n", "52.0\n", "2\n", "53.0\n", "1\n", "45.0\n", "1\n", "46.0\n", "0\n", "38.0\n", "0\n", "40.0\n", "0\n", "41.0\n", "1\n", "44.0\n", "1\n", "48.0\n", "1\n", "50.0\n", "1\n", "49.0\n", "2\n", "55.0\n", "0\n", "39.0\n", "2\n", "57.0\n", "0\n", "43.0\n", "0\n", "45.0\n", "1\n", "50.0\n", "0\n", "44.0\n", "1\n", "49.0\n", "2\n", "56.0\n", "1\n", "46.0\n", "0\n", "45.0\n", "0\n", "44.0\n", "1\n", "44.0\n", "0\n", "41.0\n", "0\n", "39.0\n", "2\n", "57.0\n", "2\n", "56.0\n", "2\n", "53.0\n", "2\n", "51.0\n", "0\n", "41.0\n", "1\n", "46.0\n", "2\n", "53.0\n", "0\n", "39.0\n", "1\n", "44.0\n", "2\n", "51.0\n", "1\n", "41.0\n", "1\n", "42.0\n", "0\n", "36.0\n", "1\n", "39.0\n", "0\n", "37.0\n", "2\n", "48.0\n", "1\n", "46.0\n", "1\n", "47.0\n", "2\n", "49.0\n", "0\n", "34.0\n", "0\n", "41.0\n", "0\n", "42.0\n", "0\n", "37.0\n", "1\n", "42.0\n", "2\n", "46.0\n", "2\n", "53.0\n", "2\n", "54.0\n", "2\n", "49.0\n", "1\n", "44.0\n", "1\n", "41.0\n", "0\n", "39.0\n", "2\n", "51.0\n", "2\n", "48.0\n", "0\n", "36.0\n", "1\n", "44.0\n", "1\n", "45.0\n", "1\n", "44.0\n", "0\n", "39.0\n", "0\n", "40.0\n", "0\n", "39.0\n", "1\n", "46.0\n", "0\n", "41.0\n", "2\n", "51.0\n", "0\n", "40.0\n", "2\n", "52.0\n", "0\n", "39.0\n", "1\n", "45.0\n", "2\n", "51.0\n", "1\n", "44.0\n", "2\n", "53.0\n", "0\n", "37.0\n", "1\n", "42.0\n", "1\n", "43.0\n", "2\n", "52.0\n", "0\n", "38.0\n", "1\n", "45.0\n", "1\n", "44.0\n", "2\n", "51.0\n", "2\n", "49.0\n", "2\n", "50.0\n", "2\n", "52.0\n", "0\n", "40.0\n", "2\n", "51.0\n", "0\n", "39.0\n", "0\n", "40.0\n", "0\n", "41.0\n", "1\n", "45.0\n", "1\n", "46.0\n", "0\n", "37.0\n", "2\n", "52.0\n", "1\n", "42.0\n", "2\n", "53.0\n", "2\n", "49.0\n", "1\n", "49.0\n", "1\n", "47.0\n", "1\n", "46.0\n", "1\n", "44.0\n", "0\n", "44.0\n", "1\n", "46.0\n", "0\n", "42.0\n", "0\n", "41.0\n", "0\n", "39.0\n", "2\n", "56.0\n", "0\n", "41.0\n", "0\n", "39.0\n", "2\n", "54.0\n", "2\n", "53.0\n", "2\n", "51.0\n", "2\n", "53.0\n", "2\n", "51.0\n", "1\n", "42.0\n", "1\n", "41.0\n", "1\n", "42.0\n", "1\n", "44.0\n", "0\n", "37.0\n", "2\n", "49.0\n", "0\n", "36.0\n", "0\n", "37.0\n", "0\n", "39.0\n", "2\n", "48.0\n", "2\n", "49.0\n", "2\n", "51.0\n", "1\n", "45.0\n", "1\n", "46.0\n", "0\n", "40.0\n", "0\n", "41.0\n", "1\n", "44.0\n", "0\n", "40.0\n", "2\n", "52.0\n", "0\n", "39.0\n", "2\n", "53.0\n", "2\n", "52.0\n", "2\n", "51.0\n", "2\n", "52.0\n", "1\n", "45.0\n" ] }, { "data": { "text/plain": [ "[(2.125, 51.0, 2, (0,), 0.0),\n", " (0.3, 46.0, 1, (0,), -500.0),\n", " (0.7, 44.0, 1, (0,), -200.0),\n", " (0.3, 41.0, 0, (0,), -300.0),\n", " (0.7, 39.0, 0, (0,), -200.0),\n", " (1.0, 53.0, 2, (0,), 1400.0),\n", " (0.2, 42.0, 1, (0,), -1100.0),\n", " (1.5, 51.0, 2, (0,), 900.0),\n", " (0.35, 41.0, 1, (0,), -1000.0),\n", " (1.7, 37.0, 0, (0,), -400.0),\n", " (1.85, 36.0, 0, (0,), -100.0),\n", " (0.6, 42.0, 1, (0,), 600.0),\n", " (0.725, 49.0, 2, (0,), 700.0),\n", " (0.575, 48.0, 2, (0,), -100.0),\n", " (0.4, 37.0, 0, (0,), -1100.0),\n", " (0.325, 49.0, 2, (0,), 1200.0),\n", " (0.05, 39.0, 0, (0,), -1000.0),\n", " (0.35, 44.0, 1, (0,), 500.0),\n", " (0.225, 51.0, 2, (0,), 700.0),\n", " (0.05, 40.0, 0, (0,), -1100.0),\n", " (0.05, 39.0, 0, (0,), -100.0),\n", " (0.3, 44.0, 1, (0,), 500.0),\n", " (0.05, 52.0, 2, (0,), 800.0),\n", " (0.75, 51.0, 2, (0,), -100.0),\n", " (0.05, 42.0, 1, (0,), -900.0),\n", " (1.25, 41.0, 1, (0,), -100.0),\n", " (0.2, 37.0, 0, (0,), -400.0),\n", " (0.8, 36.0, 0, (0,), -100.0),\n", " (0.6, 44.0, 1, (0,), 800.0),\n", " (0.2, 49.0, 2, (0,), 500.0),\n", " (1.8, 48.0, 2, (0,), -100.0),\n", " (0.5, 46.0, 1, (0,), -200.0),\n", " (1.3, 39.0, 0, (0,), -700.0),\n", " (0.3, 44.0, 1, (0,), 500.0),\n", " (0.925, 51.0, 2, (0,), 700.0),\n", " (0.45, 41.0, 0, (0,), -1000.0),\n", " (1.225, 39.0, 0, (0,), -200.0),\n", " (0.375, 53.0, 2, (0,), 1400.0),\n", " (1.1, 40.0, 0, (0,), -1300.0),\n", " (0.175, 45.0, 1, (0,), 500.0),\n", " (0.225, 51.0, 2, (0,), 600.0),\n", " (0.025, 41.0, 1, (0,), -1000.0),\n", " (1.3, 36.0, 0, (0,), -500.0),\n", " (0.05, 46.0, 1, (0,), 1000.0),\n", " (0.4, 52.0, 2, (0,), 600.0),\n", " (1.8, 48.0, 2, (0,), -400.0),\n", " (0.7, 44.0, 1, (0,), -400.0),\n", " (0.1, 42.0, 1, (0,), -200.0),\n", " (0.95, 53.0, 2, (0,), 1100.0),\n", " (1.45, 41.0, 0, (0,), -1200.0),\n", " (0.35, 51.0, 2, (0,), 1000.0),\n", " (0.175, 39.0, 0, (0,), -1200.0),\n", " (0.175, 37.0, 0, (0,), -200.0),\n", " (1.375, 49.0, 2, (0,), 1200.0),\n", " (0.025, 40.0, 0, (0,), -900.0),\n", " (0.25, 41.0, 0, (0,), 100.0),\n", " (1.35, 40.0, 0, (0,), -100.0),\n", " (0.1, 45.0, 1, (0,), 500.0),\n", " (0.25, 46.0, 1, (0,), 100.0),\n", " (0.375, 39.0, 0, (0,), -700.0),\n", " (0.425, 45.0, 1, (0,), 600.0),\n", " (0.575, 44.0, 1, (0,), -100.0),\n", " (0.1, 45.0, 1, (0,), 100.0),\n", " (0.225, 44.0, 1, (0,), -100.0),\n", " (0.2, 42.0, 1, (0,), -200.0),\n", " (0.225, 41.0, 1, (0,), -100.0),\n", " (0.175, 39.0, 1, (0,), -200.0),\n", " (0.4, 40.0, 0, (0,), 100.0),\n", " (0.15, 39.0, 0, (0,), -100.0),\n", " (0.1, 52.0, 2, (0,), 1300.0),\n", " (0.625, 53.0, 2, (0,), 100.0),\n", " (0.025, 52.0, 2, (0,), -100.0),\n", " (0.4, 37.0, 0, (0,), -1500.0),\n", " (0.4, 51.0, 2, (0,), 1400.0),\n", " (0.175, 36.0, 0, (0,), -1500.0),\n", " (0.1, 52.0, 2, (0,), 1600.0),\n", " (0.225, 51.0, 2, (0,), -100.0),\n", " (0.2, 49.0, 2, (0,), -200.0),\n", " (0.2, 48.0, 2, (0,), -100.0),\n", " (0.025, 34.0, 0, (0,), -1400.0),\n", " (0.075, 46.0, 2, (0,), 1200.0),\n", " (0.3, 44.0, 1, (0,), -200.0),\n", " (1.4, 45.0, 1, (0,), 100.0),\n", " (0.3, 51.0, 2, (0,), 600.0),\n", " (0.2, 52.0, 2, (0,), 100.0),\n", " (0.075, 39.0, 0, (0,), -1300.0),\n", " (1.425, 40.0, 0, (0,), 100.0),\n", " (0.4, 42.0, 0, (0,), 200.0),\n", " (0.3, 44.0, 0, (0,), 200.0),\n", " (0.4, 45.0, 0, (0,), 100.0),\n", " (0.4, 47.0, 1, (0,), 200.0),\n", " (0.3, 49.0, 1, (0,), 200.0),\n", " (1.0, 50.0, 1, (0,), 100.0),\n", " (0.1, 54.0, 2, (0,), 400.0),\n", " (0.3, 41.0, 0, (0,), -1300.0),\n", " (0.3, 56.0, 2, (0,), 1500.0),\n", " (0.125, 57.0, 2, (0,), 100.0),\n", " (1.525, 46.0, 1, (0,), -1100.0),\n", " (0.35, 50.0, 1, (0,), 400.0),\n", " (0.025, 48.0, 1, (0,), -200.0),\n", " (0.15, 47.0, 1, (0,), -100.0),\n", " (0.025, 44.0, 1, (0,), -300.0),\n", " (2.55, 53.0, 2, (0,), 900.0),\n", " (0.35, 45.0, 0, (0,), -800.0),\n", " (0.025, 43.0, 0, (0,), -200.0),\n", " (0.15, 42.0, 0, (0,), -100.0),\n", " (1.0, 39.0, 0, (0,), -300.0),\n", " (0.35, 57.0, 2, (0,), 1800.0),\n", " (0.025, 55.0, 2, (0,), -200.0),\n", " (0.15, 54.0, 2, (0,), -100.0),\n", " (2.6, 51.0, 2, (0,), -300.0),\n", " (0.05, 41.0, 0, (0,), -1000.0),\n", " (0.2, 46.0, 1, (0,), 500.0),\n", " (1.95, 53.0, 2, (0,), 700.0),\n", " (0.05, 39.0, 0, (0,), -1400.0),\n", " (0.2, 44.0, 1, (0,), 500.0),\n", " (2.125, 51.0, 2, (0,), 700.0),\n", " (0.45, 42.0, 1, (0,), -900.0),\n", " (1.6, 41.0, 1, (0,), -100.0),\n", " (0.45, 37.0, 0, (0,), -400.0),\n", " (0.025, 36.0, 0, (0,), -100.0),\n", " (1.0, 42.0, 1, (0,), 600.0),\n", " (0.1, 37.0, 0, (0,), -500.0),\n", " (1.0, 44.0, 1, (0,), 700.0),\n", " (0.75, 39.0, 0, (0,), -500.0),\n", " (1.125, 49.0, 2, (0,), 1000.0),\n", " (0.725, 48.0, 2, (0,), -100.0),\n", " (0.275, 49.0, 2, (0,), 100.0),\n", " (1.3, 51.0, 2, (0,), 200.0),\n", " (0.025, 50.0, 2, (0,), -100.0),\n", " (0.075, 43.0, 1, (0,), -700.0),\n", " (0.05, 52.0, 2, (0,), 900.0),\n", " (0.275, 53.0, 2, (0,), 100.0),\n", " (0.2, 45.0, 1, (0,), -800.0),\n", " (0.4, 46.0, 1, (0,), 100.0),\n", " (0.4, 38.0, 0, (0,), -800.0),\n", " (0.2, 40.0, 0, (0,), 200.0),\n", " (0.4, 41.0, 0, (0,), 100.0),\n", " (0.275, 44.0, 1, (0,), 300.0),\n", " (0.1, 48.0, 1, (0,), 400.0),\n", " (0.2, 50.0, 1, (0,), 200.0),\n", " (0.125, 49.0, 1, (0,), -100.0),\n", " (0.3, 55.0, 2, (0,), 600.0),\n", " (0.1, 39.0, 0, (0,), -1600.0),\n", " (0.175, 57.0, 2, (0,), 1800.0),\n", " (0.1, 43.0, 0, (0,), -1400.0),\n", " (0.175, 45.0, 0, (0,), 200.0),\n", " (0.025, 50.0, 1, (0,), 500.0),\n", " (0.225, 44.0, 0, (0,), -600.0),\n", " (0.1, 49.0, 1, (0,), 500.0),\n", " (0.15, 56.0, 2, (0,), 700.0),\n", " (0.5, 46.0, 1, (0,), -1000.0),\n", " (0.25, 45.0, 0, (0,), -100.0),\n", " (0.65, 44.0, 0, (0,), -100.0),\n", " (0.35, 44.0, 1, (0,), 0.0),\n", " (1.7, 41.0, 0, (0,), -300.0),\n", " (0.3, 39.0, 0, (0,), -200.0),\n", " (1.0, 57.0, 2, (0,), 1800.0),\n", " (1.0, 56.0, 2, (0,), -100.0),\n", " (1.7, 53.0, 2, (0,), -300.0),\n", " (2.625, 51.0, 2, (0,), -200.0),\n", " (0.05, 41.0, 0, (0,), -1000.0),\n", " (0.2, 46.0, 1, (0,), 500.0),\n", " (0.2, 53.0, 2, (0,), 700.0),\n", " (0.05, 39.0, 0, (0,), -1400.0),\n", " (0.2, 44.0, 1, (0,), 500.0),\n", " (2.475, 51.0, 2, (0,), 700.0),\n", " (1.5, 41.0, 1, (0,), -1000.0),\n", " (1.6, 42.0, 1, (0,), 100.0),\n", " (1.3, 36.0, 0, (0,), -600.0),\n", " (0.2, 39.0, 1, (0,), 300.0),\n", " (0.025, 37.0, 0, (0,), -200.0),\n", " (0.575, 48.0, 2, (0,), 1100.0),\n", " (0.3, 46.0, 1, (0,), -200.0),\n", " (0.625, 47.0, 1, (0,), 100.0),\n", " (0.55, 49.0, 2, (0,), 200.0),\n", " (0.2, 34.0, 0, (0,), -1500.0),\n", " (0.075, 41.0, 0, (0,), 700.0),\n", " (0.525, 42.0, 0, (0,), 100.0),\n", " (0.125, 37.0, 0, (0,), -500.0),\n", " (1.425, 42.0, 1, (0,), 500.0),\n", " (0.65, 46.0, 2, (0,), 400.0),\n", " (0.075, 53.0, 2, (0,), 700.0),\n", " (0.525, 54.0, 2, (0,), 100.0),\n", " (0.1, 49.0, 2, (0,), -500.0),\n", " (0.9, 44.0, 1, (0,), -500.0),\n", " (0.325, 41.0, 1, (0,), -300.0),\n", " (0.475, 39.0, 0, (0,), -200.0),\n", " (2.175, 51.0, 2, (0,), 1200.0),\n", " (0.95, 48.0, 2, (0,), -300.0),\n", " (0.05, 36.0, 0, (0,), -1200.0),\n", " (0.5, 44.0, 1, (0,), 800.0),\n", " (0.6, 45.0, 1, (0,), 100.0),\n", " (1.175, 44.0, 1, (0,), -100.0),\n", " (0.125, 39.0, 0, (0,), -500.0),\n", " (0.15, 40.0, 0, (0,), 100.0),\n", " (0.35, 39.0, 0, (0,), -100.0),\n", " (0.1, 46.0, 1, (0,), 700.0),\n", " (0.2, 41.0, 0, (0,), -500.0),\n", " (0.1, 51.0, 2, (0,), 1000.0),\n", " (0.4, 40.0, 0, (0,), -1100.0),\n", " (0.05, 52.0, 2, (0,), 1200.0),\n", " (0.35, 39.0, 0, (0,), -1300.0),\n", " (0.2, 45.0, 1, (0,), 600.0),\n", " (1.6, 51.0, 2, (0,), 600.0),\n", " (0.2, 44.0, 1, (0,), -700.0),\n", " (0.45, 53.0, 2, (0,), 900.0),\n", " (0.05, 37.0, 0, (0,), -1600.0),\n", " (0.2, 42.0, 1, (0,), 500.0),\n", " (0.5, 43.0, 1, (0,), 100.0),\n", " (0.05, 52.0, 2, (0,), 900.0),\n", " (0.35, 38.0, 0, (0,), -1400.0),\n", " (0.475, 45.0, 1, (0,), 700.0),\n", " (0.925, 44.0, 1, (0,), -100.0),\n", " (0.7, 51.0, 2, (0,), 700.0),\n", " (0.2, 49.0, 2, (0,), -200.0),\n", " (0.9, 50.0, 2, (0,), 100.0),\n", " (0.05, 52.0, 2, (0,), 200.0),\n", " (0.425, 40.0, 0, (0,), -1200.0),\n", " (0.95, 51.0, 2, (0,), 1100.0),\n", " (1.925, 39.0, 0, (0,), -1200.0),\n", " (0.8, 40.0, 0, (0,), 100.0),\n", " (0.3, 41.0, 0, (0,), 100.0),\n", " (0.8, 45.0, 1, (0,), 400.0),\n", " (0.6, 46.0, 1, (0,), 100.0),\n", " (0.375, 37.0, 0, (0,), -900.0),\n", " (0.725, 52.0, 2, (0,), 1500.0),\n", " (0.075, 42.0, 1, (0,), -1000.0),\n", " (1.7, 53.0, 2, (0,), 1100.0),\n", " (0.025, 49.0, 2, (0,), -400.0),\n", " (0.75, 49.0, 1, (0,), 0.0),\n", " (0.9, 47.0, 1, (0,), -200.0),\n", " (0.8, 46.0, 1, (0,), -100.0),\n", " (0.65, 44.0, 1, (0,), -200.0),\n", " (0.65, 44.0, 0, (0,), 0.0),\n", " (0.1, 46.0, 1, (0,), 200.0),\n", " (0.375, 42.0, 0, (0,), -400.0),\n", " (0.2, 41.0, 0, (0,), -100.0),\n", " (0.275, 39.0, 0, (0,), -200.0),\n", " (0.05, 56.0, 2, (0,), 1700.0),\n", " (0.25, 41.0, 0, (0,), -1500.0),\n", " (0.45, 39.0, 0, (0,), -200.0),\n", " (0.375, 54.0, 2, (0,), 1500.0),\n", " (0.2, 53.0, 2, (0,), -100.0),\n", " (0.325, 51.0, 2, (0,), -200.0),\n", " (0.25, 53.0, 2, (0,), 200.0),\n", " (4.55, 51.0, 2, (0,), -200.0),\n", " (0.575, 42.0, 1, (0,), -900.0),\n", " (0.325, 41.0, 1, (0,), -100.0),\n", " (0.175, 42.0, 1, (0,), 100.0),\n", " (0.075, 44.0, 1, (0,), 200.0),\n", " (0.4, 37.0, 0, (0,), -700.0),\n", " (1.075, 49.0, 2, (0,), 1200.0),\n", " (0.325, 36.0, 0, (0,), -1300.0),\n", " (0.175, 37.0, 0, (0,), 100.0),\n", " (0.725, 39.0, 0, (0,), 200.0),\n", " (1.3, 48.0, 2, (0,), 900.0),\n", " (0.7, 49.0, 2, (0,), 100.0),\n", " (0.9, 51.0, 2, (0,), 200.0),\n", " (0.6, 45.0, 1, (0,), -600.0),\n", " (0.4, 46.0, 1, (0,), 100.0),\n", " (0.6, 40.0, 0, (0,), -600.0),\n", " (0.2, 41.0, 0, (0,), 100.0),\n", " (0.8, 44.0, 1, (0,), 300.0),\n", " (0.075, 40.0, 0, (0,), -400.0),\n", " (0.125, 52.0, 2, (0,), 1200.0),\n", " (0.025, 39.0, 0, (0,), -1300.0),\n", " (0.25, 53.0, 2, (0,), 1400.0),\n", " (0.05, 52.0, 2, (0,), -100.0),\n", " (0.45, 51.0, 2, (0,), -100.0),\n", " (0.025, 52.0, 2, (0,), 100.0),\n", " (0.325, 45.0, 1, (0,), -700.0)]" ] }, "execution_count": 58, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import librosa \n", "import numpy as np\n", "from scipy.signal import savgol_filter\n", "import matplotlib.pyplot as plt\n", "from random import randint\n", "\n", "def filter_data(time, frequency, confidence):\n", " data = tuple(data for data in zip(list(time), list(frequency), list(confidence)) if data[2] > 0.1)\n", " dev = 0\n", " dur = 0\n", " for (p1, p2) in pairwise(data):\n", " t_diff = (p2[0] - p1[0])\n", " dur = round(dur + (p2[0] - p1[0]), 2)\n", " if(True):\n", " freq1, conf1 = p1[1:3]\n", " midi1 = librosa.hz_to_midi(freq1)\n", " r_midi1 = np.around(midi1)\n", " freq2, conf2 = p2[1:3]\n", " midi2 = librosa.hz_to_midi(freq2)\n", " r_midi2 = np.around(midi2)\n", " #if(r_midi2 != r_midi1):\n", " if(True):\n", " yield(dur, freq1, conf1, midi1, r_midi1, dev * 100)\n", " dev = r_midi2 - r_midi1\n", " dur = 0\n", "\n", "def filter_data(time, frequency, confidence):\n", " data = tuple(data for data in zip(list(time), list(frequency), list(confidence)) if data[2] > 0.9)\n", " #durs = tuple(round(y[0]-x[0], 2) for (x, y) in pairwise(data)) + ((1,))\n", " #data = tuple((d,) + data[i][1:] for i, d in enumerate(durs) if d > 0.01)\n", " #print(data)\n", " m, rm = [librosa.hz_to_midi(data[0][1]), np.around(librosa.hz_to_midi(data[0][1]))]\n", " yield(data[0] + (m, rm, 0,))\n", " for i, [t, f, c] in enumerate(data):\n", " nm, nrm = [librosa.hz_to_midi(f), np.around(librosa.hz_to_midi(f))]\n", " if((0 < i < len(data) - 1) and (nrm != rm)):\n", " m, rm, d = [nm, nrm, nrm - rm]\n", " yield(t, f, c, m, rm, d * 100)\n", " \n", "t_min = 50\n", "t_max = 600\n", "f_time, f_frequency, f_confidence = [time[t_min:], frequency[t_min:], confidence[t_min:]]\n", "s_confidence = savgol_filter(f_confidence, 30, 4)\n", "#plt.plot(f_time, f_confidence)\n", "#plt.plot(f_time, s_confidence, color='red')\n", "#plt.show()\n", "\n", "def freqs_to_midi(freqs, confs):\n", " last_confident_value = 51\n", " for f, c in zip(freqs, confs):\n", " if c > 0.9:\n", " last_confident_value = librosa.hz_to_midi(f)\n", " yield last_confident_value\n", " \n", "#m_time, midi = zip(*[[t, librosa.hz_to_midi(f)] for t, f, c in zip(f_time, f_frequency, s_confidence) if c > 0.0])\n", "#nr_midi = np.interp(f_time, m_time, midi)\n", "#r_midi = np.interp(f_time, m_time, np.around(midi))\n", "#midi\n", "\n", "#data_v2 = tuple(d + (2,) for d in zip(f_time, f_frequency, s_confidence))\n", "#data_v1 = tuple(d + (1,) for d in zip([t + 2 for t in f_time], f_frequency, s_confidence))\n", "#data_v0 = tuple(d + (0,) for d in zip([t + 4 for t in f_time], f_frequency, s_confidence))\n", "\n", "#data = data_v2 + data_v1 + data_v0\n", "#data = sorted(data)\n", "#f_time = tuple(d[0] for d in data)\n", "#ins = tuple(d[-1] for d in data)\n", "\n", "def snap_midi(midi):\n", " r_midi = np.around(midi)\n", " s_midi = np.around(savgol_filter(midi, 30, 5))\n", " last_val = s_midi[0]\n", " for i, (r1, r2) in enumerate(pairwise(r_midi)):\n", " if r1 != r2:\n", " last_val = s_midi[i+5]\n", " yield last_val\n", " yield last_val\n", "\n", "def format_midi(midi):\n", " last_val = midi[0]\n", " dur = 1\n", " dev = 0.0\n", " first_flag = True\n", " for i, (m1, m2) in enumerate(pairwise(midi)):\n", " if m1 != m2:\n", " #yield (dur / 40, last_val, dev * 100)\n", " if first_flag or dur < 10:\n", " yield (10 / 40.0, last_val, dev * 100)\n", " first_flag = False\n", " else:\n", " size = int(dur / 20)\n", " \n", " #sep = randint(1, size)\n", " #yield (10 / 40.0 * sep, last_val, dev * 100)\n", " #yield (10 / 40.0 * (size - sep), last_val, 0.0)\n", "\n", " b_dur = randint(5, 10)\n", " yield (randint(10, 20) / 40.0, last_val, dev * 100)\n", " for i in range(size):\n", " yield (randint(10, 20) / 40.0, last_val, 0.0)\n", " \n", " last_val = m2\n", " dur = 1\n", " dev = m2 - m1\n", " else:\n", " dur += 1\n", "\n", "#need to figure out how to make each note hold for a bit and then release\n", "def filter_midi(midi):\n", " last_val = midi[0][-1]\n", " ins = 2\n", " dur = 1\n", " total_dur = 0\n", " dev = 0.0\n", " remaining_durs = [100, 100, 100]\n", " first_flag = True\n", " for i, (m1, m2) in enumerate(pairwise(midi)):\n", " if m1 != m2:\n", " #print([m1, m2])\n", " #print(last_val)\n", " #print(ins)\n", " #yield (dur / 40, last_val, ins, dev * 100)\n", "\n", " if first_flag or dur < 20:\n", " allowed_ins = (ins,)\n", " print((10 / 40.0, last_val, ins, allowed_ins, dev * 100))\n", " yield (10 / 40.0, last_val, ins, allowed_ins, dev * 100)\n", " first_flag = False\n", " else:\n", " size = int(dur / 10) \n", "\n", " #b_dur = randint(1, size)\n", " #yield ((b_dur * 10) / 40.0, last_val, ins, dev * 100)\n", " #yield (((size - b_dur) * 10) / 40.0, last_val, ins, 0)\n", "\n", " #yield (((size - 1) * 10) / 40.0, last_val, ins, dev * 100)\n", " #yield (10 / 40.0, last_val, ins, 0)\n", "\n", " #allowed_ins = tuple(ibx for ibx, r_dur in enumerate(remaining_durs) if r_dur < 20 or ibx == ins)\n", " allowed_ins = (ins,)\n", " yield (randint(5, 10) / 40.0, last_val, ins, allowed_ins, dev * 100)\n", " print((randint(5, 10) / 40.0, last_val, ins, allowed_ins, dev * 100))\n", " for irx in range(size - 1):\n", " allowed_ins = tuple(ibx for ibx, r_dur in enumerate(remaining_durs) if r_dur < 20 and ibx != ins)\n", " yield (randint(5, 10) / 40.0, last_val, ins, allowed_ins, 0.0)\n", " print((randint(5, 10) / 40.0, last_val, ins, allowed_ins, 0.0))\n", "\n", " remaining_durs[ins] = 0\n", " print(ins)\n", " print(midi[i + remaining_durs[ins]])\n", " print(midi[i + 1 + remaining_durs[ins]])\n", " while midi[i + 1 + remaining_durs[ins]][ins] == midi[i + 2 + remaining_durs[ins]][ins] and midi[total_dur + 2 + remaining_durs[ins]][ins] < len(midi):\n", " remaining_durs[ins] += 1\n", "\n", " ins = [imx for imx, m in enumerate(m1) if m1[imx] != m2[imx]][0]\n", " #ins = 2\n", " dur = 1\n", " dev = m2[ins] - last_val\n", " last_val = m2[ins]\n", " else:\n", " dur += 1\n", " remaining_durs = [r_dur - 1 for r_dur in remaining_durs]\n", " print(remaining_durs)\n", " print(midi[i])\n", " total_dur += 1\n", "\n", "def filter_midi(midi):\n", " remainder_durs = [1000, 1000, 1000]\n", " for imx, m in enumerate(midi):\n", " if m != midi[imx - 1]:\n", " if imx == 0:\n", " ins = 2\n", " val = m[2]\n", " last_val = val\n", " else:\n", " ins = [pmx for pmx, p in enumerate(m) if p != midi[imx - 1][pmx]][0]\n", " val = m[ins]\n", " note_dur = 0\n", " print(ins)\n", " print(val)\n", " while imx + note_dur < len(midi) and midi[imx + note_dur][ins] == val:\n", " note_dur += 1\n", " next_dur = 0\n", " while imx + next_dur < len(midi) and midi[imx + next_dur] == m:\n", " next_dur += 1\n", " remainder_durs[ins] = note_dur - next_dur\n", " dev = val - last_val\n", " allowed_ins = (0,)\n", " \n", " yield (next_dur / 40.0, val, ins, allowed_ins, dev * 100)\n", " \n", " last_val = val\n", " remainder_durs = [rd - 1 for rd in remainder_durs]\n", " \n", "midi = list(freqs_to_midi(f_frequency, f_confidence))\n", "\n", "#plt.plot(f_time, midi)\n", "#plt.plot(f_time, savgol_filter(midi, 30, 5), color='yellow')\n", "#plt.plot(f_time, np.around(savgol_filter(midi, 30, 5)), color='red')\n", "#plt.plot(f_time, np.around(midi), color='green')\n", "#plt.plot(f_time, list(snap_midi(midi)), color='blue')\n", "#plt.show()\n", "\n", "midi = tuple(snap_midi(midi))\n", "\n", "#print(len(midi))\n", "#print(midi)\n", "\n", "fs = 2351 # sample rate \n", "f = 20 # the frequency of the signal\n", "\n", "#midi = zip(\n", "# tuple(midi[0] - 12 for i in range(2 * 40)) + tuple(chain(*tuple([m - 12 for r in range(randint(2, 4))] for m in midi))),\n", "# tuple(midi[0] - 7 for i in range(1 * 40)) + tuple(chain(*tuple([m - 7 for r in range(randint(1, 3))] for m in midi))) + tuple(midi[-1] - 12 for i in range(5 * 40)),\n", "# tuple(chain(*tuple([m for r in range(int(1 - np.cos(2*np.pi*f * (imx/fs))) * 5 + 1)] for imx, m in enumerate(midi)))) + tuple(midi[-1] - 0 for i in range(10 * 40)))\n", "\n", "midi = zip(\n", " tuple(midi[0] - 12 for i in range(2 * 40)) + tuple(chain(*tuple([m - 12 for r in range(int(1 - np.sin(2*np.pi*14 * (imx/fs))) * 3 + 1)] for imx, m in enumerate(midi)))),\n", " tuple(midi[0] - 7 for i in range(1 * 40)) + tuple(chain(*tuple([m - 7 for r in range(int(1 - np.sin(2*np.pi*12 * (imx/fs))) * 3 + 1)] for imx, m in enumerate(midi)))),\n", " tuple(chain(*tuple([m for r in range(int(1 - np.cos(0.5 * np.pi + 2*np.pi*10 * (imx/fs))) * 3 + 1)] for imx, m in enumerate(midi))))\n", ")\n", "\n", "#for m in list(midi):\n", "# print(m)\n", "\n", "target_melody_data = list(filter_midi(list(midi)))\n", "target_melody_data\n", "\n", "\n", "#target_melody_data = list(filter_data(time, frequency, confidence))\n", "#target_melody_data\n", "#durs = tuple(round(y[0]-x[0], 2) for (x, y) in pairwise(target_melody_data)) + ((1,))\n", "#print(durs)\n", "#target_melody_data = tuple((d,) + target_melody_data[i][1:] for i, d in enumerate(durs) if d > 0.1)\n", "#list(target_melody_data)" ] }, { "cell_type": "code", "execution_count": 524, "id": "762c7dd3-7c20-47a5-aa12-c090f243833a", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[ 0 1 2 ... 2348 2349 2350]\n" ] }, { "data": { "text/plain": [ "range(0, 0)" ] }, "execution_count": 524, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt # For ploting\n", "import numpy as np # to work with numerical data efficiently\n", "\n", "fs = 2351 # sample rate \n", "f = 5 # the frequency of the signal\n", "\n", "x = np.arange(fs) # the points on the x axis for plotting\n", "print(x)\n", "# compute the value (amplitude) of the sin wave at the for each sample\n", "y = (1 - np.sin(0.5 * np.pi + 2*np.pi*f * ((x)/fs))) * 2 + 0\n", "\n", "#this instruction can only be used with IPython Notbook. \n", "# showing the exact location of the smaples\n", "plt.stem(x,y, 'r', )\n", "plt.plot(x,y)\n", "np.cos(2*np.pi*f * (10/fs)) * 1 + 2\n", "range(int((1 - np.sin(2*np.pi*f * (50/fs))) * + 2))" ] }, { "cell_type": "markdown", "id": "1d9d26d1-caa8-43f3-a4da-803ae55b3502", "metadata": {}, "source": [ "## cleanup (this is what is being used)" ] }, { "cell_type": "code", "execution_count": 529, "id": "fb2ad9ad-7a8c-4f84-ab0c-9c1f1ecdb8a8", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "58.775\n", "0.0 51.0 2 51.0\n", "1.05\n", "1.05 53.0 2 53.0\n", "0.3\n", "1.35 51.0 2 51.0\n", "1.5\n", "2.85 49.0 2 49.0\n", "0.425\n", "3.275 48.0 2 48.0\n", "0.975\n", "4.05 53.0 1 53.0\n", "0.55\n", "4.25 49.0 2 49.0\n", "0.725\n", "4.6 51.0 1 51.0\n", "4.5\n", "here\n", "8.2 51.0 1 None\n", "4.5\n", "here\n", "8.55 51.0 1 None\n", "4.5\n", "here\n", "8.875 51.0 1 None\n", "4.5\n", "4.975 51.0 2 51.0\n", "0.625\n", "5.65 51.0 2 51.0\n", "1.1\n", "6.8 48.0 2 48.0\n", "0.975\n", "7.05 53.0 0 53.0\n", "1.2\n", "7.775 51.0 2 51.0\n", "0.65\n", "8.25 51.0 0 51.0\n", "6.0\n", "here\n", "13.425 51.0 0 None\n", "6.0\n", "here\n", "13.8 51.0 0 None\n", "6.0\n", "here\n", "14.15 51.0 0 None\n", "6.0\n", "8.425 53.0 2 53.0\n", "0.45\n", "8.875 51.0 2 51.0\n", "1.6\n", "9.1 49.0 1 49.0\n", "1.275\n", "10.375 48.0 1 48.0\n", "1.775\n", "10.475 52.0 2 52.0\n", "0.4\n", "10.875 48.0 2 48.0\n", "1.325\n", "12.15 49.0 1 49.0\n", "0.725\n", "12.2 53.0 2 53.0\n", "0.6\n", "12.875 51.0 1 51.0\n", "0.625\n", "12.975 49.0 2 49.0\n", "1.55\n", "13.55 51.0 1 51.0\n", "2.35\n", "here\n", "14.975 51.0 1 None\n", "2.35\n", "here\n", "15.35 51.0 1 None\n", "2.35\n", "here\n", "15.65 51.0 1 None\n", "2.35\n", "14.25 49.0 0 49.0\n", "1.325\n", "14.725 52.0 2 52.0\n", "0.425\n", "15.15 51.0 2 51.0\n", "0.575\n", "15.575 48.0 0 48.0\n", "0.975\n", "16.05 48.0 1 48.0\n", "2.925\n", "here\n", "18.475 48.0 1 None\n", "2.925\n", "here\n", "18.75 48.0 1 None\n", "2.925\n", "16.475 46.0 2 46.0\n", "1.325\n", "16.55 49.0 0 49.0\n", "0.725\n", "17.275 51.0 0 51.0\n", "1.675\n", "17.875 52.0 2 52.0\n", "1.125\n", "18.975 51.0 1 51.0\n", "1.95\n", "here\n", "20.425 51.0 1 None\n", "1.95\n", "here\n", "20.8 51.0 1 None\n", "1.95\n", "19.15 51.0 0 51.0\n", "4.4\n", "here\n", "23.05 51.0 0 None\n", "4.4\n", "here\n", "23.4 51.0 0 None\n", "4.4\n", "19.175 57.0 2 57.0\n", "0.55\n", "19.725 53.0 2 53.0\n", "1.525\n", "20.925 53.0 1 53.0\n", "0.75\n", "21.25 57.0 2 57.0\n", "0.35\n", "21.675 51.0 1 51.0\n", "1.6\n", "here\n", "22.725 51.0 1 None\n", "1.6\n", "here\n", "23.05 51.0 1 None\n", "1.6\n", "21.775 51.0 2 51.0\n", "2.025\n", "23.275 52.0 1 52.0\n", "0.4\n", "23.675 48.0 1 48.0\n", "3.675\n", "here\n", "26.725 48.0 1 None\n", "3.675\n", "here\n", "27.0 48.0 1 None\n", "3.675\n", "here\n", "27.25 48.0 1 None\n", "3.675\n", "23.75 48.0 0 48.0\n", "2.625\n", "here\n", "25.525 48.0 0 None\n", "2.625\n", "here\n", "25.9 48.0 0 None\n", "2.625\n", "here\n", "26.2 48.0 0 None\n", "2.625\n", "23.8 53.0 2 53.0\n", "0.55\n", "24.35 51.0 2 51.0\n", "1.875\n", "26.225 49.0 2 49.0\n", "0.45\n", "26.375 51.0 0 51.0\n", "0.65\n", "26.675 48.0 2 48.0\n", "0.725\n", "27.025 53.0 0 53.0\n", "0.45\n", "27.35 53.0 1 53.0\n", "1.8\n", "here\n", "28.5 53.0 1 None\n", "1.8\n", "here\n", "28.775 53.0 1 None\n", "1.8\n", "here\n", "29.025 53.0 1 None\n", "1.8\n", "27.4 49.0 2 49.0\n", "0.275\n", "27.475 51.0 0 51.0\n", "4.675\n", "here\n", "31.55 51.0 0 None\n", "4.675\n", "here\n", "31.925 51.0 0 None\n", "4.675\n", "27.675 51.0 2 51.0\n", "1.3\n", "29.125 53.0 2 53.0\n", "0.575\n", "29.15 51.0 1 51.0\n", "0.525\n", "29.675 49.0 1 49.0\n", "2.55\n", "here\n", "31.45 49.0 1 None\n", "2.55\n", "here\n", "31.825 49.0 1 None\n", "2.55\n", "here\n", "32.15 49.0 1 None\n", "2.55\n", "29.7 51.0 2 51.0\n", "0.275\n", "30.275 56.0 2 56.0\n", "0.975\n", "31.25 57.0 2 57.0\n", "0.25\n", "31.5 56.0 2 56.0\n", "0.25\n", "31.75 53.0 2 53.0\n", "0.425\n", "32.15 52.0 0 52.0\n", "1.6\n", "here\n", "33.1 52.0 0 None\n", "1.6\n", "here\n", "33.375 52.0 0 None\n", "1.6\n", "here\n", "33.625 52.0 0 None\n", "1.6\n", "32.175 51.0 2 51.0\n", "2.35\n", "32.425 52.0 1 52.0\n", "0.425\n", "32.85 51.0 1 51.0\n", "0.575\n", "33.525 51.0 1 51.0\n", "0.475\n", "33.75 48.0 0 48.0\n", "3.35\n", "here\n", "36.425 48.0 0 None\n", "3.35\n", "here\n", "36.725 48.0 0 None\n", "3.35\n", "here\n", "36.975 48.0 0 None\n", "3.35\n", "34.0 49.0 1 49.0\n", "0.6\n", "34.525 53.0 2 53.0\n", "0.45\n", "34.6 48.0 1 48.0\n", "0.675\n", "34.975 51.0 2 51.0\n", "2.0\n", "35.275 46.0 1 46.0\n", "3.975\n", "here\n", "38.675 46.0 1 None\n", "3.975\n", "here\n", "39.05 46.0 1 None\n", "3.975\n", "36.975 48.0 2 48.0\n", "0.375\n", "37.1 53.0 0 53.0\n", "0.6\n", "37.35 49.0 2 49.0\n", "0.725\n", "37.875 49.0 0 49.0\n", "4.175\n", "here\n", "41.125 49.0 0 None\n", "4.175\n", "here\n", "41.425 49.0 0 None\n", "4.175\n", "here\n", "41.775 49.0 0 None\n", "4.175\n", "38.35 54.0 2 54.0\n", "0.525\n", "38.875 49.0 2 49.0\n", "1.8\n", "39.475 52.0 1 52.0\n", "2.125\n", "here\n", "41.1 52.0 1 None\n", "2.125\n", "here\n", "41.375 52.0 1 None\n", "2.125\n", "40.675 51.0 2 51.0\n", "0.9\n", "41.575 48.0 2 48.0\n", "1.05\n", "41.775 57.0 1 57.0\n", "0.55\n", "42.15 53.0 0 53.0\n", "0.7\n", "42.325 53.0 1 53.0\n", "2.375\n", "here\n", "44.075 53.0 1 None\n", "2.375\n", "here\n", "44.45 53.0 1 None\n", "2.375\n", "42.85 52.0 0 52.0\n", "1.7\n", "here\n", "43.9 52.0 0 None\n", "1.7\n", "here\n", "44.25 52.0 0 None\n", "1.7\n", "here\n", "44.525 52.0 0 None\n", "1.7\n", "42.9 51.0 2 51.0\n", "0.45\n", "43.35 53.0 2 53.0\n", "0.3\n", "43.65 52.0 2 52.0\n", "0.45\n", "44.1 51.0 2 51.0\n", "0.7\n", "44.55 51.0 0 51.0\n", "2.3\n", "here\n", "46.125 51.0 0 None\n", "2.3\n", "here\n", "46.5 51.0 0 None\n", "2.3\n", "here\n", "46.825 51.0 0 None\n", "2.3\n", "44.7 57.0 1 57.0\n", "1.05\n", "45.0 50.0 2 50.0\n", "0.9\n", "45.825 54.0 1 54.0\n", "0.45\n", "45.9 52.0 2 52.0\n", "0.475\n", "46.275 51.0 1 51.0\n", "5.025\n", "here\n", "50.6 51.0 1 None\n", "5.025\n", "here\n", "50.85 51.0 1 None\n", "5.025\n", "here\n", "51.15 51.0 1 None\n", "5.025\n", "46.375 51.0 2 51.0\n", "1.925\n", "47.675 46.0 0 46.0\n", "1.325\n", "48.5 53.0 2 53.0\n", "0.425\n", "48.925 49.0 2 49.0\n", "1.575\n", "49.15 52.0 0 52.0\n", "4.5\n", "here\n", "52.75 52.0 0 None\n", "4.5\n", "here\n", "53.05 52.0 0 None\n", "4.5\n", "here\n", "53.425 52.0 0 None\n", "4.5\n", "50.5 56.0 2 56.0\n", "0.75\n", "51.25 54.0 2 54.0\n", "0.375\n", "51.3 53.0 1 53.0\n", "0.55\n", "51.825 51.0 2 51.0\n", "0.325\n", "51.85 51.0 1 51.0\n", "2.875\n", "here\n", "54.025 51.0 1 None\n", "2.875\n", "here\n", "54.375 51.0 1 None\n", "2.875\n", "here\n", "54.65 51.0 1 None\n", "2.875\n", "52.15 53.0 2 53.0\n", "0.25\n", "52.4 51.0 2 51.0\n", "1.9\n", "53.65 54.0 0 54.0\n", "0.4\n", "54.05 56.0 0 56.0\n", "0.3\n", "54.3 49.0 2 49.0\n", "0.575\n", "54.35 57.0 0 57.0\n", "2.2\n", "here\n", "56.05 57.0 0 None\n", "2.2\n", "here\n", "56.4 57.0 0 None\n", "2.2\n", "54.725 49.0 1 49.0\n", "1.35\n", "here\n", "55.475 49.0 1 None\n", "1.35\n", "here\n", "55.75 49.0 1 None\n", "1.35\n", "here\n", "56.0 49.0 1 None\n", "1.35\n", "54.875 48.0 2 48.0\n", "0.325\n", "55.375 51.0 2 51.0\n", "2.15\n", "56.075 48.0 1 48.0\n", "2.175\n", "here\n", "57.75 48.0 1 None\n", "2.175\n", "here\n", "58.05 48.0 1 None\n", "2.175\n", "56.55 53.0 0 53.0\n", "2.2\n", "here\n", "57.975 53.0 0 None\n", "2.2\n", "here\n", "58.35 53.0 0 None\n", "2.2\n", "here\n", "58.675 53.0 0 None\n", "2.2\n", "57.675 53.0 2 53.0\n", "0.25\n", "57.975 51.0 2 51.0\n", "0.45\n", "58.25 49.0 1 49.0\n", "0.525\n", "58.425 52.0 2 52.0\n", "0.35\n", "---\n", "(0.0, 51.0, 2, 51.0)\n", "(1.05, 51.0, 2, 0.0)\n", "---\n", "(1.05, 53.0, 2, 53.0)\n", "(0.3, 53.0, 2, 200.0)\n", "---\n", "(1.35, 51.0, 2, 51.0)\n", "(1.5, 51.0, 2, -200.0)\n", "---\n", "(2.85, 49.0, 2, 49.0)\n", "(0.425, 49.0, 2, -200.0)\n", "---\n", "(3.275, 48.0, 2, 48.0)\n", "(0.775, 48.0, 2, -100.0)\n", "---\n", "(4.05, 53.0, 1, 53.0)\n", "(0.2, 53.0, 1, 500.0)\n", "---\n", "(4.25, 49.0, 2, 49.0)\n", "(0.35, 49.0, 2, -400.0)\n", "---\n", "(4.6, 51.0, 1, 51.0)\n", "(0.375, 51.0, 1, 200.0)\n", "---\n", "(4.975, 51.0, 2, 51.0)\n", "(0.675, 51.0, 2, 0.0)\n", "---\n", "(5.65, 51.0, 2, 51.0)\n", "(1.15, 51.0, 2, 0.0)\n", "---\n", "(6.8, 48.0, 2, 48.0)\n", "(0.25, 48.0, 2, -300.0)\n", "---\n", "(7.05, 53.0, 0, 53.0)\n", "(0.725, 53.0, 0, 500.0)\n", "---\n", "(7.775, 51.0, 2, 51.0)\n", "(0.425, 51.0, 2, -200.0)\n", "---\n", "(8.2, 51.0, 1, None)\n", "(0.05, 51.0, 1, None)\n", "---\n", "(8.25, 51.0, 0, 51.0)\n", "(0.175, 51.0, 0, 0.0)\n", "---\n", "(8.425, 53.0, 2, 53.0)\n", "(0.125, 53.0, 2, 200.0)\n", "---\n", "(8.55, 51.0, 1, None)\n", "(0.325, 51.0, 1, None)\n", "---\n", "(8.875, 51.0, 1, None)\n", "(0.0, 51.0, 1, None)\n", "---\n", "(8.875, 51.0, 2, 51.0)\n", "(0.225, 51.0, 2, -200.0)\n", "---\n", "(9.1, 49.0, 1, 49.0)\n", "(1.275, 49.0, 1, -200.0)\n", "---\n", "(10.375, 48.0, 1, 48.0)\n", "(0.1, 48.0, 1, -100.0)\n", "---\n", "(10.475, 52.0, 2, 52.0)\n", "(0.4, 52.0, 2, 400.0)\n", "---\n", "(10.875, 48.0, 2, 48.0)\n", "(1.275, 48.0, 2, -400.0)\n", "---\n", "(12.15, 49.0, 1, 49.0)\n", "(0.05, 49.0, 1, 100.0)\n", "---\n", "(12.2, 53.0, 2, 53.0)\n", "(0.675, 53.0, 2, 400.0)\n", "---\n", "(12.875, 51.0, 1, 51.0)\n", "(0.1, 51.0, 1, -200.0)\n", "---\n", "(12.975, 49.0, 2, 49.0)\n", "(0.45, 49.0, 2, -200.0)\n", "---\n", "(13.425, 51.0, 0, None)\n", "(0.125, 51.0, 0, None)\n", "---\n", "(13.55, 51.0, 1, 51.0)\n", "(0.25, 51.0, 1, 200.0)\n", "---\n", "(13.8, 51.0, 0, None)\n", "(0.35, 51.0, 0, None)\n", "---\n", "(14.15, 51.0, 0, None)\n", "(0.1, 51.0, 0, None)\n", "---\n", "(14.25, 49.0, 0, 49.0)\n", "(0.475, 49.0, 0, -200.0)\n", "---\n", "(14.725, 52.0, 2, 52.0)\n", "(0.25, 52.0, 2, 300.0)\n", "---\n", "(14.975, 51.0, 1, None)\n", "(0.175, 51.0, 1, None)\n", "---\n", "(15.15, 51.0, 2, 51.0)\n", "(0.2, 51.0, 2, -100.0)\n", "---\n", "(15.35, 51.0, 1, None)\n", "(0.225, 51.0, 1, None)\n", "---\n", "(15.575, 48.0, 0, 48.0)\n", "(0.075, 48.0, 0, -300.0)\n", "---\n", "(15.65, 51.0, 1, None)\n", "(0.4, 51.0, 1, None)\n", "---\n", "(16.05, 48.0, 1, 48.0)\n", "(0.425, 48.0, 1, 0.0)\n", "---\n", "(16.475, 46.0, 2, 46.0)\n", "(0.075, 46.0, 2, -200.0)\n", "---\n", "(16.55, 49.0, 0, 49.0)\n", "(0.725, 49.0, 0, 300.0)\n", "---\n", "(17.275, 51.0, 0, 51.0)\n", "(0.6, 51.0, 0, 200.0)\n", "---\n", "(17.875, 52.0, 2, 52.0)\n", "(0.6, 52.0, 2, 100.0)\n", "---\n", "(18.475, 48.0, 1, None)\n", "(0.275, 48.0, 1, None)\n", "---\n", "(18.75, 48.0, 1, None)\n", "(0.225, 48.0, 1, None)\n", "---\n", "(18.975, 51.0, 1, 51.0)\n", "(0.175, 51.0, 1, -100.0)\n", "---\n", "(19.15, 51.0, 0, 51.0)\n", "(0.025, 51.0, 0, 0.0)\n", "---\n", "(19.175, 57.0, 2, 57.0)\n", "(0.55, 57.0, 2, 600.0)\n", "---\n", "(19.725, 53.0, 2, 53.0)\n", "(0.7, 53.0, 2, -400.0)\n", "---\n", "(20.425, 51.0, 1, None)\n", "(0.375, 51.0, 1, None)\n", "---\n", "(20.8, 51.0, 1, None)\n", "(0.125, 51.0, 1, None)\n", "---\n", "(20.925, 53.0, 1, 53.0)\n", "(0.325, 53.0, 1, 0.0)\n", "---\n", "(21.25, 57.0, 2, 57.0)\n", "(0.425, 57.0, 2, 400.0)\n", "---\n", "(21.675, 51.0, 1, 51.0)\n", "(0.1, 51.0, 1, -600.0)\n", "---\n", "(21.775, 51.0, 2, 51.0)\n", "(0.95, 51.0, 2, 0.0)\n", "---\n", "(22.725, 51.0, 1, None)\n", "(0.325, 51.0, 1, None)\n", "---\n", "(23.05, 51.0, 0, None)\n", "(0.0, 51.0, 0, None)\n", "---\n", "(23.05, 51.0, 1, None)\n", "(0.225, 51.0, 1, None)\n", "---\n", "(23.275, 52.0, 1, 52.0)\n", "(0.125, 52.0, 1, 100.0)\n", "---\n", "(23.4, 51.0, 0, None)\n", "(0.275, 51.0, 0, None)\n", "---\n", "(23.675, 48.0, 1, 48.0)\n", "(0.075, 48.0, 1, -400.0)\n", "---\n", "(23.75, 48.0, 0, 48.0)\n", "(0.05, 48.0, 0, 0.0)\n", "---\n", "(23.8, 53.0, 2, 53.0)\n", "(0.55, 53.0, 2, 500.0)\n", "---\n", "(24.35, 51.0, 2, 51.0)\n", "(1.175, 51.0, 2, -200.0)\n", "---\n", "(25.525, 48.0, 0, None)\n", "(0.375, 48.0, 0, None)\n", "---\n", "(25.9, 48.0, 0, None)\n", "(0.3, 48.0, 0, None)\n", "---\n", "(26.2, 48.0, 0, None)\n", "(0.025, 48.0, 0, None)\n", "---\n", "(26.225, 49.0, 2, 49.0)\n", "(0.15, 49.0, 2, -200.0)\n", "---\n", "(26.375, 51.0, 0, 51.0)\n", "(0.3, 51.0, 0, 200.0)\n", "---\n", "(26.675, 48.0, 2, 48.0)\n", "(0.05, 48.0, 2, -300.0)\n", "---\n", "(26.725, 48.0, 1, None)\n", "(0.275, 48.0, 1, None)\n", "---\n", "(27.0, 48.0, 1, None)\n", "(0.025, 48.0, 1, None)\n", "---\n", "(27.025, 53.0, 0, 53.0)\n", "(0.225, 53.0, 0, 500.0)\n", "---\n", "(27.25, 48.0, 1, None)\n", "(0.1, 48.0, 1, None)\n", "---\n", "(27.35, 53.0, 1, 53.0)\n", "(0.05, 53.0, 1, 0.0)\n", "---\n", "(27.4, 49.0, 2, 49.0)\n", "(0.075, 49.0, 2, -400.0)\n", "---\n", "(27.475, 51.0, 0, 51.0)\n", "(0.2, 51.0, 0, 200.0)\n", "---\n", "(27.675, 51.0, 2, 51.0)\n", "(0.825, 51.0, 2, 0.0)\n", "---\n", "(28.5, 53.0, 1, None)\n", "(0.275, 53.0, 1, None)\n", "---\n", "(28.775, 53.0, 1, None)\n", "(0.25, 53.0, 1, None)\n", "---\n", "(29.025, 53.0, 1, None)\n", "(0.1, 53.0, 1, None)\n", "---\n", "(29.125, 53.0, 2, 53.0)\n", "(0.025, 53.0, 2, 200.0)\n", "---\n", "(29.15, 51.0, 1, 51.0)\n", "(0.525, 51.0, 1, -200.0)\n", "---\n", "(29.675, 49.0, 1, 49.0)\n", "(0.025, 49.0, 1, -200.0)\n", "---\n", "(29.7, 51.0, 2, 51.0)\n", "(0.575, 51.0, 2, 200.0)\n", "---\n", "(30.275, 56.0, 2, 56.0)\n", "(0.975, 56.0, 2, 500.0)\n", "---\n", "(31.25, 57.0, 2, 57.0)\n", "(0.2, 57.0, 2, 100.0)\n", "---\n", "(31.45, 49.0, 1, None)\n", "(0.05, 49.0, 1, None)\n", "---\n", "(31.5, 56.0, 2, 56.0)\n", "(0.05, 56.0, 2, -100.0)\n", "---\n", "(31.55, 51.0, 0, None)\n", "(0.2, 51.0, 0, None)\n", "---\n", "(31.75, 53.0, 2, 53.0)\n", "(0.075, 53.0, 2, -300.0)\n", "---\n", "(31.825, 49.0, 1, None)\n", "(0.1, 49.0, 1, None)\n", "---\n", "(31.925, 51.0, 0, None)\n", "(0.225, 51.0, 0, None)\n", "---\n", "(32.15, 49.0, 1, None)\n", "(0.0, 49.0, 1, None)\n", "---\n", "(32.15, 52.0, 0, 52.0)\n", "(0.025, 52.0, 0, -100.0)\n", "---\n", "(32.175, 51.0, 2, 51.0)\n", "(0.25, 51.0, 2, -100.0)\n", "---\n", "(32.425, 52.0, 1, 52.0)\n", "(0.425, 52.0, 1, 100.0)\n", "---\n", "(32.85, 51.0, 1, 51.0)\n", "(0.25, 51.0, 1, -100.0)\n", "---\n", "(33.1, 52.0, 0, None)\n", "(0.275, 52.0, 0, None)\n", "---\n", "(33.375, 52.0, 0, None)\n", "(0.15, 52.0, 0, None)\n", "---\n", "(33.525, 51.0, 1, 51.0)\n", "(0.1, 51.0, 1, 0.0)\n", "---\n", "(33.625, 52.0, 0, None)\n", "(0.125, 52.0, 0, None)\n", "---\n", "(33.75, 48.0, 0, 48.0)\n", "(0.25, 48.0, 0, -300.0)\n", "---\n", "(34.0, 49.0, 1, 49.0)\n", "(0.525, 49.0, 1, 100.0)\n", "---\n", "(34.525, 53.0, 2, 53.0)\n", "(0.075, 53.0, 2, 400.0)\n", "---\n", "(34.6, 48.0, 1, 48.0)\n", "(0.375, 48.0, 1, -500.0)\n", "---\n", "(34.975, 51.0, 2, 51.0)\n", "(0.3, 51.0, 2, 300.0)\n", "---\n", "(35.275, 46.0, 1, 46.0)\n", "(1.15, 46.0, 1, -500.0)\n", "---\n", "(36.425, 48.0, 0, None)\n", "(0.3, 48.0, 0, None)\n", "---\n", "(36.725, 48.0, 0, None)\n", "(0.25, 48.0, 0, None)\n", "---\n", "(36.975, 48.0, 0, None)\n", "(0.0, 48.0, 0, None)\n", "---\n", "(36.975, 48.0, 2, 48.0)\n", "(0.125, 48.0, 2, 200.0)\n", "---\n", "(37.1, 53.0, 0, 53.0)\n", "(0.25, 53.0, 0, 500.0)\n", "---\n", "(37.35, 49.0, 2, 49.0)\n", "(0.525, 49.0, 2, -400.0)\n", "---\n", "(37.875, 49.0, 0, 49.0)\n", "(0.475, 49.0, 0, 0.0)\n", "---\n", "(38.35, 54.0, 2, 54.0)\n", "(0.325, 54.0, 2, 500.0)\n", "---\n", "(38.675, 46.0, 1, None)\n", "(0.2, 46.0, 1, None)\n", "---\n", "(38.875, 49.0, 2, 49.0)\n", "(0.175, 49.0, 2, -500.0)\n", "---\n", "(39.05, 46.0, 1, None)\n", "(0.425, 46.0, 1, None)\n", "---\n", "(39.475, 52.0, 1, 52.0)\n", "(1.2, 52.0, 1, 300.0)\n", "---\n", "(40.675, 51.0, 2, 51.0)\n", "(0.425, 51.0, 2, -100.0)\n", "---\n", "(41.1, 52.0, 1, None)\n", "(0.025, 52.0, 1, None)\n", "---\n", "(41.125, 49.0, 0, None)\n", "(0.25, 49.0, 0, None)\n", "---\n", "(41.375, 52.0, 1, None)\n", "(0.05, 52.0, 1, None)\n", "---\n", "(41.425, 49.0, 0, None)\n", "(0.15, 49.0, 0, None)\n", "---\n", "(41.575, 48.0, 2, 48.0)\n", "(0.2, 48.0, 2, -300.0)\n", "---\n", "(41.775, 49.0, 0, None)\n", "(0.0, 49.0, 0, None)\n", "---\n", "(41.775, 57.0, 1, 57.0)\n", "(0.375, 57.0, 1, 900.0)\n", "---\n", "(42.15, 53.0, 0, 53.0)\n", "(0.175, 53.0, 0, -400.0)\n", "---\n", "(42.325, 53.0, 1, 53.0)\n", "(0.525, 53.0, 1, 0.0)\n", "---\n", "(42.85, 52.0, 0, 52.0)\n", "(0.05, 52.0, 0, -100.0)\n", "---\n", "(42.9, 51.0, 2, 51.0)\n", "(0.45, 51.0, 2, -100.0)\n", "---\n", "(43.35, 53.0, 2, 53.0)\n", "(0.3, 53.0, 2, 200.0)\n", "---\n", "(43.65, 52.0, 2, 52.0)\n", "(0.25, 52.0, 2, -100.0)\n", "---\n", "(43.9, 52.0, 0, None)\n", "(0.175, 52.0, 0, None)\n", "---\n", "(44.075, 53.0, 1, None)\n", "(0.025, 53.0, 1, None)\n", "---\n", "(44.1, 51.0, 2, 51.0)\n", "(0.15, 51.0, 2, -100.0)\n", "---\n", "(44.25, 52.0, 0, None)\n", "(0.2, 52.0, 0, None)\n", "---\n", "(44.45, 53.0, 1, None)\n", "(0.075, 53.0, 1, None)\n", "---\n", "(44.525, 52.0, 0, None)\n", "(0.025, 52.0, 0, None)\n", "---\n", "(44.55, 51.0, 0, 51.0)\n", "(0.15, 51.0, 0, 0.0)\n", "---\n", "(44.7, 57.0, 1, 57.0)\n", "(0.3, 57.0, 1, 600.0)\n", "---\n", "(45.0, 50.0, 2, 50.0)\n", "(0.825, 50.0, 2, -700.0)\n", "---\n", "(45.825, 54.0, 1, 54.0)\n", "(0.075, 54.0, 1, 400.0)\n", "---\n", "(45.9, 52.0, 2, 52.0)\n", "(0.225, 52.0, 2, -200.0)\n", "---\n", "(46.125, 51.0, 0, None)\n", "(0.15, 51.0, 0, None)\n", "---\n", "(46.275, 51.0, 1, 51.0)\n", "(0.1, 51.0, 1, -100.0)\n", "---\n", "(46.375, 51.0, 2, 51.0)\n", "(0.125, 51.0, 2, 0.0)\n", "---\n", "(46.5, 51.0, 0, None)\n", "(0.325, 51.0, 0, None)\n", "---\n", "(46.825, 51.0, 0, None)\n", "(0.85, 51.0, 0, None)\n", "---\n", "(47.675, 46.0, 0, 46.0)\n", "(0.825, 46.0, 0, -500.0)\n", "---\n", "(48.5, 53.0, 2, 53.0)\n", "(0.425, 53.0, 2, 700.0)\n", "---\n", "(48.925, 49.0, 2, 49.0)\n", "(0.225, 49.0, 2, -400.0)\n", "---\n", "(49.15, 52.0, 0, 52.0)\n", "(1.35, 52.0, 0, 300.0)\n", "---\n", "(50.5, 56.0, 2, 56.0)\n", "(0.1, 56.0, 2, 400.0)\n", "---\n", "(50.6, 51.0, 1, None)\n", "(0.25, 51.0, 1, None)\n", "---\n", "(50.85, 51.0, 1, None)\n", "(0.3, 51.0, 1, None)\n", "---\n", "(51.15, 51.0, 1, None)\n", "(0.1, 51.0, 1, None)\n", "---\n", "(51.25, 54.0, 2, 54.0)\n", "(0.05, 54.0, 2, -200.0)\n", "---\n", "(51.3, 53.0, 1, 53.0)\n", "(0.525, 53.0, 1, -100.0)\n", "---\n", "(51.825, 51.0, 2, 51.0)\n", "(0.025, 51.0, 2, -200.0)\n", "---\n", "(51.85, 51.0, 1, 51.0)\n", "(0.3, 51.0, 1, 0.0)\n", "---\n", "(52.15, 53.0, 2, 53.0)\n", "(0.25, 53.0, 2, 200.0)\n", "---\n", "(52.4, 51.0, 2, 51.0)\n", "(0.35, 51.0, 2, -200.0)\n", "---\n", "(52.75, 52.0, 0, None)\n", "(0.3, 52.0, 0, None)\n", "---\n", "(53.05, 52.0, 0, None)\n", "(0.375, 52.0, 0, None)\n", "---\n", "(53.425, 52.0, 0, None)\n", "(0.225, 52.0, 0, None)\n", "---\n", "(53.65, 54.0, 0, 54.0)\n", "(0.375, 54.0, 0, 300.0)\n", "---\n", "(54.025, 51.0, 1, None)\n", "(0.025, 51.0, 1, None)\n", "---\n", "(54.05, 56.0, 0, 56.0)\n", "(0.25, 56.0, 0, 200.0)\n", "---\n", "(54.3, 49.0, 2, 49.0)\n", "(0.05, 49.0, 2, -700.0)\n", "---\n", "(54.35, 57.0, 0, 57.0)\n", "(0.025, 57.0, 0, 800.0)\n", "---\n", "(54.375, 51.0, 1, None)\n", "(0.275, 51.0, 1, None)\n", "---\n", "(54.65, 51.0, 1, None)\n", "(0.075, 51.0, 1, None)\n", "---\n", "(54.725, 49.0, 1, 49.0)\n", "(0.15, 49.0, 1, -800.0)\n", "---\n", "(54.875, 48.0, 2, 48.0)\n", "(0.5, 48.0, 2, -100.0)\n", "---\n", "(55.375, 51.0, 2, 51.0)\n", "(0.1, 51.0, 2, 300.0)\n", "---\n", "(55.475, 49.0, 1, None)\n", "(0.275, 49.0, 1, None)\n", "---\n", "(55.75, 49.0, 1, None)\n", "(0.25, 49.0, 1, None)\n", "---\n", "(56.0, 49.0, 1, None)\n", "(0.05, 49.0, 1, None)\n", "---\n", "(56.05, 57.0, 0, None)\n", "(0.025, 57.0, 0, None)\n", "---\n", "(56.075, 48.0, 1, 48.0)\n", "(0.325, 48.0, 1, -300.0)\n", "---\n", "(56.4, 57.0, 0, None)\n", "(0.15, 57.0, 0, None)\n", "---\n", "(56.55, 53.0, 0, 53.0)\n", "(1.125, 53.0, 0, 500.0)\n", "---\n", "(57.675, 53.0, 2, 53.0)\n", "(0.075, 53.0, 2, 0.0)\n", "---\n", "(57.75, 48.0, 1, None)\n", "(0.225, 48.0, 1, None)\n", "---\n", "(57.975, 51.0, 2, 51.0)\n", "(0.0, 51.0, 2, -200.0)\n", "---\n", "(57.975, 53.0, 0, None)\n", "(0.075, 53.0, 0, None)\n", "---\n", "(58.05, 48.0, 1, None)\n", "(0.2, 48.0, 1, None)\n", "---\n", "(58.25, 49.0, 1, 49.0)\n", "(0.1, 49.0, 1, -200.0)\n", "---\n", "(58.35, 53.0, 0, None)\n", "(0.075, 53.0, 0, None)\n", "---\n", "(58.425, 52.0, 2, 52.0)\n", "(0.25, 52.0, 2, 300.0)\n", "---\n", "(58.675, 53.0, 0, None)\n", "(1, 53.0, 0, None)\n" ] }, { "data": { "text/plain": [ "[(1.05, 51.0, 2, 0.0),\n", " (0.3, 53.0, 2, 200.0),\n", " (1.5, 51.0, 2, -200.0),\n", " (0.425, 49.0, 2, -200.0),\n", " (0.775, 48.0, 2, -100.0),\n", " (0.2, 53.0, 1, 500.0),\n", " (0.35, 49.0, 2, -400.0),\n", " (0.375, 51.0, 1, 200.0),\n", " (0.675, 51.0, 2, 0.0),\n", " (1.15, 51.0, 2, 0.0),\n", " (0.25, 48.0, 2, -300.0),\n", " (0.725, 53.0, 0, 500.0),\n", " (0.425, 51.0, 2, -200.0),\n", " (0.05, 51.0, 1, None),\n", " (0.175, 51.0, 0, 0.0),\n", " (0.125, 53.0, 2, 200.0),\n", " (0.325, 51.0, 1, None),\n", " (0.0, 51.0, 1, None),\n", " (0.225, 51.0, 2, -200.0),\n", " (1.275, 49.0, 1, -200.0),\n", " (0.1, 48.0, 1, -100.0),\n", " (0.4, 52.0, 2, 400.0),\n", " (1.275, 48.0, 2, -400.0),\n", " (0.05, 49.0, 1, 100.0),\n", " (0.675, 53.0, 2, 400.0),\n", " (0.1, 51.0, 1, -200.0),\n", " (0.45, 49.0, 2, -200.0),\n", " (0.125, 51.0, 0, None),\n", " (0.25, 51.0, 1, 200.0),\n", " (0.35, 51.0, 0, None),\n", " (0.1, 51.0, 0, None),\n", " (0.475, 49.0, 0, -200.0),\n", " (0.25, 52.0, 2, 300.0),\n", " (0.175, 51.0, 1, None),\n", " (0.2, 51.0, 2, -100.0),\n", " (0.225, 51.0, 1, None),\n", " (0.075, 48.0, 0, -300.0),\n", " (0.4, 51.0, 1, None),\n", " (0.425, 48.0, 1, 0.0),\n", " (0.075, 46.0, 2, -200.0),\n", " (0.725, 49.0, 0, 300.0),\n", " (0.6, 51.0, 0, 200.0),\n", " (0.6, 52.0, 2, 100.0),\n", " (0.275, 48.0, 1, None),\n", " (0.225, 48.0, 1, None),\n", " (0.175, 51.0, 1, -100.0),\n", " (0.025, 51.0, 0, 0.0),\n", " (0.55, 57.0, 2, 600.0),\n", " (0.7, 53.0, 2, -400.0),\n", " (0.375, 51.0, 1, None),\n", " (0.125, 51.0, 1, None),\n", " (0.325, 53.0, 1, 0.0),\n", " (0.425, 57.0, 2, 400.0),\n", " (0.1, 51.0, 1, -600.0),\n", " (0.95, 51.0, 2, 0.0),\n", " (0.325, 51.0, 1, None),\n", " (0.0, 51.0, 0, None),\n", " (0.225, 51.0, 1, None),\n", " (0.125, 52.0, 1, 100.0),\n", " (0.275, 51.0, 0, None),\n", " (0.075, 48.0, 1, -400.0),\n", " (0.05, 48.0, 0, 0.0),\n", " (0.55, 53.0, 2, 500.0),\n", " (1.175, 51.0, 2, -200.0),\n", " (0.375, 48.0, 0, None),\n", " (0.3, 48.0, 0, None),\n", " (0.025, 48.0, 0, None),\n", " (0.15, 49.0, 2, -200.0),\n", " (0.3, 51.0, 0, 200.0),\n", " (0.05, 48.0, 2, -300.0),\n", " (0.275, 48.0, 1, None),\n", " (0.025, 48.0, 1, None),\n", " (0.225, 53.0, 0, 500.0),\n", " (0.1, 48.0, 1, None),\n", " (0.05, 53.0, 1, 0.0),\n", " (0.075, 49.0, 2, -400.0),\n", " (0.2, 51.0, 0, 200.0),\n", " (0.825, 51.0, 2, 0.0),\n", " (0.275, 53.0, 1, None),\n", " (0.25, 53.0, 1, None),\n", " (0.1, 53.0, 1, None),\n", " (0.025, 53.0, 2, 200.0),\n", " (0.525, 51.0, 1, -200.0),\n", " (0.025, 49.0, 1, -200.0),\n", " (0.575, 51.0, 2, 200.0),\n", " (0.975, 56.0, 2, 500.0),\n", " (0.2, 57.0, 2, 100.0),\n", " (0.05, 49.0, 1, None),\n", " (0.05, 56.0, 2, -100.0),\n", " (0.2, 51.0, 0, None),\n", " (0.075, 53.0, 2, -300.0),\n", " (0.1, 49.0, 1, None),\n", " (0.225, 51.0, 0, None),\n", " (0.0, 49.0, 1, None),\n", " (0.025, 52.0, 0, -100.0),\n", " (0.25, 51.0, 2, -100.0),\n", " (0.425, 52.0, 1, 100.0),\n", " (0.25, 51.0, 1, -100.0),\n", " (0.275, 52.0, 0, None),\n", " (0.15, 52.0, 0, None),\n", " (0.1, 51.0, 1, 0.0),\n", " (0.125, 52.0, 0, None),\n", " (0.25, 48.0, 0, -300.0),\n", " (0.525, 49.0, 1, 100.0),\n", " (0.075, 53.0, 2, 400.0),\n", " (0.375, 48.0, 1, -500.0),\n", " (0.3, 51.0, 2, 300.0),\n", " (1.15, 46.0, 1, -500.0),\n", " (0.3, 48.0, 0, None),\n", " (0.25, 48.0, 0, None),\n", " (0.0, 48.0, 0, None),\n", " (0.125, 48.0, 2, 200.0),\n", " (0.25, 53.0, 0, 500.0),\n", " (0.525, 49.0, 2, -400.0),\n", " (0.475, 49.0, 0, 0.0),\n", " (0.325, 54.0, 2, 500.0),\n", " (0.2, 46.0, 1, None),\n", " (0.175, 49.0, 2, -500.0),\n", " (0.425, 46.0, 1, None),\n", " (1.2, 52.0, 1, 300.0),\n", " (0.425, 51.0, 2, -100.0),\n", " (0.025, 52.0, 1, None),\n", " (0.25, 49.0, 0, None),\n", " (0.05, 52.0, 1, None),\n", " (0.15, 49.0, 0, None),\n", " (0.2, 48.0, 2, -300.0),\n", " (0.0, 49.0, 0, None),\n", " (0.375, 57.0, 1, 900.0),\n", " (0.175, 53.0, 0, -400.0),\n", " (0.525, 53.0, 1, 0.0),\n", " (0.05, 52.0, 0, -100.0),\n", " (0.45, 51.0, 2, -100.0),\n", " (0.3, 53.0, 2, 200.0),\n", " (0.25, 52.0, 2, -100.0),\n", " (0.175, 52.0, 0, None),\n", " (0.025, 53.0, 1, None),\n", " (0.15, 51.0, 2, -100.0),\n", " (0.2, 52.0, 0, None),\n", " (0.075, 53.0, 1, None),\n", " (0.025, 52.0, 0, None),\n", " (0.15, 51.0, 0, 0.0),\n", " (0.3, 57.0, 1, 600.0),\n", " (0.825, 50.0, 2, -700.0),\n", " (0.075, 54.0, 1, 400.0),\n", " (0.225, 52.0, 2, -200.0),\n", " (0.15, 51.0, 0, None),\n", " (0.1, 51.0, 1, -100.0),\n", " (0.125, 51.0, 2, 0.0),\n", " (0.325, 51.0, 0, None),\n", " (0.85, 51.0, 0, None),\n", " (0.825, 46.0, 0, -500.0),\n", " (0.425, 53.0, 2, 700.0),\n", " (0.225, 49.0, 2, -400.0),\n", " (1.35, 52.0, 0, 300.0),\n", " (0.1, 56.0, 2, 400.0),\n", " (0.25, 51.0, 1, None),\n", " (0.3, 51.0, 1, None),\n", " (0.1, 51.0, 1, None),\n", " (0.05, 54.0, 2, -200.0),\n", " (0.525, 53.0, 1, -100.0),\n", " (0.025, 51.0, 2, -200.0),\n", " (0.3, 51.0, 1, 0.0),\n", " (0.25, 53.0, 2, 200.0),\n", " (0.35, 51.0, 2, -200.0),\n", " (0.3, 52.0, 0, None),\n", " (0.375, 52.0, 0, None),\n", " (0.225, 52.0, 0, None),\n", " (0.375, 54.0, 0, 300.0),\n", " (0.025, 51.0, 1, None),\n", " (0.25, 56.0, 0, 200.0),\n", " (0.05, 49.0, 2, -700.0),\n", " (0.025, 57.0, 0, 800.0),\n", " (0.275, 51.0, 1, None),\n", " (0.075, 51.0, 1, None),\n", " (0.15, 49.0, 1, -800.0),\n", " (0.5, 48.0, 2, -100.0),\n", " (0.1, 51.0, 2, 300.0),\n", " (0.275, 49.0, 1, None),\n", " (0.25, 49.0, 1, None),\n", " (0.05, 49.0, 1, None),\n", " (0.025, 57.0, 0, None),\n", " (0.325, 48.0, 1, -300.0),\n", " (0.15, 57.0, 0, None),\n", " (1.125, 53.0, 0, 500.0),\n", " (0.075, 53.0, 2, 0.0),\n", " (0.225, 48.0, 1, None),\n", " (0.0, 51.0, 2, -200.0),\n", " (0.075, 53.0, 0, None),\n", " (0.2, 48.0, 1, None),\n", " (0.1, 49.0, 1, -200.0),\n", " (0.075, 53.0, 0, None),\n", " (0.25, 52.0, 2, 300.0),\n", " (1, 53.0, 0, None)]" ] }, "execution_count": 529, "metadata": {}, "output_type": "execute_result" } ], "source": [ "import librosa \n", "import numpy as np\n", "from scipy.signal import savgol_filter\n", "import matplotlib.pyplot as plt\n", "from random import randint\n", "\n", " \n", "t_min = 50\n", "t_max = 600\n", "f_time, f_frequency, f_confidence = [time[t_min:], frequency[t_min:], confidence[t_min:]]\n", "s_confidence = savgol_filter(f_confidence, 30, 4)\n", "\n", "def freqs_to_midi(freqs, confs):\n", " last_confident_value = 51\n", " for f, c in zip(freqs, confs):\n", " if c > 0.9:\n", " last_confident_value = librosa.hz_to_midi(f)\n", " yield last_confident_value\n", "\n", "def snap_midi(midi):\n", " r_midi = np.around(midi)\n", " s_midi = np.around(savgol_filter(midi, 30, 5))\n", " last_val = s_midi[0]\n", " for i, (r1, r2) in enumerate(pairwise(r_midi)):\n", " if r1 != r2:\n", " last_val = s_midi[i+5]\n", " yield last_val\n", " yield last_val\n", "\n", "def filter_midi(midi):\n", "\n", " def integrate(midi):\n", " print(len(midi) / 40)\n", " for imx, m in enumerate(midi):\n", " if m != midi[imx - 1] or imx == 0:\n", " if imx == 0:\n", " ins = 2\n", " val = m[2]\n", " last_val = val\n", " else:\n", " ins = [pmx for pmx, p in enumerate(m) if p != midi[imx - 1][pmx]][0]\n", " val = m[ins]\n", "\n", " note_dur = 0\n", " #print(ins)\n", " #print(val)\n", " while imx + note_dur < len(midi) and midi[imx + note_dur][ins] == val:\n", " note_dur += 1\n", "\n", " if note_dur >= 10:\n", " if False:\n", " yield (imx / 40.0, val, ins, None)\n", " else:\n", " dev = val - last_val\n", " \n", " print (imx / 40.0, val, ins, val)\n", " print(note_dur / 40.0)\n", " yield (imx / 40.0, val, ins, val)\n", " \n", " tail = randint(20, 40)\n", " if note_dur / 2 > tail and ins != 2:\n", " #if False:\n", " t_sum = 0\n", " while t_sum < tail:\n", " print(\"here\")\n", " print ((imx + note_dur - tail + t_sum) / 40, val, ins, None)\n", " print(note_dur / 40.0)\n", " if True:\n", " yield ((imx + note_dur - tail + t_sum) / 40, val, ins, None)\n", " t_sum += randint(10, 15)\n", " \n", " last_val = val\n", "\n", " def redifferentiate(sorted_midi):\n", " for imx, sm in enumerate(sorted_midi):\n", " print(\"---\")\n", " print(sm)\n", " if imx < len(sorted_midi) - 1:\n", " dur = round(sorted_midi[imx + 1][0] - sm[0], 3)\n", " else:\n", " dur = 1\n", " [val, ins] = sm[1:-1]\n", " dev = 0\n", " if imx == 0:\n", " dev = 0.0\n", " last_val = val\n", " elif sm[-1] == None:\n", " dev = None\n", " else:\n", " dev = (sm[-1] - last_val) * 100.0\n", " last_val = val\n", " print((dur, val, ins, dev))\n", " yield (dur, val, ins, dev)\n", " \n", " sorted_midi = sorted(integrate(midi))\n", " #for sm in sorted_midi:\n", " # print(sm)\n", " redifferentiated_midi = redifferentiate(sorted_midi)\n", " return redifferentiated_midi\n", " \n", "midi = list(freqs_to_midi(f_frequency, f_confidence))\n", "midi = tuple(snap_midi(midi))\n", "\n", "fs = 2351 # sample rate \n", "f = 20 # the frequency of the signal\n", "\n", "#midi = zip(\n", "# tuple(midi[0] - 24 for i in range(4 * 40)) + tuple(chain(*tuple([m - 24 for r in range(int(1 - np.sin(2*np.pi*10 * (imx/fs))) * 3 + 1)] for imx, m in enumerate(midi)))),\n", "# tuple(midi[0] - 12 for i in range(2 * 40)) + tuple(chain(*tuple([m - 12 for r in range(int(1 - np.sin(2*np.pi*10 * (imx/fs))) * 3 + 1)] for imx, m in enumerate(midi)))),\n", "# tuple(chain(*tuple([m for r in range(int(1 - np.cos(0.5 * np.pi + 2*np.pi*10 * (imx/fs))) * 3 + 1)] for imx, m in enumerate(midi))))\n", "#)\n", "\n", "midi = zip(\n", " tuple(midi[0] - 0 for i in range(6 * 40)) + tuple(chain(*tuple([m - 0 for r in range(int(1 - np.sin(0.5 * np.pi + 2*np.pi*14 * (imx/fs))) * 3 + 1)] for imx, m in enumerate(midi)))),\n", " tuple(midi[0] - 0 for i in range(3 * 40)) + tuple(chain(*tuple([m - 0 for r in range(int(1 - np.sin(0.5 * np.pi + 2*np.pi*12 * (imx/fs))) * 2 + 1)] for imx, m in enumerate(midi)))),\n", " tuple(chain(*tuple([m for r in range(int(1 - np.cos(0.5 * np.pi + 2*np.pi*10 * (imx/fs))) * 0 + 1)] for imx, m in enumerate(midi))))\n", ")\n", "\n", "target_melody_data = list(filter_midi(list(midi)))\n", "target_melody_data\n" ] }, { "cell_type": "code", "execution_count": 530, "id": "c1e314cf-c928-4df5-b0da-8a7b13b2225f", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-701.9550008653874, -203.91000173077484, 0]\n", "2\n", "200.0\n", "here\n", "[-701.9550008653874, -203.91000173077484, 0]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-901.9550008653874, -403.91000173077487, -17.596287865940013]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "[0.0, -498.04499913461257, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "[-901.9550008653874, -403.91000173077487, -17.596287865940013]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-701.9550008653874, -203.91000173077487, 0.0]\n", "[0.0, -498.04499913461257, 386.3137138648348]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "2\n", "-200.0\n", "here\n", "[-701.9550008653874, -203.91000173077487, 0.0]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[-501.95500086538743, -3.910001730774866, -3.9100017307748374]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "[0.0, -498.04499913461257, 0.0]\n", "2\n", "-100.0\n", "here\n", "[-501.95500086538743, -3.910001730774866, -3.9100017307748374]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[-401.95500086538743, 96.08999826922513, -15.641287000552609]\n", "[0.0, -498.04499913461257, 0.0]\n", "[0.0, -498.04499913461257, -111.73128526977777]\n", "1\n", "500.0\n", "here\n", "[-401.95500086538743, 96.08999826922513, -15.641287000552609]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "[-901.9550008653874, -172.73590819989994, -515.6412870005527]\n", "[0.0, -498.04499913461257, -111.73128526977777]\n", "[0.0, -266.87090560373764, -111.73128526977777]\n", "2\n", "-400.0\n", "here\n", "[-901.9550008653874, -172.73590819989994, -515.6412870005527]\n", "((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "[-501.95500086538743, 227.26409180010006, -3.910001730774866]\n", "[0.0, -266.87090560373764, -111.73128526977777]\n", "[0.0, -266.87090560373764, 0.0]\n", "1\n", "200.0\n", "here\n", "[-501.95500086538743, 227.26409180010006, -3.910001730774866]\n", "((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0))\n", "[-701.9550008653874, -92.17871646099707, -203.91000173077487]\n", "[0.0, -266.87090560373764, 0.0]\n", "[0.0, -386.31371386483477, 0.0]\n", "2\n", "0.0\n", "here\n", "[-701.9550008653874, -92.17871646099707, -203.91000173077487]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "[-701.9550008653874, -92.17871646099707, -2.842170943040401e-14]\n", "[0.0, -386.31371386483477, 0.0]\n", "[0.0, -386.31371386483477, 203.91000173077484]\n", "2\n", "0.0\n", "here\n", "[-701.9550008653874, -92.17871646099707, -2.842170943040401e-14]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1))\n", "[-701.9550008653874, -92.17871646099707, 27.26409180010012]\n", "[0.0, -386.31371386483477, 203.91000173077484]\n", "[0.0, -386.31371386483477, 231.17409353087498]\n", "2\n", "-300.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-701.9550008653874, -92.17871646099707, 27.26409180010012]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-401.95500086538743, 207.82128353900293, -15.641287000552666]\n", "[0.0, -386.31371386483477, 231.17409353087498]\n", "[0.0, -386.31371386483477, -111.73128526977777]\n", "0\n", "500.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-401.95500086538743, 207.82128353900293, -15.641287000552666]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-698.0449991346126, -292.17871646099707, -515.6412870005527]\n", "[0.0, -386.31371386483477, -111.73128526977777]\n", "[203.91000173077484, -386.31371386483477, -111.73128526977777]\n", "2\n", "-200.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)))\n", "[-698.0449991346126, -292.17871646099707, -515.6412870005527]\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "[-498.04499913461257, -92.17871646099707, -5.684341886080802e-14]\n", "[203.91000173077484, -386.31371386483477, -111.73128526977777]\n", "[203.91000173077484, -386.31371386483477, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-498.04499913461257, -92.17871646099707, -5.684341886080802e-14]\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-498.04499913461257, 62.960903872962604, -5.684341886080802e-14]\n", "[203.91000173077484, -386.31371386483477, 203.91000173077484]\n", "[203.91000173077484, -231.1740935308751, 203.91000173077484]\n", "0\n", "0.0\n", "here\n", "(((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-498.04499913461257, 62.960903872962604, -5.684341886080802e-14]\n", "((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-386.31371386483454, 62.960903872962604, -5.684341886080802e-14]\n", "[203.91000173077484, -231.1740935308751, 203.91000173077484]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)))\n", "[-386.31371386483454, 62.960903872962604, -5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "[-586.3137138648345, -137.0390961270374, -17.59628786594007]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "[315.6412870005529, -231.1740935308751, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)))\n", "[-586.3137138648345, -137.0390961270374, -17.59628786594007]\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0))\n", "[-586.3137138648345, 94.1349974038377, -17.59628786594007]\n", "[315.6412870005529, -231.1740935308751, 386.3137138648348]\n", "[315.6412870005529, 0.0, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)))\n", "[-586.3137138648345, 94.1349974038377, -17.59628786594007]\n", "((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "[-586.3137138648345, 298.04499913461257, -17.59628786594007]\n", "[315.6412870005529, 0.0, 386.3137138648348]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-586.3137138648345, 298.04499913461257, -17.59628786594007]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-386.31371386483454, 498.04499913461257, -5.684341886080802e-14]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "1\n", "-200.0\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[-386.31371386483454, 498.04499913461257, -5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[-186.31371386483454, 809.7762844043906, 199.99999999999994]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "[315.6412870005529, 315.6412870005529, 203.91000173077484]\n", "1\n", "-100.0\n", "here\n", "(((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-186.31371386483454, 809.7762844043906, 199.99999999999994]\n", "((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-86.31371386483454, 96.08999826922513, 299.99999999999994]\n", "[315.6412870005529, 315.6412870005529, 203.91000173077484]\n", "[315.6412870005529, -498.04499913461257, 203.91000173077484]\n", "2\n", "400.0\n", "here\n", "(((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)))\n", "[-86.31371386483454, 96.08999826922513, 299.99999999999994]\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0))\n", "[-486.31371386483454, -303.91000173077487, 11.731285269778027]\n", "[315.6412870005529, -498.04499913461257, 203.91000173077484]\n", "[315.6412870005529, -498.04499913461257, 315.6412870005529]\n", "2\n", "-400.0\n", "here\n", "(((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)))\n", "[-486.31371386483454, -303.91000173077487, 11.731285269778027]\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0))\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[-86.31371386483454, 96.08999826922513, -15.641287000552666]\n", "[315.6412870005529, -498.04499913461257, 315.6412870005529]\n", "[315.6412870005529, -498.04499913461257, -111.73128526977777]\n", "1\n", "100.0\n", "here\n", "(((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-86.31371386483454, 96.08999826922513, -15.641287000552666]\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-186.31371386483454, 107.82128353900293, -115.64128700055267]\n", "[315.6412870005529, -498.04499913461257, -111.73128526977777]\n", "[315.6412870005529, -386.31371386483477, -111.73128526977777]\n", "2\n", "400.0\n", "here\n", "(((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)))\n", "[-186.31371386483454, 107.82128353900293, -115.64128700055267]\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "[-586.3137138648345, -292.17871646099707, -17.5962878659401]\n", "[315.6412870005529, -386.31371386483477, -111.73128526977777]\n", "[315.6412870005529, -386.31371386483477, 386.3137138648348]\n", "1\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)))\n", "[-586.3137138648345, -292.17871646099707, -17.5962878659401]\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "[-386.31371386483454, 27.26409180010006, 182.4037121340599]\n", "[315.6412870005529, -386.31371386483477, 386.3137138648348]\n", "[315.6412870005529, -266.87090560373764, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)))\n", "[-386.31371386483454, 27.26409180010006, 182.4037121340599]\n", "((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "[-186.31371386483454, 227.26409180010006, -3.9100017307749226]\n", "[315.6412870005529, -266.87090560373764, 386.3137138648348]\n", "[315.6412870005529, -266.87090560373764, 0.0]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)))\n", "[-186.31371386483454, 227.26409180010006, -3.9100017307749226]\n", "((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0))\n", "[-31.17409353087504, 227.26409180010006, -3.9100017307749226]\n", "[315.6412870005529, -266.87090560373764, 0.0]\n", "[470.7809073345124, -266.87090560373764, 0.0]\n", "1\n", "200.0\n", "here\n", "(((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-31.17409353087504, 227.26409180010006, -3.9100017307749226]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0))\n", "((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[-231.17409353087504, 182.4037121340599, -203.91000173077492]\n", "[470.7809073345124, -266.87090560373764, 0.0]\n", "[470.7809073345124, -111.73128526977777, 0.0]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-231.17409353087504, 182.4037121340599, -203.91000173077492]\n", "((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[-315.6412870005526, 182.4037121340599, -203.91000173077492]\n", "[470.7809073345124, -111.73128526977777, 0.0]\n", "[386.3137138648348, -111.73128526977777, 0.0]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-315.6412870005526, 182.4037121340599, -203.91000173077492]\n", "((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[-203.91000173077498, 182.4037121340599, -203.91000173077492]\n", "[386.3137138648348, -111.73128526977777, 0.0]\n", "[498.04499913461245, -111.73128526977777, 0.0]\n", "0\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-203.91000173077498, 182.4037121340599, -203.91000173077492]\n", "((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[200.0, 382.4037121340599, -3.9100017307749226]\n", "[498.04499913461245, -111.73128526977777, 0.0]\n", "[701.9550008653874, -111.73128526977777, 0.0]\n", "2\n", "300.0\n", "here\n", "(((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)))\n", "[200.0, 382.4037121340599, -3.9100017307749226]\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0))\n", "[-100.0, 82.4037121340599, 11.73128526977797]\n", "[701.9550008653874, -111.73128526977777, 0.0]\n", "[701.9550008653874, -111.73128526977777, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)))\n", "[-100.0, 82.4037121340599, 11.73128526977797]\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "[-100.0, 194.13499740383767, 11.73128526977797]\n", "[701.9550008653874, -111.73128526977777, 315.6412870005529]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "2\n", "-100.0\n", "here\n", "(((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-100.0, 194.13499740383767, 11.73128526977797]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[0.0, 294.1349974038377, -8.526512829121202e-14]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[0.0, 294.1349974038377, -8.526512829121202e-14]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[0.0, 498.04499913461257, -8.526512829121202e-14]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "0\n", "-300.0\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[0.0, 498.04499913461257, -8.526512829121202e-14]\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[411.7312852697779, 798.0449991346126, 299.9999999999999]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "[813.6862861351653, 203.91000173077484, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[411.7312852697779, 798.0449991346126, 299.9999999999999]\n", "((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[411.7312852697779, 909.7762844043906, 299.9999999999999]\n", "[813.6862861351653, 203.91000173077484, 203.91000173077484]\n", "[813.6862861351653, 315.6412870005529, 203.91000173077484]\n", "1\n", "0.0\n", "here\n", "(((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)))\n", "[411.7312852697779, 909.7762844043906, 299.9999999999999]\n", "((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "[411.7312852697779, 980.4487112686725, 299.9999999999999]\n", "[813.6862861351653, 315.6412870005529, 203.91000173077484]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "2\n", "-200.0\n", "here\n", "(((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)))\n", "[411.7312852697779, 980.4487112686725, 299.9999999999999]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "[611.7312852697779, 1180.4487112686725, 29.219092665487437]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "[813.6862861351653, 386.3137138648348, -266.87090560373764]\n", "0\n", "300.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)))\n", "[611.7312852697779, 1180.4487112686725, 29.219092665487437]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "[-3.9100017307749795, 880.4487112686725, -270.78090733451256]\n", "[813.6862861351653, 386.3137138648348, -266.87090560373764]\n", "[498.04499913461245, 386.3137138648348, -266.87090560373764]\n", "0\n", "200.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)))\n", "[-3.9100017307749795, 880.4487112686725, -270.78090733451256]\n", "((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "[0.0, 680.4487112686725, -470.78090733451256]\n", "[498.04499913461245, 386.3137138648348, -266.87090560373764]\n", "[701.9550008653874, 386.3137138648348, -266.87090560373764]\n", "2\n", "100.0\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)))\n", "[0.0, 680.4487112686725, -470.78090733451256]\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0))\n", "[-100.0, 580.4487112686725, 11.731285269777914]\n", "[701.9550008653874, 386.3137138648348, -266.87090560373764]\n", "[701.9550008653874, 386.3137138648348, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)))\n", "[-100.0, 580.4487112686725, 11.731285269777914]\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "[-100.0, 664.91590473835, 11.731285269777914]\n", "[701.9550008653874, 386.3137138648348, 315.6412870005529]\n", "[701.9550008653874, 470.7809073345124, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)))\n", "[-100.0, 664.91590473835, 11.731285269777914]\n", "((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "[-100.0, 896.0899982692251, 11.731285269777914]\n", "[701.9550008653874, 470.7809073345124, 315.6412870005529]\n", "[701.9550008653874, 701.9550008653874, 315.6412870005529]\n", "1\n", "-100.0\n", "here\n", "(((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)))\n", "[-100.0, 896.0899982692251, 11.731285269777914]\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0))\n", "[0.0, 27.264091800100005, 111.73128526977791]\n", "[701.9550008653874, 701.9550008653874, 315.6412870005529]\n", "[701.9550008653874, -266.87090560373764, 315.6412870005529]\n", "0\n", "0.0\n", "here\n", "(((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)))\n", "[0.0, 27.264091800100005, 111.73128526977791]\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0))\n", "[-231.17409353087504, 27.264091800100005, 111.73128526977791]\n", "[701.9550008653874, -266.87090560373764, 315.6412870005529]\n", "[470.7809073345124, -266.87090560373764, 315.6412870005529]\n", "2\n", "600.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)))\n", "[-231.17409353087504, 27.264091800100005, 111.73128526977791]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0))\n", "[-831.1740935308751, -572.7359081999, 9.776284404390367]\n", "[470.7809073345124, -266.87090560373764, 315.6412870005529]\n", "[470.7809073345124, -266.87090560373764, 813.6862861351653]\n", "2\n", "-400.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)))\n", "[-831.1740935308751, -572.7359081999, 9.776284404390367]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "[-431.1740935308751, -172.7359081999, -17.596287865940155]\n", "[470.7809073345124, -266.87090560373764, 813.6862861351653]\n", "[470.7809073345124, -266.87090560373764, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-431.1740935308751, -172.7359081999, -17.596287865940155]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-431.1740935308751, -403.9100017307749, -17.596287865940155]\n", "[470.7809073345124, -266.87090560373764, 386.3137138648348]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)))\n", "[-431.1740935308751, -403.9100017307749, -17.596287865940155]\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "[-431.1740935308751, -292.1787164609971, -17.596287865940155]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "[470.7809073345124, -386.31371386483477, 386.3137138648348]\n", "1\n", "0.0\n", "here\n", "(((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)))\n", "[-431.1740935308751, -292.1787164609971, -17.596287865940155]\n", "((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "[-431.1740935308751, -137.03909612703745, -17.596287865940155]\n", "[470.7809073345124, -386.31371386483477, 386.3137138648348]\n", "[470.7809073345124, -231.1740935308751, 386.3137138648348]\n", "2\n", "400.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)))\n", "[-431.1740935308751, -137.03909612703745, -17.596287865940155]\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0))\n", "[-831.1740935308751, -537.0390961270375, 9.776284404390367]\n", "[470.7809073345124, -231.1740935308751, 386.3137138648348]\n", "[470.7809073345124, -231.1740935308751, 813.6862861351653]\n", "1\n", "-600.0\n", "here\n", "(((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)))\n", "[-831.1740935308751, -537.0390961270375, 9.776284404390367]\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0))\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0))\n", "[-231.1740935308751, 294.1349974038376, 609.7762844043904]\n", "[470.7809073345124, -231.1740935308751, 813.6862861351653]\n", "[470.7809073345124, 0.0, 813.6862861351653]\n", "2\n", "0.0\n", "here\n", "(((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-231.1740935308751, 294.1349974038376, 609.7762844043904]\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0))\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-231.1740935308751, 294.1349974038376, -1.1368683772161603e-13]\n", "[470.7809073345124, 0.0, 813.6862861351653]\n", "[470.7809073345124, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-231.1740935308751, 294.1349974038376, -1.1368683772161603e-13]\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-231.1740935308751, 498.04499913461245, -1.1368683772161603e-13]\n", "[470.7809073345124, 0.0, 203.91000173077484]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-231.1740935308751, 498.04499913461245, -1.1368683772161603e-13]\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-5.684341886080802e-14, 498.04499913461245, -1.1368683772161603e-13]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[-5.684341886080802e-14, 498.04499913461245, -1.1368683772161603e-13]\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[-5.684341886080802e-14, 609.7762844043905, -1.1368683772161603e-13]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "[701.9550008653874, 315.6412870005529, 203.91000173077484]\n", "1\n", "100.0\n", "here\n", "(((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-5.684341886080802e-14, 609.7762844043905, -1.1368683772161603e-13]\n", "((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-100.00000000000006, -37.03909612703751, -100.00000000000011]\n", "[701.9550008653874, 315.6412870005529, 203.91000173077484]\n", "[701.9550008653874, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-100.00000000000006, -37.03909612703751, -100.00000000000011]\n", "((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-303.91000173077504, -37.03909612703751, -100.00000000000011]\n", "[701.9550008653874, -231.1740935308751, 203.91000173077484]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "1\n", "-400.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-303.91000173077504, -37.03909612703751, -100.00000000000011]\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[96.08999826922496, 96.08999826922502, 299.9999999999999]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "[498.04499913461245, -498.04499913461257, 203.91000173077484]\n", "0\n", "0.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[96.08999826922496, 96.08999826922502, 299.9999999999999]\n", "((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-15.641287000552666, 96.08999826922502, 299.9999999999999]\n", "[498.04499913461245, -498.04499913461257, 203.91000173077484]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "2\n", "500.0\n", "here\n", "(((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-15.641287000552666, 96.08999826922502, 299.9999999999999]\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-515.6412870005527, -403.910001730775, -17.5962878659401]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "[386.3137138648348, -498.04499913461257, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-515.6412870005527, -403.910001730775, -17.5962878659401]\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-315.64128700055267, -203.91000173077498, -8.526512829121202e-14]\n", "[386.3137138648348, -498.04499913461257, 386.3137138648348]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-315.64128700055267, -203.91000173077498, -8.526512829121202e-14]\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-498.0449991346127, -203.91000173077498, -8.526512829121202e-14]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "[203.91000173077484, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-498.0449991346127, -203.91000173077498, -8.526512829121202e-14]\n", "((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-701.9550008653875, -203.91000173077498, -8.526512829121202e-14]\n", "[203.91000173077484, -498.04499913461257, 203.91000173077484]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-701.9550008653875, -203.91000173077498, -8.526512829121202e-14]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-813.6862861351653, -203.91000173077498, -8.526512829121202e-14]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "[-111.73128526977777, -498.04499913461257, 203.91000173077484]\n", "2\n", "-200.0\n", "here\n", "(((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)))\n", "[-813.6862861351653, -203.91000173077498, -8.526512829121202e-14]\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[-613.6862861351653, -3.9100017307749795, -3.9100017307749226]\n", "[-111.73128526977777, -498.04499913461257, 203.91000173077484]\n", "[-111.73128526977777, -498.04499913461257, 0.0]\n", "0\n", "200.0\n", "here\n", "(((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)))\n", "[-613.6862861351653, -3.9100017307749795, -3.9100017307749226]\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[-933.1290943962626, -203.91000173077498, -203.91000173077492]\n", "[-111.73128526977777, -498.04499913461257, 0.0]\n", "[-231.1740935308751, -498.04499913461257, 0.0]\n", "2\n", "-300.0\n", "here\n", "(((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)))\n", "[-933.1290943962626, -203.91000173077498, -203.91000173077492]\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[-633.1290943962626, 96.08999826922502, -15.641287000552666]\n", "[-231.1740935308751, -498.04499913461257, 0.0]\n", "[-231.1740935308751, -498.04499913461257, -111.73128526977777]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)))\n", "[-633.1290943962626, 96.08999826922502, -15.641287000552666]\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "[-633.1290943962626, 327.26409180009995, -15.641287000552666]\n", "[-231.1740935308751, -498.04499913461257, -111.73128526977777]\n", "[-231.1740935308751, -266.87090560373764, -111.73128526977777]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-633.1290943962626, 327.26409180009995, -15.641287000552666]\n", "((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-633.1290943962626, 207.82128353900282, -15.641287000552666]\n", "[-231.1740935308751, -266.87090560373764, -111.73128526977777]\n", "[-231.1740935308751, -386.31371386483477, -111.73128526977777]\n", "0\n", "500.0\n", "here\n", "(((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-633.1290943962626, 207.82128353900282, -15.641287000552666]\n", "((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-1288.2687147302222, -292.1787164609972, -515.6412870005527]\n", "[-231.1740935308751, -386.31371386483477, -111.73128526977777]\n", "[-386.31371386483477, -386.31371386483477, -111.73128526977777]\n", "1\n", "None\n", "here\n", "(((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)))\n", "[-1288.2687147302222, -292.1787164609972, -515.6412870005527]\n", "((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0))\n", "[-1288.2687147302222, -137.0390961270375, -515.6412870005527]\n", "[-386.31371386483477, -386.31371386483477, -111.73128526977777]\n", "[-386.31371386483477, -231.1740935308751, -111.73128526977777]\n", "1\n", "0.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)))\n", "[-1288.2687147302222, -137.0390961270375, -515.6412870005527]\n", "((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0))\n", "[-1288.2687147302222, 94.13499740383759, -515.6412870005527]\n", "[-386.31371386483477, -231.1740935308751, -111.73128526977777]\n", "[-386.31371386483477, 0.0, -111.73128526977777]\n", "2\n", "-400.0\n", "here\n", "(((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[-1288.2687147302222, 94.13499740383759, -515.6412870005527]\n", "((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[-888.2687147302222, 494.1349974038376, -3.910001730774866]\n", "[-386.31371386483477, 0.0, -111.73128526977777]\n", "[-386.31371386483477, 0.0, 0.0]\n", "0\n", "200.0\n", "here\n", "(((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[-888.2687147302222, 494.1349974038376, -3.910001730774866]\n", "((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[-1200.0, 294.1349974038376, -203.91000173077487]\n", "[-386.31371386483477, 0.0, 0.0]\n", "[-498.04499913461257, 0.0, 0.0]\n", "2\n", "0.0\n", "here\n", "(((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-1200.0, 294.1349974038376, -203.91000173077487]\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-1200.0, 294.1349974038376, -2.842170943040401e-14]\n", "[-498.04499913461257, 0.0, 0.0]\n", "[-498.04499913461257, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-1200.0, 294.1349974038376, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "[-1200.0, 182.40371213405982, -2.842170943040401e-14]\n", "[-498.04499913461257, 0.0, 203.91000173077484]\n", "[-498.04499913461257, -111.73128526977777, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-1200.0, 182.40371213405982, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0))\n", "[-1200.0, 1382.4037121340598, -2.842170943040401e-14]\n", "[-498.04499913461257, -111.73128526977777, 203.91000173077484]\n", "[-498.04499913461257, 1088.2687147302222, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-1200.0, 1382.4037121340598, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "[-1200.0, 1262.9609038729625, -2.842170943040401e-14]\n", "[-498.04499913461257, 1088.2687147302222, 203.91000173077484]\n", "[-498.04499913461257, 968.8259064691249, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)))\n", "[-1200.0, 1262.9609038729625, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0))\n", "[-1400.0, 1062.9609038729625, -17.59628786594004]\n", "[-498.04499913461257, 968.8259064691249, 203.91000173077484]\n", "[-498.04499913461257, 968.8259064691249, 386.3137138648348]\n", "1\n", "-200.0\n", "here\n", "(((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)))\n", "[-1400.0, 1062.9609038729625, -17.59628786594004]\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0))\n", "((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0))\n", "[-1200.0, 1107.821283539003, 182.40371213405996]\n", "[-498.04499913461257, 968.8259064691249, 386.3137138648348]\n", "[-498.04499913461257, 813.6862861351653, 386.3137138648348]\n", "1\n", "-200.0\n", "here\n", "(((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-1200.0, 1107.821283539003, 182.40371213405996]\n", "((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "[-1000.0, 1196.089998269225, 382.40371213405996]\n", "[-498.04499913461257, 813.6862861351653, 386.3137138648348]\n", "[-498.04499913461257, 701.9550008653874, 386.3137138648348]\n", "2\n", "200.0\n", "here\n", "(((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-1000.0, 1196.089998269225, 382.40371213405996]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[-1200.0, 996.0899982692249, -2.842170943040401e-14]\n", "[-498.04499913461257, 701.9550008653874, 386.3137138648348]\n", "[-498.04499913461257, 701.9550008653874, 203.91000173077484]\n", "2\n", "500.0\n", "here\n", "(((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)))\n", "[-1200.0, 996.0899982692249, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "[-1700.0, 496.0899982692249, -1.955000865387433]\n", "[-498.04499913461257, 701.9550008653874, 203.91000173077484]\n", "[-498.04499913461257, 701.9550008653874, 701.9550008653874]\n", "2\n", "100.0\n", "here\n", "(((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)))\n", "[-1700.0, 496.0899982692249, -1.955000865387433]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "[-1800.0, 396.0899982692249, 9.77628440439048]\n", "[-498.04499913461257, 701.9550008653874, 701.9550008653874]\n", "[-498.04499913461257, 701.9550008653874, 813.6862861351653]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)))\n", "[-1800.0, 396.0899982692249, 9.77628440439048]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0))\n", "[-1800.0, 164.91590473834987, 9.77628440439048]\n", "[-498.04499913461257, 701.9550008653874, 813.6862861351653]\n", "[-498.04499913461257, 470.7809073345124, 813.6862861351653]\n", "2\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)))\n", "[-1800.0, 164.91590473834987, 9.77628440439048]\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0))\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "[-1700.0, 264.91590473834987, -1.955000865387433]\n", "[-498.04499913461257, 470.7809073345124, 813.6862861351653]\n", "[-498.04499913461257, 470.7809073345124, 701.9550008653874]\n", "0\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)))\n", "[-1700.0, 264.91590473834987, -1.955000865387433]\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "[-1468.8259064691251, 264.91590473834987, -1.955000865387433]\n", "[-498.04499913461257, 470.7809073345124, 701.9550008653874]\n", "[-266.87090560373764, 470.7809073345124, 701.9550008653874]\n", "2\n", "-300.0\n", "here\n", "(((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)))\n", "[-1468.8259064691251, 264.91590473834987, -1.955000865387433]\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0))\n", "[-1168.8259064691251, 564.9159047383498, -17.59628786594004]\n", "[-266.87090560373764, 470.7809073345124, 701.9550008653874]\n", "[-266.87090560373764, 470.7809073345124, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)))\n", "[-1168.8259064691251, 564.9159047383498, -17.59628786594004]\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0))\n", "((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "[-1168.8259064691251, 409.7762844043903, -17.59628786594004]\n", "[-266.87090560373764, 470.7809073345124, 386.3137138648348]\n", "[-266.87090560373764, 315.6412870005529, 386.3137138648348]\n", "0\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)))\n", "[-1168.8259064691251, 409.7762844043903, -17.59628786594004]\n", "((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "[-1013.6862861351652, 409.7762844043903, -17.59628786594004]\n", "[-266.87090560373764, 315.6412870005529, 386.3137138648348]\n", "[-111.73128526977777, 315.6412870005529, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)))\n", "[-1013.6862861351652, 409.7762844043903, -17.59628786594004]\n", "((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "[-1013.6862861351652, 480.44871126867224, -17.59628786594004]\n", "[-111.73128526977777, 315.6412870005529, 386.3137138648348]\n", "[-111.73128526977777, 386.3137138648348, 386.3137138648348]\n", "0\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)))\n", "[-1013.6862861351652, 480.44871126867224, -17.59628786594004]\n", "((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "[11.731285269777914, 580.4487112686722, 82.40371213405996]\n", "[-111.73128526977777, 386.3137138648348, 386.3137138648348]\n", "[813.6862861351653, 386.3137138648348, 386.3137138648348]\n", "2\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)))\n", "[11.731285269777914, 580.4487112686722, 82.40371213405996]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "[111.73128526977791, 680.4487112686722, -2.842170943040401e-14]\n", "[813.6862861351653, 386.3137138648348, 386.3137138648348]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "1\n", "100.0\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[111.73128526977791, 680.4487112686722, -2.842170943040401e-14]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[11.731285269777914, -37.03909612703774, -100.00000000000003]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "[813.6862861351653, -231.1740935308751, 203.91000173077484]\n", "1\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[11.731285269777914, -37.03909612703774, -100.00000000000003]\n", "((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[111.73128526977791, 27.26409180009972, -2.842170943040401e-14]\n", "[813.6862861351653, -231.1740935308751, 203.91000173077484]\n", "[813.6862861351653, -266.87090560373764, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[111.73128526977791, 27.26409180009972, -2.842170943040401e-14]\n", "((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[0.0, 27.26409180009972, -2.842170943040401e-14]\n", "[813.6862861351653, -266.87090560373764, 203.91000173077484]\n", "[701.9550008653874, -266.87090560373764, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[0.0, 27.26409180009972, -2.842170943040401e-14]\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[-203.91000173077498, 27.26409180009972, -2.842170943040401e-14]\n", "[701.9550008653874, -266.87090560373764, 203.91000173077484]\n", "[498.04499913461245, -266.87090560373764, 203.91000173077484]\n", "1\n", "0.0\n", "here\n", "(((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-203.91000173077498, 27.26409180009972, -2.842170943040401e-14]\n", "((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-203.91000173077498, 62.96090387296226, -2.842170943040401e-14]\n", "[498.04499913461245, -266.87090560373764, 203.91000173077484]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-203.91000173077498, 62.96090387296226, -2.842170943040401e-14]\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-386.31371386483454, 62.96090387296226, -2.842170943040401e-14]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "0\n", "-300.0\n", "here\n", "(((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-386.31371386483454, 62.96090387296226, -2.842170943040401e-14]\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[68.82590646912496, 362.96090387296226, 300.0]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "[470.7809073345124, -231.1740935308751, 203.91000173077484]\n", "1\n", "100.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[68.82590646912496, 362.96090387296226, 300.0]\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-31.17409353087504, -3.910001730775207, 200.0]\n", "[470.7809073345124, -231.1740935308751, 203.91000173077484]\n", "[470.7809073345124, -498.04499913461257, 203.91000173077484]\n", "2\n", "400.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-31.17409353087504, -3.910001730775207, 200.0]\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-431.17409353087504, -403.9100017307752, -17.596287865939985]\n", "[470.7809073345124, -498.04499913461257, 203.91000173077484]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "1\n", "-500.0\n", "here\n", "(((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)))\n", "[-431.17409353087504, -403.9100017307752, -17.596287865939985]\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0))\n", "[68.82590646912496, -135.0840952616503, 482.40371213406]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "[470.7809073345124, -729.2190926654877, 386.3137138648348]\n", "2\n", "300.0\n", "here\n", "(((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)))\n", "[68.82590646912496, -135.0840952616503, 482.40371213406]\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0))\n", "[-231.17409353087504, -435.0840952616503, 0.0]\n", "[470.7809073345124, -729.2190926654877, 386.3137138648348]\n", "[470.7809073345124, -729.2190926654877, 203.91000173077484]\n", "1\n", "-500.0\n", "here\n", "(((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[-231.17409353087504, -435.0840952616503, 0.0]\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[268.82590646912496, -19.551288731327872, 500.0]\n", "[470.7809073345124, -729.2190926654877, 203.91000173077484]\n", "[470.7809073345124, -813.6862861351652, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[268.82590646912496, -19.551288731327872, 500.0]\n", "((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[29.21909266548755, -19.551288731327872, 500.0]\n", "[470.7809073345124, -813.6862861351652, 203.91000173077484]\n", "[231.17409353087498, -813.6862861351652, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[29.21909266548755, -19.551288731327872, 500.0]\n", "((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[184.3587129994474, -19.551288731327872, 500.0]\n", "[231.17409353087498, -813.6862861351652, 203.91000173077484]\n", "[386.3137138648348, -813.6862861351652, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[184.3587129994474, -19.551288731327872, 500.0]\n", "((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[1.9550008653874045, -19.551288731327872, 500.0]\n", "[386.3137138648348, -813.6862861351652, 203.91000173077484]\n", "[203.91000173077484, -813.6862861351652, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)))\n", "[1.9550008653874045, -19.551288731327872, 500.0]\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "[-198.0449991346126, -219.55128873132787, -15.641287000552609]\n", "[203.91000173077484, -813.6862861351652, 203.91000173077484]\n", "[203.91000173077484, -813.6862861351652, -111.73128526977777]\n", "0\n", "500.0\n", "here\n", "(((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)))\n", "[-198.0449991346126, -219.55128873132787, -15.641287000552609]\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "[-901.9550008653874, -719.5512887313279, -515.6412870005527]\n", "[203.91000173077484, -813.6862861351652, -111.73128526977777]\n", "[0.0, -813.6862861351652, -111.73128526977777]\n", "2\n", "-400.0\n", "here\n", "(((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)))\n", "[-901.9550008653874, -719.5512887313279, -515.6412870005527]\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "[-501.95500086538743, -319.5512887313279, -3.910001730774866]\n", "[0.0, -813.6862861351652, -111.73128526977777]\n", "[0.0, -813.6862861351652, 0.0]\n", "0\n", "0.0\n", "here\n", "(((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)))\n", "[-501.95500086538743, -319.5512887313279, -3.910001730774866]\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "[-733.1290943962625, -319.5512887313279, -3.910001730774866]\n", "[0.0, -813.6862861351652, 0.0]\n", "[-231.1740935308751, -813.6862861351652, 0.0]\n", "2\n", "500.0\n", "here\n", "(((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)))\n", "[-733.1290943962625, -319.5512887313279, -3.910001730774866]\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0))\n", "[-1233.1290943962626, -819.5512887313279, -5.865002596162412]\n", "[-231.1740935308751, -813.6862861351652, 0.0]\n", "[-231.1740935308751, -813.6862861351652, 498.04499913461245]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)))\n", "[-1233.1290943962626, -819.5512887313279, -5.865002596162412]\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0))\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0))\n", "[-1233.1290943962626, -1001.9550008653878, -5.865002596162412]\n", "[-231.1740935308751, -813.6862861351652, 498.04499913461245]\n", "[-231.1740935308751, -996.0899982692251, 498.04499913461245]\n", "2\n", "-500.0\n", "here\n", "(((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)))\n", "[-1233.1290943962626, -1001.9550008653878, -5.865002596162412]\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0))\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0))\n", "[-733.1290943962626, -501.9550008653878, -3.910001730774866]\n", "[-231.1740935308751, -996.0899982692251, 498.04499913461245]\n", "[-231.1740935308751, -996.0899982692251, 0.0]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)))\n", "[-733.1290943962626, -501.9550008653878, -3.910001730774866]\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0))\n", "[-733.1290943962626, -390.22371559560975, -3.910001730774866]\n", "[-231.1740935308751, -996.0899982692251, 0.0]\n", "[-231.1740935308751, -884.3587129994471, 0.0]\n", "1\n", "300.0\n", "here\n", "(((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)))\n", "[-733.1290943962626, -390.22371559560975, -3.910001730774866]\n", "((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0))\n", "[-1033.1290943962626, -37.03909612703774, -303.91000173077487]\n", "[-231.1740935308751, -884.3587129994471, 0.0]\n", "[-231.1740935308751, -231.1740935308751, 0.0]\n", "2\n", "-100.0\n", "here\n", "(((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-1033.1290943962626, -37.03909612703774, -303.91000173077487]\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-933.1290943962626, 62.96090387296226, -2.842170943040401e-14]\n", "[-231.1740935308751, -231.1740935308751, 0.0]\n", "[-231.1740935308751, -231.1740935308751, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-933.1290943962626, 62.96090387296226, -2.842170943040401e-14]\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-933.1290943962626, 294.13499740383736, -2.842170943040401e-14]\n", "[-231.1740935308751, -231.1740935308751, 203.91000173077484]\n", "[-231.1740935308751, 0.0, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-933.1290943962626, 294.13499740383736, -2.842170943040401e-14]\n", "((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-813.6862861351653, 294.13499740383736, -2.842170943040401e-14]\n", "[-231.1740935308751, 0.0, 203.91000173077484]\n", "[-111.73128526977777, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-813.6862861351653, 294.13499740383736, -2.842170943040401e-14]\n", "((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "[-813.6862861351653, 182.4037121340596, -2.842170943040401e-14]\n", "[-111.73128526977777, 0.0, 203.91000173077484]\n", "[-111.73128526977777, -111.73128526977777, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-813.6862861351653, 182.4037121340596, -2.842170943040401e-14]\n", "((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "[-968.8259064691252, 182.4037121340596, -2.842170943040401e-14]\n", "[-111.73128526977777, -111.73128526977777, 203.91000173077484]\n", "[-266.87090560373764, -111.73128526977777, 203.91000173077484]\n", "2\n", "-300.0\n", "here\n", "(((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)))\n", "[-968.8259064691252, 182.4037121340596, -2.842170943040401e-14]\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "[-668.8259064691252, 482.40371213405956, -15.641287000552666]\n", "[-266.87090560373764, -111.73128526977777, 203.91000173077484]\n", "[-266.87090560373764, -111.73128526977777, -111.73128526977777]\n", "0\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)))\n", "[-668.8259064691252, 482.40371213405956, -15.641287000552666]\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "[-900.0000000000002, 482.40371213405956, -15.641287000552666]\n", "[-266.87090560373764, -111.73128526977777, -111.73128526977777]\n", "[-498.04499913461257, -111.73128526977777, -111.73128526977777]\n", "1\n", "900.0\n", "here\n", "(((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)))\n", "[-900.0000000000002, 482.40371213405956, -15.641287000552666]\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "[-1800.0000000000002, 9.776284404390253, -915.6412870005527]\n", "[-498.04499913461257, -111.73128526977777, -111.73128526977777]\n", "[-498.04499913461257, 315.6412870005529, -111.73128526977777]\n", "0\n", "-400.0\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)))\n", "[-1800.0000000000002, 9.776284404390253, -915.6412870005527]\n", "((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "[-1288.2687147302224, 409.77628440439025, -515.6412870005527]\n", "[-498.04499913461257, 315.6412870005529, -111.73128526977777]\n", "[-386.31371386483477, 315.6412870005529, -111.73128526977777]\n", "1\n", "0.0\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)))\n", "[-1288.2687147302224, 409.77628440439025, -515.6412870005527]\n", "((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "[-1288.2687147302224, 325.30909093471234, -515.6412870005527]\n", "[-386.31371386483477, 315.6412870005529, -111.73128526977777]\n", "[-386.31371386483477, 231.17409353087498, -111.73128526977777]\n", "0\n", "-100.0\n", "here\n", "(((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)))\n", "[-1288.2687147302224, 325.30909093471234, -515.6412870005527]\n", "((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "[11.731285269777572, 425.30909093471234, -415.64128700055267]\n", "[-386.31371386483477, 231.17409353087498, -111.73128526977777]\n", "[813.6862861351653, 231.17409353087498, -111.73128526977777]\n", "2\n", "-100.0\n", "here\n", "(((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)))\n", "[11.731285269777572, 425.30909093471234, -415.64128700055267]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0))\n", "[111.73128526977757, 525.3090909347123, -5.684341886080802e-14]\n", "[813.6862861351653, 231.17409353087498, -111.73128526977777]\n", "[813.6862861351653, 231.17409353087498, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)))\n", "[111.73128526977757, 525.3090909347123, -5.684341886080802e-14]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "[-88.26871473022243, 325.30909093471234, -17.59628786594007]\n", "[813.6862861351653, 231.17409353087498, 203.91000173077484]\n", "[813.6862861351653, 231.17409353087498, 386.3137138648348]\n", "2\n", "-100.0\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)))\n", "[-88.26871473022243, 325.30909093471234, -17.59628786594007]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "[11.731285269777572, 425.30909093471234, 11.731285269777999]\n", "[813.6862861351653, 231.17409353087498, 386.3137138648348]\n", "[813.6862861351653, 231.17409353087498, 315.6412870005529]\n", "0\n", "None\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)))\n", "[11.731285269777572, 425.30909093471234, 11.731285269777999]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "[-100.00000000000034, 425.30909093471234, 11.731285269777999]\n", "[813.6862861351653, 231.17409353087498, 315.6412870005529]\n", "[701.9550008653874, 231.17409353087498, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)))\n", "[-100.00000000000034, 425.30909093471234, 11.731285269777999]\n", "((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "[-100.00000000000034, 194.13499740383736, 11.731285269777999]\n", "[701.9550008653874, 231.17409353087498, 315.6412870005529]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "2\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-100.00000000000034, 194.13499740383736, 11.731285269777999]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, 294.13499740383736, -5.684341886080802e-14]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, 294.13499740383736, -5.684341886080802e-14]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, 294.13499740383736, -5.684341886080802e-14]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "[933.1290943962623, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[231.17409353087453, 294.13499740383736, -5.684341886080802e-14]\n", "((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[231.17409353087453, 62.96090387296226, -5.684341886080802e-14]\n", "[933.1290943962623, 0.0, 203.91000173077484]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[231.17409353087453, 62.96090387296226, -5.684341886080802e-14]\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[386.3137138648344, 62.96090387296226, -5.684341886080802e-14]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "0\n", "0.0\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[386.3137138648344, 62.96090387296226, -5.684341886080802e-14]\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[266.8709056037371, 62.96090387296226, -5.684341886080802e-14]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "[968.8259064691249, -231.1740935308751, 203.91000173077484]\n", "1\n", "600.0\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[266.8709056037371, 62.96090387296226, -5.684341886080802e-14]\n", "((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[-333.1290943962629, 9.776284404390253, -600.0]\n", "[968.8259064691249, -231.1740935308751, 203.91000173077484]\n", "[968.8259064691249, 315.6412870005529, 203.91000173077484]\n", "2\n", "-700.0\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)))\n", "[-333.1290943962629, 9.776284404390253, -600.0]\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "[366.8709056037371, 709.7762844043903, -103.91000173077487]\n", "[968.8259064691249, 315.6412870005529, 203.91000173077484]\n", "[968.8259064691249, 315.6412870005529, 0.0]\n", "1\n", "400.0\n", "here\n", "(((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)))\n", "[366.8709056037371, 709.7762844043903, -103.91000173077487]\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0))\n", "[-33.12909439626287, 464.9159047383498, -503.91000173077487]\n", "[968.8259064691249, 315.6412870005529, 0.0]\n", "[968.8259064691249, 470.7809073345124, 0.0]\n", "2\n", "-200.0\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)))\n", "[-33.12909439626287, 464.9159047383498, -503.91000173077487]\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0))\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "[166.87090560373713, 664.9159047383498, 11.731285269778027]\n", "[968.8259064691249, 470.7809073345124, 0.0]\n", "[968.8259064691249, 470.7809073345124, 315.6412870005529]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)))\n", "[166.87090560373713, 664.9159047383498, 11.731285269778027]\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "[11.731285269777572, 664.9159047383498, 11.731285269778027]\n", "[968.8259064691249, 470.7809073345124, 315.6412870005529]\n", "[813.6862861351653, 470.7809073345124, 315.6412870005529]\n", "1\n", "-100.0\n", "here\n", "(((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)))\n", "[11.731285269777572, 664.9159047383498, 11.731285269778027]\n", "((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "[111.73128526977757, 996.0899982692249, 111.73128526977803]\n", "[813.6862861351653, 470.7809073345124, 315.6412870005529]\n", "[813.6862861351653, 701.9550008653874, 315.6412870005529]\n", "2\n", "0.0\n", "here\n", "(((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[111.73128526977757, 996.0899982692249, 111.73128526977803]\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[111.73128526977757, 996.0899982692249, -2.842170943040401e-14]\n", "[813.6862861351653, 701.9550008653874, 315.6412870005529]\n", "[813.6862861351653, 701.9550008653874, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[111.73128526977757, 996.0899982692249, -2.842170943040401e-14]\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, 996.0899982692249, -2.842170943040401e-14]\n", "[813.6862861351653, 701.9550008653874, 203.91000173077484]\n", "[701.9550008653874, 701.9550008653874, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, 996.0899982692249, -2.842170943040401e-14]\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[-203.91000173077532, 996.0899982692249, -2.842170943040401e-14]\n", "[701.9550008653874, 701.9550008653874, 203.91000173077484]\n", "[498.04499913461245, 701.9550008653874, 203.91000173077484]\n", "0\n", "-500.0\n", "here\n", "(((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-203.91000173077532, 996.0899982692249, -2.842170943040401e-14]\n", "((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[184.35871299944705, 1496.089998269225, 500.0]\n", "[498.04499913461245, 701.9550008653874, 203.91000173077484]\n", "[386.3137138648348, 701.9550008653874, 203.91000173077484]\n", "2\n", "700.0\n", "here\n", "(((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)))\n", "[184.35871299944705, 1496.089998269225, 500.0]\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "[-515.6412870005529, 796.0899982692249, -17.596287865939985]\n", "[386.3137138648348, 701.9550008653874, 203.91000173077484]\n", "[386.3137138648348, 701.9550008653874, 386.3137138648348]\n", "2\n", "-400.0\n", "here\n", "(((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)))\n", "[-515.6412870005529, 796.0899982692249, -17.596287865939985]\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "[-115.6412870005529, 1196.089998269225, -3.910001730774809]\n", "[386.3137138648348, 701.9550008653874, 386.3137138648348]\n", "[386.3137138648348, 701.9550008653874, 0.0]\n", "0\n", "300.0\n", "here\n", "(((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)))\n", "[-115.6412870005529, 1196.089998269225, -3.910001730774809]\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "[-486.3137138648348, 896.0899982692249, -303.9100017307748]\n", "[386.3137138648348, 701.9550008653874, 0.0]\n", "[315.6412870005529, 701.9550008653874, 0.0]\n", "2\n", "400.0\n", "here\n", "(((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)))\n", "[-486.3137138648348, 896.0899982692249, -303.9100017307748]\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "[-886.3137138648349, 496.0899982692249, -1.955000865387376]\n", "[315.6412870005529, 701.9550008653874, 0.0]\n", "[315.6412870005529, 701.9550008653874, 701.9550008653874]\n", "1\n", "None\n", "here\n", "(((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)))\n", "[-886.3137138648349, 496.0899982692249, -1.955000865387376]\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0))\n", "[-886.3137138648349, 607.8212835390028, -1.955000865387376]\n", "[315.6412870005529, 701.9550008653874, 701.9550008653874]\n", "[315.6412870005529, 813.6862861351653, 701.9550008653874]\n", "1\n", "None\n", "here\n", "(((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)))\n", "[-886.3137138648349, 607.8212835390028, -1.955000865387376]\n", "((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0))\n", "[-886.3137138648349, 727.2640918000998, -1.955000865387376]\n", "[315.6412870005529, 813.6862861351653, 701.9550008653874]\n", "[315.6412870005529, 933.1290943962623, 701.9550008653874]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)))\n", "[-886.3137138648349, 727.2640918000998, -1.955000865387376]\n", "((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0))\n", "[-886.3137138648349, 882.4037121340597, -1.955000865387376]\n", "[315.6412870005529, 933.1290943962623, 701.9550008653874]\n", "[315.6412870005529, 1088.2687147302222, 701.9550008653874]\n", "2\n", "-200.0\n", "here\n", "(((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)))\n", "[-886.3137138648349, 882.4037121340597, -1.955000865387376]\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0))\n", "[-686.3137138648349, 1082.4037121340598, -5.8650025961623555]\n", "[315.6412870005529, 1088.2687147302222, 701.9550008653874]\n", "[315.6412870005529, 1088.2687147302222, 498.04499913461245]\n", "1\n", "-100.0\n", "here\n", "(((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)))\n", "[-686.3137138648349, 1082.4037121340598, -5.8650025961623555]\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0))\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0))\n", "[-586.3137138648349, 1062.9609038729625, 94.13499740383764]\n", "[315.6412870005529, 1088.2687147302222, 498.04499913461245]\n", "[315.6412870005529, 968.8259064691249, 498.04499913461245]\n", "2\n", "-200.0\n", "here\n", "(((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-586.3137138648349, 1062.9609038729625, 94.13499740383764]\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0))\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "[-386.3137138648349, 1262.9609038729625, 5.684341886080802e-14]\n", "[315.6412870005529, 968.8259064691249, 498.04499913461245]\n", "[315.6412870005529, 968.8259064691249, 203.91000173077484]\n", "1\n", "0.0\n", "here\n", "(((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-386.3137138648349, 1262.9609038729625, 5.684341886080802e-14]\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "[315.6412870005529, 968.8259064691249, 203.91000173077484]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "[-586.3137138648349, 298.04499913461245, -17.596287865939956]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-586.3137138648349, 298.04499913461245, -17.596287865939956]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-315.64128700055295, 498.04499913461245, 5.684341886080802e-14]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "[386.3137138648348, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-315.64128700055295, 498.04499913461245, 5.684341886080802e-14]\n", "((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-231.17409353087538, 498.04499913461245, 5.684341886080802e-14]\n", "[386.3137138648348, 203.91000173077484, 203.91000173077484]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-231.17409353087538, 498.04499913461245, 5.684341886080802e-14]\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, 498.04499913461245, 5.684341886080802e-14]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "0\n", "300.0\n", "here\n", "(((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, 498.04499913461245, 5.684341886080802e-14]\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-33.12909439626287, 198.04499913461245, -299.99999999999994]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "[968.8259064691249, 203.91000173077484, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-33.12909439626287, 198.04499913461245, -299.99999999999994]\n", "((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-33.12909439626287, -5.865002596162384, -299.99999999999994]\n", "[968.8259064691249, 203.91000173077484, 203.91000173077484]\n", "[968.8259064691249, 0.0, 203.91000173077484]\n", "0\n", "200.0\n", "here\n", "(((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-33.12909439626287, -5.865002596162384, -299.99999999999994]\n", "((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-113.68628613516557, -205.86500259616238, -499.99999999999994]\n", "[968.8259064691249, 0.0, 203.91000173077484]\n", "[1088.2687147302222, 0.0, 203.91000173077484]\n", "2\n", "-700.0\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[-113.68628613516557, -205.86500259616238, -499.99999999999994]\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[586.3137138648344, 494.1349974038376, -3.910001730774752]\n", "[1088.2687147302222, 0.0, 203.91000173077484]\n", "[1088.2687147302222, 0.0, 0.0]\n", "0\n", "800.0\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[586.3137138648344, 494.1349974038376, -3.910001730774752]\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[-368.82590646912547, -305.8650025961624, -803.9100017307748]\n", "[1088.2687147302222, 0.0, 0.0]\n", "[933.1290943962623, 0.0, 0.0]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)))\n", "[-368.82590646912547, -305.8650025961624, -803.9100017307748]\n", "((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0))\n", "[-368.82590646912547, -74.69090906528743, -803.9100017307748]\n", "[933.1290943962623, 0.0, 0.0]\n", "[933.1290943962623, 231.17409353087498, 0.0]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)))\n", "[-368.82590646912547, -74.69090906528743, -803.9100017307748]\n", "((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "[-368.82590646912547, 9.77628440439048, -803.9100017307748]\n", "[933.1290943962623, 231.17409353087498, 0.0]\n", "[933.1290943962623, 315.6412870005529, 0.0]\n", "1\n", "-800.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)))\n", "[-368.82590646912547, 9.77628440439048, -803.9100017307748]\n", "((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[431.17409353087453, -3.9100017307749795, -3.910001730774752]\n", "[933.1290943962623, 315.6412870005529, 0.0]\n", "[933.1290943962623, -498.04499913461257, 0.0]\n", "2\n", "-100.0\n", "here\n", "(((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)))\n", "[431.17409353087453, -3.9100017307749795, -3.910001730774752]\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[531.1740935308745, 96.08999826922502, -15.641287000552524]\n", "[933.1290943962623, -498.04499913461257, 0.0]\n", "[933.1290943962623, -498.04499913461257, -111.73128526977777]\n", "2\n", "300.0\n", "here\n", "(((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[531.1740935308745, 96.08999826922502, -15.641287000552524]\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -203.91000173077498, 1.1368683772161603e-13]\n", "[933.1290943962623, -498.04499913461257, -111.73128526977777]\n", "[933.1290943962623, -498.04499913461257, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -203.91000173077498, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -407.82000346154996, 1.1368683772161603e-13]\n", "[933.1290943962623, -498.04499913461257, 203.91000173077484]\n", "[933.1290943962623, -701.9550008653875, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -407.82000346154996, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -590.2237155956095, 1.1368683772161603e-13]\n", "[933.1290943962623, -701.9550008653875, 203.91000173077484]\n", "[933.1290943962623, -884.3587129994471, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -590.2237155956095, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -701.9550008653875, 1.1368683772161603e-13]\n", "[933.1290943962623, -884.3587129994471, 203.91000173077484]\n", "[933.1290943962623, -996.0899982692251, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -701.9550008653875, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, -701.9550008653875, 1.1368683772161603e-13]\n", "[933.1290943962623, -996.0899982692251, 203.91000173077484]\n", "[701.9550008653874, -996.0899982692251, 203.91000173077484]\n", "1\n", "-300.0\n", "here\n", "(((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, -701.9550008653875, 1.1368683772161603e-13]\n", "((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[299.99999999999966, 96.08999826922502, 300.0000000000001]\n", "[701.9550008653874, -996.0899982692251, 203.91000173077484]\n", "[701.9550008653874, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[299.99999999999966, 96.08999826922502, 300.0000000000001]\n", "((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[411.7312852697776, 96.08999826922502, 300.0000000000001]\n", "[701.9550008653874, -498.04499913461257, 203.91000173077484]\n", "[813.6862861351653, -498.04499913461257, 203.91000173077484]\n", "0\n", "500.0\n", "here\n", "(((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[411.7312852697776, 96.08999826922502, 300.0000000000001]\n", "((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[66.87090560373713, -403.910001730775, -199.9999999999999]\n", "[813.6862861351653, -498.04499913461257, 203.91000173077484]\n", "[968.8259064691249, -498.04499913461257, 203.91000173077484]\n", "2\n", "0.0\n", "here\n", "(((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[66.87090560373713, -403.910001730775, -199.9999999999999]\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[66.87090560373713, -403.910001730775, -17.5962878659399]\n", "[968.8259064691249, -498.04499913461257, 203.91000173077484]\n", "[968.8259064691249, -498.04499913461257, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)))\n", "[66.87090560373713, -403.910001730775, -17.5962878659399]\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "[66.87090560373713, -172.73590819990005, -17.5962878659399]\n", "[968.8259064691249, -498.04499913461257, 386.3137138648348]\n", "[968.8259064691249, -266.87090560373764, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[66.87090560373713, -172.73590819990005, -17.5962878659399]\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[266.8709056037371, 27.264091800099948, 1.1368683772161603e-13]\n", "[968.8259064691249, -266.87090560373764, 386.3137138648348]\n", "[968.8259064691249, -266.87090560373764, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[266.8709056037371, 27.264091800099948, 1.1368683772161603e-13]\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[386.3137138648344, 27.264091800099948, 1.1368683772161603e-13]\n", "[968.8259064691249, -266.87090560373764, 203.91000173077484]\n", "[1088.2687147302222, -266.87090560373764, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)))\n", "[386.3137138648344, 27.264091800099948, 1.1368683772161603e-13]\n", "((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "[386.3137138648344, -92.17871646099718, 1.1368683772161603e-13]\n", "[1088.2687147302222, -266.87090560373764, 203.91000173077484]\n", "[1088.2687147302222, -386.31371386483477, 203.91000173077484]\n", "1\n", "-200.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[386.3137138648344, -92.17871646099718, 1.1368683772161603e-13]\n", "((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[586.3137138648344, 262.9609038729625, 200.0000000000001]\n", "[1088.2687147302222, -386.31371386483477, 203.91000173077484]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[586.3137138648344, 262.9609038729625, 200.0000000000001]\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[431.17409353087453, 262.9609038729625, 200.0000000000001]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "2\n", "300.0\n", "here\n", "(((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0)))\n", "[431.17409353087453, 262.9609038729625, 200.0000000000001]\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0))\n", "[131.17409353087453, -37.03909612703751, 11.731285269778141]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "[933.1290943962623, -231.1740935308751, 315.6412870005529]\n", "0\n", "None\n", "here\n", "(((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (1, 1, -1, 0)))\n", "[131.17409353087453, -37.03909612703751, 11.731285269778141]\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (-3, 0, 0, 1), (1, 1, -1, 0))\n", "[-100.00000000000034, -37.03909612703751, 11.731285269778141]\n", "[933.1290943962623, -231.1740935308751, 315.6412870005529]\n", "[701.9550008653874, -231.1740935308751, 315.6412870005529]\n" ] }, { "ename": "TypeError", "evalue": "write_chord_sequence() missing 1 required positional argument: 'path'", "output_type": "error", "traceback": [ "\u001b[0;31m---------------------------------------------------------------------------\u001b[0m", "\u001b[0;31mTypeError\u001b[0m Traceback (most recent call last)", "Cell \u001b[0;32mIn[530], line 9\u001b[0m\n\u001b[1;32m 7\u001b[0m durs \u001b[38;5;241m=\u001b[39m \u001b[38;5;28mtuple\u001b[39m(d[\u001b[38;5;241m0\u001b[39m] \u001b[38;5;28;01mfor\u001b[39;00m d \u001b[38;5;129;01min\u001b[39;00m target_melody_data)\n\u001b[1;32m 8\u001b[0m path_to_chords(path, root)\n\u001b[0;32m----> 9\u001b[0m \u001b[43mwrite_chord_sequence\u001b[49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mlist\u001b[39;49m\u001b[43m(\u001b[49m\u001b[38;5;28;43mzip\u001b[39;49m\u001b[43m(\u001b[49m\u001b[43mdurs\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mpath_to_chords\u001b[49m\u001b[43m(\u001b[49m\u001b[43mpath\u001b[49m\u001b[43m,\u001b[49m\u001b[43m \u001b[49m\u001b[43mroot\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\u001b[43m)\u001b[49m\n", "\u001b[0;31mTypeError\u001b[0m: write_chord_sequence() missing 1 required positional argument: 'path'" ] } ], "source": [ "seed(19541116)\n", "factors = []\n", "dims = (2, 3, 5, 7)\n", "root = (0, 0, 0, 0)\n", "start_chord = ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "path = stochastic_hamiltonian(start_chord)\n", "durs = tuple(d[0] for d in target_melody_data)\n", "#path_to_chords(path, root)\n", "write_chord_sequence(list(zip(durs, path_to_chords(path, root))))" ] }, { "cell_type": "markdown", "id": "85eda9de-ad78-4009-bf0e-c4d45e806bc4", "metadata": {}, "source": [ "## function-based approach" ] }, { "cell_type": "markdown", "id": "0c249f37-5fd5-45d3-9f52-313dd9ae3250", "metadata": {}, "source": [ "### path functions" ] }, { "cell_type": "markdown", "id": "df57f38b-be7a-4cac-b0af-33b36c97f388", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "#### legacy" ] }, { "cell_type": "code", "execution_count": 15, "id": "57c834bf-fee7-4ef4-b648-2173099fbb56", "metadata": {}, "outputs": [], "source": [ "from random import choice, choices\n", "\n", "def hd_sum(chord):\n", " distances = []\n", " size = len(chord)\n", " for i in range(size):\n", " for j in range(i+1, size):\n", " distances += [sum([abs(dist) * log(dims[idx], 2) for idx, dist in enumerate(pitch_difference(chord[i], chord[j]))])]\n", " return sum(distances)\n", " \n", "def next_edges(source, last_chords): \n", "\n", " def transpose_to_nearest(hs_array1, hs_array2):\n", " expanded_pitch = hs_array2\n", " frequency_ratio = hs_array_to_fr(list(hs_array2)) / hs_array_to_fr(list(hs_array1))\n", " if frequency_ratio < 1:\n", " while frequency_ratio < 1:\n", " frequency_ratio *= 2\n", " expanded_pitch[0] += 1\n", " elif frequency_ratio >= 2:\n", " while frequency_ratio >= 2:\n", " frequency_ratio *= 1/2\n", " expanded_pitch[0] += -1\n", " return tuple(expanded_pitch)\n", " \n", " def gen_candidates(chord, last_chords):\n", " for sdx, s_pitch in enumerate(chord):\n", " for cdx, c_pitch in enumerate(chord):\n", " if cdx != sdx: \n", " for ddx, dim in enumerate(c_pitch[1:]):\n", " for alt in [-1, 1]:\n", " new_pitch = list(c_pitch)\n", " new_pitch[ddx+1] += alt\n", " new_pitch_up = transpose_to_nearest(s_pitch, new_pitch)\n", " new_chord_up = list(chord)\n", " new_chord_up[sdx] = tuple(new_pitch_up)\n", " #print(\"here\")\n", " #print(new_pitch_up)\n", " #print(tuple(l[sdx] for l in last_chords))\n", " #print(new_pitch_up not in tuple(l[sdx] for l in last_chords))\n", " \n", " #if tuple(new_chord_up) != chord and (tuple(new_pitch_up) not in tuple(l[sdx] for l in last_chords)) and max(new_pitch_up[1:]) <= 1 and min(new_pitch_up[1:]) >= 0 and sum(new_pitch_up[1:]) <= 2:\n", " if tuple(new_chord_up) != chord and max(new_pitch_up[1:]) <= 1 and min(new_pitch_up[1:]) >= 0 and sum(new_pitch_up[1:]) <= 2:\n", " #if tuple(new_chord_up) != chord and tuple(new_pitch_up) not in tuple(l[sdx] for l in last_chords):\n", " #if tuple(new_chord_up) != chord:\n", " yield tuple(new_chord_up)\n", "\n", " new_pitch_down = list(new_pitch_up)\n", " new_pitch_down[0] += -1\n", " new_chord_down = list(chord)\n", " new_chord_down[sdx] = tuple(new_pitch_down)\n", "\n", " #print(\"here2\")\n", " #print(new_pitch_down)\n", " #print(tuple(l[sdx] for l in last_chords))\n", " #print(new_pitch_down not in tuple(l[sdx] for l in last_chords))\n", " #if tuple(new_chord_down) != chord:\n", " #if tuple(new_chord_down) != chord and new_pitch_down not in tuple(l[sdx] for l in last_chords):\n", " if tuple(new_chord_down) != chord and max(new_pitch_down[1:]) <= 1 and min(new_pitch_down[1:]) >= 0 and sum(new_pitch_up[1:]) <= 2:\n", " #if tuple(new_chord_down) != chord and (tuple(new_pitch_down) not in tuple(l[sdx] for l in last_chords)) and max(new_pitch_down[1:]) <= 1 and min(new_pitch_down[1:]) >= 0 and sum(new_pitch_up[1:]) <= 2:\n", " yield tuple(new_chord_down)\n", "\n", " for candidate in gen_candidates(source, last_chords):\n", "\n", " movements = {\n", " pitch:\n", " {\n", " 'destination': candidate[index], \n", " 'cent_difference': cent_difference(pitch, candidate[index])\n", " } for index, pitch in enumerate(source)}\n", " \n", " yield (tuple(source), tuple(candidate), {'transposition': root, 'movements': movements},)\n", "\n", "\n", "# This is for the beginning / breysheet - redone to calculate next chord as a function and not from the graph\n", "def stochastic_hamiltonian(root):\n", "\n", " #try making this omit the moving voice\n", " def movement_size_weights(edges):\n", " \n", " def max_cent_diff(edge):\n", " res = max([abs(v) for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None])\n", " return res\n", " \n", " def min_cent_diff(edge):\n", " res = [abs(v) for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " res.remove(0)\n", " return min(res)\n", " \n", " for e in edges:\n", " yield 100 if ((max_cent_diff(e) < 200) and (min_cent_diff(e)) >= 50) else 1/pow(1.1, max_cent_diff(e))\n", "\n", " def hamiltonian_weights(edges):\n", " for e in edges:\n", " yield 10 if e[1] not in [path_edge[0] for path_edge in path] else 1 / graph.nodes[e[1]]['count']\n", " \n", " def contrary_motion_weights(edges):\n", "\n", " def is_contrary(edge):\n", " cent_diffs = [v for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " cent_diffs.sort()\n", " return (cent_diffs[0] < 0) and (cent_diffs[1] == 0) and (cent_diffs[2] > 0)\n", "\n", " for e in edges:\n", " yield 2 if is_contrary(e) else 1\n", " \n", " def is_directly_tunable_weights(edges):\n", " for e in edges:\n", " yield 10 if e[2]['is_directly_tunable'] else 1\n", "\n", " def symdiff_weights(edges):\n", " for e in edges:\n", " yield 1000 if e[2]['symmetric_difference'] == 2 else 1\n", "\n", " def transposition_weight(edges):\n", " for e in edges:\n", " yield 100 if 0 <= hs_array_to_cents(e[2]['transposition']) < 100 else 1\n", "\n", " def in_range(edges):\n", " for e in edges:\n", " s_chord = sorted(e[1], key=hs_array_to_fr)\n", " yield 5 if hs_array_to_fr(sorted(e[1], key=hs_array_to_fr)[0]) >= 0.25 else 0\n", "\n", " def hd_weight(edges):\n", " for e in edges:\n", " yield 100 * (1/pow(hd_sum(e[1]), 2))\n", "\n", " def permission_weight(edges, allowed_ins):\n", " print(\"here\")\n", " print(allowed_ins)\n", " print(\"---\")\n", " for e in edges:\n", " diff = [ibx for ibx, pitch in enumerate(e[0]) if pitch != e[1][ibx]][0]\n", " yield 1 if diff in allowed_ins else 0\n", "\n", " def dca_weight(edges, ins, last_chords):\n", " for e in edges:\n", " #print(tuple(e[1][ins]))\n", " #print(ins)\n", " #print(tuple(l[ins] for l in last_chords))\n", " diff_e = [i for i, item in enumerate(e[0]) if item != e[1][i]][0]\n", " if ins == diff_e:\n", " yield 1\n", " else:\n", " yield 100 if tuple(e[1][diff_e]) not in tuple(l[diff_e] for l in last_chords) else 0\n", "\n", " def is_sustained_voice(edges, voice):\n", " \n", " def is_sustained(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " return ordered_source[voice] == ordered_destination[voice]\n", "\n", " for e in edges:\n", " yield 10 if is_sustained(e) else 1\n", "\n", " def favor_bass(edges, ins):\n", "\n", " def ins_check(edge, ins):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " if ins == 2:\n", " return 1\n", " elif ins == 1 and ordered_source[0] != ordered_destination[0]:\n", " return 1\n", " else:\n", " return 0\n", "\n", " for e in edges:\n", " yield ins_check(e, ins)\n", "\n", " def voice_crossing_weights(edges):\n", " \n", " def has_voice_crossing(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " source_order = [ordered_source.index(p) for p in source]\n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " destination_order = [ordered_destination.index(p) for p in destination]\n", " return source_order != destination_order\n", "\n", " for e in edges:\n", " yield 10 if not has_voice_crossing(e) else 0\n", "\n", " def is_bass_rooted(chord):\n", " return max([sum(abs(p) for p in collapse_pitch(pitch_difference(chord[0], p))) for p in chord[1:]]) == 1\n", "\n", " def target_melody_weights(edges, target, c_devs, voice):\n", "\n", " def target_weight(edge, target, c_devs, voice):\n", " candidate_diffs = []\n", " for idx, dev in enumerate(c_devs):\n", " if(idx == voice):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " candidate_diff = edge[2]['movements'][ordered_source[idx]]['cent_difference']\n", " candidate_diffs += [abs(dev + candidate_diff - target)]\n", " #return 1/pow(1.1, min(candidate_diffs))\n", " return 100 if min(candidate_diffs) < 40 else 1/pow(1.1, min(candidate_diffs))\n", " \n", " for e in edges:\n", " yield target_weight(e, target, c_devs, voice)\n", " \n", " #check_graph = graph.copy()\n", " #next_node = choice(list(graph.nodes()))\n", " next_node = ((-2, 0, 0, 0, 0, 0), (-1, 0, 0, 0, 0, 0), (-3, 0, 0, 0, 1, 0))\n", " #check_graph.remove_node(next_node)\n", " #for node in graph.nodes(data=True):\n", " # node[1]['count'] = 1\n", " path = []\n", " s_next_node = sorted(next_node, key=hs_array_to_fr)\n", " last_chords = (tuple(s_next_node),)\n", " c_devs = (cent_difference(s_next_node[2], s_next_node[0]), cent_difference(s_next_node[2], s_next_node[1]), 0,)\n", " #c_devs = (0, cent_difference(s_next_node[0], s_next_node[1]), cent_difference(s_next_node[0], s_next_node[2]),)\n", " print(c_devs)\n", " #while (nx.number_of_nodes(check_graph) > 0) and (len(path) < len(target_melody_data)-1):\n", " while (len(path) < len(target_melody_data)-1):\n", " #out_edges = list(graph.out_edges(next_node, data=True))\n", " out_edges = list(next_edges(next_node, last_chords))\n", " target = target_melody_data[len(path)+1][-1]\n", " ins = target_melody_data[len(path)+1][2]\n", " print(target)\n", " print(ins)\n", " factors = [\n", " movement_size_weights(out_edges), \n", " #hamiltonian_weights(out_edges), \n", " #contrary_motion_weights(out_edges), \n", " #is_directly_tunable_weights(out_edges),\n", " voice_crossing_weights(out_edges),\n", " #transposition_weight(out_edges),\n", " #is_sustained_voice(out_edges, 0),\n", " target_melody_weights(out_edges, target, c_devs, ins),\n", " #symdiff_weights(out_edges),\n", " hd_weight(out_edges),\n", " dca_weight(out_edges, ins, last_chords),\n", " permission_weight(out_edges, target_melody_data[len(path)+1][3])\n", " #favor_bass(out_edges, ins),\n", " #in_range(out_edges)\n", " ]\n", " weights = [prod(a) for a in zip(*factors)]\n", " if sum(weights) != 0:\n", " edge = choices(out_edges, weights=weights)[0]\n", " else:\n", " movements = {\n", " pitch:\n", " {\n", " 'destination': pitch, \n", " 'cent_difference': 0\n", " } for index, pitch in enumerate(edge[1])}\n", " edge = (edge[1], edge[1], {'transposition': (0, 0, 0, 0, 0, 0), 'movements': movements},)\n", " \n", " next_node = edge[1]\n", " last_chords = last_chords + (next_node,)\n", " if len(last_chords) > 10:\n", " last_chords = last_chords[-10:]\n", " print(last_chords)\n", " #node[1]['count'] += 1\n", " path.append(edge)\n", " s_chord = tuple(sorted(edge[0], key=hs_array_to_fr))\n", " print(c_devs)\n", " #for pdx, pitch in enumerate(s_chord):\n", " # print(\"here\")\n", " # print(c_devs[pdx])\n", " # print(edge[2]['movements'][pitch]['cent_difference'])\n", " # print(target_melody_data[len(path)][-1])\n", " if sum(weights) != 0:\n", " c_devs = tuple(c_devs[pdx] + edge[2]['movements'][pitch]['cent_difference'] - target_melody_data[len(path)][-1] for pdx, pitch in enumerate(s_chord))\n", " print(s_chord)\n", " print(edge[1])\n", " print(c_devs)\n", " print(target_melody_data[len(path)][2])\n", " print(target_melody_data[len(path)][-1])\n", " #if next_node in check_graph.nodes:\n", " # check_graph.remove_node(next_node)\n", " return path" ] }, { "cell_type": "markdown", "id": "24267739-0381-4651-8804-4b4665592de2", "metadata": {}, "source": [ "#### cleanup (this is what is being used)" ] }, { "cell_type": "code", "execution_count": 533, "id": "81f20bd9-e87a-4918-a61b-27b04b6d5aee", "metadata": {}, "outputs": [], "source": [ "from random import choice, choices\n", "\n", "def path_to_chords(path, start_root):\n", " current_root = start_root\n", " start_chord = tuple(sorted(path[0][0], key=hs_array_to_fr))\n", " chords = (start_chord,)\n", " for edge in path:\n", " chords += (edge[1],)\n", " return chords\n", " \n", "def next_edges(source, ins, dev_target): \n", "\n", " def transpose_to_nearest(hs_array1, hs_array2):\n", " expanded_pitch = hs_array2\n", " frequency_ratio = hs_array_to_fr(list(hs_array2)) / hs_array_to_fr(list(hs_array1))\n", " if frequency_ratio < 1:\n", " while frequency_ratio < 1:\n", " frequency_ratio *= 2\n", " expanded_pitch[0] += 1\n", " elif frequency_ratio >= 2:\n", " while frequency_ratio >= 2:\n", " frequency_ratio *= 1/2\n", " expanded_pitch[0] += -1\n", " return tuple(expanded_pitch)\n", "\n", "\n", " def gen_candidates(chord, ins, dev_target):\n", " sustain = ((0, 0, 0, 0), (-1, 1, 0, 0),)\n", " refs = chord\n", " #if ins == 2:\n", " refs += sustain\n", " #if ins != 2:\n", " # sustain = sustain + (chord[2],)\n", " for cdx, c_pitch in enumerate(sustain):\n", " if True: \n", " enumerator = c_pitch[1:] # if dev_target != None else c_pitch[1:-1]\n", " for ddx, dim in enumerate(enumerator):\n", " alts = [-1, 1] # if dev_target != None else [1]\n", " for alt in alts:\n", " new_pitch = list(c_pitch)\n", " new_pitch[ddx+1] += alt\n", " s_pitch = chord[ins]\n", " new_pitch = transpose_to_nearest(s_pitch, new_pitch)\n", " for octave in range(-1, 2):\n", " \n", " f_new_pitch = list(new_pitch)\n", " f_new_pitch[0] += octave\n", " f_chord = list(chord)\n", " f_chord[ins] = tuple(f_new_pitch)\n", "\n", " limit_test_vals = [v for d in list(zip(*f_chord))[1:] for v in d]\n", " sum_test_vals = [sum(p[1:]) for p in f_chord]\n", " #if tuple(f_chord) != chord and chord and max(limit_test_vals) <= 2 and min(limit_test_vals) >= -2 and max(sum_test_vals) <= 4:\n", " if tuple(f_chord) != chord and max([abs(hs_array_to_cents(tp)) for tp in f_chord]) < 1200: # and len(set(f_chord)) == 3:\n", " #print(f_chord)\n", " yield tuple(f_chord)\n", " \n", " for candidate in gen_candidates(source, ins, dev_target):\n", " yield (tuple(source), tuple(candidate), tuple(cent_difference(pitch, candidate[index]) for index, pitch in enumerate(source)))\n", "\n", "def hd_sum(chord):\n", " distances = []\n", " size = len(chord)\n", " for i in range(size):\n", " for j in range(i+1, size):\n", " distances += [sum([abs(dist) * log(dims[1:][idx], 2) for idx, dist in enumerate(pitch_difference(chord[i][1:], chord[j][1:]))])]\n", " return sum(distances)\n", "\n", "# This is for the beginning / breysheet - redone to calculate next chord as a function and not from the graph\n", "def stochastic_hamiltonian(start_chord):\n", "\n", " def movement_size_weights(edges, ins):\n", " \n", " def cent_diff(edge):\n", " return abs(edge[2][ins])\n", " \n", " for e in edges:\n", " yield 100 if (cent_diff(e) < 250) and (cent_diff(e) >= 50) else 1/pow(cent_diff(e), 1)\n", "\n", " def in_range(edges):\n", " for e in edges:\n", " s_chord = sorted(e[1], key=hs_array_to_fr)\n", " yield 1 if hs_array_to_fr(sorted(e[1], key=hs_array_to_fr)[0]) >= 0.25 else 0\n", "\n", " def hd_weight(edges):\n", " for e in edges:\n", " cand_hd_sum = hd_sum(e[1])\n", " yield (1/pow(cand_hd_sum, 2)) if cand_hd_sum > 0 else 0\n", "\n", " def dca_weight(edges, ins, dev, last_chords):\n", " for e in edges:\n", " if False:\n", " yield 1\n", " else:\n", " yield 5 if tuple(e[1][ins]) not in tuple(l[ins] for l in last_chords) else 0\n", " #yield 5 if tuple(e[1][ins][1:]) not in tuple(p[1:] for chord in last_chords for p in chord) else 0\n", "\n", " def voice_crossing_weights(edges):\n", " \n", " def has_voice_crossing(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " source_order = [ordered_source.index(p) for p in source]\n", " destination = list(edge[1])\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " destination_order = [ordered_destination.index(p) for p in destination]\n", " return source_order != destination_order\n", "\n", " for e in edges:\n", " yield 1 if not has_voice_crossing(e) else 0\n", "\n", " def normalize_sum(array):\n", " if sum(array) != 0:\n", " return [val / sum(array) for val in array]\n", " else:\n", " return [0 for val in array]\n", "\n", " def normalize(array):\n", " if len(set(array)) > 1:\n", " max_value = max(array)\n", " min_value = min(array)\n", " return [(((val - min_value) / (max_value - min_value)) * 0.9 + 0.1) for val in array]\n", " else:\n", " return [1 for val in array]\n", "\n", " def registration_weights(edges):\n", "\n", " def reg_min(edge):\n", " # confusing naming convention I know\n", " collapsed_chord = expand_chord(edge[1])\n", " return min(hs_array_to_cents(pair[1]) - hs_array_to_cents(pair[0]) for pair in pairwise(sorted(collapsed_chord, key=hs_array_to_cents)))\n", "\n", " return [10 if reg_min(e) > 270 else 1 for e in edges]\n", "\n", " def target_melody_weights(edges, target_dev, c_devs, ins):\n", "\n", " def candidate_diff(edge, target_dev, c_devs, ins): \n", " if target_dev != None:\n", " return abs(c_devs[ins] + edge[2][ins] - target_dev)\n", " else:\n", " return 1\n", "\n", " if target_dev != None:\n", " #for edge in edges:\n", " # print(edge[1])\n", " # print(candidate_diff(edge, target_dev, c_devs, ins))\n", " diffs = [candidate_diff(edge, target_dev, c_devs, ins) for edge in edges]\n", " min_diff = min(diffs)\n", " #print([1 if diff == min_diff else 0 for diff in diffs])\n", " return [1 if diff == min_diff else 0 for diff in diffs]\n", " else:\n", " return [1 for edge in edges]\n", "\n", " next_node = start_chord\n", " path = []\n", " s_next_node = sorted(next_node, key=hs_array_to_fr)\n", " last_chords = (tuple(s_next_node),)\n", " unison = tuple(0 for p in start_chord[0])\n", " c_devs = [cent_difference(s_next_node[2], s_next_node[0]), cent_difference(s_next_node[2], s_next_node[1]), 0]\n", " #c_devs = (0, cent_difference(s_next_node[0], s_next_node[1]), cent_difference(s_next_node[0], s_next_node[2]),)\n", " print(c_devs)\n", " for dur, val, ins, dev in target_melody_data[1:]:\n", " print(ins)\n", " print(dev)\n", " out_edges = list(next_edges(next_node, ins, dev))\n", " print(\"here\")\n", " #print(list(target_melody_weights(out_edges, dev, c_devs, ins)))\n", " #print(max(list(target_melody_weights(out_edges, dev, c_devs, ins))))\n", " factors = [\n", " list(movement_size_weights(out_edges, ins)), \n", " list(voice_crossing_weights(out_edges)),\n", " list(target_melody_weights(out_edges, dev, c_devs, ins)),\n", " list(hd_weight(out_edges)),\n", " list(dca_weight(out_edges, ins, dev, last_chords)),\n", " list(registration_weights(out_edges))\n", " ]\n", " weights = [1000, 0, 10, 1000, 10, 1000]\n", " #if (ins == 2 and dev != None) or (ins != 2 and dev != None and choices([True, False], weights=[1,1])[0]):\n", " if ins == 2: \n", " skip_weights = [2, 0]\n", " else:\n", " skip_weights = [1, 2]\n", " if (dev != None and choices([True, False], weights=skip_weights)[0]):\n", " weights[0] = 0\n", " weights[3] = 0\n", " weights[4] = 0\n", " else:\n", " weights[2] = 0\n", " #print(factors)\n", " candidate_exists = sum([prod(a) for a in zip(*factors)]) != 0\n", " candidate_exists = True\n", " #print(\"here\")\n", " #print(factors)\n", " if candidate_exists: # and not (ins == 2 and dev == None):\n", " #norm_weights = [prod(a) for a in zip(*[[(f / sum(factor)) * weights[ifx] if f != 0 else 0 for f in list(factor)] for ifx, factor in enumerate(factors) if weights[ifx] != 0])]\n", " if False:\n", " norm_weights = target_melody_weights(out_edges, dev, c_devs, ins)\n", " else:\n", " norm_weights = [prod(a) for a in zip(*[[nf * weights[ifx] for nf in list(factor)] for ifx, factor in enumerate(factors) if weights[ifx] != 0])]\n", " #print(max(norm_weights))\n", " #print(norm_weights)\n", " edge = choices(out_edges, weights=norm_weights)[0]\n", " else:\n", " edge = (next_node, next_node, (0, 0, 0,))\n", "\n", " if ins == 2 and dev == None:\n", " edge = (next_node, next_node, (0, 0, 0,))\n", " \n", " next_node = edge[1]\n", " last_chords = last_chords + (next_node,)\n", " if len(last_chords) > 10:\n", " last_chords = last_chords[-10:]\n", " print(last_chords)\n", " path.append(edge)\n", " #s_chord = tuple(sorted(edge[0], key=hs_array_to_fr))\n", " s_chord = edge[0]\n", " print(c_devs)\n", " if candidate_exists:\n", " if dev != None:\n", " c_devs = [c_devs[pdx] + edge[2][pdx] - dev for pdx, pitch in enumerate(s_chord)]\n", " else:\n", " c_devs[ins] += edge[2][ins]\n", " print(s_chord)\n", " print(edge[1])\n", " print(c_devs)\n", " print([hs_array_to_cents(pitch) for pitch in edge[0]])\n", " print([hs_array_to_cents(pitch) for pitch in edge[1]])\n", " return path" ] }, { "cell_type": "markdown", "id": "3102630d-3e61-4653-8482-4e50e0e26858", "metadata": {}, "source": [ "### model" ] }, { "cell_type": "code", "execution_count": 534, "id": "8912c650-a43d-4539-ae24-b5acf9bc543d", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-701.9550008653874, -203.91000173077484, 0]\n", "2\n", "200.0\n", "here\n", "[-701.9550008653874, -203.91000173077484, 0]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-901.9550008653874, -403.91000173077487, -17.596287865940013]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "[0.0, -498.04499913461257, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "[-901.9550008653874, -403.91000173077487, -17.596287865940013]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-701.9550008653874, -203.91000173077487, 0.0]\n", "[0.0, -498.04499913461257, 386.3137138648348]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "2\n", "-200.0\n", "here\n", "[-701.9550008653874, -203.91000173077487, 0.0]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[-501.95500086538743, -3.910001730774866, -3.9100017307748374]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "[0.0, -498.04499913461257, 0.0]\n", "2\n", "-100.0\n", "here\n", "[-501.95500086538743, -3.910001730774866, -3.9100017307748374]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[-401.95500086538743, 96.08999826922513, -15.641287000552609]\n", "[0.0, -498.04499913461257, 0.0]\n", "[0.0, -498.04499913461257, -111.73128526977777]\n", "1\n", "500.0\n", "here\n", "[-401.95500086538743, 96.08999826922513, -15.641287000552609]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "[-901.9550008653874, -172.73590819989994, -515.6412870005527]\n", "[0.0, -498.04499913461257, -111.73128526977777]\n", "[0.0, -266.87090560373764, -111.73128526977777]\n", "2\n", "-400.0\n", "here\n", "[-901.9550008653874, -172.73590819989994, -515.6412870005527]\n", "((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "[-501.95500086538743, 227.26409180010006, -3.910001730774866]\n", "[0.0, -266.87090560373764, -111.73128526977777]\n", "[0.0, -266.87090560373764, 0.0]\n", "1\n", "200.0\n", "here\n", "[-501.95500086538743, 227.26409180010006, -3.910001730774866]\n", "((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0))\n", "[-701.9550008653874, -92.17871646099707, -203.91000173077487]\n", "[0.0, -266.87090560373764, 0.0]\n", "[0.0, -386.31371386483477, 0.0]\n", "2\n", "0.0\n", "here\n", "[-701.9550008653874, -92.17871646099707, -203.91000173077487]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "[-701.9550008653874, -92.17871646099707, -2.842170943040401e-14]\n", "[0.0, -386.31371386483477, 0.0]\n", "[0.0, -386.31371386483477, 203.91000173077484]\n", "2\n", "0.0\n", "here\n", "[-701.9550008653874, -92.17871646099707, -2.842170943040401e-14]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1))\n", "[-701.9550008653874, -92.17871646099707, 27.26409180010012]\n", "[0.0, -386.31371386483477, 203.91000173077484]\n", "[0.0, -386.31371386483477, 231.17409353087498]\n", "2\n", "-300.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-701.9550008653874, -92.17871646099707, 27.26409180010012]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1))\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-401.95500086538743, 207.82128353900293, -15.641287000552666]\n", "[0.0, -386.31371386483477, 231.17409353087498]\n", "[0.0, -386.31371386483477, -111.73128526977777]\n", "0\n", "500.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-401.95500086538743, 207.82128353900293, -15.641287000552666]\n", "((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-698.0449991346126, -292.17871646099707, -515.6412870005527]\n", "[0.0, -386.31371386483477, -111.73128526977777]\n", "[203.91000173077484, -386.31371386483477, -111.73128526977777]\n", "2\n", "-200.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)))\n", "[-698.0449991346126, -292.17871646099707, -515.6412870005527]\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "[-498.04499913461257, -92.17871646099707, -5.684341886080802e-14]\n", "[203.91000173077484, -386.31371386483477, -111.73128526977777]\n", "[203.91000173077484, -386.31371386483477, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-498.04499913461257, -92.17871646099707, -5.684341886080802e-14]\n", "((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-498.04499913461257, 62.960903872962604, -5.684341886080802e-14]\n", "[203.91000173077484, -386.31371386483477, 203.91000173077484]\n", "[203.91000173077484, -231.1740935308751, 203.91000173077484]\n", "0\n", "0.0\n", "here\n", "(((0, 0, 0, 0), (1, 1, 0, -1), (-4, 1, 1, 0)), ((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-498.04499913461257, 62.960903872962604, -5.684341886080802e-14]\n", "((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-386.31371386483454, 62.960903872962604, -5.684341886080802e-14]\n", "[203.91000173077484, -231.1740935308751, 203.91000173077484]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((0, 0, 0, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)))\n", "[-386.31371386483454, 62.960903872962604, -5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "[-586.3137138648345, -137.0390961270374, -17.59628786594007]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "[315.6412870005529, -231.1740935308751, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)))\n", "[-586.3137138648345, -137.0390961270374, -17.59628786594007]\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0))\n", "[-586.3137138648345, 94.1349974038377, -17.59628786594007]\n", "[315.6412870005529, -231.1740935308751, 386.3137138648348]\n", "[315.6412870005529, 0.0, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)))\n", "[-586.3137138648345, 94.1349974038377, -17.59628786594007]\n", "((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "[-586.3137138648345, 298.04499913461257, -17.59628786594007]\n", "[315.6412870005529, 0.0, 386.3137138648348]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (3, 0, 0, -1)), ((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-586.3137138648345, 298.04499913461257, -17.59628786594007]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-386.31371386483454, 498.04499913461257, -5.684341886080802e-14]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "1\n", "-200.0\n", "here\n", "(((0, 0, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[-386.31371386483454, 498.04499913461257, -5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[-186.31371386483454, 809.7762844043906, 199.99999999999994]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "[315.6412870005529, 315.6412870005529, 203.91000173077484]\n", "1\n", "-100.0\n", "here\n", "(((-3, 2, 0, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-186.31371386483454, 809.7762844043906, 199.99999999999994]\n", "((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-86.31371386483454, 96.08999826922513, 299.99999999999994]\n", "[315.6412870005529, 315.6412870005529, 203.91000173077484]\n", "[315.6412870005529, -498.04499913461257, 203.91000173077484]\n", "2\n", "400.0\n", "here\n", "(((-3, 2, 0, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)))\n", "[-86.31371386483454, 96.08999826922513, 299.99999999999994]\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0))\n", "[-486.31371386483454, -303.91000173077487, 11.731285269778027]\n", "[315.6412870005529, -498.04499913461257, 203.91000173077484]\n", "[315.6412870005529, -498.04499913461257, 315.6412870005529]\n", "2\n", "-400.0\n", "here\n", "(((-3, 2, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)))\n", "[-486.31371386483454, -303.91000173077487, 11.731285269778027]\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0))\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[-86.31371386483454, 96.08999826922513, -15.641287000552666]\n", "[315.6412870005529, -498.04499913461257, 315.6412870005529]\n", "[315.6412870005529, -498.04499913461257, -111.73128526977777]\n", "1\n", "100.0\n", "here\n", "(((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-86.31371386483454, 96.08999826922513, -15.641287000552666]\n", "((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-186.31371386483454, 107.82128353900293, -115.64128700055267]\n", "[315.6412870005529, -498.04499913461257, -111.73128526977777]\n", "[315.6412870005529, -386.31371386483477, -111.73128526977777]\n", "2\n", "400.0\n", "here\n", "(((1, 1, -1, 0), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)))\n", "[-186.31371386483454, 107.82128353900293, -115.64128700055267]\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "[-586.3137138648345, -292.17871646099707, -17.5962878659401]\n", "[315.6412870005529, -386.31371386483477, -111.73128526977777]\n", "[315.6412870005529, -386.31371386483477, 386.3137138648348]\n", "1\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)))\n", "[-586.3137138648345, -292.17871646099707, -17.5962878659401]\n", "((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "[-386.31371386483454, 27.26409180010006, 182.4037121340599]\n", "[315.6412870005529, -386.31371386483477, 386.3137138648348]\n", "[315.6412870005529, -266.87090560373764, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)))\n", "[-386.31371386483454, 27.26409180010006, 182.4037121340599]\n", "((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "[-186.31371386483454, 227.26409180010006, -3.9100017307749226]\n", "[315.6412870005529, -266.87090560373764, 386.3137138648348]\n", "[315.6412870005529, -266.87090560373764, 0.0]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)))\n", "[-186.31371386483454, 227.26409180010006, -3.9100017307749226]\n", "((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0))\n", "[-31.17409353087504, 227.26409180010006, -3.9100017307749226]\n", "[315.6412870005529, -266.87090560373764, 0.0]\n", "[470.7809073345124, -266.87090560373764, 0.0]\n", "1\n", "200.0\n", "here\n", "(((1, 1, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-31.17409353087504, 227.26409180010006, -3.9100017307749226]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0))\n", "((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[-231.17409353087504, 182.4037121340599, -203.91000173077492]\n", "[470.7809073345124, -266.87090560373764, 0.0]\n", "[470.7809073345124, -111.73128526977777, 0.0]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-231.17409353087504, 182.4037121340599, -203.91000173077492]\n", "((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[-315.6412870005526, 182.4037121340599, -203.91000173077492]\n", "[470.7809073345124, -111.73128526977777, 0.0]\n", "[386.3137138648348, -111.73128526977777, 0.0]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-2, 1, 0, 0), (1, 1, -1, 0)), ((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-315.6412870005526, 182.4037121340599, -203.91000173077492]\n", "((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[-203.91000173077498, 182.4037121340599, -203.91000173077492]\n", "[386.3137138648348, -111.73128526977777, 0.0]\n", "[498.04499913461245, -111.73128526977777, 0.0]\n", "0\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)))\n", "[-203.91000173077498, 182.4037121340599, -203.91000173077492]\n", "((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "[200.0, 382.4037121340599, -3.9100017307749226]\n", "[498.04499913461245, -111.73128526977777, 0.0]\n", "[701.9550008653874, -111.73128526977777, 0.0]\n", "2\n", "300.0\n", "here\n", "(((1, 1, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)))\n", "[200.0, 382.4037121340599, -3.9100017307749226]\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0))\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0))\n", "[-100.0, 82.4037121340599, 11.73128526977797]\n", "[701.9550008653874, -111.73128526977777, 0.0]\n", "[701.9550008653874, -111.73128526977777, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (2, 0, -1, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)))\n", "[-100.0, 82.4037121340599, 11.73128526977797]\n", "((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "[-100.0, 194.13499740383767, 11.73128526977797]\n", "[701.9550008653874, -111.73128526977777, 315.6412870005529]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "2\n", "-100.0\n", "here\n", "(((1, 1, -1, 0), (1, 1, 0, -1), (-2, 0, 1, 0)), ((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-100.0, 194.13499740383767, 11.73128526977797]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[0.0, 294.1349974038377, -8.526512829121202e-14]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[0.0, 294.1349974038377, -8.526512829121202e-14]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[0.0, 498.04499913461257, -8.526512829121202e-14]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "0\n", "-300.0\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (0, 0, 0, 0)), ((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[0.0, 498.04499913461257, -8.526512829121202e-14]\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[411.7312852697779, 798.0449991346126, 299.9999999999999]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "[813.6862861351653, 203.91000173077484, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[411.7312852697779, 798.0449991346126, 299.9999999999999]\n", "((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[411.7312852697779, 909.7762844043906, 299.9999999999999]\n", "[813.6862861351653, 203.91000173077484, 203.91000173077484]\n", "[813.6862861351653, 315.6412870005529, 203.91000173077484]\n", "1\n", "0.0\n", "here\n", "(((-2, 0, 1, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)))\n", "[411.7312852697779, 909.7762844043906, 299.9999999999999]\n", "((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "[411.7312852697779, 980.4487112686725, 299.9999999999999]\n", "[813.6862861351653, 315.6412870005529, 203.91000173077484]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "2\n", "-200.0\n", "here\n", "(((2, -1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)))\n", "[411.7312852697779, 980.4487112686725, 299.9999999999999]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "[611.7312852697779, 1180.4487112686725, 29.219092665487437]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "[813.6862861351653, 386.3137138648348, -266.87090560373764]\n", "0\n", "300.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 1, 1, 0), (0, 0, 0, 0)), ((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)))\n", "[611.7312852697779, 1180.4487112686725, 29.219092665487437]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "[-3.9100017307749795, 880.4487112686725, -270.78090733451256]\n", "[813.6862861351653, 386.3137138648348, -266.87090560373764]\n", "[498.04499913461245, 386.3137138648348, -266.87090560373764]\n", "0\n", "200.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 1, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)))\n", "[-3.9100017307749795, 880.4487112686725, -270.78090733451256]\n", "((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "[0.0, 680.4487112686725, -470.78090733451256]\n", "[498.04499913461245, 386.3137138648348, -266.87090560373764]\n", "[701.9550008653874, 386.3137138648348, -266.87090560373764]\n", "2\n", "100.0\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)))\n", "[0.0, 680.4487112686725, -470.78090733451256]\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1))\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0))\n", "[-100.0, 580.4487112686725, 11.731285269777914]\n", "[701.9550008653874, 386.3137138648348, -266.87090560373764]\n", "[701.9550008653874, 386.3137138648348, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)))\n", "[-100.0, 580.4487112686725, 11.731285269777914]\n", "((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "[-100.0, 664.91590473835, 11.731285269777914]\n", "[701.9550008653874, 386.3137138648348, 315.6412870005529]\n", "[701.9550008653874, 470.7809073345124, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)))\n", "[-100.0, 664.91590473835, 11.731285269777914]\n", "((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "[-100.0, 896.0899982692251, 11.731285269777914]\n", "[701.9550008653874, 470.7809073345124, 315.6412870005529]\n", "[701.9550008653874, 701.9550008653874, 315.6412870005529]\n", "1\n", "-100.0\n", "here\n", "(((3, 0, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)))\n", "[-100.0, 896.0899982692251, 11.731285269777914]\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0))\n", "[0.0, 27.264091800100005, 111.73128526977791]\n", "[701.9550008653874, 701.9550008653874, 315.6412870005529]\n", "[701.9550008653874, -266.87090560373764, 315.6412870005529]\n", "0\n", "0.0\n", "here\n", "(((3, 0, -1, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)))\n", "[0.0, 27.264091800100005, 111.73128526977791]\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0))\n", "[-231.17409353087504, 27.264091800100005, 111.73128526977791]\n", "[701.9550008653874, -266.87090560373764, 315.6412870005529]\n", "[470.7809073345124, -266.87090560373764, 315.6412870005529]\n", "2\n", "600.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)))\n", "[-231.17409353087504, 27.264091800100005, 111.73128526977791]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0))\n", "[-831.1740935308751, -572.7359081999, 9.776284404390367]\n", "[470.7809073345124, -266.87090560373764, 315.6412870005529]\n", "[470.7809073345124, -266.87090560373764, 813.6862861351653]\n", "2\n", "-400.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)))\n", "[-831.1740935308751, -572.7359081999, 9.776284404390367]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0))\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "[-431.1740935308751, -172.7359081999, -17.596287865940155]\n", "[470.7809073345124, -266.87090560373764, 813.6862861351653]\n", "[470.7809073345124, -266.87090560373764, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((2, -1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-431.1740935308751, -172.7359081999, -17.596287865940155]\n", "((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-431.1740935308751, -403.9100017307749, -17.596287865940155]\n", "[470.7809073345124, -266.87090560373764, 386.3137138648348]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, 0, -1)), ((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)))\n", "[-431.1740935308751, -403.9100017307749, -17.596287865940155]\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "[-431.1740935308751, -292.1787164609971, -17.596287865940155]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "[470.7809073345124, -386.31371386483477, 386.3137138648348]\n", "1\n", "0.0\n", "here\n", "(((-1, 1, 0, 0), (-2, 0, 1, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)))\n", "[-431.1740935308751, -292.1787164609971, -17.596287865940155]\n", "((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "[-431.1740935308751, -137.03909612703745, -17.596287865940155]\n", "[470.7809073345124, -386.31371386483477, 386.3137138648348]\n", "[470.7809073345124, -231.1740935308751, 386.3137138648348]\n", "2\n", "400.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)))\n", "[-431.1740935308751, -137.03909612703745, -17.596287865940155]\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0))\n", "[-831.1740935308751, -537.0390961270375, 9.776284404390367]\n", "[470.7809073345124, -231.1740935308751, 386.3137138648348]\n", "[470.7809073345124, -231.1740935308751, 813.6862861351653]\n", "1\n", "-600.0\n", "here\n", "(((-1, 1, 0, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)))\n", "[-831.1740935308751, -537.0390961270375, 9.776284404390367]\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0))\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0))\n", "[-231.1740935308751, 294.1349974038376, 609.7762844043904]\n", "[470.7809073345124, -231.1740935308751, 813.6862861351653]\n", "[470.7809073345124, 0.0, 813.6862861351653]\n", "2\n", "0.0\n", "here\n", "(((-1, 1, 0, 0), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-231.1740935308751, 294.1349974038376, 609.7762844043904]\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0))\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-231.1740935308751, 294.1349974038376, -1.1368683772161603e-13]\n", "[470.7809073345124, 0.0, 813.6862861351653]\n", "[470.7809073345124, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (1, 1, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-231.1740935308751, 294.1349974038376, -1.1368683772161603e-13]\n", "((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-231.1740935308751, 498.04499913461245, -1.1368683772161603e-13]\n", "[470.7809073345124, 0.0, 203.91000173077484]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-231.1740935308751, 498.04499913461245, -1.1368683772161603e-13]\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-5.684341886080802e-14, 498.04499913461245, -1.1368683772161603e-13]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[-5.684341886080802e-14, 498.04499913461245, -1.1368683772161603e-13]\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[-5.684341886080802e-14, 609.7762844043905, -1.1368683772161603e-13]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "[701.9550008653874, 315.6412870005529, 203.91000173077484]\n", "1\n", "100.0\n", "here\n", "(((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-5.684341886080802e-14, 609.7762844043905, -1.1368683772161603e-13]\n", "((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-100.00000000000006, -37.03909612703751, -100.00000000000011]\n", "[701.9550008653874, 315.6412870005529, 203.91000173077484]\n", "[701.9550008653874, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 0, 1), (2, 0, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-100.00000000000006, -37.03909612703751, -100.00000000000011]\n", "((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-303.91000173077504, -37.03909612703751, -100.00000000000011]\n", "[701.9550008653874, -231.1740935308751, 203.91000173077484]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "1\n", "-400.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-303.91000173077504, -37.03909612703751, -100.00000000000011]\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[96.08999826922496, 96.08999826922502, 299.9999999999999]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "[498.04499913461245, -498.04499913461257, 203.91000173077484]\n", "0\n", "0.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 0, 1), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[96.08999826922496, 96.08999826922502, 299.9999999999999]\n", "((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-15.641287000552666, 96.08999826922502, 299.9999999999999]\n", "[498.04499913461245, -498.04499913461257, 203.91000173077484]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "2\n", "500.0\n", "here\n", "(((-4, 1, 0, 1), (0, 0, 0, 0), (3, 0, -1, 0)), ((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-15.641287000552666, 96.08999826922502, 299.9999999999999]\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-515.6412870005527, -403.910001730775, -17.5962878659401]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "[386.3137138648348, -498.04499913461257, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((-4, 1, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-515.6412870005527, -403.910001730775, -17.5962878659401]\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-315.64128700055267, -203.91000173077498, -8.526512829121202e-14]\n", "[386.3137138648348, -498.04499913461257, 386.3137138648348]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-315.64128700055267, -203.91000173077498, -8.526512829121202e-14]\n", "((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-498.0449991346127, -203.91000173077498, -8.526512829121202e-14]\n", "[386.3137138648348, -498.04499913461257, 203.91000173077484]\n", "[203.91000173077484, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-498.0449991346127, -203.91000173077498, -8.526512829121202e-14]\n", "((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-701.9550008653875, -203.91000173077498, -8.526512829121202e-14]\n", "[203.91000173077484, -498.04499913461257, 203.91000173077484]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-701.9550008653875, -203.91000173077498, -8.526512829121202e-14]\n", "((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-813.6862861351653, -203.91000173077498, -8.526512829121202e-14]\n", "[0.0, -498.04499913461257, 203.91000173077484]\n", "[-111.73128526977777, -498.04499913461257, 203.91000173077484]\n", "2\n", "-200.0\n", "here\n", "(((-1, 1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)))\n", "[-813.6862861351653, -203.91000173077498, -8.526512829121202e-14]\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[-613.6862861351653, -3.9100017307749795, -3.9100017307749226]\n", "[-111.73128526977777, -498.04499913461257, 203.91000173077484]\n", "[-111.73128526977777, -498.04499913461257, 0.0]\n", "0\n", "200.0\n", "here\n", "(((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)))\n", "[-613.6862861351653, -3.9100017307749795, -3.9100017307749226]\n", "((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[-933.1290943962626, -203.91000173077498, -203.91000173077492]\n", "[-111.73128526977777, -498.04499913461257, 0.0]\n", "[-231.1740935308751, -498.04499913461257, 0.0]\n", "2\n", "-300.0\n", "here\n", "(((2, -1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)))\n", "[-933.1290943962626, -203.91000173077498, -203.91000173077492]\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[-633.1290943962626, 96.08999826922502, -15.641287000552666]\n", "[-231.1740935308751, -498.04499913461257, 0.0]\n", "[-231.1740935308751, -498.04499913461257, -111.73128526977777]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)))\n", "[-633.1290943962626, 96.08999826922502, -15.641287000552666]\n", "((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "[-633.1290943962626, 327.26409180009995, -15.641287000552666]\n", "[-231.1740935308751, -498.04499913461257, -111.73128526977777]\n", "[-231.1740935308751, -266.87090560373764, -111.73128526977777]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-633.1290943962626, 327.26409180009995, -15.641287000552666]\n", "((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0))\n", "((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-633.1290943962626, 207.82128353900282, -15.641287000552666]\n", "[-231.1740935308751, -266.87090560373764, -111.73128526977777]\n", "[-231.1740935308751, -386.31371386483477, -111.73128526977777]\n", "0\n", "500.0\n", "here\n", "(((-2, 0, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)))\n", "[-633.1290943962626, 207.82128353900282, -15.641287000552666]\n", "((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "[-1288.2687147302222, -292.1787164609972, -515.6412870005527]\n", "[-231.1740935308751, -386.31371386483477, -111.73128526977777]\n", "[-386.31371386483477, -386.31371386483477, -111.73128526977777]\n", "1\n", "None\n", "here\n", "(((-3, 2, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)))\n", "[-1288.2687147302222, -292.1787164609972, -515.6412870005527]\n", "((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0))\n", "[-1288.2687147302222, -137.0390961270375, -515.6412870005527]\n", "[-386.31371386483477, -386.31371386483477, -111.73128526977777]\n", "[-386.31371386483477, -231.1740935308751, -111.73128526977777]\n", "1\n", "0.0\n", "here\n", "(((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)))\n", "[-1288.2687147302222, -137.0390961270375, -515.6412870005527]\n", "((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0))\n", "[-1288.2687147302222, 94.13499740383759, -515.6412870005527]\n", "[-386.31371386483477, -231.1740935308751, -111.73128526977777]\n", "[-386.31371386483477, 0.0, -111.73128526977777]\n", "2\n", "-400.0\n", "here\n", "(((-4, 1, 1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[-1288.2687147302222, 94.13499740383759, -515.6412870005527]\n", "((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[-888.2687147302222, 494.1349974038376, -3.910001730774866]\n", "[-386.31371386483477, 0.0, -111.73128526977777]\n", "[-386.31371386483477, 0.0, 0.0]\n", "0\n", "200.0\n", "here\n", "(((-4, 1, 1, 0), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[-888.2687147302222, 494.1349974038376, -3.910001730774866]\n", "((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[-1200.0, 294.1349974038376, -203.91000173077487]\n", "[-386.31371386483477, 0.0, 0.0]\n", "[-498.04499913461257, 0.0, 0.0]\n", "2\n", "0.0\n", "here\n", "(((-3, 0, 0, 1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-1200.0, 294.1349974038376, -203.91000173077487]\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-1200.0, 294.1349974038376, -2.842170943040401e-14]\n", "[-498.04499913461257, 0.0, 0.0]\n", "[-498.04499913461257, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-1200.0, 294.1349974038376, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "[-1200.0, 182.40371213405982, -2.842170943040401e-14]\n", "[-498.04499913461257, 0.0, 203.91000173077484]\n", "[-498.04499913461257, -111.73128526977777, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (1, 1, 0, -1), (-4, 1, 1, 0)), ((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-1200.0, 182.40371213405982, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0))\n", "[-1200.0, 1382.4037121340598, -2.842170943040401e-14]\n", "[-498.04499913461257, -111.73128526977777, 203.91000173077484]\n", "[-498.04499913461257, 1088.2687147302222, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-1200.0, 1382.4037121340598, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "[-1200.0, 1262.9609038729625, -2.842170943040401e-14]\n", "[-498.04499913461257, 1088.2687147302222, 203.91000173077484]\n", "[-498.04499913461257, 968.8259064691249, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((2, 0, -1, 0), (2, 0, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)))\n", "[-1200.0, 1262.9609038729625, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0))\n", "[-1400.0, 1062.9609038729625, -17.59628786594004]\n", "[-498.04499913461257, 968.8259064691249, 203.91000173077484]\n", "[-498.04499913461257, 968.8259064691249, 386.3137138648348]\n", "1\n", "-200.0\n", "here\n", "(((2, 0, -1, 0), (-3, 0, 0, 1), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)))\n", "[-1400.0, 1062.9609038729625, -17.59628786594004]\n", "((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0))\n", "((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0))\n", "[-1200.0, 1107.821283539003, 182.40371213405996]\n", "[-498.04499913461257, 968.8259064691249, 386.3137138648348]\n", "[-498.04499913461257, 813.6862861351653, 386.3137138648348]\n", "1\n", "-200.0\n", "here\n", "(((2, 0, -1, 0), (0, 0, 0, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-1200.0, 1107.821283539003, 182.40371213405996]\n", "((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "[-1000.0, 1196.089998269225, 382.40371213405996]\n", "[-498.04499913461257, 813.6862861351653, 386.3137138648348]\n", "[-498.04499913461257, 701.9550008653874, 386.3137138648348]\n", "2\n", "200.0\n", "here\n", "(((2, 0, -1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-1000.0, 1196.089998269225, 382.40371213405996]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[-1200.0, 996.0899982692249, -2.842170943040401e-14]\n", "[-498.04499913461257, 701.9550008653874, 386.3137138648348]\n", "[-498.04499913461257, 701.9550008653874, 203.91000173077484]\n", "2\n", "500.0\n", "here\n", "(((-2, 1, 0, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)))\n", "[-1200.0, 996.0899982692249, -2.842170943040401e-14]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "[-1700.0, 496.0899982692249, -1.955000865387433]\n", "[-498.04499913461257, 701.9550008653874, 203.91000173077484]\n", "[-498.04499913461257, 701.9550008653874, 701.9550008653874]\n", "2\n", "100.0\n", "here\n", "(((-2, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)))\n", "[-1700.0, 496.0899982692249, -1.955000865387433]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "[-1800.0, 396.0899982692249, 9.77628440439048]\n", "[-498.04499913461257, 701.9550008653874, 701.9550008653874]\n", "[-498.04499913461257, 701.9550008653874, 813.6862861351653]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)))\n", "[-1800.0, 396.0899982692249, 9.77628440439048]\n", "((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0))\n", "[-1800.0, 164.91590473834987, 9.77628440439048]\n", "[-498.04499913461257, 701.9550008653874, 813.6862861351653]\n", "[-498.04499913461257, 470.7809073345124, 813.6862861351653]\n", "2\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-3, 1, 1, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)))\n", "[-1800.0, 164.91590473834987, 9.77628440439048]\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0))\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "[-1700.0, 264.91590473834987, -1.955000865387433]\n", "[-498.04499913461257, 470.7809073345124, 813.6862861351653]\n", "[-498.04499913461257, 470.7809073345124, 701.9550008653874]\n", "0\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)))\n", "[-1700.0, 264.91590473834987, -1.955000865387433]\n", "((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "[-1468.8259064691251, 264.91590473834987, -1.955000865387433]\n", "[-498.04499913461257, 470.7809073345124, 701.9550008653874]\n", "[-266.87090560373764, 470.7809073345124, 701.9550008653874]\n", "2\n", "-300.0\n", "here\n", "(((-2, 1, 0, 0), (-2, 0, 0, 1), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)))\n", "[-1468.8259064691251, 264.91590473834987, -1.955000865387433]\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0))\n", "[-1168.8259064691251, 564.9159047383498, -17.59628786594004]\n", "[-266.87090560373764, 470.7809073345124, 701.9550008653874]\n", "[-266.87090560373764, 470.7809073345124, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (3, 0, -1, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)))\n", "[-1168.8259064691251, 564.9159047383498, -17.59628786594004]\n", "((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0))\n", "((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "[-1168.8259064691251, 409.7762844043903, -17.59628786594004]\n", "[-266.87090560373764, 470.7809073345124, 386.3137138648348]\n", "[-266.87090560373764, 315.6412870005529, 386.3137138648348]\n", "0\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)))\n", "[-1168.8259064691251, 409.7762844043903, -17.59628786594004]\n", "((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "[-1013.6862861351652, 409.7762844043903, -17.59628786594004]\n", "[-266.87090560373764, 315.6412870005529, 386.3137138648348]\n", "[-111.73128526977777, 315.6412870005529, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)))\n", "[-1013.6862861351652, 409.7762844043903, -17.59628786594004]\n", "((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0))\n", "((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "[-1013.6862861351652, 480.44871126867224, -17.59628786594004]\n", "[-111.73128526977777, 315.6412870005529, 386.3137138648348]\n", "[-111.73128526977777, 386.3137138648348, 386.3137138648348]\n", "0\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)))\n", "[-1013.6862861351652, 480.44871126867224, -17.59628786594004]\n", "((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "[11.731285269777914, 580.4487112686722, 82.40371213405996]\n", "[-111.73128526977777, 386.3137138648348, 386.3137138648348]\n", "[813.6862861351653, 386.3137138648348, 386.3137138648348]\n", "2\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)))\n", "[11.731285269777914, 580.4487112686722, 82.40371213405996]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0))\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "[111.73128526977791, 680.4487112686722, -2.842170943040401e-14]\n", "[813.6862861351653, 386.3137138648348, 386.3137138648348]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "1\n", "100.0\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 0, 1), (3, 0, -1, 0)), ((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[111.73128526977791, 680.4487112686722, -2.842170943040401e-14]\n", "((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[11.731285269777914, -37.03909612703774, -100.00000000000003]\n", "[813.6862861351653, 386.3137138648348, 203.91000173077484]\n", "[813.6862861351653, -231.1740935308751, 203.91000173077484]\n", "1\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[11.731285269777914, -37.03909612703774, -100.00000000000003]\n", "((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[111.73128526977791, 27.26409180009972, -2.842170943040401e-14]\n", "[813.6862861351653, -231.1740935308751, 203.91000173077484]\n", "[813.6862861351653, -266.87090560373764, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 0, 1), (-1, 1, 0, 0)), ((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[111.73128526977791, 27.26409180009972, -2.842170943040401e-14]\n", "((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[0.0, 27.26409180009972, -2.842170943040401e-14]\n", "[813.6862861351653, -266.87090560373764, 203.91000173077484]\n", "[701.9550008653874, -266.87090560373764, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 0, 1), (-2, 0, 1, 0)), ((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[0.0, 27.26409180009972, -2.842170943040401e-14]\n", "((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[-203.91000173077498, 27.26409180009972, -2.842170943040401e-14]\n", "[701.9550008653874, -266.87090560373764, 203.91000173077484]\n", "[498.04499913461245, -266.87090560373764, 203.91000173077484]\n", "1\n", "0.0\n", "here\n", "(((1, 1, 0, -1), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-203.91000173077498, 27.26409180009972, -2.842170943040401e-14]\n", "((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-203.91000173077498, 62.96090387296226, -2.842170943040401e-14]\n", "[498.04499913461245, -266.87090560373764, 203.91000173077484]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-4, 1, 1, 0), (1, 1, -1, 0), (-2, 0, 1, 0)), ((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-203.91000173077498, 62.96090387296226, -2.842170943040401e-14]\n", "((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-386.31371386483454, 62.96090387296226, -2.842170943040401e-14]\n", "[498.04499913461245, -231.1740935308751, 203.91000173077484]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "0\n", "-300.0\n", "here\n", "(((-4, 1, 1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-386.31371386483454, 62.96090387296226, -2.842170943040401e-14]\n", "((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[68.82590646912496, 362.96090387296226, 300.0]\n", "[315.6412870005529, -231.1740935308751, 203.91000173077484]\n", "[470.7809073345124, -231.1740935308751, 203.91000173077484]\n", "1\n", "100.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (-2, 0, 1, 0)), ((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[68.82590646912496, 362.96090387296226, 300.0]\n", "((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[-31.17409353087504, -3.910001730775207, 200.0]\n", "[470.7809073345124, -231.1740935308751, 203.91000173077484]\n", "[470.7809073345124, -498.04499913461257, 203.91000173077484]\n", "2\n", "400.0\n", "here\n", "(((3, 0, -1, 0), (-2, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[-31.17409353087504, -3.910001730775207, 200.0]\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[-431.17409353087504, -403.9100017307752, -17.596287865939985]\n", "[470.7809073345124, -498.04499913461257, 203.91000173077484]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "1\n", "-500.0\n", "here\n", "(((3, 0, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)))\n", "[-431.17409353087504, -403.9100017307752, -17.596287865939985]\n", "((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0))\n", "[68.82590646912496, -135.0840952616503, 482.40371213406]\n", "[470.7809073345124, -498.04499913461257, 386.3137138648348]\n", "[470.7809073345124, -729.2190926654877, 386.3137138648348]\n", "2\n", "300.0\n", "here\n", "(((3, 0, -1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)))\n", "[68.82590646912496, -135.0840952616503, 482.40371213406]\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0))\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0))\n", "[-231.17409353087504, -435.0840952616503, 0.0]\n", "[470.7809073345124, -729.2190926654877, 386.3137138648348]\n", "[470.7809073345124, -729.2190926654877, 203.91000173077484]\n", "1\n", "-500.0\n", "here\n", "(((-1, 1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[-231.17409353087504, -435.0840952616503, 0.0]\n", "((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[268.82590646912496, -19.551288731327872, 500.0]\n", "[470.7809073345124, -729.2190926654877, 203.91000173077484]\n", "[470.7809073345124, -813.6862861351652, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, -1, 0, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[268.82590646912496, -19.551288731327872, 500.0]\n", "((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[29.21909266548755, -19.551288731327872, 500.0]\n", "[470.7809073345124, -813.6862861351652, 203.91000173077484]\n", "[231.17409353087498, -813.6862861351652, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, -1, 0, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[29.21909266548755, -19.551288731327872, 500.0]\n", "((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[184.3587129994474, -19.551288731327872, 500.0]\n", "[231.17409353087498, -813.6862861351652, 203.91000173077484]\n", "[386.3137138648348, -813.6862861351652, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)))\n", "[184.3587129994474, -19.551288731327872, 500.0]\n", "((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "[1.9550008653874045, -19.551288731327872, 500.0]\n", "[386.3137138648348, -813.6862861351652, 203.91000173077484]\n", "[203.91000173077484, -813.6862861351652, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)))\n", "[1.9550008653874045, -19.551288731327872, 500.0]\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0))\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "[-198.0449991346126, -219.55128873132787, -15.641287000552609]\n", "[203.91000173077484, -813.6862861351652, 203.91000173077484]\n", "[203.91000173077484, -813.6862861351652, -111.73128526977777]\n", "0\n", "500.0\n", "here\n", "(((-4, 1, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)))\n", "[-198.0449991346126, -219.55128873132787, -15.641287000552609]\n", "((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "[-901.9550008653874, -719.5512887313279, -515.6412870005527]\n", "[203.91000173077484, -813.6862861351652, -111.73128526977777]\n", "[0.0, -813.6862861351652, -111.73128526977777]\n", "2\n", "-400.0\n", "here\n", "(((-4, 1, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)))\n", "[-901.9550008653874, -719.5512887313279, -515.6412870005527]\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0))\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "[-501.95500086538743, -319.5512887313279, -3.910001730774866]\n", "[0.0, -813.6862861351652, -111.73128526977777]\n", "[0.0, -813.6862861351652, 0.0]\n", "0\n", "0.0\n", "here\n", "(((-4, 1, 0, 1), (-5, 1, 0, 1), (-2, 0, 1, 0)), ((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)))\n", "[-501.95500086538743, -319.5512887313279, -3.910001730774866]\n", "((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "[-733.1290943962625, -319.5512887313279, -3.910001730774866]\n", "[0.0, -813.6862861351652, 0.0]\n", "[-231.1740935308751, -813.6862861351652, 0.0]\n", "2\n", "500.0\n", "here\n", "(((-4, 1, 0, 1), (-5, 1, 0, 1), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)))\n", "[-733.1290943962625, -319.5512887313279, -3.910001730774866]\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0))\n", "[-1233.1290943962626, -819.5512887313279, -5.865002596162412]\n", "[-231.1740935308751, -813.6862861351652, 0.0]\n", "[-231.1740935308751, -813.6862861351652, 498.04499913461245]\n", "1\n", "None\n", "here\n", "(((-4, 1, 0, 1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)))\n", "[-1233.1290943962626, -819.5512887313279, -5.865002596162412]\n", "((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0))\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0))\n", "[-1233.1290943962626, -1001.9550008653878, -5.865002596162412]\n", "[-231.1740935308751, -813.6862861351652, 498.04499913461245]\n", "[-231.1740935308751, -996.0899982692251, 498.04499913461245]\n", "2\n", "-500.0\n", "here\n", "(((3, 0, 0, -1), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)))\n", "[-1233.1290943962626, -1001.9550008653878, -5.865002596162412]\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0))\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0))\n", "[-733.1290943962626, -501.9550008653878, -3.910001730774866]\n", "[-231.1740935308751, -996.0899982692251, 498.04499913461245]\n", "[-231.1740935308751, -996.0899982692251, 0.0]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)))\n", "[-733.1290943962626, -501.9550008653878, -3.910001730774866]\n", "((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0))\n", "[-733.1290943962626, -390.22371559560975, -3.910001730774866]\n", "[-231.1740935308751, -996.0899982692251, 0.0]\n", "[-231.1740935308751, -884.3587129994471, 0.0]\n", "1\n", "300.0\n", "here\n", "(((-3, 2, 0, 0), (-3, 0, 1, 0), (-3, 2, 0, 0)), ((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)))\n", "[-733.1290943962626, -390.22371559560975, -3.910001730774866]\n", "((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0))\n", "[-1033.1290943962626, -37.03909612703774, -303.91000173077487]\n", "[-231.1740935308751, -884.3587129994471, 0.0]\n", "[-231.1740935308751, -231.1740935308751, 0.0]\n", "2\n", "-100.0\n", "here\n", "(((-3, 2, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-1033.1290943962626, -37.03909612703774, -303.91000173077487]\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0))\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[-933.1290943962626, 62.96090387296226, -2.842170943040401e-14]\n", "[-231.1740935308751, -231.1740935308751, 0.0]\n", "[-231.1740935308751, -231.1740935308751, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((0, 0, 0, 0), (-3, 0, 1, 0), (-4, 1, 1, 0)), ((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-933.1290943962626, 62.96090387296226, -2.842170943040401e-14]\n", "((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-933.1290943962626, 294.13499740383736, -2.842170943040401e-14]\n", "[-231.1740935308751, -231.1740935308751, 203.91000173077484]\n", "[-231.1740935308751, 0.0, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((0, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-933.1290943962626, 294.13499740383736, -2.842170943040401e-14]\n", "((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-813.6862861351653, 294.13499740383736, -2.842170943040401e-14]\n", "[-231.1740935308751, 0.0, 203.91000173077484]\n", "[-111.73128526977777, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-813.6862861351653, 294.13499740383736, -2.842170943040401e-14]\n", "((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "[-813.6862861351653, 182.4037121340596, -2.842170943040401e-14]\n", "[-111.73128526977777, 0.0, 203.91000173077484]\n", "[-111.73128526977777, -111.73128526977777, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 1, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)))\n", "[-813.6862861351653, 182.4037121340596, -2.842170943040401e-14]\n", "((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "[-968.8259064691252, 182.4037121340596, -2.842170943040401e-14]\n", "[-111.73128526977777, -111.73128526977777, 203.91000173077484]\n", "[-266.87090560373764, -111.73128526977777, 203.91000173077484]\n", "2\n", "-300.0\n", "here\n", "(((-3, 0, 0, 1), (-4, 2, 0, 0), (2, -1, 0, 0)), ((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)))\n", "[-968.8259064691252, 182.4037121340596, -2.842170943040401e-14]\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0))\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "[-668.8259064691252, 482.40371213405956, -15.641287000552666]\n", "[-266.87090560373764, -111.73128526977777, 203.91000173077484]\n", "[-266.87090560373764, -111.73128526977777, -111.73128526977777]\n", "0\n", "None\n", "here\n", "(((-3, 0, 0, 1), (-4, 2, 0, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)))\n", "[-668.8259064691252, 482.40371213405956, -15.641287000552666]\n", "((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "[-900.0000000000002, 482.40371213405956, -15.641287000552666]\n", "[-266.87090560373764, -111.73128526977777, -111.73128526977777]\n", "[-498.04499913461257, -111.73128526977777, -111.73128526977777]\n", "1\n", "900.0\n", "here\n", "(((-3, 0, 0, 1), (0, 1, -1, 0), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)))\n", "[-900.0000000000002, 482.40371213405956, -15.641287000552666]\n", "((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0))\n", "((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "[-1800.0000000000002, 9.776284404390253, -915.6412870005527]\n", "[-498.04499913461257, -111.73128526977777, -111.73128526977777]\n", "[-498.04499913461257, 315.6412870005529, -111.73128526977777]\n", "0\n", "-400.0\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 0, 1), (0, 0, 0, 0)), ((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)))\n", "[-1800.0000000000002, 9.776284404390253, -915.6412870005527]\n", "((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "[-1288.2687147302224, 409.77628440439025, -515.6412870005527]\n", "[-498.04499913461257, 315.6412870005529, -111.73128526977777]\n", "[-386.31371386483477, 315.6412870005529, -111.73128526977777]\n", "1\n", "0.0\n", "here\n", "(((-3, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)))\n", "[-1288.2687147302224, 409.77628440439025, -515.6412870005527]\n", "((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0))\n", "((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "[-1288.2687147302224, 325.30909093471234, -515.6412870005527]\n", "[-386.31371386483477, 315.6412870005529, -111.73128526977777]\n", "[-386.31371386483477, 231.17409353087498, -111.73128526977777]\n", "0\n", "-100.0\n", "here\n", "(((-3, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)))\n", "[-1288.2687147302224, 325.30909093471234, -515.6412870005527]\n", "((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "[11.731285269777572, 425.30909093471234, -415.64128700055267]\n", "[-386.31371386483477, 231.17409353087498, -111.73128526977777]\n", "[813.6862861351653, 231.17409353087498, -111.73128526977777]\n", "2\n", "-100.0\n", "here\n", "(((-4, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)))\n", "[11.731285269777572, 425.30909093471234, -415.64128700055267]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0))\n", "[111.73128526977757, 525.3090909347123, -5.684341886080802e-14]\n", "[813.6862861351653, 231.17409353087498, -111.73128526977777]\n", "[813.6862861351653, 231.17409353087498, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((-4, 1, 1, 0), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)))\n", "[111.73128526977757, 525.3090909347123, -5.684341886080802e-14]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "[-88.26871473022243, 325.30909093471234, -17.59628786594007]\n", "[813.6862861351653, 231.17409353087498, 203.91000173077484]\n", "[813.6862861351653, 231.17409353087498, 386.3137138648348]\n", "2\n", "-100.0\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 1, 0), (-3, 2, 0, 0)), ((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)))\n", "[-88.26871473022243, 325.30909093471234, -17.59628786594007]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "[11.731285269777572, 425.30909093471234, 11.731285269777999]\n", "[813.6862861351653, 231.17409353087498, 386.3137138648348]\n", "[813.6862861351653, 231.17409353087498, 315.6412870005529]\n", "0\n", "None\n", "here\n", "(((1, 1, 0, -1), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)))\n", "[11.731285269777572, 425.30909093471234, 11.731285269777999]\n", "((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "[-100.00000000000034, 425.30909093471234, 11.731285269777999]\n", "[813.6862861351653, 231.17409353087498, 315.6412870005529]\n", "[701.9550008653874, 231.17409353087498, 315.6412870005529]\n", "1\n", "None\n", "here\n", "(((-2, 1, 0, 0), (-4, 1, 1, 0), (-4, 1, 1, 0)), ((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)))\n", "[-100.00000000000034, 425.30909093471234, 11.731285269777999]\n", "((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "[-100.00000000000034, 194.13499740383736, 11.731285269777999]\n", "[701.9550008653874, 231.17409353087498, 315.6412870005529]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "2\n", "-100.0\n", "here\n", "(((-2, 1, 0, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-100.00000000000034, 194.13499740383736, 11.731285269777999]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, 294.13499740383736, -5.684341886080802e-14]\n", "[701.9550008653874, 0.0, 315.6412870005529]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 0, -1, 0), (1, 1, -1, 0), (-4, 1, 1, 0)), ((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, 294.13499740383736, -5.684341886080802e-14]\n", "((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, 294.13499740383736, -5.684341886080802e-14]\n", "[701.9550008653874, 0.0, 203.91000173077484]\n", "[933.1290943962623, 0.0, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((2, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[231.17409353087453, 294.13499740383736, -5.684341886080802e-14]\n", "((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[231.17409353087453, 62.96090387296226, -5.684341886080802e-14]\n", "[933.1290943962623, 0.0, 203.91000173077484]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (-4, 1, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[231.17409353087453, 62.96090387296226, -5.684341886080802e-14]\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[386.3137138648344, 62.96090387296226, -5.684341886080802e-14]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "0\n", "0.0\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (-3, 2, 0, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[386.3137138648344, 62.96090387296226, -5.684341886080802e-14]\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[266.8709056037371, 62.96090387296226, -5.684341886080802e-14]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "[968.8259064691249, -231.1740935308751, 203.91000173077484]\n", "1\n", "600.0\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (-2, 0, 1, 0)), ((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)))\n", "[266.8709056037371, 62.96090387296226, -5.684341886080802e-14]\n", "((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "[-333.1290943962629, 9.776284404390253, -600.0]\n", "[968.8259064691249, -231.1740935308751, 203.91000173077484]\n", "[968.8259064691249, 315.6412870005529, 203.91000173077484]\n", "2\n", "-700.0\n", "here\n", "(((3, 0, -1, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)))\n", "[-333.1290943962629, 9.776284404390253, -600.0]\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "[366.8709056037371, 709.7762844043903, -103.91000173077487]\n", "[968.8259064691249, 315.6412870005529, 203.91000173077484]\n", "[968.8259064691249, 315.6412870005529, 0.0]\n", "1\n", "400.0\n", "here\n", "(((-1, 1, 0, 0), (3, 0, 0, -1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)))\n", "[366.8709056037371, 709.7762844043903, -103.91000173077487]\n", "((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0))\n", "[-33.12909439626287, 464.9159047383498, -503.91000173077487]\n", "[968.8259064691249, 315.6412870005529, 0.0]\n", "[968.8259064691249, 470.7809073345124, 0.0]\n", "2\n", "-200.0\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (1, 1, -1, 0)), ((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)))\n", "[-33.12909439626287, 464.9159047383498, -503.91000173077487]\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0))\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "[166.87090560373713, 664.9159047383498, 11.731285269778027]\n", "[968.8259064691249, 470.7809073345124, 0.0]\n", "[968.8259064691249, 470.7809073345124, 315.6412870005529]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)))\n", "[166.87090560373713, 664.9159047383498, 11.731285269778027]\n", "((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "[11.731285269777572, 664.9159047383498, 11.731285269778027]\n", "[968.8259064691249, 470.7809073345124, 315.6412870005529]\n", "[813.6862861351653, 470.7809073345124, 315.6412870005529]\n", "1\n", "-100.0\n", "here\n", "(((2, 1, 0, -1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)))\n", "[11.731285269777572, 664.9159047383498, 11.731285269778027]\n", "((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0))\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "[111.73128526977757, 996.0899982692249, 111.73128526977803]\n", "[813.6862861351653, 470.7809073345124, 315.6412870005529]\n", "[813.6862861351653, 701.9550008653874, 315.6412870005529]\n", "2\n", "0.0\n", "here\n", "(((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[111.73128526977757, 996.0899982692249, 111.73128526977803]\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0))\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[111.73128526977757, 996.0899982692249, -2.842170943040401e-14]\n", "[813.6862861351653, 701.9550008653874, 315.6412870005529]\n", "[813.6862861351653, 701.9550008653874, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[111.73128526977757, 996.0899982692249, -2.842170943040401e-14]\n", "((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, 996.0899982692249, -2.842170943040401e-14]\n", "[813.6862861351653, 701.9550008653874, 203.91000173077484]\n", "[701.9550008653874, 701.9550008653874, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-2, 0, 0, 1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, 996.0899982692249, -2.842170943040401e-14]\n", "((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[-203.91000173077532, 996.0899982692249, -2.842170943040401e-14]\n", "[701.9550008653874, 701.9550008653874, 203.91000173077484]\n", "[498.04499913461245, 701.9550008653874, 203.91000173077484]\n", "0\n", "-500.0\n", "here\n", "(((-2, 0, 0, 1), (1, 1, -1, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-203.91000173077532, 996.0899982692249, -2.842170943040401e-14]\n", "((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "[184.35871299944705, 1496.089998269225, 500.0]\n", "[498.04499913461245, 701.9550008653874, 203.91000173077484]\n", "[386.3137138648348, 701.9550008653874, 203.91000173077484]\n", "2\n", "700.0\n", "here\n", "(((-2, 0, 0, 1), (1, 1, -1, 0), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)))\n", "[184.35871299944705, 1496.089998269225, 500.0]\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "[-515.6412870005529, 796.0899982692249, -17.596287865939985]\n", "[386.3137138648348, 701.9550008653874, 203.91000173077484]\n", "[386.3137138648348, 701.9550008653874, 386.3137138648348]\n", "2\n", "-400.0\n", "here\n", "(((-2, 0, 0, 1), (-4, 1, 0, 1), (0, 0, 0, 0)), ((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)))\n", "[-515.6412870005529, 796.0899982692249, -17.596287865939985]\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "[-115.6412870005529, 1196.089998269225, -3.910001730774809]\n", "[386.3137138648348, 701.9550008653874, 386.3137138648348]\n", "[386.3137138648348, 701.9550008653874, 0.0]\n", "0\n", "300.0\n", "here\n", "(((-2, 0, 0, 1), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)))\n", "[-115.6412870005529, 1196.089998269225, -3.910001730774809]\n", "((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "[-486.3137138648348, 896.0899982692249, -303.9100017307748]\n", "[386.3137138648348, 701.9550008653874, 0.0]\n", "[315.6412870005529, 701.9550008653874, 0.0]\n", "2\n", "400.0\n", "here\n", "(((3, 0, -1, 0), (-4, 1, 0, 1), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)))\n", "[-486.3137138648348, 896.0899982692249, -303.9100017307748]\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0))\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "[-886.3137138648349, 496.0899982692249, -1.955000865387376]\n", "[315.6412870005529, 701.9550008653874, 0.0]\n", "[315.6412870005529, 701.9550008653874, 701.9550008653874]\n", "1\n", "None\n", "here\n", "(((3, 0, -1, 0), (-1, 1, 0, 0), (1, 1, -1, 0)), ((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)))\n", "[-886.3137138648349, 496.0899982692249, -1.955000865387376]\n", "((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0))\n", "[-886.3137138648349, 607.8212835390028, -1.955000865387376]\n", "[315.6412870005529, 701.9550008653874, 701.9550008653874]\n", "[315.6412870005529, 813.6862861351653, 701.9550008653874]\n", "1\n", "None\n", "here\n", "(((3, 0, -1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)))\n", "[-886.3137138648349, 607.8212835390028, -1.955000865387376]\n", "((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0))\n", "[-886.3137138648349, 727.2640918000998, -1.955000865387376]\n", "[315.6412870005529, 813.6862861351653, 701.9550008653874]\n", "[315.6412870005529, 933.1290943962623, 701.9550008653874]\n", "1\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)))\n", "[-886.3137138648349, 727.2640918000998, -1.955000865387376]\n", "((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0))\n", "[-886.3137138648349, 882.4037121340597, -1.955000865387376]\n", "[315.6412870005529, 933.1290943962623, 701.9550008653874]\n", "[315.6412870005529, 1088.2687147302222, 701.9550008653874]\n", "2\n", "-200.0\n", "here\n", "(((2, -1, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)))\n", "[-886.3137138648349, 882.4037121340597, -1.955000865387376]\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0))\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0))\n", "[-686.3137138648349, 1082.4037121340598, -5.8650025961623555]\n", "[315.6412870005529, 1088.2687147302222, 701.9550008653874]\n", "[315.6412870005529, 1088.2687147302222, 498.04499913461245]\n", "1\n", "-100.0\n", "here\n", "(((-2, 0, 1, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)))\n", "[-686.3137138648349, 1082.4037121340598, -5.8650025961623555]\n", "((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0))\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0))\n", "[-586.3137138648349, 1062.9609038729625, 94.13499740383764]\n", "[315.6412870005529, 1088.2687147302222, 498.04499913461245]\n", "[315.6412870005529, 968.8259064691249, 498.04499913461245]\n", "2\n", "-200.0\n", "here\n", "(((-2, 0, 1, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)))\n", "[-586.3137138648349, 1062.9609038729625, 94.13499740383764]\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0))\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "[-386.3137138648349, 1262.9609038729625, 5.684341886080802e-14]\n", "[315.6412870005529, 968.8259064691249, 498.04499913461245]\n", "[315.6412870005529, 968.8259064691249, 203.91000173077484]\n", "1\n", "0.0\n", "here\n", "(((-2, 0, 1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-386.3137138648349, 1262.9609038729625, 5.684341886080802e-14]\n", "((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "[315.6412870005529, 968.8259064691249, 203.91000173077484]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "2\n", "200.0\n", "here\n", "(((1, 1, -1, 0), (-1, 1, 0, 0), (0, 0, 0, 0)), ((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "[-586.3137138648349, 298.04499913461245, -17.596287865939956]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((1, 1, -1, 0), (-1, 1, 0, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-586.3137138648349, 298.04499913461245, -17.596287865939956]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0))\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "[315.6412870005529, 203.91000173077484, 386.3137138648348]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (3, 0, -1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-386.3137138648349, 498.04499913461245, 5.684341886080802e-14]\n", "((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-315.64128700055295, 498.04499913461245, 5.684341886080802e-14]\n", "[315.6412870005529, 203.91000173077484, 203.91000173077484]\n", "[386.3137138648348, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (2, 1, 0, -1), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-315.64128700055295, 498.04499913461245, 5.684341886080802e-14]\n", "((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-231.17409353087538, 498.04499913461245, 5.684341886080802e-14]\n", "[386.3137138648348, 203.91000173077484, 203.91000173077484]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 1, 1, 0), (-1, 1, 0, 0)), ((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-231.17409353087538, 498.04499913461245, 5.684341886080802e-14]\n", "((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, 498.04499913461245, 5.684341886080802e-14]\n", "[470.7809073345124, 203.91000173077484, 203.91000173077484]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "0\n", "300.0\n", "here\n", "(((1, 1, -1, 0), (-3, 1, 1, 0), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, 498.04499913461245, 5.684341886080802e-14]\n", "((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "[-33.12909439626287, 198.04499913461245, -299.99999999999994]\n", "[701.9550008653874, 203.91000173077484, 203.91000173077484]\n", "[968.8259064691249, 203.91000173077484, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (-2, 0, 0, 1), (2, -1, 0, 0)), ((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-33.12909439626287, 198.04499913461245, -299.99999999999994]\n", "((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-33.12909439626287, -5.865002596162384, -299.99999999999994]\n", "[968.8259064691249, 203.91000173077484, 203.91000173077484]\n", "[968.8259064691249, 0.0, 203.91000173077484]\n", "0\n", "200.0\n", "here\n", "(((1, 1, -1, 0), (-2, 0, 0, 1), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)))\n", "[-33.12909439626287, -5.865002596162384, -299.99999999999994]\n", "((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "[-113.68628613516557, -205.86500259616238, -499.99999999999994]\n", "[968.8259064691249, 0.0, 203.91000173077484]\n", "[1088.2687147302222, 0.0, 203.91000173077484]\n", "2\n", "-700.0\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[-113.68628613516557, -205.86500259616238, -499.99999999999994]\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[586.3137138648344, 494.1349974038376, -3.910001730774752]\n", "[1088.2687147302222, 0.0, 203.91000173077484]\n", "[1088.2687147302222, 0.0, 0.0]\n", "0\n", "800.0\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-2, 0, 1, 0)), ((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)))\n", "[586.3137138648344, 494.1349974038376, -3.910001730774752]\n", "((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0))\n", "[-368.82590646912547, -305.8650025961624, -803.9100017307748]\n", "[1088.2687147302222, 0.0, 0.0]\n", "[933.1290943962623, 0.0, 0.0]\n", "1\n", "None\n", "here\n", "(((1, 1, -1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)))\n", "[-368.82590646912547, -305.8650025961624, -803.9100017307748]\n", "((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0))\n", "[-368.82590646912547, -74.69090906528743, -803.9100017307748]\n", "[933.1290943962623, 0.0, 0.0]\n", "[933.1290943962623, 231.17409353087498, 0.0]\n", "1\n", "None\n", "here\n", "(((-2, 0, 1, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)))\n", "[-368.82590646912547, -74.69090906528743, -803.9100017307748]\n", "((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "[-368.82590646912547, 9.77628440439048, -803.9100017307748]\n", "[933.1290943962623, 231.17409353087498, 0.0]\n", "[933.1290943962623, 315.6412870005529, 0.0]\n", "1\n", "-800.0\n", "here\n", "(((-4, 1, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)))\n", "[-368.82590646912547, 9.77628440439048, -803.9100017307748]\n", "((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[431.17409353087453, -3.9100017307749795, -3.910001730774752]\n", "[933.1290943962623, 315.6412870005529, 0.0]\n", "[933.1290943962623, -498.04499913461257, 0.0]\n", "2\n", "-100.0\n", "here\n", "(((-1, 1, 0, 0), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)))\n", "[431.17409353087453, -3.9100017307749795, -3.910001730774752]\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "[531.1740935308745, 96.08999826922502, -15.641287000552524]\n", "[933.1290943962623, -498.04499913461257, 0.0]\n", "[933.1290943962623, -498.04499913461257, -111.73128526977777]\n", "2\n", "300.0\n", "here\n", "(((-2, 0, 0, 1), (-3, 2, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[531.1740935308745, 96.08999826922502, -15.641287000552524]\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0))\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -203.91000173077498, 1.1368683772161603e-13]\n", "[933.1290943962623, -498.04499913461257, -111.73128526977777]\n", "[933.1290943962623, -498.04499913461257, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-2, 0, 0, 1), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -203.91000173077498, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -407.82000346154996, 1.1368683772161603e-13]\n", "[933.1290943962623, -498.04499913461257, 203.91000173077484]\n", "[933.1290943962623, -701.9550008653875, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 1, 1, 0), (0, 0, 0, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -407.82000346154996, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -590.2237155956095, 1.1368683772161603e-13]\n", "[933.1290943962623, -701.9550008653875, 203.91000173077484]\n", "[933.1290943962623, -884.3587129994471, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((-3, 1, 1, 0), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -590.2237155956095, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "[231.17409353087453, -701.9550008653875, 1.1368683772161603e-13]\n", "[933.1290943962623, -884.3587129994471, 203.91000173077484]\n", "[933.1290943962623, -996.0899982692251, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 1, 0, -1), (0, 0, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)))\n", "[231.17409353087453, -701.9550008653875, 1.1368683772161603e-13]\n", "((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "[-3.410605131648481e-13, -701.9550008653875, 1.1368683772161603e-13]\n", "[933.1290943962623, -996.0899982692251, 203.91000173077484]\n", "[701.9550008653874, -996.0899982692251, 203.91000173077484]\n", "1\n", "-300.0\n", "here\n", "(((2, 1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)), ((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[-3.410605131648481e-13, -701.9550008653875, 1.1368683772161603e-13]\n", "((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0))\n", "((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[299.99999999999966, 96.08999826922502, 300.0000000000001]\n", "[701.9550008653874, -996.0899982692251, 203.91000173077484]\n", "[701.9550008653874, -498.04499913461257, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 1, 0, -1), (1, 1, -1, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[299.99999999999966, 96.08999826922502, 300.0000000000001]\n", "((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[411.7312852697776, 96.08999826922502, 300.0000000000001]\n", "[701.9550008653874, -498.04499913461257, 203.91000173077484]\n", "[813.6862861351653, -498.04499913461257, 203.91000173077484]\n", "0\n", "500.0\n", "here\n", "(((2, 1, 0, -1), (-2, 1, 0, 0), (0, 0, 0, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)))\n", "[411.7312852697776, 96.08999826922502, 300.0000000000001]\n", "((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "[66.87090560373713, -403.910001730775, -199.9999999999999]\n", "[813.6862861351653, -498.04499913461257, 203.91000173077484]\n", "[968.8259064691249, -498.04499913461257, 203.91000173077484]\n", "2\n", "0.0\n", "here\n", "(((2, 1, 0, -1), (-2, 1, 0, 0), (-4, 1, 1, 0)), ((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)))\n", "[66.87090560373713, -403.910001730775, -199.9999999999999]\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "[66.87090560373713, -403.910001730775, -17.5962878659399]\n", "[968.8259064691249, -498.04499913461257, 203.91000173077484]\n", "[968.8259064691249, -498.04499913461257, 386.3137138648348]\n", "1\n", "None\n", "here\n", "(((2, 1, 0, -1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)))\n", "[66.87090560373713, -403.910001730775, -17.5962878659399]\n", "((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0))\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "[66.87090560373713, -172.73590819990005, -17.5962878659399]\n", "[968.8259064691249, -498.04499913461257, 386.3137138648348]\n", "[968.8259064691249, -266.87090560373764, 386.3137138648348]\n", "2\n", "-200.0\n", "here\n", "(((2, 1, 0, -1), (1, -1, 0, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[66.87090560373713, -172.73590819990005, -17.5962878659399]\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0))\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[266.8709056037371, 27.264091800099948, 1.1368683772161603e-13]\n", "[968.8259064691249, -266.87090560373764, 386.3137138648348]\n", "[968.8259064691249, -266.87090560373764, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((2, 1, 0, -1), (0, 1, -1, 0), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)))\n", "[266.8709056037371, 27.264091800099948, 1.1368683772161603e-13]\n", "((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "[386.3137138648344, 27.264091800099948, 1.1368683772161603e-13]\n", "[968.8259064691249, -266.87090560373764, 203.91000173077484]\n", "[1088.2687147302222, -266.87090560373764, 203.91000173077484]\n", "1\n", "None\n", "here\n", "(((2, 1, 0, -1), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)))\n", "[386.3137138648344, 27.264091800099948, 1.1368683772161603e-13]\n", "((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "[386.3137138648344, -92.17871646099718, 1.1368683772161603e-13]\n", "[1088.2687147302222, -266.87090560373764, 203.91000173077484]\n", "[1088.2687147302222, -386.31371386483477, 203.91000173077484]\n", "1\n", "-200.0\n", "here\n", "(((-1, 1, 0, 0), (-4, 2, 0, 0), (-3, 2, 0, 0)), ((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[386.3137138648344, -92.17871646099718, 1.1368683772161603e-13]\n", "((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0))\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[586.3137138648344, 262.9609038729625, 200.0000000000001]\n", "[1088.2687147302222, -386.31371386483477, 203.91000173077484]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "0\n", "None\n", "here\n", "(((-1, 1, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)))\n", "[586.3137138648344, 262.9609038729625, 200.0000000000001]\n", "((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "[431.17409353087453, 262.9609038729625, 200.0000000000001]\n", "[1088.2687147302222, -231.1740935308751, 203.91000173077484]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "2\n", "300.0\n", "here\n", "(((3, 0, -1, 0), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0)))\n", "[431.17409353087453, 262.9609038729625, 200.0000000000001]\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0))\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0))\n", "[131.17409353087453, -37.03909612703751, 11.731285269778141]\n", "[933.1290943962623, -231.1740935308751, 203.91000173077484]\n", "[933.1290943962623, -231.1740935308751, 315.6412870005529]\n", "0\n", "None\n", "here\n", "(((-2, 0, 0, 1), (-2, 1, 0, 0), (-3, 2, 0, 0)), ((-2, 0, 0, 1), (-2, 1, 0, 0), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-2, 0, 1, 0)), ((-2, 0, 0, 1), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (1, 1, 0, -1), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (2, 0, -1, 0), (-3, 2, 0, 0)), ((-3, 1, 1, 0), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (-3, 2, 0, 0)), ((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0)), ((-1, 1, 0, 0), (-3, 0, 0, 1), (1, 1, -1, 0)))\n", "[131.17409353087453, -37.03909612703751, 11.731285269778141]\n", "((2, 1, 0, -1), (-3, 0, 0, 1), (1, 1, -1, 0))\n", "((-1, 1, 0, 0), (-3, 0, 0, 1), (1, 1, -1, 0))\n", "[-100.00000000000034, -37.03909612703751, 11.731285269778141]\n", "[933.1290943962623, -231.1740935308751, 315.6412870005529]\n", "[701.9550008653874, -231.1740935308751, 315.6412870005529]\n" ] } ], "source": [ "seed(19541116)\n", "factors = []\n", "dims = (2, 3, 5, 7)\n", "root = (0, 0, 0, 0)\n", "start_chord = ((0, 0, 0, 0), (-2, 1, 0, 0), (-3, 2, 0, 0))\n", "path = stochastic_hamiltonian(start_chord)\n", "#durs = tuple(round(y[0]-x[0], 2) for (x, y) in pairwise(target_melody_data)) + ((1,))\n", "durs = tuple(d[0] for d in target_melody_data)\n", "#path_to_chords(path, root)\n", "write_chord_sequence(list(zip(durs, path_to_chords(path, root))), \"breysheet.txt\")" ] }, { "cell_type": "markdown", "id": "fe46a139-9c18-4e18-98d2-5b34a2ffb6ee", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## graph based approach" ] }, { "cell_type": "markdown", "id": "046e48b9-7f25-4833-b0d9-c53963d164f4", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "### path functions" ] }, { "cell_type": "code", "execution_count": 379, "id": "b0d17cc2-a181-4212-aba5-72b90cab2a84", "metadata": {}, "outputs": [], "source": [ "from random import choice, choices\n", "\n", "# This is for the beginning / breysheet\n", "def stochastic_hamiltonian(graph):\n", "\n", " #try making this omit the moving voice\n", " def movement_size_weights(edges):\n", " \n", " def max_cent_diff(edge):\n", " res = max([abs(v) for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None])\n", " return res\n", " \n", " def min_cent_diff(edge):\n", " res = [abs(v) for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " res.remove(0)\n", " return min(res)\n", " \n", " for e in edges:\n", " yield 4 if ((max_cent_diff(e) < 300) and (min_cent_diff(e)) >= 0) else 1\n", "\n", " def hamiltonian_weights(edges):\n", " for e in edges:\n", " yield 10 if e[1] not in [path_edge[0] for path_edge in path] else 1 / graph.nodes[e[1]]['count']\n", " \n", " def contrary_motion_weights(edges):\n", "\n", " def is_contrary(edge):\n", " cent_diffs = [v for val in edge[2]['movements'].values() if (v:=val['cent_difference']) is not None]\n", " cent_diffs.sort()\n", " return (cent_diffs[0] < 0) and (cent_diffs[1] == 0) and (cent_diffs[2] > 0)\n", "\n", " for e in edges:\n", " yield 2 if is_contrary(e) else 1\n", " \n", " def is_directly_tunable_weights(edges):\n", " for e in edges:\n", " yield 10 if e[2]['is_directly_tunable'] else 1\n", "\n", " def symdiff_weights(edges):\n", " for e in edges:\n", " yield 1000 if e[2]['symmetric_difference'] == 2 else 1\n", "\n", " def transposition_weight(edges):\n", " for e in edges:\n", " yield 100 if 0 <= hs_array_to_cents(e[2]['transposition']) < 100 else 1\n", "\n", " def is_sustained_voice(edges, voice):\n", " \n", " def is_sustained(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " return ordered_source[voice] == ordered_destination[voice]\n", "\n", " for e in edges:\n", " yield 10 if is_sustained(e) else 1\n", "\n", " def voice_crossing_weights(edges):\n", " \n", " def has_voice_crossing(edge):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " source_order = [ordered_source.index(p) for p in source]\n", " destination = [transpose_pitch(edge[2]['movements'][p]['destination'], edge[2]['transposition']) for p in source]\n", " ordered_destination = sorted(destination, key=hs_array_to_fr)\n", " destination_order = [ordered_destination.index(p) for p in destination]\n", " return source_order != destination_order\n", "\n", " for e in edges:\n", " yield 10 if not has_voice_crossing(e) else 0\n", "\n", " def is_bass_rooted(chord):\n", " return max([sum(abs(p) for p in collapse_pitch(pitch_difference(chord[0], p))) for p in chord[1:]]) == 1\n", "\n", " def target_melody_weights(edges, target, c_devs, voice):\n", "\n", " def target_weight(edge, target, c_devs, voice):\n", " candidate_diffs = []\n", " for idx, dev in enumerate(c_devs):\n", " if(idx == voice):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " candidate_diff = edge[2]['movements'][ordered_source[idx]]['cent_difference']\n", " candidate_diffs += [abs(dev + candidate_diff - target)]\n", " #return 1/pow(1.1, min(candidate_diffs))\n", " return 10 if min(candidate_diffs) < 40 else 1/pow(1.1, min(candidate_diffs))\n", " \n", " for e in edges:\n", " yield target_weight(e, target, c_devs, voice)\n", " \n", " check_graph = graph.copy()\n", " next_node = choice(list(graph.nodes()))\n", " check_graph.remove_node(next_node)\n", " for node in graph.nodes(data=True):\n", " node[1]['count'] = 1\n", " path = []\n", " s_next_node = sorted(next_node, key=hs_array_to_fr)\n", " c_devs = (cent_difference(s_next_node[2], s_next_node[0]), cent_difference(s_next_node[2], s_next_node[1]), 0,)\n", " #c_devs = (0, cent_difference(s_next_node[0], s_next_node[1]), cent_difference(s_next_node[0], s_next_node[2]),)\n", " print(c_devs)\n", " while (nx.number_of_nodes(check_graph) > 0) and (len(path) < len(target_melody_data)-1):\n", " out_edges = list(graph.out_edges(next_node, data=True))\n", " factors = [\n", " movement_size_weights(out_edges), \n", " #hamiltonian_weights(out_edges), \n", " #contrary_motion_weights(out_edges), \n", " #is_directly_tunable_weights(out_edges),\n", " voice_crossing_weights(out_edges),\n", " #transposition_weight(out_edges),\n", " #is_sustained_voice(out_edges, 0),\n", " target_melody_weights(out_edges, target_melody_data[len(path)+1][-1], c_devs, 2),\n", " #symdiff_weights(out_edges)\n", " ]\n", " weights = [prod(a) for a in zip(*factors)]\n", " edge = choices(out_edges, weights=weights)[0]\n", " next_node = edge[1]\n", " node[1]['count'] += 1\n", " path.append(edge)\n", " s_chord = tuple(sorted(edge[0], key=hs_array_to_fr))\n", " c_devs = tuple(c_devs[pdx] + edge[2]['movements'][pitch]['cent_difference'] - target_melody_data[len(path)][-1] for pdx, pitch in enumerate(s_chord))\n", " print(s_chord)\n", " print(c_devs)\n", " print(target_melody_data[len(path)][-1])\n", " if next_node in check_graph.nodes:\n", " check_graph.remove_node(next_node)\n", " return path" ] }, { "cell_type": "markdown", "id": "5e4318db-bd43-434a-8c27-5a110e0bd6c4", "metadata": {}, "source": [ "### model" ] }, { "cell_type": "code", "execution_count": 374, "id": "a8592bc9-7e9e-4b6a-9eaa-4c4e3b69ce91", "metadata": {}, "outputs": [], "source": [ "dims = (2, 3, 5, 7)\n", "root = (0, 0, 0, 0)\n", "chord = (root,)\n", "chord_set = chords(chord, root, 3, 3)\n", "graph = generate_graph(chord_set, 2, 2, 3)" ] }, { "cell_type": "code", "execution_count": 380, "id": "be01e4ae-e629-42ff-9d95-f77d510c13bf", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "(-701.9550008653874, -386.31371386483454, 0)\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-901.9550008653874, -586.3137138648345, -88.26871473022209)\n", "200.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-701.9550008653874, -386.31371386483454, 0.0)\n", "-200.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-313.68628613516523, 113.68628613516546, 500.0)\n", "-500.0\n", "((0, 0, 0, 0), (5, 0, -2, 0), (3, 0, -1, 0))\n", "(-184.35871299944722, 313.68628613516546, 700.0)\n", "-200.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (0, -1, 1, 0))\n", "(-684.3587129994472, -186.31371386483454, 17.5962878659401)\n", "500.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (-1, 1, 0, 0))\n", "(-584.3587129994472, -268.7174259988941, 117.5962878659401)\n", "-100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(3.9100017307749795, 431.2825740011059, 817.5962878659401)\n", "-700.0\n", "((0, 0, 0, 0), (5, 0, -2, 0), (3, 0, -1, 0))\n", "(400.10848047023035, 631.2825740011059, 1017.5962878659401)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (1, 0, 1, -1))\n", "(-796.089998269225, -368.7174259988941, 17.5962878659401)\n", "1000.0\n", "((0, 0, 0, 0), (5, 0, -2, 0), (3, 0, -1, 0))\n", "(-166.762425133507, 331.2825740011059, 717.5962878659401)\n", "-700.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (0, -1, 1, 0))\n", "(-1066.762425133507, -568.7174259988941, -70.6724268642821)\n", "900.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-66.7624251335069, 431.2825740011059, 635.1925757318802)\n", "-1000.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (-1, 1, 0, 0))\n", "(-1166.762425133507, -668.7174259988941, -170.6724268642821)\n", "1100.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-884.3587129994469, -568.7174259988941, -70.6724268642821)\n", "-100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(15.64128700055312, 331.2825740011059, 717.59628786594)\n", "-900.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-684.3587129994469, -186.31371386483454, 17.596287865939985)\n", "700.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (-1, 1, 0, 0))\n", "(-584.3587129994469, -113.5778056649346, 117.59628786593998)\n", "-100.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "(284.467193469678, 986.4221943350653, 1217.59628786594)\n", "-1100.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (2, 1, 0, -1))\n", "(-415.532806530322, 286.42219433506534, 398.15347960484314)\n", "700.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(384.467193469678, 811.8397657400083, 1198.1534796048431)\n", "-800.0\n", "((0, 0, 0, 0), (5, 0, -2, 0), (3, 0, -1, 0))\n", "(-1115.532806530322, -729.2190926654873, -301.84652039515686)\n", "1500.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-515.532806530322, -129.21909266548732, -17.48780739570975)\n", "-600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-415.532806530322, -303.8015212605444, 82.51219260429025)\n", "-100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (2, -1, 0, 0))\n", "(-1315.532806530322, -1203.8015212605444, -501.84652039515686)\n", "900.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (3, 0, -1, 0))\n", "(-1115.532806530322, -799.8915195297693, -301.84652039515686)\n", "-200.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-215.53280653032198, 100.10848047023069, 486.4221943350652)\n", "-900.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-227.26409180009978, 200.1084804702307, 586.4221943350652)\n", "-100.0\n", "((0, 0, 0, 0), (5, 0, -2, 0), (3, 0, -1, 0))\n", "(172.73590819990022, 755.2481008041905, 986.4221943350652)\n", "-400.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (3, 0, -1, 0))\n", "(-1327.2640918000998, -744.7518991958095, -358.4381853309751)\n", "1500.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1))\n", "(-731.0656130606444, -344.75189919580953, 41.5618146690249)\n", "-400.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0))\n", "(-331.0656130606444, 55.24810080419047, 166.9793860739677)\n", "-400.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(168.9343869393556, 435.80529254309295, 666.9793860739677)\n", "-500.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (2, -1, 0, 0))\n", "(-1077.8809935920724, -264.19470745690705, -33.0206139260323)\n", "700.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (6, 0, -1, -1))\n", "(-1701.8465203951573, -964.194707456907, -733.0206139260323)\n", "700.0\n", "((0, 0, 0, 0), (-5, 0, 0, 2), (-2, 0, 0, 1))\n", "(-246.70690006119753, 335.80529254309295, 566.9793860739677)\n", "-1300.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (3, 0, -1, 0))\n", "(-146.70690006119753, 168.9343869393556, 666.9793860739677)\n", "-100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-646.7069000611975, -331.0656130606444, 55.24810080418979)\n", "500.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-1346.7069000611975, -1031.0656130606444, -533.0206139260323)\n", "700.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-1217.3793269254795, -831.0656130606444, -333.0206139260323)\n", "-200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (0, -1, 1, 0))\n", "(-817.3793269254795, -431.0656130606444, -3.693040790314285)\n", "-400.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-1517.3793269254795, -1131.0656130606444, -429.11061219525743)\n", "700.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-1617.3793269254795, -915.4243260600917, -529.1106121952574)\n", "100.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0))\n", "(-17.379326925479518, 684.5756739399083, 796.3069592096857)\n", "-1600.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(-1517.3793269254795, -815.4243260600917, -429.11061219525754)\n", "1500.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0))\n", "(82.62067307452048, 784.5756739399083, 896.3069592096856)\n", "-1600.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(-417.3793269254795, 80.66567220913328, 396.3069592096856)\n", "500.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (3, 0, -1, 0))\n", "(-1417.3793269254795, -919.3343277908667, -421.2893286562546)\n", "1000.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-1223.244329521642, -1019.3343277908667, -521.2893286562546)\n", "100.0\n", "((0, 0, 0, 0), (-3, 2, 0, 0), (-1, 1, 0, 0))\n", "(-1234.9756147914197, -919.3343277908667, -421.2893286562546)\n", "-100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-1034.9756147914197, -803.8015212605446, -221.2893286562546)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (3, 0, -1, 0))\n", "(-934.9756147914197, -703.8015212605446, -1.846520395157654)\n", "-100.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (2, 1, 0, -1))\n", "(-734.9756147914197, -503.80152126054463, -33.020613926032524)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-1, 1, 0, 0))\n", "(-734.9756147914197, -419.3343277908667, -33.020613926032524)\n", "0.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-301.8465203951573, 280.6656722091333, 666.9793860739675)\n", "-700.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1))\n", "(-801.8465203951573, -219.33432779086672, 11.83976574000792)\n", "500.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (3, 0, -1, 0))\n", "(-517.3793269254793, -19.334327790866723, 211.83976574000792)\n", "-200.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (5, -1, 0, -1))\n", "(-1417.3793269254793, -919.3343277908667, -421.2893286562545)\n", "900.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-1490.115235125379, -1019.3343277908667, -521.2893286562545)\n", "100.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-2, 0, 0, 1))\n", "(-390.11523512537906, 80.66567220913328, 311.83976574000803)\n", "-1100.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "(-1690.115235125379, -1219.3343277908666, -721.2893286562545)\n", "1300.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-2, 0, 0, 1))\n", "(-1890.115235125379, -1152.463422187129, -921.2893286562545)\n", "200.0\n", "((0, 0, 0, 0), (-5, 0, 0, 2), (-2, 0, 0, 1))\n", "(-1519.3343277908666, -1252.463422187129, -1021.2893286562545)\n", "100.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (2, -1, 0, 0))\n", "(-34.9756147914195, 547.536577812871, 778.7106713437455)\n", "-1800.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (3, 0, -1, 0))\n", "(-1434.9756147914195, -852.463422187129, -466.14970832229494)\n", "1400.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1))\n", "(-634.9756147914195, -52.46342218712903, 178.7106713437455)\n", "-800.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (3, 0, -1, 0))\n", "(-538.777136051964, -152.46342218712903, 78.7106713437455)\n", "100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (1, 0, 1, -1))\n", "(-438.777136051964, -52.46342218712903, 59.26786308264832)\n", "-100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-338.777136051964, -71.90623044822655, 159.26786308264832)\n", "-100.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (2, -1, 0, 0))\n", "(-1638.7771360519641, -1371.9062304482266, -669.9512295828392)\n", "1300.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1))\n", "(-1438.7771360519641, -1052.463422187129, -469.95122958283923)\n", "-200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1))\n", "(-1338.7771360519641, -952.463422187129, -250.50842132174193)\n", "-100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-438.77713605196413, -52.46342218712903, 59.26786308264832)\n", "-900.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-1038.7771360519641, -652.463422187129, 49.491578678258065)\n", "600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-338.77713605196413, 47.53657781287097, 159.26786308264832)\n", "-700.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-138.77713605196413, 92.39695747891113, 359.2678630826483)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (2, -1, 0, 0))\n", "(61.222863948035865, 292.39695747891113, 447.5365778128707)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "(-38.777136051964135, 116.3624842819959, 347.5365778128707)\n", "100.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 1, 0))\n", "(-421.2893286562545, 316.3624842819959, 547.5365778128707)\n", "-200.0\n", "((0, 0, 0, 0), (-5, 0, 0, 2), (-2, 0, 0, 1))\n", "(-121.2893286562545, 461.2228639480362, 847.5365778128707)\n", "-300.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1))\n", "(-1821.2893286562544, -1007.6030425210887, -852.4634221871293)\n", "1700.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (-2, 0, 0, 1))\n", "(-1621.2893286562544, -807.6030425210887, -576.4289489902139)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (6, 0, -1, -1))\n", "(-921.2893286562544, -107.6030425210887, 47.536577812870746)\n", "-700.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (-2, 0, 0, 1))\n", "(-1021.2893286562544, -207.6030425210887, 23.57105100978606)\n", "100.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (6, 0, -1, -1))\n", "(-621.2893286562544, 192.3969574789113, 347.53657781287075)\n", "-400.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (-2, 0, 0, 1))\n", "(-1221.2893286562544, -407.6030425210887, -176.42894899021394)\n", "600.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (6, 0, -1, -1))\n", "(-1078.3839498556015, -607.6030425210887, -376.42894899021394)\n", "200.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "(-1078.3839498556015, -607.6030425210887, -109.55804338647647)\n", "0.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-2, 0, 0, 1))\n", "(-1178.3839498556015, -440.73213691735117, -209.55804338647647)\n", "100.0\n", "((0, 0, 0, 0), (-5, 0, 0, 2), (-2, 0, 0, 1))\n", "(-627.0458507821862, -240.73213691735117, -9.55804338647647)\n", "-200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (1, 0, 1, -1))\n", "(272.9541492178138, 659.2678630826488, 770.9991483524263)\n", "-900.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-427.0458507821862, -160.17494517844875, 70.99914835242635)\n", "700.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (2, -1, 0, 0))\n", "(472.9541492178138, 859.2678630826488, 970.9991483524263)\n", "-900.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-727.0458507821862, -340.7321369173512, -25.09084991679856)\n", "1200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-1, 1, 0, 0))\n", "(-927.0458507821862, -540.7321369173512, -42.68713778273866)\n", "200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (0, -1, 1, 0))\n", "(-827.0458507821862, -440.7321369173512, -13.359564647020647)\n", "-100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-827.0458507821862, -329.0008516475736, -13.359564647020647)\n", "0.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (3, 0, -1, 0))\n", "(-1027.0458507821863, -529.0008516475737, -30.95585251296086)\n", "200.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-944.6421386481263, -629.0008516475737, -130.95585251296086)\n", "100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-444.6421386481263, -129.00085164757365, 257.3128622172612)\n", "-500.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-611.5130442518639, -29.000851647573654, 357.3128622172612)\n", "-100.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1))\n", "(-311.5130442518639, 270.99914835242635, 502.17324188330167)\n", "-300.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (3, 0, -1, 0))\n", "(-1011.5130442518639, -429.00085164757365, -42.68713778273877)\n", "700.0\n", "((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1))\n", "(-1411.513044251864, -940.7321369173515, -442.6871377827388)\n", "400.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-2, 0, 0, 1))\n", "(-1527.045850782186, -1140.7321369173515, -642.6871377827388)\n", "200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (0, -1, 1, 0))\n", "(-1427.045850782186, -1040.7321369173515, -338.7771360519639)\n", "-100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(172.9541492178139, 559.2678630826485, 670.9991483524263)\n", "-1600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(72.95414921781389, 184.68543448759146, 570.9991483524263)\n", "100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (2, -1, 0, 0))\n", "(-30.95585251296106, 284.68543448759146, 670.9991483524263)\n", "-100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-1730.955852512961, -1415.3145655124085, -917.2695663777957)\n", "1700.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-1813.359564647021, -1315.3145655124085, -817.2695663777957)\n", "-100.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-1401.6282793772432, -1015.3145655124085, -517.2695663777957)\n", "-300.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (0, -1, 1, 0))\n", "(-1.6282793772431887, 384.68543448759146, 496.4167197573694)\n", "-1400.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-1201.6282793772432, -815.3145655124085, -113.35956464702076)\n", "1200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-701.6282793772432, -315.31456551240854, 0.32672148814447155)\n", "-500.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-1, 1, 0, 0))\n", "(-101.62827937724319, 284.68543448759146, 396.4167197573695)\n", "-600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-1.6282793772431887, 110.10300589253438, 496.4167197573695)\n", "-100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (2, -1, 0, 0))\n", "(-776.2107079723003, -389.8969941074656, -3.583280242630508)\n", "500.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0))\n", "(-76.21070797230027, 310.1030058925344, 421.8342911623123)\n", "-700.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-291.851994972853, 410.1030058925344, 521.8342911623123)\n", "-100.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(-91.85199497285299, 335.52057729747736, 721.8342911623123)\n", "-200.0\n", "((0, 0, 0, 0), (5, 0, -2, 0), (3, 0, -1, 0))\n", "(-1991.851994972853, -1289.8969941074656, -1178.1657088376878)\n", "1900.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(-1791.851994972853, -1089.8969941074656, -703.583280242631)\n", "-200.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0))\n", "(-891.8519949728529, -189.89699410746562, 41.27709942340914)\n", "-900.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (2, 1, 0, -1))\n", "(-791.8519949728529, -89.89699410746562, 21.834291162312184)\n", "-100.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(-591.8519949728529, -276.21070797230016, 221.83429116231218)\n", "-200.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-691.8519949728529, -376.21070797230016, 10.10300589253427)\n", "100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-1491.851994972853, -1176.2107079723, -678.1657088376878)\n", "800.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-891.8519949728529, -505.53828110801805, -78.16570883768782)\n", "-600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-1591.851994972853, -1205.538281108018, -503.58328024263096)\n", "700.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-817.2695663777959, -705.538281108018, -3.5832802426309627)\n", "-500.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (3, 0, -1, 0))\n", "(-1017.2695663777959, -630.955852512961, -203.58328024263096)\n", "200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-1717.2695663777959, -1330.955852512961, -629.0008516475741)\n", "700.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-1817.2695663777959, -1115.3145655124083, -729.0008516475741)\n", "100.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0))\n", "(-1113.359564647021, -615.3145655124083, -229.0008516475741)\n", "-500.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (0, -1, 1, 0))\n", "(-513.359564647021, -15.314565512408308, 215.8595280184661)\n", "-600.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (5, -1, 0, -1))\n", "(-652.9663784506586, 84.68543448759169, 315.8595280184661)\n", "-100.0\n", "((0, 0, 0, 0), (-5, 0, 0, 2), (-2, 0, 0, 1))\n", "(-1052.9663784506586, -786.095472846921, -84.14047198153389)\n", "400.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1))\n", "(-697.8267581166988, -586.095472846921, 115.85952801846611)\n", "-200.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (3, 0, -1, 0))\n", "(-797.8267581166988, -566.6526645858237, 15.859528018466108)\n", "100.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (3, 0, -1, 0))\n", "(-697.8267581166988, -466.6526645858237, 4.128242748688194)\n", "-100.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-1, 1, 0, 0))\n", "(-397.8267581166988, -166.6526645858237, -11.513044251864414)\n", "-300.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "(-1097.8267581166988, -866.6526645858237, -52.96637845065902)\n", "700.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (6, 0, -1, -1))\n", "(-1221.7922849197837, -1066.6526645858237, -252.96637845065902)\n", "200.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 0, 1))\n", "(-1121.7922849197837, -854.9213793160461, -152.96637845065902)\n", "-100.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1))\n", "(-1021.7922849197837, -790.6181913889084, -52.96637845065902)\n", "-100.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 0, 1))\n", "(-1221.7922849197837, -990.6181913889084, -176.9319052537437)\n", "200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (6, 0, -1, -1))\n", "(-1245.7578117228686, -1090.6181913889084, -276.9319052537437)\n", "100.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 0, 1))\n", "(-1421.7922849197837, -1190.6181913889084, -376.9319052537437)\n", "100.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (6, 0, -1, -1))\n", "(-1121.7922849197837, -308.105998784618, -76.93190525374371)\n", "-300.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (6, 0, -1, -1))\n", "(-1210.060999650006, -508.105998784618, -276.9319052537437)\n", "200.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (2, 1, 0, -1))\n", "(-710.0609996500059, -8.10599878461801, 103.62528648515934)\n", "-500.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(-1410.060999650006, -708.105998784618, -321.7922849197838)\n", "700.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0))\n", "(-510.0609996500059, 191.894001215382, 303.62528648515934)\n", "-900.0\n", "((0, 0, 0, 0), (-1, 1, 0, 0), (3, 0, -1, 0))\n", "(-610.0609996500059, -498.32971438022764, 203.62528648515934)\n", "100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (3, 0, -1, 0))\n", "(-1210.060999650006, -823.7472857851706, -396.37471351484066)\n", "600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-410.0609996500059, -23.74728578517056, 87.98399948460644)\n", "-800.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-310.0609996500059, -43.19009404626809, 187.98399948460644)\n", "-100.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (2, -1, 0, 0))\n", "(-241.23509318088088, 256.8099059537319, 487.98399948460644)\n", "-300.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (5, -1, 0, -1))\n", "(-1241.235093180881, -743.1900940462681, -245.14509491165597)\n", "1000.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-1229.5038079111032, -843.1900940462681, -345.145094911656)\n", "100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (0, -1, 1, 0))\n", "(-1429.5038079111032, -1043.190094046268, -341.2350931808811)\n", "200.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-1174.3641875771434, -943.1900940462681, -241.2350931808811)\n", "-100.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (2, 1, 0, -1))\n", "(-674.3641875771434, -443.1900940462681, 27.59081328824402)\n", "-500.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-1, 1, 0, 0))\n", "(-474.3641875771434, -243.1900940462681, 23.680811557469042)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (2, -1, 0, 0))\n", "(-1274.3641875771434, -1043.190094046268, -229.5038079111032)\n", "800.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (6, 0, -1, -1))\n", "(-1298.3297143802283, -1143.190094046268, -329.5038079111032)\n", "100.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 0, 1))\n", "(-98.32971438022832, 56.80990595373191, 287.9839994846068)\n", "-1200.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 1, 0))\n", "(-898.3297143802283, -743.1900940462681, 70.4961920888968)\n", "800.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 0, 1))\n", "(101.67028561977168, 256.8099059537319, 487.9839994846068)\n", "-1000.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 1, 0))\n", "(-756.8763801814338, 56.80990595373191, 287.9839994846068)\n", "200.0\n", "((0, 0, 0, 0), (3, 0, -1, 0), (6, 0, -1, -1))\n", "(-1710.0609996500057, -1443.190094046268, -1212.0160005153932)\n", "1500.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (2, -1, 0, 0))\n", "(-541.2350931808805, -43.19009404626809, 187.98399948460678)\n", "-1400.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (5, -1, 0, -1))\n", "(-1741.2350931808805, -1243.190094046268, -745.1450949116556)\n", "1200.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-1347.100095777043, -1143.190094046268, -645.1450949116556)\n", "-100.0\n", "((0, 0, 0, 0), (-3, 2, 0, 0), (-1, 1, 0, 0))\n", "(-241.23509318088054, 256.8099059537319, 754.8549050883444)\n", "-1400.0\n", "((0, 0, 0, 0), (2, -1, 0, 0), (4, -2, 0, 0))\n", "(-1258.8313810468205, -943.1900940462681, -445.14509491165563)\n", "1200.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-758.8313810468205, -372.5176671819861, 54.85490508834437)\n", "-500.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-858.8313810468205, -472.5176671819861, 25.527331952626355)\n", "100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (0, -1, 1, 0))\n", "(-1458.8313810468205, -1072.517667181986, -370.5626663165988)\n", "600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-1139.3885727857232, -872.5176671819861, -170.56266631659878)\n", "-200.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1))\n", "(-239.38857278572323, 27.4823328180139, 258.6564263488888)\n", "-900.0\n", "((0, 0, 0, 0), (-1, -1, 0, 1), (2, -1, 0, 0))\n", "(296.30823928713926, 527.4823328180139, 758.6564263488888)\n", "-500.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (6, 0, 0, -2))\n", "(-903.6917607128607, -672.5176671819861, 29.437333683400993)\n", "1200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (2, 1, 0, -1))\n", "(396.30823928713926, 627.4823328180139, 782.6219531519735)\n", "-1300.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "(-803.6917607128607, -572.5176671819861, 9.994525422303923)\n", "1200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (3, 0, -1, 0))\n", "(-403.69176071286074, -172.5176671819861, -17.3780468480266)\n", "-400.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "(-1103.6917607128607, -872.5176671819861, -58.83138104682121)\n", "700.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (6, 0, -1, -1))\n", "(296.30823928713926, 527.4823328180139, 682.6219531519735)\n", "-1400.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "(-103.69176071286074, 51.4478596210987, 282.62195315197346)\n", "400.0\n", "((0, 0, 0, 0), (-5, 0, 1, 1), (-2, 0, 1, 0))\n", "(-219.33304771341363, 251.4478596210987, 482.62195315197346)\n", "-200.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "(-1519.3330477134136, -1048.5521403789012, -550.5071412442891)\n", "1300.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-2, 0, 0, 1))\n", "(-719.3330477134136, -248.55214037890119, -17.378046848026543)\n", "-800.0\n", "((0, 0, 0, 0), (-4, 1, 0, 1), (-1, 1, 0, 0))\n", "(-819.3330477134136, -503.6917607128607, -117.37804684802654)\n", "100.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (-1, 1, 0, 0))\n", "(-1519.3330477134136, -1203.6917607128607, -705.6467615782486)\n", "700.0\n", "((0, 0, 0, 0), (1, 1, -1, 0), (3, 0, -1, 0))\n", "(-1419.3330477134136, -1033.0193338485788, -605.6467615782486)\n", "-100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-719.3330477134136, -333.01933384857875, -17.378046848026543)\n", "-700.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-1, 1, 0, 0))\n", "(-1519.3330477134136, -1133.0193338485788, -431.0643329831918)\n", "800.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0))\n", "(-919.3330477134136, -533.0193338485788, -34.97433471396664)\n", "-600.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (0, -1, 1, 0))\n", "(-819.3330477134136, -433.01933384857875, -5.646761578248629)\n", "-100.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (3, 0, -1, 0))\n", "(-119.33304771341363, 266.98066615142125, 378.7119514211985)\n", "-700.0\n", "((0, 0, 0, 0), (-2, 0, 1, 0), (2, -1, 0, 0))\n", "(-319.33304771341363, -88.1589541825386, 178.71195142119848)\n", "200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (2, -1, 0, 0))\n", "(-419.33304771341363, -188.1589541825386, -33.01933384857915)\n", "100.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "(-719.3330477134136, -488.1589541825386, -17.378046848026543)\n", "300.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-1, 1, 0, 0))\n", "(-519.3330477134136, -288.1589541825386, -21.288048578801522)\n", "-200.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (2, -1, 0, 0))\n", "(-219.33304771341363, 11.841045817461406, 166.98066615142085)\n", "-300.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (-2, 0, 1, 0))\n", "(-619.3330477134136, -388.1589541825386, -1.845240317704338)\n", "400.0\n", "((0, 0, 0, 0), (3, 0, 0, -1), (1, 0, 1, -1))\n", "(-499.8902394523164, -388.1589541825386, -1.845240317704338)\n", "0.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (2, -1, 0, 0))\n", "(-699.8902394523163, -588.1589541825385, 113.79604668284856)\n", "200.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (3, 0, -1, 0))\n", "(-599.8902394523163, -488.15895418253854, -101.84524031770434)\n", "-100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (2, -1, 0, 0))\n", "(-699.8902394523163, -588.1589541825385, 113.79604668284856)\n", "100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (3, 0, -1, 0))\n", "(-599.8902394523163, -488.15895418253854, -101.84524031770434)\n", "-100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (2, -1, 0, 0))\n", "(-699.8902394523163, -588.1589541825385, 113.79604668284856)\n", "100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (3, 0, -1, 0))\n", "(-599.8902394523163, -488.15895418253854, -101.84524031770434)\n", "-100.0\n", "((0, 0, 0, 0), (4, -1, -1, 0), (2, -1, 0, 0))\n", "(-574.4726680473734, -188.15895418253854, 198.15475968229566)\n", "-300.0\n", "(1.525, 0.425, 1.225, 0.65, 0.375, 0.65, 0.175, 0.925, 0.4, 0.4, 0.7, 0.25, 0.625, 0.1, 1.175, 0.475, 0.1, 0.225, 0.625, 0.525, 0.2, 0.625, 0.05, 0.175, 0.65, 1.0, 0.075, 0.075, 1.2, 0.525, 0.3, 0.075, 1.225, 0.325, 0.3, 0.15, 0.075, 0.525, 0.225, 2.275, 0.125, 0.025, 0.225, 0.025, 0.125, 0.25, 0.25, 0.8, 0.125, 0.325, 0.275, 0.375, 0.425, 0.125, 1.1, 0.375, 0.05, 0.1, 0.4, 1.15, 0.15, 0.1, 0.075, 0.75, 0.575, 0.05, 0.325, 0.9, 0.375, 0.575, 0.05, 0.125, 0.075, 0.125, 0.4, 0.275, 0.125, 0.525, 0.65, 0.975, 0.725, 0.275, 0.175, 1.65, 0.7, 0.1, 0.05, 0.225, 0.4, 0.375, 0.325, 0.2, 0.225, 0.425, 2.05, 0.025, 0.125, 0.075, 0.45, 0.075, 0.225, 0.075, 0.35, 0.15, 0.3, 0.175, 0.1, 0.525, 0.55, 0.325, 0.375, 0.075, 0.5, 0.525, 0.7, 0.3, 0.05, 0.55, 0.65, 0.675, 0.25, 0.7, 0.85, 0.9, 1.15, 0.25, 0.025, 0.1, 0.475, 0.125, 1.0, 0.35, 0.075, 0.725, 0.3, 0.2, 0.1, 0.25, 0.2, 0.975, 0.55, 0.025, 0.225, 0.425, 0.525, 1.45, 0.025, 0.175, 0.275, 0.025, 0.35, 0.4, 0.4, 0.075, 0.7, 0.35, 0.1, 0.4, 0.175, 0.275, 1.425, 0.775, 0.475, 0.85, 1.375, 0.25, 0.55, 0.075, 1.425, 0.325, 0.525, 0.3, 0.825, 0.525, 0.15, 0.075, 0.375, 0.125, 0.05, 0.3, 0.675, 1.4, 0.9, 0.475, 0.425, 0.475, 0.275, 1.175, 0.3, 0.45, 1.375, 0.225, 0.25, 0.1, 0.05, 0.15, 0.6, 0.225, 0.55, 0.45, 0.275, 0.15, 0.05, 1.45, 0.225, 0.225, 0.75, 0.25, 0.55, 0.525, 0.925, 1.4, 0.725, 0.8, 0.775)\n" ] } ], "source": [ "path = stochastic_hamiltonian(graph)\n", "#durs = tuple(round(y[0]-x[0], 2) for (x, y) in pairwise(target_melody_data)) + ((1,))\n", "durs = tuple(d[0] for d in target_melody_data)\n", "path_to_chords(path, root)\n", "print(durs)\n", "write_chord_sequence(list(zip(durs, path_to_chords(path, root))))" ] } ], "metadata": { "kernelspec": { "display_name": "Python (compact sets)", "language": "python", "name": "compact_sets" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.9" } }, "nbformat": 4, "nbformat_minor": 5 }