You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
compact_sets_sandbox/compact_sets_extended_simpl...

8524 lines
558 KiB
Plaintext

{
"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": [
"<Figure size 640x480 with 1 Axes>"
]
},
"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
}