diff --git a/compact_sets_extended_simplified.ipynb b/compact_sets_extended_simplified.ipynb index 26791b0..40c05ad 100644 --- a/compact_sets_extended_simplified.ipynb +++ b/compact_sets_extended_simplified.ipynb @@ -2,52 +2,7 @@ "cells": [ { "cell_type": "code", - "execution_count": 93, - "id": "1b7b9f62-156d-4ac5-876d-0305a25d99e4", - "metadata": {}, - "outputs": [ - { - "data": { - "text/plain": [ - "389" - ] - }, - "execution_count": 93, - "metadata": {}, - "output_type": "execute_result" - } - ], - "source": [ - "from itertools import chain, combinations, permutations, product\n", - "from math import prod, log\n", - "from copy import deepcopy\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))\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", - "root = (0, 0, 0, 0)\n", - "chord = (root,)\n", - "chords = chords(chord, root, 3, 4)\n", - "len(chords)" - ] - }, - { - "cell_type": "code", - "execution_count": 133, + "execution_count": 117, "id": "806f6f69-1e0b-4d34-aac9-695c8531cdb1", "metadata": {}, "outputs": [], @@ -56,6 +11,9 @@ "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", @@ -88,7 +46,7 @@ " return tuple(collapse_pitch(p) for p in chord)\n", "\n", "def transpose_pitch(pitch, trans):\n", - " return tuple(map(lambda x,y:x+y, 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", @@ -110,7 +68,7 @@ " 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))\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", @@ -142,9 +100,9 @@ " 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", - " base_map = {val: {'destination':transpose_pitch(val, rev_trans), 'cent_difference': 0} for val in intersection}\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", @@ -184,43 +142,9284 @@ " 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)" + " #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": 145, - "id": "3b220e4f-af29-4226-b60d-30078da05663", + "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", - "chord_set = chords(chord, root, 4, 4)\n", - "#edges(chord_set, 2, 2, 3)\n", - "graph = generate_graph(chord_set, 2, 2, 4)" + "#%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": 144, + "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": [ - "344" + "[(((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": 144, + "execution_count": 121, "metadata": {}, "output_type": "execute_result" } ], "source": [ - "len(graph.nodes)" + "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)" ] } ],