{ "cells": [ { "cell_type": "markdown", "id": "06774c1b-6cc6-4f6e-8f4a-bafd572f8ac3", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "# Topological Functions" ] }, { "cell_type": "code", "execution_count": 21, "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(path):\n", " file = open(\"seq.txt\", \"w+\")\n", " content = json.dumps(path)\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": {}, "source": [ "# This is the static version, which will be the middle piece" ] }, { "cell_type": "markdown", "id": "ea38a1da-7eac-4434-97b6-3208379affa0", "metadata": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## path functions" ] }, { "cell_type": "code", "execution_count": 2, "id": "aea5215c-8551-4685-b761-11c2dc74cf22", "metadata": {}, "outputs": [], "source": [ "from random import choice, choices\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": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## model" ] }, { "cell_type": "code", "execution_count": 3, "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": 4, "id": "6e0de0e5-7973-4a15-ae90-5bbb4a1ef49d", "metadata": {}, "outputs": [], "source": [ "path = stochastic_hamiltonian(graph)\n", "#for edge in path:\n", "# print(edge)\n", "write_chord_sequence(path_to_chords(path, root))" ] }, { "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": {}, "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": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## path functions" ] }, { "cell_type": "code", "execution_count": 5, "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": { "jp-MarkdownHeadingCollapsed": true }, "source": [ "## model" ] }, { "cell_type": "code", "execution_count": 8, "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": 9, "id": "7b76d848-fe53-4b60-b414-46cfe570f78b", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "((3, 0, -1, 0, 0), (2, -1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "0\n" ] }, { "data": { "text/plain": [ "178" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "path = stochastic_hamiltonian(graph)\n", "#for edge in path:\n", "# print(edge)\n", "write_chord_sequence(path_to_chords(path, root))\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": 22, "id": "51be5ff2-2b7f-4350-878f-09e79d4bff1f", "metadata": {}, "outputs": [], "source": [ "import crepe\n", "from scipy.io import wavfile" ] }, { "cell_type": "code", "execution_count": 23, "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": 24, "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[1m22s\u001b[0m 292ms/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": 14, "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": 14, "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": 33, "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, 1)" ] }, "execution_count": 33, "metadata": {}, "output_type": "execute_result" }, { "data": { "image/png": "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f1YxQYSivn5yloPNJt9nhCA4brklsueUkDfeAL7ylejOhzAOHo//+TMRVqyYcvJqJERc2vvggw/if/7nf/DCCy/g5MmTuPfeezE4OIhvftPfAXDdunXYsGEDf/7999+PLVu24IknnsCpU6fw2GOP4eDBg7jvvvui91tEwk9/OrEb/f774xovI3RKXR0gSM4el6VL/Q8EggjHT38KvPYaYJ7gIzo/378DKwkRYjw8Hv9zKBwrVgDj9A+LOuwk+NWvfsWWl5ezNpuNXblyJbt3715+7Morr2TvvPNO0fl/+tOf2FmzZrE2m42dP38++84770T0eS6XiwXAulyuyUw3NB4Py/74xyybnc2yAMuazSybn8+yP/mJf4wgIkF6PQm/kpNZ9oYbWLa/X+1ZEnpjbIxlN29m2cpK+XVlsbDsypUs29en9iwJPdLfz7I33siyVivLmkwxe05NdP2OuM+IGkStzwhBEARBEHEjJqW9BEEQBEEQ0YbECEEQBEEQqkJihCAIgiAIVSExQhAEQRCEqpAYIQiCIAhCVUiMEARBEAShKiRGCIIgCIJQFRIjBEEQBEGoCokRgiAIgiBUJaJde9WCaxLrdrtVnglBEARBEBOFW7fHa/auCzHS398PACgrK1N5JgRBEARBREp/fz8yMjIUx3WxN43P50NLSwvS09NhMpmi9r5utxtlZWVobm6mPW9UgP7+6kJ/f3Whv7+60N8/PrAsi/7+fhQXF8McZhdqXXhGzGYzSktLY/b+TqeTLkYVob+/utDfX13o768u9PePPeE8IhyUwEoQBEEQhKqQGCEIgiAIQlUSWozY7XY8+uijsNvtak8lIaG/v7rQ319d6O+vLvT31xa6SGAlCIIgCMK4JLRnhCAIgiAI9SExQhAEQRCEqpAYIQiCIAhCVUiMEARBEAShKgktRp555hlUVlbC4XBg1apV2L9/v9pT0j2PPfYYTCaT6GvOnDn8+MjICNavX4+cnBykpaXhb//2b9He3i56j6amJtx4441ISUlBfn4+HnroIYyNjcX7V9EFO3fuxE033YTi4mKYTCZs3rxZNM6yLB555BEUFRUhOTkZq1evxtmzZ0Xn9PT04Pbbb4fT6URmZibuuusuDAwMiM757LPP8LnPfQ4OhwNlZWX46U9/GutfTReM9/f/+7//e9n9cN1114nOob//5Nm4cSNW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", "text/plain": [ "
" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "import matplotlib.pyplot as plt # For ploting\n", "import numpy as np # to work with numerical data efficiently\n", "\n", "fs = 2351 # sample rate \n", "f = 3 # 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": 151, "id": "fb2ad9ad-7a8c-4f84-ab0c-9c1f1ecdb8a8", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "146.9\n", "0.0 51.0 2 51.0\n", "4.125\n", "here\n", "3.175 51.0 2 None\n", "4.125\n", "here\n", "3.5 51.0 2 None\n", "4.125\n", "here\n", "3.875 51.0 2 None\n", "4.125\n", "2.125 46.0 1 46.0\n", "0.3\n", "2.425 44.0 1 44.0\n", "2.7\n", "here\n", "4.575 44.0 1 None\n", "2.7\n", "here\n", "4.9 44.0 1 None\n", "2.7\n", "3.125 41.0 0 41.0\n", "0.3\n", "3.425 39.0 0 39.0\n", "3.75\n", "here\n", "6.4 39.0 0 None\n", "3.75\n", "here\n", "6.775 39.0 0 None\n", "3.75\n", "here\n", "7.075 39.0 0 None\n", "3.75\n", "4.125 53.0 2 53.0\n", "1.2\n", "5.125 42.0 1 42.0\n", "1.7\n", "here\n", "6.075 42.0 1 None\n", "1.7\n", "here\n", "6.45 42.0 1 None\n", "1.7\n", "here\n", "6.7 42.0 1 None\n", "1.7\n", "5.325 51.0 2 51.0\n", "6.0\n", "here\n", "10.8 51.0 2 None\n", "6.0\n", "here\n", "11.175 51.0 2 None\n", "6.0\n", "6.825 41.0 1 41.0\n", "3.9\n", "here\n", "9.975 41.0 1 None\n", "3.9\n", "here\n", "10.275 41.0 1 None\n", "3.9\n", "here\n", "10.525 41.0 1 None\n", "3.9\n", "7.175 37.0 0 37.0\n", "1.7\n", "here\n", "8.25 37.0 0 None\n", "1.7\n", "here\n", "8.5 37.0 0 None\n", "1.7\n", "here\n", "8.75 37.0 0 None\n", "1.7\n", "8.875 36.0 0 36.0\n", "3.75\n", "here\n", "12.1 36.0 0 None\n", "3.75\n", "here\n", "12.425 36.0 0 None\n", "3.75\n", "10.725 42.0 1 42.0\n", "2.675\n", "here\n", "12.7 42.0 1 None\n", "2.675\n", "here\n", "12.975 42.0 1 None\n", "2.675\n", "here\n", "13.35 42.0 1 None\n", "2.675\n", "11.325 49.0 2 49.0\n", "0.725\n", "12.05 48.0 2 48.0\n", "0.975\n", "12.625 37.0 0 37.0\n", "0.725\n", "13.025 49.0 2 49.0\n", "0.725\n", "13.35 39.0 0 39.0\n", "0.625\n", "13.4 44.0 1 44.0\n", "0.625\n", "13.75 51.0 2 51.0\n", "0.625\n", "13.975 40.0 0 40.0\n", "0.05\n", "14.025 39.0 0 39.0\n", "2.45\n", "here\n", "15.525 39.0 0 None\n", "2.45\n", "here\n", "15.825 39.0 0 None\n", "2.45\n", "here\n", "16.15 39.0 0 None\n", "2.45\n", "here\n", "16.425 39.0 0 None\n", "2.45\n", "14.075 44.0 1 44.0\n", "1.1\n", "14.375 52.0 2 52.0\n", "0.05\n", "14.425 51.0 2 51.0\n", "3.65\n", "here\n", "17.2 51.0 2 None\n", "3.65\n", "here\n", "17.475 51.0 2 None\n", "3.65\n", "here\n", "17.85 51.0 2 None\n", "3.65\n", "15.175 42.0 1 42.0\n", "0.05\n", "15.225 41.0 1 41.0\n", "2.25\n", "here\n", "16.625 41.0 1 None\n", "2.25\n", "here\n", "16.9 41.0 1 None\n", "2.25\n", "here\n", "17.175 41.0 1 None\n", "2.25\n", "16.475 37.0 0 37.0\n", "0.2\n", "16.675 36.0 0 36.0\n", "3.9\n", "here\n", "20.05 36.0 0 None\n", "3.9\n", "here\n", "20.375 36.0 0 None\n", "3.9\n", "17.475 44.0 1 44.0\n", "2.6\n", "here\n", "19.125 44.0 1 None\n", "2.6\n", "here\n", "19.425 44.0 1 None\n", "2.6\n", "here\n", "19.75 44.0 1 None\n", "2.6\n", "here\n", "20.0 44.0 1 None\n", "2.6\n", "18.075 49.0 2 49.0\n", "0.2\n", "18.275 48.0 2 48.0\n", "3.9\n", "here\n", "21.175 48.0 2 None\n", "3.9\n", "here\n", "21.45 48.0 2 None\n", "3.9\n", "here\n", "21.725 48.0 2 None\n", "3.9\n", "here\n", "21.975 48.0 2 None\n", "3.9\n", "20.075 46.0 1 46.0\n", "1.8\n", "here\n", "21.325 46.0 1 None\n", "1.8\n", "here\n", "21.65 46.0 1 None\n", "1.8\n", "20.575 39.0 0 39.0\n", "2.525\n", "here\n", "22.3 39.0 0 None\n", "2.525\n", "here\n", "22.6 39.0 0 None\n", "2.525\n", "here\n", "22.925 39.0 0 None\n", "2.525\n", "21.875 44.0 1 44.0\n", "4.375\n", "here\n", "25.375 44.0 1 None\n", "4.375\n", "here\n", "25.625 44.0 1 None\n", "4.375\n", "here\n", "25.9 44.0 1 None\n", "4.375\n", "here\n", "26.225 44.0 1 None\n", "4.375\n", "22.175 51.0 2 51.0\n", "2.6\n", "here\n", "23.975 51.0 2 None\n", "2.6\n", "here\n", "24.3 51.0 2 None\n", "2.6\n", "here\n", "24.55 51.0 2 None\n", "2.6\n", "23.1 41.0 0 41.0\n", "0.45\n", "23.55 39.0 0 39.0\n", "1.6\n", "24.775 53.0 2 53.0\n", "1.65\n", "25.15 40.0 0 40.0\n", "1.525\n", "26.25 45.0 1 45.0\n", "0.4\n", "26.425 51.0 2 51.0\n", "1.6\n", "26.65 41.0 1 41.0\n", "1.325\n", "26.675 36.0 0 36.0\n", "5.3\n", "here\n", "31.125 36.0 0 None\n", "5.3\n", "here\n", "31.375 36.0 0 None\n", "5.3\n", "here\n", "31.7 36.0 0 None\n", "5.3\n", "27.975 46.0 1 46.0\n", "2.25\n", "here\n", "29.625 46.0 1 None\n", "2.25\n", "here\n", "29.95 46.0 1 None\n", "2.25\n", "28.025 52.0 2 52.0\n", "0.4\n", "28.425 48.0 2 48.0\n", "2.6\n", "here\n", "30.475 48.0 2 None\n", "2.6\n", "here\n", "30.75 48.0 2 None\n", "2.6\n", "30.225 44.0 1 44.0\n", "0.7\n", "30.925 42.0 1 42.0\n", "6.2\n", "here\n", "36.625 42.0 1 None\n", "6.2\n", "here\n", "36.95 42.0 1 None\n", "6.2\n", "31.025 53.0 2 53.0\n", "2.4\n", "here\n", "32.525 53.0 2 None\n", "2.4\n", "here\n", "32.8 53.0 2 None\n", "2.4\n", "here\n", "33.15 53.0 2 None\n", "2.4\n", "31.975 41.0 0 41.0\n", "1.8\n", "here\n", "33.225 41.0 0 None\n", "1.8\n", "here\n", "33.6 41.0 0 None\n", "1.8\n", "33.425 51.0 2 51.0\n", "0.7\n", "33.775 39.0 0 39.0\n", "0.175\n", "33.95 37.0 0 37.0\n", "1.55\n", "34.125 49.0 2 49.0\n", "6.2\n", "here\n", "39.35 49.0 2 None\n", "6.2\n", "here\n", "39.6 49.0 2 None\n", "6.2\n", "here\n", "39.9 49.0 2 None\n", "6.2\n", "here\n", "40.15 49.0 2 None\n", "6.2\n", "35.5 40.0 0 40.0\n", "0.025\n", "35.525 41.0 0 41.0\n", "0.25\n", "35.775 40.0 0 40.0\n", "1.7\n", "37.125 45.0 1 45.0\n", "0.1\n", "37.225 46.0 1 46.0\n", "0.625\n", "37.475 39.0 0 39.0\n", "2.3\n", "here\n", "38.975 39.0 0 None\n", "2.3\n", "here\n", "39.25 39.0 0 None\n", "2.3\n", "here\n", "39.5 39.0 0 None\n", "2.3\n", "37.85 45.0 1 45.0\n", "0.425\n", "38.275 44.0 1 44.0\n", "0.575\n", "38.85 45.0 1 45.0\n", "0.1\n", "38.95 44.0 1 44.0\n", "0.225\n", "39.175 42.0 1 42.0\n", "0.2\n", "39.375 41.0 1 41.0\n", "0.225\n", "39.6 39.0 1 39.0\n", "3.275\n", "here\n", "42.05 39.0 1 None\n", "3.275\n", "here\n", "42.3 39.0 1 None\n", "3.275\n", "here\n", "42.65 39.0 1 None\n", "3.275\n", "39.775 40.0 0 40.0\n", "0.4\n", "40.175 39.0 0 39.0\n", "0.9\n", "40.325 52.0 2 52.0\n", "0.1\n", "40.425 53.0 2 53.0\n", "0.625\n", "41.05 52.0 2 52.0\n", "0.425\n", "41.075 37.0 0 37.0\n", "0.8\n", "41.475 51.0 2 51.0\n", "0.575\n", "41.875 36.0 0 36.0\n", "0.9\n", "42.05 52.0 2 52.0\n", "0.1\n", "42.15 51.0 2 51.0\n", "0.225\n", "42.375 49.0 2 49.0\n", "0.2\n", "42.575 48.0 2 48.0\n", "0.225\n", "42.775 34.0 0 34.0\n", "2.3\n", "here\n", "44.225 34.0 0 None\n", "2.3\n", "here\n", "44.525 34.0 0 None\n", "2.3\n", "here\n", "44.825 34.0 0 None\n", "2.3\n", "42.8 46.0 2 46.0\n", "1.775\n", "here\n", "44.025 46.0 2 None\n", "1.775\n", "here\n", "44.35 46.0 2 None\n", "1.775\n", "42.875 44.0 1 44.0\n", "0.3\n", "43.175 45.0 1 45.0\n", "4.5\n", "here\n", "46.675 45.0 1 None\n", "4.5\n", "here\n", "47.025 45.0 1 None\n", "4.5\n", "here\n", "47.375 45.0 1 None\n", "4.5\n", "here\n", "47.625 45.0 1 None\n", "4.5\n", "44.575 51.0 2 51.0\n", "0.3\n", "44.875 52.0 2 52.0\n", "4.5\n", "here\n", "48.4 52.0 2 None\n", "4.5\n", "here\n", "48.675 52.0 2 None\n", "4.5\n", "here\n", "48.925 52.0 2 None\n", "4.5\n", "here\n", "49.175 52.0 2 None\n", "4.5\n", "45.075 39.0 0 39.0\n", "0.075\n", "45.15 40.0 0 40.0\n", "1.425\n", "here\n", "45.975 40.0 0 None\n", "1.425\n", "here\n", "46.35 40.0 0 None\n", "1.425\n", "46.575 42.0 0 42.0\n", "0.4\n", "46.975 44.0 0 44.0\n", "0.3\n", "47.275 45.0 0 45.0\n", "2.2\n", "here\n", "48.975 45.0 0 None\n", "2.2\n", "here\n", "49.275 45.0 0 None\n", "2.2\n", "47.675 47.0 1 47.0\n", "0.4\n", "48.075 49.0 1 49.0\n", "0.3\n", "48.375 50.0 1 50.0\n", "1.825\n", "49.375 54.0 2 54.0\n", "0.4\n", "49.475 41.0 0 41.0\n", "5.35\n", "here\n", "54.275 41.0 0 None\n", "5.35\n", "here\n", "54.625 41.0 0 None\n", "5.35\n", "49.775 56.0 2 56.0\n", "0.3\n", "50.075 57.0 2 57.0\n", "2.2\n", "here\n", "51.375 57.0 2 None\n", "2.2\n", "here\n", "51.675 57.0 2 None\n", "2.2\n", "here\n", "52.025 57.0 2 None\n", "2.2\n", "50.2 46.0 1 46.0\n", "1.525\n", "51.725 50.0 1 50.0\n", "0.35\n", "52.075 48.0 1 48.0\n", "0.025\n", "52.1 47.0 1 47.0\n", "0.15\n", "52.25 44.0 1 44.0\n", "7.275\n", "here\n", "58.9 44.0 1 None\n", "7.275\n", "here\n", "59.225 44.0 1 None\n", "7.275\n", "52.275 53.0 2 53.0\n", "4.075\n", "here\n", "55.825 53.0 2 None\n", "4.075\n", "here\n", "56.125 53.0 2 None\n", "4.075\n", "54.825 45.0 0 45.0\n", "0.35\n", "55.175 43.0 0 43.0\n", "0.025\n", "55.2 42.0 0 42.0\n", "0.15\n", "55.35 39.0 0 39.0\n", "4.125\n", "here\n", "58.6 39.0 0 None\n", "4.125\n", "here\n", "58.95 39.0 0 None\n", "4.125\n", "here\n", "59.25 39.0 0 None\n", "4.125\n", "56.35 57.0 2 57.0\n", "0.35\n", "56.7 55.0 2 55.0\n", "0.025\n", "56.725 54.0 2 54.0\n", "0.15\n", "56.875 51.0 2 51.0\n", "2.85\n", "here\n", "58.775 51.0 2 None\n", "2.85\n", "here\n", "59.05 51.0 2 None\n", "2.85\n", "here\n", "59.3 51.0 2 None\n", "2.85\n", "here\n", "59.6 51.0 2 None\n", "2.85\n", "59.475 41.0 0 41.0\n", "2.2\n", "here\n", "60.775 41.0 0 None\n", "2.2\n", "here\n", "61.15 41.0 0 None\n", "2.2\n", "here\n", "61.5 41.0 0 None\n", "2.2\n", "59.525 46.0 1 46.0\n", "2.2\n", "here\n", "60.925 46.0 1 None\n", "2.2\n", "here\n", "61.175 46.0 1 None\n", "2.2\n", "here\n", "61.55 46.0 1 None\n", "2.2\n", "59.725 53.0 2 53.0\n", "2.2\n", "here\n", "61.425 53.0 2 None\n", "2.2\n", "here\n", "61.725 53.0 2 None\n", "2.2\n", "61.675 39.0 0 39.0\n", "4.425\n", "here\n", "65.2 39.0 0 None\n", "4.425\n", "here\n", "65.575 39.0 0 None\n", "4.425\n", "here\n", "65.925 39.0 0 None\n", "4.425\n", "61.725 44.0 1 44.0\n", "2.325\n", "here\n", "63.45 44.0 1 None\n", "2.325\n", "here\n", "63.7 44.0 1 None\n", "2.325\n", "61.925 51.0 2 51.0\n", "7.5\n", "here\n", "68.85 51.0 2 None\n", "7.5\n", "here\n", "69.1 51.0 2 None\n", "7.5\n", "here\n", "69.4 51.0 2 None\n", "7.5\n", "64.05 42.0 1 42.0\n", "0.45\n", "64.5 41.0 1 41.0\n", "2.075\n", "here\n", "65.9 41.0 1 None\n", "2.075\n", "here\n", "66.2 41.0 1 None\n", "2.075\n", "here\n", "66.5 41.0 1 None\n", "2.075\n", "66.1 37.0 0 37.0\n", "0.45\n", "66.55 36.0 0 36.0\n", "1.025\n", "here\n", "67.075 36.0 0 None\n", "1.025\n", "here\n", "67.325 36.0 0 None\n", "1.025\n", "66.575 42.0 1 42.0\n", "1.1\n", "67.575 37.0 0 37.0\n", "1.1\n", "67.675 44.0 1 44.0\n", "5.2\n", "here\n", "71.95 44.0 1 None\n", "5.2\n", "here\n", "72.25 44.0 1 None\n", "5.2\n", "here\n", "72.5 44.0 1 None\n", "5.2\n", "here\n", "72.775 44.0 1 None\n", "5.2\n", "68.675 39.0 0 39.0\n", "5.2\n", "here\n", "73.175 39.0 0 None\n", "5.2\n", "here\n", "73.475 39.0 0 None\n", "5.2\n", "here\n", "73.825 39.0 0 None\n", "5.2\n", "69.425 49.0 2 49.0\n", "1.125\n", "70.55 48.0 2 48.0\n", "0.725\n", "71.275 49.0 2 49.0\n", "0.275\n", "71.55 51.0 2 51.0\n", "1.3\n", "72.85 50.0 2 50.0\n", "0.1\n", "72.875 43.0 1 43.0\n", "0.4\n", "72.95 52.0 2 52.0\n", "0.05\n", "73.0 53.0 2 53.0\n", "1.475\n", "here\n", "73.925 53.0 2 None\n", "1.475\n", "here\n", "74.175 53.0 2 None\n", "1.475\n", "73.275 45.0 1 45.0\n", "0.2\n", "73.475 46.0 1 46.0\n", "1.4\n", "73.875 38.0 0 38.0\n", "0.4\n", "74.275 40.0 0 40.0\n", "0.2\n", "74.475 41.0 0 41.0\n", "1.4\n", "74.875 44.0 1 44.0\n", "0.275\n", "75.15 48.0 1 48.0\n", "0.1\n", "75.25 50.0 1 50.0\n", "0.2\n", "75.45 49.0 1 49.0\n", "0.975\n", "75.575 55.0 2 55.0\n", "0.4\n", "75.875 39.0 0 39.0\n", "0.275\n", "75.975 57.0 2 57.0\n", "0.8\n", "76.15 43.0 0 43.0\n", "0.1\n", "76.25 45.0 0 45.0\n", "0.2\n", "76.425 50.0 1 50.0\n", "0.25\n", "76.45 44.0 0 44.0\n", "0.975\n", "76.675 49.0 1 49.0\n", "0.25\n", "76.775 56.0 2 56.0\n", "3.9\n", "here\n", "80.075 56.0 2 None\n", "3.9\n", "here\n", "80.325 56.0 2 None\n", "3.9\n", "76.925 46.0 1 46.0\n", "1.4\n", "here\n", "77.7 46.0 1 None\n", "1.4\n", "here\n", "78.075 46.0 1 None\n", "1.4\n", "77.425 45.0 0 45.0\n", "0.25\n", "77.675 44.0 0 44.0\n", "1.0\n", "78.325 44.0 1 44.0\n", "8.725\n", "here\n", "86.425 44.0 1 None\n", "8.725\n", "here\n", "86.725 44.0 1 None\n", "8.725\n", "here\n", "86.975 44.0 1 None\n", "8.725\n", "78.675 41.0 0 41.0\n", "1.7\n", "here\n", "79.625 41.0 0 None\n", "1.7\n", "here\n", "80.0 41.0 0 None\n", "1.7\n", "here\n", "80.275 41.0 0 None\n", "1.7\n", "80.375 39.0 0 39.0\n", "6.625\n", "here\n", "86.425 39.0 0 None\n", "6.625\n", "here\n", "86.675 39.0 0 None\n", "6.625\n", "here\n", "86.925 39.0 0 None\n", "6.625\n", "80.675 57.0 2 57.0\n", "1.0\n", "81.675 56.0 2 56.0\n", "1.0\n", "82.675 53.0 2 53.0\n", "1.7\n", "here\n", "83.6 53.0 2 None\n", "1.7\n", "here\n", "83.925 53.0 2 None\n", "1.7\n", "here\n", "84.175 53.0 2 None\n", "1.7\n", "84.375 51.0 2 51.0\n", "2.875\n", "here\n", "86.675 51.0 2 None\n", "2.875\n", "here\n", "87.0 51.0 2 None\n", "2.875\n", "87.0 41.0 0 41.0\n", "0.45\n", "87.05 46.0 1 46.0\n", "0.45\n", "87.25 53.0 2 53.0\n", "0.45\n", "87.45 39.0 0 39.0\n", "5.825\n", "here\n", "92.55 39.0 0 None\n", "5.825\n", "here\n", "92.875 39.0 0 None\n", "5.825\n", "here\n", "93.15 39.0 0 None\n", "5.825\n", "87.5 44.0 1 44.0\n", "2.675\n", "here\n", "89.45 44.0 1 None\n", "2.675\n", "here\n", "89.775 44.0 1 None\n", "2.675\n", "here\n", "90.025 44.0 1 None\n", "2.675\n", "87.7 51.0 2 51.0\n", "7.1\n", "here\n", "94.3 51.0 2 None\n", "7.1\n", "here\n", "94.55 51.0 2 None\n", "7.1\n", "90.175 41.0 1 41.0\n", "1.5\n", "91.675 42.0 1 42.0\n", "2.9\n", "here\n", "93.8 42.0 1 None\n", "2.9\n", "here\n", "94.1 42.0 1 None\n", "2.9\n", "here\n", "94.35 42.0 1 None\n", "2.9\n", "93.275 36.0 0 36.0\n", "1.5\n", "here\n", "94.275 36.0 0 None\n", "1.5\n", "here\n", "94.65 36.0 0 None\n", "1.5\n", "94.575 39.0 1 39.0\n", "0.8\n", "94.775 37.0 0 37.0\n", "2.075\n", "here\n", "95.975 37.0 0 None\n", "2.075\n", "here\n", "96.3 37.0 0 None\n", "2.075\n", "here\n", "96.625 37.0 0 None\n", "2.075\n", "94.8 48.0 2 48.0\n", "1.5\n", "95.375 46.0 1 46.0\n", "0.3\n", "95.675 47.0 1 47.0\n", "2.1\n", "here\n", "96.95 47.0 1 None\n", "2.1\n", "here\n", "97.225 47.0 1 None\n", "2.1\n", "here\n", "97.525 47.0 1 None\n", "2.1\n", "96.3 49.0 2 49.0\n", "2.9\n", "here\n", "98.25 49.0 2 None\n", "2.9\n", "here\n", "98.6 49.0 2 None\n", "2.9\n", "here\n", "98.85 49.0 2 None\n", "2.9\n", "here\n", "99.125 49.0 2 None\n", "2.9\n", "96.85 34.0 0 34.0\n", "0.2\n", "97.05 41.0 0 41.0\n", "0.075\n", "97.125 42.0 0 42.0\n", "0.525\n", "97.65 37.0 0 37.0\n", "4.125\n", "here\n", "101.225 37.0 0 None\n", "4.125\n", "here\n", "101.575 37.0 0 None\n", "4.125\n", "97.775 42.0 1 42.0\n", "2.775\n", "here\n", "99.8 42.0 1 None\n", "2.775\n", "here\n", "100.175 42.0 1 None\n", "2.775\n", "here\n", "100.45 42.0 1 None\n", "2.775\n", "99.2 46.0 2 46.0\n", "0.65\n", "99.85 53.0 2 53.0\n", "0.075\n", "99.925 54.0 2 54.0\n", "0.525\n", "100.45 49.0 2 49.0\n", "1.8\n", "here\n", "101.6 49.0 2 None\n", "1.8\n", "here\n", "101.95 49.0 2 None\n", "1.8\n", "here\n", "102.225 49.0 2 None\n", "1.8\n", "100.55 44.0 1 44.0\n", "0.9\n", "101.45 41.0 1 41.0\n", "3.975\n", "here\n", "104.525 41.0 1 None\n", "3.975\n", "here\n", "104.775 41.0 1 None\n", "3.975\n", "here\n", "105.1 41.0 1 None\n", "3.975\n", "101.775 39.0 0 39.0\n", "3.6\n", "here\n", "104.45 39.0 0 None\n", "3.6\n", "here\n", "104.8 39.0 0 None\n", "3.6\n", "here\n", "105.15 39.0 0 None\n", "3.6\n", "102.25 51.0 2 51.0\n", "2.175\n", "here\n", "103.75 51.0 2 None\n", "2.175\n", "here\n", "104.05 51.0 2 None\n", "2.175\n", "104.425 48.0 2 48.0\n", "4.2\n", "here\n", "107.85 48.0 2 None\n", "4.2\n", "here\n", "108.15 48.0 2 None\n", "4.2\n", "here\n", "108.525 48.0 2 None\n", "4.2\n", "105.375 36.0 0 36.0\n", "2.325\n", "here\n", "106.8 36.0 0 None\n", "2.325\n", "here\n", "107.175 36.0 0 None\n", "2.325\n", "here\n", "107.5 36.0 0 None\n", "2.325\n", "105.425 44.0 1 44.0\n", "0.5\n", "105.925 45.0 1 45.0\n", "0.6\n", "106.525 44.0 1 44.0\n", "1.8\n", "here\n", "107.475 44.0 1 None\n", "1.8\n", "here\n", "107.85 44.0 1 None\n", "1.8\n", "here\n", "108.1 44.0 1 None\n", "1.8\n", "107.7 39.0 0 39.0\n", "0.125\n", "107.825 40.0 0 40.0\n", "0.15\n", "107.975 39.0 0 39.0\n", "0.45\n", "108.325 46.0 1 46.0\n", "1.2\n", "108.425 41.0 0 41.0\n", "0.3\n", "108.625 51.0 2 51.0\n", "0.5\n", "108.725 40.0 0 40.0\n", "0.45\n", "109.125 52.0 2 52.0\n", "0.6\n", "109.175 39.0 0 39.0\n", "2.8\n", "here\n", "111.425 39.0 0 None\n", "2.8\n", "here\n", "111.725 39.0 0 None\n", "2.8\n", "109.525 45.0 1 45.0\n", "1.8\n", "here\n", "110.7 45.0 1 None\n", "1.8\n", "here\n", "111.0 45.0 1 None\n", "1.8\n", "109.725 51.0 2 51.0\n", "1.8\n", "here\n", "110.925 51.0 2 None\n", "1.8\n", "here\n", "111.175 51.0 2 None\n", "1.8\n", "111.325 44.0 1 44.0\n", "0.7\n", "111.525 53.0 2 53.0\n", "1.2\n", "here\n", "112.225 53.0 2 None\n", "1.2\n", "here\n", "112.5 53.0 2 None\n", "1.2\n", "111.975 37.0 0 37.0\n", "0.8\n", "112.025 42.0 1 42.0\n", "0.2\n", "112.225 43.0 1 43.0\n", "0.9\n", "112.725 52.0 2 52.0\n", "1.8\n", "here\n", "113.675 52.0 2 None\n", "1.8\n", "here\n", "114.05 52.0 2 None\n", "1.8\n", "here\n", "114.35 52.0 2 None\n", "1.8\n", "112.775 38.0 0 38.0\n", "3.6\n", "here\n", "115.6 38.0 0 None\n", "3.6\n", "here\n", "115.85 38.0 0 None\n", "3.6\n", "here\n", "116.175 38.0 0 None\n", "3.6\n", "113.125 45.0 1 45.0\n", "0.475\n", "113.6 44.0 1 44.0\n", "7.175\n", "here\n", "119.8 44.0 1 None\n", "7.175\n", "here\n", "120.175 44.0 1 None\n", "7.175\n", "here\n", "120.475 44.0 1 None\n", "7.175\n", "114.525 51.0 2 51.0\n", "0.7\n", "115.225 49.0 2 49.0\n", "0.2\n", "115.425 50.0 2 50.0\n", "0.9\n", "116.325 52.0 2 52.0\n", "0.475\n", "116.375 40.0 0 40.0\n", "1.375\n", "116.8 51.0 2 51.0\n", "5.75\n", "here\n", "121.8 51.0 2 None\n", "5.75\n", "here\n", "122.175 51.0 2 None\n", "5.75\n", "here\n", "122.45 51.0 2 None\n", "5.75\n", "117.75 39.0 0 39.0\n", "1.925\n", "here\n", "119.025 39.0 0 None\n", "1.925\n", "here\n", "119.35 39.0 0 None\n", "1.925\n", "119.675 40.0 0 40.0\n", "0.8\n", "120.475 41.0 0 41.0\n", "1.7\n", "here\n", "121.675 41.0 0 None\n", "1.7\n", "here\n", "122.025 41.0 0 None\n", "1.7\n", "120.775 45.0 1 45.0\n", "0.8\n", "121.575 46.0 1 46.0\n", "1.7\n", "here\n", "122.725 46.0 1 None\n", "1.7\n", "here\n", "123.0 46.0 1 None\n", "1.7\n", "122.175 37.0 0 37.0\n", "6.0\n", "here\n", "127.4 37.0 0 None\n", "6.0\n", "here\n", "127.775 37.0 0 None\n", "6.0\n", "here\n", "128.1 37.0 0 None\n", "6.0\n", "122.55 52.0 2 52.0\n", "0.8\n", "123.275 42.0 1 42.0\n", "1.8\n", "here\n", "124.2 42.0 1 None\n", "1.8\n", "here\n", "124.575 42.0 1 None\n", "1.8\n", "here\n", "124.825 42.0 1 None\n", "1.8\n", "123.35 53.0 2 53.0\n", "1.7\n", "here\n", "124.25 53.0 2 None\n", "1.7\n", "here\n", "124.575 53.0 2 None\n", "1.7\n", "here\n", "124.825 53.0 2 None\n", "1.7\n", "125.05 49.0 2 49.0\n", "4.725\n", "here\n", "129.175 49.0 2 None\n", "4.725\n", "here\n", "129.5 49.0 2 None\n", "4.725\n", "here\n", "129.75 49.0 2 None\n", "4.725\n", "125.075 49.0 1 49.0\n", "0.75\n", "125.825 47.0 1 47.0\n", "0.9\n", "126.725 46.0 1 46.0\n", "0.8\n", "127.525 44.0 1 44.0\n", "1.3\n", "128.175 44.0 0 44.0\n", "0.75\n", "128.825 46.0 1 46.0\n", "1.0\n", "128.925 42.0 0 42.0\n", "0.375\n", "129.3 41.0 0 41.0\n", "0.2\n", "129.5 39.0 0 39.0\n", "0.325\n", "129.775 56.0 2 56.0\n", "0.75\n", "129.825 41.0 0 41.0\n", "0.25\n", "130.075 39.0 0 39.0\n", "7.3\n", "here\n", "136.525 39.0 0 None\n", "7.3\n", "here\n", "136.8 39.0 0 None\n", "7.3\n", "here\n", "137.075 39.0 0 None\n", "7.3\n", "130.525 54.0 2 54.0\n", "0.375\n", "130.9 53.0 2 53.0\n", "0.2\n", "131.1 51.0 2 51.0\n", "0.325\n", "131.425 53.0 2 53.0\n", "0.25\n", "131.675 51.0 2 51.0\n", "6.1\n", "here\n", "137.15 51.0 2 None\n", "6.1\n", "here\n", "137.425 51.0 2 None\n", "6.1\n", "136.225 42.0 1 42.0\n", "0.575\n", "136.8 41.0 1 41.0\n", "0.325\n", "137.125 42.0 1 42.0\n", "0.175\n", "137.3 44.0 1 44.0\n", "5.675\n", "here\n", "141.975 44.0 1 None\n", "5.675\n", "here\n", "142.25 44.0 1 None\n", "5.675\n", "here\n", "142.55 44.0 1 None\n", "5.675\n", "here\n", "142.9 44.0 1 None\n", "5.675\n", "137.375 37.0 0 37.0\n", "1.475\n", "here\n", "138.2 37.0 0 None\n", "1.475\n", "here\n", "138.525 37.0 0 None\n", "1.475\n", "137.775 49.0 2 49.0\n", "2.3\n", "here\n", "139.2 49.0 2 None\n", "2.3\n", "here\n", "139.575 49.0 2 None\n", "2.3\n", "here\n", "139.925 49.0 2 None\n", "2.3\n", "138.85 36.0 0 36.0\n", "0.325\n", "139.175 37.0 0 37.0\n", "0.175\n", "139.35 39.0 0 39.0\n", "4.625\n", "here\n", "143.075 39.0 0 None\n", "4.625\n", "here\n", "143.35 39.0 0 None\n", "4.625\n", "here\n", "143.7 39.0 0 None\n", "4.625\n", "140.075 48.0 2 48.0\n", "1.3\n", "141.375 49.0 2 49.0\n", "0.7\n", "142.075 51.0 2 51.0\n", "3.575\n", "here\n", "144.7 51.0 2 None\n", "3.575\n", "here\n", "144.95 51.0 2 None\n", "3.575\n", "here\n", "145.25 51.0 2 None\n", "3.575\n", "here\n", "145.575 51.0 2 None\n", "3.575\n", "142.975 45.0 1 45.0\n", "0.6\n", "143.575 46.0 1 46.0\n", "1.0\n", "143.975 40.0 0 40.0\n", "0.6\n", "144.575 41.0 0 41.0\n", "1.0\n", "144.775 44.0 1 44.0\n", "1.8\n", "here\n", "145.875 44.0 1 None\n", "1.8\n", "here\n", "146.125 44.0 1 None\n", "1.8\n", "here\n", "146.45 44.0 1 None\n", "1.8\n", "145.575 40.0 0 40.0\n", "0.2\n", "145.65 52.0 2 52.0\n", "0.15\n", "145.775 39.0 0 39.0\n", "1.125\n", "145.8 53.0 2 53.0\n", "0.25\n", "146.05 52.0 2 52.0\n", "0.05\n", "146.1 51.0 2 51.0\n", "0.45\n", "146.55 52.0 2 52.0\n", "0.35\n", "146.575 45.0 1 45.0\n", "0.325\n", "---\n", "(0.0, 51.0, 2, 51.0)\n", "(2.125, 51.0, 2, 0.0)\n", "---\n", "(2.125, 46.0, 1, 46.0)\n", "(0.3, 46.0, 1, -500.0)\n", "---\n", "(2.425, 44.0, 1, 44.0)\n", "(0.7, 44.0, 1, -200.0)\n", "---\n", "(3.125, 41.0, 0, 41.0)\n", "(0.05, 41.0, 0, -300.0)\n", "---\n", "(3.175, 51.0, 2, None)\n", "(0.25, 51.0, 2, None)\n", "---\n", "(3.425, 39.0, 0, 39.0)\n", "(0.075, 39.0, 0, -200.0)\n", "---\n", "(3.5, 51.0, 2, None)\n", "(0.375, 51.0, 2, None)\n", "---\n", "(3.875, 51.0, 2, None)\n", "(0.25, 51.0, 2, None)\n", "---\n", "(4.125, 53.0, 2, 53.0)\n", "(0.45, 53.0, 2, 1400.0)\n", "---\n", "(4.575, 44.0, 1, None)\n", "(0.325, 44.0, 1, None)\n", "---\n", "(4.9, 44.0, 1, None)\n", "(0.225, 44.0, 1, None)\n", "---\n", "(5.125, 42.0, 1, 42.0)\n", "(0.2, 42.0, 1, -1100.0)\n", "---\n", "(5.325, 51.0, 2, 51.0)\n", "(0.75, 51.0, 2, 900.0)\n", "---\n", "(6.075, 42.0, 1, None)\n", "(0.325, 42.0, 1, None)\n", "---\n", "(6.4, 39.0, 0, None)\n", "(0.05, 39.0, 0, None)\n", "---\n", "(6.45, 42.0, 1, None)\n", "(0.25, 42.0, 1, None)\n", "---\n", "(6.7, 42.0, 1, None)\n", "(0.075, 42.0, 1, None)\n", "---\n", "(6.775, 39.0, 0, None)\n", "(0.05, 39.0, 0, None)\n", "---\n", "(6.825, 41.0, 1, 41.0)\n", "(0.25, 41.0, 1, -1000.0)\n", "---\n", "(7.075, 39.0, 0, None)\n", "(0.1, 39.0, 0, None)\n", "---\n", "(7.175, 37.0, 0, 37.0)\n", "(1.075, 37.0, 0, -400.0)\n", "---\n", "(8.25, 37.0, 0, None)\n", "(0.25, 37.0, 0, None)\n", "---\n", "(8.5, 37.0, 0, None)\n", "(0.25, 37.0, 0, None)\n", "---\n", "(8.75, 37.0, 0, None)\n", "(0.125, 37.0, 0, None)\n", "---\n", "(8.875, 36.0, 0, 36.0)\n", "(1.1, 36.0, 0, -100.0)\n", "---\n", "(9.975, 41.0, 1, None)\n", "(0.3, 41.0, 1, None)\n", "---\n", "(10.275, 41.0, 1, None)\n", "(0.25, 41.0, 1, None)\n", "---\n", "(10.525, 41.0, 1, None)\n", "(0.2, 41.0, 1, None)\n", "---\n", "(10.725, 42.0, 1, 42.0)\n", "(0.075, 42.0, 1, 600.0)\n", "---\n", "(10.8, 51.0, 2, None)\n", "(0.375, 51.0, 2, None)\n", "---\n", "(11.175, 51.0, 2, None)\n", "(0.15, 51.0, 2, None)\n", "---\n", "(11.325, 49.0, 2, 49.0)\n", "(0.725, 49.0, 2, 700.0)\n", "---\n", "(12.05, 48.0, 2, 48.0)\n", "(0.05, 48.0, 2, -100.0)\n", "---\n", "(12.1, 36.0, 0, None)\n", "(0.325, 36.0, 0, None)\n", "---\n", "(12.425, 36.0, 0, None)\n", "(0.2, 36.0, 0, None)\n", "---\n", "(12.625, 37.0, 0, 37.0)\n", "(0.075, 37.0, 0, -1100.0)\n", "---\n", "(12.7, 42.0, 1, None)\n", "(0.275, 42.0, 1, None)\n", "---\n", "(12.975, 42.0, 1, None)\n", "(0.05, 42.0, 1, None)\n", "---\n", "(13.025, 49.0, 2, 49.0)\n", "(0.325, 49.0, 2, 1200.0)\n", "---\n", "(13.35, 39.0, 0, 39.0)\n", "(0.0, 39.0, 0, -1000.0)\n", "---\n", "(13.35, 42.0, 1, None)\n", "(0.05, 42.0, 1, None)\n", "---\n", "(13.4, 44.0, 1, 44.0)\n", "(0.35, 44.0, 1, 500.0)\n", "---\n", "(13.75, 51.0, 2, 51.0)\n", "(0.225, 51.0, 2, 700.0)\n", "---\n", "(13.975, 40.0, 0, 40.0)\n", "(0.05, 40.0, 0, -1100.0)\n", "---\n", "(14.025, 39.0, 0, 39.0)\n", "(0.05, 39.0, 0, -100.0)\n", "---\n", "(14.075, 44.0, 1, 44.0)\n", "(0.3, 44.0, 1, 500.0)\n", "---\n", "(14.375, 52.0, 2, 52.0)\n", "(0.05, 52.0, 2, 800.0)\n", "---\n", "(14.425, 51.0, 2, 51.0)\n", "(0.75, 51.0, 2, -100.0)\n", "---\n", "(15.175, 42.0, 1, 42.0)\n", "(0.05, 42.0, 1, -900.0)\n", "---\n", "(15.225, 41.0, 1, 41.0)\n", "(0.3, 41.0, 1, -100.0)\n", "---\n", "(15.525, 39.0, 0, None)\n", "(0.3, 39.0, 0, None)\n", "---\n", "(15.825, 39.0, 0, None)\n", "(0.325, 39.0, 0, None)\n", "---\n", "(16.15, 39.0, 0, None)\n", "(0.275, 39.0, 0, None)\n", "---\n", "(16.425, 39.0, 0, None)\n", "(0.05, 39.0, 0, None)\n", "---\n", "(16.475, 37.0, 0, 37.0)\n", "(0.15, 37.0, 0, -400.0)\n", "---\n", "(16.625, 41.0, 1, None)\n", "(0.05, 41.0, 1, None)\n", "---\n", "(16.675, 36.0, 0, 36.0)\n", "(0.225, 36.0, 0, -100.0)\n", "---\n", "(16.9, 41.0, 1, None)\n", "(0.275, 41.0, 1, None)\n", "---\n", "(17.175, 41.0, 1, None)\n", "(0.025, 41.0, 1, None)\n", "---\n", "(17.2, 51.0, 2, None)\n", "(0.275, 51.0, 2, None)\n", "---\n", "(17.475, 44.0, 1, 44.0)\n", "(0.0, 44.0, 1, 800.0)\n", "---\n", "(17.475, 51.0, 2, None)\n", "(0.375, 51.0, 2, None)\n", "---\n", "(17.85, 51.0, 2, None)\n", "(0.225, 51.0, 2, None)\n", "---\n", "(18.075, 49.0, 2, 49.0)\n", "(0.2, 49.0, 2, 500.0)\n", "---\n", "(18.275, 48.0, 2, 48.0)\n", "(0.85, 48.0, 2, -100.0)\n", "---\n", "(19.125, 44.0, 1, None)\n", "(0.3, 44.0, 1, None)\n", "---\n", "(19.425, 44.0, 1, None)\n", "(0.325, 44.0, 1, None)\n", "---\n", "(19.75, 44.0, 1, None)\n", "(0.25, 44.0, 1, None)\n", "---\n", "(20.0, 44.0, 1, None)\n", "(0.05, 44.0, 1, None)\n", "---\n", "(20.05, 36.0, 0, None)\n", "(0.025, 36.0, 0, None)\n", "---\n", "(20.075, 46.0, 1, 46.0)\n", "(0.3, 46.0, 1, -200.0)\n", "---\n", "(20.375, 36.0, 0, None)\n", "(0.2, 36.0, 0, None)\n", "---\n", "(20.575, 39.0, 0, 39.0)\n", "(0.6, 39.0, 0, -700.0)\n", "---\n", "(21.175, 48.0, 2, None)\n", "(0.15, 48.0, 2, None)\n", "---\n", "(21.325, 46.0, 1, None)\n", "(0.125, 46.0, 1, None)\n", "---\n", "(21.45, 48.0, 2, None)\n", "(0.2, 48.0, 2, None)\n", "---\n", "(21.65, 46.0, 1, None)\n", "(0.075, 46.0, 1, None)\n", "---\n", "(21.725, 48.0, 2, None)\n", "(0.15, 48.0, 2, None)\n", "---\n", "(21.875, 44.0, 1, 44.0)\n", "(0.1, 44.0, 1, 500.0)\n", "---\n", "(21.975, 48.0, 2, None)\n", "(0.2, 48.0, 2, None)\n", "---\n", "(22.175, 51.0, 2, 51.0)\n", "(0.125, 51.0, 2, 700.0)\n", "---\n", "(22.3, 39.0, 0, None)\n", "(0.3, 39.0, 0, None)\n", "---\n", "(22.6, 39.0, 0, None)\n", "(0.325, 39.0, 0, None)\n", "---\n", "(22.925, 39.0, 0, None)\n", "(0.175, 39.0, 0, None)\n", "---\n", "(23.1, 41.0, 0, 41.0)\n", "(0.45, 41.0, 0, -1000.0)\n", "---\n", "(23.55, 39.0, 0, 39.0)\n", "(0.425, 39.0, 0, -200.0)\n", "---\n", "(23.975, 51.0, 2, None)\n", "(0.325, 51.0, 2, None)\n", "---\n", "(24.3, 51.0, 2, None)\n", "(0.25, 51.0, 2, None)\n", "---\n", "(24.55, 51.0, 2, None)\n", "(0.225, 51.0, 2, None)\n", "---\n", "(24.775, 53.0, 2, 53.0)\n", "(0.375, 53.0, 2, 1400.0)\n", "---\n", "(25.15, 40.0, 0, 40.0)\n", "(0.225, 40.0, 0, -1300.0)\n", "---\n", "(25.375, 44.0, 1, None)\n", "(0.25, 44.0, 1, None)\n", "---\n", "(25.625, 44.0, 1, None)\n", "(0.275, 44.0, 1, None)\n", "---\n", "(25.9, 44.0, 1, None)\n", "(0.325, 44.0, 1, None)\n", "---\n", "(26.225, 44.0, 1, None)\n", "(0.025, 44.0, 1, None)\n", "---\n", "(26.25, 45.0, 1, 45.0)\n", "(0.175, 45.0, 1, 500.0)\n", "---\n", "(26.425, 51.0, 2, 51.0)\n", "(0.225, 51.0, 2, 600.0)\n", "---\n", "(26.65, 41.0, 1, 41.0)\n", "(0.025, 41.0, 1, -1000.0)\n", "---\n", "(26.675, 36.0, 0, 36.0)\n", "(1.3, 36.0, 0, -500.0)\n", "---\n", "(27.975, 46.0, 1, 46.0)\n", "(0.05, 46.0, 1, 1000.0)\n", "---\n", "(28.025, 52.0, 2, 52.0)\n", "(0.4, 52.0, 2, 600.0)\n", "---\n", "(28.425, 48.0, 2, 48.0)\n", "(1.2, 48.0, 2, -400.0)\n", "---\n", "(29.625, 46.0, 1, None)\n", "(0.325, 46.0, 1, None)\n", "---\n", "(29.95, 46.0, 1, None)\n", "(0.275, 46.0, 1, None)\n", "---\n", "(30.225, 44.0, 1, 44.0)\n", "(0.25, 44.0, 1, -400.0)\n", "---\n", "(30.475, 48.0, 2, None)\n", "(0.275, 48.0, 2, None)\n", "---\n", "(30.75, 48.0, 2, None)\n", "(0.175, 48.0, 2, None)\n", "---\n", "(30.925, 42.0, 1, 42.0)\n", "(0.1, 42.0, 1, -200.0)\n", "---\n", "(31.025, 53.0, 2, 53.0)\n", "(0.1, 53.0, 2, 1100.0)\n", "---\n", "(31.125, 36.0, 0, None)\n", "(0.25, 36.0, 0, None)\n", "---\n", "(31.375, 36.0, 0, None)\n", "(0.325, 36.0, 0, None)\n", "---\n", "(31.7, 36.0, 0, None)\n", "(0.275, 36.0, 0, None)\n", "---\n", "(31.975, 41.0, 0, 41.0)\n", "(0.55, 41.0, 0, -1200.0)\n", "---\n", "(32.525, 53.0, 2, None)\n", "(0.275, 53.0, 2, None)\n", "---\n", "(32.8, 53.0, 2, None)\n", "(0.35, 53.0, 2, None)\n", "---\n", "(33.15, 53.0, 2, None)\n", "(0.075, 53.0, 2, None)\n", "---\n", "(33.225, 41.0, 0, None)\n", "(0.2, 41.0, 0, None)\n", "---\n", "(33.425, 51.0, 2, 51.0)\n", "(0.175, 51.0, 2, 1000.0)\n", "---\n", "(33.6, 41.0, 0, None)\n", "(0.175, 41.0, 0, None)\n", "---\n", "(33.775, 39.0, 0, 39.0)\n", "(0.175, 39.0, 0, -1200.0)\n", "---\n", "(33.95, 37.0, 0, 37.0)\n", "(0.175, 37.0, 0, -200.0)\n", "---\n", "(34.125, 49.0, 2, 49.0)\n", "(1.375, 49.0, 2, 1200.0)\n", "---\n", "(35.5, 40.0, 0, 40.0)\n", "(0.025, 40.0, 0, -900.0)\n", "---\n", "(35.525, 41.0, 0, 41.0)\n", "(0.25, 41.0, 0, 100.0)\n", "---\n", "(35.775, 40.0, 0, 40.0)\n", "(0.85, 40.0, 0, -100.0)\n", "---\n", "(36.625, 42.0, 1, None)\n", "(0.325, 42.0, 1, None)\n", "---\n", "(36.95, 42.0, 1, None)\n", "(0.175, 42.0, 1, None)\n", "---\n", "(37.125, 45.0, 1, 45.0)\n", "(0.1, 45.0, 1, 500.0)\n", "---\n", "(37.225, 46.0, 1, 46.0)\n", "(0.25, 46.0, 1, 100.0)\n", "---\n", "(37.475, 39.0, 0, 39.0)\n", "(0.375, 39.0, 0, -700.0)\n", "---\n", "(37.85, 45.0, 1, 45.0)\n", "(0.425, 45.0, 1, 600.0)\n", "---\n", "(38.275, 44.0, 1, 44.0)\n", "(0.575, 44.0, 1, -100.0)\n", "---\n", "(38.85, 45.0, 1, 45.0)\n", "(0.1, 45.0, 1, 100.0)\n", "---\n", "(38.95, 44.0, 1, 44.0)\n", "(0.025, 44.0, 1, -100.0)\n", "---\n", "(38.975, 39.0, 0, None)\n", "(0.2, 39.0, 0, None)\n", "---\n", "(39.175, 42.0, 1, 42.0)\n", "(0.075, 42.0, 1, -200.0)\n", "---\n", "(39.25, 39.0, 0, None)\n", "(0.1, 39.0, 0, None)\n", "---\n", "(39.35, 49.0, 2, None)\n", "(0.025, 49.0, 2, None)\n", "---\n", "(39.375, 41.0, 1, 41.0)\n", "(0.125, 41.0, 1, -100.0)\n", "---\n", "(39.5, 39.0, 0, None)\n", "(0.1, 39.0, 0, None)\n", "---\n", "(39.6, 39.0, 1, 39.0)\n", "(0.0, 39.0, 1, -200.0)\n", "---\n", "(39.6, 49.0, 2, None)\n", "(0.175, 49.0, 2, None)\n", "---\n", "(39.775, 40.0, 0, 40.0)\n", "(0.125, 40.0, 0, 100.0)\n", "---\n", "(39.9, 49.0, 2, None)\n", "(0.25, 49.0, 2, None)\n", "---\n", "(40.15, 49.0, 2, None)\n", "(0.025, 49.0, 2, None)\n", "---\n", "(40.175, 39.0, 0, 39.0)\n", "(0.15, 39.0, 0, -100.0)\n", "---\n", "(40.325, 52.0, 2, 52.0)\n", "(0.1, 52.0, 2, 1300.0)\n", "---\n", "(40.425, 53.0, 2, 53.0)\n", "(0.625, 53.0, 2, 100.0)\n", "---\n", "(41.05, 52.0, 2, 52.0)\n", "(0.025, 52.0, 2, -100.0)\n", "---\n", "(41.075, 37.0, 0, 37.0)\n", "(0.4, 37.0, 0, -1500.0)\n", "---\n", "(41.475, 51.0, 2, 51.0)\n", "(0.4, 51.0, 2, 1400.0)\n", "---\n", "(41.875, 36.0, 0, 36.0)\n", "(0.175, 36.0, 0, -1500.0)\n", "---\n", "(42.05, 39.0, 1, None)\n", "(0.0, 39.0, 1, None)\n", "---\n", "(42.05, 52.0, 2, 52.0)\n", "(0.1, 52.0, 2, 1600.0)\n", "---\n", "(42.15, 51.0, 2, 51.0)\n", "(0.15, 51.0, 2, -100.0)\n", "---\n", "(42.3, 39.0, 1, None)\n", "(0.075, 39.0, 1, None)\n", "---\n", "(42.375, 49.0, 2, 49.0)\n", "(0.2, 49.0, 2, -200.0)\n", "---\n", "(42.575, 48.0, 2, 48.0)\n", "(0.075, 48.0, 2, -100.0)\n", "---\n", "(42.65, 39.0, 1, None)\n", "(0.125, 39.0, 1, None)\n", "---\n", "(42.775, 34.0, 0, 34.0)\n", "(0.025, 34.0, 0, -1400.0)\n", "---\n", "(42.8, 46.0, 2, 46.0)\n", "(0.075, 46.0, 2, 1200.0)\n", "---\n", "(42.875, 44.0, 1, 44.0)\n", "(0.3, 44.0, 1, -200.0)\n", "---\n", "(43.175, 45.0, 1, 45.0)\n", "(0.85, 45.0, 1, 100.0)\n", "---\n", "(44.025, 46.0, 2, None)\n", "(0.2, 46.0, 2, None)\n", "---\n", "(44.225, 34.0, 0, None)\n", "(0.125, 34.0, 0, None)\n", "---\n", "(44.35, 46.0, 2, None)\n", "(0.175, 46.0, 2, None)\n", "---\n", "(44.525, 34.0, 0, None)\n", "(0.05, 34.0, 0, None)\n", "---\n", "(44.575, 51.0, 2, 51.0)\n", "(0.25, 51.0, 2, 600.0)\n", "---\n", "(44.825, 34.0, 0, None)\n", "(0.05, 34.0, 0, None)\n", "---\n", "(44.875, 52.0, 2, 52.0)\n", "(0.2, 52.0, 2, 100.0)\n", "---\n", "(45.075, 39.0, 0, 39.0)\n", "(0.075, 39.0, 0, -1300.0)\n", "---\n", "(45.15, 40.0, 0, 40.0)\n", "(0.825, 40.0, 0, 100.0)\n", "---\n", "(45.975, 40.0, 0, None)\n", "(0.375, 40.0, 0, None)\n", "---\n", "(46.35, 40.0, 0, None)\n", "(0.225, 40.0, 0, None)\n", "---\n", "(46.575, 42.0, 0, 42.0)\n", "(0.1, 42.0, 0, 200.0)\n", "---\n", "(46.675, 45.0, 1, None)\n", "(0.3, 45.0, 1, None)\n", "---\n", "(46.975, 44.0, 0, 44.0)\n", "(0.05, 44.0, 0, 200.0)\n", "---\n", "(47.025, 45.0, 1, None)\n", "(0.25, 45.0, 1, None)\n", "---\n", "(47.275, 45.0, 0, 45.0)\n", "(0.1, 45.0, 0, 100.0)\n", "---\n", "(47.375, 45.0, 1, None)\n", "(0.25, 45.0, 1, None)\n", "---\n", "(47.625, 45.0, 1, None)\n", "(0.05, 45.0, 1, None)\n", "---\n", "(47.675, 47.0, 1, 47.0)\n", "(0.4, 47.0, 1, 200.0)\n", "---\n", "(48.075, 49.0, 1, 49.0)\n", "(0.3, 49.0, 1, 200.0)\n", "---\n", "(48.375, 50.0, 1, 50.0)\n", "(0.025, 50.0, 1, 100.0)\n", "---\n", "(48.4, 52.0, 2, None)\n", "(0.275, 52.0, 2, None)\n", "---\n", "(48.675, 52.0, 2, None)\n", "(0.25, 52.0, 2, None)\n", "---\n", "(48.925, 52.0, 2, None)\n", "(0.05, 52.0, 2, None)\n", "---\n", "(48.975, 45.0, 0, None)\n", "(0.2, 45.0, 0, None)\n", "---\n", "(49.175, 52.0, 2, None)\n", "(0.1, 52.0, 2, None)\n", "---\n", "(49.275, 45.0, 0, None)\n", "(0.1, 45.0, 0, None)\n", "---\n", "(49.375, 54.0, 2, 54.0)\n", "(0.1, 54.0, 2, 400.0)\n", "---\n", "(49.475, 41.0, 0, 41.0)\n", "(0.3, 41.0, 0, -1300.0)\n", "---\n", "(49.775, 56.0, 2, 56.0)\n", "(0.3, 56.0, 2, 1500.0)\n", "---\n", "(50.075, 57.0, 2, 57.0)\n", "(0.125, 57.0, 2, 100.0)\n", "---\n", "(50.2, 46.0, 1, 46.0)\n", "(1.175, 46.0, 1, -1100.0)\n", "---\n", "(51.375, 57.0, 2, None)\n", "(0.3, 57.0, 2, None)\n", "---\n", "(51.675, 57.0, 2, None)\n", "(0.05, 57.0, 2, None)\n", "---\n", "(51.725, 50.0, 1, 50.0)\n", "(0.3, 50.0, 1, 400.0)\n", "---\n", "(52.025, 57.0, 2, None)\n", "(0.05, 57.0, 2, None)\n", "---\n", "(52.075, 48.0, 1, 48.0)\n", "(0.025, 48.0, 1, -200.0)\n", "---\n", "(52.1, 47.0, 1, 47.0)\n", "(0.15, 47.0, 1, -100.0)\n", "---\n", "(52.25, 44.0, 1, 44.0)\n", "(0.025, 44.0, 1, -300.0)\n", "---\n", "(52.275, 53.0, 2, 53.0)\n", "(2.0, 53.0, 2, 900.0)\n", "---\n", "(54.275, 41.0, 0, None)\n", "(0.35, 41.0, 0, None)\n", "---\n", "(54.625, 41.0, 0, None)\n", "(0.2, 41.0, 0, None)\n", "---\n", "(54.825, 45.0, 0, 45.0)\n", "(0.35, 45.0, 0, -800.0)\n", "---\n", "(55.175, 43.0, 0, 43.0)\n", "(0.025, 43.0, 0, -200.0)\n", "---\n", "(55.2, 42.0, 0, 42.0)\n", "(0.15, 42.0, 0, -100.0)\n", "---\n", "(55.35, 39.0, 0, 39.0)\n", "(0.475, 39.0, 0, -300.0)\n", "---\n", "(55.825, 53.0, 2, None)\n", "(0.3, 53.0, 2, None)\n", "---\n", "(56.125, 53.0, 2, None)\n", "(0.225, 53.0, 2, None)\n", "---\n", "(56.35, 57.0, 2, 57.0)\n", "(0.35, 57.0, 2, 1800.0)\n", "---\n", "(56.7, 55.0, 2, 55.0)\n", "(0.025, 55.0, 2, -200.0)\n", "---\n", "(56.725, 54.0, 2, 54.0)\n", "(0.15, 54.0, 2, -100.0)\n", "---\n", "(56.875, 51.0, 2, 51.0)\n", "(1.725, 51.0, 2, -300.0)\n", "---\n", "(58.6, 39.0, 0, None)\n", "(0.175, 39.0, 0, None)\n", "---\n", "(58.775, 51.0, 2, None)\n", "(0.125, 51.0, 2, None)\n", "---\n", "(58.9, 44.0, 1, None)\n", "(0.05, 44.0, 1, None)\n", "---\n", "(58.95, 39.0, 0, None)\n", "(0.1, 39.0, 0, None)\n", "---\n", "(59.05, 51.0, 2, None)\n", "(0.175, 51.0, 2, None)\n", "---\n", "(59.225, 44.0, 1, None)\n", "(0.025, 44.0, 1, None)\n", "---\n", "(59.25, 39.0, 0, None)\n", "(0.05, 39.0, 0, None)\n", "---\n", "(59.3, 51.0, 2, None)\n", "(0.175, 51.0, 2, None)\n", "---\n", "(59.475, 41.0, 0, 41.0)\n", "(0.05, 41.0, 0, -1000.0)\n", "---\n", "(59.525, 46.0, 1, 46.0)\n", "(0.075, 46.0, 1, 500.0)\n", "---\n", "(59.6, 51.0, 2, None)\n", "(0.125, 51.0, 2, None)\n", "---\n", "(59.725, 53.0, 2, 53.0)\n", "(1.05, 53.0, 2, 700.0)\n", "---\n", "(60.775, 41.0, 0, None)\n", "(0.15, 41.0, 0, None)\n", "---\n", "(60.925, 46.0, 1, None)\n", "(0.225, 46.0, 1, None)\n", "---\n", "(61.15, 41.0, 0, None)\n", "(0.025, 41.0, 0, None)\n", "---\n", "(61.175, 46.0, 1, None)\n", "(0.25, 46.0, 1, None)\n", "---\n", "(61.425, 53.0, 2, None)\n", "(0.075, 53.0, 2, None)\n", "---\n", "(61.5, 41.0, 0, None)\n", "(0.05, 41.0, 0, None)\n", "---\n", "(61.55, 46.0, 1, None)\n", "(0.125, 46.0, 1, None)\n", "---\n", "(61.675, 39.0, 0, 39.0)\n", "(0.05, 39.0, 0, -1400.0)\n", "---\n", "(61.725, 44.0, 1, 44.0)\n", "(0.0, 44.0, 1, 500.0)\n", "---\n", "(61.725, 53.0, 2, None)\n", "(0.2, 53.0, 2, None)\n", "---\n", "(61.925, 51.0, 2, 51.0)\n", "(1.525, 51.0, 2, 700.0)\n", "---\n", "(63.45, 44.0, 1, None)\n", "(0.25, 44.0, 1, None)\n", "---\n", "(63.7, 44.0, 1, None)\n", "(0.35, 44.0, 1, None)\n", "---\n", "(64.05, 42.0, 1, 42.0)\n", "(0.45, 42.0, 1, -900.0)\n", "---\n", "(64.5, 41.0, 1, 41.0)\n", "(0.7, 41.0, 1, -100.0)\n", "---\n", "(65.2, 39.0, 0, None)\n", "(0.375, 39.0, 0, None)\n", "---\n", "(65.575, 39.0, 0, None)\n", "(0.325, 39.0, 0, None)\n", "---\n", "(65.9, 41.0, 1, None)\n", "(0.025, 41.0, 1, None)\n", "---\n", "(65.925, 39.0, 0, None)\n", "(0.175, 39.0, 0, None)\n", "---\n", "(66.1, 37.0, 0, 37.0)\n", "(0.1, 37.0, 0, -400.0)\n", "---\n", "(66.2, 41.0, 1, None)\n", "(0.3, 41.0, 1, None)\n", "---\n", "(66.5, 41.0, 1, None)\n", "(0.05, 41.0, 1, None)\n", "---\n", "(66.55, 36.0, 0, 36.0)\n", "(0.025, 36.0, 0, -100.0)\n", "---\n", "(66.575, 42.0, 1, 42.0)\n", "(0.5, 42.0, 1, 600.0)\n", "---\n", "(67.075, 36.0, 0, None)\n", "(0.25, 36.0, 0, None)\n", "---\n", "(67.325, 36.0, 0, None)\n", "(0.25, 36.0, 0, None)\n", "---\n", "(67.575, 37.0, 0, 37.0)\n", "(0.1, 37.0, 0, -500.0)\n", "---\n", "(67.675, 44.0, 1, 44.0)\n", "(1.0, 44.0, 1, 700.0)\n", "---\n", "(68.675, 39.0, 0, 39.0)\n", "(0.175, 39.0, 0, -500.0)\n", "---\n", "(68.85, 51.0, 2, None)\n", "(0.25, 51.0, 2, None)\n", "---\n", "(69.1, 51.0, 2, None)\n", "(0.3, 51.0, 2, None)\n", "---\n", "(69.4, 51.0, 2, None)\n", "(0.025, 51.0, 2, None)\n", "---\n", "(69.425, 49.0, 2, 49.0)\n", "(1.125, 49.0, 2, 1000.0)\n", "---\n", "(70.55, 48.0, 2, 48.0)\n", "(0.725, 48.0, 2, -100.0)\n", "---\n", "(71.275, 49.0, 2, 49.0)\n", "(0.275, 49.0, 2, 100.0)\n", "---\n", "(71.55, 51.0, 2, 51.0)\n", "(0.4, 51.0, 2, 200.0)\n", "---\n", "(71.95, 44.0, 1, None)\n", "(0.3, 44.0, 1, None)\n", "---\n", "(72.25, 44.0, 1, None)\n", "(0.25, 44.0, 1, None)\n", "---\n", "(72.5, 44.0, 1, None)\n", "(0.275, 44.0, 1, None)\n", "---\n", "(72.775, 44.0, 1, None)\n", "(0.075, 44.0, 1, None)\n", "---\n", "(72.85, 50.0, 2, 50.0)\n", "(0.025, 50.0, 2, -100.0)\n", "---\n", "(72.875, 43.0, 1, 43.0)\n", "(0.075, 43.0, 1, -700.0)\n", "---\n", "(72.95, 52.0, 2, 52.0)\n", "(0.05, 52.0, 2, 900.0)\n", "---\n", "(73.0, 53.0, 2, 53.0)\n", "(0.175, 53.0, 2, 100.0)\n", "---\n", "(73.175, 39.0, 0, None)\n", "(0.1, 39.0, 0, None)\n", "---\n", "(73.275, 45.0, 1, 45.0)\n", "(0.2, 45.0, 1, -800.0)\n", "---\n", "(73.475, 39.0, 0, None)\n", "(0.0, 39.0, 0, None)\n", "---\n", "(73.475, 46.0, 1, 46.0)\n", "(0.35, 46.0, 1, 100.0)\n", "---\n", "(73.825, 39.0, 0, None)\n", "(0.05, 39.0, 0, None)\n", "---\n", "(73.875, 38.0, 0, 38.0)\n", "(0.05, 38.0, 0, -800.0)\n", "---\n", "(73.925, 53.0, 2, None)\n", "(0.25, 53.0, 2, None)\n", "---\n", "(74.175, 53.0, 2, None)\n", "(0.1, 53.0, 2, None)\n", "---\n", "(74.275, 40.0, 0, 40.0)\n", "(0.2, 40.0, 0, 200.0)\n", "---\n", "(74.475, 41.0, 0, 41.0)\n", "(0.4, 41.0, 0, 100.0)\n", "---\n", "(74.875, 44.0, 1, 44.0)\n", "(0.275, 44.0, 1, 300.0)\n", "---\n", "(75.15, 48.0, 1, 48.0)\n", "(0.1, 48.0, 1, 400.0)\n", "---\n", "(75.25, 50.0, 1, 50.0)\n", "(0.2, 50.0, 1, 200.0)\n", "---\n", "(75.45, 49.0, 1, 49.0)\n", "(0.125, 49.0, 1, -100.0)\n", "---\n", "(75.575, 55.0, 2, 55.0)\n", "(0.3, 55.0, 2, 600.0)\n", "---\n", "(75.875, 39.0, 0, 39.0)\n", "(0.1, 39.0, 0, -1600.0)\n", "---\n", "(75.975, 57.0, 2, 57.0)\n", "(0.175, 57.0, 2, 1800.0)\n", "---\n", "(76.15, 43.0, 0, 43.0)\n", "(0.1, 43.0, 0, -1400.0)\n", "---\n", "(76.25, 45.0, 0, 45.0)\n", "(0.175, 45.0, 0, 200.0)\n", "---\n", "(76.425, 50.0, 1, 50.0)\n", "(0.025, 50.0, 1, 500.0)\n", "---\n", "(76.45, 44.0, 0, 44.0)\n", "(0.225, 44.0, 0, -600.0)\n", "---\n", "(76.675, 49.0, 1, 49.0)\n", "(0.1, 49.0, 1, 500.0)\n", "---\n", "(76.775, 56.0, 2, 56.0)\n", "(0.15, 56.0, 2, 700.0)\n", "---\n", "(76.925, 46.0, 1, 46.0)\n", "(0.5, 46.0, 1, -1000.0)\n", "---\n", "(77.425, 45.0, 0, 45.0)\n", "(0.25, 45.0, 0, -100.0)\n", "---\n", "(77.675, 44.0, 0, 44.0)\n", "(0.025, 44.0, 0, -100.0)\n", "---\n", "(77.7, 46.0, 1, None)\n", "(0.375, 46.0, 1, None)\n", "---\n", "(78.075, 46.0, 1, None)\n", "(0.25, 46.0, 1, None)\n", "---\n", "(78.325, 44.0, 1, 44.0)\n", "(0.35, 44.0, 1, 0.0)\n", "---\n", "(78.675, 41.0, 0, 41.0)\n", "(0.95, 41.0, 0, -300.0)\n", "---\n", "(79.625, 41.0, 0, None)\n", "(0.375, 41.0, 0, None)\n", "---\n", "(80.0, 41.0, 0, None)\n", "(0.075, 41.0, 0, None)\n", "---\n", "(80.075, 56.0, 2, None)\n", "(0.2, 56.0, 2, None)\n", "---\n", "(80.275, 41.0, 0, None)\n", "(0.05, 41.0, 0, None)\n", "---\n", "(80.325, 56.0, 2, None)\n", "(0.05, 56.0, 2, None)\n", "---\n", "(80.375, 39.0, 0, 39.0)\n", "(0.3, 39.0, 0, -200.0)\n", "---\n", "(80.675, 57.0, 2, 57.0)\n", "(1.0, 57.0, 2, 1800.0)\n", "---\n", "(81.675, 56.0, 2, 56.0)\n", "(1.0, 56.0, 2, -100.0)\n", "---\n", "(82.675, 53.0, 2, 53.0)\n", "(0.925, 53.0, 2, -300.0)\n", "---\n", "(83.6, 53.0, 2, None)\n", "(0.325, 53.0, 2, None)\n", "---\n", "(83.925, 53.0, 2, None)\n", "(0.25, 53.0, 2, None)\n", "---\n", "(84.175, 53.0, 2, None)\n", "(0.2, 53.0, 2, None)\n", "---\n", "(84.375, 51.0, 2, 51.0)\n", "(2.05, 51.0, 2, -200.0)\n", "---\n", "(86.425, 39.0, 0, None)\n", "(0.0, 39.0, 0, None)\n", "---\n", "(86.425, 44.0, 1, None)\n", "(0.25, 44.0, 1, None)\n", "---\n", "(86.675, 39.0, 0, None)\n", "(0.0, 39.0, 0, None)\n", "---\n", "(86.675, 51.0, 2, None)\n", "(0.05, 51.0, 2, None)\n", "---\n", "(86.725, 44.0, 1, None)\n", "(0.2, 44.0, 1, None)\n", "---\n", "(86.925, 39.0, 0, None)\n", "(0.05, 39.0, 0, None)\n", "---\n", "(86.975, 44.0, 1, None)\n", "(0.025, 44.0, 1, None)\n", "---\n", "(87.0, 41.0, 0, 41.0)\n", "(0.0, 41.0, 0, -1000.0)\n", "---\n", "(87.0, 51.0, 2, None)\n", "(0.05, 51.0, 2, None)\n", "---\n", "(87.05, 46.0, 1, 46.0)\n", "(0.2, 46.0, 1, 500.0)\n", "---\n", "(87.25, 53.0, 2, 53.0)\n", "(0.2, 53.0, 2, 700.0)\n", "---\n", "(87.45, 39.0, 0, 39.0)\n", "(0.05, 39.0, 0, -1400.0)\n", "---\n", "(87.5, 44.0, 1, 44.0)\n", "(0.2, 44.0, 1, 500.0)\n", "---\n", "(87.7, 51.0, 2, 51.0)\n", "(1.75, 51.0, 2, 700.0)\n", "---\n", "(89.45, 44.0, 1, None)\n", "(0.325, 44.0, 1, None)\n", "---\n", "(89.775, 44.0, 1, None)\n", "(0.25, 44.0, 1, None)\n", "---\n", "(90.025, 44.0, 1, None)\n", "(0.15, 44.0, 1, None)\n", "---\n", "(90.175, 41.0, 1, 41.0)\n", "(1.5, 41.0, 1, -1000.0)\n", "---\n", "(91.675, 42.0, 1, 42.0)\n", "(0.875, 42.0, 1, 100.0)\n", "---\n", "(92.55, 39.0, 0, None)\n", "(0.325, 39.0, 0, None)\n", "---\n", "(92.875, 39.0, 0, None)\n", "(0.275, 39.0, 0, None)\n", "---\n", "(93.15, 39.0, 0, None)\n", "(0.125, 39.0, 0, None)\n", "---\n", "(93.275, 36.0, 0, 36.0)\n", "(0.525, 36.0, 0, -600.0)\n", "---\n", "(93.8, 42.0, 1, None)\n", "(0.3, 42.0, 1, None)\n", "---\n", "(94.1, 42.0, 1, None)\n", "(0.175, 42.0, 1, None)\n", "---\n", "(94.275, 36.0, 0, None)\n", "(0.025, 36.0, 0, None)\n", "---\n", "(94.3, 51.0, 2, None)\n", "(0.05, 51.0, 2, None)\n", "---\n", "(94.35, 42.0, 1, None)\n", "(0.2, 42.0, 1, None)\n", "---\n", "(94.55, 51.0, 2, None)\n", "(0.025, 51.0, 2, None)\n", "---\n", "(94.575, 39.0, 1, 39.0)\n", "(0.075, 39.0, 1, 300.0)\n", "---\n", "(94.65, 36.0, 0, None)\n", "(0.125, 36.0, 0, None)\n", "---\n", "(94.775, 37.0, 0, 37.0)\n", "(0.025, 37.0, 0, -200.0)\n", "---\n", "(94.8, 48.0, 2, 48.0)\n", "(0.575, 48.0, 2, 1100.0)\n", "---\n", "(95.375, 46.0, 1, 46.0)\n", "(0.3, 46.0, 1, -200.0)\n", "---\n", "(95.675, 47.0, 1, 47.0)\n", "(0.3, 47.0, 1, 100.0)\n", "---\n", "(95.975, 37.0, 0, None)\n", "(0.325, 37.0, 0, None)\n", "---\n", "(96.3, 37.0, 0, None)\n", "(0.0, 37.0, 0, None)\n", "---\n", "(96.3, 49.0, 2, 49.0)\n", "(0.325, 49.0, 2, 200.0)\n", "---\n", "(96.625, 37.0, 0, None)\n", "(0.225, 37.0, 0, None)\n", "---\n", "(96.85, 34.0, 0, 34.0)\n", "(0.1, 34.0, 0, -1500.0)\n", "---\n", "(96.95, 47.0, 1, None)\n", "(0.1, 47.0, 1, None)\n", "---\n", "(97.05, 41.0, 0, 41.0)\n", "(0.075, 41.0, 0, 700.0)\n", "---\n", "(97.125, 42.0, 0, 42.0)\n", "(0.1, 42.0, 0, 100.0)\n", "---\n", "(97.225, 47.0, 1, None)\n", "(0.3, 47.0, 1, None)\n", "---\n", "(97.525, 47.0, 1, None)\n", "(0.125, 47.0, 1, None)\n", "---\n", "(97.65, 37.0, 0, 37.0)\n", "(0.125, 37.0, 0, -500.0)\n", "---\n", "(97.775, 42.0, 1, 42.0)\n", "(0.475, 42.0, 1, 500.0)\n", "---\n", "(98.25, 49.0, 2, None)\n", "(0.35, 49.0, 2, None)\n", "---\n", "(98.6, 49.0, 2, None)\n", "(0.25, 49.0, 2, None)\n", "---\n", "(98.85, 49.0, 2, None)\n", "(0.275, 49.0, 2, None)\n", "---\n", "(99.125, 49.0, 2, None)\n", "(0.075, 49.0, 2, None)\n", "---\n", "(99.2, 46.0, 2, 46.0)\n", "(0.6, 46.0, 2, 400.0)\n", "---\n", "(99.8, 42.0, 1, None)\n", "(0.05, 42.0, 1, None)\n", "---\n", "(99.85, 53.0, 2, 53.0)\n", "(0.075, 53.0, 2, 700.0)\n", "---\n", "(99.925, 54.0, 2, 54.0)\n", "(0.25, 54.0, 2, 100.0)\n", "---\n", "(100.175, 42.0, 1, None)\n", "(0.275, 42.0, 1, None)\n", "---\n", "(100.45, 42.0, 1, None)\n", "(0.0, 42.0, 1, None)\n", "---\n", "(100.45, 49.0, 2, 49.0)\n", "(0.1, 49.0, 2, -500.0)\n", "---\n", "(100.55, 44.0, 1, 44.0)\n", "(0.675, 44.0, 1, -500.0)\n", "---\n", "(101.225, 37.0, 0, None)\n", "(0.225, 37.0, 0, None)\n", "---\n", "(101.45, 41.0, 1, 41.0)\n", "(0.125, 41.0, 1, -300.0)\n", "---\n", "(101.575, 37.0, 0, None)\n", "(0.025, 37.0, 0, None)\n", "---\n", "(101.6, 49.0, 2, None)\n", "(0.175, 49.0, 2, None)\n", "---\n", "(101.775, 39.0, 0, 39.0)\n", "(0.175, 39.0, 0, -200.0)\n", "---\n", "(101.95, 49.0, 2, None)\n", "(0.275, 49.0, 2, None)\n", "---\n", "(102.225, 49.0, 2, None)\n", "(0.025, 49.0, 2, None)\n", "---\n", "(102.25, 51.0, 2, 51.0)\n", "(1.5, 51.0, 2, 1200.0)\n", "---\n", "(103.75, 51.0, 2, None)\n", "(0.3, 51.0, 2, None)\n", "---\n", "(104.05, 51.0, 2, None)\n", "(0.375, 51.0, 2, None)\n", "---\n", "(104.425, 48.0, 2, 48.0)\n", "(0.025, 48.0, 2, -300.0)\n", "---\n", "(104.45, 39.0, 0, None)\n", "(0.075, 39.0, 0, None)\n", "---\n", "(104.525, 41.0, 1, None)\n", "(0.25, 41.0, 1, None)\n", "---\n", "(104.775, 41.0, 1, None)\n", "(0.025, 41.0, 1, None)\n", "---\n", "(104.8, 39.0, 0, None)\n", "(0.3, 39.0, 0, None)\n", "---\n", "(105.1, 41.0, 1, None)\n", "(0.05, 41.0, 1, None)\n", "---\n", "(105.15, 39.0, 0, None)\n", "(0.225, 39.0, 0, None)\n", "---\n", "(105.375, 36.0, 0, 36.0)\n", "(0.05, 36.0, 0, -1200.0)\n", "---\n", "(105.425, 44.0, 1, 44.0)\n", "(0.5, 44.0, 1, 800.0)\n", "---\n", "(105.925, 45.0, 1, 45.0)\n", "(0.6, 45.0, 1, 100.0)\n", "---\n", "(106.525, 44.0, 1, 44.0)\n", "(0.275, 44.0, 1, -100.0)\n", "---\n", "(106.8, 36.0, 0, None)\n", "(0.375, 36.0, 0, None)\n", "---\n", "(107.175, 36.0, 0, None)\n", "(0.3, 36.0, 0, None)\n", "---\n", "(107.475, 44.0, 1, None)\n", "(0.025, 44.0, 1, None)\n", "---\n", "(107.5, 36.0, 0, None)\n", "(0.2, 36.0, 0, None)\n", "---\n", "(107.7, 39.0, 0, 39.0)\n", "(0.125, 39.0, 0, -500.0)\n", "---\n", "(107.825, 40.0, 0, 40.0)\n", "(0.025, 40.0, 0, 100.0)\n", "---\n", "(107.85, 44.0, 1, None)\n", "(0.0, 44.0, 1, None)\n", "---\n", "(107.85, 48.0, 2, None)\n", "(0.125, 48.0, 2, None)\n", "---\n", "(107.975, 39.0, 0, 39.0)\n", "(0.125, 39.0, 0, -100.0)\n", "---\n", "(108.1, 44.0, 1, None)\n", "(0.05, 44.0, 1, None)\n", "---\n", "(108.15, 48.0, 2, None)\n", "(0.175, 48.0, 2, None)\n", "---\n", "(108.325, 46.0, 1, 46.0)\n", "(0.1, 46.0, 1, 700.0)\n", "---\n", "(108.425, 41.0, 0, 41.0)\n", "(0.1, 41.0, 0, -500.0)\n", "---\n", "(108.525, 48.0, 2, None)\n", "(0.1, 48.0, 2, None)\n", "---\n", "(108.625, 51.0, 2, 51.0)\n", "(0.1, 51.0, 2, 1000.0)\n", "---\n", "(108.725, 40.0, 0, 40.0)\n", "(0.4, 40.0, 0, -1100.0)\n", "---\n", "(109.125, 52.0, 2, 52.0)\n", "(0.05, 52.0, 2, 1200.0)\n", "---\n", "(109.175, 39.0, 0, 39.0)\n", "(0.35, 39.0, 0, -1300.0)\n", "---\n", "(109.525, 45.0, 1, 45.0)\n", "(0.2, 45.0, 1, 600.0)\n", "---\n", "(109.725, 51.0, 2, 51.0)\n", "(0.975, 51.0, 2, 600.0)\n", "---\n", "(110.7, 45.0, 1, None)\n", "(0.225, 45.0, 1, None)\n", "---\n", "(110.925, 51.0, 2, None)\n", "(0.075, 51.0, 2, None)\n", "---\n", "(111.0, 45.0, 1, None)\n", "(0.175, 45.0, 1, None)\n", "---\n", "(111.175, 51.0, 2, None)\n", "(0.15, 51.0, 2, None)\n", "---\n", "(111.325, 44.0, 1, 44.0)\n", "(0.1, 44.0, 1, -700.0)\n", "---\n", "(111.425, 39.0, 0, None)\n", "(0.1, 39.0, 0, None)\n", "---\n", "(111.525, 53.0, 2, 53.0)\n", "(0.2, 53.0, 2, 900.0)\n", "---\n", "(111.725, 39.0, 0, None)\n", "(0.25, 39.0, 0, None)\n", "---\n", "(111.975, 37.0, 0, 37.0)\n", "(0.05, 37.0, 0, -1600.0)\n", "---\n", "(112.025, 42.0, 1, 42.0)\n", "(0.2, 42.0, 1, 500.0)\n", "---\n", "(112.225, 43.0, 1, 43.0)\n", "(0.0, 43.0, 1, 100.0)\n", "---\n", "(112.225, 53.0, 2, None)\n", "(0.275, 53.0, 2, None)\n", "---\n", "(112.5, 53.0, 2, None)\n", "(0.225, 53.0, 2, None)\n", "---\n", "(112.725, 52.0, 2, 52.0)\n", "(0.05, 52.0, 2, 900.0)\n", "---\n", "(112.775, 38.0, 0, 38.0)\n", "(0.35, 38.0, 0, -1400.0)\n", "---\n", "(113.125, 45.0, 1, 45.0)\n", "(0.475, 45.0, 1, 700.0)\n", "---\n", "(113.6, 44.0, 1, 44.0)\n", "(0.075, 44.0, 1, -100.0)\n", "---\n", "(113.675, 52.0, 2, None)\n", "(0.375, 52.0, 2, None)\n", "---\n", "(114.05, 52.0, 2, None)\n", "(0.3, 52.0, 2, None)\n", "---\n", "(114.35, 52.0, 2, None)\n", "(0.175, 52.0, 2, None)\n", "---\n", "(114.525, 51.0, 2, 51.0)\n", "(0.7, 51.0, 2, 700.0)\n", "---\n", "(115.225, 49.0, 2, 49.0)\n", "(0.2, 49.0, 2, -200.0)\n", "---\n", "(115.425, 50.0, 2, 50.0)\n", "(0.175, 50.0, 2, 100.0)\n", "---\n", "(115.6, 38.0, 0, None)\n", "(0.25, 38.0, 0, None)\n", "---\n", "(115.85, 38.0, 0, None)\n", "(0.325, 38.0, 0, None)\n", "---\n", "(116.175, 38.0, 0, None)\n", "(0.15, 38.0, 0, None)\n", "---\n", "(116.325, 52.0, 2, 52.0)\n", "(0.05, 52.0, 2, 200.0)\n", "---\n", "(116.375, 40.0, 0, 40.0)\n", "(0.425, 40.0, 0, -1200.0)\n", "---\n", "(116.8, 51.0, 2, 51.0)\n", "(0.95, 51.0, 2, 1100.0)\n", "---\n", "(117.75, 39.0, 0, 39.0)\n", "(1.275, 39.0, 0, -1200.0)\n", "---\n", "(119.025, 39.0, 0, None)\n", "(0.325, 39.0, 0, None)\n", "---\n", "(119.35, 39.0, 0, None)\n", "(0.325, 39.0, 0, None)\n", "---\n", "(119.675, 40.0, 0, 40.0)\n", "(0.125, 40.0, 0, 100.0)\n", "---\n", "(119.8, 44.0, 1, None)\n", "(0.375, 44.0, 1, None)\n", "---\n", "(120.175, 44.0, 1, None)\n", "(0.3, 44.0, 1, None)\n", "---\n", "(120.475, 41.0, 0, 41.0)\n", "(0.0, 41.0, 0, 100.0)\n", "---\n", "(120.475, 44.0, 1, None)\n", "(0.3, 44.0, 1, None)\n", "---\n", "(120.775, 45.0, 1, 45.0)\n", "(0.8, 45.0, 1, 400.0)\n", "---\n", "(121.575, 46.0, 1, 46.0)\n", "(0.1, 46.0, 1, 100.0)\n", "---\n", "(121.675, 41.0, 0, None)\n", "(0.125, 41.0, 0, None)\n", "---\n", "(121.8, 51.0, 2, None)\n", "(0.225, 51.0, 2, None)\n", "---\n", "(122.025, 41.0, 0, None)\n", "(0.15, 41.0, 0, None)\n", "---\n", "(122.175, 37.0, 0, 37.0)\n", "(0.0, 37.0, 0, -900.0)\n", "---\n", "(122.175, 51.0, 2, None)\n", "(0.275, 51.0, 2, None)\n", "---\n", "(122.45, 51.0, 2, None)\n", "(0.1, 51.0, 2, None)\n", "---\n", "(122.55, 52.0, 2, 52.0)\n", "(0.175, 52.0, 2, 1500.0)\n", "---\n", "(122.725, 46.0, 1, None)\n", "(0.275, 46.0, 1, None)\n", "---\n", "(123.0, 46.0, 1, None)\n", "(0.275, 46.0, 1, None)\n", "---\n", "(123.275, 42.0, 1, 42.0)\n", "(0.075, 42.0, 1, -1000.0)\n", "---\n", "(123.35, 53.0, 2, 53.0)\n", "(0.85, 53.0, 2, 1100.0)\n", "---\n", "(124.2, 42.0, 1, None)\n", "(0.05, 42.0, 1, None)\n", "---\n", "(124.25, 53.0, 2, None)\n", "(0.325, 53.0, 2, None)\n", "---\n", "(124.575, 42.0, 1, None)\n", "(0.0, 42.0, 1, None)\n", "---\n", "(124.575, 53.0, 2, None)\n", "(0.25, 53.0, 2, None)\n", "---\n", "(124.825, 42.0, 1, None)\n", "(0.0, 42.0, 1, None)\n", "---\n", "(124.825, 53.0, 2, None)\n", "(0.225, 53.0, 2, None)\n", "---\n", "(125.05, 49.0, 2, 49.0)\n", "(0.025, 49.0, 2, -400.0)\n", "---\n", "(125.075, 49.0, 1, 49.0)\n", "(0.75, 49.0, 1, 0.0)\n", "---\n", "(125.825, 47.0, 1, 47.0)\n", "(0.9, 47.0, 1, -200.0)\n", "---\n", "(126.725, 46.0, 1, 46.0)\n", "(0.675, 46.0, 1, -100.0)\n", "---\n", "(127.4, 37.0, 0, None)\n", "(0.125, 37.0, 0, None)\n", "---\n", "(127.525, 44.0, 1, 44.0)\n", "(0.25, 44.0, 1, -200.0)\n", "---\n", "(127.775, 37.0, 0, None)\n", "(0.325, 37.0, 0, None)\n", "---\n", "(128.1, 37.0, 0, None)\n", "(0.075, 37.0, 0, None)\n", "---\n", "(128.175, 44.0, 0, 44.0)\n", "(0.65, 44.0, 0, 0.0)\n", "---\n", "(128.825, 46.0, 1, 46.0)\n", "(0.1, 46.0, 1, 200.0)\n", "---\n", "(128.925, 42.0, 0, 42.0)\n", "(0.25, 42.0, 0, -400.0)\n", "---\n", "(129.175, 49.0, 2, None)\n", "(0.125, 49.0, 2, None)\n", "---\n", "(129.3, 41.0, 0, 41.0)\n", "(0.2, 41.0, 0, -100.0)\n", "---\n", "(129.5, 39.0, 0, 39.0)\n", "(0.0, 39.0, 0, -200.0)\n", "---\n", "(129.5, 49.0, 2, None)\n", "(0.25, 49.0, 2, None)\n", "---\n", "(129.75, 49.0, 2, None)\n", "(0.025, 49.0, 2, None)\n", "---\n", "(129.775, 56.0, 2, 56.0)\n", "(0.05, 56.0, 2, 1700.0)\n", "---\n", "(129.825, 41.0, 0, 41.0)\n", "(0.25, 41.0, 0, -1500.0)\n", "---\n", "(130.075, 39.0, 0, 39.0)\n", "(0.45, 39.0, 0, -200.0)\n", "---\n", "(130.525, 54.0, 2, 54.0)\n", "(0.375, 54.0, 2, 1500.0)\n", "---\n", "(130.9, 53.0, 2, 53.0)\n", "(0.2, 53.0, 2, -100.0)\n", "---\n", "(131.1, 51.0, 2, 51.0)\n", "(0.325, 51.0, 2, -200.0)\n", "---\n", "(131.425, 53.0, 2, 53.0)\n", "(0.25, 53.0, 2, 200.0)\n", "---\n", "(131.675, 51.0, 2, 51.0)\n", "(4.55, 51.0, 2, -200.0)\n", "---\n", "(136.225, 42.0, 1, 42.0)\n", "(0.3, 42.0, 1, -900.0)\n", "---\n", "(136.525, 39.0, 0, None)\n", "(0.275, 39.0, 0, None)\n", "---\n", "(136.8, 39.0, 0, None)\n", "(0.0, 39.0, 0, None)\n", "---\n", "(136.8, 41.0, 1, 41.0)\n", "(0.275, 41.0, 1, -100.0)\n", "---\n", "(137.075, 39.0, 0, None)\n", "(0.05, 39.0, 0, None)\n", "---\n", "(137.125, 42.0, 1, 42.0)\n", "(0.025, 42.0, 1, 100.0)\n", "---\n", "(137.15, 51.0, 2, None)\n", "(0.15, 51.0, 2, None)\n", "---\n", "(137.3, 44.0, 1, 44.0)\n", "(0.075, 44.0, 1, 200.0)\n", "---\n", "(137.375, 37.0, 0, 37.0)\n", "(0.05, 37.0, 0, -700.0)\n", "---\n", "(137.425, 51.0, 2, None)\n", "(0.35, 51.0, 2, None)\n", "---\n", "(137.775, 49.0, 2, 49.0)\n", "(0.425, 49.0, 2, 1200.0)\n", "---\n", "(138.2, 37.0, 0, None)\n", "(0.325, 37.0, 0, None)\n", "---\n", "(138.525, 37.0, 0, None)\n", "(0.325, 37.0, 0, None)\n", "---\n", "(138.85, 36.0, 0, 36.0)\n", "(0.325, 36.0, 0, -1300.0)\n", "---\n", "(139.175, 37.0, 0, 37.0)\n", "(0.025, 37.0, 0, 100.0)\n", "---\n", "(139.2, 49.0, 2, None)\n", "(0.15, 49.0, 2, None)\n", "---\n", "(139.35, 39.0, 0, 39.0)\n", "(0.225, 39.0, 0, 200.0)\n", "---\n", "(139.575, 49.0, 2, None)\n", "(0.35, 49.0, 2, None)\n", "---\n", "(139.925, 49.0, 2, None)\n", "(0.15, 49.0, 2, None)\n", "---\n", "(140.075, 48.0, 2, 48.0)\n", "(1.3, 48.0, 2, 900.0)\n", "---\n", "(141.375, 49.0, 2, 49.0)\n", "(0.6, 49.0, 2, 100.0)\n", "---\n", "(141.975, 44.0, 1, None)\n", "(0.1, 44.0, 1, None)\n", "---\n", "(142.075, 51.0, 2, 51.0)\n", "(0.175, 51.0, 2, 200.0)\n", "---\n", "(142.25, 44.0, 1, None)\n", "(0.3, 44.0, 1, None)\n", "---\n", "(142.55, 44.0, 1, None)\n", "(0.35, 44.0, 1, None)\n", "---\n", "(142.9, 44.0, 1, None)\n", "(0.075, 44.0, 1, None)\n", "---\n", "(142.975, 45.0, 1, 45.0)\n", "(0.1, 45.0, 1, -600.0)\n", "---\n", "(143.075, 39.0, 0, None)\n", "(0.275, 39.0, 0, None)\n", "---\n", "(143.35, 39.0, 0, None)\n", "(0.225, 39.0, 0, None)\n", "---\n", "(143.575, 46.0, 1, 46.0)\n", "(0.125, 46.0, 1, 100.0)\n", "---\n", "(143.7, 39.0, 0, None)\n", "(0.275, 39.0, 0, None)\n", "---\n", "(143.975, 40.0, 0, 40.0)\n", "(0.6, 40.0, 0, -600.0)\n", "---\n", "(144.575, 41.0, 0, 41.0)\n", "(0.125, 41.0, 0, 100.0)\n", "---\n", "(144.7, 51.0, 2, None)\n", "(0.075, 51.0, 2, None)\n", "---\n", "(144.775, 44.0, 1, 44.0)\n", "(0.175, 44.0, 1, 300.0)\n", "---\n", "(144.95, 51.0, 2, None)\n", "(0.3, 51.0, 2, None)\n", "---\n", "(145.25, 51.0, 2, None)\n", "(0.325, 51.0, 2, None)\n", "---\n", "(145.575, 40.0, 0, 40.0)\n", "(0.0, 40.0, 0, -400.0)\n", "---\n", "(145.575, 51.0, 2, None)\n", "(0.075, 51.0, 2, None)\n", "---\n", "(145.65, 52.0, 2, 52.0)\n", "(0.125, 52.0, 2, 1200.0)\n", "---\n", "(145.775, 39.0, 0, 39.0)\n", "(0.025, 39.0, 0, -1300.0)\n", "---\n", "(145.8, 53.0, 2, 53.0)\n", "(0.075, 53.0, 2, 1400.0)\n", "---\n", "(145.875, 44.0, 1, None)\n", "(0.175, 44.0, 1, None)\n", "---\n", "(146.05, 52.0, 2, 52.0)\n", "(0.05, 52.0, 2, -100.0)\n", "---\n", "(146.1, 51.0, 2, 51.0)\n", "(0.025, 51.0, 2, -100.0)\n", "---\n", "(146.125, 44.0, 1, None)\n", "(0.325, 44.0, 1, None)\n", "---\n", "(146.45, 44.0, 1, None)\n", "(0.1, 44.0, 1, None)\n", "---\n", "(146.55, 52.0, 2, 52.0)\n", "(0.025, 52.0, 2, 100.0)\n", "---\n", "(146.575, 45.0, 1, 45.0)\n", "(40, 45.0, 1, -700.0)\n" ] }, { "data": { "text/plain": [ "[(2.125, 51.0, 2, 0.0),\n", " (0.3, 46.0, 1, -500.0),\n", " (0.7, 44.0, 1, -200.0),\n", " (0.05, 41.0, 0, -300.0),\n", " (0.25, 51.0, 2, None),\n", " (0.075, 39.0, 0, -200.0),\n", " (0.375, 51.0, 2, None),\n", " (0.25, 51.0, 2, None),\n", " (0.45, 53.0, 2, 1400.0),\n", " (0.325, 44.0, 1, None),\n", " (0.225, 44.0, 1, None),\n", " (0.2, 42.0, 1, -1100.0),\n", " (0.75, 51.0, 2, 900.0),\n", " (0.325, 42.0, 1, None),\n", " (0.05, 39.0, 0, None),\n", " (0.25, 42.0, 1, None),\n", " (0.075, 42.0, 1, None),\n", " (0.05, 39.0, 0, None),\n", " (0.25, 41.0, 1, -1000.0),\n", " (0.1, 39.0, 0, None),\n", " (1.075, 37.0, 0, -400.0),\n", " (0.25, 37.0, 0, None),\n", " (0.25, 37.0, 0, None),\n", " (0.125, 37.0, 0, None),\n", " (1.1, 36.0, 0, -100.0),\n", " (0.3, 41.0, 1, None),\n", " (0.25, 41.0, 1, None),\n", " (0.2, 41.0, 1, None),\n", " (0.075, 42.0, 1, 600.0),\n", " (0.375, 51.0, 2, None),\n", " (0.15, 51.0, 2, None),\n", " (0.725, 49.0, 2, 700.0),\n", " (0.05, 48.0, 2, -100.0),\n", " (0.325, 36.0, 0, None),\n", " (0.2, 36.0, 0, None),\n", " (0.075, 37.0, 0, -1100.0),\n", " (0.275, 42.0, 1, None),\n", " (0.05, 42.0, 1, None),\n", " (0.325, 49.0, 2, 1200.0),\n", " (0.0, 39.0, 0, -1000.0),\n", " (0.05, 42.0, 1, None),\n", " (0.35, 44.0, 1, 500.0),\n", " (0.225, 51.0, 2, 700.0),\n", " (0.05, 40.0, 0, -1100.0),\n", " (0.05, 39.0, 0, -100.0),\n", " (0.3, 44.0, 1, 500.0),\n", " (0.05, 52.0, 2, 800.0),\n", " (0.75, 51.0, 2, -100.0),\n", " (0.05, 42.0, 1, -900.0),\n", " (0.3, 41.0, 1, -100.0),\n", " (0.3, 39.0, 0, None),\n", " (0.325, 39.0, 0, None),\n", " (0.275, 39.0, 0, None),\n", " (0.05, 39.0, 0, None),\n", " (0.15, 37.0, 0, -400.0),\n", " (0.05, 41.0, 1, None),\n", " (0.225, 36.0, 0, -100.0),\n", " (0.275, 41.0, 1, None),\n", " (0.025, 41.0, 1, None),\n", " (0.275, 51.0, 2, None),\n", " (0.0, 44.0, 1, 800.0),\n", " (0.375, 51.0, 2, None),\n", " (0.225, 51.0, 2, None),\n", " (0.2, 49.0, 2, 500.0),\n", " (0.85, 48.0, 2, -100.0),\n", " (0.3, 44.0, 1, None),\n", " (0.325, 44.0, 1, None),\n", " (0.25, 44.0, 1, None),\n", " (0.05, 44.0, 1, None),\n", " (0.025, 36.0, 0, None),\n", " (0.3, 46.0, 1, -200.0),\n", " (0.2, 36.0, 0, None),\n", " (0.6, 39.0, 0, -700.0),\n", " (0.15, 48.0, 2, None),\n", " (0.125, 46.0, 1, None),\n", " (0.2, 48.0, 2, None),\n", " (0.075, 46.0, 1, None),\n", " (0.15, 48.0, 2, None),\n", " (0.1, 44.0, 1, 500.0),\n", " (0.2, 48.0, 2, None),\n", " (0.125, 51.0, 2, 700.0),\n", " (0.3, 39.0, 0, None),\n", " (0.325, 39.0, 0, None),\n", " (0.175, 39.0, 0, None),\n", " (0.45, 41.0, 0, -1000.0),\n", " (0.425, 39.0, 0, -200.0),\n", " (0.325, 51.0, 2, None),\n", " (0.25, 51.0, 2, None),\n", " (0.225, 51.0, 2, None),\n", " (0.375, 53.0, 2, 1400.0),\n", " (0.225, 40.0, 0, -1300.0),\n", " (0.25, 44.0, 1, None),\n", " (0.275, 44.0, 1, None),\n", " (0.325, 44.0, 1, None),\n", " (0.025, 44.0, 1, None),\n", " (0.175, 45.0, 1, 500.0),\n", " (0.225, 51.0, 2, 600.0),\n", " (0.025, 41.0, 1, -1000.0),\n", " (1.3, 36.0, 0, -500.0),\n", " (0.05, 46.0, 1, 1000.0),\n", " (0.4, 52.0, 2, 600.0),\n", " (1.2, 48.0, 2, -400.0),\n", " (0.325, 46.0, 1, None),\n", " (0.275, 46.0, 1, None),\n", " (0.25, 44.0, 1, -400.0),\n", " (0.275, 48.0, 2, None),\n", " (0.175, 48.0, 2, None),\n", " (0.1, 42.0, 1, -200.0),\n", " (0.1, 53.0, 2, 1100.0),\n", " (0.25, 36.0, 0, None),\n", " (0.325, 36.0, 0, None),\n", " (0.275, 36.0, 0, None),\n", " (0.55, 41.0, 0, -1200.0),\n", " (0.275, 53.0, 2, None),\n", " (0.35, 53.0, 2, None),\n", " (0.075, 53.0, 2, None),\n", " (0.2, 41.0, 0, None),\n", " (0.175, 51.0, 2, 1000.0),\n", " (0.175, 41.0, 0, None),\n", " (0.175, 39.0, 0, -1200.0),\n", " (0.175, 37.0, 0, -200.0),\n", " (1.375, 49.0, 2, 1200.0),\n", " (0.025, 40.0, 0, -900.0),\n", " (0.25, 41.0, 0, 100.0),\n", " (0.85, 40.0, 0, -100.0),\n", " (0.325, 42.0, 1, None),\n", " (0.175, 42.0, 1, None),\n", " (0.1, 45.0, 1, 500.0),\n", " (0.25, 46.0, 1, 100.0),\n", " (0.375, 39.0, 0, -700.0),\n", " (0.425, 45.0, 1, 600.0),\n", " (0.575, 44.0, 1, -100.0),\n", " (0.1, 45.0, 1, 100.0),\n", " (0.025, 44.0, 1, -100.0),\n", " (0.2, 39.0, 0, None),\n", " (0.075, 42.0, 1, -200.0),\n", " (0.1, 39.0, 0, None),\n", " (0.025, 49.0, 2, None),\n", " (0.125, 41.0, 1, -100.0),\n", " (0.1, 39.0, 0, None),\n", " (0.0, 39.0, 1, -200.0),\n", " (0.175, 49.0, 2, None),\n", " (0.125, 40.0, 0, 100.0),\n", " (0.25, 49.0, 2, None),\n", " (0.025, 49.0, 2, None),\n", " (0.15, 39.0, 0, -100.0),\n", " (0.1, 52.0, 2, 1300.0),\n", " (0.625, 53.0, 2, 100.0),\n", " (0.025, 52.0, 2, -100.0),\n", " (0.4, 37.0, 0, -1500.0),\n", " (0.4, 51.0, 2, 1400.0),\n", " (0.175, 36.0, 0, -1500.0),\n", " (0.0, 39.0, 1, None),\n", " (0.1, 52.0, 2, 1600.0),\n", " (0.15, 51.0, 2, -100.0),\n", " (0.075, 39.0, 1, None),\n", " (0.2, 49.0, 2, -200.0),\n", " (0.075, 48.0, 2, -100.0),\n", " (0.125, 39.0, 1, None),\n", " (0.025, 34.0, 0, -1400.0),\n", " (0.075, 46.0, 2, 1200.0),\n", " (0.3, 44.0, 1, -200.0),\n", " (0.85, 45.0, 1, 100.0),\n", " (0.2, 46.0, 2, None),\n", " (0.125, 34.0, 0, None),\n", " (0.175, 46.0, 2, None),\n", " (0.05, 34.0, 0, None),\n", " (0.25, 51.0, 2, 600.0),\n", " (0.05, 34.0, 0, None),\n", " (0.2, 52.0, 2, 100.0),\n", " (0.075, 39.0, 0, -1300.0),\n", " (0.825, 40.0, 0, 100.0),\n", " (0.375, 40.0, 0, None),\n", " (0.225, 40.0, 0, None),\n", " (0.1, 42.0, 0, 200.0),\n", " (0.3, 45.0, 1, None),\n", " (0.05, 44.0, 0, 200.0),\n", " (0.25, 45.0, 1, None),\n", " (0.1, 45.0, 0, 100.0),\n", " (0.25, 45.0, 1, None),\n", " (0.05, 45.0, 1, None),\n", " (0.4, 47.0, 1, 200.0),\n", " (0.3, 49.0, 1, 200.0),\n", " (0.025, 50.0, 1, 100.0),\n", " (0.275, 52.0, 2, None),\n", " (0.25, 52.0, 2, None),\n", " (0.05, 52.0, 2, None),\n", " (0.2, 45.0, 0, None),\n", " (0.1, 52.0, 2, None),\n", " (0.1, 45.0, 0, None),\n", " (0.1, 54.0, 2, 400.0),\n", " (0.3, 41.0, 0, -1300.0),\n", " (0.3, 56.0, 2, 1500.0),\n", " (0.125, 57.0, 2, 100.0),\n", " (1.175, 46.0, 1, -1100.0),\n", " (0.3, 57.0, 2, None),\n", " (0.05, 57.0, 2, None),\n", " (0.3, 50.0, 1, 400.0),\n", " (0.05, 57.0, 2, None),\n", " (0.025, 48.0, 1, -200.0),\n", " (0.15, 47.0, 1, -100.0),\n", " (0.025, 44.0, 1, -300.0),\n", " (2.0, 53.0, 2, 900.0),\n", " (0.35, 41.0, 0, None),\n", " (0.2, 41.0, 0, None),\n", " (0.35, 45.0, 0, -800.0),\n", " (0.025, 43.0, 0, -200.0),\n", " (0.15, 42.0, 0, -100.0),\n", " (0.475, 39.0, 0, -300.0),\n", " (0.3, 53.0, 2, None),\n", " (0.225, 53.0, 2, None),\n", " (0.35, 57.0, 2, 1800.0),\n", " (0.025, 55.0, 2, -200.0),\n", " (0.15, 54.0, 2, -100.0),\n", " (1.725, 51.0, 2, -300.0),\n", " (0.175, 39.0, 0, None),\n", " (0.125, 51.0, 2, None),\n", " (0.05, 44.0, 1, None),\n", " (0.1, 39.0, 0, None),\n", " (0.175, 51.0, 2, None),\n", " (0.025, 44.0, 1, None),\n", " (0.05, 39.0, 0, None),\n", " (0.175, 51.0, 2, None),\n", " (0.05, 41.0, 0, -1000.0),\n", " (0.075, 46.0, 1, 500.0),\n", " (0.125, 51.0, 2, None),\n", " (1.05, 53.0, 2, 700.0),\n", " (0.15, 41.0, 0, None),\n", " (0.225, 46.0, 1, None),\n", " (0.025, 41.0, 0, None),\n", " (0.25, 46.0, 1, None),\n", " (0.075, 53.0, 2, None),\n", " (0.05, 41.0, 0, None),\n", " (0.125, 46.0, 1, None),\n", " (0.05, 39.0, 0, -1400.0),\n", " (0.0, 44.0, 1, 500.0),\n", " (0.2, 53.0, 2, None),\n", " (1.525, 51.0, 2, 700.0),\n", " (0.25, 44.0, 1, None),\n", " (0.35, 44.0, 1, None),\n", " (0.45, 42.0, 1, -900.0),\n", " (0.7, 41.0, 1, -100.0),\n", " (0.375, 39.0, 0, None),\n", " (0.325, 39.0, 0, None),\n", " (0.025, 41.0, 1, None),\n", " (0.175, 39.0, 0, None),\n", " (0.1, 37.0, 0, -400.0),\n", " (0.3, 41.0, 1, None),\n", " (0.05, 41.0, 1, None),\n", " (0.025, 36.0, 0, -100.0),\n", " (0.5, 42.0, 1, 600.0),\n", " (0.25, 36.0, 0, None),\n", " (0.25, 36.0, 0, None),\n", " (0.1, 37.0, 0, -500.0),\n", " (1.0, 44.0, 1, 700.0),\n", " (0.175, 39.0, 0, -500.0),\n", " (0.25, 51.0, 2, None),\n", " (0.3, 51.0, 2, None),\n", " (0.025, 51.0, 2, None),\n", " (1.125, 49.0, 2, 1000.0),\n", " (0.725, 48.0, 2, -100.0),\n", " (0.275, 49.0, 2, 100.0),\n", " (0.4, 51.0, 2, 200.0),\n", " (0.3, 44.0, 1, None),\n", " (0.25, 44.0, 1, None),\n", " (0.275, 44.0, 1, None),\n", " (0.075, 44.0, 1, None),\n", " (0.025, 50.0, 2, -100.0),\n", " (0.075, 43.0, 1, -700.0),\n", " (0.05, 52.0, 2, 900.0),\n", " (0.175, 53.0, 2, 100.0),\n", " (0.1, 39.0, 0, None),\n", " (0.2, 45.0, 1, -800.0),\n", " (0.0, 39.0, 0, None),\n", " (0.35, 46.0, 1, 100.0),\n", " (0.05, 39.0, 0, None),\n", " (0.05, 38.0, 0, -800.0),\n", " (0.25, 53.0, 2, None),\n", " (0.1, 53.0, 2, None),\n", " (0.2, 40.0, 0, 200.0),\n", " (0.4, 41.0, 0, 100.0),\n", " (0.275, 44.0, 1, 300.0),\n", " (0.1, 48.0, 1, 400.0),\n", " (0.2, 50.0, 1, 200.0),\n", " (0.125, 49.0, 1, -100.0),\n", " (0.3, 55.0, 2, 600.0),\n", " (0.1, 39.0, 0, -1600.0),\n", " (0.175, 57.0, 2, 1800.0),\n", " (0.1, 43.0, 0, -1400.0),\n", " (0.175, 45.0, 0, 200.0),\n", " (0.025, 50.0, 1, 500.0),\n", " (0.225, 44.0, 0, -600.0),\n", " (0.1, 49.0, 1, 500.0),\n", " (0.15, 56.0, 2, 700.0),\n", " (0.5, 46.0, 1, -1000.0),\n", " (0.25, 45.0, 0, -100.0),\n", " (0.025, 44.0, 0, -100.0),\n", " (0.375, 46.0, 1, None),\n", " (0.25, 46.0, 1, None),\n", " (0.35, 44.0, 1, 0.0),\n", " (0.95, 41.0, 0, -300.0),\n", " (0.375, 41.0, 0, None),\n", " (0.075, 41.0, 0, None),\n", " (0.2, 56.0, 2, None),\n", " (0.05, 41.0, 0, None),\n", " (0.05, 56.0, 2, None),\n", " (0.3, 39.0, 0, -200.0),\n", " (1.0, 57.0, 2, 1800.0),\n", " (1.0, 56.0, 2, -100.0),\n", " (0.925, 53.0, 2, -300.0),\n", " (0.325, 53.0, 2, None),\n", " (0.25, 53.0, 2, None),\n", " (0.2, 53.0, 2, None),\n", " (2.05, 51.0, 2, -200.0),\n", " (0.0, 39.0, 0, None),\n", " (0.25, 44.0, 1, None),\n", " (0.0, 39.0, 0, None),\n", " (0.05, 51.0, 2, None),\n", " (0.2, 44.0, 1, None),\n", " (0.05, 39.0, 0, None),\n", " (0.025, 44.0, 1, None),\n", " (0.0, 41.0, 0, -1000.0),\n", " (0.05, 51.0, 2, None),\n", " (0.2, 46.0, 1, 500.0),\n", " (0.2, 53.0, 2, 700.0),\n", " (0.05, 39.0, 0, -1400.0),\n", " (0.2, 44.0, 1, 500.0),\n", " (1.75, 51.0, 2, 700.0),\n", " (0.325, 44.0, 1, None),\n", " (0.25, 44.0, 1, None),\n", " (0.15, 44.0, 1, None),\n", " (1.5, 41.0, 1, -1000.0),\n", " (0.875, 42.0, 1, 100.0),\n", " (0.325, 39.0, 0, None),\n", " (0.275, 39.0, 0, None),\n", " (0.125, 39.0, 0, None),\n", " (0.525, 36.0, 0, -600.0),\n", " (0.3, 42.0, 1, None),\n", " (0.175, 42.0, 1, None),\n", " (0.025, 36.0, 0, None),\n", " (0.05, 51.0, 2, None),\n", " (0.2, 42.0, 1, None),\n", " (0.025, 51.0, 2, None),\n", " (0.075, 39.0, 1, 300.0),\n", " (0.125, 36.0, 0, None),\n", " (0.025, 37.0, 0, -200.0),\n", " (0.575, 48.0, 2, 1100.0),\n", " (0.3, 46.0, 1, -200.0),\n", " (0.3, 47.0, 1, 100.0),\n", " (0.325, 37.0, 0, None),\n", " (0.0, 37.0, 0, None),\n", " (0.325, 49.0, 2, 200.0),\n", " (0.225, 37.0, 0, None),\n", " (0.1, 34.0, 0, -1500.0),\n", " (0.1, 47.0, 1, None),\n", " (0.075, 41.0, 0, 700.0),\n", " (0.1, 42.0, 0, 100.0),\n", " (0.3, 47.0, 1, None),\n", " (0.125, 47.0, 1, None),\n", " (0.125, 37.0, 0, -500.0),\n", " (0.475, 42.0, 1, 500.0),\n", " (0.35, 49.0, 2, None),\n", " (0.25, 49.0, 2, None),\n", " (0.275, 49.0, 2, None),\n", " (0.075, 49.0, 2, None),\n", " (0.6, 46.0, 2, 400.0),\n", " (0.05, 42.0, 1, None),\n", " (0.075, 53.0, 2, 700.0),\n", " (0.25, 54.0, 2, 100.0),\n", " (0.275, 42.0, 1, None),\n", " (0.0, 42.0, 1, None),\n", " (0.1, 49.0, 2, -500.0),\n", " (0.675, 44.0, 1, -500.0),\n", " (0.225, 37.0, 0, None),\n", " (0.125, 41.0, 1, -300.0),\n", " (0.025, 37.0, 0, None),\n", " (0.175, 49.0, 2, None),\n", " (0.175, 39.0, 0, -200.0),\n", " (0.275, 49.0, 2, None),\n", " (0.025, 49.0, 2, None),\n", " (1.5, 51.0, 2, 1200.0),\n", " (0.3, 51.0, 2, None),\n", " (0.375, 51.0, 2, None),\n", " (0.025, 48.0, 2, -300.0),\n", " (0.075, 39.0, 0, None),\n", " (0.25, 41.0, 1, None),\n", " (0.025, 41.0, 1, None),\n", " (0.3, 39.0, 0, None),\n", " (0.05, 41.0, 1, None),\n", " (0.225, 39.0, 0, None),\n", " (0.05, 36.0, 0, -1200.0),\n", " (0.5, 44.0, 1, 800.0),\n", " (0.6, 45.0, 1, 100.0),\n", " (0.275, 44.0, 1, -100.0),\n", " (0.375, 36.0, 0, None),\n", " (0.3, 36.0, 0, None),\n", " (0.025, 44.0, 1, None),\n", " (0.2, 36.0, 0, None),\n", " (0.125, 39.0, 0, -500.0),\n", " (0.025, 40.0, 0, 100.0),\n", " (0.0, 44.0, 1, None),\n", " (0.125, 48.0, 2, None),\n", " (0.125, 39.0, 0, -100.0),\n", " (0.05, 44.0, 1, None),\n", " (0.175, 48.0, 2, None),\n", " (0.1, 46.0, 1, 700.0),\n", " (0.1, 41.0, 0, -500.0),\n", " (0.1, 48.0, 2, None),\n", " (0.1, 51.0, 2, 1000.0),\n", " (0.4, 40.0, 0, -1100.0),\n", " (0.05, 52.0, 2, 1200.0),\n", " (0.35, 39.0, 0, -1300.0),\n", " (0.2, 45.0, 1, 600.0),\n", " (0.975, 51.0, 2, 600.0),\n", " (0.225, 45.0, 1, None),\n", " (0.075, 51.0, 2, None),\n", " (0.175, 45.0, 1, None),\n", " (0.15, 51.0, 2, None),\n", " (0.1, 44.0, 1, -700.0),\n", " (0.1, 39.0, 0, None),\n", " (0.2, 53.0, 2, 900.0),\n", " (0.25, 39.0, 0, None),\n", " (0.05, 37.0, 0, -1600.0),\n", " (0.2, 42.0, 1, 500.0),\n", " (0.0, 43.0, 1, 100.0),\n", " (0.275, 53.0, 2, None),\n", " (0.225, 53.0, 2, None),\n", " (0.05, 52.0, 2, 900.0),\n", " (0.35, 38.0, 0, -1400.0),\n", " (0.475, 45.0, 1, 700.0),\n", " (0.075, 44.0, 1, -100.0),\n", " (0.375, 52.0, 2, None),\n", " (0.3, 52.0, 2, None),\n", " (0.175, 52.0, 2, None),\n", " (0.7, 51.0, 2, 700.0),\n", " (0.2, 49.0, 2, -200.0),\n", " (0.175, 50.0, 2, 100.0),\n", " (0.25, 38.0, 0, None),\n", " (0.325, 38.0, 0, None),\n", " (0.15, 38.0, 0, None),\n", " (0.05, 52.0, 2, 200.0),\n", " (0.425, 40.0, 0, -1200.0),\n", " (0.95, 51.0, 2, 1100.0),\n", " (1.275, 39.0, 0, -1200.0),\n", " (0.325, 39.0, 0, None),\n", " (0.325, 39.0, 0, None),\n", " (0.125, 40.0, 0, 100.0),\n", " (0.375, 44.0, 1, None),\n", " (0.3, 44.0, 1, None),\n", " (0.0, 41.0, 0, 100.0),\n", " (0.3, 44.0, 1, None),\n", " (0.8, 45.0, 1, 400.0),\n", " (0.1, 46.0, 1, 100.0),\n", " (0.125, 41.0, 0, None),\n", " (0.225, 51.0, 2, None),\n", " (0.15, 41.0, 0, None),\n", " (0.0, 37.0, 0, -900.0),\n", " (0.275, 51.0, 2, None),\n", " (0.1, 51.0, 2, None),\n", " (0.175, 52.0, 2, 1500.0),\n", " (0.275, 46.0, 1, None),\n", " (0.275, 46.0, 1, None),\n", " (0.075, 42.0, 1, -1000.0),\n", " (0.85, 53.0, 2, 1100.0),\n", " (0.05, 42.0, 1, None),\n", " (0.325, 53.0, 2, None),\n", " (0.0, 42.0, 1, None),\n", " (0.25, 53.0, 2, None),\n", " (0.0, 42.0, 1, None),\n", " (0.225, 53.0, 2, None),\n", " (0.025, 49.0, 2, -400.0),\n", " (0.75, 49.0, 1, 0.0),\n", " (0.9, 47.0, 1, -200.0),\n", " (0.675, 46.0, 1, -100.0),\n", " (0.125, 37.0, 0, None),\n", " (0.25, 44.0, 1, -200.0),\n", " (0.325, 37.0, 0, None),\n", " (0.075, 37.0, 0, None),\n", " (0.65, 44.0, 0, 0.0),\n", " (0.1, 46.0, 1, 200.0),\n", " (0.25, 42.0, 0, -400.0),\n", " (0.125, 49.0, 2, None),\n", " (0.2, 41.0, 0, -100.0),\n", " (0.0, 39.0, 0, -200.0),\n", " (0.25, 49.0, 2, None),\n", " (0.025, 49.0, 2, None),\n", " (0.05, 56.0, 2, 1700.0),\n", " (0.25, 41.0, 0, -1500.0),\n", " (0.45, 39.0, 0, -200.0),\n", " (0.375, 54.0, 2, 1500.0),\n", " (0.2, 53.0, 2, -100.0),\n", " (0.325, 51.0, 2, -200.0),\n", " (0.25, 53.0, 2, 200.0),\n", " (4.55, 51.0, 2, -200.0),\n", " (0.3, 42.0, 1, -900.0),\n", " (0.275, 39.0, 0, None),\n", " (0.0, 39.0, 0, None),\n", " (0.275, 41.0, 1, -100.0),\n", " (0.05, 39.0, 0, None),\n", " (0.025, 42.0, 1, 100.0),\n", " (0.15, 51.0, 2, None),\n", " (0.075, 44.0, 1, 200.0),\n", " (0.05, 37.0, 0, -700.0),\n", " (0.35, 51.0, 2, None),\n", " (0.425, 49.0, 2, 1200.0),\n", " (0.325, 37.0, 0, None),\n", " (0.325, 37.0, 0, None),\n", " (0.325, 36.0, 0, -1300.0),\n", " (0.025, 37.0, 0, 100.0),\n", " (0.15, 49.0, 2, None),\n", " (0.225, 39.0, 0, 200.0),\n", " (0.35, 49.0, 2, None),\n", " (0.15, 49.0, 2, None),\n", " (1.3, 48.0, 2, 900.0),\n", " (0.6, 49.0, 2, 100.0),\n", " (0.1, 44.0, 1, None),\n", " (0.175, 51.0, 2, 200.0),\n", " (0.3, 44.0, 1, None),\n", " (0.35, 44.0, 1, None),\n", " (0.075, 44.0, 1, None),\n", " (0.1, 45.0, 1, -600.0),\n", " (0.275, 39.0, 0, None),\n", " (0.225, 39.0, 0, None),\n", " (0.125, 46.0, 1, 100.0),\n", " (0.275, 39.0, 0, None),\n", " (0.6, 40.0, 0, -600.0),\n", " (0.125, 41.0, 0, 100.0),\n", " (0.075, 51.0, 2, None),\n", " (0.175, 44.0, 1, 300.0),\n", " (0.3, 51.0, 2, None),\n", " (0.325, 51.0, 2, None),\n", " (0.0, 40.0, 0, -400.0),\n", " (0.075, 51.0, 2, None),\n", " (0.125, 52.0, 2, 1200.0),\n", " (0.025, 39.0, 0, -1300.0),\n", " (0.075, 53.0, 2, 1400.0),\n", " (0.175, 44.0, 1, None),\n", " (0.05, 52.0, 2, -100.0),\n", " (0.025, 51.0, 2, -100.0),\n", " (0.325, 44.0, 1, None),\n", " (0.1, 44.0, 1, None),\n", " (0.025, 52.0, 2, 100.0),\n", " (40, 45.0, 1, -700.0)]" ] }, "execution_count": 151, "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", " 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", " 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:\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", " 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 = 40\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] - 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", "target_melody_data = list(filter_midi(list(midi)))\n", "target_melody_data\n" ] }, { "cell_type": "code", "execution_count": 152, "id": "c1e314cf-c928-4df5-b0da-8a7b13b2225f", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-2168.8259064691247, -968.8259064691249, 0]\n", "1\n", "-500.0\n", "[-2168.8259064691247, -968.8259064691249, 0]\n", "((-2, 0, 0, 0), (-1, 0, 0, 0), (-3, 0, 0, 1))\n", "((-2, 0, 0, 0), (-5, 1, 0, 1), (-3, 0, 0, 1))\n", "[-1668.8259064691247, 1.955000865387433, 500.0]\n", "1\n", "-200.0\n", "[-1668.8259064691247, 1.955000865387433, 500.0]\n", "((-2, 0, 0, 0), (-5, 1, 0, 1), (-3, 0, 0, 1))\n", "((-2, 0, 0, 0), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[-1468.8259064691247, -1.9550008653875466, 700.0]\n", "0\n", "-300.0\n", "[-1468.8259064691247, -1.9550008653875466, 700.0]\n", "((-2, 0, 0, 0), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((-2, 0, -1, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[-586.3137138648347, 298.04499913461245, 1000.0]\n", "2\n", "None\n", "[-586.3137138648347, 298.04499913461245, 1000.0]\n", "((-2, 0, -1, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((-2, 0, -1, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[-586.3137138648347, 298.04499913461245, 1111.7312852697778]\n", "0\n", "-200.0\n", "[-586.3137138648347, 298.04499913461245, 1111.7312852697778]\n", "((-2, 0, -1, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "2\n", "None\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1200.0]\n", "2\n", "None\n", "[2.2737367544323206e-13, 498.04499913461245, 1200.0]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "2\n", "1400.0\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "[-1399.9999999999998, -901.9550008653875, 31.174093530875098]\n", "1\n", "None\n", "[-1399.9999999999998, -901.9550008653875, 31.174093530875098]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "((-4, 0, 0, 1), (2, 0, 0, -1), (0, 0, 0, 0))\n", "[-1399.9999999999998, -937.65181293825, 31.174093530875098]\n", "1\n", "None\n", "[-1399.9999999999998, -937.65181293825, 31.174093530875098]\n", "((-4, 0, 0, 1), (2, 0, 0, -1), (0, 0, 0, 0))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "[-1399.9999999999998, -901.9550008653875, 31.174093530875098]\n", "1\n", "-1100.0\n", "[-1399.9999999999998, -901.9550008653875, 31.174093530875098]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "((-4, 0, 0, 1), (2, 0, 0, -1), (0, 0, 0, 0))\n", "[-299.9999999999998, 162.34818706174997, 1131.174093530875]\n", "2\n", "900.0\n", "[-299.9999999999998, 162.34818706174997, 1131.174093530875]\n", "((-4, 0, 0, 1), (2, 0, 0, -1), (0, 0, 0, 0))\n", "((-4, 0, 0, 1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[-1199.9999999999998, -737.65181293825, -35.696812072862485]\n", "1\n", "None\n", "[-1199.9999999999998, -737.65181293825, -35.696812072862485]\n", "((-4, 0, 0, 1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "[-1199.9999999999998, -701.9550008653875, -35.696812072862485]\n", "0\n", "None\n", "[-1199.9999999999998, -701.9550008653875, -35.696812072862485]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "[-1088.2687147302217, -701.9550008653875, -35.696812072862485]\n", "1\n", "None\n", "[-1088.2687147302217, -701.9550008653875, -35.696812072862485]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "((0, -1, -1, 1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[-1088.2687147302217, -737.65181293825, -35.696812072862485]\n", "1\n", "None\n", "[-1088.2687147302217, -737.65181293825, -35.696812072862485]\n", "((0, -1, -1, 1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "[-1088.2687147302217, -701.9550008653875, -35.696812072862485]\n", "0\n", "None\n", "[-1088.2687147302217, -701.9550008653875, -35.696812072862485]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "((3, 1, 0, -2), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "[-1004.5227185419872, -701.9550008653875, -35.696812072862485]\n", "1\n", "-1000.0\n", "[-1004.5227185419872, -701.9550008653875, -35.696812072862485]\n", "((3, 1, 0, -2), (-2, -1, 0, 1), (1, 1, 0, -1))\n", "((3, 1, 0, -2), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[-4.52271854198716, 262.34818706174997, 964.3031879271375]\n", "0\n", "None\n", "[-4.52271854198716, 262.34818706174997, 964.3031879271375]\n", "((3, 1, 0, -2), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((-1, 0, 0, 0), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[31.174093530875325, 262.34818706174997, 964.3031879271375]\n", "0\n", "-400.0\n", "[31.174093530875325, 262.34818706174997, 964.3031879271375]\n", "((-1, 0, 0, 0), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[-39.60681380363735, 662.34818706175, 1364.3031879271375]\n", "0\n", "None\n", "[-39.60681380363735, 662.34818706175, 1364.3031879271375]\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((-3, 1, 0, 0), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[-66.87090560373713, 662.34818706175, 1364.3031879271375]\n", "0\n", "None\n", "[-66.87090560373713, 662.34818706175, 1364.3031879271375]\n", "((-3, 1, 0, 0), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[-39.60681380363735, 662.34818706175, 1364.3031879271375]\n", "0\n", "None\n", "[-39.60681380363735, 662.34818706175, 1364.3031879271375]\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((-3, 1, 0, 0), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[-66.87090560373713, 662.34818706175, 1364.3031879271375]\n", "0\n", "-100.0\n", "[-66.87090560373713, 662.34818706175, 1364.3031879271375]\n", "((-3, 1, 0, 0), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[60.39318619636265, 762.34818706175, 1464.3031879271375]\n", "1\n", "None\n", "[60.39318619636265, 762.34818706175, 1464.3031879271375]\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (6, -1, -1, -1), (1, 1, 0, -1))\n", "[60.39318619636265, 874.0794723315277, 1464.3031879271375]\n", "1\n", "None\n", "[60.39318619636265, 874.0794723315277, 1464.3031879271375]\n", "((3, -1, 0, -1), (6, -1, -1, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "[60.39318619636265, 762.34818706175, 1464.3031879271375]\n", "1\n", "None\n", "[60.39318619636265, 762.34818706175, 1464.3031879271375]\n", "((3, -1, 0, -1), (2, 0, 0, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (-2, 1, 1, -1), (1, 1, 0, -1))\n", "[60.39318619636265, 650.6169017919724, 1464.3031879271375]\n", "1\n", "600.0\n", "[60.39318619636265, 650.6169017919724, 1464.3031879271375]\n", "((3, -1, 0, -1), (-2, 1, 1, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (5, -2, 0, -1), (1, 1, 0, -1))\n", "[-539.6068138036374, -41.56181466902467, 864.3031879271375]\n", "2\n", "None\n", "[-539.6068138036374, -41.56181466902467, 864.3031879271375]\n", "((3, -1, 0, -1), (5, -2, 0, -1), (1, 1, 0, -1))\n", "((3, -1, 0, -1), (5, -2, 0, -1), (7, -1, 0, -2))\n", "[-539.6068138036374, -41.56181466902467, 891.5672797272375]\n", "2\n", "None\n", "[-539.6068138036374, -41.56181466902467, 891.5672797272375]\n", "((3, -1, 0, -1), (5, -2, 0, -1), (7, -1, 0, -2))\n", "((3, -1, 0, -1), (5, -2, 0, -1), (3, -2, 0, 0))\n", "[-539.6068138036374, -41.56181466902467, 927.2640918001001]\n", "2\n", "700.0\n", "[-539.6068138036374, -41.56181466902467, 927.2640918001001]\n", "((3, -1, 0, -1), (5, -2, 0, -1), (3, -2, 0, 0))\n", "((3, -1, 0, -1), (5, -2, 0, -1), (4, -1, 0, -1))\n", "[-1239.6068138036374, -741.5618146690247, -39.60681380363735]\n", "2\n", "-100.0\n", "[-1239.6068138036374, -741.5618146690247, -39.60681380363735]\n", "((3, -1, 0, -1), (5, -2, 0, -1), (4, -1, 0, -1))\n", "((3, -1, 0, -1), (5, -2, 0, -1), (8, -2, -1, -1))\n", "[-1139.6068138036374, -641.5618146690247, 172.1244714661405]\n", "0\n", "None\n", "[-1139.6068138036374, -641.5618146690247, 172.1244714661405]\n", "((3, -1, 0, -1), (5, -2, 0, -1), (8, -2, -1, -1))\n", "((4, -2, -1, 0), (5, -2, 0, -1), (8, -2, -1, -1))\n", "[-1259.0496220647344, -641.5618146690247, 172.1244714661405]\n", "0\n", "None\n", "[-1259.0496220647344, -641.5618146690247, 172.1244714661405]\n", "((4, -2, -1, 0), (5, -2, 0, -1), (8, -2, -1, -1))\n", "((6, -3, 0, -1), (5, -2, 0, -1), (8, -2, -1, -1))\n", "[-1343.516815534412, -641.5618146690247, 172.1244714661405]\n", "0\n", "-1100.0\n", "[-1343.516815534412, -641.5618146690247, 172.1244714661405]\n", "((6, -3, 0, -1), (5, -2, 0, -1), (8, -2, -1, -1))\n", "((3, -1, 0, -1), (5, -2, 0, -1), (8, -2, -1, -1))\n", "[-39.60681380363735, 458.43818533097533, 1272.1244714661404]\n", "1\n", "None\n", "[-39.60681380363735, 458.43818533097533, 1272.1244714661404]\n", "((3, -1, 0, -1), (5, -2, 0, -1), (8, -2, -1, -1))\n", "((3, -1, 0, -1), (1, -1, 1, -1), (8, -2, -1, -1))\n", "[-39.60681380363735, 346.70690006119753, 1272.1244714661404]\n", "1\n", "None\n", "[-39.60681380363735, 346.70690006119753, 1272.1244714661404]\n", "((3, -1, 0, -1), (1, -1, 1, -1), (8, -2, -1, -1))\n", "((3, -1, 0, -1), (10, -2, -1, -2), (8, -2, -1, -1))\n", "[-39.60681380363735, 303.2985649970153, 1272.1244714661404]\n", "2\n", "1200.0\n", "[-39.60681380363735, 303.2985649970153, 1272.1244714661404]\n", "((3, -1, 0, -1), (10, -2, -1, -2), (8, -2, -1, -1))\n", "((3, -1, 0, -1), (10, -2, -1, -2), (13, -2, -2, -2))\n", "[-1239.6068138036374, -896.7014350029847, -83.01514886781956]\n", "0\n", "-1000.0\n", "[-1239.6068138036374, -896.7014350029847, -83.01514886781956]\n", "((3, -1, 0, -1), (10, -2, -1, -2), (13, -2, -2, -2))\n", "((7, -2, -1, -1), (10, -2, -1, -2), (13, -2, -2, -2))\n", "[-127.8755285338591, 103.29856499701532, 916.9848511321804]\n", "1\n", "None\n", "[-127.8755285338591, 103.29856499701532, 916.9848511321804]\n", "((7, -2, -1, -1), (10, -2, -1, -2), (13, -2, -2, -2))\n", "((7, -2, -1, -1), (14, -3, -2, -2), (13, -2, -2, -2))\n", "[-127.8755285338591, 215.02985026679312, 916.9848511321804]\n", "1\n", "500.0\n", "[-127.8755285338591, 215.02985026679312, 916.9848511321804]\n", "((7, -2, -1, -1), (14, -3, -2, -2), (13, -2, -2, -2))\n", "((7, -2, -1, -1), (5, -2, 0, -1), (13, -2, -2, -2))\n", "[-627.8755285338591, -241.56181466902467, 416.98485113218044]\n", "2\n", "700.0\n", "[-627.8755285338591, -241.56181466902467, 416.98485113218044]\n", "((7, -2, -1, -1), (5, -2, 0, -1), (13, -2, -2, -2))\n", "((7, -2, -1, -1), (5, -2, 0, -1), (3, -2, 0, 0))\n", "[-1327.875528533859, -941.5618146690247, 27.26409180010012]\n", "0\n", "-1100.0\n", "[-1327.875528533859, -941.5618146690247, 27.26409180010012]\n", "((7, -2, -1, -1), (5, -2, 0, -1), (3, -2, 0, 0))\n", "((2, -2, 0, 0), (5, -2, 0, -1), (3, -2, 0, 0))\n", "[-72.73590819989954, 158.43818533097533, 1127.2640918001002]\n", "0\n", "-100.0\n", "[-72.73590819989954, 158.43818533097533, 1127.2640918001002]\n", "((2, -2, 0, 0), (5, -2, 0, -1), (3, -2, 0, 0))\n", "((7, -2, -1, -1), (5, -2, 0, -1), (3, -2, 0, 0))\n", "[-127.8755285338591, 258.43818533097533, 1227.2640918001002]\n", "1\n", "500.0\n", "[-127.8755285338591, 258.43818533097533, 1227.2640918001002]\n", "((7, -2, -1, -1), (5, -2, 0, -1), (3, -2, 0, 0))\n", "((7, -2, -1, -1), (4, -3, 0, 0), (3, -2, 0, 0))\n", "[-627.8755285338591, 25.3090909347128, 727.2640918001002]\n", "2\n", "800.0\n", "[-627.8755285338591, 25.3090909347128, 727.2640918001002]\n", "((7, -2, -1, -1), (4, -3, 0, 0), (3, -2, 0, 0))\n", "((7, -2, -1, -1), (4, -3, 0, 0), (11, -2, -1, -2))\n", "[-1427.875528533859, -774.6909090652872, 3.2985649970155464]\n", "2\n", "-100.0\n", "[-1427.875528533859, -774.6909090652872, 3.2985649970155464]\n", "((7, -2, -1, -1), (4, -3, 0, 0), (11, -2, -1, -2))\n", "((7, -2, -1, -1), (4, -3, 0, 0), (3, -2, 0, 0))\n", "[-1327.875528533859, -674.6909090652872, 27.264091800100232]\n", "1\n", "-900.0\n", "[-1327.875528533859, -674.6909090652872, 27.264091800100232]\n", "((7, -2, -1, -1), (4, -3, 0, 0), (3, -2, 0, 0))\n", "((7, -2, -1, -1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[-427.8755285338591, 113.57780566493511, 927.2640918001002]\n", "1\n", "-100.0\n", "[-427.8755285338591, 113.57780566493511, 927.2640918001002]\n", "((7, -2, -1, -1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((7, -2, -1, -1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "[-327.8755285338591, 170.16947060075313, 1027.2640918001002]\n", "0\n", "None\n", "[-327.8755285338591, 170.16947060075313, 1027.2640918001002]\n", "((7, -2, -1, -1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "((-1, -2, 0, 1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "[-403.91000173077487, 170.16947060075313, 1027.2640918001002]\n", "0\n", "None\n", "[-403.91000173077487, 170.16947060075313, 1027.2640918001002]\n", "((-1, -2, 0, 1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "((7, -2, -1, -1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "[-327.8755285338591, 170.16947060075313, 1027.2640918001002]\n", "0\n", "None\n", "[-327.8755285338591, 170.16947060075313, 1027.2640918001002]\n", "((7, -2, -1, -1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "((-1, -2, 0, 1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "[-403.91000173077487, 170.16947060075313, 1027.2640918001002]\n", "0\n", "None\n", "[-403.91000173077487, 170.16947060075313, 1027.2640918001002]\n", "((-1, -2, 0, 1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "((7, -2, -1, -1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "[-327.8755285338591, 170.16947060075313, 1027.2640918001002]\n", "0\n", "-400.0\n", "[-327.8755285338591, 170.16947060075313, 1027.2640918001002]\n", "((7, -2, -1, -1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "((-1, -2, 0, 1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "[-3.910001730774866, 570.1694706007531, 1427.2640918001002]\n", "1\n", "None\n", "[-3.910001730774866, 570.1694706007531, 1427.2640918001002]\n", "((-1, -2, 0, 1), (9, -3, -1, -1), (3, -2, 0, 0))\n", "((-1, -2, 0, 1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[-3.910001730774866, 613.5778056649351, 1427.2640918001002]\n", "0\n", "-100.0\n", "[-3.910001730774866, 613.5778056649351, 1427.2640918001002]\n", "((-1, -2, 0, 1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((1, -3, 1, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[11.622804799547794, 713.5778056649351, 1527.2640918001002]\n", "1\n", "None\n", "[11.622804799547794, 713.5778056649351, 1527.2640918001002]\n", "((1, -3, 1, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((1, -3, 1, 0), (4, -3, 0, 0), (3, -2, 0, 0))\n", "[11.622804799547794, 825.3090909347128, 1527.2640918001002]\n", "1\n", "None\n", "[11.622804799547794, 825.3090909347128, 1527.2640918001002]\n", "((1, -3, 1, 0), (4, -3, 0, 0), (3, -2, 0, 0))\n", "((1, -3, 1, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[11.622804799547794, 713.5778056649351, 1527.2640918001002]\n", "2\n", "None\n", "[11.622804799547794, 713.5778056649351, 1527.2640918001002]\n", "((1, -3, 1, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((1, -3, 1, 0), (0, -2, 1, 0), (0, -3, 2, 0))\n", "[11.622804799547794, 713.5778056649351, 1597.9365186643824]\n", "1\n", "800.0\n", "[11.622804799547794, 713.5778056649351, 1597.9365186643824]\n", "((1, -3, 1, 0), (0, -2, 1, 0), (0, -3, 2, 0))\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (0, -3, 2, 0))\n", "[-788.3771952004522, -15.749767470782672, 797.9365186643824]\n", "2\n", "None\n", "[-788.3771952004522, -15.749767470782672, 797.9365186643824]\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (0, -3, 2, 0))\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[-788.3771952004522, -15.749767470782672, 686.2052333946046]\n", "2\n", "None\n", "[-788.3771952004522, -15.749767470782672, 686.2052333946046]\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (5, -3, 1, -1))\n", "[-788.3771952004522, -15.749767470782672, 642.7968983304227]\n", "2\n", "500.0\n", "[-788.3771952004522, -15.749767470782672, 642.7968983304227]\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (5, -3, 1, -1))\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-1, -4, 3, 0))\n", "[-1288.3771952004522, -515.7497674707827, -17.704768336170105]\n", "2\n", "-100.0\n", "[-1288.3771952004522, -515.7497674707827, -17.704768336170105]\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-1, -4, 3, 0))\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "[-1188.3771952004522, -415.7497674707827, -29.436053605948075]\n", "1\n", "None\n", "[-1188.3771952004522, -415.7497674707827, -29.436053605948075]\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "((1, -3, 1, 0), (4, -3, 0, 0), (-5, -3, 4, 0))\n", "[-1188.3771952004522, -374.6909090652872, -29.436053605948075]\n", "1\n", "None\n", "[-1188.3771952004522, -374.6909090652872, -29.436053605948075]\n", "((1, -3, 1, 0), (4, -3, 0, 0), (-5, -3, 4, 0))\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "[-1188.3771952004522, -415.7497674707827, -29.436053605948075]\n", "1\n", "None\n", "[-1188.3771952004522, -415.7497674707827, -29.436053605948075]\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "((1, -3, 1, 0), (4, -3, 0, 0), (-5, -3, 4, 0))\n", "[-1188.3771952004522, -374.6909090652872, -29.436053605948075]\n", "1\n", "None\n", "[-1188.3771952004522, -374.6909090652872, -29.436053605948075]\n", "((1, -3, 1, 0), (4, -3, 0, 0), (-5, -3, 4, 0))\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "[-1188.3771952004522, -415.7497674707827, -29.436053605948075]\n", "0\n", "None\n", "[-1188.3771952004522, -415.7497674707827, -29.436053605948075]\n", "((1, -3, 1, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "((-6, -3, 4, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "[-1229.4360536059478, -415.7497674707827, -29.436053605948075]\n", "1\n", "-200.0\n", "[-1229.4360536059478, -415.7497674707827, -29.436053605948075]\n", "((-6, -3, 4, 0), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "((-6, -3, 4, 0), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "[-1029.4360536059478, -60.61014713682334, 170.56394639405192]\n", "0\n", "None\n", "[-1029.4360536059478, -60.61014713682334, 170.56394639405192]\n", "((-6, -3, 4, 0), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "((-11, -3, 5, 1), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "[-874.2964332719882, -60.61014713682334, 170.56394639405192]\n", "0\n", "-700.0\n", "[-874.2964332719882, -60.61014713682334, 170.56394639405192]\n", "((-11, -3, 5, 1), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "[-62.565148002210435, 639.3898528631767, 870.563946394052]\n", "2\n", "None\n", "[-62.565148002210435, 639.3898528631767, 870.563946394052]\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-9, -4, 4, 2))\n", "[-62.565148002210435, 639.3898528631767, 906.2607584669145]\n", "1\n", "None\n", "[-62.565148002210435, 639.3898528631767, 906.2607584669145]\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-9, -4, 4, 2))\n", "((-7, -4, 4, 1), (-12, -4, 4, 3), (-9, -4, 4, 2))\n", "[-62.565148002210435, 675.0866649360393, 906.2607584669145]\n", "2\n", "None\n", "[-62.565148002210435, 675.0866649360393, 906.2607584669145]\n", "((-7, -4, 4, 1), (-12, -4, 4, 3), (-9, -4, 4, 2))\n", "((-7, -4, 4, 1), (-12, -4, 4, 3), (-4, -4, 3, 1))\n", "[-62.565148002210435, 675.0866649360393, 751.1211381329548]\n", "1\n", "None\n", "[-62.565148002210435, 675.0866649360393, 751.1211381329548]\n", "((-7, -4, 4, 1), (-12, -4, 4, 3), (-4, -4, 3, 1))\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-4, -4, 3, 1))\n", "[-62.565148002210435, 639.3898528631767, 751.1211381329548]\n", "2\n", "None\n", "[-62.565148002210435, 639.3898528631767, 751.1211381329548]\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-4, -4, 3, 1))\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "[-62.565148002210435, 639.3898528631767, 870.563946394052]\n", "1\n", "500.0\n", "[-62.565148002210435, 639.3898528631767, 870.563946394052]\n", "((-7, -4, 4, 1), (-8, -3, 4, 1), (-5, -3, 4, 0))\n", "((-7, -4, 4, 1), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "[-562.5651480022104, -15.749767470782672, 370.563946394052]\n", "2\n", "None\n", "[-562.5651480022104, -15.749767470782672, 370.563946394052]\n", "((-7, -4, 4, 1), (-3, -3, 3, 0), (-5, -3, 4, 0))\n", "((-7, -4, 4, 1), (-3, -3, 3, 0), (-9, -4, 4, 2))\n", "[-562.5651480022104, -15.749767470782672, 406.26075846691447]\n", "2\n", "700.0\n", "[-562.5651480022104, -15.749767470782672, 406.26075846691447]\n", "((-7, -4, 4, 1), (-3, -3, 3, 0), (-9, -4, 4, 2))\n", "((-7, -4, 4, 1), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[-1262.5651480022104, -715.7497674707827, -13.794766605395353]\n", "0\n", "None\n", "[-1262.5651480022104, -715.7497674707827, -13.794766605395353]\n", "((-7, -4, 4, 1), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[-1213.7947666053954, -715.7497674707827, -13.794766605395353]\n", "0\n", "None\n", "[-1213.7947666053954, -715.7497674707827, -13.794766605395353]\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[-1102.0634813356176, -715.7497674707827, -13.794766605395353]\n", "0\n", "None\n", "[-1102.0634813356176, -715.7497674707827, -13.794766605395353]\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[-1213.7947666053954, -715.7497674707827, -13.794766605395353]\n", "0\n", "-1000.0\n", "[-1213.7947666053954, -715.7497674707827, -13.794766605395353]\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((-2, -2, 3, -1), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[17.379326925479518, 284.2502325292173, 986.2052333946046]\n", "0\n", "-200.0\n", "[17.379326925479518, 284.2502325292173, 986.2052333946046]\n", "((-2, -2, 3, -1), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[-13.794766605395353, 484.2502325292173, 1186.2052333946046]\n", "2\n", "None\n", "[-13.794766605395353, 484.2502325292173, 1186.2052333946046]\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (0, -3, 2, 0))\n", "[-13.794766605395353, 484.2502325292173, 1297.9365186643824]\n", "2\n", "None\n", "[-13.794766605395353, 484.2502325292173, 1297.9365186643824]\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (0, -3, 2, 0))\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "[-13.794766605395353, 484.2502325292173, 1186.2052333946046]\n", "2\n", "None\n", "[-13.794766605395353, 484.2502325292173, 1186.2052333946046]\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-4, -2, 3, 0))\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (0, -3, 2, 0))\n", "[-13.794766605395353, 484.2502325292173, 1297.9365186643824]\n", "2\n", "1400.0\n", "[-13.794766605395353, 484.2502325292173, 1297.9365186643824]\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (0, -3, 2, 0))\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "[-1413.7947666053954, -915.7497674707827, 17.379326925479518]\n", "0\n", "-1300.0\n", "[-1413.7947666053954, -915.7497674707827, 17.379326925479518]\n", "((-5, -2, 3, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "[-2.0634813356175528, 384.2502325292173, 1317.3793269254795]\n", "1\n", "None\n", "[-2.0634813356175528, 384.2502325292173, 1317.3793269254795]\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "((-1, -3, 2, 0), (1, -2, 3, -2), (-1, -2, 3, -1))\n", "[-2.0634813356175528, 348.5534204563545, 1317.3793269254795]\n", "1\n", "None\n", "[-2.0634813356175528, 348.5534204563545, 1317.3793269254795]\n", "((-1, -3, 2, 0), (1, -2, 3, -2), (-1, -2, 3, -1))\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "[-2.0634813356175528, 384.2502325292173, 1317.3793269254795]\n", "1\n", "None\n", "[-2.0634813356175528, 384.2502325292173, 1317.3793269254795]\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "((-1, -3, 2, 0), (1, -2, 3, -2), (-1, -2, 3, -1))\n", "[-2.0634813356175528, 348.5534204563545, 1317.3793269254795]\n", "1\n", "None\n", "[-2.0634813356175528, 348.5534204563545, 1317.3793269254795]\n", "((-1, -3, 2, 0), (1, -2, 3, -2), (-1, -2, 3, -1))\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "[-2.0634813356175528, 384.2502325292173, 1317.3793269254795]\n", "1\n", "500.0\n", "[-2.0634813356175528, 384.2502325292173, 1317.3793269254795]\n", "((-1, -3, 2, 0), (-3, -3, 3, 0), (-1, -2, 3, -1))\n", "((-1, -3, 2, 0), (1, -4, 2, 0), (-1, -2, 3, -1))\n", "[-502.06348133561755, -4.018482201005099, 817.3793269254795]\n", "2\n", "600.0\n", "[-502.06348133561755, -4.018482201005099, 817.3793269254795]\n", "((-1, -3, 2, 0), (1, -4, 2, 0), (-1, -2, 3, -1))\n", "((-1, -3, 2, 0), (1, -4, 2, 0), (0, -3, 2, 0))\n", "[-1102.0634813356176, -604.0184822010051, 97.93651866438233]\n", "1\n", "-1000.0\n", "[-1102.0634813356176, -604.0184822010051, 97.93651866438233]\n", "((-1, -3, 2, 0), (1, -4, 2, 0), (0, -3, 2, 0))\n", "((-1, -3, 2, 0), (2, -3, 2, -1), (0, -3, 2, 0))\n", "[-102.06348133561755, 129.11061219525686, 1097.9365186643822]\n", "0\n", "-500.0\n", "[-102.06348133561755, 129.11061219525686, 1097.9365186643822]\n", "((-1, -3, 2, 0), (2, -3, 2, -1), (0, -3, 2, 0))\n", "((1, -3, 1, 0), (2, -3, 2, -1), (0, -3, 2, 0))\n", "[11.622804799547794, 629.1106121952569, 1597.9365186643822]\n", "1\n", "1000.0\n", "[11.622804799547794, 629.1106121952569, 1597.9365186643822]\n", "((1, -3, 1, 0), (2, -3, 2, -1), (0, -3, 2, 0))\n", "((1, -3, 1, 0), (-1, -3, 1, 1), (0, -3, 2, 0))\n", "[-988.3771952004522, -19.551288731327418, 597.9365186643822]\n", "2\n", "600.0\n", "[-988.3771952004522, -19.551288731327418, 597.9365186643822]\n", "((1, -3, 1, 0), (-1, -3, 1, 1), (0, -3, 2, 0))\n", "((1, -3, 1, 0), (-1, -3, 1, 1), (-2, -2, 1, 1))\n", "[-1588.3771952004522, -619.5512887313274, 82.40371213406013]\n", "2\n", "-400.0\n", "[-1588.3771952004522, -619.5512887313274, 82.40371213406013]\n", "((1, -3, 1, 0), (-1, -3, 1, 1), (-2, -2, 1, 1))\n", "((1, -3, 1, 0), (-1, -3, 1, 1), (2, -3, 1, 0))\n", "[-1188.3771952004522, -219.55128873132742, 11.62280479954751]\n", "1\n", "None\n", "[-1188.3771952004522, -219.55128873132742, 11.62280479954751]\n", "((1, -3, 1, 0), (-1, -3, 1, 1), (2, -3, 1, 0))\n", "((1, -3, 1, 0), (4, -3, 0, 0), (2, -3, 1, 0))\n", "[-1188.3771952004522, -374.6909090652872, 11.62280479954751]\n", "1\n", "None\n", "[-1188.3771952004522, -374.6909090652872, 11.62280479954751]\n", "((1, -3, 1, 0), (4, -3, 0, 0), (2, -3, 1, 0))\n", "((1, -3, 1, 0), (0, -2, 1, 0), (2, -3, 1, 0))\n", "[-1188.3771952004522, -486.4221943350649, 11.62280479954751]\n", "1\n", "-400.0\n", "[-1188.3771952004522, -486.4221943350649, 11.62280479954751]\n", "((1, -3, 1, 0), (0, -2, 1, 0), (2, -3, 1, 0))\n", "((1, -3, 1, 0), (4, -3, 0, 0), (2, -3, 1, 0))\n", "[-788.3771952004522, 25.3090909347128, 411.6228047995475]\n", "2\n", "None\n", "[-788.3771952004522, 25.3090909347128, 411.6228047995475]\n", "((1, -3, 1, 0), (4, -3, 0, 0), (2, -3, 1, 0))\n", "((1, -3, 1, 0), (4, -3, 0, 0), (6, -4, 0, 0))\n", "[-788.3771952004522, 25.3090909347128, 523.3540900693253]\n", "2\n", "None\n", "[-788.3771952004522, 25.3090909347128, 523.3540900693253]\n", "((1, -3, 1, 0), (4, -3, 0, 0), (6, -4, 0, 0))\n", "((1, -3, 1, 0), (4, -3, 0, 0), (2, -3, 1, 0))\n", "[-788.3771952004522, 25.3090909347128, 411.6228047995475]\n", "1\n", "-200.0\n", "[-788.3771952004522, 25.3090909347128, 411.6228047995475]\n", "((1, -3, 1, 0), (4, -3, 0, 0), (2, -3, 1, 0))\n", "((1, -3, 1, 0), (0, -2, 1, 0), (2, -3, 1, 0))\n", "[-588.3771952004522, 113.57780566493511, 611.6228047995476]\n", "2\n", "1100.0\n", "[-588.3771952004522, 113.57780566493511, 611.6228047995476]\n", "((1, -3, 1, 0), (0, -2, 1, 0), (2, -3, 1, 0))\n", "((1, -3, 1, 0), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "[-1688.3771952004522, -986.4221943350649, -17.596287865939757]\n", "0\n", "None\n", "[-1688.3771952004522, -986.4221943350649, -17.596287865939757]\n", "((1, -3, 1, 0), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "((-5, -1, 1, 1), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "[-1715.6412870005524, -986.4221943350649, -17.596287865939757]\n", "0\n", "None\n", "[-1715.6412870005524, -986.4221943350649, -17.596287865939757]\n", "((-5, -1, 1, 1), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "((1, -3, 1, 0), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "[-1688.3771952004522, -986.4221943350649, -17.596287865939757]\n", "0\n", "None\n", "[-1688.3771952004522, -986.4221943350649, -17.596287865939757]\n", "((1, -3, 1, 0), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "((-5, -1, 1, 1), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "[-1715.6412870005524, -986.4221943350649, -17.596287865939757]\n", "0\n", "-1200.0\n", "[-1715.6412870005524, -986.4221943350649, -17.596287865939757]\n", "((-5, -1, 1, 1), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "[-17.59628786593953, 213.5778056649351, 1182.4037121340602]\n", "2\n", "None\n", "[-17.59628786593953, 213.5778056649351, 1182.4037121340602]\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-2, -2, 1, 1))\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[-17.59628786593953, 213.5778056649351, 1027.2640918001002]\n", "2\n", "None\n", "[-17.59628786593953, 213.5778056649351, 1027.2640918001002]\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "[-17.59628786593953, 213.5778056649351, 915.5328065303224]\n", "2\n", "None\n", "[-17.59628786593953, 213.5778056649351, 915.5328065303224]\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-5, -2, 1, 2))\n", "[-17.59628786593953, 213.5778056649351, 951.2296186031851]\n", "0\n", "None\n", "[-17.59628786593953, 213.5778056649351, 951.2296186031851]\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-5, -2, 1, 2))\n", "((2, -2, 0, 0), (0, -2, 1, 0), (-5, -2, 1, 2))\n", "[-172.73590819989954, 213.5778056649351, 951.2296186031851]\n", "2\n", "1000.0\n", "[-172.73590819989954, 213.5778056649351, 951.2296186031851]\n", "((2, -2, 0, 0), (0, -2, 1, 0), (-5, -2, 1, 2))\n", "((2, -2, 0, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[-1172.7359081998995, -786.4221943350649, 27.264091800100232]\n", "0\n", "None\n", "[-1172.7359081998995, -786.4221943350649, 27.264091800100232]\n", "((2, -2, 0, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((-2, -1, 1, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[-1284.4671934696776, -786.4221943350649, 27.264091800100232]\n", "0\n", "-1200.0\n", "[-1284.4671934696776, -786.4221943350649, 27.264091800100232]\n", "((-2, -1, 1, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((2, -2, 0, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[27.26409180010046, 413.5778056649351, 1227.2640918001002]\n", "0\n", "-200.0\n", "[27.26409180010046, 413.5778056649351, 1227.2640918001002]\n", "((2, -2, 0, 0), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((-1, -2, 0, 1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "[-3.910001730774866, 613.5778056649351, 1427.2640918001002]\n", "2\n", "1200.0\n", "[-3.910001730774866, 613.5778056649351, 1427.2640918001002]\n", "((-1, -2, 0, 1), (0, -2, 1, 0), (3, -2, 0, 0))\n", "((-1, -2, 0, 1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "[-1203.9100017307749, -586.4221943350649, 115.53280653032243]\n", "0\n", "-900.0\n", "[-1203.9100017307749, -586.4221943350649, 115.53280653032243]\n", "((-1, -2, 0, 1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "((-2, -1, 1, 0), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "[-184.46719346967757, 313.5778056649351, 1015.5328065303224]\n", "0\n", "100.0\n", "[-184.46719346967757, 313.5778056649351, 1015.5328065303224]\n", "((-2, -1, 1, 0), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "[-17.59628786593953, 213.5778056649351, 915.5328065303224]\n", "0\n", "-100.0\n", "[-17.59628786593953, 213.5778056649351, 915.5328065303224]\n", "((-3, -2, 1, 1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "((1, -1, 1, -1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "[46.70690006119776, 313.5778056649351, 1015.5328065303224]\n", "1\n", "None\n", "[46.70690006119776, 313.5778056649351, 1015.5328065303224]\n", "((1, -1, 1, -1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "((1, -1, 1, -1), (4, -1, 1, -2), (-1, -1, 1, 0))\n", "[46.70690006119776, 277.8809935920724, 1015.5328065303224]\n", "1\n", "None\n", "[46.70690006119776, 277.8809935920724, 1015.5328065303224]\n", "((1, -1, 1, -1), (4, -1, 1, -2), (-1, -1, 1, 0))\n", "((1, -1, 1, -1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "[46.70690006119776, 313.5778056649351, 1015.5328065303224]\n", "1\n", "500.0\n", "[46.70690006119776, 313.5778056649351, 1015.5328065303224]\n", "((1, -1, 1, -1), (0, -2, 1, 0), (-1, -1, 1, 0))\n", "((1, -1, 1, -1), (-3, 0, 1, 0), (-1, -1, 1, 0))\n", "[-453.29309993880224, 17.487807395709865, 515.5328065303224]\n", "1\n", "100.0\n", "[-453.29309993880224, 17.487807395709865, 515.5328065303224]\n", "((1, -1, 1, -1), (-3, 0, 1, 0), (-1, -1, 1, 0))\n", "((1, -1, 1, -1), (1, -1, 0, 0), (-1, -1, 1, 0))\n", "[-553.2930999388022, 29.21909266548755, 415.53280653032243]\n", "0\n", "-700.0\n", "[-553.2930999388022, 29.21909266548755, 415.53280653032243]\n", "((1, -1, 1, -1), (1, -1, 0, 0), (-1, -1, 1, 0))\n", "((2, -2, 0, 0), (1, -1, 0, 0), (-1, -1, 1, 0))\n", "[27.26409180010046, 729.2190926654876, 1115.5328065303224]\n", "1\n", "600.0\n", "[27.26409180010046, 729.2190926654876, 1115.5328065303224]\n", "((2, -2, 0, 0), (1, -1, 0, 0), (-1, -1, 1, 0))\n", "((2, -2, 0, 0), (-3, 0, 1, 0), (-1, -1, 1, 0))\n", "[-572.7359081998995, 17.487807395709865, 515.5328065303224]\n", "1\n", "-100.0\n", "[-572.7359081998995, 17.487807395709865, 515.5328065303224]\n", "((2, -2, 0, 0), (-3, 0, 1, 0), (-1, -1, 1, 0))\n", "((2, -2, 0, 0), (4, -3, 0, 0), (-1, -1, 1, 0))\n", "[-472.73590819989954, 25.3090909347128, 615.5328065303224]\n", "1\n", "100.0\n", "[-472.73590819989954, 25.3090909347128, 615.5328065303224]\n", "((2, -2, 0, 0), (4, -3, 0, 0), (-1, -1, 1, 0))\n", "((2, -2, 0, 0), (-3, 0, 1, 0), (-1, -1, 1, 0))\n", "[-572.7359081998995, 17.487807395709865, 515.5328065303224]\n", "1\n", "-100.0\n", "[-572.7359081998995, 17.487807395709865, 515.5328065303224]\n", "((2, -2, 0, 0), (-3, 0, 1, 0), (-1, -1, 1, 0))\n", "((2, -2, 0, 0), (4, -3, 0, 0), (-1, -1, 1, 0))\n", "[-472.73590819989954, 25.3090909347128, 615.5328065303224]\n", "0\n", "None\n", "[-472.73590819989954, 25.3090909347128, 615.5328065303224]\n", "((2, -2, 0, 0), (4, -3, 0, 0), (-1, -1, 1, 0))\n", "((1, -1, 1, -1), (4, -3, 0, 0), (-1, -1, 1, 0))\n", "[-353.29309993880224, 25.3090909347128, 615.5328065303224]\n", "1\n", "-200.0\n", "[-353.29309993880224, 25.3090909347128, 615.5328065303224]\n", "((1, -1, 1, -1), (4, -3, 0, 0), (-1, -1, 1, 0))\n", "((1, -1, 1, -1), (-4, -1, 2, 0), (-1, -1, 1, 0))\n", "[-153.29309993880224, 1.8465203951568583, 815.5328065303224]\n", "0\n", "None\n", "[-153.29309993880224, 1.8465203951568583, 815.5328065303224]\n", "((1, -1, 1, -1), (-4, -1, 2, 0), (-1, -1, 1, 0))\n", "((-7, -1, 2, 1), (-4, -1, 2, 0), (-1, -1, 1, 0))\n", "[-229.32757313571778, 1.8465203951568583, 815.5328065303224]\n", "2\n", "None\n", "[-229.32757313571778, 1.8465203951568583, 815.5328065303224]\n", "((-7, -1, 2, 1), (-4, -1, 2, 0), (-1, -1, 1, 0))\n", "((-7, -1, 2, 1), (-4, -1, 2, 0), (-9, -1, 2, 2))\n", "[-229.32757313571778, 1.8465203951568583, 739.4983333334069]\n", "1\n", "-100.0\n", "[-229.32757313571778, 1.8465203951568583, 739.4983333334069]\n", "((-7, -1, 2, 1), (-4, -1, 2, 0), (-9, -1, 2, 2))\n", "((-7, -1, 2, 1), (-12, -1, 3, 2), (-9, -1, 2, 2))\n", "[-129.32757313571778, 25.81204719824177, 839.4983333334069]\n", "0\n", "None\n", "[-129.32757313571778, 25.81204719824177, 839.4983333334069]\n", "((-7, -1, 2, 1), (-12, -1, 3, 2), (-9, -1, 2, 2))\n", "((-15, -1, 3, 3), (-12, -1, 3, 2), (-9, -1, 2, 2))\n", "[-205.36204633263287, 25.81204719824177, 839.4983333334069]\n", "1\n", "-200.0\n", "[-205.36204633263287, 25.81204719824177, 839.4983333334069]\n", "((-15, -1, 3, 3), (-12, -1, 3, 2), (-9, -1, 2, 2))\n", "((-15, -1, 3, 3), (-7, -1, 2, 1), (-9, -1, 2, 2))\n", "[-5.362046332632872, 70.67242686428199, 1039.498333333407]\n", "2\n", "None\n", "[-5.362046332632872, 70.67242686428199, 1039.498333333407]\n", "((-15, -1, 3, 3), (-7, -1, 2, 1), (-9, -1, 2, 2))\n", "((-15, -1, 3, 3), (-7, -1, 2, 1), (-17, -1, 3, 4))\n", "[-5.362046332632872, 70.67242686428199, 963.4638601364917]\n", "0\n", "100.0\n", "[-5.362046332632872, 70.67242686428199, 963.4638601364917]\n", "((-15, -1, 3, 3), (-7, -1, 2, 1), (-17, -1, 3, 4))\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-17, -1, 3, 4))\n", "[-260.5016666665929, -29.327573135718012, 863.4638601364917]\n", "2\n", "None\n", "[-260.5016666665929, -29.327573135718012, 863.4638601364917]\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-17, -1, 3, 4))\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-9, -1, 2, 2))\n", "[-260.5016666665929, -29.327573135718012, 939.4983333334069]\n", "2\n", "None\n", "[-260.5016666665929, -29.327573135718012, 939.4983333334069]\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-9, -1, 2, 2))\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-4, -1, 1, 1))\n", "[-260.5016666665929, -29.327573135718012, 784.3587129994473]\n", "0\n", "-100.0\n", "[-260.5016666665929, -29.327573135718012, 784.3587129994473]\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-4, -1, 1, 1))\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (-4, -1, 1, 1))\n", "[-84.46719346967757, 70.67242686428199, 884.3587129994473]\n", "2\n", "1300.0\n", "[-84.46719346967757, 70.67242686428199, 884.3587129994473]\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (-4, -1, 1, 1))\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (-9, -1, 2, 2))\n", "[-1384.4671934696776, -1229.327573135718, -260.5016666665931]\n", "2\n", "100.0\n", "[-1384.4671934696776, -1229.327573135718, -260.5016666665931]\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (-9, -1, 2, 2))\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (2, -1, 1, -1))\n", "[-1484.4671934696776, -1329.327573135718, -53.2930999388027]\n", "2\n", "-100.0\n", "[-1484.4671934696776, -1329.327573135718, -53.2930999388027]\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (2, -1, 1, -1))\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (-3, -1, 2, 0))\n", "[-1384.4671934696776, -1229.327573135718, 201.8465203951571]\n", "0\n", "-1500.0\n", "[-1384.4671934696776, -1229.327573135718, 201.8465203951571]\n", "((-2, -1, 1, 0), (-7, -1, 2, 1), (-3, -1, 2, 0))\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-3, -1, 2, 0))\n", "[39.49833333340712, 270.672426864282, 1701.846520395157]\n", "2\n", "1400.0\n", "[39.49833333340712, 270.672426864282, 1701.846520395157]\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-3, -1, 2, 0))\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-6, -1, 2, 1))\n", "[-1360.5016666665929, -1129.327573135718, 70.67242686428199]\n", "0\n", "-1500.0\n", "[-1360.5016666665929, -1129.327573135718, 70.67242686428199]\n", "((-10, -1, 2, 2), (-7, -1, 2, 1), (-6, -1, 2, 1))\n", "((-5, -1, 1, 1), (-7, -1, 2, 1), (-6, -1, 2, 1))\n", "[-15.641287000552438, 370.672426864282, 1570.672426864282]\n", "1\n", "None\n", "[-15.641287000552438, 370.672426864282, 1570.672426864282]\n", "((-5, -1, 1, 1), (-7, -1, 2, 1), (-6, -1, 2, 1))\n", "((-5, -1, 1, 1), (-3, -2, 1, 1), (-6, -1, 2, 1))\n", "[-15.641287000552438, 482.40371213406024, 1570.672426864282]\n", "2\n", "1600.0\n", "[-15.641287000552438, 482.40371213406024, 1570.672426864282]\n", "((-5, -1, 1, 1), (-3, -2, 1, 1), (-6, -1, 2, 1))\n", "((-5, -1, 1, 1), (-3, -2, 1, 1), (-2, -2, 1, 1))\n", "[-1615.6412870005524, -1117.5962878659398, 82.40371213406002]\n", "2\n", "-100.0\n", "[-1615.6412870005524, -1117.5962878659398, 82.40371213406002]\n", "((-5, -1, 1, 1), (-3, -2, 1, 1), (-2, -2, 1, 1))\n", "((-5, -1, 1, 1), (-3, -2, 1, 1), (-6, -1, 2, 1))\n", "[-1515.6412870005524, -1017.5962878659398, 70.6724268642819]\n", "1\n", "None\n", "[-1515.6412870005524, -1017.5962878659398, 70.6724268642819]\n", "((-5, -1, 1, 1), (-3, -2, 1, 1), (-6, -1, 2, 1))\n", "((-5, -1, 1, 1), (-4, -1, 2, 0), (-6, -1, 2, 1))\n", "[-1515.6412870005524, -898.1534796048431, 70.6724268642819]\n", "2\n", "-200.0\n", "[-1515.6412870005524, -898.1534796048431, 70.6724268642819]\n", "((-5, -1, 1, 1), (-4, -1, 2, 0), (-6, -1, 2, 1))\n", "((-5, -1, 1, 1), (-4, -1, 2, 0), (-5, 0, 2, 0))\n", "[-1315.6412870005524, -698.1534796048431, 3.801521260544547]\n", "2\n", "-100.0\n", "[-1315.6412870005524, -698.1534796048431, 3.801521260544547]\n", "((-5, -1, 1, 1), (-4, -1, 2, 0), (-5, 0, 2, 0))\n", "((-5, -1, 1, 1), (-4, -1, 2, 0), (-2, -2, 2, 0))\n", "[-1215.6412870005524, -598.1534796048431, -100.10848047023043]\n", "1\n", "None\n", "[-1215.6412870005524, -598.1534796048431, -100.10848047023043]\n", "((-5, -1, 1, 1), (-4, -1, 2, 0), (-2, -2, 2, 0))\n", "((-5, -1, 1, 1), (-6, 0, 1, 1), (-2, -2, 2, 0))\n", "[-1215.6412870005524, -513.6862861351653, -100.10848047023043]\n", "0\n", "-1400.0\n", "[-1215.6412870005524, -513.6862861351653, -100.10848047023043]\n", "((-5, -1, 1, 1), (-6, 0, 1, 1), (-2, -2, 2, 0))\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-2, -2, 2, 0))\n", "[72.62742772966976, 886.3137138648347, 1299.8915195297695]\n", "2\n", "1200.0\n", "[72.62742772966976, 886.3137138648347, 1299.8915195297695]\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-2, -2, 2, 0))\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "[-1127.3725722703302, -313.68628613516535, 72.62742772966931]\n", "1\n", "-200.0\n", "[-1127.3725722703302, -313.68628613516535, 72.62742772966931]\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "((-9, 0, 2, 1), (-11, 0, 2, 2), (-8, 0, 2, 1))\n", "[-927.3725722703302, 41.453334198794664, 272.6274277296693]\n", "1\n", "100.0\n", "[-927.3725722703302, 41.453334198794664, 272.6274277296693]\n", "((-9, 0, 2, 1), (-11, 0, 2, 2), (-8, 0, 2, 1))\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "[-1027.3725722703302, -213.68628613516535, 172.6274277296693]\n", "2\n", "None\n", "[-1027.3725722703302, -213.68628613516535, 172.6274277296693]\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-4, -1, 1, 1))\n", "[-1027.3725722703302, -213.68628613516535, 284.358712999447]\n", "0\n", "None\n", "[-1027.3725722703302, -213.68628613516535, 284.358712999447]\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-4, -1, 1, 1))\n", "((-5, -1, 1, 1), (-6, 0, 1, 1), (-4, -1, 1, 1))\n", "[-915.6412870005524, -213.68628613516535, 284.358712999447]\n", "2\n", "None\n", "[-915.6412870005524, -213.68628613516535, 284.358712999447]\n", "((-5, -1, 1, 1), (-6, 0, 1, 1), (-4, -1, 1, 1))\n", "((-5, -1, 1, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "[-915.6412870005524, -213.68628613516535, 172.6274277296693]\n", "0\n", "None\n", "[-915.6412870005524, -213.68628613516535, 172.6274277296693]\n", "((-5, -1, 1, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "[-1027.3725722703302, -213.68628613516535, 172.6274277296693]\n", "2\n", "600.0\n", "[-1027.3725722703302, -213.68628613516535, 172.6274277296693]\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-8, 0, 2, 1))\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "[-1627.3725722703302, -813.6862861351653, -3.410605131648481e-13]\n", "0\n", "None\n", "[-1627.3725722703302, -813.6862861351653, -3.410605131648481e-13]\n", "((-9, 0, 2, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "((-2, 0, -1, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "[-1586.3137138648347, -813.6862861351653, -3.410605131648481e-13]\n", "2\n", "100.0\n", "[-1586.3137138648347, -813.6862861351653, -3.410605131648481e-13]\n", "((-2, 0, -1, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "((-2, 0, -1, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "[-1686.3137138648347, -913.6862861351653, 11.731285269777473]\n", "0\n", "-1300.0\n", "[-1686.3137138648347, -913.6862861351653, 11.731285269777473]\n", "((-2, 0, -1, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "[2.2737367544323206e-13, 386.31371386483465, 1311.7312852697776]\n", "0\n", "100.0\n", "[2.2737367544323206e-13, 386.31371386483465, 1311.7312852697776]\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "((-9, 0, 1, 2), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "[55.13962033396001, 286.31371386483465, 1211.7312852697776]\n", "0\n", "None\n", "[55.13962033396001, 286.31371386483465, 1211.7312852697776]\n", "((-9, 0, 1, 2), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "[-99.99999999999977, 286.31371386483465, 1211.7312852697776]\n", "0\n", "None\n", "[-99.99999999999977, 286.31371386483465, 1211.7312852697776]\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "((-3, -1, -1, 2), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "[-219.44280826109707, 286.31371386483465, 1211.7312852697776]\n", "0\n", "200.0\n", "[-219.44280826109707, 286.31371386483465, 1211.7312852697776]\n", "((-3, -1, -1, 2), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "((-8, 1, 1, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "[-411.7312852697776, 86.31371386483465, 1011.7312852697776]\n", "1\n", "None\n", "[-411.7312852697776, 86.31371386483465, 1011.7312852697776]\n", "((-8, 1, 1, 1), (-6, 0, 1, 1), (1, -1, -1, 1))\n", "((-8, 1, 1, 1), (3, -1, -1, 0), (1, -1, -1, 1))\n", "[-411.7312852697776, 42.90537880065267, 1011.7312852697776]\n", "0\n", "200.0\n", "[-411.7312852697776, 42.90537880065267, 1011.7312852697776]\n", "((-8, 1, 1, 1), (3, -1, -1, 0), (1, -1, -1, 1))\n", "((5, -1, -2, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "[-543.4083350641818, -157.09462119934733, 811.7312852697776]\n", "1\n", "None\n", "[-543.4083350641818, -157.09462119934733, 811.7312852697776]\n", "((5, -1, -2, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "((5, -1, -2, 0), (7, -2, -2, 0), (1, -1, -1, 1))\n", "[-543.4083350641818, -45.36333592956953, 811.7312852697776]\n", "0\n", "100.0\n", "[-543.4083350641818, -45.36333592956953, 811.7312852697776]\n", "((5, -1, -2, 0), (7, -2, -2, 0), (1, -1, -1, 1))\n", "((9, -2, -3, 0), (7, -2, -2, 0), (1, -1, -1, 1))\n", "[-531.6770497944042, -145.36333592956953, 711.7312852697776]\n", "1\n", "None\n", "[-531.6770497944042, -145.36333592956953, 711.7312852697776]\n", "((9, -2, -3, 0), (7, -2, -2, 0), (1, -1, -1, 1))\n", "((9, -2, -3, 0), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[-531.6770497944042, -101.95500086538755, 711.7312852697776]\n", "1\n", "None\n", "[-531.6770497944042, -101.95500086538755, 711.7312852697776]\n", "((9, -2, -3, 0), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((9, -2, -3, 0), (7, -2, -2, 0), (1, -1, -1, 1))\n", "[-531.6770497944042, -145.36333592956953, 711.7312852697776]\n", "1\n", "200.0\n", "[-531.6770497944042, -145.36333592956953, 711.7312852697776]\n", "((9, -2, -3, 0), (7, -2, -2, 0), (1, -1, -1, 1))\n", "((9, -2, -3, 0), (8, -1, -3, 0), (1, -1, -1, 1))\n", "[-731.6770497944042, -29.722048929016864, 511.7312852697776]\n", "1\n", "200.0\n", "[-731.6770497944042, -29.722048929016864, 511.7312852697776]\n", "((9, -2, -3, 0), (8, -1, -3, 0), (1, -1, -1, 1))\n", "((9, -2, -3, 0), (12, -2, -4, 0), (1, -1, -1, 1))\n", "[-931.6770497944042, -117.99076365923895, 311.7312852697776]\n", "1\n", "100.0\n", "[-931.6770497944042, -117.99076365923895, 311.7312852697776]\n", "((9, -2, -3, 0), (12, -2, -4, 0), (1, -1, -1, 1))\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (1, -1, -1, 1))\n", "[-1031.6770497944042, -19.442808261097298, 211.73128526977757]\n", "2\n", "None\n", "[-1031.6770497944042, -19.442808261097298, 211.73128526977757]\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (1, -1, -1, 1))\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "[-1031.6770497944042, -19.442808261097298, 366.8709056037372]\n", "2\n", "None\n", "[-1031.6770497944042, -19.442808261097298, 366.8709056037372]\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (13, -2, -3, -1))\n", "[-1031.6770497944042, -19.442808261097298, 399.4970437364706]\n", "2\n", "None\n", "[-1031.6770497944042, -19.442808261097298, 399.4970437364706]\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (13, -2, -3, -1))\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "[-1031.6770497944042, -19.442808261097298, 366.8709056037372]\n", "0\n", "None\n", "[-1031.6770497944042, -19.442808261097298, 366.8709056037372]\n", "((9, -2, -3, 0), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "((-8, -1, 0, 3), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "[-1064.3031879271375, -19.442808261097298, 366.8709056037372]\n", "2\n", "None\n", "[-1064.3031879271375, -19.442808261097298, 366.8709056037372]\n", "((-8, -1, 0, 3), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "((-8, -1, 0, 3), (-2, -1, -1, 2), (0, -2, -1, 2))\n", "[-1064.3031879271375, -19.442808261097298, 478.60219087351527]\n", "0\n", "None\n", "[-1064.3031879271375, -19.442808261097298, 478.60219087351527]\n", "((-8, -1, 0, 3), (-2, -1, -1, 2), (0, -2, -1, 2))\n", "((1, -2, -2, 2), (-2, -1, -1, 2), (0, -2, -1, 2))\n", "[-1107.7115229913195, -19.442808261097298, 478.60219087351527]\n", "2\n", "400.0\n", "[-1107.7115229913195, -19.442808261097298, 478.60219087351527]\n", "((1, -2, -2, 2), (-2, -1, -1, 2), (0, -2, -1, 2))\n", "((1, -2, -2, 2), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "[-1507.7115229913195, -419.4428082610973, -33.129094396262815]\n", "0\n", "-1300.0\n", "[-1507.7115229913195, -419.4428082610973, -33.129094396262815]\n", "((1, -2, -2, 2), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "[-88.26871473022175, 880.5571917389027, 1266.8709056037371]\n", "2\n", "1500.0\n", "[-88.26871473022175, 880.5571917389027, 1266.8709056037371]\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-4, -1, 0, 2))\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-1, -1, 0, 1))\n", "[-1588.2687147302217, -619.4428082610973, -1.955000865387774]\n", "2\n", "100.0\n", "[-1588.2687147302217, -619.4428082610973, -1.955000865387774]\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-1, -1, 0, 1))\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-3, 0, -1, 2))\n", "[-1688.2687147302217, -719.4428082610973, -17.487807395709865]\n", "1\n", "-1100.0\n", "[-1688.2687147302217, -719.4428082610973, -17.487807395709865]\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-3, 0, -1, 2))\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (-3, 0, -1, 2))\n", "[-588.2687147302217, 113.68628613516535, 1082.5121926042902]\n", "2\n", "None\n", "[-588.2687147302217, 113.68628613516535, 1082.5121926042902]\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (-3, 0, -1, 2))\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (3, -2, -1, 1))\n", "[-588.2687147302217, 113.68628613516535, 1109.7762844043905]\n", "2\n", "None\n", "[-588.2687147302217, 113.68628613516535, 1109.7762844043905]\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (3, -2, -1, 1))\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (-3, 0, -1, 2))\n", "[-588.2687147302217, 113.68628613516535, 1082.5121926042902]\n", "1\n", "400.0\n", "[-588.2687147302217, 113.68628613516535, 1082.5121926042902]\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (-3, 0, -1, 2))\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-3, 0, -1, 2))\n", "[-988.2687147302217, -19.442808261097298, 682.5121926042902]\n", "2\n", "None\n", "[-988.2687147302217, -19.442808261097298, 682.5121926042902]\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (-3, 0, -1, 2))\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (3, -2, -1, 1))\n", "[-988.2687147302217, -19.442808261097298, 709.7762844043904]\n", "1\n", "-200.0\n", "[-988.2687147302217, -19.442808261097298, 709.7762844043904]\n", "((0, -1, -1, 1), (-2, -1, -1, 2), (3, -2, -1, 1))\n", "((0, -1, -1, 1), (3, -1, -2, 1), (3, -2, -1, 1))\n", "[-788.2687147302217, 25.417571404942805, 909.7762844043904]\n", "1\n", "-100.0\n", "[-788.2687147302217, 25.417571404942805, 909.7762844043904]\n", "((0, -1, -1, 1), (3, -1, -2, 1), (3, -2, -1, 1))\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (3, -2, -1, 1))\n", "[-688.2687147302217, 13.686286135165346, 1009.7762844043904]\n", "1\n", "-300.0\n", "[-688.2687147302217, 13.686286135165346, 1009.7762844043904]\n", "((0, -1, -1, 1), (-1, 0, -1, 1), (3, -2, -1, 1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (3, -2, -1, 1))\n", "[-388.26871473022175, -1.9550008653875466, 1309.7762844043905]\n", "2\n", "900.0\n", "[-388.26871473022175, -1.9550008653875466, 1309.7762844043905]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (3, -2, -1, 1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[-1288.2687147302217, -901.9550008653875, 298.04499913461245]\n", "0\n", "None\n", "[-1288.2687147302217, -901.9550008653875, 298.04499913461245]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[-1399.9999999999998, -901.9550008653875, 298.04499913461245]\n", "0\n", "None\n", "[-1399.9999999999998, -901.9550008653875, 298.04499913461245]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[-1288.2687147302217, -901.9550008653875, 298.04499913461245]\n", "0\n", "-800.0\n", "[-1288.2687147302217, -901.9550008653875, 298.04499913461245]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((-5, -1, 0, 2), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[-333.1290943962624, -101.95500086538755, 1098.0449991346125]\n", "0\n", "-200.0\n", "[-333.1290943962624, -101.95500086538755, 1098.0449991346125]\n", "((-5, -1, 0, 2), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[-288.26871473022175, 98.04499913461245, 1298.0449991346125]\n", "0\n", "-100.0\n", "[-288.26871473022175, 98.04499913461245, 1298.0449991346125]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((-5, -1, 0, 2), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[-33.12909439626242, 198.04499913461245, 1398.0449991346125]\n", "0\n", "-300.0\n", "[-33.12909439626242, 198.04499913461245, 1398.0449991346125]\n", "((-5, -1, 0, 2), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1698.0449991346125]\n", "2\n", "None\n", "[2.2737367544323206e-13, 498.04499913461245, 1698.0449991346125]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-5, 0, 1, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1586.3137138648349]\n", "2\n", "None\n", "[2.2737367544323206e-13, 498.04499913461245, 1586.3137138648349]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-5, 0, 1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1698.0449991346125]\n", "2\n", "1800.0\n", "[2.2737367544323206e-13, 498.04499913461245, 1698.0449991346125]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-1, -1, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, 1, 0, 1))\n", "[-1799.9999999999998, -1301.9550008653875, 101.95500086538755]\n", "2\n", "-200.0\n", "[-1799.9999999999998, -1301.9550008653875, 101.95500086538755]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, 1, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-5, 0, 1, 1))\n", "[-1599.9999999999998, -1101.9550008653875, -13.686286135165119]\n", "2\n", "-100.0\n", "[-1599.9999999999998, -1101.9550008653875, -13.686286135165119]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-5, 0, 1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, -1, 0, 2))\n", "[-1499.9999999999998, -1001.9550008653875, -33.12909439626256]\n", "2\n", "-300.0\n", "[-1499.9999999999998, -1001.9550008653875, -33.12909439626256]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, -1, 0, 2))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "0\n", "None\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[-1088.2687147302217, -701.9550008653875, 0.0]\n", "2\n", "None\n", "[-1088.2687147302217, -701.9550008653875, 0.0]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[-1088.2687147302217, -701.9550008653875, 111.73128526977781]\n", "1\n", "None\n", "[-1088.2687147302217, -701.9550008653875, 111.73128526977781]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((0, -1, -1, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "[-1088.2687147302217, -590.2237155956096, 111.73128526977781]\n", "0\n", "None\n", "[-1088.2687147302217, -590.2237155956096, 111.73128526977781]\n", "((0, -1, -1, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "((4, -2, -2, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "[-976.5374294604442, -590.2237155956096, 111.73128526977781]\n", "2\n", "None\n", "[-976.5374294604442, -590.2237155956096, 111.73128526977781]\n", "((4, -2, -2, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "((4, -2, -2, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "[-976.5374294604442, -590.2237155956096, 223.4625705395555]\n", "1\n", "None\n", "[-976.5374294604442, -590.2237155956096, 223.4625705395555]\n", "((4, -2, -2, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "((4, -2, -2, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "[-976.5374294604442, -478.49243032583195, 223.4625705395555]\n", "0\n", "None\n", "[-976.5374294604442, -478.49243032583195, 223.4625705395555]\n", "((4, -2, -2, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "((8, -3, -3, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "[-864.8061441906666, -478.49243032583195, 223.4625705395555]\n", "2\n", "None\n", "[-864.8061441906666, -478.49243032583195, 223.4625705395555]\n", "((8, -3, -3, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "((8, -3, -3, 1), (6, -3, -2, 1), (9, -3, -3, 1))\n", "[-864.8061441906666, -478.49243032583195, 335.19385580933334]\n", "0\n", "-1000.0\n", "[-864.8061441906666, -478.49243032583195, 335.19385580933334]\n", "((8, -3, -3, 1), (6, -3, -2, 1), (9, -3, -3, 1))\n", "((4, -2, -2, 1), (6, -3, -2, 1), (9, -3, -3, 1))\n", "[23.462570539555827, 521.507569674168, 1335.1938558093334]\n", "1\n", "500.0\n", "[23.462570539555827, 521.507569674168, 1335.1938558093334]\n", "((4, -2, -2, 1), (6, -3, -2, 1), (9, -3, -3, 1))\n", "((4, -2, -2, 1), (2, -2, -1, 1), (9, -3, -3, 1))\n", "[-476.5374294604442, -90.22371559560963, 835.1938558093334]\n", "2\n", "None\n", "[-476.5374294604442, -90.22371559560963, 835.1938558093334]\n", "((4, -2, -2, 1), (2, -2, -1, 1), (9, -3, -3, 1))\n", "((4, -2, -2, 1), (2, -2, -1, 1), (0, -2, -1, 2))\n", "[-476.5374294604442, -90.22371559560963, 878.6021908735156]\n", "2\n", "700.0\n", "[-476.5374294604442, -90.22371559560963, 878.6021908735156]\n", "((4, -2, -2, 1), (2, -2, -1, 1), (0, -2, -1, 2))\n", "((4, -2, -2, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "[-1176.5374294604442, -790.2237155956096, 23.4625705395556]\n", "0\n", "None\n", "[-1176.5374294604442, -790.2237155956096, 23.4625705395556]\n", "((4, -2, -2, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "((0, -1, -1, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "[-1288.2687147302217, -790.2237155956096, 23.4625705395556]\n", "1\n", "None\n", "[-1288.2687147302217, -790.2237155956096, 23.4625705395556]\n", "((0, -1, -1, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "((0, -1, -1, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "[-1288.2687147302217, -678.492430325832, 23.4625705395556]\n", "0\n", "None\n", "[-1288.2687147302217, -678.492430325832, 23.4625705395556]\n", "((0, -1, -1, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "((4, -2, -2, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "[-1176.5374294604442, -678.492430325832, 23.4625705395556]\n", "1\n", "None\n", "[-1176.5374294604442, -678.492430325832, 23.4625705395556]\n", "((4, -2, -2, 1), (6, -3, -2, 1), (5, -2, -2, 1))\n", "((4, -2, -2, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "[-1176.5374294604442, -790.2237155956096, 23.4625705395556]\n", "2\n", "None\n", "[-1176.5374294604442, -790.2237155956096, 23.4625705395556]\n", "((4, -2, -2, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "((4, -2, -2, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "[-1176.5374294604442, -790.2237155956096, -88.26871473022209]\n", "0\n", "None\n", "[-1176.5374294604442, -790.2237155956096, -88.26871473022209]\n", "((4, -2, -2, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "((0, -1, -1, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "[-1288.2687147302217, -790.2237155956096, -88.26871473022209]\n", "1\n", "None\n", "[-1288.2687147302217, -790.2237155956096, -88.26871473022209]\n", "((0, -1, -1, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[-1288.2687147302217, -901.9550008653875, -88.26871473022209]\n", "0\n", "-1400.0\n", "[-1288.2687147302217, -901.9550008653875, -88.26871473022209]\n", "((0, -1, -1, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "1\n", "500.0\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "[-499.9999999999998, 109.77628440439037, 811.7312852697778]\n", "2\n", "None\n", "[-499.9999999999998, 109.77628440439037, 811.7312852697778]\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "[-499.9999999999998, 109.77628440439037, 923.4625705395555]\n", "2\n", "700.0\n", "[-499.9999999999998, 109.77628440439037, 923.4625705395555]\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (5, -2, -2, 1))\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "[-1199.9999999999998, -590.2237155956096, 111.7312852697778]\n", "1\n", "None\n", "[-1199.9999999999998, -590.2237155956096, 111.7312852697778]\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[-1199.9999999999998, -701.9550008653875, 111.7312852697778]\n", "1\n", "None\n", "[-1199.9999999999998, -701.9550008653875, 111.7312852697778]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "[-1199.9999999999998, -590.2237155956096, 111.7312852697778]\n", "1\n", "-900.0\n", "[-1199.9999999999998, -590.2237155956096, 111.7312852697778]\n", "((-4, 0, 0, 1), (2, -2, -1, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[-299.9999999999998, 198.04499913461245, 1011.7312852697778]\n", "1\n", "-100.0\n", "[-299.9999999999998, 198.04499913461245, 1011.7312852697778]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "[-199.99999999999977, 31.174093530875098, 1111.7312852697778]\n", "0\n", "None\n", "[-199.99999999999977, 31.174093530875098, 1111.7312852697778]\n", "((-4, 0, 0, 1), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "((-3, -1, -1, 2), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "[-319.44280826109707, 31.174093530875098, 1111.7312852697778]\n", "0\n", "None\n", "[-319.44280826109707, 31.174093530875098, 1111.7312852697778]\n", "((-3, -1, -1, 2), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "((1, 0, -1, 0), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "[-355.13962033395933, 31.174093530875098, 1111.7312852697778]\n", "1\n", "None\n", "[-355.13962033395933, 31.174093530875098, 1111.7312852697778]\n", "((1, 0, -1, 0), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "((1, 0, -1, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "[-355.13962033395933, 142.90537880065267, 1111.7312852697778]\n", "0\n", "None\n", "[-355.13962033395933, 142.90537880065267, 1111.7312852697778]\n", "((1, 0, -1, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "((-3, -1, -1, 2), (3, -1, -1, 0), (1, -1, -1, 1))\n", "[-319.44280826109707, 142.90537880065267, 1111.7312852697778]\n", "0\n", "-400.0\n", "[-319.44280826109707, 142.90537880065267, 1111.7312852697778]\n", "((-3, -1, -1, 2), (3, -1, -1, 0), (1, -1, -1, 1))\n", "((1, 0, -1, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "[44.86037966604067, 542.9053788006527, 1511.7312852697778]\n", "1\n", "None\n", "[44.86037966604067, 542.9053788006527, 1511.7312852697778]\n", "((1, 0, -1, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "((1, 0, -1, 0), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "[44.86037966604067, 431.1740935308751, 1511.7312852697778]\n", "1\n", "None\n", "[44.86037966604067, 431.1740935308751, 1511.7312852697778]\n", "((1, 0, -1, 0), (-1, 0, 0, 0), (1, -1, -1, 1))\n", "((1, 0, -1, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "[44.86037966604067, 542.9053788006527, 1511.7312852697778]\n", "0\n", "-100.0\n", "[44.86037966604067, 542.9053788006527, 1511.7312852697778]\n", "((1, 0, -1, 0), (3, -1, -1, 0), (1, -1, -1, 1))\n", "((2, -1, -2, 1), (3, -1, -1, 0), (1, -1, -1, 1))\n", "[25.41757140494292, 642.9053788006527, 1611.7312852697778]\n", "1\n", "600.0\n", "[25.41757140494292, 642.9053788006527, 1611.7312852697778]\n", "((2, -1, -2, 1), (3, -1, -1, 0), (1, -1, -1, 1))\n", "((2, -1, -2, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "[-574.5824285950571, -76.5374294604444, 1011.7312852697778]\n", "0\n", "None\n", "[-574.5824285950571, -76.5374294604444, 1011.7312852697778]\n", "((2, -1, -2, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "((-2, 0, -1, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "[-686.3137138648347, -76.5374294604444, 1011.7312852697778]\n", "0\n", "None\n", "[-686.3137138648347, -76.5374294604444, 1011.7312852697778]\n", "((-2, 0, -1, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "((2, -1, -2, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "[-574.5824285950571, -76.5374294604444, 1011.7312852697778]\n", "0\n", "-500.0\n", "[-574.5824285950571, -76.5374294604444, 1011.7312852697778]\n", "((2, -1, -2, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "((6, -2, -3, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "[37.14885667472072, 423.4625705395556, 1511.7312852697778]\n", "1\n", "700.0\n", "[37.14885667472072, 423.4625705395556, 1511.7312852697778]\n", "((6, -2, -3, 1), (4, -2, -2, 1), (1, -1, -1, 1))\n", "((6, -2, -3, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[-662.8511433252793, -1.9550008653875466, 811.7312852697778]\n", "0\n", "-500.0\n", "[-662.8511433252793, -1.9550008653875466, 811.7312852697778]\n", "((6, -2, -3, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "2\n", "None\n", "[2.2737367544323206e-13, 498.04499913461245, 1311.7312852697778]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (1, -1, -1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "[2.2737367544323206e-13, 498.04499913461245, 1431.174093530875]\n", "2\n", "None\n", "[2.2737367544323206e-13, 498.04499913461245, 1431.174093530875]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, -1, 0, 2))\n", "[2.2737367544323206e-13, 498.04499913461245, 1466.8709056037374]\n", "2\n", "None\n", "[2.2737367544323206e-13, 498.04499913461245, 1466.8709056037374]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, -1, 0, 2))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "[2.2737367544323206e-13, 498.04499913461245, 1431.174093530875]\n", "2\n", "1000.0\n", "[2.2737367544323206e-13, 498.04499913461245, 1431.174093530875]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, 0, 0, 0))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, -2, 0, 1))\n", "[-999.9999999999998, -501.95500086538755, -3.910001730775093]\n", "2\n", "-100.0\n", "[-999.9999999999998, -501.95500086538755, -3.910001730775093]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, -2, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, -1, 1, 1))\n", "[-899.9999999999998, -401.95500086538755, -15.641287000552666]\n", "2\n", "100.0\n", "[-899.9999999999998, -401.95500086538755, -15.641287000552666]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-4, -1, 1, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, -2, 0, 1))\n", "[-999.9999999999998, -501.95500086538755, -3.910001730775093]\n", "2\n", "200.0\n", "[-999.9999999999998, -501.95500086538755, -3.910001730775093]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, -2, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "1\n", "None\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "[-1199.9999999999998, -813.6862861351653, 0.0]\n", "1\n", "None\n", "[-1199.9999999999998, -813.6862861351653, 0.0]\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "1\n", "None\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "[-1199.9999999999998, -813.6862861351653, 0.0]\n", "1\n", "None\n", "[-1199.9999999999998, -813.6862861351653, 0.0]\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "2\n", "-100.0\n", "[-1199.9999999999998, -701.9550008653875, 0.0]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (-3, 0, 0, 1))\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, -2, 0, 1))\n", "[-1099.9999999999998, -601.9550008653875, -103.9100017307751]\n", "1\n", "-700.0\n", "[-1099.9999999999998, -601.9550008653875, -103.9100017307751]\n", "((-4, 0, 0, 1), (-2, -1, 0, 1), (0, -2, 0, 1))\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (0, -2, 0, 1))\n", "[-399.9999999999998, -13.686286135165346, 596.0899982692249]\n", "2\n", "900.0\n", "[-399.9999999999998, -13.686286135165346, 596.0899982692249]\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (0, -2, 0, 1))\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "[-1299.9999999999998, -913.6862861351653, -100.0]\n", "2\n", "100.0\n", "[-1299.9999999999998, -913.6862861351653, -100.0]\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (-3, 0, 0, 1))\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (0, 0, 0, 0))\n", "[-1399.9999999999998, -1013.6862861351653, 31.174093530875098]\n", "0\n", "None\n", "[-1399.9999999999998, -1013.6862861351653, 31.174093530875098]\n", "((-4, 0, 0, 1), (-6, 0, 1, 1), (0, 0, 0, 0))\n", "((-8, 1, 1, 1), (-6, 0, 1, 1), (0, 0, 0, 0))\n", "[-1511.7312852697776, -1013.6862861351653, 31.174093530875098]\n", "1\n", "-800.0\n", "[-1511.7312852697776, -1013.6862861351653, 31.174093530875098]\n", "((-8, 1, 1, 1), (-6, 0, 1, 1), (0, 0, 0, 0))\n", "((-8, 1, 1, 1), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "[-711.7312852697776, 17.487807395709865, 831.1740935308751]\n", "0\n", "None\n", "[-711.7312852697776, 17.487807395709865, 831.1740935308751]\n", "((-8, 1, 1, 1), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "((-2, -1, 1, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "[-684.4671934696776, 17.487807395709865, 831.1740935308751]\n", "1\n", "100.0\n", "[-684.4671934696776, 17.487807395709865, 831.1740935308751]\n", "((-2, -1, 1, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "[-784.4671934696776, 29.21909266548755, 731.1740935308751]\n", "0\n", "None\n", "[-784.4671934696776, 29.21909266548755, 731.1740935308751]\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "((1, 0, -1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "[-855.1396203339593, 29.21909266548755, 731.1740935308751]\n", "0\n", "-800.0\n", "[-855.1396203339593, 29.21909266548755, 731.1740935308751]\n", "((1, 0, -1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "[15.532806530322432, 829.2190926654876, 1531.174093530875]\n", "2\n", "None\n", "[15.532806530322432, 829.2190926654876, 1531.174093530875]\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (2, -1, 1, -1))\n", "[15.532806530322432, 829.2190926654876, 1446.7069000611973]\n", "2\n", "None\n", "[15.532806530322432, 829.2190926654876, 1446.7069000611973]\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (2, -1, 1, -1))\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "[15.532806530322432, 829.2190926654876, 1531.174093530875]\n", "0\n", "200.0\n", "[15.532806530322432, 829.2190926654876, 1531.174093530875]\n", "((-2, -1, 1, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "((2, -2, 0, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "[-72.73590819989954, 629.2190926654876, 1331.174093530875]\n", "0\n", "100.0\n", "[-72.73590819989954, 629.2190926654876, 1331.174093530875]\n", "((2, -2, 0, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "((-1, 0, 0, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "[31.174093530875325, 529.2190926654876, 1231.174093530875]\n", "1\n", "300.0\n", "[31.174093530875325, 529.2190926654876, 1231.174093530875]\n", "((-1, 0, 0, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "((-1, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "[-268.8259064691247, 117.48780739570986, 931.1740935308751]\n", "1\n", "400.0\n", "[-268.8259064691247, 117.48780739570986, 931.1740935308751]\n", "((-1, 0, 0, 0), (-3, 0, 1, 0), (0, 0, 0, 0))\n", "((-1, 0, 0, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "[-668.8259064691247, -170.78090733451245, 531.1740935308751]\n", "1\n", "200.0\n", "[-668.8259064691247, -170.78090733451245, 531.1740935308751]\n", "((-1, 0, 0, 0), (1, -1, 0, 0), (0, 0, 0, 0))\n", "((-1, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "[-868.8259064691247, -166.87090560373747, 331.1740935308751]\n", "1\n", "-100.0\n", "[-868.8259064691247, -166.87090560373747, 331.1740935308751]\n", "((-1, 0, 0, 0), (-2, 1, 0, 0), (0, 0, 0, 0))\n", "((-1, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0))\n", "[-768.8259064691247, 44.86037966604033, 431.1740935308751]\n", "2\n", "600.0\n", "[-768.8259064691247, 44.86037966604033, 431.1740935308751]\n", "((-1, 0, 0, 0), (2, 0, -1, 0), (0, 0, 0, 0))\n", "((-1, 0, 0, 0), (2, 0, -1, 0), (4, -1, -1, 0))\n", "[-1368.8259064691247, -555.1396203339597, -57.0946211993471]\n", "0\n", "-1600.0\n", "[-1368.8259064691247, -555.1396203339597, -57.0946211993471]\n", "((-1, 0, 0, 0), (2, 0, -1, 0), (4, -1, -1, 0))\n", "((4, 0, -1, -1), (2, 0, -1, 0), (4, -1, -1, 0))\n", "[76.03447319691554, 1044.8603796660404, 1542.905378800653]\n", "2\n", "1800.0\n", "[76.03447319691554, 1044.8603796660404, 1542.905378800653]\n", "((4, 0, -1, -1), (2, 0, -1, 0), (4, -1, -1, 0))\n", "((4, 0, -1, -1), (2, 0, -1, 0), (7, -1, -1, -1))\n", "[-1723.9655268030845, -755.1396203339596, -25.920527668472232]\n", "0\n", "-1400.0\n", "[-1723.9655268030845, -755.1396203339596, -25.920527668472232]\n", "((4, 0, -1, -1), (2, 0, -1, 0), (7, -1, -1, -1))\n", "((-1, 0, 0, 0), (2, 0, -1, 0), (7, -1, -1, -1))\n", "[-168.82590646912467, 644.8603796660404, 1374.0794723315278]\n", "0\n", "200.0\n", "[-168.82590646912467, 644.8603796660404, 1374.0794723315278]\n", "((-1, 0, 0, 0), (2, 0, -1, 0), (7, -1, -1, -1))\n", "((3, -1, -1, 0), (2, 0, -1, 0), (7, -1, -1, -1))\n", "[-257.0946211993471, 444.86037966604044, 1174.0794723315278]\n", "1\n", "500.0\n", "[-257.0946211993471, 444.86037966604044, 1174.0794723315278]\n", "((3, -1, -1, 0), (2, 0, -1, 0), (7, -1, -1, -1))\n", "((3, -1, -1, 0), (8, -2, -1, -1), (7, -1, -1, -1))\n", "[-757.0946211993471, -27.87552853385938, 674.0794723315278]\n", "0\n", "-600.0\n", "[-757.0946211993471, -27.87552853385938, 674.0794723315278]\n", "((3, -1, -1, 0), (8, -2, -1, -1), (7, -1, -1, -1))\n", "((9, -3, -1, -1), (8, -2, -1, -1), (7, -1, -1, -1))\n", "[-129.83052939924664, 572.1244714661407, 1274.0794723315278]\n", "1\n", "500.0\n", "[-129.83052939924664, 572.1244714661407, 1274.0794723315278]\n", "((9, -3, -1, -1), (8, -2, -1, -1), (7, -1, -1, -1))\n", "((9, -3, -1, -1), (4, -1, 0, -1), (7, -1, -1, -1))\n", "[-629.8305293992466, -39.60681380363718, 774.0794723315278]\n", "2\n", "700.0\n", "[-629.8305293992466, -39.60681380363718, 774.0794723315278]\n", "((9, -3, -1, -1), (4, -1, 0, -1), (7, -1, -1, -1))\n", "((9, -3, -1, -1), (4, -1, 0, -1), (3, 0, 0, -1))\n", "[-1329.8305293992466, -739.6068138036371, -37.65181293824992]\n", "1\n", "-1000.0\n", "[-1329.8305293992466, -739.6068138036371, -37.65181293824992]\n", "((9, -3, -1, -1), (4, -1, 0, -1), (3, 0, 0, -1))\n", "((9, -3, -1, -1), (5, 0, 0, -2), (3, 0, 0, -1))\n", "[-329.83052939924664, -6.477719407374707, 962.3481870617501]\n", "0\n", "-100.0\n", "[-329.83052939924664, -6.477719407374707, 962.3481870617501]\n", "((9, -3, -1, -1), (5, 0, 0, -2), (3, 0, 0, -1))\n", "((2, 0, 0, -1), (5, 0, 0, -2), (3, 0, 0, -1))\n", "[-137.6518129382498, 93.5222805926253, 1062.3481870617502]\n", "0\n", "-100.0\n", "[-137.6518129382498, 93.5222805926253, 1062.3481870617502]\n", "((2, 0, 0, -1), (5, 0, 0, -2), (3, 0, 0, -1))\n", "((7, 0, -1, -2), (5, 0, 0, -2), (3, 0, 0, -1))\n", "[-192.7914332722096, 193.5222805926253, 1162.3481870617502]\n", "1\n", "None\n", "[-192.7914332722096, 193.5222805926253, 1162.3481870617502]\n", "((7, 0, -1, -2), (5, 0, 0, -2), (3, 0, 0, -1))\n", "((7, 0, -1, -2), (9, -1, -1, -2), (3, 0, 0, -1))\n", "[-192.7914332722096, 305.2535658624031, 1162.3481870617502]\n", "1\n", "None\n", "[-192.7914332722096, 305.2535658624031, 1162.3481870617502]\n", "((7, 0, -1, -2), (9, -1, -1, -2), (3, 0, 0, -1))\n", "((7, 0, -1, -2), (0, 0, 1, -1), (3, 0, 0, -1))\n", "[-192.7914332722096, 348.66190092658496, 1162.3481870617502]\n", "1\n", "0.0\n", "[-192.7914332722096, 348.66190092658496, 1162.3481870617502]\n", "((7, 0, -1, -2), (0, 0, 1, -1), (3, 0, 0, -1))\n", "((7, 0, -1, -2), (10, 0, -1, -3), (3, 0, 0, -1))\n", "[-192.7914332722096, 38.38266025866574, 1162.3481870617502]\n", "0\n", "-300.0\n", "[-192.7914332722096, 38.38266025866574, 1162.3481870617502]\n", "((7, 0, -1, -2), (10, 0, -1, -3), (3, 0, 0, -1))\n", "((-1, 0, 0, 0), (10, 0, -1, -3), (3, 0, 0, -1))\n", "[31.174093530875325, 338.38266025866574, 1462.3481870617502]\n", "0\n", "None\n", "[31.174093530875325, 338.38266025866574, 1462.3481870617502]\n", "((-1, 0, 0, 0), (10, 0, -1, -3), (3, 0, 0, -1))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (3, 0, 0, -1))\n", "[-47.931053606169144, 338.38266025866574, 1462.3481870617502]\n", "0\n", "None\n", "[-47.931053606169144, 338.38266025866574, 1462.3481870617502]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (3, 0, 0, -1))\n", "((-1, 0, 0, 0), (10, 0, -1, -3), (3, 0, 0, -1))\n", "[31.174093530875325, 338.38266025866574, 1462.3481870617502]\n", "2\n", "None\n", "[31.174093530875325, 338.38266025866574, 1462.3481870617502]\n", "((-1, 0, 0, 0), (10, 0, -1, -3), (3, 0, 0, -1))\n", "((-1, 0, 0, 0), (10, 0, -1, -3), (8, 0, -1, -2))\n", "[31.174093530875325, 338.38266025866574, 1307.2085667277904]\n", "0\n", "None\n", "[31.174093530875325, 338.38266025866574, 1307.2085667277904]\n", "((-1, 0, 0, 0), (10, 0, -1, -3), (8, 0, -1, -2))\n", "((7, 0, -1, -2), (10, 0, -1, -3), (8, 0, -1, -2))\n", "[107.20856672779041, 338.38266025866574, 1307.2085667277904]\n", "2\n", "None\n", "[107.20856672779041, 338.38266025866574, 1307.2085667277904]\n", "((7, 0, -1, -2), (10, 0, -1, -3), (8, 0, -1, -2))\n", "((7, 0, -1, -2), (10, 0, -1, -3), (13, 0, -2, -3))\n", "[107.20856672779041, 338.38266025866574, 1152.068946393831]\n", "0\n", "-200.0\n", "[107.20856672779041, 338.38266025866574, 1152.068946393831]\n", "((7, 0, -1, -2), (10, 0, -1, -3), (13, 0, -2, -3))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "[152.06894639383086, 538.3826602586657, 1352.068946393831]\n", "2\n", "1800.0\n", "[152.06894639383086, 538.3826602586657, 1352.068946393831]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (11, 0, -1, -3))\n", "[-1647.9310536061691, -1261.6173397413343, -61.61733974133426]\n", "2\n", "-100.0\n", "[-1647.9310536061691, -1261.6173397413343, -61.61733974133426]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (11, 0, -1, -3))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (16, 0, -2, -4))\n", "[-1547.9310536061691, -1161.6173397413343, -116.75696007529402]\n", "2\n", "-300.0\n", "[-1547.9310536061691, -1161.6173397413343, -116.75696007529402]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (16, 0, -2, -4))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (8, 0, -1, -2))\n", "[-1247.9310536061691, -861.6173397413343, 107.2085667277905]\n", "2\n", "None\n", "[-1247.9310536061691, -861.6173397413343, 107.2085667277905]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (8, 0, -1, -2))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (16, 0, -2, -4))\n", "[-1247.9310536061691, -861.6173397413343, 183.24303992470598]\n", "2\n", "None\n", "[-1247.9310536061691, -861.6173397413343, 183.24303992470598]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (16, 0, -2, -4))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (8, 0, -1, -2))\n", "[-1247.9310536061691, -861.6173397413343, 107.2085667277905]\n", "2\n", "None\n", "[-1247.9310536061691, -861.6173397413343, 107.2085667277905]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (8, 0, -1, -2))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (16, 0, -2, -4))\n", "[-1247.9310536061691, -861.6173397413343, 183.24303992470598]\n", "2\n", "-200.0\n", "[-1247.9310536061691, -861.6173397413343, 183.24303992470598]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (16, 0, -2, -4))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "[-1047.9310536061691, -661.6173397413343, 152.06894639383106]\n", "0\n", "None\n", "[-1047.9310536061691, -661.6173397413343, 152.06894639383106]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "((8, 1, -1, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "[-1159.6623388759467, -661.6173397413343, 152.06894639383106]\n", "1\n", "None\n", "[-1159.6623388759467, -661.6173397413343, 152.06894639383106]\n", "((8, 1, -1, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "((8, 1, -1, -3), (14, -1, -2, -3), (13, 0, -2, -3))\n", "[-1159.6623388759467, -549.8860544715565, 152.06894639383106]\n", "0\n", "None\n", "[-1159.6623388759467, -549.8860544715565, 152.06894639383106]\n", "((8, 1, -1, -3), (14, -1, -2, -3), (13, 0, -2, -3))\n", "((12, 0, -2, -3), (14, -1, -2, -3), (13, 0, -2, -3))\n", "[-1047.9310536061691, -549.8860544715565, 152.06894639383106]\n", "2\n", "None\n", "[-1047.9310536061691, -549.8860544715565, 152.06894639383106]\n", "((12, 0, -2, -3), (14, -1, -2, -3), (13, 0, -2, -3))\n", "((12, 0, -2, -3), (14, -1, -2, -3), (17, -1, -3, -3))\n", "[-1047.9310536061691, -549.8860544715565, 263.80023166360866]\n", "1\n", "None\n", "[-1047.9310536061691, -549.8860544715565, 263.80023166360866]\n", "((12, 0, -2, -3), (14, -1, -2, -3), (17, -1, -3, -3))\n", "((12, 0, -2, -3), (18, -2, -3, -3), (17, -1, -3, -3))\n", "[-1047.9310536061691, -438.1547692017791, 263.80023166360866]\n", "0\n", "None\n", "[-1047.9310536061691, -438.1547692017791, 263.80023166360866]\n", "((12, 0, -2, -3), (18, -2, -3, -3), (17, -1, -3, -3))\n", "((19, -3, -3, -3), (18, -2, -3, -3), (17, -1, -3, -3))\n", "[-1140.1097700671664, -438.1547692017791, 263.80023166360866]\n", "1\n", "None\n", "[-1140.1097700671664, -438.1547692017791, 263.80023166360866]\n", "((19, -3, -3, -3), (18, -2, -3, -3), (17, -1, -3, -3))\n", "((19, -3, -3, -3), (14, -1, -2, -3), (17, -1, -3, -3))\n", "[-1140.1097700671664, -549.8860544715565, 263.80023166360866]\n", "0\n", "-1000.0\n", "[-1140.1097700671664, -549.8860544715565, 263.80023166360866]\n", "((19, -3, -3, -3), (14, -1, -2, -3), (17, -1, -3, -3))\n", "((12, 0, -2, -3), (14, -1, -2, -3), (17, -1, -3, -3))\n", "[-47.931053606169144, 450.11394552844354, 1263.8002316636087]\n", "2\n", "None\n", "[-47.931053606169144, 450.11394552844354, 1263.8002316636087]\n", "((12, 0, -2, -3), (14, -1, -2, -3), (17, -1, -3, -3))\n", "((12, 0, -2, -3), (14, -1, -2, -3), (13, 0, -2, -3))\n", "[-47.931053606169144, 450.11394552844354, 1152.068946393831]\n", "1\n", "500.0\n", "[-47.931053606169144, 450.11394552844354, 1152.068946393831]\n", "((12, 0, -2, -3), (14, -1, -2, -3), (13, 0, -2, -3))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "[-547.9310536061691, -161.61733974133426, 652.0689463938311]\n", "2\n", "700.0\n", "[-547.9310536061691, -161.61733974133426, 652.0689463938311]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (13, 0, -2, -3))\n", "((12, 0, -2, -3), (10, 0, -1, -3), (9, 1, -1, -3))\n", "[-1247.9310536061691, -861.6173397413343, -159.6623388759466]\n", "0\n", "-1400.0\n", "[-1247.9310536061691, -861.6173397413343, -159.6623388759466]\n", "((12, 0, -2, -3), (10, 0, -1, -3), (9, 1, -1, -3))\n", "((8, 1, -1, -3), (10, 0, -1, -3), (9, 1, -1, -3))\n", "[40.337661124053284, 538.3826602586657, 1240.3376611240533]\n", "1\n", "500.0\n", "[40.337661124053284, 538.3826602586657, 1240.3376611240533]\n", "((8, 1, -1, -3), (10, 0, -1, -3), (9, 1, -1, -3))\n", "((8, 1, -1, -3), (6, 1, 0, -3), (9, 1, -1, -3))\n", "[-459.6623388759467, -73.34862501111206, 740.3376611240533]\n", "2\n", "700.0\n", "[-459.6623388759467, -73.34862501111206, 740.3376611240533]\n", "((8, 1, -1, -3), (6, 1, 0, -3), (9, 1, -1, -3))\n", "((8, 1, -1, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "[-1159.6623388759467, -773.3486250111121, -71.39362414572463]\n", "1\n", "None\n", "[-1159.6623388759467, -773.3486250111121, -71.39362414572463]\n", "((8, 1, -1, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "((8, 1, -1, -3), (10, 0, -1, -3), (5, 2, 0, -3))\n", "[-1159.6623388759467, -661.6173397413343, -71.39362414572463]\n", "1\n", "None\n", "[-1159.6623388759467, -661.6173397413343, -71.39362414572463]\n", "((8, 1, -1, -3), (10, 0, -1, -3), (5, 2, 0, -3))\n", "((8, 1, -1, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "[-1159.6623388759467, -773.3486250111121, -71.39362414572463]\n", "1\n", "None\n", "[-1159.6623388759467, -773.3486250111121, -71.39362414572463]\n", "((8, 1, -1, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "((8, 1, -1, -3), (10, 0, -1, -3), (5, 2, 0, -3))\n", "[-1159.6623388759467, -661.6173397413343, -71.39362414572463]\n", "1\n", "-1000.0\n", "[-1159.6623388759467, -661.6173397413343, -71.39362414572463]\n", "((8, 1, -1, -3), (10, 0, -1, -3), (5, 2, 0, -3))\n", "((8, 1, -1, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "[-159.66233887594672, 226.65137498888794, 928.6063758542754]\n", "1\n", "100.0\n", "[-159.66233887594672, 226.65137498888794, 928.6063758542754]\n", "((8, 1, -1, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "((8, 1, -1, -3), (2, 2, 1, -3), (5, 2, 0, -3))\n", "[-259.6623388759467, 14.920089719110138, 828.6063758542754]\n", "0\n", "None\n", "[-259.6623388759467, 14.920089719110138, 828.6063758542754]\n", "((8, 1, -1, -3), (2, 2, 1, -3), (5, 2, 0, -3))\n", "((-1, 2, 1, -2), (2, 2, 1, -3), (5, 2, 0, -3))\n", "[-216.25400381176496, 14.920089719110138, 828.6063758542754]\n", "0\n", "None\n", "[-216.25400381176496, 14.920089719110138, 828.6063758542754]\n", "((-1, 2, 1, -2), (2, 2, 1, -3), (5, 2, 0, -3))\n", "((7, 2, 0, -4), (2, 2, 1, -3), (5, 2, 0, -3))\n", "[-140.21953061484942, 14.920089719110138, 828.6063758542754]\n", "0\n", "None\n", "[-140.21953061484942, 14.920089719110138, 828.6063758542754]\n", "((7, 2, 0, -4), (2, 2, 1, -3), (5, 2, 0, -3))\n", "((-1, 2, 1, -2), (2, 2, 1, -3), (5, 2, 0, -3))\n", "[-216.25400381176496, 14.920089719110138, 828.6063758542754]\n", "0\n", "-600.0\n", "[-216.25400381176496, 14.920089719110138, 828.6063758542754]\n", "((-1, 2, 1, -2), (2, 2, 1, -3), (5, 2, 0, -3))\n", "((1, 2, 0, -2), (2, 2, 1, -3), (5, 2, 0, -3))\n", "[-2.567717676599841, 614.9200897191101, 1428.6063758542755]\n", "1\n", "None\n", "[-2.567717676599841, 614.9200897191101, 1428.6063758542755]\n", "((1, 2, 0, -2), (2, 2, 1, -3), (5, 2, 0, -3))\n", "((1, 2, 0, -2), (0, 3, 0, -2), (5, 2, 0, -3))\n", "[-2.567717676599841, 699.3872831887875, 1428.6063758542755]\n", "1\n", "None\n", "[-2.567717676599841, 699.3872831887875, 1428.6063758542755]\n", "((1, 2, 0, -2), (0, 3, 0, -2), (5, 2, 0, -3))\n", "((1, 2, 0, -2), (6, 1, 0, -3), (5, 2, 0, -3))\n", "[-2.567717676599841, 726.6513749888879, 1428.6063758542755]\n", "0\n", "None\n", "[-2.567717676599841, 726.6513749888879, 1428.6063758542755]\n", "((1, 2, 0, -2), (6, 1, 0, -3), (5, 2, 0, -3))\n", "((7, 0, 0, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "[24.69637412350039, 726.6513749888879, 1428.6063758542755]\n", "2\n", "None\n", "[24.69637412350039, 726.6513749888879, 1428.6063758542755]\n", "((7, 0, 0, -3), (6, 1, 0, -3), (5, 2, 0, -3))\n", "((7, 0, 0, -3), (6, 1, 0, -3), (11, 0, 0, -4))\n", "[24.69637412350039, 726.6513749888879, 1455.8704676543757]\n", "1\n", "None\n", "[24.69637412350039, 726.6513749888879, 1455.8704676543757]\n", "((7, 0, 0, -3), (6, 1, 0, -3), (11, 0, 0, -4))\n", "((7, 0, 0, -3), (12, -1, 0, -4), (11, 0, 0, -4))\n", "[24.69637412350039, 753.9154667889879, 1455.8704676543757]\n", "2\n", "None\n", "[24.69637412350039, 753.9154667889879, 1455.8704676543757]\n", "((7, 0, 0, -3), (12, -1, 0, -4), (11, 0, 0, -4))\n", "((7, 0, 0, -3), (12, -1, 0, -4), (15, -1, -1, -4))\n", "[24.69637412350039, 753.9154667889879, 1567.6017529241535]\n", "1\n", "300.0\n", "[24.69637412350039, 753.9154667889879, 1567.6017529241535]\n", "((7, 0, 0, -3), (12, -1, 0, -4), (15, -1, -1, -4))\n", "((7, 0, 0, -3), (9, -1, 0, -3), (15, -1, -1, -4))\n", "[-275.3036258764996, 222.74137325811307, 1267.6017529241535]\n", "0\n", "None\n", "[-275.3036258764996, 222.74137325811307, 1267.6017529241535]\n", "((7, 0, 0, -3), (9, -1, 0, -3), (15, -1, -1, -4))\n", "((16, -1, -2, -4), (9, -1, 0, -3), (15, -1, -1, -4))\n", "[-318.7119609406816, 222.74137325811307, 1267.6017529241535]\n", "0\n", "-200.0\n", "[-318.7119609406816, 222.74137325811307, 1267.6017529241535]\n", "((16, -1, -2, -4), (9, -1, 0, -3), (15, -1, -1, -4))\n", "((7, 0, 0, -3), (9, -1, 0, -3), (15, -1, -1, -4))\n", "[-75.30362587649961, 422.7413732581131, 1467.6017529241535]\n", "2\n", "1100.0\n", "[-75.30362587649961, 422.7413732581131, 1467.6017529241535]\n", "((7, 0, 0, -3), (9, -1, 0, -3), (15, -1, -1, -4))\n", "((7, 0, 0, -3), (9, -1, 0, -3), (8, 0, 0, -3))\n", "[-1175.3036258764996, -677.2586267418869, 24.69637412350062]\n", "1\n", "-200.0\n", "[-1175.3036258764996, -677.2586267418869, 24.69637412350062]\n", "((7, 0, 0, -3), (9, -1, 0, -3), (8, 0, 0, -3))\n", "((7, 0, 0, -3), (5, 0, 0, -2), (8, 0, 0, -3))\n", "[-975.3036258764996, -6.477719407374707, 224.69637412350062]\n", "1\n", "100.0\n", "[-975.3036258764996, -6.477719407374707, 224.69637412350062]\n", "((7, 0, 0, -3), (5, 0, 0, -2), (8, 0, 0, -3))\n", "((7, 0, 0, -3), (10, 0, -1, -3), (8, 0, 0, -3))\n", "[-1075.3036258764996, -261.61733974133426, 124.69637412350062]\n", "0\n", "None\n", "[-1075.3036258764996, -261.61733974133426, 124.69637412350062]\n", "((7, 0, 0, -3), (10, 0, -1, -3), (8, 0, 0, -3))\n", "((11, -1, -1, -3), (10, 0, -1, -3), (8, 0, 0, -3))\n", "[-963.5723406067216, -261.61733974133426, 124.69637412350062]\n", "0\n", "None\n", "[-963.5723406067216, -261.61733974133426, 124.69637412350062]\n", "((11, -1, -1, -3), (10, 0, -1, -3), (8, 0, 0, -3))\n", "((7, 0, 0, -3), (10, 0, -1, -3), (8, 0, 0, -3))\n", "[-1075.3036258764996, -261.61733974133426, 124.69637412350062]\n", "2\n", "200.0\n", "[-1075.3036258764996, -261.61733974133426, 124.69637412350062]\n", "((7, 0, 0, -3), (10, 0, -1, -3), (8, 0, 0, -3))\n", "((7, 0, 0, -3), (10, 0, -1, -3), (12, -1, -1, -3))\n", "[-1275.3036258764996, -461.61733974133426, 36.42765939327842]\n", "0\n", "None\n", "[-1275.3036258764996, -461.61733974133426, 36.42765939327842]\n", "((7, 0, 0, -3), (10, 0, -1, -3), (12, -1, -1, -3))\n", "((11, -1, -1, -3), (10, 0, -1, -3), (12, -1, -1, -3))\n", "[-1163.5723406067216, -461.61733974133426, 36.42765939327842]\n", "0\n", "-1500.0\n", "[-1163.5723406067216, -461.61733974133426, 36.42765939327842]\n", "((11, -1, -1, -3), (10, 0, -1, -3), (12, -1, -1, -3))\n", "((12, 0, -1, -4), (10, 0, -1, -3), (12, -1, -1, -3))\n", "[69.55675378954083, 1038.3826602586657, 1536.4276593932784]\n", "1\n", "None\n", "[69.55675378954083, 1038.3826602586657, 1536.4276593932784]\n", "((12, 0, -1, -4), (10, 0, -1, -3), (12, -1, -1, -3))\n", "((12, 0, -1, -4), (14, -1, -2, -3), (12, -1, -1, -3))\n", "[69.55675378954083, 1150.1139455284435, 1536.4276593932784]\n", "0\n", "700.0\n", "[69.55675378954083, 1150.1139455284435, 1536.4276593932784]\n", "((12, 0, -1, -4), (14, -1, -2, -3), (12, -1, -1, -3))\n", "((12, 0, -2, -3), (14, -1, -2, -3), (12, -1, -1, -3))\n", "[-47.931053606169144, 450.11394552844354, 836.4276593932784]\n", "0\n", "100.0\n", "[-47.931053606169144, 450.11394552844354, 836.4276593932784]\n", "((12, 0, -2, -3), (14, -1, -2, -3), (12, -1, -1, -3))\n", "((16, -1, -3, -3), (14, -1, -2, -3), (12, -1, -1, -3))\n", "[-36.19976833639157, 350.11394552844354, 736.4276593932784]\n", "1\n", "None\n", "[-36.19976833639157, 350.11394552844354, 736.4276593932784]\n", "((16, -1, -3, -3), (14, -1, -2, -3), (12, -1, -1, -3))\n", "((16, -1, -3, -3), (10, 0, -1, -3), (12, -1, -1, -3))\n", "[-36.19976833639157, 238.38266025866574, 736.4276593932784]\n", "1\n", "None\n", "[-36.19976833639157, 238.38266025866574, 736.4276593932784]\n", "((16, -1, -3, -3), (10, 0, -1, -3), (12, -1, -1, -3))\n", "((16, -1, -3, -3), (19, -1, -3, -4), (12, -1, -1, -3))\n", "[-36.19976833639157, 194.97432519448364, 736.4276593932784]\n", "0\n", "-500.0\n", "[-36.19976833639157, 194.97432519448364, 736.4276593932784]\n", "((16, -1, -3, -3), (19, -1, -3, -4), (12, -1, -1, -3))\n", "((20, -2, -3, -4), (19, -1, -3, -4), (12, -1, -1, -3))\n", "[-6.980675670903565, 694.9743251944836, 1236.4276593932784]\n", "1\n", "500.0\n", "[-6.980675670903565, 694.9743251944836, 1236.4276593932784]\n", "((20, -2, -3, -4), (19, -1, -3, -4), (12, -1, -1, -3))\n", "((20, -2, -3, -4), (13, -2, -1, -3), (12, -1, -1, -3))\n", "[-506.98067567090357, 34.472658527890644, 736.4276593932784]\n", "2\n", "None\n", "[-506.98067567090357, 34.472658527890644, 736.4276593932784]\n", "((20, -2, -3, -4), (13, -2, -1, -3), (12, -1, -1, -3))\n", "((20, -2, -3, -4), (13, -2, -1, -3), (16, -2, -2, -3))\n", "[-506.98067567090357, 34.472658527890644, 848.1589446630562]\n", "2\n", "None\n", "[-506.98067567090357, 34.472658527890644, 848.1589446630562]\n", "((20, -2, -3, -4), (13, -2, -1, -3), (16, -2, -2, -3))\n", "((20, -2, -3, -4), (13, -2, -1, -3), (24, -2, -3, -5))\n", "[-506.98067567090357, 34.472658527890644, 924.1934178599713]\n", "2\n", "None\n", "[-506.98067567090357, 34.472658527890644, 924.1934178599713]\n", "((20, -2, -3, -4), (13, -2, -1, -3), (24, -2, -3, -5))\n", "((20, -2, -3, -4), (13, -2, -1, -3), (16, -2, -2, -3))\n", "[-506.98067567090357, 34.472658527890644, 848.1589446630562]\n", "2\n", "None\n", "[-506.98067567090357, 34.472658527890644, 848.1589446630562]\n", "((20, -2, -3, -4), (13, -2, -1, -3), (16, -2, -2, -3))\n", "((20, -2, -3, -4), (13, -2, -1, -3), (24, -2, -3, -5))\n", "[-506.98067567090357, 34.472658527890644, 924.1934178599713]\n", "2\n", "400.0\n", "[-506.98067567090357, 34.472658527890644, 924.1934178599713]\n", "((20, -2, -3, -4), (13, -2, -1, -3), (24, -2, -3, -5))\n", "((20, -2, -3, -4), (13, -2, -1, -3), (11, -2, 0, -3))\n", "[-906.9806756709036, -365.52734147210936, 20.786372392725866]\n", "1\n", "None\n", "[-906.9806756709036, -365.52734147210936, 20.786372392725866]\n", "((20, -2, -3, -4), (13, -2, -1, -3), (11, -2, 0, -3))\n", "((20, -2, -3, -4), (22, -3, -3, -4), (11, -2, 0, -3))\n", "[-906.9806756709036, -408.93567653629134, 20.786372392725866]\n", "2\n", "700.0\n", "[-906.9806756709036, -408.93567653629134, 20.786372392725866]\n", "((20, -2, -3, -4), (22, -3, -3, -4), (11, -2, 0, -3))\n", "((20, -2, -3, -4), (22, -3, -3, -4), (19, -2, -2, -4))\n", "[-1606.9806756709036, -1108.9356765362913, -20.666961806068684]\n", "2\n", "100.0\n", "[-1606.9806756709036, -1108.9356765362913, -20.666961806068684]\n", "((20, -2, -3, -4), (22, -3, -3, -4), (19, -2, -2, -4))\n", "((20, -2, -3, -4), (22, -3, -3, -4), (23, -3, -3, -4))\n", "[-1706.9806756709036, -1208.9356765362913, -8.935676536291083]\n", "1\n", "None\n", "[-1706.9806756709036, -1208.9356765362913, -8.935676536291083]\n", "((20, -2, -3, -4), (22, -3, -3, -4), (23, -3, -3, -4))\n", "((20, -2, -3, -4), (18, -2, -2, -4), (23, -3, -3, -4))\n", "[-1706.9806756709036, -1320.6669618060687, -8.935676536291083]\n", "1\n", "None\n", "[-1706.9806756709036, -1320.6669618060687, -8.935676536291083]\n", "((20, -2, -3, -4), (18, -2, -2, -4), (23, -3, -3, -4))\n", "((20, -2, -3, -4), (22, -3, -3, -4), (23, -3, -3, -4))\n", "[-1706.9806756709036, -1208.9356765362913, -8.935676536291083]\n", "2\n", "-500.0\n", "[-1706.9806756709036, -1208.9356765362913, -8.935676536291083]\n", "((20, -2, -3, -4), (22, -3, -3, -4), (23, -3, -3, -4))\n", "((20, -2, -3, -4), (22, -3, -3, -4), (21, -2, -3, -4))\n", "[-1206.9806756709036, -708.9356765362913, -6.980675670903565]\n", "1\n", "-500.0\n", "[-1206.9806756709036, -708.9356765362913, -6.980675670903565]\n", "((20, -2, -3, -4), (22, -3, -3, -4), (21, -2, -3, -4))\n", "((20, -2, -3, -4), (19, -1, -3, -4), (21, -2, -3, -4))\n", "[-706.9806756709036, -5.02567480551636, 493.01932432909643]\n", "0\n", "None\n", "[-706.9806756709036, -5.02567480551636, 493.01932432909643]\n", "((20, -2, -3, -4), (19, -1, -3, -4), (21, -2, -3, -4))\n", "((16, -1, -2, -4), (19, -1, -3, -4), (21, -2, -3, -4))\n", "[-818.7119609406816, -5.02567480551636, 493.01932432909643]\n", "1\n", "-300.0\n", "[-818.7119609406816, -5.02567480551636, 493.01932432909643]\n", "((16, -1, -2, -4), (19, -1, -3, -4), (21, -2, -3, -4))\n", "((16, -1, -2, -4), (18, -2, -2, -4), (21, -2, -3, -4))\n", "[-518.7119609406816, -20.666961806068684, 793.0193243290964]\n", "0\n", "None\n", "[-518.7119609406816, -20.666961806068684, 793.0193243290964]\n", "((16, -1, -2, -4), (18, -2, -2, -4), (21, -2, -3, -4))\n", "((20, -2, -3, -4), (18, -2, -2, -4), (21, -2, -3, -4))\n", "[-406.98067567090357, -20.666961806068684, 793.0193243290964]\n", "2\n", "None\n", "[-406.98067567090357, -20.666961806068684, 793.0193243290964]\n", "((20, -2, -3, -4), (18, -2, -2, -4), (21, -2, -3, -4))\n", "((20, -2, -3, -4), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-406.98067567090357, -20.666961806068684, 681.2880390593186]\n", "0\n", "-200.0\n", "[-406.98067567090357, -20.666961806068684, 681.2880390593186]\n", "((20, -2, -3, -4), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-87.5378674098065, 179.33303819393132, 881.2880390593186]\n", "2\n", "None\n", "[-87.5378674098065, 179.33303819393132, 881.2880390593186]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (21, -2, -3, -4))\n", "[-87.5378674098065, 179.33303819393132, 993.0193243290964]\n", "2\n", "None\n", "[-87.5378674098065, 179.33303819393132, 993.0193243290964]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (21, -2, -3, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-87.5378674098065, 179.33303819393132, 881.2880390593186]\n", "2\n", "1200.0\n", "[-87.5378674098065, 179.33303819393132, 881.2880390593186]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (21, -2, -3, -4))\n", "[-1287.5378674098065, -1020.6669618060687, -206.98067567090357]\n", "2\n", "None\n", "[-1287.5378674098065, -1020.6669618060687, -206.98067567090357]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (21, -2, -3, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-1287.5378674098065, -1020.6669618060687, -318.71196094068137]\n", "2\n", "None\n", "[-1287.5378674098065, -1020.6669618060687, -318.71196094068137]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (21, -2, -3, -4))\n", "[-1287.5378674098065, -1020.6669618060687, -206.98067567090357]\n", "2\n", "-300.0\n", "[-1287.5378674098065, -1020.6669618060687, -206.98067567090357]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (21, -2, -3, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-987.5378674098065, -720.6669618060687, -18.711960940681365]\n", "0\n", "None\n", "[-987.5378674098065, -720.6669618060687, -18.711960940681365]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((15, -2, -2, -3), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-951.841055336944, -720.6669618060687, -18.711960940681365]\n", "1\n", "None\n", "[-951.841055336944, -720.6669618060687, -18.711960940681365]\n", "((15, -2, -2, -3), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((15, -2, -2, -3), (14, -1, -1, -4), (17, -1, -2, -4))\n", "[-951.841055336944, -832.3982470758467, -18.711960940681365]\n", "1\n", "None\n", "[-951.841055336944, -832.3982470758467, -18.711960940681365]\n", "((15, -2, -2, -3), (14, -1, -1, -4), (17, -1, -2, -4))\n", "((15, -2, -2, -3), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-951.841055336944, -720.6669618060687, -18.711960940681365]\n", "0\n", "None\n", "[-951.841055336944, -720.6669618060687, -18.711960940681365]\n", "((15, -2, -2, -3), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "[-987.5378674098065, -720.6669618060687, -18.711960940681365]\n", "1\n", "None\n", "[-987.5378674098065, -720.6669618060687, -18.711960940681365]\n", "((19, -1, -2, -5), (18, -2, -2, -4), (17, -1, -2, -4))\n", "((19, -1, -2, -5), (22, -1, -2, -6), (17, -1, -2, -4))\n", "[-987.5378674098065, -756.3637738789316, -18.711960940681365]\n", "0\n", "None\n", "[-987.5378674098065, -756.3637738789316, -18.711960940681365]\n", "((19, -1, -2, -5), (22, -1, -2, -6), (17, -1, -2, -4))\n", "((24, -1, -3, -6), (22, -1, -2, -6), (17, -1, -2, -4))\n", "[-1142.677487743766, -756.3637738789316, -18.711960940681365]\n", "0\n", "-1200.0\n", "[-1142.677487743766, -756.3637738789316, -18.711960940681365]\n", "((24, -1, -3, -6), (22, -1, -2, -6), (17, -1, -2, -4))\n", "((20, 0, -2, -6), (22, -1, -2, -6), (17, -1, -2, -4))\n", "[-54.40877301354362, 443.6362261210684, 1181.2880390593186]\n", "1\n", "800.0\n", "[-54.40877301354362, 443.6362261210684, 1181.2880390593186]\n", "((20, 0, -2, -6), (22, -1, -2, -6), (17, -1, -2, -4))\n", "((20, 0, -2, -6), (19, -1, -3, -4), (17, -1, -2, -4))\n", "[-854.4087730135436, -5.02567480551636, 381.28803905931863]\n", "1\n", "100.0\n", "[-854.4087730135436, -5.02567480551636, 381.28803905931863]\n", "((20, 0, -2, -6), (19, -1, -3, -4), (17, -1, -2, -4))\n", "((20, 0, -2, -6), (18, 0, -2, -5), (17, -1, -2, -4))\n", "[-954.4087730135436, 14.417133455581052, 281.28803905931863]\n", "1\n", "-100.0\n", "[-954.4087730135436, 14.417133455581052, 281.28803905931863]\n", "((20, 0, -2, -6), (18, 0, -2, -5), (17, -1, -2, -4))\n", "((20, 0, -2, -6), (19, -1, -3, -4), (17, -1, -2, -4))\n", "[-854.4087730135436, -5.02567480551636, 381.28803905931863]\n", "0\n", "None\n", "[-854.4087730135436, -5.02567480551636, 381.28803905931863]\n", "((20, 0, -2, -6), (19, -1, -3, -4), (17, -1, -2, -4))\n", "((16, -1, -2, -4), (19, -1, -3, -4), (17, -1, -2, -4))\n", "[-818.7119609406816, -5.02567480551636, 381.28803905931863]\n", "0\n", "None\n", "[-818.7119609406816, -5.02567480551636, 381.28803905931863]\n", "((16, -1, -2, -4), (19, -1, -3, -4), (17, -1, -2, -4))\n", "((20, -2, -3, -4), (19, -1, -3, -4), (17, -1, -2, -4))\n", "[-706.9806756709036, -5.02567480551636, 381.28803905931863]\n", "1\n", "None\n", "[-706.9806756709036, -5.02567480551636, 381.28803905931863]\n", "((20, -2, -3, -4), (19, -1, -3, -4), (17, -1, -2, -4))\n", "((20, -2, -3, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "[-706.9806756709036, -116.75696007529405, 381.28803905931863]\n", "0\n", "None\n", "[-706.9806756709036, -116.75696007529405, 381.28803905931863]\n", "((20, -2, -3, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "((13, 1, -2, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "[-614.8019592099067, -116.75696007529405, 381.28803905931863]\n", "0\n", "-500.0\n", "[-614.8019592099067, -116.75696007529405, 381.28803905931863]\n", "((13, 1, -2, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "((17, 0, -3, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "[-3.070673940128927, 383.24303992470595, 881.2880390593186]\n", "0\n", "100.0\n", "[-3.070673940128927, 383.24303992470595, 881.2880390593186]\n", "((17, 0, -3, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "((14, -1, -1, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "[-32.39824707584671, 283.24303992470595, 781.2880390593186]\n", "1\n", "None\n", "[-32.39824707584671, 283.24303992470595, 781.2880390593186]\n", "((14, -1, -1, -4), (15, 0, -2, -4), (17, -1, -2, -4))\n", "((14, -1, -1, -4), (12, -1, 0, -4), (17, -1, -2, -4))\n", "[-32.39824707584671, 353.91546678898794, 781.2880390593186]\n", "2\n", "None\n", "[-32.39824707584671, 353.91546678898794, 781.2880390593186]\n", "((14, -1, -1, -4), (12, -1, 0, -4), (17, -1, -2, -4))\n", "((14, -1, -1, -4), (12, -1, 0, -4), (10, -1, 1, -4))\n", "[-32.39824707584671, 353.91546678898794, 740.229180653823]\n", "0\n", "-100.0\n", "[-32.39824707584671, 353.91546678898794, 740.229180653823]\n", "((14, -1, -1, -4), (12, -1, 0, -4), (10, -1, 1, -4))\n", "((7, -1, 2, -4), (12, -1, 0, -4), (10, -1, 1, -4))\n", "[26.542894518657477, 453.91546678898794, 840.229180653823]\n", "1\n", "None\n", "[26.542894518657477, 453.91546678898794, 840.229180653823]\n", "((7, -1, 2, -4), (12, -1, 0, -4), (10, -1, 1, -4))\n", "((7, -1, 2, -4), (5, -1, 3, -4), (10, -1, 1, -4))\n", "[26.542894518657477, 412.85660838349247, 840.229180653823]\n", "2\n", "None\n", "[26.542894518657477, 412.85660838349247, 840.229180653823]\n", "((7, -1, 2, -4), (5, -1, 3, -4), (10, -1, 1, -4))\n", "((7, -1, 2, -4), (5, -1, 3, -4), (3, -1, 4, -4))\n", "[26.542894518657477, 412.85660838349247, 799.1703222483275]\n", "1\n", "700.0\n", "[26.542894518657477, 412.85660838349247, 799.1703222483275]\n", "((7, -1, 2, -4), (5, -1, 3, -4), (3, -1, 4, -4))\n", "((7, -1, 2, -4), (6, 0, 2, -4), (3, -1, 4, -4))\n", "[-673.4571054813425, 28.497895384045364, 99.17032224832747]\n", "0\n", "-500.0\n", "[-673.4571054813425, 28.497895384045364, 99.17032224832747]\n", "((7, -1, 2, -4), (6, 0, 2, -4), (3, -1, 4, -4))\n", "((4, 1, 2, -4), (6, 0, 2, -4), (3, -1, 4, -4))\n", "[30.45289624943257, 528.4978953840454, 599.1703222483275]\n", "2\n", "None\n", "[30.45289624943257, 528.4978953840454, 599.1703222483275]\n", "((4, 1, 2, -4), (6, 0, 2, -4), (3, -1, 4, -4))\n", "((4, 1, 2, -4), (6, 0, 2, -4), (3, 2, 2, -4))\n", "[30.45289624943257, 528.4978953840454, 732.4078971148201]\n", "2\n", "1000.0\n", "[30.45289624943257, 528.4978953840454, 732.4078971148201]\n", "((4, 1, 2, -4), (6, 0, 2, -4), (3, 2, 2, -4))\n", "((4, 1, 2, -4), (6, 0, 2, -4), (2, 1, 2, -3))\n", "[-969.5471037505674, -471.50210461595464, -0.7211972814423007]\n", "0\n", "-1100.0\n", "[-969.5471037505674, -471.50210461595464, -0.7211972814423007]\n", "((4, 1, 2, -4), (6, 0, 2, -4), (2, 1, 2, -3))\n", "((7, -1, 2, -4), (6, 0, 2, -4), (2, 1, 2, -3))\n", "[-73.45710548134252, 628.4978953840454, 1099.2788027185577]\n", "2\n", "1200.0\n", "[-73.45710548134252, 628.4978953840454, 1099.2788027185577]\n", "((7, -1, 2, -4), (6, 0, 2, -4), (2, 1, 2, -3))\n", "((7, -1, 2, -4), (6, 0, 2, -4), (8, -1, 2, -4))\n", "[-1273.4571054813425, -571.5021046159546, -73.4571054813423]\n", "0\n", "-1300.0\n", "[-1273.4571054813425, -571.5021046159546, -73.4571054813423]\n", "((7, -1, 2, -4), (6, 0, 2, -4), (8, -1, 2, -4))\n", "((3, 0, 3, -4), (6, 0, 2, -4), (8, -1, 2, -4))\n", "[-85.18839075111987, 728.4978953840454, 1226.5428945186577]\n", "1\n", "600.0\n", "[-85.18839075111987, 728.4978953840454, 1226.5428945186577]\n", "((3, 0, 3, -4), (6, 0, 2, -4), (8, -1, 2, -4))\n", "((3, 0, 3, -4), (2, 1, 3, -4), (8, -1, 2, -4))\n", "[-685.1883907511199, 16.76661011426745, 626.5428945186577]\n", "2\n", "600.0\n", "[-685.1883907511199, 16.76661011426745, 626.5428945186577]\n", "((3, 0, 3, -4), (2, 1, 3, -4), (8, -1, 2, -4))\n", "((3, 0, 3, -4), (2, 1, 3, -4), (4, 0, 3, -4))\n", "[-1285.1883907511199, -583.2333898857325, -85.18839075111987]\n", "1\n", "None\n", "[-1285.1883907511199, -583.2333898857325, -85.18839075111987]\n", "((3, 0, 3, -4), (2, 1, 3, -4), (4, 0, 3, -4))\n", "((3, 0, 3, -4), (6, 0, 2, -4), (4, 0, 3, -4))\n", "[-1285.1883907511199, -471.50210461595464, -85.18839075111987]\n", "2\n", "None\n", "[-1285.1883907511199, -471.50210461595464, -85.18839075111987]\n", "((3, 0, 3, -4), (6, 0, 2, -4), (4, 0, 3, -4))\n", "((3, 0, 3, -4), (6, 0, 2, -4), (8, -1, 2, -4))\n", "[-1285.1883907511199, -471.50210461595464, 26.542894518657704]\n", "1\n", "None\n", "[-1285.1883907511199, -471.50210461595464, 26.542894518657704]\n", "((3, 0, 3, -4), (6, 0, 2, -4), (8, -1, 2, -4))\n", "((3, 0, 3, -4), (10, -1, 1, -4), (8, -1, 2, -4))\n", "[-1285.1883907511199, -359.77081934617706, 26.542894518657704]\n", "2\n", "None\n", "[-1285.1883907511199, -359.77081934617706, 26.542894518657704]\n", "((3, 0, 3, -4), (10, -1, 1, -4), (8, -1, 2, -4))\n", "((3, 0, 3, -4), (10, -1, 1, -4), (7, 0, 3, -5))\n", "[-1285.1883907511199, -359.77081934617706, 145.98570277975512]\n", "1\n", "-700.0\n", "[-1285.1883907511199, -359.77081934617706, 145.98570277975512]\n", "((3, 0, 3, -4), (10, -1, 1, -4), (7, 0, 3, -5))\n", "((3, 0, 3, -4), (4, 0, 4, -5), (7, 0, 3, -5))\n", "[-585.1883907511199, 32.299416644589996, 845.9857027797551]\n", "0\n", "None\n", "[-585.1883907511199, 32.299416644589996, 845.9857027797551]\n", "((3, 0, 3, -4), (4, 0, 4, -5), (7, 0, 3, -5))\n", "((5, -1, 4, -5), (4, 0, 4, -5), (7, 0, 3, -5))\n", "[-669.6555842207981, 32.299416644589996, 845.9857027797551]\n", "2\n", "900.0\n", "[-669.6555842207981, 32.299416644589996, 845.9857027797551]\n", "((5, -1, 4, -5), (4, 0, 4, -5), (7, 0, 3, -5))\n", "((5, -1, 4, -5), (4, 0, 4, -5), (4, -1, 5, -5))\n", "[-1569.6555842207981, -867.70058335541, 16.65812964403699]\n", "0\n", "None\n", "[-1569.6555842207981, -867.70058335541, 16.65812964403699]\n", "((5, -1, 4, -5), (4, 0, 4, -5), (4, -1, 5, -5))\n", "((1, 0, 5, -5), (4, 0, 4, -5), (4, -1, 5, -5))\n", "[-1681.3868694905755, -867.70058335541, 16.65812964403699]\n", "0\n", "-1600.0\n", "[-1681.3868694905755, -867.70058335541, 16.65812964403699]\n", "((1, 0, 5, -5), (4, 0, 4, -5), (4, -1, 5, -5))\n", "((5, -1, 4, -5), (4, 0, 4, -5), (4, -1, 5, -5))\n", "[30.34441577920188, 732.29941664459, 1616.658129644037]\n", "1\n", "500.0\n", "[30.34441577920188, 732.29941664459, 1616.658129644037]\n", "((5, -1, 4, -5), (4, 0, 4, -5), (4, -1, 5, -5))\n", "((5, -1, 4, -5), (7, -2, 4, -5), (4, -1, 5, -5))\n", "[-469.6555842207981, 28.389414913815017, 1116.658129644037]\n", "1\n", "100.0\n", "[-469.6555842207981, 28.389414913815017, 1116.658129644037]\n", "((5, -1, 4, -5), (7, -2, 4, -5), (4, -1, 5, -5))\n", "((5, -1, 4, -5), (6, -1, 5, -6), (4, -1, 5, -5))\n", "[-569.6555842207981, 47.832223174911974, 1016.658129644037]\n", "2\n", "None\n", "[-569.6555842207981, 47.832223174911974, 1016.658129644037]\n", "((5, -1, 4, -5), (6, -1, 5, -6), (4, -1, 5, -5))\n", "((5, -1, 4, -5), (6, -1, 5, -6), (8, -2, 4, -5))\n", "[-569.6555842207981, 47.832223174911974, 1128.389414913815]\n", "2\n", "None\n", "[-569.6555842207981, 47.832223174911974, 1128.389414913815]\n", "((5, -1, 4, -5), (6, -1, 5, -6), (8, -2, 4, -5))\n", "((5, -1, 4, -5), (6, -1, 5, -6), (4, -1, 5, -5))\n", "[-569.6555842207981, 47.832223174911974, 1016.658129644037]\n", "2\n", "900.0\n", "[-569.6555842207981, 47.832223174911974, 1016.658129644037]\n", "((5, -1, 4, -5), (6, -1, 5, -6), (4, -1, 5, -5))\n", "((5, -1, 4, -5), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-1469.6555842207981, -852.167776825088, -38.481490689922566]\n", "0\n", "-1400.0\n", "[-1469.6555842207981, -852.167776825088, -38.481490689922566]\n", "((5, -1, 4, -5), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[49.78722404029986, 547.832223174912, 1361.5185093100774]\n", "1\n", "700.0\n", "[49.78722404029986, 547.832223174912, 1361.5185093100774]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (10, -2, 4, -6), (9, -1, 4, -6))\n", "[-650.2127759597001, -40.436491555309885, 661.5185093100774]\n", "1\n", "-100.0\n", "[-650.2127759597001, -40.436491555309885, 661.5185093100774]\n", "((4, 0, 5, -6), (10, -2, 4, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-550.2127759597001, -52.167776825088026, 761.5185093100774]\n", "2\n", "None\n", "[-550.2127759597001, -52.167776825088026, 761.5185093100774]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (5, 0, 5, -6))\n", "[-550.2127759597001, -52.167776825088026, 649.7872240403]\n", "2\n", "None\n", "[-550.2127759597001, -52.167776825088026, 649.7872240403]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (5, 0, 5, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-550.2127759597001, -52.167776825088026, 761.5185093100774]\n", "2\n", "None\n", "[-550.2127759597001, -52.167776825088026, 761.5185093100774]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (5, 0, 5, -6))\n", "[-550.2127759597001, -52.167776825088026, 649.7872240403]\n", "2\n", "700.0\n", "[-550.2127759597001, -52.167776825088026, 649.7872240403]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (5, 0, 5, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-1250.2127759597001, -752.167776825088, 61.518509310077434]\n", "2\n", "-200.0\n", "[-1250.2127759597001, -752.167776825088, 61.518509310077434]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (5, 0, 5, -6))\n", "[-1050.2127759597001, -552.167776825088, 149.78722404029995]\n", "2\n", "100.0\n", "[-1050.2127759597001, -552.167776825088, 149.78722404029995]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (5, 0, 5, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-1150.2127759597001, -652.167776825088, 161.51850931007743]\n", "0\n", "None\n", "[-1150.2127759597001, -652.167776825088, 161.51850931007743]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-1038.4814906899226, -652.167776825088, 161.51850931007743]\n", "0\n", "None\n", "[-1038.4814906899226, -652.167776825088, 161.51850931007743]\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-1150.2127759597001, -652.167776825088, 161.51850931007743]\n", "0\n", "None\n", "[-1150.2127759597001, -652.167776825088, 161.51850931007743]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((5, -1, 4, -5), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-1269.6555842207981, -652.167776825088, 161.51850931007743]\n", "2\n", "200.0\n", "[-1269.6555842207981, -652.167776825088, 161.51850931007743]\n", "((5, -1, 4, -5), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((5, -1, 4, -5), (6, -1, 5, -6), (4, -1, 5, -5))\n", "[-1469.6555842207981, -852.167776825088, 116.65812964403699]\n", "0\n", "-1200.0\n", "[-1469.6555842207981, -852.167776825088, 116.65812964403699]\n", "((5, -1, 4, -5), (6, -1, 5, -6), (4, -1, 5, -5))\n", "((0, -1, 5, -4), (6, -1, 5, -6), (4, -1, 5, -5))\n", "[-114.51596388683811, 347.832223174912, 1316.658129644037]\n", "2\n", "1100.0\n", "[-114.51596388683811, 347.832223174912, 1316.658129644037]\n", "((0, -1, 5, -4), (6, -1, 5, -6), (4, -1, 5, -5))\n", "((0, -1, 5, -4), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-1214.515963886838, -752.167776825088, 61.518509310077434]\n", "0\n", "-1200.0\n", "[-1214.515963886838, -752.167776825088, 61.518509310077434]\n", "((0, -1, 5, -4), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-50.21277595970014, 447.832223174912, 1261.5185093100774]\n", "0\n", "None\n", "[-50.21277595970014, 447.832223174912, 1261.5185093100774]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[61.518509310077434, 447.832223174912, 1261.5185093100774]\n", "0\n", "None\n", "[61.518509310077434, 447.832223174912, 1261.5185093100774]\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-50.21277595970014, 447.832223174912, 1261.5185093100774]\n", "0\n", "100.0\n", "[-50.21277595970014, 447.832223174912, 1261.5185093100774]\n", "((4, 0, 5, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-38.481490689922566, 347.832223174912, 1161.5185093100774]\n", "1\n", "None\n", "[-38.481490689922566, 347.832223174912, 1161.5185093100774]\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((8, -1, 4, -6), (10, -2, 4, -6), (9, -1, 4, -6))\n", "[-38.481490689922566, 459.5635084446901, 1161.5185093100774]\n", "1\n", "None\n", "[-38.481490689922566, 459.5635084446901, 1161.5185093100774]\n", "((8, -1, 4, -6), (10, -2, 4, -6), (9, -1, 4, -6))\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[-38.481490689922566, 347.832223174912, 1161.5185093100774]\n", "0\n", "100.0\n", "[-38.481490689922566, 347.832223174912, 1161.5185093100774]\n", "((8, -1, 4, -6), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((3, -1, 5, -5), (6, -1, 5, -6), (9, -1, 4, -6))\n", "[16.65812964403699, 247.83222317491197, 1061.5185093100774]\n", "1\n", "None\n", "[16.65812964403699, 247.83222317491197, 1061.5185093100774]\n", "((3, -1, 5, -5), (6, -1, 5, -6), (9, -1, 4, -6))\n", "((3, -1, 5, -5), (10, -2, 4, -6), (9, -1, 4, -6))\n", "[16.65812964403699, 359.5635084446901, 1061.5185093100774]\n", "1\n", "400.0\n", "[16.65812964403699, 359.5635084446901, 1061.5185093100774]\n", "((3, -1, 5, -5), (10, -2, 4, -6), (9, -1, 4, -6))\n", "((3, -1, 5, -5), (1, -1, 6, -5), (9, -1, 4, -6))\n", "[-383.341870355963, 2.9718435088719843, 661.5185093100774]\n", "1\n", "100.0\n", "[-383.341870355963, 2.9718435088719843, 661.5185093100774]\n", "((3, -1, 5, -5), (1, -1, 6, -5), (9, -1, 4, -6))\n", "((3, -1, 5, -5), (5, -2, 5, -5), (9, -1, 4, -6))\n", "[-483.341870355963, 14.703128778649898, 561.5185093100774]\n", "0\n", "None\n", "[-483.341870355963, 14.703128778649898, 561.5185093100774]\n", "((3, -1, 5, -5), (5, -2, 5, -5), (9, -1, 4, -6))\n", "((11, -1, 4, -7), (5, -2, 5, -5), (9, -1, 4, -6))\n", "[-407.30739715904747, 14.703128778649898, 561.5185093100774]\n", "2\n", "None\n", "[-407.30739715904747, 14.703128778649898, 561.5185093100774]\n", "((11, -1, 4, -7), (5, -2, 5, -5), (9, -1, 4, -6))\n", "((11, -1, 4, -7), (5, -2, 5, -5), (7, -3, 5, -5))\n", "[-407.30739715904747, 14.703128778649898, 512.7481279132624]\n", "0\n", "None\n", "[-407.30739715904747, 14.703128778649898, 512.7481279132624]\n", "((11, -1, 4, -7), (5, -2, 5, -5), (7, -3, 5, -5))\n", "((7, -2, 4, -5), (5, -2, 5, -5), (7, -3, 5, -5))\n", "[-371.610585086185, 14.703128778649898, 512.7481279132624]\n", "0\n", "-900.0\n", "[-371.610585086185, 14.703128778649898, 512.7481279132624]\n", "((7, -2, 4, -5), (5, -2, 5, -5), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (5, -2, 5, -5), (7, -3, 5, -5))\n", "[443.92222144413745, 914.7031287786499, 1412.7481279132624]\n", "2\n", "None\n", "[443.92222144413745, 914.7031287786499, 1412.7481279132624]\n", "((9, -3, 5, -6), (5, -2, 5, -5), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (5, -2, 5, -5), (3, -2, 6, -5))\n", "[443.92222144413745, 914.7031287786499, 1301.0168426434848]\n", "2\n", "None\n", "[443.92222144413745, 914.7031287786499, 1301.0168426434848]\n", "((9, -3, 5, -6), (5, -2, 5, -5), (3, -2, 6, -5))\n", "((9, -3, 5, -6), (5, -2, 5, -5), (12, -3, 4, -6))\n", "[443.92222144413745, 914.7031287786499, 1257.6085075793026]\n", "2\n", "1500.0\n", "[443.92222144413745, 914.7031287786499, 1257.6085075793026]\n", "((9, -3, 5, -6), (5, -2, 5, -5), (12, -3, 4, -6))\n", "((9, -3, 5, -6), (5, -2, 5, -5), (7, -3, 5, -5))\n", "[-1056.0777785558626, -585.2968712213501, -87.25187208673765]\n", "1\n", "None\n", "[-1056.0777785558626, -585.2968712213501, -87.25187208673765]\n", "((9, -3, 5, -6), (5, -2, 5, -5), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (11, -4, 5, -6), (7, -3, 5, -5))\n", "[-1056.0777785558626, -558.0327794212498, -87.25187208673765]\n", "1\n", "None\n", "[-1056.0777785558626, -558.0327794212498, -87.25187208673765]\n", "((9, -3, 5, -6), (11, -4, 5, -6), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (5, -2, 5, -5), (7, -3, 5, -5))\n", "[-1056.0777785558626, -585.2968712213501, -87.25187208673765]\n", "1\n", "-1000.0\n", "[-1056.0777785558626, -585.2968712213501, -87.25187208673765]\n", "((9, -3, 5, -6), (5, -2, 5, -5), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (7, -3, 6, -6), (7, -3, 5, -5))\n", "[-56.07777855586255, 330.23593530897244, 912.7481279132624]\n", "2\n", "1100.0\n", "[-56.07777855586255, 330.23593530897244, 912.7481279132624]\n", "((9, -3, 5, -6), (7, -3, 6, -6), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (7, -3, 6, -6), (6, -2, 6, -6))\n", "[-1156.0777785558626, -769.7640646910276, -67.80906382564012]\n", "1\n", "None\n", "[-1156.0777785558626, -769.7640646910276, -67.80906382564012]\n", "((9, -3, 5, -6), (7, -3, 6, -6), (6, -2, 6, -6))\n", "((9, -3, 5, -6), (3, -2, 7, -6), (6, -2, 6, -6))\n", "[-1156.0777785558626, -881.4953499608057, -67.80906382564012]\n", "2\n", "None\n", "[-1156.0777785558626, -881.4953499608057, -67.80906382564012]\n", "((9, -3, 5, -6), (3, -2, 7, -6), (6, -2, 6, -6))\n", "((9, -3, 5, -6), (3, -2, 7, -6), (7, -3, 5, -5))\n", "[-1156.0777785558626, -881.4953499608057, -187.2518720867377]\n", "1\n", "None\n", "[-1156.0777785558626, -881.4953499608057, -187.2518720867377]\n", "((9, -3, 5, -6), (3, -2, 7, -6), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (8, -4, 5, -5), (7, -3, 5, -5))\n", "[-1156.0777785558626, -889.2068729521249, -187.2518720867377]\n", "2\n", "None\n", "[-1156.0777785558626, -889.2068729521249, -187.2518720867377]\n", "((9, -3, 5, -6), (8, -4, 5, -5), (7, -3, 5, -5))\n", "((9, -3, 5, -6), (8, -4, 5, -5), (11, -4, 4, -5))\n", "[-1156.0777785558626, -889.2068729521249, -75.52058681695988]\n", "1\n", "None\n", "[-1156.0777785558626, -889.2068729521249, -75.52058681695988]\n", "((9, -3, 5, -6), (8, -4, 5, -5), (11, -4, 4, -5))\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -4, 4, -5))\n", "[-1156.0777785558626, -924.9036850249877, -75.52058681695988]\n", "2\n", "None\n", "[-1156.0777785558626, -924.9036850249877, -75.52058681695988]\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -4, 4, -5))\n", "((9, -3, 5, -6), (12, -3, 5, -7), (15, -3, 4, -7))\n", "[-1156.0777785558626, -924.9036850249877, -111.21739888982253]\n", "2\n", "-400.0\n", "[-1156.0777785558626, -924.9036850249877, -111.21739888982253]\n", "((9, -3, 5, -6), (12, -3, 5, -7), (15, -3, 4, -7))\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-756.0777785558626, -524.9036850249877, 177.05131584040006]\n", "1\n", "0.0\n", "[-756.0777785558626, -524.9036850249877, 177.05131584040006]\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((9, -3, 5, -6), (8, -2, 5, -6), (11, -2, 5, -7))\n", "[-756.0777785558626, -54.122777690474834, 177.05131584040006]\n", "1\n", "-200.0\n", "[-756.0777785558626, -54.122777690474834, 177.05131584040006]\n", "((9, -3, 5, -6), (8, -2, 5, -6), (11, -2, 5, -7))\n", "((9, -3, 5, -6), (13, -2, 4, -7), (11, -2, 5, -7))\n", "[-556.0777785558626, -9.262398024434901, 377.0513158404001]\n", "1\n", "-100.0\n", "[-556.0777785558626, -9.262398024434901, 377.0513158404001]\n", "((9, -3, 5, -6), (13, -2, 4, -7), (11, -2, 5, -7))\n", "((9, -3, 5, -6), (9, -1, 5, -7), (11, -2, 5, -7))\n", "[-456.07777855586255, -20.9936832942127, 477.0513158404001]\n", "0\n", "None\n", "[-456.07777855586255, -20.9936832942127, 477.0513158404001]\n", "((9, -3, 5, -6), (9, -1, 5, -7), (11, -2, 5, -7))\n", "((13, -2, 5, -8), (9, -1, 5, -7), (11, -2, 5, -7))\n", "[-491.7745906287248, -20.9936832942127, 477.0513158404001]\n", "1\n", "-200.0\n", "[-491.7745906287248, -20.9936832942127, 477.0513158404001]\n", "((13, -2, 5, -8), (9, -1, 5, -7), (11, -2, 5, -7))\n", "((13, -2, 5, -8), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-291.7745906287248, -24.90368502498768, 677.0513158404001]\n", "0\n", "None\n", "[-291.7745906287248, -24.90368502498768, 677.0513158404001]\n", "((13, -2, 5, -8), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-256.07777855586255, -24.90368502498768, 677.0513158404001]\n", "0\n", "None\n", "[-256.07777855586255, -24.90368502498768, 677.0513158404001]\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((13, -2, 5, -8), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-291.7745906287248, -24.90368502498768, 677.0513158404001]\n", "0\n", "0.0\n", "[-291.7745906287248, -24.90368502498768, 677.0513158404001]\n", "((13, -2, 5, -8), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-256.07777855586255, -24.90368502498768, 677.0513158404001]\n", "1\n", "200.0\n", "[-256.07777855586255, -24.90368502498768, 677.0513158404001]\n", "((9, -3, 5, -6), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((9, -3, 5, -6), (9, -1, 5, -7), (11, -2, 5, -7))\n", "[-456.07777855586255, -20.9936832942127, 477.0513158404001]\n", "0\n", "-400.0\n", "[-456.07777855586255, -20.9936832942127, 477.0513158404001]\n", "((9, -3, 5, -6), (9, -1, 5, -7), (11, -2, 5, -7))\n", "((11, -1, 4, -7), (9, -1, 5, -7), (11, -2, 5, -7))\n", "[-7.3073971590474684, 379.0063167057873, 877.0513158404001]\n", "2\n", "None\n", "[-7.3073971590474684, 379.0063167057873, 877.0513158404001]\n", "((11, -1, 4, -7), (9, -1, 5, -7), (11, -2, 5, -7))\n", "((11, -1, 4, -7), (9, -1, 5, -7), (9, -1, 4, -6))\n", "[-7.3073971590474684, 379.0063167057873, 961.5185093100774]\n", "0\n", "-100.0\n", "[-7.3073971590474684, 379.0063167057873, 961.5185093100774]\n", "((11, -1, 4, -7), (9, -1, 5, -7), (9, -1, 4, -6))\n", "((7, 0, 5, -7), (9, -1, 5, -7), (9, -1, 4, -6))\n", "[-19.03868242882527, 479.0063167057873, 1061.5185093100774]\n", "0\n", "-200.0\n", "[-19.03868242882527, 479.0063167057873, 1061.5185093100774]\n", "((7, 0, 5, -7), (9, -1, 5, -7), (9, -1, 4, -6))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (9, -1, 4, -6))\n", "[-22.948684159599907, 679.0063167057873, 1261.5185093100774]\n", "2\n", "None\n", "[-22.948684159599907, 679.0063167057873, 1261.5185093100774]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (9, -1, 4, -6))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (8, 0, 5, -7))\n", "[-22.948684159599907, 679.0063167057873, 1380.9613175711747]\n", "2\n", "None\n", "[-22.948684159599907, 679.0063167057873, 1380.9613175711747]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (8, 0, 5, -7))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (14, -2, 5, -8))\n", "[-22.948684159599907, 679.0063167057873, 1408.225409371275]\n", "2\n", "1700.0\n", "[-22.948684159599907, 679.0063167057873, 1408.225409371275]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (14, -2, 5, -8))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (13, -3, 5, -7))\n", "[-1722.9486841596, -1020.9936832942127, -24.90368502498768]\n", "0\n", "-1500.0\n", "[-1722.9486841596, -1020.9936832942127, -24.90368502498768]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (13, -3, 5, -7))\n", "((7, 0, 5, -7), (9, -1, 5, -7), (13, -3, 5, -7))\n", "[-19.03868242882527, 479.0063167057873, 1475.0963149750123]\n", "0\n", "-200.0\n", "[-19.03868242882527, 479.0063167057873, 1475.0963149750123]\n", "((7, 0, 5, -7), (9, -1, 5, -7), (13, -3, 5, -7))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (13, -3, 5, -7))\n", "[-22.948684159599907, 679.0063167057873, 1675.0963149750123]\n", "2\n", "1500.0\n", "[-22.948684159599907, 679.0063167057873, 1675.0963149750123]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (13, -3, 5, -7))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (12, -1, 4, -7))\n", "[-1522.9486841596, -820.9936832942127, -7.3073971590474684]\n", "2\n", "-100.0\n", "[-1522.9486841596, -820.9936832942127, -7.3073971590474684]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (12, -1, 4, -7))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (8, 0, 5, -7))\n", "[-1422.9486841596, -720.9936832942127, -19.038682428825297]\n", "2\n", "-200.0\n", "[-1422.9486841596, -720.9936832942127, -19.038682428825297]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (8, 0, 5, -7))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (11, -2, 5, -7))\n", "[-1222.9486841596, -520.9936832942127, -22.948684159599992]\n", "2\n", "200.0\n", "[-1222.9486841596, -520.9936832942127, -22.948684159599992]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (11, -2, 5, -7))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (8, 0, 5, -7))\n", "[-1422.9486841596, -720.9936832942127, -19.038682428825297]\n", "2\n", "-200.0\n", "[-1422.9486841596, -720.9936832942127, -19.038682428825297]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (8, 0, 5, -7))\n", "((10, -2, 5, -7), (9, -1, 5, -7), (11, -2, 5, -7))\n", "[-1222.9486841596, -520.9936832942127, -22.948684159599992]\n", "1\n", "-900.0\n", "[-1222.9486841596, -520.9936832942127, -22.948684159599992]\n", "((10, -2, 5, -7), (9, -1, 5, -7), (11, -2, 5, -7))\n", "((10, -2, 5, -7), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-322.9486841595999, 175.09631497501232, 877.0513158404]\n", "0\n", "None\n", "[-322.9486841595999, 175.09631497501232, 877.0513158404]\n", "((10, -2, 5, -7), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((14, -3, 4, -7), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-211.21739888982256, 175.09631497501232, 877.0513158404]\n", "0\n", "None\n", "[-211.21739888982256, 175.09631497501232, 877.0513158404]\n", "((14, -3, 4, -7), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((10, -2, 5, -7), (12, -3, 5, -7), (11, -2, 5, -7))\n", "[-322.9486841595999, 175.09631497501232, 877.0513158404]\n", "1\n", "-100.0\n", "[-322.9486841595999, 175.09631497501232, 877.0513158404]\n", "((10, -2, 5, -7), (12, -3, 5, -7), (11, -2, 5, -7))\n", "((10, -2, 5, -7), (13, -2, 5, -8), (11, -2, 5, -7))\n", "[-222.9486841595999, 8.225409371275191, 977.0513158404]\n", "0\n", "None\n", "[-222.9486841595999, 8.225409371275191, 977.0513158404]\n", "((10, -2, 5, -7), (13, -2, 5, -8), (11, -2, 5, -7))\n", "((15, -2, 4, -8), (13, -2, 5, -8), (11, -2, 5, -7))\n", "[-378.0883044935597, 8.225409371275191, 977.0513158404]\n", "1\n", "100.0\n", "[-378.0883044935597, 8.225409371275191, 977.0513158404]\n", "((15, -2, 4, -8), (13, -2, 5, -8), (11, -2, 5, -7))\n", "((15, -2, 4, -8), (17, -3, 4, -8), (11, -2, 5, -7))\n", "[-478.0883044935597, 19.956694641052763, 877.0513158404]\n", "2\n", "None\n", "[-478.0883044935597, 19.956694641052763, 877.0513158404]\n", "((15, -2, 4, -8), (17, -3, 4, -8), (11, -2, 5, -7))\n", "((15, -2, 4, -8), (17, -3, 4, -8), (20, -3, 3, -8))\n", "[-478.0883044935597, 19.956694641052763, 833.642980776218]\n", "1\n", "200.0\n", "[-478.0883044935597, 19.956694641052763, 833.642980776218]\n", "((15, -2, 4, -8), (17, -3, 4, -8), (20, -3, 3, -8))\n", "((15, -2, 4, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[-678.0883044935597, -68.31202008916944, 633.642980776218]\n", "0\n", "-700.0\n", "[-678.0883044935597, -68.31202008916944, 633.642980776218]\n", "((15, -2, 4, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[-70.26702095455698, 631.6879799108306, 1333.6429807762179]\n", "2\n", "None\n", "[-70.26702095455698, 631.6879799108306, 1333.6429807762179]\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((22, -5, 3, -8), (21, -4, 3, -8), (26, -5, 3, -9))\n", "[-70.26702095455698, 631.6879799108306, 1360.9070725763181]\n", "2\n", "1200.0\n", "[-70.26702095455698, 631.6879799108306, 1360.9070725763181]\n", "((22, -5, 3, -8), (21, -4, 3, -8), (26, -5, 3, -9))\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[-1270.267020954557, -568.3120200891694, 133.64298077621788]\n", "0\n", "None\n", "[-1270.267020954557, -568.3120200891694, 133.64298077621788]\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((16, -3, 3, -7), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[-1297.5311127546572, -568.3120200891694, 133.64298077621788]\n", "0\n", "None\n", "[-1297.5311127546572, -568.3120200891694, 133.64298077621788]\n", "((16, -3, 3, -7), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[-1270.267020954557, -568.3120200891694, 133.64298077621788]\n", "0\n", "-1300.0\n", "[-1270.267020954557, -568.3120200891694, 133.64298077621788]\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((16, -3, 3, -7), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[2.468887245342785, 731.6879799108306, 1433.6429807762179]\n", "0\n", "100.0\n", "[2.468887245342785, 731.6879799108306, 1433.6429807762179]\n", "((16, -3, 3, -7), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[-70.26702095455698, 631.6879799108306, 1333.6429807762179]\n", "2\n", "None\n", "[-70.26702095455698, 631.6879799108306, 1333.6429807762179]\n", "((22, -5, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((22, -5, 3, -8), (21, -4, 3, -8), (26, -5, 3, -9))\n", "[-70.26702095455698, 631.6879799108306, 1360.9070725763181]\n", "0\n", "200.0\n", "[-70.26702095455698, 631.6879799108306, 1360.9070725763181]\n", "((22, -5, 3, -8), (21, -4, 3, -8), (26, -5, 3, -9))\n", "((19, -3, 3, -8), (21, -4, 3, -8), (26, -5, 3, -9))\n", "[-66.35701922378189, 431.68797991083056, 1160.9070725763181]\n", "2\n", "None\n", "[-66.35701922378189, 431.68797991083056, 1160.9070725763181]\n", "((19, -3, 3, -8), (21, -4, 3, -8), (26, -5, 3, -9))\n", "((19, -3, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "[-66.35701922378189, 431.68797991083056, 1133.6429807762179]\n", "2\n", "None\n", "[-66.35701922378189, 431.68797991083056, 1133.6429807762179]\n", "((19, -3, 3, -8), (21, -4, 3, -8), (20, -3, 3, -8))\n", "((19, -3, 3, -8), (21, -4, 3, -8), (24, -4, 2, -8))\n", "[-66.35701922378189, 431.68797991083056, 1245.3742660459957]\n", "2\n", "900.0\n", "[-66.35701922378189, 431.68797991083056, 1245.3742660459957]\n", "((19, -3, 3, -8), (21, -4, 3, -8), (24, -4, 2, -8))\n", "((19, -3, 3, -8), (21, -4, 3, -8), (23, -5, 3, -8))\n", "[-966.3570192237819, -468.31202008916944, 29.732979045443017]\n", "2\n", "100.0\n", "[-966.3570192237819, -468.31202008916944, 29.732979045443017]\n", "((19, -3, 3, -8), (21, -4, 3, -8), (23, -5, 3, -8))\n", "((19, -3, 3, -8), (21, -4, 3, -8), (17, -3, 3, -7))\n", "[-1066.357019223782, -568.3120200891694, -97.53111275465722]\n", "1\n", "None\n", "[-1066.357019223782, -568.3120200891694, -97.53111275465722]\n", "((19, -3, 3, -8), (21, -4, 3, -8), (17, -3, 3, -7))\n", "((19, -3, 3, -8), (15, -2, 3, -7), (17, -3, 3, -7))\n", "[-1066.357019223782, -595.5761118892699, -97.53111275465722]\n", "2\n", "200.0\n", "[-1066.357019223782, -595.5761118892699, -97.53111275465722]\n", "((19, -3, 3, -8), (15, -2, 3, -7), (17, -3, 3, -7))\n", "((19, -3, 3, -8), (15, -2, 3, -7), (18, -2, 2, -7))\n", "[-1266.357019223782, -795.5761118892699, 18.110174245895337]\n", "1\n", "None\n", "[-1266.357019223782, -795.5761118892699, 18.110174245895337]\n", "((19, -3, 3, -8), (15, -2, 3, -7), (18, -2, 2, -7))\n", "((19, -3, 3, -8), (17, -3, 4, -8), (18, -2, 2, -7))\n", "[-1266.357019223782, -880.0433053589472, 18.110174245895337]\n", "1\n", "None\n", "[-1266.357019223782, -880.0433053589472, 18.110174245895337]\n", "((19, -3, 3, -8), (17, -3, 4, -8), (18, -2, 2, -7))\n", "((19, -3, 3, -8), (20, -2, 2, -8), (18, -2, 2, -7))\n", "[-1266.357019223782, -950.7157322232295, 18.110174245895337]\n", "1\n", "None\n", "[-1266.357019223782, -950.7157322232295, 18.110174245895337]\n", "((19, -3, 3, -8), (20, -2, 2, -8), (18, -2, 2, -7))\n", "((19, -3, 3, -8), (22, -3, 3, -9), (18, -2, 2, -7))\n", "[-1266.357019223782, -1035.1829256929068, 18.110174245895337]\n", "1\n", "-600.0\n", "[-1266.357019223782, -1035.1829256929068, 18.110174245895337]\n", "((19, -3, 3, -8), (22, -3, 3, -9), (18, -2, 2, -7))\n", "((19, -3, 3, -8), (18, -2, 3, -8), (18, -2, 2, -7))\n", "[-666.3570192237819, 35.597981641605315, 618.1101742458953]\n", "0\n", "None\n", "[-666.3570192237819, 35.597981641605315, 618.1101742458953]\n", "((19, -3, 3, -8), (18, -2, 3, -8), (18, -2, 2, -7))\n", "((15, -2, 4, -8), (18, -2, 3, -8), (18, -2, 2, -7))\n", "[-778.0883044935597, 35.597981641605315, 618.1101742458953]\n", "0\n", "None\n", "[-778.0883044935597, 35.597981641605315, 618.1101742458953]\n", "((15, -2, 4, -8), (18, -2, 3, -8), (18, -2, 2, -7))\n", "((14, -2, 2, -6), (18, -2, 3, -8), (18, -2, 2, -7))\n", "[-813.0639192849796, 35.597981641605315, 618.1101742458953]\n", "1\n", "100.0\n", "[-813.0639192849796, 35.597981641605315, 618.1101742458953]\n", "((14, -2, 2, -6), (18, -2, 3, -8), (18, -2, 2, -7))\n", "((14, -2, 2, -6), (16, -1, 2, -7), (18, -2, 2, -7))\n", "[-913.0639192849796, 20.06517511128277, 518.1101742458953]\n", "0\n", "None\n", "[-913.0639192849796, 20.06517511128277, 518.1101742458953]\n", "((14, -2, 2, -6), (16, -1, 2, -7), (18, -2, 2, -7))\n", "((18, -1, 2, -8), (16, -1, 2, -7), (18, -2, 2, -7))\n", "[-948.7607313578419, 20.06517511128277, 518.1101742458953]\n", "0\n", "-600.0\n", "[-948.7607313578419, 20.06517511128277, 518.1101742458953]\n", "((18, -1, 2, -8), (16, -1, 2, -7), (18, -2, 2, -7))\n", "((13, -1, 3, -7), (16, -1, 2, -7), (18, -2, 2, -7))\n", "[-193.62111102388235, 620.0651751112828, 1118.1101742458955]\n", "0\n", "100.0\n", "[-193.62111102388235, 620.0651751112828, 1118.1101742458955]\n", "((13, -1, 3, -7), (16, -1, 2, -7), (18, -2, 2, -7))\n", "((17, -2, 2, -7), (16, -1, 2, -7), (18, -2, 2, -7))\n", "[-181.88982575410455, 520.0651751112828, 1018.1101742458955]\n", "2\n", "None\n", "[-181.88982575410455, 520.0651751112828, 1018.1101742458955]\n", "((17, -2, 2, -7), (16, -1, 2, -7), (18, -2, 2, -7))\n", "((17, -2, 2, -7), (16, -1, 2, -7), (14, -1, 3, -7))\n", "[-181.88982575410455, 520.0651751112828, 906.3788889761177]\n", "1\n", "300.0\n", "[-181.88982575410455, 520.0651751112828, 906.3788889761177]\n", "((17, -2, 2, -7), (16, -1, 2, -7), (14, -1, 3, -7))\n", "((17, -2, 2, -7), (19, -3, 2, -7), (14, -1, 3, -7))\n", "[-481.88982575410455, 16.155173380507904, 606.3788889761177]\n", "2\n", "None\n", "[-481.88982575410455, 16.155173380507904, 606.3788889761177]\n", "((17, -2, 2, -7), (19, -3, 2, -7), (14, -1, 3, -7))\n", "((17, -2, 2, -7), (19, -3, 2, -7), (21, -4, 2, -7))\n", "[-481.88982575410455, 16.155173380507904, 514.2001725151206]\n", "2\n", "None\n", "[-481.88982575410455, 16.155173380507904, 514.2001725151206]\n", "((17, -2, 2, -7), (19, -3, 2, -7), (21, -4, 2, -7))\n", "((17, -2, 2, -7), (19, -3, 2, -7), (15, -2, 2, -6))\n", "[-481.88982575410455, 16.155173380507904, 486.9360807150204]\n", "0\n", "-400.0\n", "[-481.88982575410455, 16.155173380507904, 486.9360807150204]\n", "((17, -2, 2, -7), (19, -3, 2, -7), (15, -2, 2, -6))\n", "((21, -3, 1, -7), (19, -3, 2, -7), (15, -2, 2, -6))\n", "[29.841459515673023, 416.1551733805079, 886.9360807150204]\n", "2\n", "None\n", "[29.841459515673023, 416.1551733805079, 886.9360807150204]\n", "((21, -3, 1, -7), (19, -3, 2, -7), (15, -2, 2, -6))\n", "((21, -3, 1, -7), (19, -3, 2, -7), (21, -4, 2, -7))\n", "[29.841459515673023, 416.1551733805079, 914.2001725151206]\n", "2\n", "1200.0\n", "[29.841459515673023, 416.1551733805079, 914.2001725151206]\n", "((21, -3, 1, -7), (19, -3, 2, -7), (21, -4, 2, -7))\n", "((21, -3, 1, -7), (19, -3, 2, -7), (22, -3, 1, -7))\n", "[-1170.158540484327, -783.8448266194921, 29.841459515673023]\n", "0\n", "-1300.0\n", "[-1170.158540484327, -783.8448266194921, 29.841459515673023]\n", "((21, -3, 1, -7), (19, -3, 2, -7), (22, -3, 1, -7))\n", "((17, -2, 2, -7), (19, -3, 2, -7), (22, -3, 1, -7))\n", "[18.11017424589545, 516.1551733805079, 1329.841459515673]\n", "2\n", "1400.0\n", "[18.11017424589545, 516.1551733805079, 1329.841459515673]\n", "((17, -2, 2, -7), (19, -3, 2, -7), (22, -3, 1, -7))\n", "((17, -2, 2, -7), (19, -3, 2, -7), (21, -2, 2, -8))\n", "[-1381.8898257541045, -883.8448266194921, 49.28426777677055]\n", "1\n", "None\n", "[-1381.8898257541045, -883.8448266194921, 49.28426777677055]\n", "((17, -2, 2, -7), (19, -3, 2, -7), (21, -2, 2, -8))\n", "((17, -2, 2, -7), (23, -2, 2, -9), (21, -2, 2, -8))\n", "[-1381.8898257541045, -919.5416386923544, 49.28426777677055]\n", "2\n", "-100.0\n", "[-1381.8898257541045, -919.5416386923544, 49.28426777677055]\n", "((17, -2, 2, -7), (23, -2, 2, -9), (21, -2, 2, -8))\n", "((17, -2, 2, -7), (23, -2, 2, -9), (26, -2, 1, -9))\n", "[-1281.8898257541045, -819.5416386923544, -5.855352557189008]\n", "2\n", "-100.0\n", "[-1281.8898257541045, -819.5416386923544, -5.855352557189008]\n", "((17, -2, 2, -7), (23, -2, 2, -9), (26, -2, 1, -9))\n", "((17, -2, 2, -7), (23, -2, 2, -9), (22, -1, 2, -9))\n", "[-1181.8898257541045, -719.5416386923544, -17.586637826967177]\n", "1\n", "None\n", "[-1181.8898257541045, -719.5416386923544, -17.586637826967177]\n", "((17, -2, 2, -7), (23, -2, 2, -9), (22, -1, 2, -9))\n", "((17, -2, 2, -7), (19, -3, 2, -7), (22, -1, 2, -9))\n", "[-1181.8898257541045, -683.8448266194921, -17.586637826967177]\n", "1\n", "None\n", "[-1181.8898257541045, -683.8448266194921, -17.586637826967177]\n", "((17, -2, 2, -7), (19, -3, 2, -7), (22, -1, 2, -9))\n", "((17, -2, 2, -7), (23, -2, 2, -9), (22, -1, 2, -9))\n", "[-1181.8898257541045, -719.5416386923544, -17.586637826967177]\n", "2\n", "100.0\n", "[-1181.8898257541045, -719.5416386923544, -17.586637826967177]\n", "((17, -2, 2, -7), (23, -2, 2, -9), (22, -1, 2, -9))\n", "((17, -2, 2, -7), (23, -2, 2, -9), (26, -2, 1, -9))\n", "[-1281.8898257541045, -819.5416386923544, -5.855352557189008]\n", "1\n", "-700.0\n", "[-1281.8898257541045, -819.5416386923544, -5.855352557189008]\n", "((17, -2, 2, -7), (23, -2, 2, -9), (26, -2, 1, -9))\n", "((17, -2, 2, -7), (27, -3, 1, -9), (26, -2, 1, -9))\n", "[-581.8898257541045, -7.810353422576782, 694.144647442811]\n" ] } ], "source": [ "path = stochastic_hamiltonian(root)\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))))" ] }, { "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": 236, "id": "81f20bd9-e87a-4918-a61b-27b04b6d5aee", "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, ins): \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, ins):\n", " for cdx, c_pitch in enumerate(chord):\n", " if cdx != ins: \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", " s_pitch = chord[ins]\n", " new_pitch_up = transpose_to_nearest(s_pitch, new_pitch)\n", " new_chord_up = list(chord)\n", " new_chord_up[ins] = tuple(new_pitch_up)\n", " \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:\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[ins] = tuple(new_pitch_down)\n", "\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:\n", " yield tuple(new_chord_down)\n", "\n", " for candidate in gen_candidates(source, ins):\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 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 10 * (1/pow(hd_sum(e[1]), 3))\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, dev, last_chords):\n", " for e in edges:\n", " #if dev != None:\n", " if False:\n", " yield 1\n", " else:\n", " yield 100 if tuple(e[1][ins]) not in tuple(l[ins] for l in last_chords) 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 target_melody_weights(edges, target_dev, c_devs, ins):\n", "\n", " def target_weight(edge, target_dev, c_devs, ins):\n", " source = list(edge[0])\n", " ordered_source = sorted(source, key=hs_array_to_fr) \n", " candidate_diff = abs(c_devs[ins] + edge[2]['movements'][ordered_source[ins]]['cent_difference'] - target_dev)\n", " return 100 if candidate_diff < 40 else 1/pow(1.1, candidate_diff)\n", " \n", " for e in edges:\n", " yield target_weight(e, target_dev, c_devs, ins) if target_dev != None else 1\n", " \n", " next_node = ((-2, 0, 0, 0, 0), (-1, 0, 0, 0, 0), (-1, 1, 0, 0, 9))\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", " 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))\n", " factors = [\n", " movement_size_weights(out_edges), \n", " voice_crossing_weights(out_edges),\n", " target_melody_weights(out_edges, dev, c_devs, ins),\n", " hd_weight(out_edges),\n", " dca_weight(out_edges, ins, dev, last_chords)\n", " #permission_weight(out_edges, target_melody_data[len(path)+1][3])\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), 'movements': movements},)\n", " \n", " next_node = edge[1]\n", " last_chords = last_chords + (next_node,)\n", " if len(last_chords) > 4:\n", " last_chords = last_chords[-4:]\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", " if dev != None:\n", " c_devs = [c_devs[pdx] + edge[2]['movements'][pitch]['cent_difference'] - dev for pdx, pitch in enumerate(s_chord)]\n", " else:\n", " c_devs[ins] += edge[2]['movements'][s_chord[ins]]['cent_difference']\n", " print(s_chord)\n", " print(edge[1])\n", " print(c_devs)\n", " return path" ] }, { "cell_type": "markdown", "id": "3102630d-3e61-4653-8482-4e50e0e26858", "metadata": {}, "source": [ "### model" ] }, { "cell_type": "code", "execution_count": 237, "id": "f8ef1a93-4616-4a83-bbae-23ed13ba4f41", "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": 238, "id": "8912c650-a43d-4539-ae24-b5acf9bc543d", "metadata": { "scrolled": true }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "[-1901.9550008653873, -701.9550008653874, 0]\n", "1\n", "-500.0\n", "[-1901.9550008653873, -701.9550008653874, 0]\n", "((-2, 0, 0, 0, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-6, 1, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "[-1401.9550008653873, -148.68205763524327, 500.0]\n", "1\n", "-200.0\n", "[-1401.9550008653873, -148.68205763524327, 500.0]\n", "((-2, 0, 0, 0, 0), (-6, 1, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-1201.9550008653873, -113.68628613516523, 700.0]\n", "0\n", "-300.0\n", "[-1201.9550008653873, -113.68628613516523, 700.0]\n", "((-2, 0, 0, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-199.99999999999977, 186.31371386483477, 1000.0]\n", "2\n", "None\n", "[-199.99999999999977, 186.31371386483477, 1000.0]\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[-199.99999999999977, 186.31371386483477, 768.8259064691249]\n", "0\n", "-200.0\n", "[-199.99999999999977, 186.31371386483477, 768.8259064691249]\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[266.8709056037376, 386.31371386483477, 968.8259064691249]\n", "2\n", "None\n", "[266.8709056037376, 386.31371386483477, 968.8259064691249]\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[266.8709056037376, 386.31371386483477, 884.3587129994473]\n", "2\n", "None\n", "[266.8709056037376, 386.31371386483477, 884.3587129994473]\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "[266.8709056037376, 386.31371386483477, 818.1888479684942]\n", "2\n", "1400.0\n", "[266.8709056037376, 386.31371386483477, 818.1888479684942]\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-1133.1290943962624, -1013.6862861351652, -200.0]\n", "1\n", "None\n", "[-1133.1290943962624, -1013.6862861351652, -200.0]\n", "((-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "[-1133.1290943962624, -901.9550008653874, -200.0]\n", "1\n", "None\n", "[-1133.1290943962624, -901.9550008653874, -200.0]\n", "((-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-4, 0, 0, 1, 0), (-6, 1, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "[-1133.1290943962624, -848.6820576352433, -200.0]\n", "1\n", "-1100.0\n", "[-1133.1290943962624, -848.6820576352433, -200.0]\n", "((-4, 0, 0, 1, 0), (-6, 1, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-2, 1, 0, 0, 0))\n", "[-33.12909439626242, 353.1846194685721, 900.0]\n", "2\n", "900.0\n", "[-33.12909439626242, 353.1846194685721, 900.0]\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-2, 1, 0, 0, 0))\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0))\n", "[-933.1290943962624, -546.8153805314279, -231.1740935308751]\n", "1\n", "None\n", "[-933.1290943962624, -546.8153805314279, -231.1740935308751]\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0))\n", "((-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "[-933.1290943962624, -381.8111520315058, -231.1740935308751]\n", "0\n", "None\n", "[-933.1290943962624, -381.8111520315058, -231.1740935308751]\n", "((-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "((-3, 1, 0, 0, 0), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "[-1199.9999999999998, -381.8111520315058, -231.1740935308751]\n", "1\n", "None\n", "[-1199.9999999999998, -381.8111520315058, -231.1740935308751]\n", "((-3, 1, 0, 0, 0), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "((-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1199.9999999999998, -701.9550008653874, -231.1740935308751]\n", "1\n", "None\n", "[-1199.9999999999998, -701.9550008653874, -231.1740935308751]\n", "((-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "[-1199.9999999999998, -648.6820576352433, -231.1740935308751]\n", "0\n", "None\n", "[-1199.9999999999998, -648.6820576352433, -231.1740935308751]\n", "((-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "[-1350.6370585006307, -648.6820576352433, -231.1740935308751]\n", "1\n", "-1000.0\n", "[-1350.6370585006307, -648.6820576352433, -231.1740935308751]\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "[-350.6370585006307, 35.676655364204066, 768.8259064691249]\n", "0\n", "None\n", "[-350.6370585006307, 35.676655364204066, 768.8259064691249]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "[-515.6412870005527, 35.676655364204066, 768.8259064691249]\n", "0\n", "-400.0\n", "[-515.6412870005527, 35.676655364204066, 768.8259064691249]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "[-733.1290943962626, 435.67665536420407, 1168.825906469125]\n", "0\n", "None\n", "[-733.1290943962626, 435.67665536420407, 1168.825906469125]\n", "((-5, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "((-4, 1, 0, 0, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "[-1000.0, 435.67665536420407, 1168.825906469125]\n", "0\n", "None\n", "[-1000.0, 435.67665536420407, 1168.825906469125]\n", "((-4, 1, 0, 0, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "[-1150.6370585006307, 435.67665536420407, 1168.825906469125]\n", "0\n", "None\n", "[-1150.6370585006307, 435.67665536420407, 1168.825906469125]\n", "((-6, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "((-5, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "[-1315.641287000553, 435.67665536420407, 1168.825906469125]\n", "0\n", "-100.0\n", "[-1315.641287000553, 435.67665536420407, 1168.825906469125]\n", "((-5, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "[-1833.1290943962622, 535.6766553642041, 1268.825906469125]\n", "1\n", "None\n", "[-1833.1290943962622, 535.6766553642041, 1268.825906469125]\n", "((-6, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-1833.1290943962622, 566.8709056037375, 1268.825906469125]\n", "1\n", "None\n", "[-1833.1290943962622, 566.8709056037375, 1268.825906469125]\n", "((-6, 0, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1833.1290943962622, 798.0449991346126, 1268.825906469125]\n", "1\n", "None\n", "[-1833.1290943962622, 798.0449991346126, 1268.825906469125]\n", "((-6, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0))\n", "[-1833.1290943962622, 953.1846194685721, 1268.825906469125]\n", "1\n", "600.0\n", "[-1833.1290943962622, 953.1846194685721, 1268.825906469125]\n", "((-6, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "[-2433.129094396262, 518.1888479684942, 668.8259064691249]\n", "2\n", "None\n", "[-2433.129094396262, 518.1888479684942, 668.8259064691249]\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "[-2433.129094396262, 518.1888479684942, 749.3629414993692]\n", "2\n", "None\n", "[-2433.129094396262, 518.1888479684942, 749.3629414993692]\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-3, 0, 0, 1, 0))\n", "[-2433.129094396262, 518.1888479684942, 1166.8709056037374]\n", "2\n", "700.0\n", "[-2433.129094396262, 518.1888479684942, 1166.8709056037374]\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-3, 0, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (0, 0, 0, 0, 0))\n", "[-3133.129094396262, -181.8111520315058, 698.0449991346125]\n", "2\n", "-100.0\n", "[-3133.129094396262, -181.8111520315058, 698.0449991346125]\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (0, 0, 0, 0, 0))\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-3033.129094396262, -81.8111520315058, 953.1846194685722]\n", "0\n", "None\n", "[-3033.129094396262, -81.8111520315058, 953.1846194685722]\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-3450.637058500631, -81.8111520315058, 953.1846194685722]\n", "0\n", "None\n", "[-3450.637058500631, -81.8111520315058, 953.1846194685722]\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-6, 0, 1, 0, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-3615.641287000553, -81.8111520315058, 953.1846194685722]\n", "0\n", "-1100.0\n", "[-3615.641287000553, -81.8111520315058, 953.1846194685722]\n", "((-6, 0, 1, 0, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-3133.129094396263, 1018.1888479684942, 2053.1846194685722]\n", "1\n", "None\n", "[-3133.129094396263, 1018.1888479684942, 2053.1846194685722]\n", "((-7, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 1, 0), (-3, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "[-3133.129094396263, 1084.3587129994473, 2053.1846194685722]\n", "1\n", "None\n", "[-3133.129094396263, 1084.3587129994473, 2053.1846194685722]\n", "((-7, 0, 0, 1, 0), (-3, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-3133.129094396263, 1168.825906469125, 2053.1846194685722]\n", "2\n", "1200.0\n", "[-3133.129094396263, 1168.825906469125, 2053.1846194685722]\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-4333.129094396263, -31.174093530875098, 466.87090560373736]\n", "0\n", "-1000.0\n", "[-4333.129094396263, -31.174093530875098, 466.87090560373736]\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-8, 1, 0, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-2631.1740935308753, 968.8259064691249, 1466.8709056037374]\n", "1\n", "None\n", "[-2631.1740935308753, 968.8259064691249, 1466.8709056037374]\n", "((-8, 1, 0, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-8, 1, 0, 1, 0), (-7, 0, 0, 1, 1), (-3, 0, 0, 1, 0))\n", "[-2631.1740935308753, 818.1888479684942, 1466.8709056037374]\n", "1\n", "500.0\n", "[-2631.1740935308753, 818.1888479684942, 1466.8709056037374]\n", "((-8, 1, 0, 1, 0), (-7, 0, 0, 1, 1), (-3, 0, 0, 1, 0))\n", "((-8, 1, 0, 1, 0), (-1, 0, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "[-3131.1740935308753, -1.955000865387433, 966.8709056037374]\n", "2\n", "700.0\n", "[-3131.1740935308753, -1.955000865387433, 966.8709056037374]\n", "((-8, 1, 0, 1, 0), (-1, 0, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "((-8, 1, 0, 1, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "[-3831.1740935308753, -701.9550008653874, -1.1368683772161603e-13]\n", "0\n", "-1100.0\n", "[-3831.1740935308753, -701.9550008653874, -1.1368683772161603e-13]\n", "((-8, 1, 0, 1, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-3, 0, 0, 0, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "[-2001.9550008653878, 398.04499913461257, 1100.0]\n", "0\n", "-100.0\n", "[-2001.9550008653878, 398.04499913461257, 1100.0]\n", "((-3, 0, 0, 0, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-4, 1, 0, 0, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "[-1200.0000000000005, 498.04499913461257, 1200.0]\n", "1\n", "500.0\n", "[-1200.0000000000005, 498.04499913461257, 1200.0]\n", "((-4, 1, 0, 0, 0), (-1, 0, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "[-1700.0000000000005, 51.31794236475673, 700.0]\n", "2\n", "800.0\n", "[-1700.0000000000005, 51.31794236475673, 700.0]\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-2500.0000000000005, -748.6820576352433, -250.63705850063081]\n", "2\n", "-100.0\n", "[-2500.0000000000005, -748.6820576352433, -250.63705850063081]\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "[-2400.0000000000005, -648.6820576352433, -231.1740935308751]\n", "1\n", "-900.0\n", "[-2400.0000000000005, -648.6820576352433, -231.1740935308751]\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "((-4, 1, 0, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-1500.0000000000005, -33.12909439626253, 668.8259064691249]\n", "1\n", "-100.0\n", "[-1500.0000000000005, -33.12909439626253, 668.8259064691249]\n", "((-4, 1, 0, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-4, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1400.0000000000005, 186.31371386483477, 768.8259064691249]\n", "0\n", "None\n", "[-1400.0000000000005, 186.31371386483477, 768.8259064691249]\n", "((-4, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1133.129094396263, 186.31371386483477, 768.8259064691249]\n", "0\n", "None\n", "[-1133.129094396263, 186.31371386483477, 768.8259064691249]\n", "((-5, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1715.6412870005533, 186.31371386483477, 768.8259064691249]\n", "0\n", "None\n", "[-1715.6412870005533, 186.31371386483477, 768.8259064691249]\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[-2333.1290943962626, 186.31371386483477, 768.8259064691249]\n", "0\n", "None\n", "[-2333.1290943962626, 186.31371386483477, 768.8259064691249]\n", "((-6, 0, 0, 1, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[-2600.000000000001, 186.31371386483477, 768.8259064691249]\n", "0\n", "-400.0\n", "[-2600.000000000001, 186.31371386483477, 768.8259064691249]\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[-2515.6412870005533, 586.3137138648348, 1168.825906469125]\n", "1\n", "None\n", "[-2515.6412870005533, 586.3137138648348, 1168.825906469125]\n", "((-6, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-2515.6412870005533, 698.0449991346126, 1168.825906469125]\n", "0\n", "-100.0\n", "[-2515.6412870005533, 698.0449991346126, 1168.825906469125]\n", "((-6, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-2250.6370585006316, 798.0449991346126, 1268.825906469125]\n", "1\n", "None\n", "[-2250.6370585006316, 798.0449991346126, 1268.825906469125]\n", "((-7, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "[-2250.6370585006316, 851.3179423647567, 1268.825906469125]\n", "1\n", "None\n", "[-2250.6370585006316, 851.3179423647567, 1268.825906469125]\n", "((-7, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "[-2250.6370585006316, 1118.1888479684942, 1268.825906469125]\n", "2\n", "None\n", "[-2250.6370585006316, 1118.1888479684942, 1268.825906469125]\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0))\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "[-2250.6370585006316, 1118.1888479684942, 1349.3629414993693]\n", "1\n", "800.0\n", "[-2250.6370585006316, 1118.1888479684942, 1349.3629414993693]\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-3050.6370585006316, -264.32334463579593, 549.3629414993693]\n", "2\n", "None\n", "[-3050.6370585006316, -264.32334463579593, 549.3629414993693]\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-3050.6370585006316, -264.32334463579593, 384.35871299944745]\n", "2\n", "None\n", "[-3050.6370585006316, -264.32334463579593, 384.35871299944745]\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "[-3050.6370585006316, -264.32334463579593, 318.1888479684943]\n", "2\n", "500.0\n", "[-3050.6370585006316, -264.32334463579593, 318.1888479684943]\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "[-3550.6370585006316, -764.3233446357959, -448.68205763524315]\n", "2\n", "-100.0\n", "[-3550.6370585006316, -764.3233446357959, -448.68205763524315]\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "[-3450.6370585006316, -664.3233446357959, -401.9550008653873]\n", "1\n", "None\n", "[-3450.6370585006316, -664.3233446357959, -401.9550008653873]\n", "((-7, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "((-7, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-3450.6370585006316, -633.1290943962625, -401.9550008653873]\n", "1\n", "None\n", "[-3450.6370585006316, -633.1290943962625, -401.9550008653873]\n", "((-7, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-7, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "[-3450.6370585006316, -899.9999999999999, -401.9550008653873]\n", "1\n", "None\n", "[-3450.6370585006316, -899.9999999999999, -401.9550008653873]\n", "((-7, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "((-7, 0, 0, 0, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-3450.6370585006316, -1050.6370585006307, -401.9550008653873]\n", "1\n", "None\n", "[-3450.6370585006316, -1050.6370585006307, -401.9550008653873]\n", "((-7, 0, 0, 0, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-7, 0, 0, 0, 1), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "[-3450.6370585006316, -1215.6412870005527, -401.9550008653873]\n", "0\n", "None\n", "[-3450.6370585006316, -1215.6412870005527, -401.9550008653873]\n", "((-7, 0, 0, 0, 1), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "((-6, 0, 1, 0, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "[-3615.6412870005533, -1215.6412870005527, -401.9550008653873]\n", "1\n", "-200.0\n", "[-3615.6412870005533, -1215.6412870005527, -401.9550008653873]\n", "((-6, 0, 1, 0, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "((-6, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-3415.6412870005533, -433.1290943962624, -201.95500086538732]\n", "0\n", "None\n", "[-3415.6412870005533, -433.1290943962624, -201.95500086538732]\n", "((-6, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-10, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-3481.811152031507, -433.1290943962624, -201.95500086538732]\n", "0\n", "-700.0\n", "[-3481.811152031507, -433.1290943962624, -201.95500086538732]\n", "((-10, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-1901.9550008653878, 266.8709056037376, 498.0449991346127]\n", "2\n", "None\n", "[-1901.9550008653878, 266.8709056037376, 498.0449991346127]\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[-1901.9550008653878, 266.8709056037376, 653.1846194685722]\n", "1\n", "None\n", "[-1901.9550008653878, 266.8709056037376, 653.1846194685722]\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-3, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-6, 0, 1, 1, 0))\n", "[-1901.9550008653878, 2.2737367544323206e-13, 653.1846194685722]\n", "2\n", "None\n", "[-1901.9550008653878, 2.2737367544323206e-13, 653.1846194685722]\n", "((-3, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-6, 0, 1, 1, 0))\n", "((-3, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-1901.9550008653878, 2.2737367544323206e-13, 551.3179423647568]\n", "1\n", "None\n", "[-1901.9550008653878, 2.2737367544323206e-13, 551.3179423647568]\n", "((-3, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-3, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "[-1901.9550008653878, -150.6370585006307, 551.3179423647568]\n", "2\n", "None\n", "[-1901.9550008653878, -150.6370585006307, 551.3179423647568]\n", "((-3, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "((-3, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-1901.9550008653878, -150.6370585006307, 498.0449991346127]\n", "1\n", "500.0\n", "[-1901.9550008653878, -150.6370585006307, 498.0449991346127]\n", "((-3, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-2401.955000865388, -233.12909439626242, -1.9550008653873192]\n", "2\n", "None\n", "[-2401.955000865388, -233.12909439626242, -1.9550008653873192]\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[-2401.955000865388, -233.12909439626242, 153.18461946857224]\n", "2\n", "700.0\n", "[-2401.955000865388, -233.12909439626242, 153.18461946857224]\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-3101.955000865388, -933.1290943962624, 1.1368683772161603e-13]\n", "0\n", "None\n", "[-3101.955000865388, -933.1290943962624, 1.1368683772161603e-13]\n", "((-3, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-8, 1, 0, 0, 1), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-3048.682057635244, -933.1290943962624, 1.1368683772161603e-13]\n", "0\n", "None\n", "[-3048.682057635244, -933.1290943962624, 1.1368683772161603e-13]\n", "((-8, 1, 0, 0, 1), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-8, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-2946.815380531428, -933.1290943962624, 1.1368683772161603e-13]\n", "0\n", "None\n", "[-2946.815380531428, -933.1290943962624, 1.1368683772161603e-13]\n", "((-8, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-9, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-2781.8111520315065, -933.1290943962624, 1.1368683772161603e-13]\n", "0\n", "-1000.0\n", "[-2781.8111520315065, -933.1290943962624, 1.1368683772161603e-13]\n", "((-9, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-901.9550008653878, 66.87090560373758, 1000.0000000000001]\n", "0\n", "-200.0\n", "[-901.9550008653878, 66.87090560373758, 1000.0000000000001]\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-546.8153805314278, 266.8709056037376, 1200.0]\n", "2\n", "None\n", "[-546.8153805314278, 266.8709056037376, 1200.0]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-546.8153805314278, 266.8709056037376, 968.8259064691249]\n", "2\n", "None\n", "[-546.8153805314278, 266.8709056037376, 968.8259064691249]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "[-546.8153805314278, 266.8709056037376, 884.3587129994473]\n", "2\n", "None\n", "[-546.8153805314278, 266.8709056037376, 884.3587129994473]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-546.8153805314278, 266.8709056037376, 818.1888479684942]\n", "2\n", "1400.0\n", "[-546.8153805314278, 266.8709056037376, 818.1888479684942]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-1946.8153805314278, -1133.1290943962624, 66.87090560373736]\n", "0\n", "-1300.0\n", "[-1946.8153805314278, -1133.1290943962624, 66.87090560373736]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-331.17409353087555, 166.87090560373758, 1366.8709056037374]\n", "1\n", "None\n", "[-331.17409353087555, 166.87090560373758, 1366.8709056037374]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "[-331.17409353087555, 398.0449991346127, 1366.8709056037374]\n", "1\n", "None\n", "[-331.17409353087555, 398.0449991346127, 1366.8709056037374]\n", "((-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-6, 0, 1, 1, 0), (-3, 0, 0, 1, 0))\n", "[-331.17409353087555, 553.1846194685722, 1366.8709056037374]\n", "1\n", "None\n", "[-331.17409353087555, 553.1846194685722, 1366.8709056037374]\n", "((-6, 1, 0, 1, 0), (-6, 0, 1, 1, 0), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-7, 0, 0, 1, 1), (-3, 0, 0, 1, 0))\n", "[-331.17409353087555, 718.1888479684943, 1366.8709056037374]\n", "1\n", "None\n", "[-331.17409353087555, 718.1888479684943, 1366.8709056037374]\n", "((-6, 1, 0, 1, 0), (-7, 0, 0, 1, 1), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-331.17409353087555, 868.825906469125, 1366.8709056037374]\n", "1\n", "500.0\n", "[-331.17409353087555, 868.825906469125, 1366.8709056037374]\n", "((-6, 1, 0, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "[-831.1740935308756, 600.0, 866.8709056037374]\n", "2\n", "600.0\n", "[-831.1740935308756, 600.0, 866.8709056037374]\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1431.1740935308756, 0.0, 386.31371386483465]\n", "1\n", "-1000.0\n", "[-1431.1740935308756, 0.0, 386.31371386483465]\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "[-431.17409353087555, 66.87090560373747, 1386.3137138648347]\n", "0\n", "-500.0\n", "[-431.17409353087555, 66.87090560373747, 1386.3137138648347]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "[-15.64128700055312, 566.8709056037375, 1886.3137138648347]\n", "1\n", "1000.0\n", "[-15.64128700055312, 566.8709056037375, 1886.3137138648347]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1015.6412870005531, -313.68628613516523, 886.3137138648347]\n", "2\n", "600.0\n", "[-1015.6412870005531, -313.68628613516523, 886.3137138648347]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-6, 0, 1, 0, 1))\n", "[-1615.6412870005531, -913.6862861351652, 135.67665536420395]\n", "2\n", "-400.0\n", "[-1615.6412870005531, -913.6862861351652, 135.67665536420395]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-6, 0, 1, 0, 1))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-1215.6412870005531, -513.6862861351652, -15.64128700055278]\n", "1\n", "None\n", "[-1215.6412870005531, -513.6862861351652, -15.64128700055278]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "[-1215.6412870005531, -401.95500086538743, -15.64128700055278]\n", "1\n", "None\n", "[-1215.6412870005531, -401.95500086538743, -15.64128700055278]\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "[-1215.6412870005531, -246.81538053142788, -15.64128700055278]\n", "1\n", "-400.0\n", "[-1215.6412870005531, -246.81538053142788, -15.64128700055278]\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-815.6412870005531, -264.32334463579593, 384.3587129994472]\n", "2\n", "None\n", "[-815.6412870005531, -264.32334463579593, 384.3587129994472]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-815.6412870005531, -264.32334463579593, 549.3629414993691]\n", "2\n", "None\n", "[-815.6412870005531, -264.32334463579593, 549.3629414993691]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-6, 0, 1, 0, 1))\n", "[-815.6412870005531, -264.32334463579593, 935.676655364204]\n", "1\n", "-200.0\n", "[-815.6412870005531, -264.32334463579593, 935.676655364204]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-6, 0, 1, 0, 1))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-6, 0, 1, 0, 1))\n", "[-615.6412870005531, 86.31371386483477, 1135.676655364204]\n", "2\n", "1100.0\n", "[-615.6412870005531, 86.31371386483477, 1135.676655364204]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-6, 0, 1, 0, 1))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1715.6412870005531, -1013.6862861351652, 186.31371386483465]\n", "0\n", "None\n", "[-1715.6412870005531, -1013.6862861351652, 186.31371386483465]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1400.0000000000002, -1013.6862861351652, 186.31371386483465]\n", "0\n", "None\n", "[-1400.0000000000002, -1013.6862861351652, 186.31371386483465]\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-4, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2600.0000000000005, -1013.6862861351652, 186.31371386483465]\n", "0\n", "None\n", "[-2600.0000000000005, -1013.6862861351652, 186.31371386483465]\n", "((-4, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2915.6412870005533, -1013.6862861351652, 186.31371386483465]\n", "0\n", "-1200.0\n", "[-2915.6412870005533, -1013.6862861351652, 186.31371386483465]\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2600.000000000001, 186.31371386483477, 1386.3137138648347]\n", "2\n", "None\n", "[-2600.000000000001, 186.31371386483477, 1386.3137138648347]\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (0, 0, 0, 0, 0))\n", "[-2600.000000000001, 186.31371386483477, 1498.0449991346125]\n", "2\n", "None\n", "[-2600.000000000001, 186.31371386483477, 1498.0449991346125]\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (0, 0, 0, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 0, 1))\n", "[-2600.000000000001, 186.31371386483477, 1551.3179423647566]\n", "2\n", "None\n", "[-2600.000000000001, 186.31371386483477, 1551.3179423647566]\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 0, 1))\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-2, 0, 1, 0, 0))\n", "[-2600.000000000001, 186.31371386483477, 1884.3587129994473]\n", "0\n", "None\n", "[-2600.000000000001, 186.31371386483477, 1884.3587129994473]\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-2, 0, 1, 0, 0))\n", "((-9, 0, 1, 0, 1), (-5, 1, 1, 0, 0), (-2, 0, 1, 0, 0))\n", "[-2364.3233446357963, 186.31371386483477, 1884.3587129994473]\n", "2\n", "1000.0\n", "[-2364.3233446357963, 186.31371386483477, 1884.3587129994473]\n", "((-9, 0, 1, 0, 1), (-5, 1, 1, 0, 0), (-2, 0, 1, 0, 0))\n", "((-9, 0, 1, 0, 1), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-3364.3233446357963, -813.6862861351652, 0.0]\n", "0\n", "None\n", "[-3364.3233446357963, -813.6862861351652, 0.0]\n", "((-9, 0, 1, 0, 1), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-7, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-3213.686286135166, -813.6862861351652, 0.0]\n", "0\n", "-1200.0\n", "[-3213.686286135166, -813.6862861351652, 0.0]\n", "((-7, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-1515.6412870005533, 386.31371386483477, 1200.0]\n", "0\n", "-200.0\n", "[-1515.6412870005533, 386.31371386483477, 1200.0]\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-613.686286135166, 586.3137138648348, 1400.0]\n", "2\n", "1200.0\n", "[-613.686286135166, 586.3137138648348, 1400.0]\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-1813.686286135166, -613.6862861351652, -115.64128700055267]\n", "0\n", "-900.0\n", "[-1813.686286135166, -613.6862861351652, -115.64128700055267]\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-415.6412870005531, 286.31371386483477, 784.3587129994473]\n", "0\n", "100.0\n", "[-415.6412870005531, 286.31371386483477, 784.3587129994473]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-200.00000000000023, 186.31371386483477, 684.3587129994473]\n", "0\n", "-100.0\n", "[-200.00000000000023, 186.31371386483477, 684.3587129994473]\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-7, 0, 1, 0, 1), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[135.67665536420373, 286.31371386483477, 784.3587129994473]\n", "1\n", "None\n", "[135.67665536420373, 286.31371386483477, 784.3587129994473]\n", "((-7, 0, 1, 0, 1), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "[135.67665536420373, 398.04499913461257, 784.3587129994473]\n", "1\n", "None\n", "[135.67665536420373, 398.04499913461257, 784.3587129994473]\n", "((-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "[135.67665536420373, 553.1846194685721, 784.3587129994473]\n", "1\n", "500.0\n", "[135.67665536420373, 553.1846194685721, 784.3587129994473]\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "[135.67665536420373, 553.1846194685721, 784.3587129994473]\n", "1\n", "100.0\n", "[135.67665536420373, 553.1846194685721, 784.3587129994473]\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "[135.67665536420373, 553.1846194685721, 784.3587129994473]\n", "0\n", "-700.0\n", "[135.67665536420373, 553.1846194685721, 784.3587129994473]\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "[284.3587129994469, 1253.1846194685722, 1484.3587129994473]\n", "1\n", "600.0\n", "[284.3587129994469, 1253.1846194685722, 1484.3587129994473]\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-315.6412870005531, 386.3137138648349, 884.3587129994473]\n", "1\n", "-100.0\n", "[-315.6412870005531, 386.3137138648349, 884.3587129994473]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-215.64128700055312, 335.6766553642042, 984.3587129994473]\n", "1\n", "100.0\n", "[-215.64128700055312, 335.6766553642042, 984.3587129994473]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "[-315.6412870005531, 498.0449991346127, 884.3587129994473]\n", "1\n", "-100.0\n", "[-315.6412870005531, 498.0449991346127, 884.3587129994473]\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "[-315.6412870005531, 498.0449991346127, 884.3587129994473]\n", "0\n", "None\n", "[-315.6412870005531, 498.0449991346127, 884.3587129994473]\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "[-150.63705850063116, 498.0449991346127, 884.3587129994473]\n", "1\n", "-200.0\n", "[-150.63705850063116, 498.0449991346127, 884.3587129994473]\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "((-5, 0, 0, 0, 1), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[49.362941499368844, 586.3137138648349, 1084.3587129994473]\n", "0\n", "None\n", "[49.362941499368844, 586.3137138648349, 1084.3587129994473]\n", "((-5, 0, 0, 0, 1), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[199.99999999999977, 586.3137138648349, 1084.3587129994473]\n", "2\n", "None\n", "[199.99999999999977, 586.3137138648349, 1084.3587129994473]\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "[199.99999999999977, 586.3137138648349, 1168.825906469125]\n", "1\n", "-100.0\n", "[199.99999999999977, 586.3137138648349, 1168.825906469125]\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-5, 1, 0, 1, 0))\n", "((-3, 1, 0, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[299.9999999999998, 566.8709056037376, 1268.825906469125]\n", "0\n", "None\n", "[299.9999999999998, 566.8709056037376, 1268.825906469125]\n", "((-3, 1, 0, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[68.82590646912445, 566.8709056037376, 1268.825906469125]\n", "1\n", "-200.0\n", "[68.82590646912445, 566.8709056037376, 1268.825906469125]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[268.82590646912445, 500.0000000000002, 1468.825906469125]\n", "2\n", "None\n", "[268.82590646912445, 500.0000000000002, 1468.825906469125]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "[268.82590646912445, 500.0000000000002, 1700.0]\n", "0\n", "100.0\n", "[268.82590646912445, 500.0000000000002, 1700.0]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "[-248.68205763524384, 400.0000000000002, 1600.0]\n", "2\n", "None\n", "[-248.68205763524384, 400.0000000000002, 1600.0]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-248.68205763524384, 400.0000000000002, 1449.3629414993693]\n", "2\n", "None\n", "[-248.68205763524384, 400.0000000000002, 1449.3629414993693]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-248.68205763524384, 400.0000000000002, 951.3179423647568]\n", "0\n", "-100.0\n", "[-248.68205763524384, 400.0000000000002, 951.3179423647568]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-201.95500086538777, 500.0000000000002, 1051.3179423647568]\n", "2\n", "1300.0\n", "[-201.95500086538777, 500.0000000000002, 1051.3179423647568]\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "[-1501.9550008653878, -799.9999999999998, -301.9550008653873]\n", "2\n", "100.0\n", "[-1501.9550008653878, -799.9999999999998, -301.9550008653873]\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "[-1601.9550008653878, -899.9999999999998, -15.641287000552552]\n", "2\n", "-100.0\n", "[-1601.9550008653878, -899.9999999999998, -15.641287000552552]\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1501.9550008653878, -799.9999999999998, 168.82590646912502]\n", "0\n", "-1500.0\n", "[-1501.9550008653878, -799.9999999999998, 168.82590646912502]\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[51.31794236475616, 700.0000000000002, 1668.8259064691251]\n", "2\n", "1400.0\n", "[51.31794236475616, 700.0000000000002, 1668.8259064691251]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-1348.6820576352438, -699.9999999999998, 349.3629414993693]\n", "0\n", "-1500.0\n", "[-1348.6820576352438, -699.9999999999998, 349.3629414993693]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-13.686286135166029, 800.0000000000002, 1849.3629414993693]\n", "1\n", "None\n", "[-13.686286135166029, 800.0000000000002, 1849.3629414993693]\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-13.686286135166029, 1035.6766553642042, 1849.3629414993693]\n", "2\n", "1600.0\n", "[-13.686286135166029, 1035.6766553642042, 1849.3629414993693]\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-1613.686286135166, -564.3233446357958, 84.35871299944756]\n", "2\n", "-100.0\n", "[-1613.686286135166, -564.3233446357958, 84.35871299944756]\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-2, 1, 0, 0, 0))\n", "[-1513.686286135166, -464.3233446357958, 500.0000000000002]\n", "1\n", "None\n", "[-1513.686286135166, -464.3233446357958, 500.0000000000002]\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-2, 1, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-1513.686286135166, -313.6862861351651, 500.0000000000002]\n", "2\n", "-200.0\n", "[-1513.686286135166, -313.6862861351651, 500.0000000000002]\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 0, 1, 0, 0))\n", "[-1313.686286135166, -113.68628613516512, 1584.3587129994476]\n", "2\n", "-100.0\n", "[-1313.686286135166, -113.68628613516512, 1584.3587129994476]\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-2, 0, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-1, 1, 0, 0, 0))\n", "[-1213.686286135166, -13.686286135165119, 2000.0000000000002]\n", "1\n", "None\n", "[-1213.686286135166, -13.686286135165119, 2000.0000000000002]\n", "((-6, 1, 1, 0, 0), (-5, 1, 1, 0, 0), (-1, 1, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-1, 0, 0, 0, 0), (-1, 1, 0, 0, 0))\n", "[-1213.686286135166, 98.04499913461268, 2000.0000000000002]\n", "0\n", "-1400.0\n", "[-1213.686286135166, 98.04499913461268, 2000.0000000000002]\n", "((-6, 1, 1, 0, 0), (-1, 0, 0, 0, 0), (-1, 1, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-1, 1, 0, 0, 0))\n", "[66.8709056037369, 1498.0449991346127, 3400.0]\n", "2\n", "1200.0\n", "[66.8709056037369, 1498.0449991346127, 3400.0]\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-1, 1, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-1133.129094396263, 298.0449991346127, 1498.0449991346127]\n", "1\n", "-200.0\n", "[-1133.129094396263, 298.0449991346127, 1498.0449991346127]\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-3, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-933.1290943962631, 2.2737367544323206e-13, 1698.0449991346127]\n", "1\n", "100.0\n", "[-933.1290943962631, 2.2737367544323206e-13, 1698.0449991346127]\n", "((-5, 0, 0, 1, 0), (-3, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-5, 0, 0, 0, 1), (0, 0, 0, 0, 0))\n", "[-1033.129094396263, -250.6370585006307, 1598.0449991346127]\n", "2\n", "None\n", "[-1033.129094396263, -250.6370585006307, 1598.0449991346127]\n", "((-5, 0, 0, 1, 0), (-5, 0, 0, 0, 1), (0, 0, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-5, 0, 0, 0, 1), (-5, 1, 0, 0, 1))\n", "[-1033.129094396263, -250.6370585006307, 1651.3179423647568]\n", "0\n", "None\n", "[-1033.129094396263, -250.6370585006307, 1651.3179423647568]\n", "((-5, 0, 0, 1, 0), (-5, 0, 0, 0, 1), (-5, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-5, 1, 0, 0, 1))\n", "[-1064.3233446357963, -250.6370585006307, 1651.3179423647568]\n", "2\n", "None\n", "[-1064.3233446357963, -250.6370585006307, 1651.3179423647568]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-5, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "[-1064.3233446357963, -250.6370585006307, 1918.1888479684944]\n", "0\n", "None\n", "[-1064.3233446357963, -250.6370585006307, 1918.1888479684944]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "[-801.9550008653878, -250.6370585006307, 1918.1888479684944]\n", "2\n", "600.0\n", "[-801.9550008653878, -250.6370585006307, 1918.1888479684944]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1401.9550008653878, -850.6370585006307, 118.18884796849443]\n", "0\n", "None\n", "[-1401.9550008653878, -850.6370585006307, 118.18884796849443]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1348.6820576352438, -850.6370585006307, 118.18884796849443]\n", "2\n", "100.0\n", "[-1348.6820576352438, -850.6370585006307, 118.18884796849443]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1448.6820576352438, -950.6370585006307, 249.3629414993694]\n", "0\n", "-1300.0\n", "[-1448.6820576352438, -950.6370585006307, 249.3629414993694]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[118.18884796849352, 349.3629414993693, 1549.3629414993693]\n", "0\n", "100.0\n", "[118.18884796849352, 349.3629414993693, 1549.3629414993693]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-564.3233446357963, 249.3629414993693, 1449.3629414993693]\n", "0\n", "None\n", "[-564.3233446357963, 249.3629414993693, 1449.3629414993693]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-301.9550008653878, 249.3629414993693, 1449.3629414993693]\n", "0\n", "None\n", "[-301.9550008653878, 249.3629414993693, 1449.3629414993693]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-9, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1181.8111520315065, 249.3629414993693, 1449.3629414993693]\n", "0\n", "200.0\n", "[-1181.8111520315065, 249.3629414993693, 1449.3629414993693]\n", "((-9, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-448.68205763524384, 49.3629414993693, 1249.3629414993693]\n", "1\n", "None\n", "[-448.68205763524384, 49.3629414993693, 1249.3629414993693]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-448.68205763524384, 200.00000000000023, 1249.3629414993693]\n", "0\n", "200.0\n", "[-448.68205763524384, 200.00000000000023, 1249.3629414993693]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-231.17409353087555, 2.2737367544323206e-13, 1049.3629414993693]\n", "1\n", "None\n", "[-231.17409353087555, 2.2737367544323206e-13, 1049.3629414993693]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 1, 0, 1, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-231.17409353087555, 235.67665536420418, 1049.3629414993693]\n", "0\n", "100.0\n", "[-231.17409353087555, 235.67665536420418, 1049.3629414993693]\n", "((-6, 1, 0, 1, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-250.63705850063116, 135.67665536420418, 949.3629414993693]\n", "1\n", "None\n", "[-250.63705850063116, 135.67665536420418, 949.3629414993693]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-250.63705850063116, 398.0449991346127, 949.3629414993693]\n", "1\n", "None\n", "[-250.63705850063116, 398.0449991346127, 949.3629414993693]\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-250.63705850063116, 451.31794236475685, 949.3629414993693]\n", "1\n", "200.0\n", "[-250.63705850063116, 451.31794236475685, 949.3629414993693]\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "[-450.63705850063116, 518.1888479684943, 749.3629414993693]\n", "1\n", "200.0\n", "[-450.63705850063116, 518.1888479684943, 749.3629414993693]\n", "((-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "[-450.63705850063116, 518.1888479684943, 749.3629414993693]\n", "1\n", "100.0\n", "[-450.63705850063116, 518.1888479684943, 749.3629414993693]\n", "((-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-550.6370585006312, -164.32334463579582, 649.3629414993693]\n", "2\n", "None\n", "[-550.6370585006312, -164.32334463579582, 649.3629414993693]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-550.6370585006312, -164.32334463579582, 484.35871299944745]\n", "2\n", "None\n", "[-550.6370585006312, -164.32334463579582, 484.35871299944745]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "[-550.6370585006312, -164.32334463579582, 418.1888479684943]\n", "2\n", "None\n", "[-550.6370585006312, -164.32334463579582, 418.1888479684943]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "[-550.6370585006312, -164.32334463579582, 151.31794236475685]\n", "0\n", "None\n", "[-550.6370585006312, -164.32334463579582, 151.31794236475685]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "[-715.6412870005531, -164.32334463579582, 151.31794236475685]\n", "2\n", "None\n", "[-715.6412870005531, -164.32334463579582, 151.31794236475685]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "[-715.6412870005531, -164.32334463579582, 98.04499913461268]\n", "0\n", "None\n", "[-715.6412870005531, -164.32334463579582, 98.04499913461268]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "((-3, 1, 0, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "[-400.0000000000002, -164.32334463579582, 98.04499913461268]\n", "2\n", "400.0\n", "[-400.0000000000002, -164.32334463579582, 98.04499913461268]\n", "((-3, 1, 0, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "((-3, 1, 0, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-800.0000000000002, -564.3233446357958, 84.35871299944745]\n", "0\n", "-1300.0\n", "[-800.0000000000002, -564.3233446357958, 84.35871299944745]\n", "((-3, 1, 0, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[349.36294149936884, 735.6766553642042, 1384.3587129994476]\n", "2\n", "1500.0\n", "[349.36294149936884, 735.6766553642042, 1384.3587129994476]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1150.6370585006312, -764.3233446357958, 49.3629414993693]\n", "2\n", "100.0\n", "[-1150.6370585006312, -764.3233446357958, 49.3629414993693]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1250.6370585006312, -864.3233446357958, -281.8111520315057]\n", "1\n", "-1100.0\n", "[-1250.6370585006312, -864.3233446357958, -281.8111520315057]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-150.63705850063116, 266.8709056037376, 818.1888479684943]\n", "2\n", "None\n", "[-150.63705850063116, 266.8709056037376, 818.1888479684943]\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-150.63705850063116, 266.8709056037376, 968.825906469125]\n", "2\n", "None\n", "[-150.63705850063116, 266.8709056037376, 968.825906469125]\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[-150.63705850063116, 266.8709056037376, 653.1846194685722]\n", "1\n", "400.0\n", "[-150.63705850063116, 266.8709056037376, 653.1846194685722]\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-6, 0, 1, 1, 0))\n", "[-550.6370585006312, 98.04499913461268, 253.18461946857224]\n", "2\n", "None\n", "[-550.6370585006312, 98.04499913461268, 253.18461946857224]\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-6, 0, 1, 1, 0))\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-550.6370585006312, 98.04499913461268, 151.31794236475685]\n", "1\n", "-200.0\n", "[-550.6370585006312, 98.04499913461268, 151.31794236475685]\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "[-350.63705850063116, 35.67665536420418, 351.31794236475685]\n", "1\n", "-100.0\n", "[-350.63705850063116, 35.67665536420418, 351.31794236475685]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 1, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-250.63705850063116, -99.99999999999977, 451.31794236475685]\n", "1\n", "-300.0\n", "[-250.63705850063116, -99.99999999999977, 451.31794236475685]\n", "((-5, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-250.63705850063116, -99.99999999999977, 451.31794236475685]\n", "2\n", "900.0\n", "[-250.63705850063116, -99.99999999999977, 451.31794236475685]\n", "((-5, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1150.6370585006312, -999.9999999999998, -31.174093530874984]\n", "0\n", "None\n", "[-1150.6370585006312, -999.9999999999998, -31.174093530874984]\n", "((-5, 0, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1231.1740935308756, -999.9999999999998, -31.174093530874984]\n", "0\n", "None\n", "[-1231.1740935308756, -999.9999999999998, -31.174093530874984]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1648.6820576352438, -999.9999999999998, -31.174093530874984]\n", "0\n", "-800.0\n", "[-1648.6820576352438, -999.9999999999998, -31.174093530874984]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-901.9550008653878, -199.99999999999977, 768.825906469125]\n", "0\n", "-200.0\n", "[-901.9550008653878, -199.99999999999977, 768.825906469125]\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-813.686286135166, 2.2737367544323206e-13, 968.825906469125]\n", "0\n", "-100.0\n", "[-813.686286135166, 2.2737367544323206e-13, 968.825906469125]\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-833.1290943962631, 100.00000000000023, 1068.8259064691251]\n", "0\n", "-300.0\n", "[-833.1290943962631, 100.00000000000023, 1068.8259064691251]\n", "((-5, 0, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[168.82590646912445, 400.0000000000002, 1368.8259064691251]\n", "2\n", "None\n", "[168.82590646912445, 400.0000000000002, 1368.8259064691251]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "[168.82590646912445, 400.0000000000002, 1600.0000000000002]\n", "2\n", "None\n", "[168.82590646912445, 400.0000000000002, 1600.0000000000002]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "[168.82590646912445, 400.0000000000002, 1866.8709056037378]\n", "2\n", "1800.0\n", "[168.82590646912445, 400.0000000000002, 1866.8709056037378]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1631.1740935308756, -1399.9999999999998, 186.3137138648351]\n", "2\n", "-200.0\n", "[-1631.1740935308756, -1399.9999999999998, 186.3137138648351]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-1431.1740935308756, -1199.9999999999998, 498.0449991346129]\n", "2\n", "-100.0\n", "[-1431.1740935308756, -1199.9999999999998, 498.0449991346129]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "[-1331.1740935308756, -1099.9999999999998, 651.3179423647571]\n", "2\n", "-300.0\n", "[-1331.1740935308756, -1099.9999999999998, 651.3179423647571]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1031.1740935308756, -799.9999999999998, 168.82590646912524]\n", "0\n", "None\n", "[-1031.1740935308756, -799.9999999999998, 168.82590646912524]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1448.6820576352438, -799.9999999999998, 168.82590646912524]\n", "2\n", "None\n", "[-1448.6820576352438, -799.9999999999998, 168.82590646912524]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-1448.6820576352438, -799.9999999999998, 249.36294149936953]\n", "1\n", "None\n", "[-1448.6820576352438, -799.9999999999998, 249.36294149936953]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1448.6820576352438, -950.6370585006307, 249.36294149936953]\n", "0\n", "None\n", "[-1448.6820576352438, -950.6370585006307, 249.36294149936953]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1501.9550008653878, -950.6370585006307, 249.36294149936953]\n", "2\n", "None\n", "[-1501.9550008653878, -950.6370585006307, 249.36294149936953]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "[-1501.9550008653878, -950.6370585006307, 400.00000000000034]\n", "1\n", "None\n", "[-1501.9550008653878, -950.6370585006307, 400.00000000000034]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-2, 1, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-1501.9550008653878, -1031.174093530875, 400.00000000000034]\n", "0\n", "None\n", "[-1501.9550008653878, -1031.174093530875, 400.00000000000034]\n", "((-2, 0, 0, 0, 0), (-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-1613.686286135166, -1031.174093530875, 400.00000000000034]\n", "2\n", "None\n", "[-1613.686286135166, -1031.174093530875, 400.00000000000034]\n", "((-6, 1, 1, 0, 0), (-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-1613.686286135166, -1031.174093530875, 666.8709056037378]\n", "0\n", "-1000.0\n", "[-1613.686286135166, -1031.174093530875, 666.8709056037378]\n", "((-6, 1, 1, 0, 0), (-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-181.81115203150648, -31.174093530875098, 1666.8709056037378]\n", "1\n", "500.0\n", "[-181.81115203150648, -31.174093530875098, 1666.8709056037378]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-681.8111520315065, -33.12909439626242, 1166.8709056037378]\n", "2\n", "None\n", "[-681.8111520315065, -33.12909439626242, 1166.8709056037378]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "[-681.8111520315065, -33.12909439626242, 1398.044999134613]\n", "2\n", "700.0\n", "[-681.8111520315065, -33.12909439626242, 1398.044999134613]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-1381.8111520315065, -733.1290943962624, -31.174093530874757]\n", "0\n", "None\n", "[-1381.8111520315065, -733.1290943962624, -31.174093530874757]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-1231.1740935308756, -733.1290943962624, -31.174093530874757]\n", "1\n", "None\n", "[-1231.1740935308756, -733.1290943962624, -31.174093530874757]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1231.1740935308756, -999.9999999999998, -31.174093530874757]\n", "0\n", "None\n", "[-1231.1740935308756, -999.9999999999998, -31.174093530874757]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1648.6820576352438, -999.9999999999998, -31.174093530874757]\n", "1\n", "None\n", "[-1648.6820576352438, -999.9999999999998, -31.174093530874757]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "[-1648.6820576352438, -1150.6370585006307, -31.174093530874757]\n", "2\n", "None\n", "[-1648.6820576352438, -1150.6370585006307, -31.174093530874757]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-5, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1648.6820576352438, -1150.6370585006307, 49.362941499369526]\n", "0\n", "None\n", "[-1648.6820576352438, -1150.6370585006307, 49.362941499369526]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1701.9550008653878, -1150.6370585006307, 49.362941499369526]\n", "1\n", "None\n", "[-1701.9550008653878, -1150.6370585006307, 49.362941499369526]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "[-1701.9550008653878, -1315.6412870005527, 49.362941499369526]\n", "0\n", "-1400.0\n", "[-1701.9550008653878, -1315.6412870005527, 49.362941499369526]\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "[-146.81538053142776, 84.35871299944733, 1449.3629414993695]\n", "1\n", "500.0\n", "[-146.81538053142776, 84.35871299944733, 1449.3629414993695]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "[-646.8153805314278, -481.811152031506, 949.3629414993695]\n", "2\n", "None\n", "[-646.8153805314278, -481.811152031506, 949.3629414993695]\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-3, 0, 1, 0, 0))\n", "[-646.8153805314278, -481.811152031506, 784.3587129994477]\n", "2\n", "700.0\n", "[-646.8153805314278, -481.811152031506, 784.3587129994477]\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-3, 0, 1, 0, 0))\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0))\n", "[-1346.8153805314278, -1181.811152031506, -533.1290943962622]\n", "1\n", "None\n", "[-1346.8153805314278, -1181.811152031506, -533.1290943962622]\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "[-1346.8153805314278, -1031.174093530875, -533.1290943962622]\n", "1\n", "None\n", "[-1346.8153805314278, -1031.174093530875, -533.1290943962622]\n", "((-7, 0, 1, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-1346.8153805314278, -1115.6412870005527, -533.1290943962622]\n", "1\n", "-900.0\n", "[-1346.8153805314278, -1115.6412870005527, -533.1290943962622]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-1346.8153805314278, -1115.6412870005527, -533.1290943962622]\n", "1\n", "-100.0\n", "[-1346.8153805314278, -1115.6412870005527, -533.1290943962622]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-1346.8153805314278, -1115.6412870005527, -533.1290943962622]\n", "0\n", "None\n", "[-1346.8153805314278, -1115.6412870005527, -533.1290943962622]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-1501.9550008653878, -1115.6412870005527, -533.1290943962622]\n", "0\n", "None\n", "[-1501.9550008653878, -1115.6412870005527, -533.1290943962622]\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-6, 1, 1, 0, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-1613.686286135166, -1115.6412870005527, -533.1290943962622]\n", "1\n", "None\n", "[-1613.686286135166, -1115.6412870005527, -533.1290943962622]\n", "((-6, 1, 1, 0, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-6, 1, 1, 0, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "[-1613.686286135166, -1031.174093530875, -533.1290943962622]\n", "0\n", "None\n", "[-1613.686286135166, -1031.174093530875, -533.1290943962622]\n", "((-6, 1, 1, 0, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "[-1733.129094396263, -1031.174093530875, -533.1290943962622]\n", "0\n", "-400.0\n", "[-1733.129094396263, -1031.174093530875, -533.1290943962622]\n", "((-5, 0, 0, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "[-946.8153805314278, -631.1740935308751, -133.1290943962622]\n", "1\n", "None\n", "[-946.8153805314278, -631.1740935308751, -133.1290943962622]\n", "((-7, 0, 1, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0))\n", "[-946.8153805314278, -781.811152031506, -133.1290943962622]\n", "1\n", "None\n", "[-946.8153805314278, -781.811152031506, -133.1290943962622]\n", "((-7, 0, 1, 1, 0), (-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-946.8153805314278, -715.6412870005527, -133.1290943962622]\n", "0\n", "-100.0\n", "[-946.8153805314278, -715.6412870005527, -133.1290943962622]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-681.8111520315065, -615.6412870005527, -33.12909439626219]\n", "1\n", "600.0\n", "[-681.8111520315065, -615.6412870005527, -33.12909439626219]\n", "((-8, 0, 0, 1, 1), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "[-1281.8111520315065, -1050.6370585006307, -633.1290943962622]\n", "0\n", "None\n", "[-1281.8111520315065, -1050.6370585006307, -633.1290943962622]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "[-1131.1740935308756, -1050.6370585006307, -633.1290943962622]\n", "0\n", "None\n", "[-1131.1740935308756, -1050.6370585006307, -633.1290943962622]\n", "((-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "[-1548.6820576352438, -1050.6370585006307, -633.1290943962622]\n", "0\n", "-500.0\n", "[-1548.6820576352438, -1050.6370585006307, -633.1290943962622]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "[-946.8153805314278, -550.6370585006307, -133.1290943962622]\n", "1\n", "700.0\n", "[-946.8153805314278, -550.6370585006307, -133.1290943962622]\n", "((-7, 0, 1, 1, 0), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "[-1646.8153805314278, -1331.174093530875, -833.1290943962622]\n", "0\n", "-500.0\n", "[-1646.8153805314278, -1331.174093530875, -833.1290943962622]\n", "((-7, 0, 1, 1, 0), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "[-981.8111520315065, -831.1740935308751, -333.1290943962622]\n", "2\n", "None\n", "[-981.8111520315065, -831.1740935308751, -333.1290943962622]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0))\n", "[-981.8111520315065, -831.1740935308751, -599.9999999999995]\n", "2\n", "None\n", "[-981.8111520315065, -831.1740935308751, -599.9999999999995]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1))\n", "[-981.8111520315065, -831.1740935308751, -750.6370585006305]\n", "2\n", "None\n", "[-981.8111520315065, -831.1740935308751, -750.6370585006305]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1))\n", "[-981.8111520315065, -831.1740935308751, -750.6370585006305]\n", "2\n", "1000.0\n", "[-981.8111520315065, -831.1740935308751, -750.6370585006305]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1))\n", "[-981.8111520315065, -831.1740935308751, -750.6370585006305]\n", "2\n", "-100.0\n", "[-981.8111520315065, -831.1740935308751, -750.6370585006305]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-5, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "[-881.8111520315065, -731.1740935308751, -233.1290943962622]\n", "2\n", "100.0\n", "[-881.8111520315065, -731.1740935308751, -233.1290943962622]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0))\n", "[-981.8111520315065, -831.1740935308751, -599.9999999999995]\n", "2\n", "200.0\n", "[-981.8111520315065, -831.1740935308751, -599.9999999999995]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0))\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "[-1181.8111520315065, -1031.174093530875, 249.36294149936953]\n", "1\n", "None\n", "[-1181.8111520315065, -1031.174093530875, 249.36294149936953]\n", "((-8, 0, 0, 1, 1), (-6, 1, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1181.8111520315065, -950.6370585006307, 249.36294149936953]\n", "1\n", "None\n", "[-1181.8111520315065, -950.6370585006307, 249.36294149936953]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1181.8111520315065, -564.3233446357958, 249.36294149936953]\n", "1\n", "None\n", "[-1181.8111520315065, -564.3233446357958, 249.36294149936953]\n", "((-8, 0, 0, 1, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "[-1181.8111520315065, -533.1290943962624, 249.36294149936953]\n", "1\n", "None\n", "[-1181.8111520315065, -533.1290943962624, 249.36294149936953]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-1, 0, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-1181.8111520315065, -301.9550008653873, 249.36294149936953]\n", "2\n", "-100.0\n", "[-1181.8111520315065, -301.9550008653873, 249.36294149936953]\n", "((-8, 0, 0, 1, 1), (-1, 0, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "[-1081.8111520315065, -201.95500086538732, 184.35871299944768]\n", "1\n", "-700.0\n", "[-1081.8111520315065, -201.95500086538732, 184.35871299944768]\n", "((-8, 0, 0, 1, 1), (-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0))\n", "((-8, 0, 0, 1, 1), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-381.8111520315065, 386.3137138648349, 884.3587129994477]\n", "2\n", "900.0\n", "[-381.8111520315065, 386.3137138648349, 884.3587129994477]\n", "((-8, 0, 0, 1, 1), (-5, 1, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-8, 0, 0, 1, 1), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "[-1281.8111520315065, -513.6862861351651, 300.00000000000045]\n", "2\n", "100.0\n", "[-1281.8111520315065, -513.6862861351651, 300.00000000000045]\n", "((-8, 0, 0, 1, 1), (-5, 1, 1, 0, 0), (-2, 1, 0, 0, 0))\n", "((-8, 0, 0, 1, 1), (-5, 1, 1, 0, 0), (-3, 0, 0, 1, 0))\n", "[-1381.8111520315065, -613.6862861351651, 466.8709056037379]\n", "0\n", "None\n", "[-1381.8111520315065, -613.6862861351651, 466.8709056037379]\n", "((-8, 0, 0, 1, 1), (-5, 1, 1, 0, 0), (-3, 0, 0, 1, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 0, 1, 0))\n", "[-1315.6412870005531, -613.6862861351651, 466.8709056037379]\n", "1\n", "-800.0\n", "[-1315.6412870005531, -613.6862861351651, 466.8709056037379]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-3, 0, 0, 1, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 0, 1, 0))\n", "[-515.6412870005531, 35.67665536420418, 1266.8709056037378]\n", "0\n", "None\n", "[-515.6412870005531, 35.67665536420418, 1266.8709056037378]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-7, 0, 1, 0, 1), (-3, 0, 0, 1, 0))\n", "[-431.17409353087555, 35.67665536420418, 1266.8709056037378]\n", "1\n", "100.0\n", "[-431.17409353087555, 35.67665536420418, 1266.8709056037378]\n", "((-6, 1, 0, 1, 0), (-7, 0, 1, 0, 1), (-3, 0, 0, 1, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-531.1740935308756, -33.12909439626242, 1166.8709056037378]\n", "0\n", "None\n", "[-531.1740935308756, -33.12909439626242, 1166.8709056037378]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-681.8111520315065, -33.12909439626242, 1166.8709056037378]\n", "0\n", "-800.0\n", "[-681.8111520315065, -33.12909439626242, 1166.8709056037378]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-46.81538053142776, 766.8709056037376, 1966.8709056037378]\n", "2\n", "None\n", "[-46.81538053142776, 766.8709056037376, 1966.8709056037378]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "[-46.81538053142776, 766.8709056037376, 2198.044999134613]\n", "2\n", "None\n", "[-46.81538053142776, 766.8709056037376, 2198.044999134613]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-46.81538053142776, 766.8709056037376, 2353.1846194685727]\n", "0\n", "200.0\n", "[-46.81538053142776, 766.8709056037376, 2353.1846194685727]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-15.64128700055312, 566.8709056037376, 2153.1846194685727]\n", "0\n", "100.0\n", "[-15.64128700055312, 566.8709056037376, 2153.1846194685727]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-31.174093530875552, 466.8709056037376, 2053.1846194685727]\n", "1\n", "300.0\n", "[-31.174093530875552, 466.8709056037376, 2053.1846194685727]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-331.17409353087555, -99.99999999999977, 1753.1846194685727]\n", "1\n", "400.0\n", "[-331.17409353087555, -99.99999999999977, 1753.1846194685727]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "[-731.1740935308756, 384.35871299944745, 1353.1846194685727]\n", "1\n", "200.0\n", "[-731.1740935308756, 384.35871299944745, 1353.1846194685727]\n", "((-6, 1, 0, 1, 0), (-3, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-931.1740935308756, 500.0000000000001, 1153.1846194685727]\n", "1\n", "-100.0\n", "[-931.1740935308756, 500.0000000000001, 1153.1846194685727]\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-831.1740935308756, 866.8709056037376, 1253.1846194685727]\n", "2\n", "600.0\n", "[-831.1740935308756, 866.8709056037376, 1253.1846194685727]\n", "((-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "[-1431.1740935308756, 266.8709056037376, 498.0449991346129]\n", "0\n", "-1600.0\n", "[-1431.1740935308756, 266.8709056037376, 498.0449991346129]\n", "((-6, 1, 0, 1, 0), (-3, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "((-8, 0, 0, 1, 1), (-3, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "[18.18884796849352, 1866.8709056037376, 2098.044999134613]\n", "2\n", "1800.0\n", "[18.18884796849352, 1866.8709056037376, 2098.044999134613]\n", "((-8, 0, 0, 1, 1), (-3, 0, 0, 1, 0), (0, 0, 0, 0, 0))\n", "((-8, 0, 0, 1, 1), (-3, 0, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "[-1781.8111520315065, 66.87090560373758, 618.1888479684949]\n", "0\n", "-1400.0\n", "[-1781.8111520315065, 66.87090560373758, 618.1888479684949]\n", "((-8, 0, 0, 1, 1), (-3, 0, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 0, 1), (-3, 0, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "[-150.63705850063116, 1466.8709056037376, 2018.1888479684949]\n", "0\n", "200.0\n", "[-150.63705850063116, 1466.8709056037376, 2018.1888479684949]\n", "((-5, 0, 0, 0, 1), (-3, 0, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "((-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "[66.87090560373713, 1266.8709056037376, 1818.1888479684949]\n", "1\n", "500.0\n", "[66.87090560373713, 1266.8709056037376, 1818.1888479684949]\n", "((-4, 0, 0, 1, 0), (-3, 0, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "((-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-6, 0, 0, 1, 1))\n", "[-433.1290943962629, 118.18884796849431, 1318.1888479684949]\n", "0\n", "-600.0\n", "[-433.1290943962629, 118.18884796849431, 1318.1888479684949]\n", "((-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-6, 0, 0, 1, 1))\n", "[-1033.129094396263, 718.1888479684943, 1918.1888479684949]\n", "1\n", "500.0\n", "[-1033.129094396263, 718.1888479684943, 1918.1888479684949]\n", "((-5, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-6, 0, 0, 1, 1))\n", "[-1533.129094396263, 53.18461946857224, 1418.1888479684949]\n", "2\n", "700.0\n", "[-1533.129094396263, 53.18461946857224, 1418.1888479684949]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "[-2233.129094396263, -646.8153805314278, 553.1846194685729]\n", "1\n", "-1000.0\n", "[-2233.129094396263, -646.8153805314278, 553.1846194685729]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-1233.129094396263, -33.12909439626242, 1553.184619468573]\n", "0\n", "-100.0\n", "[-1233.129094396263, -33.12909439626242, 1553.184619468573]\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-515.6412870005531, 66.87090560373758, 1653.184619468573]\n", "0\n", "-100.0\n", "[-515.6412870005531, 66.87090560373758, 1653.184619468573]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-331.17409353087555, 166.87090560373758, 1753.184619468573]\n", "1\n", "None\n", "[-331.17409353087555, 166.87090560373758, 1753.184619468573]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-331.17409353087555, -99.99999999999977, 1753.184619468573]\n", "1\n", "None\n", "[-331.17409353087555, -99.99999999999977, 1753.184619468573]\n", "((-6, 1, 0, 1, 0), (-3, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-3, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "[-331.17409353087555, 784.3587129994474, 1753.184619468573]\n", "1\n", "0.0\n", "[-331.17409353087555, 784.3587129994474, 1753.184619468573]\n", "((-6, 1, 0, 1, 0), (-3, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-331.17409353087555, 1100.0, 1753.184619468573]\n", "0\n", "-300.0\n", "[-331.17409353087555, 1100.0, 1753.184619468573]\n", "((-6, 1, 0, 1, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-4, 0, 1, 0, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-115.64128700055312, 1400.0, 2053.184619468573]\n", "0\n", "None\n", "[-115.64128700055312, 1400.0, 2053.184619468573]\n", "((-4, 0, 1, 0, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-448.68205763524384, 1400.0, 2053.184619468573]\n", "0\n", "None\n", "[-448.68205763524384, 1400.0, 2053.184619468573]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-501.9550008653878, 1400.0, 2053.184619468573]\n", "2\n", "None\n", "[-501.9550008653878, 1400.0, 2053.184619468573]\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "[-501.9550008653878, 1400.0, 1951.3179423647575]\n", "0\n", "None\n", "[-501.9550008653878, 1400.0, 1951.3179423647575]\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "((-6, 1, 1, 0, 0), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "[-613.686286135166, 1400.0, 1951.3179423647575]\n", "2\n", "None\n", "[-613.686286135166, 1400.0, 1951.3179423647575]\n", "((-6, 1, 1, 0, 0), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "((-6, 1, 1, 0, 0), (-2, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-613.686286135166, 1400.0, 1898.0449991346134]\n", "0\n", "-200.0\n", "[-613.686286135166, 1400.0, 1898.0449991346134]\n", "((-6, 1, 1, 0, 0), (-2, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-248.68205763524384, 1600.0, 2098.044999134613]\n", "2\n", "1800.0\n", "[-248.68205763524384, 1600.0, 2098.044999134613]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2048.682057635244, -200.0, 186.31371386483534]\n", "2\n", "-100.0\n", "[-2048.682057635244, -200.0, 186.31371386483534]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "[-1948.6820576352438, -100.0, 868.8259064691255]\n", "2\n", "-300.0\n", "[-1948.6820576352438, -100.0, 868.8259064691255]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "[-1648.6820576352438, 200.0, 751.3179423647572]\n", "2\n", "None\n", "[-1648.6820576352438, 200.0, 751.3179423647572]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-3, 0, 0, 0, 1))\n", "[-1648.6820576352438, 200.0, 1249.3629414993698]\n", "2\n", "None\n", "[-1648.6820576352438, 200.0, 1249.3629414993698]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-3, 0, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-1, 1, 0, 0, 0))\n", "[-1648.6820576352438, 200.0, 1400.0000000000005]\n", "2\n", "None\n", "[-1648.6820576352438, 200.0, 1400.0000000000005]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-1, 1, 0, 0, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-3, 1, 1, 0, 0))\n", "[-1648.6820576352438, 200.0, 1786.3137138648353]\n", "2\n", "-200.0\n", "[-1648.6820576352438, 200.0, 1786.3137138648353]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-3, 1, 1, 0, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "[-1448.6820576352438, 400.0, 1368.8259064691256]\n", "0\n", "None\n", "[-1448.6820576352438, 400.0, 1368.8259064691256]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "[-1501.9550008653878, 400.0, 1368.8259064691256]\n", "1\n", "None\n", "[-1501.9550008653878, 400.0, 1368.8259064691256]\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 0, 1), (-4, 1, 0, 1, 0))\n", "[-1501.9550008653878, 249.36294149936919, 1368.8259064691256]\n", "0\n", "None\n", "[-1501.9550008653878, 249.36294149936919, 1368.8259064691256]\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 0, 1), (-4, 1, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 0, 1), (-4, 1, 0, 1, 0))\n", "[-1733.129094396263, 249.36294149936919, 1368.8259064691256]\n", "2\n", "None\n", "[-1733.129094396263, 249.36294149936919, 1368.8259064691256]\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 0, 1), (-4, 1, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "[-1733.129094396263, 249.36294149936919, 1218.1888479684949]\n", "1\n", "None\n", "[-1733.129094396263, 249.36294149936919, 1218.1888479684949]\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "[-1733.129094396263, 168.8259064691249, 1218.1888479684949]\n", "0\n", "None\n", "[-1733.129094396263, 168.8259064691249, 1218.1888479684949]\n", "((-5, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "((-4, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "[-2000.0000000000005, 168.8259064691249, 1218.1888479684949]\n", "1\n", "None\n", "[-2000.0000000000005, 168.8259064691249, 1218.1888479684949]\n", "((-4, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "[-2000.0000000000005, -248.68205763524327, 1218.1888479684949]\n", "0\n", "-1000.0\n", "[-2000.0000000000005, -248.68205763524327, 1218.1888479684949]\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "[49.362941499368844, 751.3179423647567, 2218.188847968495]\n", "2\n", "None\n", "[49.362941499368844, 751.3179423647567, 2218.188847968495]\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-5, 1, 0, 0, 1))\n", "[49.362941499368844, 751.3179423647567, 1951.3179423647573]\n", "1\n", "500.0\n", "[49.362941499368844, 751.3179423647567, 1951.3179423647573]\n", "((-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-5, 1, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "[-450.63705850063116, 198.04499913461257, 1451.3179423647573]\n", "2\n", "700.0\n", "[-450.63705850063116, 198.04499913461257, 1451.3179423647573]\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-1150.6370585006312, -501.95500086538743, 698.0449991346131]\n", "0\n", "-1400.0\n", "[-1150.6370585006312, -501.95500086538743, 698.0449991346131]\n", "((-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[84.35871299944688, 898.0449991346126, 2098.044999134613]\n", "1\n", "500.0\n", "[84.35871299944688, 898.0449991346126, 2098.044999134613]\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (0, 0, 0, 0, 0))\n", "[-415.6412870005531, 286.31371386483477, 1598.0449991346131]\n", "2\n", "700.0\n", "[-415.6412870005531, 286.31371386483477, 1598.0449991346131]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (0, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1115.6412870005531, -413.68628613516523, 786.3137138648353]\n", "1\n", "None\n", "[-1115.6412870005531, -413.68628613516523, 786.3137138648353]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 1, 1, 0, 0))\n", "[-1115.6412870005531, -564.3233446357959, 786.3137138648353]\n", "1\n", "None\n", "[-1115.6412870005531, -564.3233446357959, 786.3137138648353]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-3, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1115.6412870005531, -799.9999999999999, 786.3137138648353]\n", "1\n", "None\n", "[-1115.6412870005531, -799.9999999999999, 786.3137138648353]\n", "((-4, 0, 1, 0, 0), (-3, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1115.6412870005531, -301.95500086538743, 786.3137138648353]\n", "1\n", "-1000.0\n", "[-1115.6412870005531, -301.95500086538743, 786.3137138648353]\n", "((-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-4, 1, 1, 0, 0))\n", "[-115.64128700055312, 853.1846194685721, 1786.3137138648353]\n", "1\n", "100.0\n", "[-115.64128700055312, 853.1846194685721, 1786.3137138648353]\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-4, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-215.64128700055312, 486.31371386483477, 1686.3137138648353]\n", "0\n", "None\n", "[-215.64128700055312, 486.31371386483477, 1686.3137138648353]\n", "((-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[99.99999999999977, 486.31371386483477, 1686.3137138648353]\n", "0\n", "None\n", "[99.99999999999977, 486.31371386483477, 1686.3137138648353]\n", "((-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-4, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1100.0000000000005, 486.31371386483477, 1686.3137138648353]\n", "0\n", "None\n", "[-1100.0000000000005, 486.31371386483477, 1686.3137138648353]\n", "((-4, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1415.6412870005533, 486.31371386483477, 1686.3137138648353]\n", "0\n", "-600.0\n", "[-1415.6412870005533, 486.31371386483477, 1686.3137138648353]\n", "((-5, 0, 1, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1700.000000000001, 1086.3137138648349, 2286.3137138648353]\n", "1\n", "None\n", "[-1700.000000000001, 1086.3137138648349, 2286.3137138648353]\n", "((-5, 1, 0, 0, 0), (-5, 1, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-1, 0, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1700.000000000001, 1198.0449991346127, 2286.3137138648353]\n", "1\n", "None\n", "[-1700.000000000001, 1198.0449991346127, 2286.3137138648353]\n", "((-5, 1, 0, 0, 0), (-1, 0, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-4, 1, 1, 0, 0))\n", "[-1700.000000000001, 1251.3179423647568, 2286.3137138648353]\n", "0\n", "None\n", "[-1700.000000000001, 1251.3179423647568, 2286.3137138648353]\n", "((-5, 1, 0, 0, 0), (-6, 1, 0, 0, 1), (-4, 1, 1, 0, 0))\n", "((-7, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-4, 1, 1, 0, 0))\n", "[-1850.6370585006316, 1251.3179423647568, 2286.3137138648353]\n", "2\n", "None\n", "[-1850.6370585006316, 1251.3179423647568, 2286.3137138648353]\n", "((-7, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (-4, 1, 1, 0, 0))\n", "((-7, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (0, 0, 0, 0, 0))\n", "[-1850.6370585006316, 1251.3179423647568, 2398.044999134613]\n", "1\n", "None\n", "[-1850.6370585006316, 1251.3179423647568, 2398.044999134613]\n", "((-7, 0, 0, 0, 1), (-6, 1, 0, 0, 1), (0, 0, 0, 0, 0))\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (0, 0, 0, 0, 0))\n", "[-1850.6370585006316, 1518.1888479684944, 2398.044999134613]\n", "2\n", "None\n", "[-1850.6370585006316, 1518.1888479684944, 2398.044999134613]\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (0, 0, 0, 0, 0))\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "[-1850.6370585006316, 1518.1888479684944, 2451.317942364757]\n", "1\n", "300.0\n", "[-1850.6370585006316, 1518.1888479684944, 2451.317942364757]\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "((-7, 0, 0, 0, 1), (-8, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "[-2150.6370585006316, 18.188847968493974, 2151.317942364757]\n", "0\n", "None\n", "[-2150.6370585006316, 18.188847968493974, 2151.317942364757]\n", "((-7, 0, 0, 0, 1), (-8, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "((-5, 1, 0, 0, 0), (-8, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "[-2000.000000000001, 18.188847968493974, 2151.317942364757]\n", "0\n", "-200.0\n", "[-2000.000000000001, 18.188847968493974, 2151.317942364757]\n", "((-5, 1, 0, 0, 0), (-8, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "((-6, 0, 0, 0, 1), (-8, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "[-750.6370585006312, 218.18884796849397, 2351.317942364757]\n", "2\n", "1100.0\n", "[-750.6370585006312, 218.18884796849397, 2351.317942364757]\n", "((-6, 0, 0, 0, 1), (-8, 0, 0, 1, 1), (-5, 1, 0, 0, 1))\n", "((-6, 0, 0, 0, 1), (-8, 0, 0, 1, 1), (-7, 0, 0, 1, 1))\n", "[-1850.6370585006312, -881.811152031506, 318.18884796849443]\n", "1\n", "-200.0\n", "[-1850.6370585006312, -881.811152031506, 318.18884796849443]\n", "((-6, 0, 0, 0, 1), (-8, 0, 0, 1, 1), (-7, 0, 0, 1, 1))\n", "((-6, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-1650.6370585006312, -33.12909439626242, 518.1888479684944]\n", "1\n", "100.0\n", "[-1650.6370585006312, -33.12909439626242, 518.1888479684944]\n", "((-6, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-6, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1750.6370585006312, -164.32334463579582, 418.18884796849443]\n", "0\n", "None\n", "[-1750.6370585006312, -164.32334463579582, 418.18884796849443]\n", "((-6, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "((-5, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1915.6412870005533, -164.32334463579582, 418.18884796849443]\n", "0\n", "None\n", "[-1915.6412870005533, -164.32334463579582, 418.18884796849443]\n", "((-5, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "((-5, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1333.129094396263, -164.32334463579582, 418.18884796849443]\n", "2\n", "200.0\n", "[-1333.129094396263, -164.32334463579582, 418.18884796849443]\n", "((-5, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-7, 0, 0, 1, 1))\n", "((-5, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0))\n", "[-1533.129094396263, -364.3233446357958, 53.18461946857235]\n", "0\n", "None\n", "[-1533.129094396263, -364.3233446357958, 53.18461946857235]\n", "((-5, 0, 0, 1, 0), (-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0))\n", "[-915.6412870005531, -364.3233446357958, 53.18461946857235]\n", "0\n", "-1500.0\n", "[-915.6412870005531, -364.3233446357958, 53.18461946857235]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0))\n", "[749.3629414993688, 1135.6766553642042, 1553.1846194685722]\n", "1\n", "None\n", "[749.3629414993688, 1135.6766553642042, 1553.1846194685722]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0))\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[749.3629414993688, 1166.8709056037376, 1553.1846194685722]\n", "0\n", "700.0\n", "[749.3629414993688, 1166.8709056037376, 1553.1846194685722]\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[-31.174093530875552, 466.8709056037376, 853.1846194685722]\n", "0\n", "100.0\n", "[-31.174093530875552, 466.8709056037376, 853.1846194685722]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[-281.8111520315065, 366.8709056037376, 753.1846194685722]\n", "1\n", "None\n", "[-281.8111520315065, 366.8709056037376, 753.1846194685722]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "[-281.8111520315065, -50.6370585006307, 753.1846194685722]\n", "1\n", "None\n", "[-281.8111520315065, -50.6370585006307, 753.1846194685722]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-281.8111520315065, -215.64128700055267, 753.1846194685722]\n", "0\n", "-500.0\n", "[-281.8111520315065, -215.64128700055267, 753.1846194685722]\n", "((-8, 0, 0, 1, 1), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[53.18461946857224, 284.35871299944733, 1253.1846194685722]\n", "1\n", "500.0\n", "[53.18461946857224, 284.35871299944733, 1253.1846194685722]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[53.18461946857224, 284.35871299944733, 1253.1846194685722]\n", "2\n", "None\n", "[53.18461946857224, 284.35871299944733, 1253.1846194685722]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "[53.18461946857224, 284.35871299944733, 1098.0449991346127]\n", "2\n", "None\n", "[53.18461946857224, 284.35871299944733, 1098.0449991346127]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0))\n", "[53.18461946857224, 284.35871299944733, 986.3137138648349]\n", "2\n", "None\n", "[53.18461946857224, 284.35871299944733, 986.3137138648349]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[53.18461946857224, 284.35871299944733, 866.8709056037376]\n", "2\n", "None\n", "[53.18461946857224, 284.35871299944733, 866.8709056037376]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1))\n", "[53.18461946857224, 284.35871299944733, 835.6766553642042]\n", "2\n", "400.0\n", "[53.18461946857224, 284.35871299944733, 835.6766553642042]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-346.81538053142776, -115.64128700055267, 853.1846194685722]\n", "1\n", "None\n", "[-346.81538053142776, -115.64128700055267, 853.1846194685722]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[-346.81538053142776, 466.8709056037376, 853.1846194685722]\n", "2\n", "700.0\n", "[-346.81538053142776, 466.8709056037376, 853.1846194685722]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-1046.8153805314278, -233.12909439626242, -1.9550008653873192]\n", "2\n", "100.0\n", "[-1046.8153805314278, -233.12909439626242, -1.9550008653873192]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-1146.8153805314278, -333.1290943962624, 218.18884796849431]\n", "1\n", "None\n", "[-1146.8153805314278, -333.1290943962624, 218.18884796849431]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-7, 0, 1, 1, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1146.8153805314278, -750.6370585006307, 218.18884796849431]\n", "1\n", "None\n", "[-1146.8153805314278, -750.6370585006307, 218.18884796849431]\n", "((-7, 0, 1, 1, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "[-1146.8153805314278, -915.6412870005527, 218.18884796849431]\n", "2\n", "-500.0\n", "[-1146.8153805314278, -915.6412870005527, 218.18884796849431]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-646.8153805314278, -415.64128700055267, 553.1846194685722]\n", "1\n", "-500.0\n", "[-646.8153805314278, -415.64128700055267, 553.1846194685722]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-646.8153805314278, -415.64128700055267, 553.1846194685722]\n", "0\n", "None\n", "[-646.8153805314278, -415.64128700055267, 553.1846194685722]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-801.9550008653878, -415.64128700055267, 553.1846194685722]\n", "1\n", "-300.0\n", "[-801.9550008653878, -415.64128700055267, 553.1846194685722]\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "[-501.9550008653878, 49.3629414993693, 853.1846194685722]\n", "0\n", "None\n", "[-501.9550008653878, 49.3629414993693, 853.1846194685722]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "[-448.68205763524384, 49.3629414993693, 853.1846194685722]\n", "2\n", "None\n", "[-448.68205763524384, 49.3629414993693, 853.1846194685722]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "[-448.68205763524384, 49.3629414993693, 751.3179423647568]\n", "0\n", "-200.0\n", "[-448.68205763524384, 49.3629414993693, 751.3179423647568]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "[18.18884796849352, 249.3629414993693, 951.3179423647568]\n", "2\n", "None\n", "[18.18884796849352, 249.3629414993693, 951.3179423647568]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[18.18884796849352, 249.3629414993693, 898.0449991346127]\n", "2\n", "None\n", "[18.18884796849352, 249.3629414993693, 898.0449991346127]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "[18.18884796849352, 249.3629414993693, 666.8709056037376]\n", "2\n", "1200.0\n", "[18.18884796849352, 249.3629414993693, 666.8709056037376]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1181.8111520315065, -950.6370585006307, 18.18884796849443]\n", "2\n", "None\n", "[-1181.8111520315065, -950.6370585006307, 18.18884796849443]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1181.8111520315065, -950.6370585006307, 249.3629414993694]\n", "2\n", "None\n", "[-1181.8111520315065, -950.6370585006307, 249.3629414993694]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 0, 1))\n", "[-1181.8111520315065, -950.6370585006307, 635.6766553642043]\n", "2\n", "-300.0\n", "[-1181.8111520315065, -950.6370585006307, 635.6766553642043]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-881.8111520315065, -650.6370585006307, -1.9550008653872055]\n", "0\n", "None\n", "[-881.8111520315065, -650.6370585006307, -1.9550008653872055]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-815.6412870005531, -650.6370585006307, -1.9550008653872055]\n", "1\n", "None\n", "[-815.6412870005531, -650.6370585006307, -1.9550008653872055]\n", "((-4, 0, 1, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "[-815.6412870005531, -499.9999999999998, -1.9550008653872055]\n", "1\n", "None\n", "[-815.6412870005531, -499.9999999999998, -1.9550008653872055]\n", "((-4, 0, 1, 0, 0), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "[-815.6412870005531, -264.3233446357958, -1.9550008653872055]\n", "0\n", "None\n", "[-815.6412870005531, -264.3233446357958, -1.9550008653872055]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "[-650.6370585006312, -264.3233446357958, -1.9550008653872055]\n", "1\n", "None\n", "[-650.6370585006312, -264.3233446357958, -1.9550008653872055]\n", "((-5, 0, 0, 0, 1), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-650.6370585006312, -233.12909439626242, -1.9550008653872055]\n", "0\n", "None\n", "[-650.6370585006312, -233.12909439626242, -1.9550008653872055]\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-731.1740935308756, -233.12909439626242, -1.9550008653872055]\n", "0\n", "-1200.0\n", "[-731.1740935308756, -233.12909439626242, -1.9550008653872055]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-1.955000865387774, 966.8709056037376, 1198.0449991346127]\n", "1\n", "800.0\n", "[-1.955000865387774, 966.8709056037376, 1198.0449991346127]\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "[-801.9550008653878, -99.99999999999977, 398.0449991346127]\n", "1\n", "100.0\n", "[-801.9550008653878, -99.99999999999977, 398.0449991346127]\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-901.9550008653878, -350.6370585006307, 298.0449991346127]\n", "1\n", "-100.0\n", "[-901.9550008653878, -350.6370585006307, 298.0449991346127]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "[-801.9550008653878, -415.64128700055267, 398.0449991346127]\n", "0\n", "None\n", "[-801.9550008653878, -415.64128700055267, 398.0449991346127]\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "((-6, 1, 1, 0, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "[-913.686286135166, -415.64128700055267, 398.0449991346127]\n", "0\n", "None\n", "[-913.686286135166, -415.64128700055267, 398.0449991346127]\n", "((-6, 1, 1, 0, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "[-1033.129094396263, -415.64128700055267, 398.0449991346127]\n", "1\n", "None\n", "[-1033.129094396263, -415.64128700055267, 398.0449991346127]\n", "((-5, 0, 0, 1, 0), (-4, 0, 1, 0, 0), (-1, 0, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-1033.129094396263, -331.1740935308751, 398.0449991346127]\n", "0\n", "None\n", "[-1033.129094396263, -331.1740935308751, 398.0449991346127]\n", "((-5, 0, 0, 1, 0), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-1300.0000000000005, -331.1740935308751, 398.0449991346127]\n", "0\n", "-500.0\n", "[-1300.0000000000005, -331.1740935308751, 398.0449991346127]\n", "((-4, 1, 0, 0, 0), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[84.35871299944688, 168.8259064691249, 898.0449991346127]\n", "0\n", "100.0\n", "[84.35871299944688, 168.8259064691249, 898.0449991346127]\n", "((-4, 0, 1, 0, 0), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-6, 0, 0, 0, 1), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-1050.6370585006312, 68.8259064691249, 798.0449991346127]\n", "1\n", "None\n", "[-1050.6370585006312, 68.8259064691249, 798.0449991346127]\n", "((-6, 0, 0, 0, 1), (-6, 1, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-6, 0, 0, 0, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-1050.6370585006312, 149.3629414993693, 798.0449991346127]\n", "2\n", "None\n", "[-1050.6370585006312, 149.3629414993693, 798.0449991346127]\n", "((-6, 0, 0, 0, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-6, 0, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "[-1050.6370585006312, 149.3629414993693, 851.3179423647568]\n", "0\n", "-100.0\n", "[-1050.6370585006312, 149.3629414993693, 851.3179423647568]\n", "((-6, 0, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "[-248.68205763524384, 249.3629414993693, 951.3179423647568]\n", "1\n", "None\n", "[-248.68205763524384, 249.3629414993693, 951.3179423647568]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-248.68205763524384, 400.0000000000002, 951.3179423647568]\n", "2\n", "None\n", "[-248.68205763524384, 400.0000000000002, 951.3179423647568]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0))\n", "[-248.68205763524384, 400.0000000000002, 786.3137138648349]\n", "1\n", "700.0\n", "[-248.68205763524384, 400.0000000000002, 786.3137138648349]\n", "((-7, 1, 0, 0, 1), (-3, 1, 0, 0, 0), (-5, 1, 1, 0, 0))\n", "((-7, 1, 0, 0, 1), (-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0))\n", "[-948.6820576352438, -615.6412870005527, 86.31371386483488]\n", "0\n", "-500.0\n", "[-948.6820576352438, -615.6412870005527, 86.31371386483488]\n", "((-7, 1, 0, 0, 1), (-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0))\n", "[-346.81538053142776, -115.64128700055267, 586.3137138648349]\n", "2\n", "None\n", "[-346.81538053142776, -115.64128700055267, 586.3137138648349]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-5, 1, 1, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "[-346.81538053142776, -115.64128700055267, 466.8709056037376]\n", "2\n", "1000.0\n", "[-346.81538053142776, -115.64128700055267, 466.8709056037376]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-1346.8153805314278, -1115.6412870005527, -146.81538053142776]\n", "0\n", "-1100.0\n", "[-1346.8153805314278, -1115.6412870005527, -146.81538053142776]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-401.9550008653878, -15.641287000552666, 953.1846194685722]\n", "2\n", "1200.0\n", "[-401.9550008653878, -15.641287000552666, 953.1846194685722]\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-1601.9550008653878, -1215.6412870005527, -15.641287000552438]\n", "0\n", "-1300.0\n", "[-1601.9550008653878, -1215.6412870005527, -15.641287000552438]\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-4, 0, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "[-413.68628613516603, 84.35871299944733, 1284.3587129994476]\n", "1\n", "600.0\n", "[-413.68628613516603, 84.35871299944733, 1284.3587129994476]\n", "((-6, 1, 1, 0, 0), (-4, 0, 1, 0, 0), (-3, 0, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-1013.686286135166, 35.67665536420418, 684.3587129994476]\n", "2\n", "600.0\n", "[-1013.686286135166, 35.67665536420418, 684.3587129994476]\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1613.686286135166, -564.3233446357958, 249.3629414993694]\n", "1\n", "None\n", "[-1613.686286135166, -564.3233446357958, 249.3629414993694]\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "[-1613.686286135166, -799.9999999999998, 249.3629414993694]\n", "2\n", "None\n", "[-1613.686286135166, -799.9999999999998, 249.3629414993694]\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "[-1613.686286135166, -799.9999999999998, 168.82590646912513]\n", "1\n", "None\n", "[-1613.686286135166, -799.9999999999998, 168.82590646912513]\n", "((-6, 1, 1, 0, 0), (-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-1613.686286135166, -533.1290943962624, 168.82590646912513]\n", "2\n", "None\n", "[-1613.686286135166, -533.1290943962624, 168.82590646912513]\n", "((-6, 1, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-6, 1, 1, 0, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "[-1613.686286135166, -533.1290943962624, 84.35871299944756]\n", "1\n", "-700.0\n", "[-1613.686286135166, -533.1290943962624, 84.35871299944756]\n", "((-6, 1, 1, 0, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-913.686286135166, 135.67665536420418, 784.3587129994476]\n", "0\n", "None\n", "[-913.686286135166, 135.67665536420418, 784.3587129994476]\n", "((-6, 1, 1, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-2, 0, 0, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "[-801.9550008653878, 135.67665536420418, 784.3587129994476]\n", "2\n", "900.0\n", "[-801.9550008653878, 135.67665536420418, 784.3587129994476]\n", "((-2, 0, 0, 0, 0), (-7, 0, 1, 0, 1), (-3, 0, 1, 0, 0))\n", "((-2, 0, 0, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1701.9550008653878, -764.3233446357958, 49.36294149936941]\n", "0\n", "None\n", "[-1701.9550008653878, -764.3233446357958, 49.36294149936941]\n", "((-2, 0, 0, 0, 0), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-7, 1, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[-1648.6820576352438, -764.3233446357958, 49.36294149936941]\n", "0\n", "-1600.0\n", "[-1648.6820576352438, -764.3233446357958, 49.36294149936941]\n", "((-7, 1, 0, 0, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "[218.18884796849352, 835.6766553642042, 1649.3629414993693]\n", "1\n", "500.0\n", "[218.18884796849352, 835.6766553642042, 1649.3629414993693]\n", "((-8, 0, 0, 1, 1), (-7, 0, 1, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "[-281.8111520315065, 366.8709056037376, 1149.3629414993693]\n", "1\n", "100.0\n", "[-281.8111520315065, 366.8709056037376, 1149.3629414993693]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-381.8111520315065, -150.6370585006307, 1049.3629414993693]\n", "2\n", "None\n", "[-381.8111520315065, -150.6370585006307, 1049.3629414993693]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-381.8111520315065, -150.6370585006307, 818.1888479684943]\n", "2\n", "None\n", "[-381.8111520315065, -150.6370585006307, 818.1888479684943]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "[-381.8111520315065, -150.6370585006307, 551.3179423647568]\n", "2\n", "900.0\n", "[-381.8111520315065, -150.6370585006307, 551.3179423647568]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-1281.8111520315065, -1050.6370585006307, -401.9550008653873]\n", "0\n", "-1400.0\n", "[-1281.8111520315065, -1050.6370585006307, -401.9550008653873]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[184.35871299944688, 349.3629414993693, 998.0449991346127]\n", "1\n", "700.0\n", "[184.35871299944688, 349.3629414993693, 998.0449991346127]\n", "((-4, 0, 1, 0, 0), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "[-515.6412870005531, 35.67665536420418, 298.0449991346127]\n", "1\n", "-100.0\n", "[-515.6412870005531, 35.67665536420418, 298.0449991346127]\n", "((-4, 0, 1, 0, 0), (-7, 0, 1, 0, 1), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-415.6412870005531, 166.87090560373758, 398.0449991346127]\n", "2\n", "None\n", "[-415.6412870005531, 166.87090560373758, 398.0449991346127]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "[-415.6412870005531, 166.87090560373758, 286.3137138648349]\n", "2\n", "None\n", "[-415.6412870005531, 166.87090560373758, 286.3137138648349]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "[-415.6412870005531, 166.87090560373758, 553.1846194685722]\n", "2\n", "None\n", "[-415.6412870005531, 166.87090560373758, 553.1846194685722]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-415.6412870005531, 166.87090560373758, 718.1888479684943]\n", "2\n", "700.0\n", "[-415.6412870005531, 166.87090560373758, 718.1888479684943]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "[-1115.6412870005531, -533.1290943962624, 168.82590646912502]\n", "2\n", "-200.0\n", "[-1115.6412870005531, -533.1290943962624, 168.82590646912502]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "[-915.6412870005531, -333.1290943962624, -101.95500086538732]\n", "2\n", "100.0\n", "[-915.6412870005531, -333.1290943962624, -101.95500086538732]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-1, 0, 0, 0, 0))\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "[-1015.6412870005531, -433.1290943962624, -313.6862861351651]\n", "0\n", "None\n", "[-1015.6412870005531, -433.1290943962624, -313.6862861351651]\n", "((-4, 0, 1, 0, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "[-931.1740935308756, -433.1290943962624, -313.6862861351651]\n", "0\n", "None\n", "[-931.1740935308756, -433.1290943962624, -313.6862861351651]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "[-1081.8111520315065, -433.1290943962624, -313.6862861351651]\n", "0\n", "None\n", "[-1081.8111520315065, -433.1290943962624, -313.6862861351651]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "[-1246.8153805314278, -433.1290943962624, -313.6862861351651]\n", "2\n", "200.0\n", "[-1246.8153805314278, -433.1290943962624, -313.6862861351651]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-5, 1, 1, 0, 0))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "[-1446.8153805314278, -633.1290943962624, -15.641287000552552]\n", "0\n", "-1200.0\n", "[-1446.8153805314278, -633.1290943962624, -15.641287000552552]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "[-401.9550008653878, 566.8709056037376, 1184.3587129994476]\n", "2\n", "1100.0\n", "[-401.9550008653878, 566.8709056037376, 1184.3587129994476]\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-3, 0, 1, 0, 0))\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-1501.9550008653878, -533.1290943962624, 18.18884796849443]\n", "0\n", "-1200.0\n", "[-1501.9550008653878, -533.1290943962624, 18.18884796849443]\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[18.18884796849352, 666.8709056037376, 1218.1888479684944]\n", "0\n", "None\n", "[18.18884796849352, 666.8709056037376, 1218.1888479684944]\n", "((-8, 0, 0, 1, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[168.82590646912445, 666.8709056037376, 1218.1888479684944]\n", "0\n", "None\n", "[168.82590646912445, 666.8709056037376, 1218.1888479684944]\n", "((-6, 1, 0, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[249.36294149936884, 666.8709056037376, 1218.1888479684944]\n", "0\n", "100.0\n", "[249.36294149936884, 666.8709056037376, 1218.1888479684944]\n", "((-5, 0, 0, 0, 1), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-246.81538053142776, 566.8709056037376, 1118.1888479684944]\n", "1\n", "None\n", "[-246.81538053142776, 566.8709056037376, 1118.1888479684944]\n", "((-7, 0, 1, 1, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-7, 0, 1, 1, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-246.81538053142776, 149.3629414993693, 1118.1888479684944]\n", "1\n", "None\n", "[-246.81538053142776, 149.3629414993693, 1118.1888479684944]\n", "((-7, 0, 1, 1, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "[-246.81538053142776, -15.641287000552666, 1118.1888479684944]\n", "0\n", "100.0\n", "[-246.81538053142776, -15.641287000552666, 1118.1888479684944]\n", "((-7, 0, 1, 1, 0), (-4, 0, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "[-501.9550008653878, -115.64128700055267, 1018.1888479684944]\n", "1\n", "None\n", "[-501.9550008653878, -115.64128700055267, 1018.1888479684944]\n", "((-2, 0, 0, 0, 0), (-4, 0, 1, 0, 0), (-7, 0, 0, 1, 1))\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-7, 0, 0, 1, 1))\n", "[-501.9550008653878, 200.00000000000023, 1018.1888479684944]\n", "1\n", "400.0\n", "[-501.9550008653878, 200.00000000000023, 1018.1888479684944]\n", "((-2, 0, 0, 0, 0), (-3, 1, 0, 0, 0), (-7, 0, 0, 1, 1))\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "[-901.9550008653878, 66.87090560373758, 618.1888479684944]\n", "1\n", "100.0\n", "[-901.9550008653878, 66.87090560373758, 618.1888479684944]\n", "((-2, 0, 0, 0, 0), (-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1))\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-1001.9550008653878, -450.6370585006307, 518.1888479684944]\n", "0\n", "None\n", "[-1001.9550008653878, -450.6370585006307, 518.1888479684944]\n", "((-2, 0, 0, 0, 0), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-948.6820576352438, -450.6370585006307, 518.1888479684944]\n", "2\n", "None\n", "[-948.6820576352438, -450.6370585006307, 518.1888479684944]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-948.6820576352438, -450.6370585006307, 749.3629414993694]\n", "0\n", "None\n", "[-948.6820576352438, -450.6370585006307, 749.3629414993694]\n", "((-7, 1, 0, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-681.8111520315065, -450.6370585006307, 749.3629414993694]\n", "0\n", "-900.0\n", "[-681.8111520315065, -450.6370585006307, 749.3629414993694]\n", "((-8, 0, 0, 1, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "[-364.3233446357963, 449.3629414993693, 1649.3629414993693]\n", "2\n", "None\n", "[-364.3233446357963, 449.3629414993693, 1649.3629414993693]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-4, 0, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-3, 0, 1, 0, 0))\n", "[-364.3233446357963, 449.3629414993693, 1484.3587129994476]\n", "2\n", "None\n", "[-364.3233446357963, 449.3629414993693, 1484.3587129994476]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-3, 0, 1, 0, 0))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "[-364.3233446357963, 449.3629414993693, 1418.1888479684944]\n", "2\n", "1500.0\n", "[-364.3233446357963, 449.3629414993693, 1418.1888479684944]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-7, 0, 0, 1, 1))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "[-1864.3233446357963, -1050.6370585006307, -348.6820576352429]\n", "1\n", "None\n", "[-1864.3233446357963, -1050.6370585006307, -348.6820576352429]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-6, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-1864.3233446357963, -899.9999999999998, -348.6820576352429]\n", "1\n", "None\n", "[-1864.3233446357963, -899.9999999999998, -348.6820576352429]\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 1, 0, 0, 1))\n", "[-1864.3233446357963, -1215.6412870005527, -348.6820576352429]\n", "1\n", "-1000.0\n", "[-1864.3233446357963, -1215.6412870005527, -348.6820576352429]\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 1, 0, 0, 1))\n", "[-1864.3233446357963, -1215.6412870005527, -348.6820576352429]\n", "2\n", "1100.0\n", "[-1864.3233446357963, -1215.6412870005527, -348.6820576352429]\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-2964.3233446357963, -2315.6412870005524, -1346.8153805314275]\n", "1\n", "None\n", "[-2964.3233446357963, -2315.6412870005524, -1346.8153805314275]\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "[-2964.3233446357963, -2150.6370585006307, -1346.8153805314275]\n", "2\n", "None\n", "[-2964.3233446357963, -2150.6370585006307, -1346.8153805314275]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-6, 0, 1, 1, 0))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "[-2964.3233446357963, -2150.6370585006307, -1501.955000865387]\n", "1\n", "None\n", "[-2964.3233446357963, -2150.6370585006307, -1501.955000865387]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-1, 0, 0, 0, 0))\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "[-2964.3233446357963, -1999.9999999999998, -1501.955000865387]\n", "2\n", "None\n", "[-2964.3233446357963, -1999.9999999999998, -1501.955000865387]\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-1, 0, 0, 0, 0))\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "[-2964.3233446357963, -1999.9999999999998, -1448.682057635243]\n", "1\n", "None\n", "[-2964.3233446357963, -1999.9999999999998, -1448.682057635243]\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-6, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 1, 0, 0, 1))\n", "[-2964.3233446357963, -2315.6412870005524, -1448.682057635243]\n", "2\n", "None\n", "[-2964.3233446357963, -2315.6412870005524, -1448.682057635243]\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 1, 0, 0, 1))\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "[-2964.3233446357963, -2315.6412870005524, -1346.8153805314275]\n", "2\n", "-400.0\n", "[-2964.3233446357963, -2315.6412870005524, -1346.8153805314275]\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0))\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2564.3233446357963, -1915.6412870005524, -13.686286135164892]\n", "1\n", "0.0\n", "[-2564.3233446357963, -1915.6412870005524, -13.686286135164892]\n", "((-8, 0, 1, 0, 1), (-4, 0, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-4, 1, 1, 0, 0))\n", "[-2564.3233446357963, -1750.6370585006305, -13.686286135164892]\n", "1\n", "-200.0\n", "[-2564.3233446357963, -1750.6370585006305, -13.686286135164892]\n", "((-8, 0, 1, 0, 1), (-5, 0, 0, 0, 1), (-4, 1, 1, 0, 0))\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2364.3233446357963, -1399.9999999999995, 186.3137138648351]\n", "1\n", "-100.0\n", "[-2364.3233446357963, -1399.9999999999995, 186.3137138648351]\n", "((-8, 0, 1, 0, 1), (-3, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-8, 0, 1, 0, 1), (-3, 0, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2264.3233446357963, -415.6412870005523, 286.3137138648351]\n", "0\n", "None\n", "[-2264.3233446357963, -415.6412870005523, 286.3137138648351]\n", "((-8, 0, 1, 0, 1), (-3, 0, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-3, 0, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-2113.686286135166, -415.6412870005523, 286.3137138648351]\n", "1\n", "-200.0\n", "[-2113.686286135166, -415.6412870005523, 286.3137138648351]\n", "((-6, 1, 1, 0, 0), (-3, 0, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "((-6, 1, 1, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1913.686286135166, 100.00000000000034, 486.3137138648351]\n", "0\n", "None\n", "[-1913.686286135166, 100.00000000000034, 486.3137138648351]\n", "((-6, 1, 1, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1801.9550008653878, 100.00000000000034, 486.3137138648351]\n", "0\n", "None\n", "[-1801.9550008653878, 100.00000000000034, 486.3137138648351]\n", "((-2, 0, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1748.6820576352438, 100.00000000000034, 486.3137138648351]\n", "0\n", "0.0\n", "[-1748.6820576352438, 100.00000000000034, 486.3137138648351]\n", "((-7, 1, 0, 0, 1), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "[-1100.0000000000002, 100.00000000000034, 486.3137138648351]\n", "1\n", "200.0\n", "[-1100.0000000000002, 100.00000000000034, 486.3137138648351]\n", "((-3, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 1, 0, 0))\n", "((-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "[-1300.0000000000002, -331.17409353087476, 286.3137138648351]\n", "0\n", "-400.0\n", "[-1300.0000000000002, -331.17409353087476, 286.3137138648351]\n", "((-3, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "((-3, 0, 1, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "[-15.641287000553007, 68.82590646912524, 686.3137138648351]\n", "2\n", "None\n", "[-15.641287000553007, 68.82590646912524, 686.3137138648351]\n", "((-3, 0, 1, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "((-3, 0, 1, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-15.641287000553007, 68.82590646912524, 566.8709056037378]\n", "0\n", "-100.0\n", "[-15.641287000553007, 68.82590646912524, 566.8709056037378]\n", "((-3, 0, 1, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[18.18884796849386, 168.82590646912524, 666.8709056037378]\n", "0\n", "-200.0\n", "[18.18884796849386, 168.82590646912524, 666.8709056037378]\n", "((-7, 0, 0, 1, 1), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[53.18461946857178, 368.82590646912524, 866.8709056037378]\n", "2\n", "None\n", "[53.18461946857178, 368.82590646912524, 866.8709056037378]\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[53.18461946857178, 368.82590646912524, 600.0000000000003]\n", "2\n", "None\n", "[53.18461946857178, 368.82590646912524, 600.0000000000003]\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "[53.18461946857178, 368.82590646912524, 1484.3587129994476]\n", "2\n", "1700.0\n", "[53.18461946857178, 368.82590646912524, 1484.3587129994476]\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "[-1646.8153805314282, -1331.1740935308749, 100.00000000000023]\n", "0\n", "-1500.0\n", "[-1646.8153805314282, -1331.1740935308749, 100.00000000000023]\n", "((-6, 0, 1, 1, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "((-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "[-248.6820576352436, 168.82590646912513, 1600.0000000000002]\n", "0\n", "-200.0\n", "[-248.6820576352436, 168.82590646912513, 1600.0000000000002]\n", "((-6, 1, 0, 0, 1), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "[-101.95500086538777, 368.82590646912513, 1800.0000000000002]\n", "2\n", "1500.0\n", "[-101.95500086538777, 368.82590646912513, 1800.0000000000002]\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 0, 1))\n", "[-1601.9550008653878, -1131.1740935308749, 149.36294149936953]\n", "2\n", "-100.0\n", "[-1601.9550008653878, -1131.1740935308749, 149.36294149936953]\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 0, 1))\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "[-1501.9550008653878, -1031.1740935308749, 84.35871299944762]\n", "2\n", "-200.0\n", "[-1501.9550008653878, -1031.1740935308749, 84.35871299944762]\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "[-1301.9550008653878, -831.1740935308749, -333.1290943962624]\n", "2\n", "200.0\n", "[-1301.9550008653878, -831.1740935308749, -333.1290943962624]\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 1, 0))\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-1501.9550008653878, -1031.1740935308749, -799.9999999999999]\n", "2\n", "-200.0\n", "[-1501.9550008653878, -1031.1740935308749, -799.9999999999999]\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "[-1301.9550008653878, -831.1740935308749, -750.6370585006307]\n", "1\n", "-900.0\n", "[-1301.9550008653878, -831.1740935308749, -750.6370585006307]\n", "((-1, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "((-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "[-401.9550008653878, -15.641287000552438, 149.3629414993693]\n", "0\n", "None\n", "[-401.9550008653878, -15.641287000552438, 149.3629414993693]\n", "((-1, 0, 0, 0, 0), (-3, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 1, 0, 0, 1), (-3, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "[-348.6820576352436, -15.641287000552438, 149.3629414993693]\n", "0\n", "None\n", "[-348.6820576352436, -15.641287000552438, 149.3629414993693]\n", "((-6, 1, 0, 0, 1), (-3, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "[-246.81538053142822, -15.641287000552438, 149.3629414993693]\n", "1\n", "-100.0\n", "[-246.81538053142822, -15.641287000552438, 149.3629414993693]\n", "((-6, 0, 1, 1, 0), (-3, 0, 1, 0, 0), (-4, 0, 0, 0, 1))\n", "((-6, 0, 1, 1, 0), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "[-146.81538053142822, 18.18884796849443, 249.3629414993693]\n", "0\n", "None\n", "[-146.81538053142822, 18.18884796849443, 249.3629414993693]\n", "((-6, 0, 1, 1, 0), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "((-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "[-533.1290943962629, 18.18884796849443, 249.3629414993693]\n", "1\n", "100.0\n", "[-533.1290943962629, 18.18884796849443, 249.3629414993693]\n", "((-4, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-4, 0, 0, 0, 1))\n", "((-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "[-633.1290943962629, 68.82590646912513, 149.3629414993693]\n", "2\n", "None\n", "[-633.1290943962629, 68.82590646912513, 149.3629414993693]\n", "((-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-4, 0, 0, 0, 1))\n", "((-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "[-633.1290943962629, 68.82590646912513, 300.0000000000001]\n", "1\n", "200.0\n", "[-633.1290943962629, 68.82590646912513, 300.0000000000001]\n", "((-4, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-2, 1, 0, 0, 0))\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-2, 1, 0, 0, 0))\n", "[-833.1290943962629, -446.81538053142765, 100.00000000000011]\n", "0\n", "-700.0\n", "[-833.1290943962629, -446.81538053142765, 100.00000000000011]\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-2, 1, 0, 0, 0))\n", "((-5, 1, 1, 0, 0), (-6, 0, 1, 1, 0), (-2, 1, 0, 0, 0))\n", "[-13.686286135165574, 253.18461946857235, 800.0000000000001]\n", "2\n", "None\n", "[-13.686286135165574, 253.18461946857235, 800.0000000000001]\n", "((-5, 1, 1, 0, 0), (-6, 0, 1, 1, 0), (-2, 1, 0, 0, 0))\n", "((-5, 1, 1, 0, 0), (-6, 0, 1, 1, 0), (-3, 0, 0, 1, 0))\n", "[-13.686286135165574, 253.18461946857235, 1066.8709056037376]\n", "2\n", "1200.0\n", "[-13.686286135165574, 253.18461946857235, 1066.8709056037376]\n", "((-5, 1, 1, 0, 0), (-6, 0, 1, 1, 0), (-3, 0, 0, 1, 0))\n", "((-5, 1, 1, 0, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "[-1213.6862861351656, -946.8153805314276, 484.35871299944756]\n", "0\n", "None\n", "[-1213.6862861351656, -946.8153805314276, 484.35871299944756]\n", "((-5, 1, 1, 0, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "((-1, 0, 0, 0, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "[-1101.9550008653878, -946.8153805314276, 484.35871299944756]\n", "0\n", "None\n", "[-1101.9550008653878, -946.8153805314276, 484.35871299944756]\n", "((-1, 0, 0, 0, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "[-1333.1290943962629, -946.8153805314276, 484.35871299944756]\n", "0\n", "-1300.0\n", "[-1333.1290943962629, -946.8153805314276, 484.35871299944756]\n", "((-4, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "[-64.32334463579627, 353.18461946857235, 1784.3587129994476]\n", "0\n", "100.0\n", "[-64.32334463579627, 353.18461946857235, 1784.3587129994476]\n", "((-7, 0, 1, 0, 1), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "[-715.6412870005531, 253.18461946857235, 1684.3587129994476]\n", "2\n", "None\n", "[-715.6412870005531, 253.18461946857235, 1684.3587129994476]\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-2, 0, 1, 0, 0))\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "[-715.6412870005531, 253.18461946857235, 1453.1846194685725]\n", "0\n", "200.0\n", "[-715.6412870005531, 253.18461946857235, 1453.1846194685725]\n", "((-4, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "[-1533.129094396263, 53.18461946857235, 1253.1846194685725]\n", "2\n", "None\n", "[-1533.129094396263, 53.18461946857235, 1253.1846194685725]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-6, 0, 0, 1, 1))\n", "[-1533.129094396263, 53.18461946857235, 1418.1888479684944]\n", "2\n", "None\n", "[-1533.129094396263, 53.18461946857235, 1418.1888479684944]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-6, 0, 0, 1, 1))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-4, 1, 0, 1, 0))\n", "[-1533.129094396263, 53.18461946857235, 1568.8259064691251]\n", "2\n", "900.0\n", "[-1533.129094396263, 53.18461946857235, 1568.8259064691251]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-4, 1, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-3, 0, 0, 1, 0))\n", "[-2433.129094396263, -846.8153805314276, -33.12909439626242]\n", "2\n", "100.0\n", "[-2433.129094396263, -846.8153805314276, -33.12909439626242]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-3, 0, 0, 1, 0))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (0, 0, 0, 0, 0))\n", "[-2533.129094396263, -946.8153805314276, 98.04499913461268]\n", "1\n", "None\n", "[-2533.129094396263, -946.8153805314276, 98.04499913461268]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (0, 0, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-2533.129094396263, -1101.9550008653873, 98.04499913461268]\n", "2\n", "200.0\n", "[-2533.129094396263, -1101.9550008653873, 98.04499913461268]\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "[-2733.129094396263, -1301.9550008653873, 53.184619468572436]\n", "1\n", "None\n", "[-2733.129094396263, -1301.9550008653873, 53.184619468572436]\n", "((-5, 0, 0, 1, 0), (-1, 0, 0, 0, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-2733.129094396263, -1533.1290943962624, 53.184619468572436]\n", "1\n", "None\n", "[-2733.129094396263, -1533.1290943962624, 53.184619468572436]\n", "((-5, 0, 0, 1, 0), (-4, 0, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 0, 1, 0), (-6, 1, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "[-2733.129094396263, -2031.174093530875, 53.184619468572436]\n", "1\n", "None\n", "[-2733.129094396263, -2031.174093530875, 53.184619468572436]\n", "((-5, 0, 0, 1, 0), (-6, 1, 0, 1, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 0, 1, 0), (-4, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "[-2733.129094396263, -2115.6412870005524, 53.184619468572436]\n", "1\n", "-600.0\n", "[-2733.129094396263, -2115.6412870005524, 53.184619468572436]\n", "((-5, 0, 0, 1, 0), (-4, 0, 1, 0, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "[-2133.129094396263, -546.8153805314275, 653.1846194685725]\n", "0\n", "None\n", "[-2133.129094396263, -546.8153805314275, 653.1846194685725]\n", "((-5, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "((-5, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "[-2715.6412870005533, -546.8153805314275, 653.1846194685725]\n", "0\n", "None\n", "[-2715.6412870005533, -546.8153805314275, 653.1846194685725]\n", "((-5, 0, 1, 0, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "((-6, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "[-3333.1290943962626, -546.8153805314275, 653.1846194685725]\n", "1\n", "100.0\n", "[-3333.1290943962626, -546.8153805314275, 653.1846194685725]\n", "((-6, 0, 0, 1, 0), (-6, 0, 1, 1, 0), (-5, 0, 1, 1, 0))\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-3433.1290943962626, -481.81115203150546, 553.1846194685725]\n", "0\n", "None\n", "[-3433.1290943962626, -481.81115203150546, 553.1846194685725]\n", "((-6, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-3850.6370585006316, -481.81115203150546, 553.1846194685725]\n", "0\n", "-600.0\n", "[-3850.6370585006316, -481.81115203150546, 553.1846194685725]\n", "((-7, 0, 0, 0, 1), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-6, 0, 1, 0, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-3415.6412870005533, 118.18884796849454, 1153.1846194685725]\n", "0\n", "100.0\n", "[-3415.6412870005533, 118.18884796849454, 1153.1846194685725]\n", "((-6, 0, 1, 0, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "[-4133.129094396263, 18.188847968494542, 1053.1846194685725]\n", "2\n", "None\n", "[-4133.129094396263, 18.188847968494542, 1053.1846194685725]\n", "((-7, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-5, 0, 1, 1, 0))\n", "((-7, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-6, 0, 0, 1, 1))\n", "[-4133.129094396263, 18.188847968494542, 1218.1888479684944]\n", "1\n", "300.0\n", "[-4133.129094396263, 18.188847968494542, 1218.1888479684944]\n", "((-7, 0, 0, 1, 0), (-7, 0, 0, 1, 1), (-6, 0, 0, 1, 1))\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "[-4433.129094396263, -131.17409353087476, 918.1888479684944]\n", "2\n", "None\n", "[-4433.129094396263, -131.17409353087476, 918.1888479684944]\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-6, 0, 0, 1, 1))\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-4, 1, 0, 1, 0))\n", "[-4433.129094396263, -131.17409353087476, 1068.8259064691251]\n", "2\n", "None\n", "[-4433.129094396263, -131.17409353087476, 1068.8259064691251]\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-4, 1, 0, 1, 0))\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "[-4433.129094396263, -131.17409353087476, 1300.0000000000002]\n", "0\n", "-400.0\n", "[-4433.129094396263, -131.17409353087476, 1300.0000000000002]\n", "((-7, 0, 0, 1, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "((-4, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "[-3801.955000865388, 268.82590646912524, 1700.0000000000002]\n", "2\n", "None\n", "[-3801.955000865388, 268.82590646912524, 1700.0000000000002]\n", "((-4, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-1, 1, 0, 0, 0))\n", "((-4, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 0, 1))\n", "[-3801.955000865388, 268.82590646912524, 1549.3629414993695]\n", "2\n", "1200.0\n", "[-3801.955000865388, 268.82590646912524, 1549.3629414993695]\n", "((-4, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-3, 0, 0, 0, 1))\n", "((-4, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "[-5001.955000865388, -931.1740935308748, 184.35871299944756]\n", "0\n", "-1300.0\n", "[-5001.955000865388, -931.1740935308748, 184.35871299944756]\n", "((-4, 0, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "[-3000.000000000001, 368.82590646912524, 1484.3587129994476]\n", "2\n", "1400.0\n", "[-3000.000000000001, 368.82590646912524, 1484.3587129994476]\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-2, 0, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 0, 1, 0))\n", "[-4400.000000000001, -1031.1740935308749, 168.82590646912513]\n", "1\n", "None\n", "[-4400.000000000001, -1031.1740935308749, 168.82590646912513]\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 0, 1, 0))\n", "((-5, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "[-4400.000000000001, -799.9999999999998, 168.82590646912513]\n", "2\n", "-100.0\n", "[-4400.000000000001, -799.9999999999998, 168.82590646912513]\n", "((-5, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (-4, 1, 0, 1, 0))\n", "((-5, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "[-4300.000000000001, -699.9999999999998, -148.68205763524315]\n", "2\n", "-100.0\n", "[-4300.000000000001, -699.9999999999998, -148.68205763524315]\n", "((-5, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (-5, 1, 0, 0, 1))\n", "((-5, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "[-4200.000000000001, -599.9999999999998, -101.95500086538726]\n", "1\n", "None\n", "[-4200.000000000001, -599.9999999999998, -101.95500086538726]\n", "((-5, 1, 0, 0, 0), (-2, 1, 0, 0, 0), (0, 0, 0, 0, 0))\n", "((-5, 1, 0, 0, 0), (-4, 0, 0, 0, 1), (0, 0, 0, 0, 0))\n", "[-4200.000000000001, -750.6370585006306, -101.95500086538726]\n", "1\n", "None\n", "[-4200.000000000001, -750.6370585006306, -101.95500086538726]\n", "((-5, 1, 0, 0, 0), (-4, 0, 0, 0, 1), (0, 0, 0, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (0, 0, 0, 0, 0))\n", "[-4200.000000000001, -831.1740935308749, -101.95500086538726]\n", "2\n", "100.0\n", "[-4200.000000000001, -831.1740935308749, -101.95500086538726]\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (0, 0, 0, 0, 0))\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "[-4300.000000000001, -931.1740935308749, -313.686286135165]\n", "1\n", "-700.0\n", "[-4300.000000000001, -931.1740935308749, -313.686286135165]\n", "((-5, 1, 0, 0, 0), (-5, 1, 0, 1, 0), (-4, 1, 1, 0, 0))\n", "((-5, 1, 0, 0, 0), (-3, 0, 1, 0, 0), (-4, 1, 1, 0, 0))\n", "[-3600.000000000001, -315.64128700055244, 386.313713864835]\n" ] } ], "source": [ "path = stochastic_hamiltonian(root)\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))))" ] }, { "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": {}, "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 }