{ "cells": [ { "cell_type": "code", "execution_count": 117, "id": "806f6f69-1e0b-4d34-aac9-695c8531cdb1", "metadata": {}, "outputs": [], "source": [ "from itertools import chain, combinations, permutations, product\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", " def reverse_dict(dict):\n", " rev_dict = deepcopy(dict)\n", " rev_trans = tuple(t * -1 for t in rev_dict['transposition'])\n", " rev_dict['transposition'] = rev_trans\n", " rev_dict['movements'] = {\n", " value['destination']:{\n", " 'destination':key, \n", " 'cent_difference':value['cent_difference']\n", " } for key, value in rev_dict['movements'].items()}\n", " return rev_dict\n", "\n", " def is_directly_tunable(intersection, diff):\n", " return max([len(collapse_pitch(pitch_difference(d, set(list(intersection)[0])))) for d in diff]) == 1\n", "\n", " def edge_data(chords):\n", " [expanded_base, expanded_comp] = [set(expand_chord(chord)) for chord in chords]\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", " rev_trans = tuple(t * -1 for t in trans)\n", " expanded_comp_transposed = set(transpose_chord(expanded_comp, trans))\n", " intersection = expanded_base & expanded_comp_transposed\n", " [diff1, diff2] = [list(chord - intersection) for chord in [expanded_base, expanded_comp_transposed]]\n", " symdiff_len = (len(diff1) + len(diff2))\n", " if (min_symdiff <= symdiff_len <= max_symdiff):\n", " base_map = {val: {'destination':transpose_pitch(val, rev_trans), 'cent_difference': 0} for val in intersection}\n", " edge_dict = {\n", " 'transposition': trans, \n", " 'symmetric_difference': symdiff_len, \n", " 'is_directly_tunable': is_directly_tunable(intersection, diff2)\n", " }\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", " edge_dict['movements'] = base_map | appended_map\n", " edges.append((tuple(expanded_base), tuple(expanded_comp), edge_dict))\n", " edges.append((tuple(expanded_comp), tuple(expanded_base), reverse_dict(edge_dict)))\n", " return edges if edges != [] else None\n", " \n", " return list(chain(*[e for c in combinations(chords, 2) if (e := edge_data(c)) is not None]))\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 reconcile_path(path):\n", " reconciled_path = [[tuple(0 for d in dims), sorted([p for p in list(path[0][2]['movements'].keys())], key=hs_array_to_fr)]] \n", " #print(reconciled_path)\n", " for cdx in range(len(path)-1):\n", " movements = path[cdx][2]['movements']\n", " next_chord = [movements[p]['destination'] for p in reconciled_path[-1][1]]\n", " trans = path[cdx][2]['transposition']\n", " reconciled_path.append([trans, next_chord])\n", " return reconciled_path\n", "\n", "def path_to_chords(path):\n", " current_root = Fraction(1, 1)\n", " chords = []\n", " for trans, points in path:\n", " #print(trans)\n", " current_root = current_root * hs_array_to_fr(trans)\n", " chord = [float(current_root * hs_array_to_fr(p)) if p is not None else None for p in points]\n", " chords.append(chord)\n", " return 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", " file.write(content)\n", " file.close()" ] }, { "cell_type": "code", "execution_count": 118, "id": "4e3ef738-7f64-47c3-9129-0450fd031375", "metadata": {}, "outputs": [], "source": [ "dims = (2, 3, 5, 7)\n", "root = (0, 0, 0, 0)\n", "chord = (root,)\n", "#%timeit chords(chord, root, 4, 4)\n", "#print(len(chord_set))\n", "chord_set = chords(chord, root, 3, 3)\n", "#edge_set = edges(chord_set, 2, 2, 3)\n", "#edge_set\n", "#%timeit edges(chord_set, 2, 2, 4)\n", "#print(len(edge_set))\n", "graph = generate_graph(chord_set, 2, 2, 3)" ] }, { "cell_type": "code", "execution_count": 124, "id": "aea5215c-8551-4685-b761-11c2dc74cf22", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "125" ] }, "execution_count": 124, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from random import choice, choices\n", "\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", " return [(1000 if ((max_cent_diff(e) < 200) and (min_cent_diff(e)) > 50) else 1) for e in edges]\n", "\n", " \n", " def hamiltonian_weights(edges):\n", " return [(10 if e[1] not in [path_edge[0] for path_edge in path] else 1) for e in edges] \n", "\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", " return [(2 if is_contrary(e) else 1) for e in edges]\n", "\n", " \n", " def is_directly_tunable_weights(edges):\n", " return [(10 if e[2]['is_directly_tunable'] else 1) for e in edges]\n", "\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", " #print(source_order != destination_order)\n", " return source_order != destination_order\n", " \n", " return [(10 if not has_voice_crossing(e) else 0) for e in edges]\n", " \n", " \n", " check_graph = graph.copy()\n", " #next_node = choice(list(graph.nodes()))\n", " next_node = list(graph.nodes())[0]\n", " check_graph.remove_node(next_node)\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", " #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", " 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", " #weights = [reduce(mul, x) for x in [movement_size_weights(out_edges), hamiltonian_weights(out_edges)]]\n", " #print(weights)\n", " edge = choices(out_edges, weights=weights)[0]\n", " #edge = random.choice(out_edges)\n", " next_node = edge[1]\n", " path.append(edge)\n", " if next_node in check_graph.nodes:\n", " check_graph.remove_node(next_node)\n", " return path\n", " \n", "stochastic_ham = stochastic_hamiltonian(graph)\n", "path = reconcile_path(stochastic_ham)\n", "write_chord_sequence(path_to_chords(path))\n", "len(path)" ] }, { "cell_type": "code", "execution_count": 122, "id": "472e3033-cf7f-43da-9396-df6c6ee426b8", "metadata": {}, "outputs": [], "source": [ "def reverse_movements(movements):\n", " return {value['destination']:{'destination':key, 'cent_difference':value['cent_difference']} for key, value in movements.items()}\n", "\n", "def is_directly_tunable(intersection, diff):\n", " return max([len(collapse_pitch(pitch_difference(d, set(list(intersection)[0])))) for d in diff]) == 1\n", "\n", "def edge_data(chords, min_symdiff, max_symdiff, max_chord_size):\n", " [expanded_base, expanded_comp] = [expand_chord(chord) for chord in chords]\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", " tunability = is_directly_tunable(intersection, diff2)\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", " edges.append((tuple(expanded_base), tuple(expanded_comp), {\n", " 'transposition': trans,\n", " 'symmetric_difference': symdiff_len, \n", " 'is_directly_tunable': tunability,\n", " 'movements': base_map | appended_map\n", " }))\n", " edges.append((tuple(expanded_comp), tuple(expanded_base), {\n", " 'transposition': rev_trans,\n", " 'symmetric_difference': symdiff_len, \n", " 'is_directly_tunable': tunability,\n", " 'movements': base_map_rev | reverse_movements(appended_map)\n", " }))\n", " return edges if edges != [] else None\n", " \n", "def edges(chords, min_symdiff, max_symdiff, max_chord_size): \n", " return list(chain(*[e for c in combinations(chords, 2) if (e := edge_data(c, min_symdiff, max_symdiff, max_chord_size)) is not None]))" ] }, { "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": 127, "id": "7f141bf5-fdcb-4c01-a10b-3e86d3d1a7b4", "metadata": {}, "outputs": [], "source": [ "chord_set = chords(chord, root, 5, 5)\n", "#edges(chord_set, 2, 2, 3)" ] }, { "cell_type": "code", "execution_count": null, "id": "88850b8c-a743-44d0-b863-7cd9066690d9", "metadata": {}, "outputs": [], "source": [ "lprun -f edge_data edges(chord_set, 2, 2, 5)" ] }, { "cell_type": "code", "execution_count": 121, "id": "a801362e-2b10-4c91-841b-9feae4b1be5c", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "[(((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, -1, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -266.87090560373764}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1088.2687147302222}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': -155.13962033395967}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -848.6619009265847}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 351.33809907341526}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 1200.0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 111.73128526977791}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1044.8603796660402}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 427.3725722703306}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1431.1740935308749}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1319.442808261097}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 1115.5328065303222}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 196.1984787394557}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 729.2190926654876}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': 1003.8015212605446}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-4, 0, 2, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -155.13962033395978}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 1319.442808261097}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 119.44280826109726}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (1, -1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -1, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1115.5328065303222}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 462.34818706174997}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -231.1740935308748}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (2, -1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -84.46719346967784}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 1, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -470.78090733451245}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, 1, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -351.33809907341526}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, -1, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 848.6619009265848}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 155.13962033395984}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1003.8015212605444}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -884.3587129994473}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 2, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -196.1984787394554}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (2, 0, -2, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, 0, -2, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -119.44280826109718}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 84.4671934696778}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': 386.3137138648348}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -772.6274277296694}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 933.1290943962623}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 315.64128700055267}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (5, 0, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1355.1396203339596}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((3, 0, 0, -1), (1, 0, 1, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 1466.8709056037371}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1115.5328065303224}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': -70.67242686428199}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1311.7312852697778}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -111.73128526977763}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 1382.40371213406}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1270.672426864282}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -498.0449991346125}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 996.0899982692251}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -182.4037121340599}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 111.7312852697778}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1382.4037121340598}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': 1270.672426864282}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 111.73128526977776}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 0, 2, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 1586.3137138648349}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1355.1396203339598}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -772.6274277296695}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (4, -1, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 386.3137138648348}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (4, -1, -1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1088.2687147302222}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': -155.13962033395978}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 729.2190926654876}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -2, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 182.40371213406007}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-1, 2, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -203.91000173077495}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-3, 1, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (2, -1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -84.46719346967784}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 1115.5328065303222}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': -617.48780739571}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, -1, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (5, 0, -2, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 70.67242686428197}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (3, 1, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (5, 0, -2, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -653.1846194685724}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': 653.1846194685722}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 84.46719346967757}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 1200.0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (0, -1, 1, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 933.1290943962623}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-7, 1, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (6, 0, 0, -2), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 239.60681380363727}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (7, -1, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 1439.6068138036374}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 1200.0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 1515.641287000553}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-7, 1, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -342.90537880065284}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (7, -1, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -111.73128526977777}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 462.3481870617499}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, 1, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -231.1740935308751}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1284.467193469678}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 342.90537880065295}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 27.26409180010006}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 498.0449991346125}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -857.0946211993471}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 266.87090560373747}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (-3, 2, 0, 0),\n", " 'cent_difference': -266.8709056037376}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-6, 2, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (5, -1, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -27.264091800100235}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (6, -2, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 857.0946211993472}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -155.1396203339595}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 617.4878073957098}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-2, 1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 84.46719346967797}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (2, -1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 203.91000173077484}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 968.8259064691249}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 1172.7359081998998}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -239.6068138036374}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -933.1290943962625}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 315.6412870005529}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-5, 0, 1, 1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -737.65181293825}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -84.46719346967757}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 1403.9100017307749}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, 1, 0, -1), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -701.9550008653875}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 1, 0, 1): {'destination': (-5, 0, 0, 2),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -266.87090560373764}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-5, 0, 0, 2): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -582.5121926042901}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 1200.0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 506.47771940737493}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 960.3931861963625}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 266.8709056037376}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 1276.034473196915}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 582.5121926042902}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -582.5121926042904}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1276.0344731969153}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (3, 0, 1, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -351.33809907341526}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, -1, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1044.8603796660404}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1164.3031879271375}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -470.78090733451245}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1044.8603796660402}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 351.3380990734154}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -266.87090560373764}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -960.3931861963625}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 617.4878073957096}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -76.03447319691514}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -155.13962033395978}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -848.6619009265847}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (4, 1, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -35.69681207286248}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-4, -1, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -729.2190926654876}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 729.2190926654876}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 35.696812072862485}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 933.1290943962623}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 239.60681380363746}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (8, 0, -1, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 76.03447319691512}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-8, 0, 1, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -617.4878073957098}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 1164.3031879271377}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 470.78090733451234}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (8, 0, 0, -3),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, 0, -2): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -506.4777194073748}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-8, 0, 0, 3),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (6, 0, 0, -2),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (5, 0, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (6, 0, 0, -2): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((6, 0, 0, -2), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 155.13962033395984}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': -239.60681380363735}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 76.03447319691531}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1782.5121926042902}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1551.3380990734154}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1670.7809073345124}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': -155.13962033395956}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 470.78090733451245}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': -76.03447319691523}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 239.6068138036374}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1466.8709056037374}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -582.51219260429}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 351.33809907341526}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1355.1396203339596}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1235.6968120728625}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 582.5121926042904}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -470.78090733451245}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -266.87090560373747}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1123.9655268030847}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 266.87090560373747}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 35.696812072862315}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': -35.6968120728626}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 1200.0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (-2, 0, 0, 1), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-5, 0, 0, 2),\n", " 'cent_difference': 506.47771940737493}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (5, 0, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1706.477719407375}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-5, 0, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': -155.13962033395956}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 1200.0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': -84.46719346967757}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 155.13962033395975}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -470.78090733451245}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 315.6412870005526}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': -196.19847873945525}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-4, 0, 2, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1355.1396203339596}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': -231.17409353087507}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 119.4428082610973}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': 84.46719346967757}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1080.5571917389027}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -737.6518129382499}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1284.4671934696776}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(1, 1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1670.7809073345124}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 196.19847873945542}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 1355.1396203339598}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1551.3380990734154}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': -351.33809907341526}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 427.3725722703305}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1396.1984787394554}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (5, 0, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(5, 0, -2, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': -813.6862861351651}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 111.73128526977763}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': -119.44280826109753}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -266.87090560373747}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-5, 0, 0, 2),\n", " 'cent_difference': 351.3380990734151}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1044.8603796660402}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 315.64128700055267}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1542.9053788006527}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1311.7312852697778}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1431.174093530875}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -155.13962033395978}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 84.4671934696778}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 617.4878073957096}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 933.1290943962623}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 1227.2640918001002}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -266.87090560373764}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (7, -1, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -239.60681380363758}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-7, 1, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 342.90537880065267}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (6, -2, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 27.26409180010014}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-6, 2, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -84.46719346967784}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 960.3931861963625}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 266.87090560373747}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1227.2640918001002}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -342.9053788006527}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1115.5328065303224}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 498.04499913461245}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -996.0899982692251}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 462.34818706174997}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -231.1740935308751}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -27.26409180010012}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -884.3587129994473}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 1200.0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 203.91000173077475}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (5, 0, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1466.8709056037376}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((5, -1, 0, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -111.73128526977763}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -729.2190926654876}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 546.8153805314278}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 84.4671934696778}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -266.87090560373747}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -427.3725722703305}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 203.91000173077498}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -111.73128526977791}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 182.4037121340598}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1311.7312852697778}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -653.1846194685722}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1284.4671934696778}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -701.9550008653875}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1017.5962878659403}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -182.40371213405956}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1311.7312852697778}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 1, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1129.327573135718}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': -84.4671934696778}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 1200.0}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 1, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': -546.815380531428}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 470.78090733451245}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': -70.67242686428204}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -582.5121926042904}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 155.13962033395956}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 111.73128526977776}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -386.3137138648347}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -617.48780739571}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 658.5466658012053}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 196.19847873945542}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 70.67242686428199}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -155.13962033395984}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -315.6412870005529}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 315.6412870005526}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': -41.0588584054957}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-4, 0, 2, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -541.4533341987947}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 274.58242859505685}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -925.4175714049431}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -70.67242686428193}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -582.5121926042904}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1129.327573135718}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(1, 1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1515.641287000553}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1396.1984787394558}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': -196.1984787394557}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 582.51219260429}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 41.058858405495585}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 1200.0}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, 0, -2, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1241.0588584054958}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (5, 0, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(5, 0, -2, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': -658.5466658012056}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -111.73128526977791}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -274.5824285950571}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 1276.034473196915}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 582.5121926042904}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1858.5466658012056}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 813.6862861351653}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1627.3725722703307}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1746.8153805314278}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 462.34818706174997}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': -231.17409353087487}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 933.1290943962623}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (8, 0, -1, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 76.03447319691512}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-8, 0, 1, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-5, 0, 1, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 546.815380531428}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1542.9053788006527}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -658.5466658012053}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1431.1740935308749}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1311.7312852697778}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 1200.0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 658.5466658012054}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -546.8153805314278}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -342.9053788006528}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': -111.73128526977791}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (5, 0, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1782.5121926042902}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 342.90537880065267}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (6, 0, -1, -1), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 231.17409353087498}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': -462.34818706174997}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 111.73128526977776}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -813.6862861351652}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1627.3725722703305}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -342.9053788006528}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -729.2190926654873}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 315.6412870005529}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 1200.0}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (5, 0, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 427.3725722703304}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (4, 1, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 546.815380531428}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, -1, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': -76.03447319691531}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': -617.4878073957098}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 1311.7312852697778}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 1515.641287000553}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (8, 0, -2, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 658.5466658012054}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-8, 0, 2, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (3, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 1746.8153805314282}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (8, 0, -1, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(6, 0, -1, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 76.03447319691512}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-8, 0, 1, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (6, 0, -1, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (6, 0, -1, -1): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -933.1290943962624}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((6, 0, -1, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (2, 1, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -119.44280826109728}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-1, 1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -351.33809907341526}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1044.8603796660404}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1396.1984787394556}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 119.44280826109718}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -737.65181293825}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -266.87090560373736}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (5, -1, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 84.46719346967797}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (2, -1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (5, -1, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 968.8259064691249}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 155.13962033395956}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -2, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (1, 0, 1, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 196.19847873945548}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-2, 0, 2, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (1, 0, 1, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 315.6412870005529}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 386.31371386483465}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': -155.13962033395984}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 1080.5571917389027}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 1284.467193469678}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 427.3725722703304}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-5, 0, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-5, 0, 1, 1): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 1515.641287000553}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, -1, 1): {'destination': (-5, 0, 0, 2),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -155.13962033395978}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-5, 0, 0, 2): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -470.7809073345125}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (0, 0, -1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1515.641287000553}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': -119.44280826109696}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -435.08409526164985}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 35.6968120728626}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1319.442808261097}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-3, 2, 0, 0),\n", " 'cent_difference': -729.2190926654874}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 203.91000173077484}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 1088.2687147302222}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -617.4878073957094}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 155.1396203339599}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 315.6412870005529}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (0, 2, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 435.0840952616498}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, -2, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 1200.0}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -701.9550008653873}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 1403.9100017307749}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (4, 1, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 546.815380531428}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-4, -1, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -546.8153805314275}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -470.78090733451245}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, 1, 0, -1), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1164.3031879271375}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 1635.0840952616497}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (4, 1, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, 1, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -35.69681207286248}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-4, -1, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1044.86037966604}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, 1, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -386.3137138648349}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 772.6274277296696}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 1088.2687147302222}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -111.73128526977777}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 1382.40371213406}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': -111.73128526977769}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-4, 0, 2, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1270.672426864282}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 203.91000173077487}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (2, -1, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -84.46719346967784}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-2, 1, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -996.0899982692251}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 498.04499913461245}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (1, -2, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 182.40371213406007}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-1, 2, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, -1, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 70.67242686428197}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (3, 1, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 1115.5328065303222}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -653.1846194685724}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(1, 1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1586.3137138648349}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1466.8709056037378}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': -266.8709056037377}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 653.1846194685722}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1311.7312852697778}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (5, 0, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(5, 0, -2, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 617.4878073957096}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': -729.2190926654876}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, -1, 1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 1355.1396203339598}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, -1, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (0, -1, 1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -182.4037121340599}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, -1, 1, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 470.78090733451245}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -386.31371386483477}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 84.46719346967791}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1311.7312852697778}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(5, -1, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -427.3725722703305}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, -1, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 1200.0}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, -1, 1): {'destination': (3, 0, -1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(1, 0, 1, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1080.557191738903}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, -1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 737.6518129382499}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 196.19847873945542}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -315.6412870005529}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': -111.73128526977791}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -968.8259064691251}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (2, 1, 0, -1),\n", " 'cent_difference': 119.44280826109696}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (5, 0, 0, -2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, 0, -1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 0, 2), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1551.3380990734154}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 0, 2),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-5, 0, 0, 2): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -119.44280826109723}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -315.6412870005527}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 315.6412870005526}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 609.7762844043903}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -884.3587129994473}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': 274.5824285950572}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-4, 0, 2, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -884.3587129994472}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 590.2237155956097}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -857.0946211993473}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -609.7762844043903}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -274.5824285950571}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 884.3587129994473}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -1, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -590.2237155956097}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -701.9550008653875}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 342.9053788006527}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -266.87090560373747}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -813.6862861351651}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(1, 1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1080.557191738903}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, -1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, -1, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (1, 0, 1, -1),\n", " 'cent_difference': 119.44280826109718}}}),\n", " (((1, 0, 1, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': -119.44280826109753}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 0, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -925.4175714049428}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (5, 0, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(5, 0, -2, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -155.13962033395984}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': -342.90537880065267}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-5, 0, 1, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 582.51219260429}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 203.91000173077498}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 1200.0}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -1, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -315.6412870005529}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 155.13962033395956}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (5, 0, -1, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-5, 0, 1, 1), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -857.0946211993472}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-5, 0, 1, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (-5, 0, 1, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 1200.0}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -1, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-3, 2, 0, 0),\n", " 'cent_difference': -609.7762844043905}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -386.31371386483454}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -498.04499913461245}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 274.58242859505685}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 266.87090560373747}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (5, 0, -2, 0),\n", " 'cent_difference': -274.582428595057}}}),\n", " (((5, 0, -2, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -582.5121926042904}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1080.557191738903}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -427.3725722703305}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, 1, 0, -1), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1044.8603796660404}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -925.4175714049431}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -590.2237155956096}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 1515.641287000553}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -1, -1, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 470.78090733451245}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 294.1349974038377}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -884.3587129994472}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1172.7359081998998}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -590.2237155956096}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-3, 2, 0, 0),\n", " 'cent_difference': -294.1349974038376}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 1200.0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(0, 0, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -905.8650025961624}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1017.5962878659402}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 27.26409180010012}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -182.40371213405956}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 590.2237155956097}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': -435.08409526165013}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -470.78090733451245}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -266.87090560373747}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 266.87090560373747}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -764.91590473835}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -111.73128526977763}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, 1, 0, -1), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -729.2190926654876}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -609.7762844043903}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-5, 0, 1, 1),\n", " 'cent_difference': -546.8153805314276}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 1, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-3, 1, 1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1355.1396203339596}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 1, 1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-4, 1, 0, 1),\n", " 'cent_difference': -231.17409353087504}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-3, 2, 0, 0),\n", " 'cent_difference': -764.91590473835}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (1, 1, -1, 0),\n", " 'cent_difference': -653.184619468572}}}),\n", " (((1, 1, -1, 0), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 119.4428082610973}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, -1, 1),\n", " 'cent_difference': -119.44280826109718}}}),\n", " (((0, 0, 0, 0), (0, 0, -1, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 1200.0}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 111.73128526977791}}}),\n", " (((3, 0, -1, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, 0, -1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 470.7809073345124}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (3, 0, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -737.6518129382499}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-1, 1, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': -203.91000173077498}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': -435.08409526165013}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (1, 1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-2, 0, 0, 1), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1235.6968120728625}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (-1, -1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " {'transposition': (-1, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 1670.7809073345122}}}),\n", " (((0, 0, 0, 0), (-1, -1, 0, 1), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (1, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, -1, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': -582.51219260429}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " {'transposition': (-3, 0, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (2, 1, 0, -1), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((3, 0, 0, -1), (2, 1, 0, -1), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (3, 0, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(3, 0, 0, -1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, 1, 0, -1): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (-5, 0, 0, 2),\n", " 'cent_difference': 35.696812072862485}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-5, 0, 0, 2)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " ((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-1, 1, 0, 0): {'destination': (3, 0, -1, 0), 'cent_difference': 0},\n", " (-2, 0, 0, 1): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1080.5571917389027}}}),\n", " (((4, -1, -1, 0), (3, 0, -1, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (3, 0, -1, 0): {'destination': (-1, 1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (4, -1, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1466.8709056037376}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " {'transposition': (6, -2, 0, -1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-4, 1, 0, 1), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 27.26409180010014}}}),\n", " (((0, 0, 0, 0), (-2, 0, 0, 1), (-4, 1, 0, 1)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-6, 2, 0, 1),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 0, 1): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (-4, 1, 0, 1): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': -884.3587129994473}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 609.7762844043904}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (5, -3, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 294.13499740383764}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-5, 3, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " {'transposition': (3, -2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-1, 1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 2, 0, 0), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1200.0}}}),\n", " (((0, 0, 0, 0), (-1, 1, 0, 0), (-3, 2, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-3, 2, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-1, 1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-3, 2, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (1, -2, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 182.40371213406007}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, 2, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " {'transposition': (-1, -1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (3, 0, -1, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (1, 1, -1, 0), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -1311.7312852697778}}}),\n", " (((3, 0, -1, 0), (1, 1, -1, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (1, 1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(3, 0, -1, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (1, 1, -1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': -266.8709056037376}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (5, -1, 0, -1),\n", " 'cent_difference': 1227.2640918001002}}}),\n", " (((5, -1, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': -729.2190926654878}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-1, -1, 0, 1),\n", " 'cent_difference': 764.9159047383499}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-1, -1, 0, 1)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -764.9159047383502}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 729.2190926654876}}}),\n", " (((3, 0, 0, -1), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (4, -2, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': -27.264091800100232}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0}}}),\n", " (((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " {'transposition': (2, -1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(4, -2, 0, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 0, 1),\n", " 'cent_difference': 1466.8709056037371}}}),\n", " (((2, -1, 0, 0), (0, 0, 0, 0), (-2, 0, 0, 1)),\n", " ((4, -2, 0, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-2, 1, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (4, -2, 0, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 315.64128700055255}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 0, 2, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-3, 1, 1, 0),\n", " 'cent_difference': 1474.582428595057}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-3, 1, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-4, 1, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (4, -1, -1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (2, -1, 0, 0), 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': -884.3587129994474}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (4, -1, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(4, -1, -1, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (2, -1, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " {'transposition': (-6, 1, 2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 0, 2, 0): {'destination': (2, -1, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (4, -1, -1, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 274.582428595057}}}),\n", " (((4, -1, -1, 0), (2, -1, 0, 0), (0, 0, 0, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (6, -1, -2, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(2, -1, 0, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': 0},\n", " (4, -1, -1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (-2, 0, 1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-4, 0, 2, 0): {'destination': (-2, 0, 1, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (0, 0, 0, 0), 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': 617.4878073957096}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (2, 0, -1, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': False,\n", " 'movements': {(-2, 0, 1, 0): {'destination': (-4, 0, 2, 0),\n", " 'cent_difference': 0},\n", " (0, 0, 0, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " (((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " ((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0},\n", " (-4, 0, 2, 0): {'destination': (3, 0, 0, -1),\n", " 'cent_difference': -541.4533341987947}}}),\n", " (((3, 0, 0, -1), (0, 0, 0, 0), (-2, 0, 1, 0)),\n", " ((0, 0, 0, 0), (-2, 0, 1, 0), (-4, 0, 2, 0)),\n", " {'transposition': (0, 0, 0, 0),\n", " 'symmetric_difference': 2,\n", " 'is_directly_tunable': True,\n", " 'movements': {(0, 0, 0, 0): {'destination': (0, 0, 0, 0),\n", " 'cent_difference': 0},\n", " (-2, 0, 1, 0): {'destination': (-2, 0, 1, 0), 'cent_difference': 0}}}),\n", " ...]" ] }, "execution_count": 121, "metadata": {}, "output_type": "execute_result" } ], "source": [ "list(edges(chord_set, 2, 2, 3))" ] }, { "cell_type": "code", "execution_count": 61, "id": "baf0040d-0743-47e7-af74-c356036991bf", "metadata": {}, "outputs": [ { "data": { "text/plain": [ "Timer unit: 1e-09 s\n", "\n", "Total time: 0.24754 s\n", "File: /tmp/ipykernel_510889/3883039038.py\n", "Function: edges at line 55\n", "\n", "Line # Hits Time Per Hit % Time Line Contents\n", "==============================================================\n", " 55 def edges(chords, min_symdiff, max_symdiff, max_chord_size): \n", " 56 1 247540447.0 2e+08 100.0 return list(chain(*[e for c in combinations(chords, 2) if (e := edge_data(c, min_symdiff, max_symdiff, max_chord_size)) is not None]))" ] }, "metadata": {}, "output_type": "display_data" } ], "source": [ "lprun -f edges edges(chord_set, 2, 2, 3)" ] } ], "metadata": { "kernelspec": { "display_name": "Python 3 (ipykernel)", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.11.8" } }, "nbformat": 4, "nbformat_minor": 5 }