diff --git a/tests/test_scale_01.py b/tests/test_scale_01.py index 7c434c8..afb09c0 100644 --- a/tests/test_scale_01.py +++ b/tests/test_scale_01.py @@ -47,5 +47,5 @@ def test_notenames(name: str, expected: int): ) def test_note_to_midi(pitch_classes: str, expected: int): assert [ - scale.note_from_pc(root=60, pitch_class=val, intervals="Ionian") for val in pitch_classes + scale.note_from_pc(root=60, pitch_class=val, intervals="Ionian")[0] for val in pitch_classes ] == expected diff --git a/ziffers/__init__.py b/ziffers/__init__.py index 1fa0ca1..ca44a78 100644 --- a/ziffers/__init__.py +++ b/ziffers/__init__.py @@ -5,3 +5,4 @@ from .defaults import * from .scale import * from .converters import * from .spec import * +from .classes import * \ No newline at end of file diff --git a/ziffers/classes/__init__.py b/ziffers/classes/__init__.py index a250516..e5a65ad 100644 --- a/ziffers/classes/__init__.py +++ b/ziffers/classes/__init__.py @@ -1,3 +1,3 @@ from .items import * -from .sequences import * from .root import * +from .sequences import * \ No newline at end of file diff --git a/ziffers/classes/items.py b/ziffers/classes/items.py index fc961df..46a24d2 100644 --- a/ziffers/classes/items.py +++ b/ziffers/classes/items.py @@ -1,5 +1,6 @@ """ Ziffers item classes """ from dataclasses import dataclass, field, asdict +from math import floor import operator import random from ..scale import ( @@ -171,6 +172,7 @@ class Pitch(Event): """Class for pitch in time""" pitch_class: int + pitch_bend: float = field(default=None) octave: int = field(default=None) modifier: int = field(default=None) note: int = field(default=None) @@ -206,6 +208,10 @@ class Pitch(Event): def get_pitch_class(self): """Getter for pitche""" return self.pitch_class + + def get_pitch_bend(self): + """Getter for pitche""" + return self.pitch_bend def update_note(self, force: bool = False): """Update note if Key, Scale and Pitch-class are present""" @@ -215,15 +221,16 @@ class Pitch(Event): and (self.pitch_class is not None) and (self.note is None or force) ): - note = note_from_pc( + note, pitch_bend = note_from_pc( root=self.key, pitch_class=self.pitch_class, intervals=self.scale, modifier=self.modifier if self.modifier is not None else 0, octave=self.octave if self.octave is not None else 0, ) + self.pitch_bend = pitch_bend self.freq = midi_to_freq(note) - self.note = note + self.note = floor(note) if self.duration is not None: self.beat = self.duration * 4 @@ -296,6 +303,7 @@ class Chord(Event): notes: list[int] = field(default=None) inversions: int = field(default=None) pitches: list[int] = field(default=None, init=False) + pitch_bends: list[int] = field(default=None, init=False) freqs: list[float] = field(default=None, init=False) octaves: list[int] = field(default=None, init=False) durations: list[float] = field(default=None, init=False) @@ -333,6 +341,10 @@ class Chord(Event): def get_pitch_class(self): """Getter for pitches""" return self.pitches + + def get_pitch_bend(self): + """Getter for pitche""" + return self.pitch_bends def get_duration(self): """Getter for durations""" @@ -353,7 +365,7 @@ class Chord(Event): def update_notes(self, options=None): """Update notes""" - pitches, notes, freqs, octaves, durations, beats = ([] for _ in range(6)) + pitches, pitch_bends, notes, freqs, octaves, durations, beats = ([] for _ in range(7)) # Update notes for pitch in self.pitch_classes: @@ -367,6 +379,7 @@ class Chord(Event): # Create helper lists for pitch in self.pitch_classes: pitches.append(pitch.pitch_class) + pitch_bends.append(pitch.pitch_bend) notes.append(pitch.note) freqs.append(pitch.freq) octaves.append(pitch.octave) @@ -374,6 +387,7 @@ class Chord(Event): beats.append(pitch.beat) self.pitches = pitches + self.pitch_bends = pitch_bends self.notes = notes self.freqs = freqs self.octaves = octaves diff --git a/ziffers/classes/root.py b/ziffers/classes/root.py index df05d2d..5529f28 100644 --- a/ziffers/classes/root.py +++ b/ziffers/classes/root.py @@ -109,6 +109,14 @@ class Ziffers(Sequence): for val in self.evaluated_values if isinstance(val, (Pitch, Chord)) ] + + def pitch_bends(self) -> list[int]: + """Return list of pitch bend values""" + return [ + val.get_pitch_bend() + for val in self.evaluated_values + if isinstance(val, (Pitch, Chord)) + ] def notes(self) -> list[int]: """Return list of midi notes""" diff --git a/ziffers/classes/sequences.py b/ziffers/classes/sequences.py index 9e6d103..67595cc 100644 --- a/ziffers/classes/sequences.py +++ b/ziffers/classes/sequences.py @@ -1,6 +1,7 @@ """ Sequence classes for Ziffers """ from dataclasses import dataclass, field, replace from itertools import product +from math import floor from types import LambdaType from copy import deepcopy from ..defaults import DEFAULT_OPTIONS @@ -190,7 +191,7 @@ def create_pitch(current: Item, options: dict) -> Pitch: current_value = current.get_value(merged_options) - note = note_from_pc( + note, pitch_bend = note_from_pc( root=merged_options["key"], pitch_class=current_value, intervals=merged_options["scale"], @@ -200,8 +201,9 @@ def create_pitch(current: Item, options: dict) -> Pitch: new_pitch = Pitch( pitch_class=current_value, text=str(current_value), - note=note, freq=midi_to_freq(note), + note=floor(note), + pitch_bend=pitch_bend, octave=c_octave, modifier=c_modifier, kwargs=merged_options, diff --git a/ziffers/common.py b/ziffers/common.py index 692fe70..285828f 100644 --- a/ziffers/common.py +++ b/ziffers/common.py @@ -110,4 +110,4 @@ def cyclic_zip(first: list, second: list) -> list: f_length = len(first) for i in range(s_length): result.append([first[i % f_length], second[i]]) - return [deepcopy(item) for sublist in result for item in sublist] + return [deepcopy(item) for sublist in result for item in sublist] \ No newline at end of file diff --git a/ziffers/defaults.py b/ziffers/defaults.py index bd84abe..e184796 100644 --- a/ziffers/defaults.py +++ b/ziffers/defaults.py @@ -124,17 +124,17 @@ ROMANS = MappingProxyType({"i": 1, "v": 5, "x": 10, "l": 50, "c": 100, "d": 500, def __build_scales(): - aeolian = [2, 1, 2, 2, 1, 2, 2] - ionian = [2, 2, 1, 2, 2, 2, 1] - mydian = [2, 1, 2, 2, 1, 3, 1] - aerorian = [2, 2, 1, 2, 1, 3, 1] - rocritonic = [3, 2, 2, 3, 2] - thaptitonic = [2, 3, 2, 3, 2] - whole = [2, 2, 2, 2, 2, 2] - gycrimic = [2, 1, 1, 3, 2, 3] - aeolyphimic = [3, 2, 1, 1, 3, 2] - bocrian = [2, 1, 2, 2, 2, 2, 1] - stydian = [2, 2, 1, 2, 1, 2, 2] + aeolian = (2, 1, 2, 2, 1, 2, 2) + ionian = (2, 2, 1, 2, 2, 2, 1) + mydian = (2, 1, 2, 2, 1, 3, 1) + aerorian = (2, 2, 1, 2, 1, 3, 1) + rocritonic = (3, 2, 2, 3, 2) + thaptitonic = (2, 3, 2, 3, 2) + whole = (2, 2, 2, 2, 2, 2) + gycrimic = (2, 1, 1, 3, 2, 3) + aeolyphimic = (3, 2, 1, 1, 3, 2) + bocrian = (2, 1, 2, 2, 2, 2, 1) + stydian = (2, 2, 1, 2, 1, 2, 2) all_scales = { "Major": ionian, "Minor": aeolian, @@ -147,1577 +147,1577 @@ def __build_scales(): "Whole": whole, "Melodic minor": bocrian, "Melodic major": stydian, - "Minoric": [4, 4, 4], - "Thaptic": [4, 3, 4, 1], - "Lothic": [3, 4, 1, 4], - "Phratic": [4, 1, 4, 3], - "Aerathic": [1, 4, 3, 4], - "Epathic": [4, 3, 2, 3], - "Mynic": [3, 2, 3, 4], - "Rothic": [2, 3, 4, 3], - "Eporic": [3, 4, 3, 2], - "Zyphic": [4, 4, 3, 1], - "Epogic": [4, 3, 1, 4], - "Lanic": [3, 1, 4, 4], - "Pyrric": [1, 4, 4, 3], - "Aeoloric": [4, 4, 1, 3], - "Gonic": [4, 1, 3, 4], - "Dalic": [1, 3, 4, 4], - "Dygic": [3, 4, 4, 1], - "Daric": [4, 3, 3, 2], - "Lonic": [3, 3, 2, 4], - "Phradic": [3, 2, 4, 3], - "Bolic": [2, 4, 3, 3], - "Saric": [4, 2, 3, 3], - "Zoptic": [2, 3, 3, 4], - "Aeraphic": [3, 3, 4, 2], - "Byptic": [3, 4, 2, 3], - "Aeolic": [4, 4, 2, 2], - "Koptic": [4, 2, 2, 4], - "Mixolyric": [2, 2, 4, 4], - "Lydic": [2, 4, 4, 2], - "Stathic": [4, 2, 4, 2], - "Dadic": [2, 4, 2, 4], - "Phrynic": [3, 3, 3, 3], - "Epathitonic": [3, 2, 3, 2, 2], - "Mynitonic": [2, 3, 2, 2, 3], + "Minoric": (4, 4, 4), + "Thaptic": (4, 3, 4, 1), + "Lothic": (3, 4, 1, 4), + "Phratic": (4, 1, 4, 3), + "Aerathic": (1, 4, 3, 4), + "Epathic": (4, 3, 2, 3), + "Mynic": (3, 2, 3, 4), + "Rothic": (2, 3, 4, 3), + "Eporic": (3, 4, 3, 2), + "Zyphic": (4, 4, 3, 1), + "Epogic": (4, 3, 1, 4), + "Lanic": (3, 1, 4, 4), + "Pyrric": (1, 4, 4, 3), + "Aeoloric": (4, 4, 1, 3), + "Gonic": (4, 1, 3, 4), + "Dalic": (1, 3, 4, 4), + "Dygic": (3, 4, 4, 1), + "Daric": (4, 3, 3, 2), + "Lonic": (3, 3, 2, 4), + "Phradic": (3, 2, 4, 3), + "Bolic": (2, 4, 3, 3), + "Saric": (4, 2, 3, 3), + "Zoptic": (2, 3, 3, 4), + "Aeraphic": (3, 3, 4, 2), + "Byptic": (3, 4, 2, 3), + "Aeolic": (4, 4, 2, 2), + "Koptic": (4, 2, 2, 4), + "Mixolyric": (2, 2, 4, 4), + "Lydic": (2, 4, 4, 2), + "Stathic": (4, 2, 4, 2), + "Dadic": (2, 4, 2, 4), + "Phrynic": (3, 3, 3, 3), + "Epathitonic": (3, 2, 3, 2, 2), + "Mynitonic": (2, 3, 2, 2, 3), "Rocritonic": rocritonic, - "Pentatonic": [2, 2, 3, 2, 3], + "Pentatonic": (2, 2, 3, 2, 3), "Thaptitonic": thaptitonic, - "Magitonic": [4, 3, 2, 2, 1], - "Daditonic": [3, 2, 2, 1, 4], - "Aeolyphritonic": [2, 2, 1, 4, 3], - "Gycritonic": [2, 1, 4, 3, 2], - "Pyritonic": [1, 4, 3, 2, 2], - "Gathitonic": [4, 2, 3, 2, 1], - "Ionitonic": [2, 3, 2, 1, 4], - "Phrynitonic": [3, 2, 1, 4, 2], - "Stathitonic": [2, 1, 4, 2, 3], - "Thalitonic": [1, 4, 2, 3, 2], - "Zolitonic": [4, 2, 1, 4, 1], - "Epogitonic": [2, 1, 4, 1, 4], - "Lanitonic": [1, 4, 1, 4, 2], - "Paptitonic": [4, 1, 4, 2, 1], - "Ionacritonic": [1, 4, 2, 1, 4], - "Phraditonic": [4, 1, 4, 1, 2], - "Aeoloritonic": [1, 4, 1, 2, 4], - "Gonitonic": [4, 1, 2, 4, 1], - "Dalitonic": [1, 2, 4, 1, 4], - "Dygitonic": [2, 4, 1, 4, 1], - "Aeracritonic": [4, 1, 2, 3, 2], - "Byptitonic": [1, 2, 3, 2, 4], - "Daritonic": [2, 3, 2, 4, 1], - "Lonitonic": [3, 2, 4, 1, 2], - "Ionycritonic": [2, 4, 1, 2, 3], - "Lothitonic": [4, 1, 2, 2, 3], - "Phratonic": [1, 2, 2, 3, 4], - "Aerathitonic": [2, 2, 3, 4, 1], - "Saritonic": [2, 3, 4, 1, 2], - "Zoptitonic": [3, 4, 1, 2, 2], - "Dolitonic": [4, 4, 1, 2, 1], - "Poritonic": [4, 1, 2, 1, 4], - "Aerylitonic": [1, 2, 1, 4, 4], - "Zagitonic": [2, 1, 4, 4, 1], - "Lagitonic": [1, 4, 4, 1, 2], - "Molitonic": [4, 3, 3, 1, 1], - "Staptitonic": [3, 3, 1, 1, 4], - "Mothitonic": [3, 1, 1, 4, 3], - "Aeritonic": [1, 1, 4, 3, 3], - "Ragitonic": [1, 4, 3, 3, 1], - "Ionaditonic": [4, 3, 2, 1, 2], - "Bocritonic": [3, 2, 1, 2, 4], - "Gythitonic": [2, 1, 2, 4, 3], - "Pagitonic": [1, 2, 4, 3, 2], - "Aeolythitonic": [2, 4, 3, 2, 1], - "Zacritonic": [4, 3, 1, 3, 1], - "Laritonic": [3, 1, 3, 1, 4], - "Thacritonic": [1, 3, 1, 4, 3], - "Styditonic": [3, 1, 4, 3, 1], - "Loritonic": [1, 4, 3, 1, 3], - "Aeolyritonic": [4, 3, 1, 1, 3], - "Goritonic": [3, 1, 1, 3, 4], - "Aeoloditonic": [1, 1, 3, 4, 3], - "Doptitonic": [1, 3, 4, 3, 1], - "Aeraphitonic": [3, 4, 3, 1, 1], - "Zathitonic": [4, 2, 4, 1, 1], - "Raditonic": [2, 4, 1, 1, 4], - "Stonitonic": [4, 1, 1, 4, 2], - "Syptitonic": [1, 1, 4, 2, 4], - "Ionythitonic": [1, 4, 2, 4, 1], - "Aeolanitonic": [4, 2, 2, 3, 1], - "Danitonic": [2, 2, 3, 1, 4], - "Ionaritonic": [2, 3, 1, 4, 2], - "Dynitonic": [3, 1, 4, 2, 2], - "Zyditonic": [1, 4, 2, 2, 3], - "Aeolacritonic": [4, 2, 1, 2, 3], - "Zythitonic": [2, 1, 2, 3, 4], - "Dyritonic": [1, 2, 3, 4, 2], - "Koptitonic": [2, 3, 4, 2, 1], - "Thocritonic": [3, 4, 2, 1, 2], - "Lycritonic": [4, 1, 3, 3, 1], - "Daptitonic": [1, 3, 3, 1, 4], - "Kygitonic": [3, 3, 1, 4, 1], - "Mocritonic": [3, 1, 4, 1, 3], - "Zynitonic": [1, 4, 1, 3, 3], - "Epygitonic": [4, 1, 3, 2, 2], - "Zaptitonic": [1, 3, 2, 2, 4], - "Kagitonic": [3, 2, 2, 4, 1], - "Zogitonic": [2, 2, 4, 1, 3], - "Epyritonic": [2, 4, 1, 3, 2], - "Zothitonic": [4, 1, 3, 1, 3], - "Phrolitonic": [1, 3, 1, 3, 4], - "Ionagitonic": [3, 1, 3, 4, 1], - "Aeolapritonic": [1, 3, 4, 1, 3], - "Kyritonic": [3, 4, 1, 3, 1], - "Ionyptitonic": [4, 1, 1, 3, 3], - "Gyritonic": [1, 1, 3, 3, 4], - "Zalitonic": [1, 3, 3, 4, 1], - "Stolitonic": [3, 3, 4, 1, 1], - "Bylitonic": [3, 4, 1, 1, 3], - "Thoditonic": [3, 3, 2, 3, 1], - "Dogitonic": [3, 2, 3, 1, 3], - "Phralitonic": [2, 3, 1, 3, 3], - "Garitonic": [3, 1, 3, 3, 2], - "Soptitonic": [1, 3, 3, 2, 3], - "Kataritonic": [3, 3, 2, 2, 2], - "Sylitonic": [3, 2, 2, 2, 3], - "Thonitonic": [2, 2, 2, 3, 3], - "Phropitonic": [2, 2, 3, 3, 2], - "Staditonic": [2, 3, 3, 2, 2], - "Lyditonic": [3, 3, 1, 3, 2], - "Mythitonic": [3, 1, 3, 2, 3], - "Sogitonic": [1, 3, 2, 3, 3], - "Gothitonic": [3, 2, 3, 3, 1], - "Rothitonic": [2, 3, 3, 1, 3], - "Zylitonic": [4, 4, 2, 1, 1], - "Zoditonic": [4, 2, 1, 1, 4], - "Zaritonic": [2, 1, 1, 4, 4], - "Phrythitonic": [1, 1, 4, 4, 2], - "Rolitonic": [1, 4, 4, 2, 1], - "Ranitonic": [4, 4, 1, 1, 2], - "Laditonic": [4, 1, 1, 2, 4], - "Poditonic": [1, 1, 2, 4, 4], - "Ionothitonic": [1, 2, 4, 4, 1], - "Kanitonic": [2, 4, 4, 1, 1], - "Ryphitonic": [4, 3, 1, 2, 2], - "Gylitonic": [3, 1, 2, 2, 4], - "Aeolycritonic": [1, 2, 2, 4, 3], - "Pynitonic": [2, 2, 4, 3, 1], - "Zanitonic": [2, 4, 3, 1, 2], - "Phronitonic": [4, 2, 3, 1, 2], - "Banitonic": [2, 3, 1, 2, 4], - "Aeronitonic": [3, 1, 2, 4, 2], - "Golitonic": [1, 2, 4, 2, 3], - "Dyptitonic": [2, 4, 2, 3, 1], - "Aerynitonic": [4, 2, 2, 1, 3], - "Palitonic": [2, 2, 1, 3, 4], - "Stothitonic": [2, 1, 3, 4, 2], - "Aerophitonic": [1, 3, 4, 2, 2], - "Katagitonic": [3, 4, 2, 2, 1], - "Ionoditonic": [4, 2, 1, 3, 2], - "Bogitonic": [2, 1, 3, 2, 4], - "Mogitonic": [1, 3, 2, 4, 2], - "Docritonic": [3, 2, 4, 2, 1], - "Epaditonic": [2, 4, 2, 1, 3], - "Mixitonic": [3, 3, 3, 2, 1], - "Phrothitonic": [3, 3, 2, 1, 3], - "Katycritonic": [3, 2, 1, 3, 3], - "Ionalitonic": [2, 1, 3, 3, 3], - "Loptitonic": [1, 3, 3, 3, 2], - "Thyritonic": [3, 3, 3, 1, 2], - "Thoptitonic": [3, 3, 1, 2, 3], - "Bycritonic": [3, 1, 2, 3, 3], - "Pathitonic": [1, 2, 3, 3, 3], - "Myditonic": [2, 3, 3, 3, 1], - "Bolitonic": [4, 2, 2, 2, 2], - "Bothitonic": [2, 2, 2, 2, 4], - "Kataditonic": [2, 2, 2, 4, 2], - "Koditonic": [2, 2, 4, 2, 2], - "Tholitonic": [2, 4, 2, 2, 2], - "Epathimic": [3, 2, 2, 1, 2, 2], - "Mynimic": [2, 2, 1, 2, 2, 3], - "Rocrimic": [2, 1, 2, 2, 3, 2], - "Eporimic": [1, 2, 2, 3, 2, 2], - "Thaptimic": [2, 2, 3, 2, 2, 1], - "Lothimic": [2, 3, 2, 2, 1, 2], - "Dyrimic": [4, 2, 1, 2, 2, 1], - "Koptimic": [2, 1, 2, 2, 1, 4], - "Thocrimic": [1, 2, 2, 1, 4, 2], - "Aeolanimic": [2, 2, 1, 4, 2, 1], - "Danimic": [2, 1, 4, 2, 1, 2], - "Ionarimic": [1, 4, 2, 1, 2, 2], - "Daptimic": [4, 1, 4, 1, 1, 1], - "Kygimic": [1, 4, 1, 1, 1, 4], - "Mocrimic": [4, 1, 1, 1, 4, 1], - "Zynimic": [1, 1, 1, 4, 1, 4], - "Aeolimic": [1, 1, 4, 1, 4, 1], - "Zythimic": [1, 4, 1, 4, 1, 1], - "Epygimic": [4, 1, 2, 3, 1, 1], - "Zaptimic": [1, 2, 3, 1, 1, 4], - "Kagimic": [2, 3, 1, 1, 4, 1], - "Zogimic": [3, 1, 1, 4, 1, 2], - "Epyrimic": [1, 1, 4, 1, 2, 3], - "Lycrimic": [1, 4, 1, 2, 3, 1], - "Bylimic": [4, 1, 2, 2, 2, 1], - "Zothimic": [1, 2, 2, 2, 1, 4], - "Phrolimic": [2, 2, 2, 1, 4, 1], - "Ionagimic": [2, 2, 1, 4, 1, 2], - "Aeolaphimic": [2, 1, 4, 1, 2, 2], - "Kycrimic": [1, 4, 1, 2, 2, 2], - "Garimic": [4, 1, 2, 2, 1, 2], - "Soptimic": [1, 2, 2, 1, 2, 4], - "Ionyptimic": [2, 2, 1, 2, 4, 1], - "Gyrimic": [2, 1, 2, 4, 1, 2], - "Zalimic": [1, 2, 4, 1, 2, 2], - "Stolimic": [2, 4, 1, 2, 2, 1], - "Thonimic": [4, 1, 1, 4, 1, 1], - "Stadimic": [1, 1, 4, 1, 1, 4], - "Thodimic": [1, 4, 1, 1, 4, 1], - "Mythimic": [4, 1, 1, 3, 2, 1], - "Sogimic": [1, 1, 3, 2, 1, 4], - "Gogimic": [1, 3, 2, 1, 4, 1], - "Rothimic": [3, 2, 1, 4, 1, 1], - "Katarimic": [2, 1, 4, 1, 1, 3], - "Sylimic": [1, 4, 1, 1, 3, 2], - "Mixolimic": [3, 2, 3, 2, 1, 1], - "Dadimic": [2, 3, 2, 1, 1, 3], + "Magitonic": (4, 3, 2, 2, 1), + "Daditonic": (3, 2, 2, 1, 4), + "Aeolyphritonic": (2, 2, 1, 4, 3), + "Gycritonic": (2, 1, 4, 3, 2), + "Pyritonic": (1, 4, 3, 2, 2), + "Gathitonic": (4, 2, 3, 2, 1), + "Ionitonic": (2, 3, 2, 1, 4), + "Phrynitonic": (3, 2, 1, 4, 2), + "Stathitonic": (2, 1, 4, 2, 3), + "Thalitonic": (1, 4, 2, 3, 2), + "Zolitonic": (4, 2, 1, 4, 1), + "Epogitonic": (2, 1, 4, 1, 4), + "Lanitonic": (1, 4, 1, 4, 2), + "Paptitonic": (4, 1, 4, 2, 1), + "Ionacritonic": (1, 4, 2, 1, 4), + "Phraditonic": (4, 1, 4, 1, 2), + "Aeoloritonic": (1, 4, 1, 2, 4), + "Gonitonic": (4, 1, 2, 4, 1), + "Dalitonic": (1, 2, 4, 1, 4), + "Dygitonic": (2, 4, 1, 4, 1), + "Aeracritonic": (4, 1, 2, 3, 2), + "Byptitonic": (1, 2, 3, 2, 4), + "Daritonic": (2, 3, 2, 4, 1), + "Lonitonic": (3, 2, 4, 1, 2), + "Ionycritonic": (2, 4, 1, 2, 3), + "Lothitonic": (4, 1, 2, 2, 3), + "Phratonic": (1, 2, 2, 3, 4), + "Aerathitonic": (2, 2, 3, 4, 1), + "Saritonic": (2, 3, 4, 1, 2), + "Zoptitonic": (3, 4, 1, 2, 2), + "Dolitonic": (4, 4, 1, 2, 1), + "Poritonic": (4, 1, 2, 1, 4), + "Aerylitonic": (1, 2, 1, 4, 4), + "Zagitonic": (2, 1, 4, 4, 1), + "Lagitonic": (1, 4, 4, 1, 2), + "Molitonic": (4, 3, 3, 1, 1), + "Staptitonic": (3, 3, 1, 1, 4), + "Mothitonic": (3, 1, 1, 4, 3), + "Aeritonic": (1, 1, 4, 3, 3), + "Ragitonic": (1, 4, 3, 3, 1), + "Ionaditonic": (4, 3, 2, 1, 2), + "Bocritonic": (3, 2, 1, 2, 4), + "Gythitonic": (2, 1, 2, 4, 3), + "Pagitonic": (1, 2, 4, 3, 2), + "Aeolythitonic": (2, 4, 3, 2, 1), + "Zacritonic": (4, 3, 1, 3, 1), + "Laritonic": (3, 1, 3, 1, 4), + "Thacritonic": (1, 3, 1, 4, 3), + "Styditonic": (3, 1, 4, 3, 1), + "Loritonic": (1, 4, 3, 1, 3), + "Aeolyritonic": (4, 3, 1, 1, 3), + "Goritonic": (3, 1, 1, 3, 4), + "Aeoloditonic": (1, 1, 3, 4, 3), + "Doptitonic": (1, 3, 4, 3, 1), + "Aeraphitonic": (3, 4, 3, 1, 1), + "Zathitonic": (4, 2, 4, 1, 1), + "Raditonic": (2, 4, 1, 1, 4), + "Stonitonic": (4, 1, 1, 4, 2), + "Syptitonic": (1, 1, 4, 2, 4), + "Ionythitonic": (1, 4, 2, 4, 1), + "Aeolanitonic": (4, 2, 2, 3, 1), + "Danitonic": (2, 2, 3, 1, 4), + "Ionaritonic": (2, 3, 1, 4, 2), + "Dynitonic": (3, 1, 4, 2, 2), + "Zyditonic": (1, 4, 2, 2, 3), + "Aeolacritonic": (4, 2, 1, 2, 3), + "Zythitonic": (2, 1, 2, 3, 4), + "Dyritonic": (1, 2, 3, 4, 2), + "Koptitonic": (2, 3, 4, 2, 1), + "Thocritonic": (3, 4, 2, 1, 2), + "Lycritonic": (4, 1, 3, 3, 1), + "Daptitonic": (1, 3, 3, 1, 4), + "Kygitonic": (3, 3, 1, 4, 1), + "Mocritonic": (3, 1, 4, 1, 3), + "Zynitonic": (1, 4, 1, 3, 3), + "Epygitonic": (4, 1, 3, 2, 2), + "Zaptitonic": (1, 3, 2, 2, 4), + "Kagitonic": (3, 2, 2, 4, 1), + "Zogitonic": (2, 2, 4, 1, 3), + "Epyritonic": (2, 4, 1, 3, 2), + "Zothitonic": (4, 1, 3, 1, 3), + "Phrolitonic": (1, 3, 1, 3, 4), + "Ionagitonic": (3, 1, 3, 4, 1), + "Aeolapritonic": (1, 3, 4, 1, 3), + "Kyritonic": (3, 4, 1, 3, 1), + "Ionyptitonic": (4, 1, 1, 3, 3), + "Gyritonic": (1, 1, 3, 3, 4), + "Zalitonic": (1, 3, 3, 4, 1), + "Stolitonic": (3, 3, 4, 1, 1), + "Bylitonic": (3, 4, 1, 1, 3), + "Thoditonic": (3, 3, 2, 3, 1), + "Dogitonic": (3, 2, 3, 1, 3), + "Phralitonic": (2, 3, 1, 3, 3), + "Garitonic": (3, 1, 3, 3, 2), + "Soptitonic": (1, 3, 3, 2, 3), + "Kataritonic": (3, 3, 2, 2, 2), + "Sylitonic": (3, 2, 2, 2, 3), + "Thonitonic": (2, 2, 2, 3, 3), + "Phropitonic": (2, 2, 3, 3, 2), + "Staditonic": (2, 3, 3, 2, 2), + "Lyditonic": (3, 3, 1, 3, 2), + "Mythitonic": (3, 1, 3, 2, 3), + "Sogitonic": (1, 3, 2, 3, 3), + "Gothitonic": (3, 2, 3, 3, 1), + "Rothitonic": (2, 3, 3, 1, 3), + "Zylitonic": (4, 4, 2, 1, 1), + "Zoditonic": (4, 2, 1, 1, 4), + "Zaritonic": (2, 1, 1, 4, 4), + "Phrythitonic": (1, 1, 4, 4, 2), + "Rolitonic": (1, 4, 4, 2, 1), + "Ranitonic": (4, 4, 1, 1, 2), + "Laditonic": (4, 1, 1, 2, 4), + "Poditonic": (1, 1, 2, 4, 4), + "Ionothitonic": (1, 2, 4, 4, 1), + "Kanitonic": (2, 4, 4, 1, 1), + "Ryphitonic": (4, 3, 1, 2, 2), + "Gylitonic": (3, 1, 2, 2, 4), + "Aeolycritonic": (1, 2, 2, 4, 3), + "Pynitonic": (2, 2, 4, 3, 1), + "Zanitonic": (2, 4, 3, 1, 2), + "Phronitonic": (4, 2, 3, 1, 2), + "Banitonic": (2, 3, 1, 2, 4), + "Aeronitonic": (3, 1, 2, 4, 2), + "Golitonic": (1, 2, 4, 2, 3), + "Dyptitonic": (2, 4, 2, 3, 1), + "Aerynitonic": (4, 2, 2, 1, 3), + "Palitonic": (2, 2, 1, 3, 4), + "Stothitonic": (2, 1, 3, 4, 2), + "Aerophitonic": (1, 3, 4, 2, 2), + "Katagitonic": (3, 4, 2, 2, 1), + "Ionoditonic": (4, 2, 1, 3, 2), + "Bogitonic": (2, 1, 3, 2, 4), + "Mogitonic": (1, 3, 2, 4, 2), + "Docritonic": (3, 2, 4, 2, 1), + "Epaditonic": (2, 4, 2, 1, 3), + "Mixitonic": (3, 3, 3, 2, 1), + "Phrothitonic": (3, 3, 2, 1, 3), + "Katycritonic": (3, 2, 1, 3, 3), + "Ionalitonic": (2, 1, 3, 3, 3), + "Loptitonic": (1, 3, 3, 3, 2), + "Thyritonic": (3, 3, 3, 1, 2), + "Thoptitonic": (3, 3, 1, 2, 3), + "Bycritonic": (3, 1, 2, 3, 3), + "Pathitonic": (1, 2, 3, 3, 3), + "Myditonic": (2, 3, 3, 3, 1), + "Bolitonic": (4, 2, 2, 2, 2), + "Bothitonic": (2, 2, 2, 2, 4), + "Kataditonic": (2, 2, 2, 4, 2), + "Koditonic": (2, 2, 4, 2, 2), + "Tholitonic": (2, 4, 2, 2, 2), + "Epathimic": (3, 2, 2, 1, 2, 2), + "Mynimic": (2, 2, 1, 2, 2, 3), + "Rocrimic": (2, 1, 2, 2, 3, 2), + "Eporimic": (1, 2, 2, 3, 2, 2), + "Thaptimic": (2, 2, 3, 2, 2, 1), + "Lothimic": (2, 3, 2, 2, 1, 2), + "Dyrimic": (4, 2, 1, 2, 2, 1), + "Koptimic": (2, 1, 2, 2, 1, 4), + "Thocrimic": (1, 2, 2, 1, 4, 2), + "Aeolanimic": (2, 2, 1, 4, 2, 1), + "Danimic": (2, 1, 4, 2, 1, 2), + "Ionarimic": (1, 4, 2, 1, 2, 2), + "Daptimic": (4, 1, 4, 1, 1, 1), + "Kygimic": (1, 4, 1, 1, 1, 4), + "Mocrimic": (4, 1, 1, 1, 4, 1), + "Zynimic": (1, 1, 1, 4, 1, 4), + "Aeolimic": (1, 1, 4, 1, 4, 1), + "Zythimic": (1, 4, 1, 4, 1, 1), + "Epygimic": (4, 1, 2, 3, 1, 1), + "Zaptimic": (1, 2, 3, 1, 1, 4), + "Kagimic": (2, 3, 1, 1, 4, 1), + "Zogimic": (3, 1, 1, 4, 1, 2), + "Epyrimic": (1, 1, 4, 1, 2, 3), + "Lycrimic": (1, 4, 1, 2, 3, 1), + "Bylimic": (4, 1, 2, 2, 2, 1), + "Zothimic": (1, 2, 2, 2, 1, 4), + "Phrolimic": (2, 2, 2, 1, 4, 1), + "Ionagimic": (2, 2, 1, 4, 1, 2), + "Aeolaphimic": (2, 1, 4, 1, 2, 2), + "Kycrimic": (1, 4, 1, 2, 2, 2), + "Garimic": (4, 1, 2, 2, 1, 2), + "Soptimic": (1, 2, 2, 1, 2, 4), + "Ionyptimic": (2, 2, 1, 2, 4, 1), + "Gyrimic": (2, 1, 2, 4, 1, 2), + "Zalimic": (1, 2, 4, 1, 2, 2), + "Stolimic": (2, 4, 1, 2, 2, 1), + "Thonimic": (4, 1, 1, 4, 1, 1), + "Stadimic": (1, 1, 4, 1, 1, 4), + "Thodimic": (1, 4, 1, 1, 4, 1), + "Mythimic": (4, 1, 1, 3, 2, 1), + "Sogimic": (1, 1, 3, 2, 1, 4), + "Gogimic": (1, 3, 2, 1, 4, 1), + "Rothimic": (3, 2, 1, 4, 1, 1), + "Katarimic": (2, 1, 4, 1, 1, 3), + "Sylimic": (1, 4, 1, 1, 3, 2), + "Mixolimic": (3, 2, 3, 2, 1, 1), + "Dadimic": (2, 3, 2, 1, 1, 3), "Aeolyphimic": aeolyphimic, "Gycrimic": gycrimic, - "Pyrimic": [1, 1, 3, 2, 3, 2], - "Lydimic": [1, 3, 2, 3, 2, 1], - "Ionacrimic": [3, 2, 3, 1, 1, 2], - "Gathimic": [2, 3, 1, 1, 2, 3], - "Ionynimic": [3, 1, 1, 2, 3, 2], - "Phrynimic": [1, 1, 2, 3, 2, 3], - "Stathimic": [1, 2, 3, 2, 3, 1], - "Thatimic": [2, 3, 2, 3, 1, 1], - "Dalimic": [3, 2, 2, 3, 1, 1], - "Dygimic": [2, 2, 3, 1, 1, 3], - "Zolimic": [2, 3, 1, 1, 3, 2], - "Epogimic": [3, 1, 1, 3, 2, 2], - "Lanimic": [1, 1, 3, 2, 2, 3], - "Paptimic": [1, 3, 2, 2, 3, 1], - "Darmic": [3, 2, 2, 2, 1, 2], - "Lonimic": [2, 2, 2, 1, 2, 3], - "Ionycrimic": [2, 2, 1, 2, 3, 2], - "Phradimic": [2, 1, 2, 3, 2, 2], - "Aeolorimic": [1, 2, 3, 2, 2, 2], - "Gonimic": [2, 3, 2, 2, 2, 1], - "Phracrimic": [3, 2, 1, 2, 2, 2], - "Aerathimic": [2, 1, 2, 2, 2, 3], - "Sarimic": [1, 2, 2, 2, 3, 2], - "Zoptimic": [2, 2, 2, 3, 2, 1], - "Zeracrimic": [2, 2, 3, 2, 1, 2], - "Byptimic": [2, 3, 2, 1, 2, 2], - "Starimic": [4, 3, 2, 1, 1, 1], - "Phrathimic": [3, 2, 1, 1, 1, 4], - "Saptimic": [2, 1, 1, 1, 4, 3], - "Aerodimic": [1, 1, 1, 4, 3, 2], - "Macrimic": [1, 1, 4, 3, 2, 1], - "Rogimic": [1, 4, 3, 2, 1, 1], - "Bygimic": [4, 3, 1, 1, 2, 1], - "Thycrimic": [3, 1, 1, 2, 1, 4], - "Aeoladimic": [1, 1, 2, 1, 4, 3], - "Dylimic": [1, 2, 1, 4, 3, 1], - "Eponimic": [2, 1, 4, 3, 1, 1], - "Katygimic": [1, 4, 3, 1, 1, 2], - "Stalimic": [4, 2, 3, 1, 1, 1], - "Stoptimic": [2, 3, 1, 1, 1, 4], - "Zygimic": [3, 1, 1, 1, 4, 2], - "Kataptimic": [1, 1, 1, 4, 2, 3], - "Aeolaptimic": [1, 1, 4, 2, 3, 1], - "Pothimic": [1, 4, 2, 3, 1, 1], - "Rycrimic": [4, 2, 2, 1, 2, 1], - "Ronimic": [2, 2, 1, 2, 1, 4], - "Stycrimic": [2, 1, 2, 1, 4, 2], - "Katorimic": [1, 2, 1, 4, 2, 2], - "Epythimic": [2, 1, 4, 2, 2, 1], - "Kaptimic": [1, 4, 2, 2, 1, 2], - "Katythimic": [4, 2, 1, 3, 1, 1], - "Madimic": [2, 1, 3, 1, 1, 4], - "Aerygimic": [1, 3, 1, 1, 4, 2], - "Pylimic": [3, 1, 1, 4, 2, 1], - "Ionathimic": [1, 1, 4, 2, 1, 3], - "Morimic": [1, 4, 2, 1, 3, 1], - "Aerycrimic": [4, 2, 1, 1, 3, 1], - "Ganimic": [2, 1, 1, 3, 1, 4], - "Eparimic": [1, 1, 3, 1, 4, 2], - "Lyrimic": [1, 3, 1, 4, 2, 1], - "Phraptimic": [3, 1, 4, 2, 1, 1], - "Bacrimic": [1, 4, 2, 1, 1, 3], - "Phralimic": [4, 1, 3, 2, 1, 1], - "Phrogimic": [1, 3, 2, 1, 1, 4], - "Rathimic": [3, 2, 1, 1, 4, 1], - "Katocrimic": [2, 1, 1, 4, 1, 3], - "Phryptimic": [1, 1, 4, 1, 3, 2], - "Katynimic": [1, 4, 1, 3, 2, 1], - "Solimic": [4, 1, 3, 1, 2, 1], - "Ionolimic": [1, 3, 1, 2, 1, 4], - "Ionophimic": [3, 1, 2, 1, 4, 1], - "Aeologimic": [1, 2, 1, 4, 1, 3], - "Zadimic": [2, 1, 4, 1, 3, 1], - "Sygimic": [1, 4, 1, 3, 1, 2], - "Thogimic": [4, 1, 3, 1, 1, 2], - "Rythimic": [1, 3, 1, 1, 2, 4], - "Donimic": [3, 1, 1, 2, 4, 1], - "Aeoloptimic": [1, 1, 2, 4, 1, 3], - "Panimic": [1, 2, 4, 1, 3, 1], - "Lodimic": [2, 4, 1, 3, 1, 1], - "Laptimic": [4, 1, 2, 1, 3, 1], - "Lygimic": [1, 2, 1, 3, 1, 4], - "Logimic": [2, 1, 3, 1, 4, 1], - "Lalimic": [1, 3, 1, 4, 1, 2], - "Sothimic": [3, 1, 4, 1, 2, 1], - "Phrocrimic": [1, 4, 1, 2, 1, 3], - "Modimic": [4, 1, 2, 1, 2, 2], - "Barimic": [1, 2, 1, 2, 2, 4], - "Poptimic": [2, 1, 2, 2, 4, 1], - "Sagimic": [1, 2, 2, 4, 1, 2], - "Aelothimic": [2, 2, 4, 1, 2, 1], - "Socrimic": [2, 4, 1, 2, 1, 2], - "Syrimic": [4, 1, 2, 1, 1, 3], - "Stodimic": [1, 2, 1, 1, 3, 4], - "Ionocrimic": [2, 1, 1, 3, 4, 1], - "Zycrimic": [1, 1, 3, 4, 1, 2], - "Ionygimic": [1, 3, 4, 1, 2, 1], - "Katathimic": [3, 4, 1, 2, 1, 1], - "Bolimic": [4, 1, 1, 3, 1, 2], - "Bothimic": [1, 1, 3, 1, 2, 4], - "Katadimic": [1, 3, 1, 2, 4, 1], - "Kodimic": [3, 1, 2, 4, 1, 1], - "Tholimic": [1, 2, 4, 1, 1, 3], - "Ralimic": [2, 4, 1, 1, 3, 1], - "Kanimic": [4, 1, 1, 2, 3, 1], - "Zylimic": [1, 1, 2, 3, 1, 4], - "Zodimic": [1, 2, 3, 1, 4, 1], - "Zarimic": [2, 3, 1, 4, 1, 1], - "Phrythimic": [3, 1, 4, 1, 1, 2], - "Rorimic": [1, 4, 1, 1, 2, 3], - "Pynimic": [4, 1, 1, 1, 3, 2], - "Zanimic": [1, 1, 1, 3, 2, 4], - "Ranimic": [1, 1, 3, 2, 4, 1], - "Ladimic": [1, 3, 2, 4, 1, 1], - "Podimic": [3, 2, 4, 1, 1, 1], - "Ionothimic": [2, 4, 1, 1, 1, 3], - "Kytrimic": [4, 1, 1, 1, 2, 3], - "Golimic": [1, 1, 1, 2, 3, 4], - "Dyptimic": [1, 1, 2, 3, 4, 1], - "Ryrimic": [1, 2, 3, 4, 1, 1], - "Gylimic": [2, 3, 4, 1, 1, 1], - "Aeolycrimic": [3, 4, 1, 1, 1, 2], - "Palimic": [3, 3, 2, 2, 1, 1], - "Stothimic": [3, 2, 2, 1, 1, 3], - "Aeronimic": [2, 2, 1, 1, 3, 3], - "Katagimic": [2, 1, 1, 3, 3, 2], - "Phronimic": [1, 1, 3, 3, 2, 2], - "Banimic": [1, 3, 3, 2, 2, 1], - "Ionodimic": [3, 3, 1, 3, 1, 1], - "Bogimic": [3, 1, 3, 1, 1, 3], - "Mogimic": [1, 3, 1, 1, 3, 3], - "Docrimic": [3, 1, 1, 3, 3, 1], - "Epadimic": [1, 1, 3, 3, 1, 3], - "Aerynimic": [1, 3, 3, 1, 3, 1], - "Mydimic": [3, 3, 1, 1, 3, 1], - "Thyptimic": [3, 1, 1, 3, 1, 3], - "Phrothimic": [1, 1, 3, 1, 3, 3], - "Katycrimic": [1, 3, 1, 3, 3, 1], - "Ionalimic": [3, 1, 3, 3, 1, 1], - "Loptimic": [1, 3, 3, 1, 1, 3], - "Zagimic": [3, 3, 1, 1, 2, 2], - "Lagimic": [3, 1, 1, 2, 2, 3], - "Thyrimic": [1, 1, 2, 2, 3, 3], - "Thothimic": [1, 2, 2, 3, 3, 1], - "Bycrimic": [2, 2, 3, 3, 1, 1], - "Pathimic": [2, 3, 3, 1, 1, 2], - "Mothimic": [3, 2, 2, 1, 3, 1], - "Aeranimic": [2, 2, 1, 3, 1, 3], - "Ragimic": [2, 1, 3, 1, 3, 2], - "Dolimic": [1, 3, 1, 3, 2, 2], - "Porimic": [3, 1, 3, 2, 2, 1], - "Aerylimic": [1, 3, 2, 2, 1, 3], - "Bocrimic": [3, 2, 1, 3, 1, 2], - "Gythimic": [2, 1, 3, 1, 2, 3], - "Pagimic": [1, 3, 1, 2, 3, 2], - "Aeolythimic": [3, 1, 2, 3, 2, 1], - "Molimic": [1, 2, 3, 2, 1, 3], - "Staptimic": [2, 3, 2, 1, 3, 1], - "Zacrimic": [3, 2, 1, 2, 3, 1], - "Larimic": [2, 1, 2, 3, 1, 3], - "Thacrimic": [1, 2, 3, 1, 3, 2], - "Stydimic": [2, 3, 1, 3, 2, 1], - "Lorimic": [3, 1, 3, 2, 1, 2], - "Ionadimic": [1, 3, 2, 1, 2, 3], - "Ionythimic": [3, 1, 3, 1, 3, 1], - "Aerythimic": [1, 3, 1, 3, 1, 3], - "Dynimic": [3, 1, 3, 1, 2, 2], - "Zydimic": [1, 3, 1, 2, 2, 3], - "Zathimic": [3, 1, 2, 2, 3, 1], - "Radimic": [1, 2, 2, 3, 1, 3], - "Stonimic": [2, 2, 3, 1, 3, 1], - "Syptimic": [2, 3, 1, 3, 1, 2], - "Ponimic": [4, 4, 1, 1, 1, 1], - "Kadimic": [4, 1, 1, 1, 1, 4], - "Gynimic": [1, 1, 1, 1, 4, 4], - "Thydimic": [1, 1, 1, 4, 4, 1], - "Polimic": [1, 1, 4, 4, 1, 1], - "Thanimic": [1, 4, 4, 1, 1, 1], - "Lathimic": [4, 3, 1, 2, 1, 1], - "Aeralimic": [3, 1, 2, 1, 1, 4], - "Kynimic": [1, 2, 1, 1, 4, 3], - "Stynimic": [2, 1, 1, 4, 3, 1], - "Epytimic": [1, 1, 4, 3, 1, 2], - "Katoptimic": [1, 4, 3, 1, 2, 1], - "Galimic": [4, 3, 1, 1, 1, 2], - "Kathimic": [3, 1, 1, 1, 2, 4], - "Lylimic": [1, 1, 1, 2, 4, 3], - "Epalimic": [1, 1, 2, 4, 3, 1], - "Epacrimic": [1, 2, 4, 3, 1, 1], - "Sathimic": [2, 4, 3, 1, 1, 1], - "Katanimic": [4, 2, 2, 2, 1, 1], - "Katyrimic": [2, 2, 2, 1, 1, 4], - "Rynimic": [2, 2, 1, 1, 4, 2], - "Pogimic": [2, 1, 1, 4, 2, 2], - "Aeraptimic": [1, 1, 4, 2, 2, 2], - "Epylimic": [1, 4, 2, 2, 2, 1], - "Manimic": [4, 2, 1, 2, 1, 2], - "Marimic": [2, 1, 2, 1, 2, 4], - "Locrimic": [1, 2, 1, 2, 4, 2], - "Rylimic": [2, 1, 2, 4, 2, 1], - "Epatimic": [1, 2, 4, 2, 1, 2], - "Byrimic": [2, 4, 2, 1, 2, 1], - "Kocrimic": [4, 2, 1, 1, 1, 3], - "Korimic": [2, 1, 1, 1, 3, 4], - "Lynimic": [1, 1, 1, 3, 4, 2], - "Malimic": [1, 1, 3, 4, 2, 1], - "Synimic": [1, 3, 4, 2, 1, 1], - "Phragimic": [3, 4, 2, 1, 1, 1], - "Mycrimic": [4, 1, 1, 2, 2, 2], - "Ionorimic": [1, 1, 2, 2, 2, 4], - "Phrydimic": [1, 2, 2, 2, 4, 1], - "Zyptimic": [2, 2, 2, 4, 1, 1], - "Katothimic": [2, 2, 4, 1, 1, 2], - "Phrylimic": [2, 4, 1, 1, 2, 2], - "Aerothimic": [4, 1, 1, 2, 1, 3], - "Stagimic": [1, 1, 2, 1, 3, 4], - "Dorimic": [1, 2, 1, 3, 4, 1], - "Phrycrimic": [2, 1, 3, 4, 1, 1], - "Kyptimic": [1, 3, 4, 1, 1, 2], - "Ionylimic": [3, 4, 1, 1, 2, 1], - "Epynimic": [3, 3, 3, 1, 1, 1], - "Ionogimic": [3, 3, 1, 1, 1, 3], - "Kydimic": [3, 1, 1, 1, 3, 3], - "Gaptimic": [1, 1, 1, 3, 3, 3], - "Tharimic": [1, 1, 3, 3, 3, 1], - "Ionaphimic": [1, 3, 3, 3, 1, 1], - "Thoptimic": [3, 3, 2, 1, 2, 1], - "Bagimic": [3, 2, 1, 2, 1, 3], - "Kyrimic": [2, 1, 2, 1, 3, 3], - "Sonimic": [1, 2, 1, 3, 3, 2], - "Aeolonimic": [2, 1, 3, 3, 2, 1], - "Rygimic": [1, 3, 3, 2, 1, 2], - "Thagimic": [3, 3, 2, 1, 1, 2], - "Kolimic": [3, 2, 1, 1, 2, 3], - "Dycrimic": [2, 1, 1, 2, 3, 3], - "Epycrimic": [1, 1, 2, 3, 3, 2], - "Gocrimic": [1, 2, 3, 3, 2, 1], - "Katolimic": [2, 3, 3, 2, 1, 1], - "Dagimic": [3, 3, 1, 2, 2, 1], - "Aeolydimic": [3, 1, 2, 2, 1, 3], - "Parimic": [1, 2, 2, 1, 3, 3], - "Ionaptimic": [2, 2, 1, 3, 3, 1], - "Thylimic": [2, 1, 3, 3, 1, 2], - "Lolimic": [1, 3, 3, 1, 2, 2], - "Thalimic": [3, 3, 1, 2, 1, 2], - "Stygimic": [3, 1, 2, 1, 2, 3], - "Aeolygimic": [1, 2, 1, 2, 3, 3], - "Aerogimic": [2, 1, 2, 3, 3, 1], - "Dacrimic": [1, 2, 3, 3, 1, 2], - "Baptimic": [2, 3, 3, 1, 2, 1], - "Stythimic": [3, 2, 3, 1, 2, 1], - "Kothimic": [2, 3, 1, 2, 1, 3], - "Pygimic": [3, 1, 2, 1, 3, 2], - "Rodimic": [1, 2, 1, 3, 2, 3], - "Sorimic": [2, 1, 3, 2, 3, 1], - "Monimic": [1, 3, 2, 3, 1, 2], - "Aeragimic": [3, 2, 2, 2, 2, 1], - "Epothimic": [2, 2, 2, 2, 1, 3], - "Salimic": [2, 2, 2, 1, 3, 2], - "Lyptimic": [2, 2, 1, 3, 2, 2], - "Katonimic": [2, 1, 3, 2, 2, 2], - "Gygimic": [1, 3, 2, 2, 2, 2], - "Aeradimic": [3, 2, 1, 3, 2, 1], - "Zyrimic": [2, 1, 3, 2, 1, 3], - "Stylimic": [1, 3, 2, 1, 3, 2], - "Lythimic": [3, 1, 2, 3, 1, 2], - "Dodimic": [1, 2, 3, 1, 2, 3], - "Katalimic": [2, 3, 1, 2, 3, 1], - "Boptimic": [3, 1, 2, 2, 2, 2], - "Stogimic": [1, 2, 2, 2, 2, 3], - "Thynimic": [2, 2, 2, 2, 3, 1], - "Aeolathimic": [2, 2, 2, 3, 1, 2], - "Bythimic": [2, 2, 3, 1, 2, 2], - "Padimic": [2, 3, 1, 2, 2, 2], - "Dathimic": [4, 2, 2, 1, 1, 2], - "Epagimic": [2, 2, 1, 1, 2, 4], - "Raptimic": [2, 1, 1, 2, 4, 2], - "Epolimic": [1, 1, 2, 4, 2, 2], - "Sythimic": [1, 2, 4, 2, 2, 1], - "Sydimic": [2, 4, 2, 2, 1, 1], - "Gacrimic": [4, 2, 1, 1, 2, 2], - "Borimic": [2, 1, 1, 2, 2, 4], - "Sycrimic": [1, 1, 2, 2, 4, 2], - "Gadimic": [1, 2, 2, 4, 2, 1], - "Aeolocrimic": [2, 2, 4, 2, 1, 1], - "Phrygimic": [2, 4, 2, 1, 1, 2], + "Pyrimic": (1, 1, 3, 2, 3, 2), + "Lydimic": (1, 3, 2, 3, 2, 1), + "Ionacrimic": (3, 2, 3, 1, 1, 2), + "Gathimic": (2, 3, 1, 1, 2, 3), + "Ionynimic": (3, 1, 1, 2, 3, 2), + "Phrynimic": (1, 1, 2, 3, 2, 3), + "Stathimic": (1, 2, 3, 2, 3, 1), + "Thatimic": (2, 3, 2, 3, 1, 1), + "Dalimic": (3, 2, 2, 3, 1, 1), + "Dygimic": (2, 2, 3, 1, 1, 3), + "Zolimic": (2, 3, 1, 1, 3, 2), + "Epogimic": (3, 1, 1, 3, 2, 2), + "Lanimic": (1, 1, 3, 2, 2, 3), + "Paptimic": (1, 3, 2, 2, 3, 1), + "Darmic": (3, 2, 2, 2, 1, 2), + "Lonimic": (2, 2, 2, 1, 2, 3), + "Ionycrimic": (2, 2, 1, 2, 3, 2), + "Phradimic": (2, 1, 2, 3, 2, 2), + "Aeolorimic": (1, 2, 3, 2, 2, 2), + "Gonimic": (2, 3, 2, 2, 2, 1), + "Phracrimic": (3, 2, 1, 2, 2, 2), + "Aerathimic": (2, 1, 2, 2, 2, 3), + "Sarimic": (1, 2, 2, 2, 3, 2), + "Zoptimic": (2, 2, 2, 3, 2, 1), + "Zeracrimic": (2, 2, 3, 2, 1, 2), + "Byptimic": (2, 3, 2, 1, 2, 2), + "Starimic": (4, 3, 2, 1, 1, 1), + "Phrathimic": (3, 2, 1, 1, 1, 4), + "Saptimic": (2, 1, 1, 1, 4, 3), + "Aerodimic": (1, 1, 1, 4, 3, 2), + "Macrimic": (1, 1, 4, 3, 2, 1), + "Rogimic": (1, 4, 3, 2, 1, 1), + "Bygimic": (4, 3, 1, 1, 2, 1), + "Thycrimic": (3, 1, 1, 2, 1, 4), + "Aeoladimic": (1, 1, 2, 1, 4, 3), + "Dylimic": (1, 2, 1, 4, 3, 1), + "Eponimic": (2, 1, 4, 3, 1, 1), + "Katygimic": (1, 4, 3, 1, 1, 2), + "Stalimic": (4, 2, 3, 1, 1, 1), + "Stoptimic": (2, 3, 1, 1, 1, 4), + "Zygimic": (3, 1, 1, 1, 4, 2), + "Kataptimic": (1, 1, 1, 4, 2, 3), + "Aeolaptimic": (1, 1, 4, 2, 3, 1), + "Pothimic": (1, 4, 2, 3, 1, 1), + "Rycrimic": (4, 2, 2, 1, 2, 1), + "Ronimic": (2, 2, 1, 2, 1, 4), + "Stycrimic": (2, 1, 2, 1, 4, 2), + "Katorimic": (1, 2, 1, 4, 2, 2), + "Epythimic": (2, 1, 4, 2, 2, 1), + "Kaptimic": (1, 4, 2, 2, 1, 2), + "Katythimic": (4, 2, 1, 3, 1, 1), + "Madimic": (2, 1, 3, 1, 1, 4), + "Aerygimic": (1, 3, 1, 1, 4, 2), + "Pylimic": (3, 1, 1, 4, 2, 1), + "Ionathimic": (1, 1, 4, 2, 1, 3), + "Morimic": (1, 4, 2, 1, 3, 1), + "Aerycrimic": (4, 2, 1, 1, 3, 1), + "Ganimic": (2, 1, 1, 3, 1, 4), + "Eparimic": (1, 1, 3, 1, 4, 2), + "Lyrimic": (1, 3, 1, 4, 2, 1), + "Phraptimic": (3, 1, 4, 2, 1, 1), + "Bacrimic": (1, 4, 2, 1, 1, 3), + "Phralimic": (4, 1, 3, 2, 1, 1), + "Phrogimic": (1, 3, 2, 1, 1, 4), + "Rathimic": (3, 2, 1, 1, 4, 1), + "Katocrimic": (2, 1, 1, 4, 1, 3), + "Phryptimic": (1, 1, 4, 1, 3, 2), + "Katynimic": (1, 4, 1, 3, 2, 1), + "Solimic": (4, 1, 3, 1, 2, 1), + "Ionolimic": (1, 3, 1, 2, 1, 4), + "Ionophimic": (3, 1, 2, 1, 4, 1), + "Aeologimic": (1, 2, 1, 4, 1, 3), + "Zadimic": (2, 1, 4, 1, 3, 1), + "Sygimic": (1, 4, 1, 3, 1, 2), + "Thogimic": (4, 1, 3, 1, 1, 2), + "Rythimic": (1, 3, 1, 1, 2, 4), + "Donimic": (3, 1, 1, 2, 4, 1), + "Aeoloptimic": (1, 1, 2, 4, 1, 3), + "Panimic": (1, 2, 4, 1, 3, 1), + "Lodimic": (2, 4, 1, 3, 1, 1), + "Laptimic": (4, 1, 2, 1, 3, 1), + "Lygimic": (1, 2, 1, 3, 1, 4), + "Logimic": (2, 1, 3, 1, 4, 1), + "Lalimic": (1, 3, 1, 4, 1, 2), + "Sothimic": (3, 1, 4, 1, 2, 1), + "Phrocrimic": (1, 4, 1, 2, 1, 3), + "Modimic": (4, 1, 2, 1, 2, 2), + "Barimic": (1, 2, 1, 2, 2, 4), + "Poptimic": (2, 1, 2, 2, 4, 1), + "Sagimic": (1, 2, 2, 4, 1, 2), + "Aelothimic": (2, 2, 4, 1, 2, 1), + "Socrimic": (2, 4, 1, 2, 1, 2), + "Syrimic": (4, 1, 2, 1, 1, 3), + "Stodimic": (1, 2, 1, 1, 3, 4), + "Ionocrimic": (2, 1, 1, 3, 4, 1), + "Zycrimic": (1, 1, 3, 4, 1, 2), + "Ionygimic": (1, 3, 4, 1, 2, 1), + "Katathimic": (3, 4, 1, 2, 1, 1), + "Bolimic": (4, 1, 1, 3, 1, 2), + "Bothimic": (1, 1, 3, 1, 2, 4), + "Katadimic": (1, 3, 1, 2, 4, 1), + "Kodimic": (3, 1, 2, 4, 1, 1), + "Tholimic": (1, 2, 4, 1, 1, 3), + "Ralimic": (2, 4, 1, 1, 3, 1), + "Kanimic": (4, 1, 1, 2, 3, 1), + "Zylimic": (1, 1, 2, 3, 1, 4), + "Zodimic": (1, 2, 3, 1, 4, 1), + "Zarimic": (2, 3, 1, 4, 1, 1), + "Phrythimic": (3, 1, 4, 1, 1, 2), + "Rorimic": (1, 4, 1, 1, 2, 3), + "Pynimic": (4, 1, 1, 1, 3, 2), + "Zanimic": (1, 1, 1, 3, 2, 4), + "Ranimic": (1, 1, 3, 2, 4, 1), + "Ladimic": (1, 3, 2, 4, 1, 1), + "Podimic": (3, 2, 4, 1, 1, 1), + "Ionothimic": (2, 4, 1, 1, 1, 3), + "Kytrimic": (4, 1, 1, 1, 2, 3), + "Golimic": (1, 1, 1, 2, 3, 4), + "Dyptimic": (1, 1, 2, 3, 4, 1), + "Ryrimic": (1, 2, 3, 4, 1, 1), + "Gylimic": (2, 3, 4, 1, 1, 1), + "Aeolycrimic": (3, 4, 1, 1, 1, 2), + "Palimic": (3, 3, 2, 2, 1, 1), + "Stothimic": (3, 2, 2, 1, 1, 3), + "Aeronimic": (2, 2, 1, 1, 3, 3), + "Katagimic": (2, 1, 1, 3, 3, 2), + "Phronimic": (1, 1, 3, 3, 2, 2), + "Banimic": (1, 3, 3, 2, 2, 1), + "Ionodimic": (3, 3, 1, 3, 1, 1), + "Bogimic": (3, 1, 3, 1, 1, 3), + "Mogimic": (1, 3, 1, 1, 3, 3), + "Docrimic": (3, 1, 1, 3, 3, 1), + "Epadimic": (1, 1, 3, 3, 1, 3), + "Aerynimic": (1, 3, 3, 1, 3, 1), + "Mydimic": (3, 3, 1, 1, 3, 1), + "Thyptimic": (3, 1, 1, 3, 1, 3), + "Phrothimic": (1, 1, 3, 1, 3, 3), + "Katycrimic": (1, 3, 1, 3, 3, 1), + "Ionalimic": (3, 1, 3, 3, 1, 1), + "Loptimic": (1, 3, 3, 1, 1, 3), + "Zagimic": (3, 3, 1, 1, 2, 2), + "Lagimic": (3, 1, 1, 2, 2, 3), + "Thyrimic": (1, 1, 2, 2, 3, 3), + "Thothimic": (1, 2, 2, 3, 3, 1), + "Bycrimic": (2, 2, 3, 3, 1, 1), + "Pathimic": (2, 3, 3, 1, 1, 2), + "Mothimic": (3, 2, 2, 1, 3, 1), + "Aeranimic": (2, 2, 1, 3, 1, 3), + "Ragimic": (2, 1, 3, 1, 3, 2), + "Dolimic": (1, 3, 1, 3, 2, 2), + "Porimic": (3, 1, 3, 2, 2, 1), + "Aerylimic": (1, 3, 2, 2, 1, 3), + "Bocrimic": (3, 2, 1, 3, 1, 2), + "Gythimic": (2, 1, 3, 1, 2, 3), + "Pagimic": (1, 3, 1, 2, 3, 2), + "Aeolythimic": (3, 1, 2, 3, 2, 1), + "Molimic": (1, 2, 3, 2, 1, 3), + "Staptimic": (2, 3, 2, 1, 3, 1), + "Zacrimic": (3, 2, 1, 2, 3, 1), + "Larimic": (2, 1, 2, 3, 1, 3), + "Thacrimic": (1, 2, 3, 1, 3, 2), + "Stydimic": (2, 3, 1, 3, 2, 1), + "Lorimic": (3, 1, 3, 2, 1, 2), + "Ionadimic": (1, 3, 2, 1, 2, 3), + "Ionythimic": (3, 1, 3, 1, 3, 1), + "Aerythimic": (1, 3, 1, 3, 1, 3), + "Dynimic": (3, 1, 3, 1, 2, 2), + "Zydimic": (1, 3, 1, 2, 2, 3), + "Zathimic": (3, 1, 2, 2, 3, 1), + "Radimic": (1, 2, 2, 3, 1, 3), + "Stonimic": (2, 2, 3, 1, 3, 1), + "Syptimic": (2, 3, 1, 3, 1, 2), + "Ponimic": (4, 4, 1, 1, 1, 1), + "Kadimic": (4, 1, 1, 1, 1, 4), + "Gynimic": (1, 1, 1, 1, 4, 4), + "Thydimic": (1, 1, 1, 4, 4, 1), + "Polimic": (1, 1, 4, 4, 1, 1), + "Thanimic": (1, 4, 4, 1, 1, 1), + "Lathimic": (4, 3, 1, 2, 1, 1), + "Aeralimic": (3, 1, 2, 1, 1, 4), + "Kynimic": (1, 2, 1, 1, 4, 3), + "Stynimic": (2, 1, 1, 4, 3, 1), + "Epytimic": (1, 1, 4, 3, 1, 2), + "Katoptimic": (1, 4, 3, 1, 2, 1), + "Galimic": (4, 3, 1, 1, 1, 2), + "Kathimic": (3, 1, 1, 1, 2, 4), + "Lylimic": (1, 1, 1, 2, 4, 3), + "Epalimic": (1, 1, 2, 4, 3, 1), + "Epacrimic": (1, 2, 4, 3, 1, 1), + "Sathimic": (2, 4, 3, 1, 1, 1), + "Katanimic": (4, 2, 2, 2, 1, 1), + "Katyrimic": (2, 2, 2, 1, 1, 4), + "Rynimic": (2, 2, 1, 1, 4, 2), + "Pogimic": (2, 1, 1, 4, 2, 2), + "Aeraptimic": (1, 1, 4, 2, 2, 2), + "Epylimic": (1, 4, 2, 2, 2, 1), + "Manimic": (4, 2, 1, 2, 1, 2), + "Marimic": (2, 1, 2, 1, 2, 4), + "Locrimic": (1, 2, 1, 2, 4, 2), + "Rylimic": (2, 1, 2, 4, 2, 1), + "Epatimic": (1, 2, 4, 2, 1, 2), + "Byrimic": (2, 4, 2, 1, 2, 1), + "Kocrimic": (4, 2, 1, 1, 1, 3), + "Korimic": (2, 1, 1, 1, 3, 4), + "Lynimic": (1, 1, 1, 3, 4, 2), + "Malimic": (1, 1, 3, 4, 2, 1), + "Synimic": (1, 3, 4, 2, 1, 1), + "Phragimic": (3, 4, 2, 1, 1, 1), + "Mycrimic": (4, 1, 1, 2, 2, 2), + "Ionorimic": (1, 1, 2, 2, 2, 4), + "Phrydimic": (1, 2, 2, 2, 4, 1), + "Zyptimic": (2, 2, 2, 4, 1, 1), + "Katothimic": (2, 2, 4, 1, 1, 2), + "Phrylimic": (2, 4, 1, 1, 2, 2), + "Aerothimic": (4, 1, 1, 2, 1, 3), + "Stagimic": (1, 1, 2, 1, 3, 4), + "Dorimic": (1, 2, 1, 3, 4, 1), + "Phrycrimic": (2, 1, 3, 4, 1, 1), + "Kyptimic": (1, 3, 4, 1, 1, 2), + "Ionylimic": (3, 4, 1, 1, 2, 1), + "Epynimic": (3, 3, 3, 1, 1, 1), + "Ionogimic": (3, 3, 1, 1, 1, 3), + "Kydimic": (3, 1, 1, 1, 3, 3), + "Gaptimic": (1, 1, 1, 3, 3, 3), + "Tharimic": (1, 1, 3, 3, 3, 1), + "Ionaphimic": (1, 3, 3, 3, 1, 1), + "Thoptimic": (3, 3, 2, 1, 2, 1), + "Bagimic": (3, 2, 1, 2, 1, 3), + "Kyrimic": (2, 1, 2, 1, 3, 3), + "Sonimic": (1, 2, 1, 3, 3, 2), + "Aeolonimic": (2, 1, 3, 3, 2, 1), + "Rygimic": (1, 3, 3, 2, 1, 2), + "Thagimic": (3, 3, 2, 1, 1, 2), + "Kolimic": (3, 2, 1, 1, 2, 3), + "Dycrimic": (2, 1, 1, 2, 3, 3), + "Epycrimic": (1, 1, 2, 3, 3, 2), + "Gocrimic": (1, 2, 3, 3, 2, 1), + "Katolimic": (2, 3, 3, 2, 1, 1), + "Dagimic": (3, 3, 1, 2, 2, 1), + "Aeolydimic": (3, 1, 2, 2, 1, 3), + "Parimic": (1, 2, 2, 1, 3, 3), + "Ionaptimic": (2, 2, 1, 3, 3, 1), + "Thylimic": (2, 1, 3, 3, 1, 2), + "Lolimic": (1, 3, 3, 1, 2, 2), + "Thalimic": (3, 3, 1, 2, 1, 2), + "Stygimic": (3, 1, 2, 1, 2, 3), + "Aeolygimic": (1, 2, 1, 2, 3, 3), + "Aerogimic": (2, 1, 2, 3, 3, 1), + "Dacrimic": (1, 2, 3, 3, 1, 2), + "Baptimic": (2, 3, 3, 1, 2, 1), + "Stythimic": (3, 2, 3, 1, 2, 1), + "Kothimic": (2, 3, 1, 2, 1, 3), + "Pygimic": (3, 1, 2, 1, 3, 2), + "Rodimic": (1, 2, 1, 3, 2, 3), + "Sorimic": (2, 1, 3, 2, 3, 1), + "Monimic": (1, 3, 2, 3, 1, 2), + "Aeragimic": (3, 2, 2, 2, 2, 1), + "Epothimic": (2, 2, 2, 2, 1, 3), + "Salimic": (2, 2, 2, 1, 3, 2), + "Lyptimic": (2, 2, 1, 3, 2, 2), + "Katonimic": (2, 1, 3, 2, 2, 2), + "Gygimic": (1, 3, 2, 2, 2, 2), + "Aeradimic": (3, 2, 1, 3, 2, 1), + "Zyrimic": (2, 1, 3, 2, 1, 3), + "Stylimic": (1, 3, 2, 1, 3, 2), + "Lythimic": (3, 1, 2, 3, 1, 2), + "Dodimic": (1, 2, 3, 1, 2, 3), + "Katalimic": (2, 3, 1, 2, 3, 1), + "Boptimic": (3, 1, 2, 2, 2, 2), + "Stogimic": (1, 2, 2, 2, 2, 3), + "Thynimic": (2, 2, 2, 2, 3, 1), + "Aeolathimic": (2, 2, 2, 3, 1, 2), + "Bythimic": (2, 2, 3, 1, 2, 2), + "Padimic": (2, 3, 1, 2, 2, 2), + "Dathimic": (4, 2, 2, 1, 1, 2), + "Epagimic": (2, 2, 1, 1, 2, 4), + "Raptimic": (2, 1, 1, 2, 4, 2), + "Epolimic": (1, 1, 2, 4, 2, 2), + "Sythimic": (1, 2, 4, 2, 2, 1), + "Sydimic": (2, 4, 2, 2, 1, 1), + "Gacrimic": (4, 2, 1, 1, 2, 2), + "Borimic": (2, 1, 1, 2, 2, 4), + "Sycrimic": (1, 1, 2, 2, 4, 2), + "Gadimic": (1, 2, 2, 4, 2, 1), + "Aeolocrimic": (2, 2, 4, 2, 1, 1), + "Phrygimic": (2, 4, 2, 1, 1, 2), "WholeTone": whole, - "Lydian": [2, 2, 2, 1, 2, 2, 1], - "Mixolydian": [2, 2, 1, 2, 2, 1, 2], + "Lydian": (2, 2, 2, 1, 2, 2, 1), + "Mixolydian": (2, 2, 1, 2, 2, 1, 2), "Aeolian": aeolian, - "Locrian": [1, 2, 2, 1, 2, 2, 2], + "Locrian": (1, 2, 2, 1, 2, 2, 2), "Ionian": ionian, - "Dorian": [2, 1, 2, 2, 2, 1, 2], - "Phrygian": [1, 2, 2, 2, 1, 2, 2], - "Ionythian": [4, 1, 2, 2, 1, 1, 1], - "Aeolyrian": [1, 2, 2, 1, 1, 1, 4], - "Gorian": [2, 2, 1, 1, 1, 4, 1], - "Aeolodian": [2, 1, 1, 1, 4, 1, 2], - "Doptian": [1, 1, 1, 4, 1, 2, 2], - "Aeraphian": [1, 1, 4, 1, 2, 2, 1], - "Zacrian": [1, 4, 1, 2, 2, 1, 1], - "Ionarian": [4, 1, 1, 3, 1, 1, 1], - "Dynian": [1, 1, 3, 1, 1, 1, 4], - "Zydian": [1, 3, 1, 1, 1, 4, 1], - "Zathian": [3, 1, 1, 1, 4, 1, 1], - "Radian": [1, 1, 1, 4, 1, 1, 3], - "Stonian": [1, 1, 4, 1, 1, 3, 1], - "Syptian": [1, 4, 1, 1, 3, 1, 1], - "Aeolacrian": [4, 1, 1, 1, 3, 1, 1], - "Zythian": [1, 1, 1, 3, 1, 1, 4], - "Dyrian": [1, 1, 3, 1, 1, 4, 1], - "Koptian": [1, 3, 1, 1, 4, 1, 1], - "Thocrian": [3, 1, 1, 4, 1, 1, 1], - "Aeolanian": [1, 1, 4, 1, 1, 1, 3], - "Danian": [1, 4, 1, 1, 1, 3, 1], - "Zogian": [4, 1, 1, 1, 2, 2, 1], - "Epyrian": [1, 1, 1, 2, 2, 1, 4], - "Lycrian": [1, 1, 2, 2, 1, 4, 1], - "Daptian": [1, 2, 2, 1, 4, 1, 1], - "Kygian": [2, 2, 1, 4, 1, 1, 1], - "Mocrian": [2, 1, 4, 1, 1, 1, 2], - "Zynian": [1, 4, 1, 1, 1, 2, 2], - "Phrolian": [3, 2, 2, 1, 2, 1, 1], - "Ionagian": [2, 2, 1, 2, 1, 1, 3], - "Aeodian": [2, 1, 2, 1, 1, 3, 2], - "Kycrian": [1, 2, 1, 1, 3, 2, 2], - "Epygian": [2, 1, 1, 3, 2, 2, 1], - "Zaptian": [1, 1, 3, 2, 2, 1, 2], - "Kagian": [1, 3, 2, 2, 1, 2, 1], - "Soptian": [3, 2, 2, 1, 1, 1, 2], - "Ionyptian": [2, 2, 1, 1, 1, 2, 3], - "Gyrian": [2, 1, 1, 1, 2, 3, 2], - "Zalian": [1, 1, 1, 2, 3, 2, 2], - "Stolian": [1, 1, 2, 3, 2, 2, 1], - "Bylian": [1, 2, 3, 2, 2, 1, 1], - "Zothian": [2, 3, 2, 2, 1, 1, 1], - "Thonian": [3, 2, 1, 2, 2, 1, 1], - "Phrorian": [2, 1, 2, 2, 1, 1, 3], - "Stadian": [1, 2, 2, 1, 1, 3, 2], - "Thodian": [2, 2, 1, 1, 3, 2, 1], - "Dogian": [2, 1, 1, 3, 2, 1, 2], - "Mixopyrian": [1, 1, 3, 2, 1, 2, 2], - "Garian": [1, 3, 2, 1, 2, 2, 1], - "Epathian": [3, 2, 1, 1, 3, 1, 1], - "Mythian": [2, 1, 1, 3, 1, 1, 3], - "Sogian": [1, 1, 3, 1, 1, 3, 2], - "Gogian": [1, 3, 1, 1, 3, 2, 1], - "Rothian": [3, 1, 1, 3, 2, 1, 1], - "Katarian": [1, 1, 3, 2, 1, 1, 3], - "Stylian": [1, 3, 2, 1, 1, 3, 1], - "Stathian": [3, 2, 1, 1, 1, 2, 2], - "Mixonyphian": [2, 1, 1, 1, 2, 2, 3], - "Magian": [1, 1, 1, 2, 2, 3, 2], - "Dadian": [1, 1, 2, 2, 3, 2, 1], - "Aeolylian": [1, 2, 2, 3, 2, 1, 1], - "Gycrian": [2, 2, 3, 2, 1, 1, 1], - "Pyrian": [2, 3, 2, 1, 1, 1, 2], - "Epogian": [3, 1, 1, 3, 1, 1, 2], - "Lanian": [1, 1, 3, 1, 1, 2, 3], - "Paptian": [1, 3, 1, 1, 2, 3, 1], - "Ionacrian": [3, 1, 1, 2, 3, 1, 1], - "Gathian": [1, 1, 2, 3, 1, 1, 3], - "Ionyphian": [1, 2, 3, 1, 1, 3, 1], - "Phrynian": [2, 3, 1, 1, 3, 1, 1], - "Ionycrian": [3, 1, 1, 2, 2, 1, 2], - "Phradian": [1, 1, 2, 2, 1, 2, 3], - "Aeolorian": [1, 2, 2, 1, 2, 3, 1], - "Gonian": [2, 2, 1, 2, 3, 1, 1], - "Dalian": [2, 1, 2, 3, 1, 1, 2], - "Dygian": [1, 2, 3, 1, 1, 2, 2], - "Zolian": [2, 3, 1, 1, 2, 2, 1], - "Aerathian": [3, 1, 1, 2, 1, 2, 2], - "Sarian": [1, 1, 2, 1, 2, 2, 3], - "Zoptian": [1, 2, 1, 2, 2, 3, 1], - "Aeracrian": [2, 1, 2, 2, 3, 1, 1], - "Byptian": [1, 2, 2, 3, 1, 1, 2], - "Darian": [2, 2, 3, 1, 1, 2, 1], - "Lonian": [2, 3, 1, 1, 2, 1, 2], - "Aeopian": [4, 2, 1, 2, 1, 1, 1], - "Rygian": [2, 1, 2, 1, 1, 1, 4], - "Epynian": [1, 2, 1, 1, 1, 4, 2], - "Ionogian": [2, 1, 1, 1, 4, 2, 1], - "Kydian": [1, 1, 1, 4, 2, 1, 2], - "Gaptian": [1, 1, 4, 2, 1, 2, 1], - "Tharian": [1, 4, 2, 1, 2, 1, 1], - "Epycrian": [4, 2, 1, 1, 1, 2, 1], - "Gocrian": [2, 1, 1, 1, 2, 1, 4], - "Katolian": [1, 1, 1, 2, 1, 4, 2], - "Thoptian": [1, 1, 2, 1, 4, 2, 1], - "Bagian": [1, 2, 1, 4, 2, 1, 1], - "Kyrian": [2, 1, 4, 2, 1, 1, 1], - "Sonian": [1, 4, 2, 1, 1, 1, 2], - "Parian": [4, 1, 3, 1, 1, 1, 1], - "Ionaptian": [1, 3, 1, 1, 1, 1, 4], - "Thylian": [3, 1, 1, 1, 1, 4, 1], - "Lolian": [1, 1, 1, 1, 4, 1, 3], - "Thagian": [1, 1, 1, 4, 1, 3, 1], - "Kolian": [1, 1, 4, 1, 3, 1, 1], - "Dycrian": [1, 4, 1, 3, 1, 1, 1], - "Stygian": [4, 1, 2, 1, 2, 1, 1], - "Aeolygian": [1, 2, 1, 2, 1, 1, 4], - "Aerogian": [2, 1, 2, 1, 1, 4, 1], - "Dacrian": [1, 2, 1, 1, 4, 1, 2], - "Baptian": [2, 1, 1, 4, 1, 2, 1], - "Dagian": [1, 1, 4, 1, 2, 1, 2], - "Aeolydian": [1, 4, 1, 2, 1, 2, 1], - "Stythian": [4, 1, 2, 1, 1, 2, 1], - "Kothian": [1, 2, 1, 1, 2, 1, 4], - "Pygian": [2, 1, 1, 2, 1, 4, 1], - "Rodian": [1, 1, 2, 1, 4, 1, 2], - "Sorian": [1, 2, 1, 4, 1, 2, 1], - "Monian": [2, 1, 4, 1, 2, 1, 1], - "Thalian": [1, 4, 1, 2, 1, 1, 2], - "Zorian": [4, 1, 2, 1, 1, 1, 2], - "Aeragian": [1, 2, 1, 1, 1, 2, 4], - "Epothian": [2, 1, 1, 1, 2, 4, 1], - "Salian": [1, 1, 1, 2, 4, 1, 2], - "Lyptian": [1, 1, 2, 4, 1, 2, 1], - "Katonian": [1, 2, 4, 1, 2, 1, 1], - "Gyphian": [2, 4, 1, 2, 1, 1, 1], - "Thacrian": [4, 1, 1, 2, 2, 1, 1], - "Dodian": [1, 1, 2, 2, 1, 1, 4], - "Aeolyptian": [1, 2, 2, 1, 1, 4, 1], - "Aeolonian": [2, 2, 1, 1, 4, 1, 1], - "Aeradian": [2, 1, 1, 4, 1, 1, 2], - "Aeolagian": [1, 1, 4, 1, 1, 2, 2], - "Zyrian": [1, 4, 1, 1, 2, 2, 1], - "Aeolathian": [4, 1, 1, 2, 1, 2, 1], - "Bythian": [1, 1, 2, 1, 2, 1, 4], - "Padian": [1, 2, 1, 2, 1, 4, 1], - "Rolian": [2, 1, 2, 1, 4, 1, 1], - "Pydian": [1, 2, 1, 4, 1, 1, 2], - "Thygian": [2, 1, 4, 1, 1, 2, 1], - "Katalian": [1, 4, 1, 1, 2, 1, 2], - "Saptian": [4, 1, 1, 1, 2, 1, 2], - "Aerodian": [1, 1, 1, 2, 1, 2, 4], - "Macrian": [1, 1, 2, 1, 2, 4, 1], - "Rogian": [1, 2, 1, 2, 4, 1, 1], - "Boptian": [2, 1, 2, 4, 1, 1, 1], - "Stogian": [1, 2, 4, 1, 1, 1, 2], - "Thynian": [2, 4, 1, 1, 1, 2, 1], - "Thycrian": [4, 1, 1, 1, 1, 3, 1], - "Aeoladian": [1, 1, 1, 1, 3, 1, 4], - "Dylian": [1, 1, 1, 3, 1, 4, 1], - "Eponian": [1, 1, 3, 1, 4, 1, 1], - "Katygian": [1, 3, 1, 4, 1, 1, 1], - "Starian": [3, 1, 4, 1, 1, 1, 1], - "Phrathian": [1, 4, 1, 1, 1, 1, 3], - "Stalian": [3, 3, 1, 1, 2, 1, 1], - "Stoptian": [3, 1, 1, 2, 1, 1, 3], - "Zygian": [1, 1, 2, 1, 1, 3, 3], - "Kataptian": [1, 2, 1, 1, 3, 3, 1], - "Aeolaptian": [2, 1, 1, 3, 3, 1, 1], - "Pothian": [1, 1, 3, 3, 1, 1, 2], - "Bygian": [1, 3, 3, 1, 1, 2, 1], - "Morian": [3, 2, 3, 1, 1, 1, 1], - "Rycrian": [2, 3, 1, 1, 1, 1, 3], - "Ronian": [3, 1, 1, 1, 1, 3, 2], - "Stycrian": [1, 1, 1, 1, 3, 2, 3], - "Katorian": [1, 1, 1, 3, 2, 3, 1], - "Epythian": [1, 1, 3, 2, 3, 1, 1], - "Kaptian": [1, 3, 2, 3, 1, 1, 1], - "Phraptian": [3, 2, 2, 2, 1, 1, 1], - "Bacrian": [2, 2, 2, 1, 1, 1, 3], - "Katythian": [2, 2, 1, 1, 1, 3, 2], - "Madian": [2, 1, 1, 1, 3, 2, 2], - "Aerygian": [1, 1, 1, 3, 2, 2, 2], - "Pylian": [1, 1, 3, 2, 2, 2, 1], - "Ionathian": [1, 3, 2, 2, 2, 1, 1], - "Katocrian": [3, 2, 1, 3, 1, 1, 1], - "Phryptian": [2, 1, 3, 1, 1, 1, 3], - "Katynian": [1, 3, 1, 1, 1, 3, 2], - "Aerycrian": [3, 1, 1, 1, 3, 2, 1], - "Ganian": [1, 1, 1, 3, 2, 1, 3], - "Eparian": [1, 1, 3, 2, 1, 3, 1], - "Lyrian": [1, 3, 2, 1, 3, 1, 1], - "Ionopian": [3, 2, 1, 2, 1, 1, 2], - "Aeologian": [2, 1, 2, 1, 1, 2, 3], - "Zadian": [1, 2, 1, 1, 2, 3, 2], - "Sygian": [2, 1, 1, 2, 3, 2, 1], - "Phralian": [1, 1, 2, 3, 2, 1, 2], - "Phrogian": [1, 2, 3, 2, 1, 2, 1], - "Rathian": [2, 3, 2, 1, 2, 1, 1], - "Rythian": [3, 2, 1, 1, 2, 1, 2], - "Donian": [2, 1, 1, 2, 1, 2, 3], - "Aeoloptian": [1, 1, 2, 1, 2, 3, 2], - "Panian": [1, 2, 1, 2, 3, 2, 1], - "Lodian": [2, 1, 2, 3, 2, 1, 1], - "Solian": [1, 2, 3, 2, 1, 1, 2], - "Ionolian": [2, 3, 2, 1, 1, 2, 1], - "Laptian": [3, 2, 1, 1, 1, 3, 1], - "Lygian": [2, 1, 1, 1, 3, 1, 3], - "Logian": [1, 1, 1, 3, 1, 3, 2], - "Lalian": [1, 1, 3, 1, 3, 2, 1], - "Sothian": [1, 3, 1, 3, 2, 1, 1], - "Phrocrian": [3, 1, 3, 2, 1, 1, 1], - "Thogian": [1, 3, 2, 1, 1, 1, 3], - "Katathian": [3, 1, 3, 1, 2, 1, 1], - "Modian": [1, 3, 1, 2, 1, 1, 3], - "Barian": [3, 1, 2, 1, 1, 3, 1], - "Mixolocrian": [1, 2, 1, 1, 3, 1, 3], - "Sagian": [2, 1, 1, 3, 1, 3, 1], - "Aeolothian": [1, 1, 3, 1, 3, 1, 2], - "Socrian": [1, 3, 1, 3, 1, 2, 1], - "Tholian": [3, 1, 3, 1, 1, 2, 1], - "Ralian": [1, 3, 1, 1, 2, 1, 3], - "Syrian": [3, 1, 1, 2, 1, 3, 1], - "Stodian": [1, 1, 2, 1, 3, 1, 3], - "Ionocrian": [1, 2, 1, 3, 1, 3, 1], - "Zycrian": [2, 1, 3, 1, 3, 1, 1], - "Ionygian": [1, 3, 1, 3, 1, 1, 2], - "Zarian": [3, 1, 3, 1, 1, 1, 2], - "Phrythian": [1, 3, 1, 1, 1, 2, 3], - "Rorian": [3, 1, 1, 1, 2, 3, 1], - "Bolian": [1, 1, 1, 2, 3, 1, 3], - "Bothian": [1, 1, 2, 3, 1, 3, 1], - "Katadian": [1, 2, 3, 1, 3, 1, 1], - "Kodian": [2, 3, 1, 3, 1, 1, 1], - "Ranian": [3, 1, 2, 3, 1, 1, 1], - "Ladian": [1, 2, 3, 1, 1, 1, 3], - "Podian": [2, 3, 1, 1, 1, 3, 1], - "Ionothian": [3, 1, 1, 1, 3, 1, 2], - "Kanian": [1, 1, 1, 3, 1, 2, 3], - "Zylian": [1, 1, 3, 1, 2, 3, 1], - "Zodian": [1, 3, 1, 2, 3, 1, 1], - "Golian": [3, 1, 2, 2, 2, 1, 1], - "Dyptian": [1, 2, 2, 2, 1, 1, 3], - "Ryphian": [2, 2, 2, 1, 1, 3, 1], - "Gylian": [2, 2, 1, 1, 3, 1, 2], - "Aeolycrian": [2, 1, 1, 3, 1, 2, 2], - "Pynian": [1, 1, 3, 1, 2, 2, 2], - "Zanian": [1, 3, 1, 2, 2, 2, 1], - "Palian": [3, 1, 2, 2, 1, 2, 1], - "Stothian": [1, 2, 2, 1, 2, 1, 3], + "Dorian": (2, 1, 2, 2, 2, 1, 2), + "Phrygian": (1, 2, 2, 2, 1, 2, 2), + "Ionythian": (4, 1, 2, 2, 1, 1, 1), + "Aeolyrian": (1, 2, 2, 1, 1, 1, 4), + "Gorian": (2, 2, 1, 1, 1, 4, 1), + "Aeolodian": (2, 1, 1, 1, 4, 1, 2), + "Doptian": (1, 1, 1, 4, 1, 2, 2), + "Aeraphian": (1, 1, 4, 1, 2, 2, 1), + "Zacrian": (1, 4, 1, 2, 2, 1, 1), + "Ionarian": (4, 1, 1, 3, 1, 1, 1), + "Dynian": (1, 1, 3, 1, 1, 1, 4), + "Zydian": (1, 3, 1, 1, 1, 4, 1), + "Zathian": (3, 1, 1, 1, 4, 1, 1), + "Radian": (1, 1, 1, 4, 1, 1, 3), + "Stonian": (1, 1, 4, 1, 1, 3, 1), + "Syptian": (1, 4, 1, 1, 3, 1, 1), + "Aeolacrian": (4, 1, 1, 1, 3, 1, 1), + "Zythian": (1, 1, 1, 3, 1, 1, 4), + "Dyrian": (1, 1, 3, 1, 1, 4, 1), + "Koptian": (1, 3, 1, 1, 4, 1, 1), + "Thocrian": (3, 1, 1, 4, 1, 1, 1), + "Aeolanian": (1, 1, 4, 1, 1, 1, 3), + "Danian": (1, 4, 1, 1, 1, 3, 1), + "Zogian": (4, 1, 1, 1, 2, 2, 1), + "Epyrian": (1, 1, 1, 2, 2, 1, 4), + "Lycrian": (1, 1, 2, 2, 1, 4, 1), + "Daptian": (1, 2, 2, 1, 4, 1, 1), + "Kygian": (2, 2, 1, 4, 1, 1, 1), + "Mocrian": (2, 1, 4, 1, 1, 1, 2), + "Zynian": (1, 4, 1, 1, 1, 2, 2), + "Phrolian": (3, 2, 2, 1, 2, 1, 1), + "Ionagian": (2, 2, 1, 2, 1, 1, 3), + "Aeodian": (2, 1, 2, 1, 1, 3, 2), + "Kycrian": (1, 2, 1, 1, 3, 2, 2), + "Epygian": (2, 1, 1, 3, 2, 2, 1), + "Zaptian": (1, 1, 3, 2, 2, 1, 2), + "Kagian": (1, 3, 2, 2, 1, 2, 1), + "Soptian": (3, 2, 2, 1, 1, 1, 2), + "Ionyptian": (2, 2, 1, 1, 1, 2, 3), + "Gyrian": (2, 1, 1, 1, 2, 3, 2), + "Zalian": (1, 1, 1, 2, 3, 2, 2), + "Stolian": (1, 1, 2, 3, 2, 2, 1), + "Bylian": (1, 2, 3, 2, 2, 1, 1), + "Zothian": (2, 3, 2, 2, 1, 1, 1), + "Thonian": (3, 2, 1, 2, 2, 1, 1), + "Phrorian": (2, 1, 2, 2, 1, 1, 3), + "Stadian": (1, 2, 2, 1, 1, 3, 2), + "Thodian": (2, 2, 1, 1, 3, 2, 1), + "Dogian": (2, 1, 1, 3, 2, 1, 2), + "Mixopyrian": (1, 1, 3, 2, 1, 2, 2), + "Garian": (1, 3, 2, 1, 2, 2, 1), + "Epathian": (3, 2, 1, 1, 3, 1, 1), + "Mythian": (2, 1, 1, 3, 1, 1, 3), + "Sogian": (1, 1, 3, 1, 1, 3, 2), + "Gogian": (1, 3, 1, 1, 3, 2, 1), + "Rothian": (3, 1, 1, 3, 2, 1, 1), + "Katarian": (1, 1, 3, 2, 1, 1, 3), + "Stylian": (1, 3, 2, 1, 1, 3, 1), + "Stathian": (3, 2, 1, 1, 1, 2, 2), + "Mixonyphian": (2, 1, 1, 1, 2, 2, 3), + "Magian": (1, 1, 1, 2, 2, 3, 2), + "Dadian": (1, 1, 2, 2, 3, 2, 1), + "Aeolylian": (1, 2, 2, 3, 2, 1, 1), + "Gycrian": (2, 2, 3, 2, 1, 1, 1), + "Pyrian": (2, 3, 2, 1, 1, 1, 2), + "Epogian": (3, 1, 1, 3, 1, 1, 2), + "Lanian": (1, 1, 3, 1, 1, 2, 3), + "Paptian": (1, 3, 1, 1, 2, 3, 1), + "Ionacrian": (3, 1, 1, 2, 3, 1, 1), + "Gathian": (1, 1, 2, 3, 1, 1, 3), + "Ionyphian": (1, 2, 3, 1, 1, 3, 1), + "Phrynian": (2, 3, 1, 1, 3, 1, 1), + "Ionycrian": (3, 1, 1, 2, 2, 1, 2), + "Phradian": (1, 1, 2, 2, 1, 2, 3), + "Aeolorian": (1, 2, 2, 1, 2, 3, 1), + "Gonian": (2, 2, 1, 2, 3, 1, 1), + "Dalian": (2, 1, 2, 3, 1, 1, 2), + "Dygian": (1, 2, 3, 1, 1, 2, 2), + "Zolian": (2, 3, 1, 1, 2, 2, 1), + "Aerathian": (3, 1, 1, 2, 1, 2, 2), + "Sarian": (1, 1, 2, 1, 2, 2, 3), + "Zoptian": (1, 2, 1, 2, 2, 3, 1), + "Aeracrian": (2, 1, 2, 2, 3, 1, 1), + "Byptian": (1, 2, 2, 3, 1, 1, 2), + "Darian": (2, 2, 3, 1, 1, 2, 1), + "Lonian": (2, 3, 1, 1, 2, 1, 2), + "Aeopian": (4, 2, 1, 2, 1, 1, 1), + "Rygian": (2, 1, 2, 1, 1, 1, 4), + "Epynian": (1, 2, 1, 1, 1, 4, 2), + "Ionogian": (2, 1, 1, 1, 4, 2, 1), + "Kydian": (1, 1, 1, 4, 2, 1, 2), + "Gaptian": (1, 1, 4, 2, 1, 2, 1), + "Tharian": (1, 4, 2, 1, 2, 1, 1), + "Epycrian": (4, 2, 1, 1, 1, 2, 1), + "Gocrian": (2, 1, 1, 1, 2, 1, 4), + "Katolian": (1, 1, 1, 2, 1, 4, 2), + "Thoptian": (1, 1, 2, 1, 4, 2, 1), + "Bagian": (1, 2, 1, 4, 2, 1, 1), + "Kyrian": (2, 1, 4, 2, 1, 1, 1), + "Sonian": (1, 4, 2, 1, 1, 1, 2), + "Parian": (4, 1, 3, 1, 1, 1, 1), + "Ionaptian": (1, 3, 1, 1, 1, 1, 4), + "Thylian": (3, 1, 1, 1, 1, 4, 1), + "Lolian": (1, 1, 1, 1, 4, 1, 3), + "Thagian": (1, 1, 1, 4, 1, 3, 1), + "Kolian": (1, 1, 4, 1, 3, 1, 1), + "Dycrian": (1, 4, 1, 3, 1, 1, 1), + "Stygian": (4, 1, 2, 1, 2, 1, 1), + "Aeolygian": (1, 2, 1, 2, 1, 1, 4), + "Aerogian": (2, 1, 2, 1, 1, 4, 1), + "Dacrian": (1, 2, 1, 1, 4, 1, 2), + "Baptian": (2, 1, 1, 4, 1, 2, 1), + "Dagian": (1, 1, 4, 1, 2, 1, 2), + "Aeolydian": (1, 4, 1, 2, 1, 2, 1), + "Stythian": (4, 1, 2, 1, 1, 2, 1), + "Kothian": (1, 2, 1, 1, 2, 1, 4), + "Pygian": (2, 1, 1, 2, 1, 4, 1), + "Rodian": (1, 1, 2, 1, 4, 1, 2), + "Sorian": (1, 2, 1, 4, 1, 2, 1), + "Monian": (2, 1, 4, 1, 2, 1, 1), + "Thalian": (1, 4, 1, 2, 1, 1, 2), + "Zorian": (4, 1, 2, 1, 1, 1, 2), + "Aeragian": (1, 2, 1, 1, 1, 2, 4), + "Epothian": (2, 1, 1, 1, 2, 4, 1), + "Salian": (1, 1, 1, 2, 4, 1, 2), + "Lyptian": (1, 1, 2, 4, 1, 2, 1), + "Katonian": (1, 2, 4, 1, 2, 1, 1), + "Gyphian": (2, 4, 1, 2, 1, 1, 1), + "Thacrian": (4, 1, 1, 2, 2, 1, 1), + "Dodian": (1, 1, 2, 2, 1, 1, 4), + "Aeolyptian": (1, 2, 2, 1, 1, 4, 1), + "Aeolonian": (2, 2, 1, 1, 4, 1, 1), + "Aeradian": (2, 1, 1, 4, 1, 1, 2), + "Aeolagian": (1, 1, 4, 1, 1, 2, 2), + "Zyrian": (1, 4, 1, 1, 2, 2, 1), + "Aeolathian": (4, 1, 1, 2, 1, 2, 1), + "Bythian": (1, 1, 2, 1, 2, 1, 4), + "Padian": (1, 2, 1, 2, 1, 4, 1), + "Rolian": (2, 1, 2, 1, 4, 1, 1), + "Pydian": (1, 2, 1, 4, 1, 1, 2), + "Thygian": (2, 1, 4, 1, 1, 2, 1), + "Katalian": (1, 4, 1, 1, 2, 1, 2), + "Saptian": (4, 1, 1, 1, 2, 1, 2), + "Aerodian": (1, 1, 1, 2, 1, 2, 4), + "Macrian": (1, 1, 2, 1, 2, 4, 1), + "Rogian": (1, 2, 1, 2, 4, 1, 1), + "Boptian": (2, 1, 2, 4, 1, 1, 1), + "Stogian": (1, 2, 4, 1, 1, 1, 2), + "Thynian": (2, 4, 1, 1, 1, 2, 1), + "Thycrian": (4, 1, 1, 1, 1, 3, 1), + "Aeoladian": (1, 1, 1, 1, 3, 1, 4), + "Dylian": (1, 1, 1, 3, 1, 4, 1), + "Eponian": (1, 1, 3, 1, 4, 1, 1), + "Katygian": (1, 3, 1, 4, 1, 1, 1), + "Starian": (3, 1, 4, 1, 1, 1, 1), + "Phrathian": (1, 4, 1, 1, 1, 1, 3), + "Stalian": (3, 3, 1, 1, 2, 1, 1), + "Stoptian": (3, 1, 1, 2, 1, 1, 3), + "Zygian": (1, 1, 2, 1, 1, 3, 3), + "Kataptian": (1, 2, 1, 1, 3, 3, 1), + "Aeolaptian": (2, 1, 1, 3, 3, 1, 1), + "Pothian": (1, 1, 3, 3, 1, 1, 2), + "Bygian": (1, 3, 3, 1, 1, 2, 1), + "Morian": (3, 2, 3, 1, 1, 1, 1), + "Rycrian": (2, 3, 1, 1, 1, 1, 3), + "Ronian": (3, 1, 1, 1, 1, 3, 2), + "Stycrian": (1, 1, 1, 1, 3, 2, 3), + "Katorian": (1, 1, 1, 3, 2, 3, 1), + "Epythian": (1, 1, 3, 2, 3, 1, 1), + "Kaptian": (1, 3, 2, 3, 1, 1, 1), + "Phraptian": (3, 2, 2, 2, 1, 1, 1), + "Bacrian": (2, 2, 2, 1, 1, 1, 3), + "Katythian": (2, 2, 1, 1, 1, 3, 2), + "Madian": (2, 1, 1, 1, 3, 2, 2), + "Aerygian": (1, 1, 1, 3, 2, 2, 2), + "Pylian": (1, 1, 3, 2, 2, 2, 1), + "Ionathian": (1, 3, 2, 2, 2, 1, 1), + "Katocrian": (3, 2, 1, 3, 1, 1, 1), + "Phryptian": (2, 1, 3, 1, 1, 1, 3), + "Katynian": (1, 3, 1, 1, 1, 3, 2), + "Aerycrian": (3, 1, 1, 1, 3, 2, 1), + "Ganian": (1, 1, 1, 3, 2, 1, 3), + "Eparian": (1, 1, 3, 2, 1, 3, 1), + "Lyrian": (1, 3, 2, 1, 3, 1, 1), + "Ionopian": (3, 2, 1, 2, 1, 1, 2), + "Aeologian": (2, 1, 2, 1, 1, 2, 3), + "Zadian": (1, 2, 1, 1, 2, 3, 2), + "Sygian": (2, 1, 1, 2, 3, 2, 1), + "Phralian": (1, 1, 2, 3, 2, 1, 2), + "Phrogian": (1, 2, 3, 2, 1, 2, 1), + "Rathian": (2, 3, 2, 1, 2, 1, 1), + "Rythian": (3, 2, 1, 1, 2, 1, 2), + "Donian": (2, 1, 1, 2, 1, 2, 3), + "Aeoloptian": (1, 1, 2, 1, 2, 3, 2), + "Panian": (1, 2, 1, 2, 3, 2, 1), + "Lodian": (2, 1, 2, 3, 2, 1, 1), + "Solian": (1, 2, 3, 2, 1, 1, 2), + "Ionolian": (2, 3, 2, 1, 1, 2, 1), + "Laptian": (3, 2, 1, 1, 1, 3, 1), + "Lygian": (2, 1, 1, 1, 3, 1, 3), + "Logian": (1, 1, 1, 3, 1, 3, 2), + "Lalian": (1, 1, 3, 1, 3, 2, 1), + "Sothian": (1, 3, 1, 3, 2, 1, 1), + "Phrocrian": (3, 1, 3, 2, 1, 1, 1), + "Thogian": (1, 3, 2, 1, 1, 1, 3), + "Katathian": (3, 1, 3, 1, 2, 1, 1), + "Modian": (1, 3, 1, 2, 1, 1, 3), + "Barian": (3, 1, 2, 1, 1, 3, 1), + "Mixolocrian": (1, 2, 1, 1, 3, 1, 3), + "Sagian": (2, 1, 1, 3, 1, 3, 1), + "Aeolothian": (1, 1, 3, 1, 3, 1, 2), + "Socrian": (1, 3, 1, 3, 1, 2, 1), + "Tholian": (3, 1, 3, 1, 1, 2, 1), + "Ralian": (1, 3, 1, 1, 2, 1, 3), + "Syrian": (3, 1, 1, 2, 1, 3, 1), + "Stodian": (1, 1, 2, 1, 3, 1, 3), + "Ionocrian": (1, 2, 1, 3, 1, 3, 1), + "Zycrian": (2, 1, 3, 1, 3, 1, 1), + "Ionygian": (1, 3, 1, 3, 1, 1, 2), + "Zarian": (3, 1, 3, 1, 1, 1, 2), + "Phrythian": (1, 3, 1, 1, 1, 2, 3), + "Rorian": (3, 1, 1, 1, 2, 3, 1), + "Bolian": (1, 1, 1, 2, 3, 1, 3), + "Bothian": (1, 1, 2, 3, 1, 3, 1), + "Katadian": (1, 2, 3, 1, 3, 1, 1), + "Kodian": (2, 3, 1, 3, 1, 1, 1), + "Ranian": (3, 1, 2, 3, 1, 1, 1), + "Ladian": (1, 2, 3, 1, 1, 1, 3), + "Podian": (2, 3, 1, 1, 1, 3, 1), + "Ionothian": (3, 1, 1, 1, 3, 1, 2), + "Kanian": (1, 1, 1, 3, 1, 2, 3), + "Zylian": (1, 1, 3, 1, 2, 3, 1), + "Zodian": (1, 3, 1, 2, 3, 1, 1), + "Golian": (3, 1, 2, 2, 2, 1, 1), + "Dyptian": (1, 2, 2, 2, 1, 1, 3), + "Ryphian": (2, 2, 2, 1, 1, 3, 1), + "Gylian": (2, 2, 1, 1, 3, 1, 2), + "Aeolycrian": (2, 1, 1, 3, 1, 2, 2), + "Pynian": (1, 1, 3, 1, 2, 2, 2), + "Zanian": (1, 3, 1, 2, 2, 2, 1), + "Palian": (3, 1, 2, 2, 1, 2, 1), + "Stothian": (1, 2, 2, 1, 2, 1, 3), "Aerorian": aerorian, - "Katagian": [2, 1, 2, 1, 3, 1, 2], - "Phronian": [1, 2, 1, 3, 1, 2, 2], - "Banian": [2, 1, 3, 1, 2, 2, 1], - "Aeronian": [1, 3, 1, 2, 2, 1, 2], - "Loptian": [3, 1, 2, 1, 3, 1, 1], - "Ionodian": [1, 2, 1, 3, 1, 1, 3], - "Bogian": [2, 1, 3, 1, 1, 3, 1], - "Mogian": [1, 3, 1, 1, 3, 1, 2], - "Docrian": [3, 1, 1, 3, 1, 2, 1], - "Epadian": [1, 1, 3, 1, 2, 1, 3], - "Aerynian": [1, 3, 1, 2, 1, 3, 1], - "Bycrian": [3, 1, 2, 1, 2, 2, 1], - "Pathian": [1, 2, 1, 2, 2, 1, 3], + "Katagian": (2, 1, 2, 1, 3, 1, 2), + "Phronian": (1, 2, 1, 3, 1, 2, 2), + "Banian": (2, 1, 3, 1, 2, 2, 1), + "Aeronian": (1, 3, 1, 2, 2, 1, 2), + "Loptian": (3, 1, 2, 1, 3, 1, 1), + "Ionodian": (1, 2, 1, 3, 1, 1, 3), + "Bogian": (2, 1, 3, 1, 1, 3, 1), + "Mogian": (1, 3, 1, 1, 3, 1, 2), + "Docrian": (3, 1, 1, 3, 1, 2, 1), + "Epadian": (1, 1, 3, 1, 2, 1, 3), + "Aerynian": (1, 3, 1, 2, 1, 3, 1), + "Bycrian": (3, 1, 2, 1, 2, 2, 1), + "Pathian": (1, 2, 1, 2, 2, 1, 3), "Mydian": mydian, - "Thyptian": [1, 2, 2, 1, 3, 1, 2], - "Phrothian": [2, 2, 1, 3, 1, 2, 1], - "Katycrian": [2, 1, 3, 1, 2, 1, 2], - "Ionalian": [1, 3, 1, 2, 1, 2, 2], - "Dolian": [3, 1, 1, 2, 2, 2, 1], - "Porian": [1, 1, 2, 2, 2, 1, 3], - "Aerylian": [1, 2, 2, 2, 1, 3, 1], - "Zagian": [2, 2, 2, 1, 3, 1, 1], - "Lagian": [2, 2, 1, 3, 1, 1, 2], - "Tyrian": [2, 1, 3, 1, 1, 2, 2], - "Mixonorian": [1, 3, 1, 1, 2, 2, 2], - "Pagian": [3, 1, 1, 1, 2, 2, 2], - "Aeolythian": [1, 1, 1, 2, 2, 2, 3], - "Molian": [1, 1, 2, 2, 2, 3, 1], - "Staptian": [1, 2, 2, 2, 3, 1, 1], - "Mothian": [2, 2, 2, 3, 1, 1, 1], - "Aeranian": [2, 2, 3, 1, 1, 1, 2], - "Ragian": [2, 3, 1, 1, 1, 2, 2], - "Larian": [2, 2, 2, 2, 1, 2, 1], - "Lythian": [2, 2, 2, 1, 2, 1, 2], + "Thyptian": (1, 2, 2, 1, 3, 1, 2), + "Phrothian": (2, 2, 1, 3, 1, 2, 1), + "Katycrian": (2, 1, 3, 1, 2, 1, 2), + "Ionalian": (1, 3, 1, 2, 1, 2, 2), + "Dolian": (3, 1, 1, 2, 2, 2, 1), + "Porian": (1, 1, 2, 2, 2, 1, 3), + "Aerylian": (1, 2, 2, 2, 1, 3, 1), + "Zagian": (2, 2, 2, 1, 3, 1, 1), + "Lagian": (2, 2, 1, 3, 1, 1, 2), + "Tyrian": (2, 1, 3, 1, 1, 2, 2), + "Mixonorian": (1, 3, 1, 1, 2, 2, 2), + "Pagian": (3, 1, 1, 1, 2, 2, 2), + "Aeolythian": (1, 1, 1, 2, 2, 2, 3), + "Molian": (1, 1, 2, 2, 2, 3, 1), + "Staptian": (1, 2, 2, 2, 3, 1, 1), + "Mothian": (2, 2, 2, 3, 1, 1, 1), + "Aeranian": (2, 2, 3, 1, 1, 1, 2), + "Ragian": (2, 3, 1, 1, 1, 2, 2), + "Larian": (2, 2, 2, 2, 1, 2, 1), + "Lythian": (2, 2, 2, 1, 2, 1, 2), "Stydian": stydian, - "Lorian": [2, 1, 2, 1, 2, 2, 2], - "Ionadian": [1, 2, 1, 2, 2, 2, 2], + "Lorian": (2, 1, 2, 1, 2, 2, 2), + "Ionadian": (1, 2, 1, 2, 2, 2, 2), "Bocrian": bocrian, - "Mixolythian": [1, 2, 2, 2, 2, 1, 2], - "Thadian": [4, 3, 1, 1, 1, 1, 1], - "Sanian": [3, 1, 1, 1, 1, 1, 4], - "Ionydian": [1, 1, 1, 1, 1, 4, 3], - "Epydian": [1, 1, 1, 1, 4, 3, 1], - "Katydian": [1, 1, 1, 4, 3, 1, 1], - "Mathian": [1, 1, 4, 3, 1, 1, 1], - "Aeryptian": [1, 4, 3, 1, 1, 1, 1], - "Pythian": [4, 2, 2, 1, 1, 1, 1], - "Katylian": [2, 2, 1, 1, 1, 1, 4], - "Bydian": [2, 1, 1, 1, 1, 4, 2], - "Bynian": [1, 1, 1, 1, 4, 2, 2], - "Galian": [1, 1, 1, 4, 2, 2, 1], - "Zonian": [1, 1, 4, 2, 2, 1, 1], - "Myrian": [1, 4, 2, 2, 1, 1, 1], - "Katogian": [4, 2, 1, 1, 2, 1, 1], - "Stacrian": [2, 1, 1, 2, 1, 1, 4], - "Styrian": [1, 1, 2, 1, 1, 4, 2], - "Ionyrian": [1, 2, 1, 1, 4, 2, 1], - "Phrodian": [2, 1, 1, 4, 2, 1, 1], - "Pycrian": [1, 1, 4, 2, 1, 1, 2], - "Gyptian": [1, 4, 2, 1, 1, 2, 1], - "Katacrian": [4, 1, 1, 2, 1, 1, 2], - "Sodian": [1, 1, 2, 1, 1, 2, 4], - "Bathian": [1, 2, 1, 1, 2, 4, 1], - "Mylian": [2, 1, 1, 2, 4, 1, 1], - "Godian": [1, 1, 2, 4, 1, 1, 2], - "Thorian": [1, 2, 4, 1, 1, 2, 1], - "Zocrian": [2, 4, 1, 1, 2, 1, 1], - "Stanian": [4, 1, 1, 1, 1, 2, 2], - "Epanian": [1, 1, 1, 1, 2, 2, 4], - "Konian": [1, 1, 1, 2, 2, 4, 1], - "Stocrian": [1, 1, 2, 2, 4, 1, 1], - "Kalian": [1, 2, 2, 4, 1, 1, 1], - "Phroptian": [2, 2, 4, 1, 1, 1, 1], - "Dydian": [2, 4, 1, 1, 1, 1, 2], - "Katyptian": [4, 1, 1, 1, 1, 1, 3], - "Epodian": [1, 1, 1, 1, 1, 3, 4], - "Mygian": [1, 1, 1, 1, 3, 4, 1], - "Pacrian": [1, 1, 1, 3, 4, 1, 1], - "Aerocrian": [1, 1, 3, 4, 1, 1, 1], - "Aeolarian": [1, 3, 4, 1, 1, 1, 1], - "Kythian": [3, 4, 1, 1, 1, 1, 1], - "Bonian": [3, 3, 2, 1, 1, 1, 1], - "Badian": [3, 2, 1, 1, 1, 1, 3], - "Katodian": [2, 1, 1, 1, 1, 3, 3], - "Sadian": [1, 1, 1, 1, 3, 3, 2], - "Dothian": [1, 1, 1, 3, 3, 2, 1], - "Moptian": [1, 1, 3, 3, 2, 1, 1], - "Aeryrian": [1, 3, 3, 2, 1, 1, 1], - "Epagian": [3, 3, 1, 2, 1, 1, 1], - "Raptian": [3, 1, 2, 1, 1, 1, 3], - "Epolian": [1, 2, 1, 1, 1, 3, 3], - "Sythian": [2, 1, 1, 1, 3, 3, 1], - "Sydian": [1, 1, 1, 3, 3, 1, 2], - "Epocrian": [1, 1, 3, 3, 1, 2, 1], - "Kylian": [1, 3, 3, 1, 2, 1, 1], - "Gacrian": [3, 3, 1, 1, 1, 2, 1], - "Borian": [3, 1, 1, 1, 2, 1, 3], - "Sycrian": [1, 1, 1, 2, 1, 3, 3], - "Gadian": [1, 1, 2, 1, 3, 3, 1], - "Aeolocrian": [1, 2, 1, 3, 3, 1, 1], - "Mixodorian": [2, 1, 3, 3, 1, 1, 1], - "Dathian": [1, 3, 3, 1, 1, 1, 2], - "Katoptian": [3, 3, 1, 1, 1, 1, 2], - "Ponian": [3, 1, 1, 1, 1, 2, 3], - "Kadian": [1, 1, 1, 1, 2, 3, 3], - "Gynian": [1, 1, 1, 2, 3, 3, 1], - "Thyphian": [1, 1, 2, 3, 3, 1, 1], - "Polian": [1, 2, 3, 3, 1, 1, 1], - "Thanian": [2, 3, 3, 1, 1, 1, 1], - "Epacrian": [3, 2, 2, 1, 1, 2, 1], - "Sathian": [2, 2, 1, 1, 2, 1, 3], - "Lathian": [2, 1, 1, 2, 1, 3, 2], - "Aeralian": [1, 1, 2, 1, 3, 2, 2], - "Kynian": [1, 2, 1, 3, 2, 2, 1], - "Stynian": [2, 1, 3, 2, 2, 1, 1], - "Epyphian": [1, 3, 2, 2, 1, 1, 2], - "Pogian": [3, 2, 1, 2, 1, 2, 1], - "Aeraptian": [2, 1, 2, 1, 2, 1, 3], - "Epylian": [1, 2, 1, 2, 1, 3, 2], - "Gamian": [2, 1, 2, 1, 3, 2, 1], - "Kathian": [1, 2, 1, 3, 2, 1, 2], - "Lylian": [2, 1, 3, 2, 1, 2, 1], - "Epalian": [1, 3, 2, 1, 2, 1, 2], - "Eporian": [3, 2, 1, 1, 2, 2, 1], - "Rylian": [2, 1, 1, 2, 2, 1, 3], - "Epaptian": [1, 1, 2, 2, 1, 3, 2], - "Byrian": [1, 2, 2, 1, 3, 2, 1], - "Katanian": [2, 2, 1, 3, 2, 1, 1], - "Katyrian": [2, 1, 3, 2, 1, 1, 2], - "Rynian": [1, 3, 2, 1, 1, 2, 2], - "Korian": [3, 1, 2, 2, 1, 1, 2], - "Lynian": [1, 2, 2, 1, 1, 2, 3], - "Malian": [2, 2, 1, 1, 2, 3, 1], - "Synian": [2, 1, 1, 2, 3, 1, 2], - "Phragian": [1, 1, 2, 3, 1, 2, 2], - "Manian": [1, 2, 3, 1, 2, 2, 1], - "Marian": [2, 3, 1, 2, 2, 1, 1], - "Mycrian": [3, 1, 2, 1, 2, 1, 2], - "Ionorian": [1, 2, 1, 2, 1, 2, 3], - "Phrydian": [2, 1, 2, 1, 2, 3, 1], - "Zyptian": [1, 2, 1, 2, 3, 1, 2], - "Katothian": [2, 1, 2, 3, 1, 2, 1], - "Phrylian": [1, 2, 3, 1, 2, 1, 2], - "Kocrian": [2, 3, 1, 2, 1, 2, 1], - "Ionanian": [3, 1, 2, 1, 1, 2, 2], - "Aerothian": [1, 2, 1, 1, 2, 2, 3], - "Stagian": [2, 1, 1, 2, 2, 3, 1], - "Lothian": [1, 1, 2, 2, 3, 1, 2], - "Phrycrian": [1, 2, 2, 3, 1, 2, 1], - "Kyptian": [2, 2, 3, 1, 2, 1, 1], - "Ionylian": [2, 3, 1, 2, 1, 1, 2], - "Gydian": [4, 2, 1, 1, 1, 1, 2], - "Kogian": [2, 1, 1, 1, 1, 2, 4], - "Rarian": [1, 1, 1, 1, 2, 4, 2], - "Aerolian": [1, 1, 1, 2, 4, 2, 1], - "Karian": [1, 1, 2, 4, 2, 1, 1], - "Myptian": [1, 2, 4, 2, 1, 1, 1], - "Rydian": [2, 4, 2, 1, 1, 1, 1], - "Aeolynian": [2, 2, 2, 2, 2, 1, 1], - "Aeroptian": [2, 2, 2, 2, 1, 1, 2], - "Phryrian": [2, 2, 2, 1, 1, 2, 2], - "Gothian": [2, 2, 1, 1, 2, 2, 2], - "Storian": [2, 1, 1, 2, 2, 2, 2], - "Pyptian": [1, 1, 2, 2, 2, 2, 2], - "Thydian": [1, 2, 2, 2, 2, 2, 1], - "Aerycryllic": [2, 2, 1, 2, 2, 1, 1, 1], - "Gadyllic": [2, 1, 2, 2, 1, 1, 1, 2], - "Solyllic": [1, 2, 2, 1, 1, 1, 2, 2], - "Zylyllic": [2, 2, 1, 1, 1, 2, 2, 1], - "Mixodyllic": [2, 1, 1, 1, 2, 2, 1, 2], - "Soryllic": [1, 1, 1, 2, 2, 1, 2, 2], - "Godyllic": [1, 1, 2, 2, 1, 2, 2, 1], - "Epiphyllic": [1, 2, 2, 1, 2, 2, 1, 1], - "Pynyllic": [4, 1, 1, 1, 2, 1, 1, 1], - "Bocryllic": [1, 1, 1, 2, 1, 1, 1, 4], - "Kogyllic": [1, 1, 2, 1, 1, 1, 4, 1], - "Raryllic": [1, 2, 1, 1, 1, 4, 1, 1], - "Zycryllic": [2, 1, 1, 1, 4, 1, 1, 1], - "Mycryllic": [1, 1, 1, 4, 1, 1, 1, 2], - "Laptyllic": [1, 1, 4, 1, 1, 1, 2, 1], - "Pylyllic": [1, 4, 1, 1, 1, 2, 1, 1], - "Pothyllic": [3, 2, 1, 1, 1, 2, 1, 1], - "Phronyllic": [2, 1, 1, 1, 2, 1, 1, 3], - "Stynyllic": [1, 1, 1, 2, 1, 1, 3, 2], - "Rathyllic": [1, 1, 2, 1, 1, 3, 2, 1], - "Aeryptyllic": [1, 2, 1, 1, 3, 2, 1, 1], - "Zydyllic": [2, 1, 1, 3, 2, 1, 1, 1], - "Katolyllic": [1, 1, 3, 2, 1, 1, 1, 2], - "Rythyllic": [1, 3, 2, 1, 1, 1, 2, 1], - "Locryllic": [3, 1, 1, 3, 1, 1, 1, 1], - "Bylyllic": [1, 1, 3, 1, 1, 1, 1, 3], - "Sogyllic": [1, 3, 1, 1, 1, 1, 3, 1], - "Ionycryllic": [3, 1, 1, 1, 1, 3, 1, 1], - "Koptyllic": [1, 1, 1, 1, 3, 1, 1, 3], - "Epyryllic": [1, 1, 1, 3, 1, 1, 3, 1], - "Soptyllic": [1, 1, 3, 1, 1, 3, 1, 1], - "Aeolylyllic": [1, 3, 1, 1, 3, 1, 1, 1], - "Aeracryllic": [3, 1, 1, 2, 2, 1, 1, 1], - "Epygyllic": [1, 1, 2, 2, 1, 1, 1, 3], - "Thonyllic": [1, 2, 2, 1, 1, 1, 3, 1], - "Lanyllic": [2, 2, 1, 1, 1, 3, 1, 1], - "Phrynyllic": [2, 1, 1, 1, 3, 1, 1, 2], - "Lycryllic": [1, 1, 1, 3, 1, 1, 2, 2], - "Ionyptyllic": [1, 1, 3, 1, 1, 2, 2, 1], - "Epathyllic": [1, 3, 1, 1, 2, 2, 1, 1], - "Dydyllic": [3, 1, 1, 2, 1, 2, 1, 1], - "Thogyllic": [1, 1, 2, 1, 2, 1, 1, 3], - "Rygyllic": [1, 2, 1, 2, 1, 1, 3, 1], - "Bycryllic": [2, 1, 2, 1, 1, 3, 1, 1], - "Zacryllic": [1, 2, 1, 1, 3, 1, 1, 2], - "Panyllic": [2, 1, 1, 3, 1, 1, 2, 1], - "Dyryllic": [1, 1, 3, 1, 1, 2, 1, 2], - "Zathyllic": [1, 3, 1, 1, 2, 1, 2, 1], - "Dagyllic": [3, 1, 1, 2, 1, 1, 1, 2], - "Katalyllic": [1, 1, 2, 1, 1, 1, 2, 3], - "Katoryllic": [1, 2, 1, 1, 1, 2, 3, 1], - "Dodyllic": [2, 1, 1, 1, 2, 3, 1, 1], - "Zogyllic": [1, 1, 1, 2, 3, 1, 1, 2], - "Madyllic": [1, 1, 2, 3, 1, 1, 2, 1], - "Dycryllic": [1, 2, 3, 1, 1, 2, 1, 1], - "Aeologyllic": [2, 3, 1, 1, 2, 1, 1, 1], - "Sydyllic": [3, 1, 1, 1, 3, 1, 1, 1], - "Katogyllic": [1, 1, 1, 3, 1, 1, 1, 3], - "Zygyllic": [1, 1, 3, 1, 1, 1, 3, 1], - "Aeralyllic": [1, 3, 1, 1, 1, 3, 1, 1], - "Bacryllic": [3, 1, 1, 1, 2, 2, 1, 1], - "Aerygyllic": [1, 1, 1, 2, 2, 1, 1, 3], - "Dathyllic": [1, 1, 2, 2, 1, 1, 3, 1], - "Boptyllic": [1, 2, 2, 1, 1, 3, 1, 1], - "Bagyllic": [2, 2, 1, 1, 3, 1, 1, 1], - "Mathyllic": [2, 1, 1, 3, 1, 1, 1, 2], - "Styptyllic": [1, 1, 3, 1, 1, 1, 2, 2], - "Zolyllic": [1, 3, 1, 1, 1, 2, 2, 1], - "Rocryllic": [2, 2, 2, 1, 2, 1, 1, 1], - "Zyryllic": [2, 2, 1, 2, 1, 1, 1, 2], - "Sagyllic": [2, 1, 2, 1, 1, 1, 2, 2], - "Epinyllic": [1, 2, 1, 1, 1, 2, 2, 2], - "Katagyllic": [2, 1, 1, 1, 2, 2, 2, 1], - "Ragyllic": [1, 1, 1, 2, 2, 2, 1, 2], - "Gothyllic": [1, 1, 2, 2, 2, 1, 2, 1], - "Lythyllic": [1, 2, 2, 2, 1, 2, 1, 1], - "Ionocryllic": [2, 2, 2, 1, 1, 1, 2, 1], - "Gocryllic": [2, 2, 1, 1, 1, 2, 1, 2], - "Epiryllic": [2, 1, 1, 1, 2, 1, 2, 2], - "Aeradyllic": [1, 1, 1, 2, 1, 2, 2, 2], - "Staptyllic": [1, 1, 2, 1, 2, 2, 2, 1], - "Danyllic": [1, 2, 1, 2, 2, 2, 1, 1], - "Goptyllic": [2, 1, 2, 2, 2, 1, 1, 1], - "Epocryllic": [1, 2, 2, 2, 1, 1, 1, 2], - "Ionoptyllic": [2, 2, 1, 2, 1, 1, 2, 1], - "Aeoloryllic": [2, 1, 2, 1, 1, 2, 1, 2], - "Thydyllic": [1, 2, 1, 1, 2, 1, 2, 2], - "Gycryllic": [2, 1, 1, 2, 1, 2, 2, 1], - "Lyryllic": [1, 1, 2, 1, 2, 2, 1, 2], - "Mogyllic": [1, 2, 1, 2, 2, 1, 2, 1], - "Katodyllic": [2, 1, 2, 2, 1, 2, 1, 1], - "Moptyllic": [1, 2, 2, 1, 2, 1, 1, 2], - "Dolyllic": [4, 1, 2, 1, 1, 1, 1, 1], - "Moryllic": [1, 2, 1, 1, 1, 1, 1, 4], - "Bydyllic": [2, 1, 1, 1, 1, 1, 4, 1], - "Pocryllic": [1, 1, 1, 1, 1, 4, 1, 2], - "Phracryllic": [1, 1, 1, 1, 4, 1, 2, 1], - "Gyryllic": [1, 1, 1, 4, 1, 2, 1, 1], - "Phrygyllic": [1, 1, 4, 1, 2, 1, 1, 1], - "Dogyllic": [1, 4, 1, 2, 1, 1, 1, 1], - "Thagyllic": [4, 1, 1, 2, 1, 1, 1, 1], - "Thoptyllic": [1, 1, 2, 1, 1, 1, 1, 4], - "Phraptyllic": [1, 2, 1, 1, 1, 1, 4, 1], - "Gylyllic": [2, 1, 1, 1, 1, 4, 1, 1], - "Phralyllic": [1, 1, 1, 1, 4, 1, 1, 2], - "Dygyllic": [1, 1, 1, 4, 1, 1, 2, 1], - "Ronyllic": [1, 1, 4, 1, 1, 2, 1, 1], - "Epogyllic": [1, 4, 1, 1, 2, 1, 1, 1], - "Aeoladyllic": [4, 1, 1, 1, 1, 2, 1, 1], - "Kocryllic": [1, 1, 1, 1, 2, 1, 1, 4], - "Lodyllic": [1, 1, 1, 2, 1, 1, 4, 1], - "Bynyllic": [1, 1, 2, 1, 1, 4, 1, 1], - "Kydyllic": [1, 2, 1, 1, 4, 1, 1, 1], - "Bygyllic": [2, 1, 1, 4, 1, 1, 1, 1], - "Phryptyllic": [1, 1, 4, 1, 1, 1, 1, 2], - "Ionayllic": [1, 4, 1, 1, 1, 1, 2, 1], - "Phroryllic": [4, 1, 1, 1, 1, 1, 2, 1], - "Thyphyllic": [1, 1, 1, 1, 1, 2, 1, 4], - "Poptyllic": [1, 1, 1, 1, 2, 1, 4, 1], - "Mixonyllic": [1, 1, 1, 2, 1, 4, 1, 1], - "Paptyllic": [1, 1, 2, 1, 4, 1, 1, 1], - "Storyllic": [1, 2, 1, 4, 1, 1, 1, 1], - "Phrycryllic": [2, 1, 4, 1, 1, 1, 1, 1], - "Palyllic": [1, 4, 1, 1, 1, 1, 1, 2], - "Phranyllic": [3, 2, 2, 1, 1, 1, 1, 1], - "Stydyllic": [2, 2, 1, 1, 1, 1, 1, 3], - "Zadyllic": [2, 1, 1, 1, 1, 1, 3, 2], - "Zalyllic": [1, 1, 1, 1, 1, 3, 2, 2], - "Zocryllic": [1, 1, 1, 1, 3, 2, 2, 1], - "Katocryllic": [1, 1, 1, 3, 2, 2, 1, 1], - "Aerathyllic": [1, 1, 3, 2, 2, 1, 1, 1], - "Stoptyllic": [1, 3, 2, 2, 1, 1, 1, 1], - "Lydyllic": [3, 2, 1, 2, 1, 1, 1, 1], - "Radyllic": [2, 1, 2, 1, 1, 1, 1, 3], - "Stagyllic": [1, 2, 1, 1, 1, 1, 3, 2], - "Ionoryllic": [2, 1, 1, 1, 1, 3, 2, 1], - "Phrodyllic": [1, 1, 1, 1, 3, 2, 1, 2], - "Aeragyllic": [1, 1, 1, 3, 2, 1, 2, 1], - "Banyllic": [1, 1, 3, 2, 1, 2, 1, 1], - "Epothyllic": [1, 3, 2, 1, 2, 1, 1, 1], - "Zoryllic": [3, 2, 1, 1, 2, 1, 1, 1], - "Phrolyllic": [2, 1, 1, 2, 1, 1, 1, 3], - "Kolyllic": [1, 1, 2, 1, 1, 1, 3, 2], - "Thodyllic": [1, 2, 1, 1, 1, 3, 2, 1], - "Socryllic": [2, 1, 1, 1, 3, 2, 1, 1], - "Aeolyllic": [1, 1, 1, 3, 2, 1, 1, 2], - "Zythyllic": [1, 1, 3, 2, 1, 1, 2, 1], - "Aeoryllic": [1, 3, 2, 1, 1, 2, 1, 1], - "Mixolydyllic": [3, 2, 1, 1, 1, 1, 1, 2], - "Mixonyphyllic": [2, 1, 1, 1, 1, 1, 2, 3], - "Aeolanyllic": [1, 1, 1, 1, 1, 2, 3, 2], - "Thocryllic": [1, 1, 1, 1, 2, 3, 2, 1], - "Kygyllic": [1, 1, 1, 2, 3, 2, 1, 1], - "Ionagyllic": [1, 1, 2, 3, 2, 1, 1, 1], - "Gogyllic": [1, 2, 3, 2, 1, 1, 1, 1], - "Phradyllic": [2, 3, 2, 1, 1, 1, 1, 1], - "Ioniptyllic": [3, 1, 3, 1, 1, 1, 1, 1], - "Kycryllic": [1, 3, 1, 1, 1, 1, 1, 3], - "Aeolaptyllic": [3, 1, 1, 1, 1, 1, 3, 1], - "Rodyllic": [1, 1, 1, 1, 1, 3, 1, 3], - "Ionathyllic": [1, 1, 1, 1, 3, 1, 3, 1], - "Pythyllic": [1, 1, 1, 3, 1, 3, 1, 1], - "Zonyllic": [1, 1, 3, 1, 3, 1, 1, 1], - "Ryryllic": [1, 3, 1, 3, 1, 1, 1, 1], - "Aeolothyllic": [3, 1, 2, 2, 1, 1, 1, 1], - "Ionyryllic": [1, 2, 2, 1, 1, 1, 1, 3], - "Rydyllic": [2, 2, 1, 1, 1, 1, 3, 1], - "Gonyllic": [2, 1, 1, 1, 1, 3, 1, 2], - "Rolyllic": [1, 1, 1, 1, 3, 1, 2, 2], - "Katydyllic": [1, 1, 1, 3, 1, 2, 2, 1], - "Zyptyllic": [1, 1, 3, 1, 2, 2, 1, 1], - "Modyllic": [1, 3, 1, 2, 2, 1, 1, 1], - "Maptyllic": [3, 1, 2, 1, 2, 1, 1, 1], - "Aeraptyllic": [1, 2, 1, 2, 1, 1, 1, 3], - "Katadyllic": [2, 1, 2, 1, 1, 1, 3, 1], - "Magyllic": [1, 2, 1, 1, 1, 3, 1, 2], - "Phrylyllic": [2, 1, 1, 1, 3, 1, 2, 1], - "Epigyllic": [1, 1, 1, 3, 1, 2, 1, 2], - "Molyllic": [1, 1, 3, 1, 2, 1, 2, 1], - "Ponyllic": [1, 3, 1, 2, 1, 2, 1, 1], - "Thyptyllic": [3, 1, 2, 1, 1, 2, 1, 1], - "Ionogyllic": [1, 2, 1, 1, 2, 1, 1, 3], - "Aeolaryllic": [2, 1, 1, 2, 1, 1, 3, 1], - "Katygyllic": [1, 1, 2, 1, 1, 3, 1, 2], - "Ganyllic": [1, 2, 1, 1, 3, 1, 2, 1], - "Kyptyllic": [2, 1, 1, 3, 1, 2, 1, 1], - "Salyllic": [1, 1, 3, 1, 2, 1, 1, 2], - "Sanyllic": [1, 3, 1, 2, 1, 1, 2, 1], - "Doptyllic": [3, 1, 2, 1, 1, 1, 2, 1], - "Ionilyllic": [1, 2, 1, 1, 1, 2, 1, 3], - "Manyllic": [2, 1, 1, 1, 2, 1, 3, 1], - "Polyllic": [1, 1, 1, 2, 1, 3, 1, 2], - "Stanyllic": [1, 1, 2, 1, 3, 1, 2, 1], - "Mixotharyllic": [1, 2, 1, 3, 1, 2, 1, 1], - "Eporyllic": [2, 1, 3, 1, 2, 1, 1, 1], - "Aerynyllic": [1, 3, 1, 2, 1, 1, 1, 2], - "Lonyllic": [3, 1, 1, 2, 1, 1, 2, 1], - "Sathyllic": [1, 1, 2, 1, 1, 2, 1, 3], - "Layllic": [1, 2, 1, 1, 2, 1, 3, 1], - "Saryllic": [2, 1, 1, 2, 1, 3, 1, 1], - "Thacryllic": [1, 1, 2, 1, 3, 1, 1, 2], - "Aeolynyllic": [1, 2, 1, 3, 1, 1, 2, 1], - "Thadyllic": [2, 1, 3, 1, 1, 2, 1, 1], - "Lynyllic": [1, 3, 1, 1, 2, 1, 1, 2], - "Aeolathyllic": [3, 1, 1, 1, 2, 1, 2, 1], - "Aeolocryllic": [1, 1, 1, 2, 1, 2, 1, 3], - "Phroptyllic": [1, 1, 2, 1, 2, 1, 3, 1], - "Kodyllic": [1, 2, 1, 2, 1, 3, 1, 1], - "Epaptyllic": [2, 1, 2, 1, 3, 1, 1, 1], - "Ionoyllic": [1, 2, 1, 3, 1, 1, 1, 2], - "Gyptyllic": [2, 1, 3, 1, 1, 1, 2, 1], - "Aerythyllic": [1, 3, 1, 1, 1, 2, 1, 2], - "Zagyllic": [3, 1, 1, 1, 2, 1, 1, 2], - "Epacryllic": [1, 1, 1, 2, 1, 1, 2, 3], - "Thorcryllic": [1, 1, 2, 1, 1, 2, 3, 1], - "Loptyllic": [1, 2, 1, 1, 2, 3, 1, 1], - "Katylyllic": [2, 1, 1, 2, 3, 1, 1, 1], - "Malyllic": [1, 1, 2, 3, 1, 1, 1, 2], - "Mydyllic": [1, 2, 3, 1, 1, 1, 2, 1], - "Thycryllic": [2, 3, 1, 1, 1, 2, 1, 1], - "Gythyllic": [3, 1, 1, 1, 1, 2, 2, 1], - "Pyryllic": [1, 1, 1, 1, 2, 2, 1, 3], - "Rycryllic": [1, 1, 1, 2, 2, 1, 3, 1], - "Phrathyllic": [1, 1, 2, 2, 1, 3, 1, 1], - "Badyllic": [1, 2, 2, 1, 3, 1, 1, 1], - "Phrocryllic": [2, 2, 1, 3, 1, 1, 1, 1], - "Staryllic": [2, 1, 3, 1, 1, 1, 1, 2], - "Zothyllic": [1, 3, 1, 1, 1, 1, 2, 2], - "Tharyllic": [3, 1, 1, 1, 1, 2, 1, 2], - "Sylyllic": [1, 1, 1, 1, 2, 1, 2, 3], - "Lothyllic": [1, 1, 1, 2, 1, 2, 3, 1], - "Daryllic": [1, 1, 2, 1, 2, 3, 1, 1], - "Monyllic": [1, 2, 1, 2, 3, 1, 1, 1], - "Styryllic": [2, 1, 2, 3, 1, 1, 1, 1], - "Aeolacryllic": [1, 2, 3, 1, 1, 1, 1, 2], - "Raptyllic": [2, 3, 1, 1, 1, 1, 2, 1], - "Kataryllic": [3, 1, 1, 1, 1, 1, 2, 2], - "Aerocryllic": [1, 1, 1, 1, 1, 2, 2, 3], - "Zanyllic": [1, 1, 1, 1, 2, 2, 3, 1], - "Aeolonyllic": [1, 1, 1, 2, 2, 3, 1, 1], - "Aeonyllic": [1, 1, 2, 2, 3, 1, 1, 1], - "Kyryllic": [1, 2, 2, 3, 1, 1, 1, 1], - "Sythyllic": [2, 2, 3, 1, 1, 1, 1, 1], - "Katycryllic": [2, 3, 1, 1, 1, 1, 1, 2], - "Stogyllic": [2, 2, 1, 2, 1, 2, 1, 1], - "Ionidyllic": [2, 1, 2, 1, 2, 1, 1, 2], - "Stonyllic": [1, 2, 1, 2, 1, 1, 2, 2], - "Stalyllic": [2, 1, 2, 1, 1, 2, 2, 1], - "Poryllic": [1, 2, 1, 1, 2, 2, 1, 2], - "Mocryllic": [2, 1, 1, 2, 2, 1, 2, 1], - "Aeolyryllic": [1, 1, 2, 2, 1, 2, 1, 2], - "Baryllic": [1, 2, 2, 1, 2, 1, 2, 1], - "Dalyllic": [2, 2, 1, 1, 2, 1, 2, 1], - "Ionyphyllic": [2, 1, 1, 2, 1, 2, 1, 2], - "Zaptyllic": [1, 1, 2, 1, 2, 1, 2, 2], - "Garyllic": [1, 2, 1, 2, 1, 2, 2, 1], - "Gathyllic": [2, 1, 2, 1, 2, 2, 1, 1], - "Mixopyryllic": [1, 2, 1, 2, 2, 1, 1, 2], - "Ionacryllic": [2, 1, 2, 2, 1, 1, 2, 1], - "Stylyllic": [1, 2, 2, 1, 1, 2, 1, 2], - "Stycryllic": [4, 2, 1, 1, 1, 1, 1, 1], - "Ionothyllic": [2, 1, 1, 1, 1, 1, 1, 4], - "Mythyllic": [1, 1, 1, 1, 1, 1, 4, 2], - "Aerylyllic": [1, 1, 1, 1, 1, 4, 2, 1], - "Bonyllic": [1, 1, 1, 1, 4, 2, 1, 1], - "Tholyllic": [1, 1, 1, 4, 2, 1, 1, 1], - "Katyryllic": [1, 1, 4, 2, 1, 1, 1, 1], - "Sadyllic": [1, 4, 2, 1, 1, 1, 1, 1], - "Stolyllic": [4, 1, 1, 1, 1, 1, 1, 2], - "Logyllic": [1, 1, 1, 1, 1, 1, 2, 4], - "Dacryllic": [1, 1, 1, 1, 1, 2, 4, 1], - "Thynyllic": [1, 1, 1, 1, 2, 4, 1, 1], - "Gydyllic": [1, 1, 1, 2, 4, 1, 1, 1], - "Eparyllic": [1, 1, 2, 4, 1, 1, 1, 1], - "Dynyllic": [1, 2, 4, 1, 1, 1, 1, 1], - "Ionyllic": [2, 4, 1, 1, 1, 1, 1, 1], - "Zaryllic": [3, 3, 1, 1, 1, 1, 1, 1], - "Dythyllic": [3, 1, 1, 1, 1, 1, 1, 3], - "Ionaryllic": [1, 1, 1, 1, 1, 1, 3, 3], - "Laryllic": [1, 1, 1, 1, 1, 3, 3, 1], - "Kataptyllic": [1, 1, 1, 1, 3, 3, 1, 1], - "Sonyllic": [1, 1, 1, 3, 3, 1, 1, 1], - "Pathyllic": [1, 1, 3, 3, 1, 1, 1, 1], - "Loryllic": [1, 3, 3, 1, 1, 1, 1, 1], - "Aeronyllic": [3, 2, 1, 1, 1, 1, 2, 1], - "Pycryllic": [2, 1, 1, 1, 1, 2, 1, 3], - "Mygyllic": [1, 1, 1, 1, 2, 1, 3, 2], - "Lylyllic": [1, 1, 1, 2, 1, 3, 2, 1], - "Daptyllic": [1, 1, 2, 1, 3, 2, 1, 1], - "Ioninyllic": [1, 2, 1, 3, 2, 1, 1, 1], - "Epaphyllic": [2, 1, 3, 2, 1, 1, 1, 1], - "Lolyllic": [1, 3, 2, 1, 1, 1, 1, 2], - "Stacryllic": [3, 1, 2, 1, 1, 1, 1, 2], - "Doryllic": [1, 2, 1, 1, 1, 1, 2, 3], - "Kadyllic": [2, 1, 1, 1, 1, 2, 3, 1], - "Rynyllic": [1, 1, 1, 1, 2, 3, 1, 2], - "Aerogyllic": [1, 1, 1, 2, 3, 1, 2, 1], - "Rothyllic": [1, 1, 2, 3, 1, 2, 1, 1], - "Kagyllic": [1, 2, 3, 1, 2, 1, 1, 1], - "Stathyllic": [2, 3, 1, 2, 1, 1, 1, 1], - "Thyryllic": [2, 2, 2, 2, 1, 1, 1, 1], - "Gygyllic": [2, 2, 2, 1, 1, 1, 1, 2], - "Sodyllic": [2, 2, 1, 1, 1, 1, 2, 2], - "Goryllic": [2, 1, 1, 1, 1, 2, 2, 2], - "Bothyllic": [1, 1, 1, 1, 2, 2, 2, 2], - "Gynyllic": [1, 1, 1, 2, 2, 2, 2, 1], - "Ionaptyllic": [1, 1, 2, 2, 2, 2, 1, 1], - "Phryryllic": [1, 2, 2, 2, 2, 1, 1, 1], - "Racryllic": [2, 2, 2, 1, 1, 2, 1, 1], - "Epicryllic": [2, 2, 1, 1, 2, 1, 1, 2], - "Stygyllic": [2, 1, 1, 2, 1, 1, 2, 2], - "Syryllic": [1, 1, 2, 1, 1, 2, 2, 2], - "Stythyllic": [1, 2, 1, 1, 2, 2, 2, 1], - "Aerothyllic": [2, 1, 1, 2, 2, 2, 1, 1], - "Mixoryllic": [1, 1, 2, 2, 2, 1, 1, 2], - "Thanyllic": [1, 2, 2, 2, 1, 1, 2, 1], - "Roryllic": [2, 2, 1, 1, 2, 2, 1, 1], - "Epotyllic": [2, 1, 1, 2, 2, 1, 1, 2], - "Epidyllic": [1, 1, 2, 2, 1, 1, 2, 2], - "Kaptyllic": [1, 2, 2, 1, 1, 2, 2, 1], - "MajorDimin.": [2, 1, 2, 1, 2, 1, 2, 1], - "MinorDimin.": [1, 2, 1, 2, 1, 2, 1, 2], - "Aerycrygic": [2, 2, 1, 1, 1, 2, 1, 1, 1], - "Gadygic": [2, 1, 1, 1, 2, 1, 1, 1, 2], - "Solygic": [1, 1, 1, 2, 1, 1, 1, 2, 2], - "Zylygic": [1, 1, 2, 1, 1, 1, 2, 2, 1], - "Garygic": [1, 2, 1, 1, 1, 2, 2, 1, 1], - "Sorygic": [2, 1, 1, 1, 2, 2, 1, 1, 1], - "Godygic": [1, 1, 1, 2, 2, 1, 1, 1, 2], - "Epithygic": [1, 1, 2, 2, 1, 1, 1, 2, 1], - "Ionoptygic": [1, 2, 2, 1, 1, 1, 2, 1, 1], - "Kalygic": [3, 1, 1, 2, 1, 1, 1, 1, 1], - "Ionodygic": [1, 1, 2, 1, 1, 1, 1, 1, 3], - "Bythygic": [1, 2, 1, 1, 1, 1, 1, 3, 1], - "Epygic": [2, 1, 1, 1, 1, 1, 3, 1, 1], - "Marygic": [1, 1, 1, 1, 1, 3, 1, 1, 2], - "Gaptygic": [1, 1, 1, 1, 3, 1, 1, 2, 1], - "Aeroptygic": [1, 1, 1, 3, 1, 1, 2, 1, 1], - "Mylygic": [1, 1, 3, 1, 1, 2, 1, 1, 1], - "Galygic": [1, 3, 1, 1, 2, 1, 1, 1, 1], - "Mixolydygic": [3, 1, 1, 1, 2, 1, 1, 1, 1], - "Ionycrygic": [1, 1, 1, 2, 1, 1, 1, 1, 3], - "Zoptygic": [1, 1, 2, 1, 1, 1, 1, 3, 1], - "Phrygygic": [1, 2, 1, 1, 1, 1, 3, 1, 1], - "Locrygic": [2, 1, 1, 1, 1, 3, 1, 1, 1], - "Gonygic": [1, 1, 1, 1, 3, 1, 1, 1, 2], - "Aeracrygic": [1, 1, 1, 3, 1, 1, 1, 2, 1], - "Aerathygic": [1, 1, 3, 1, 1, 1, 2, 1, 1], - "Dorygic": [1, 3, 1, 1, 1, 2, 1, 1, 1], - "Dycrygic": [3, 1, 1, 1, 1, 2, 1, 1, 1], - "Aeolygic": [1, 1, 1, 1, 2, 1, 1, 1, 3], - "Dydygic": [1, 1, 1, 2, 1, 1, 1, 3, 1], - "Tholygic": [1, 1, 2, 1, 1, 1, 3, 1, 1], - "Rynygic": [1, 2, 1, 1, 1, 3, 1, 1, 1], - "Bycrygic": [2, 1, 1, 1, 3, 1, 1, 1, 1], - "Zacrygic": [1, 1, 1, 3, 1, 1, 1, 1, 2], - "Panygic": [1, 1, 3, 1, 1, 1, 1, 2, 1], - "Dyrygic": [1, 3, 1, 1, 1, 1, 2, 1, 1], - "Loptygic": [3, 1, 1, 1, 1, 1, 2, 1, 1], - "Katylygic": [1, 1, 1, 1, 1, 2, 1, 1, 3], - "Phradygic": [1, 1, 1, 1, 2, 1, 1, 3, 1], - "Mixodygic": [1, 1, 1, 2, 1, 1, 3, 1, 1], - "Katalygic": [1, 1, 2, 1, 1, 3, 1, 1, 1], - "Katorygic": [1, 2, 1, 1, 3, 1, 1, 1, 1], - "Dogygic": [2, 1, 1, 3, 1, 1, 1, 1, 1], - "Zodygic": [1, 1, 3, 1, 1, 1, 1, 1, 2], - "Madygic": [1, 3, 1, 1, 1, 1, 1, 2, 1], - "Bagygic": [2, 2, 1, 2, 1, 1, 1, 1, 1], - "Mathygic": [2, 1, 2, 1, 1, 1, 1, 1, 2], - "Styptygic": [1, 2, 1, 1, 1, 1, 1, 2, 2], - "Zolygic": [2, 1, 1, 1, 1, 1, 2, 2, 1], - "Sydygic": [1, 1, 1, 1, 1, 2, 2, 1, 2], - "Katygic": [1, 1, 1, 1, 2, 2, 1, 2, 1], - "Zyphygic": [1, 1, 1, 2, 2, 1, 2, 1, 1], - "Aeralygic": [1, 1, 2, 2, 1, 2, 1, 1, 1], - "Ryptygic": [1, 2, 2, 1, 2, 1, 1, 1, 1], - "Apinygic": [2, 2, 1, 1, 1, 1, 1, 2, 1], - "Katagygic": [2, 1, 1, 1, 1, 1, 2, 1, 2], - "Radygic": [1, 1, 1, 1, 1, 2, 1, 2, 2], - "Gothygic": [1, 1, 1, 1, 2, 1, 2, 2, 1], - "Lythygic": [1, 1, 1, 2, 1, 2, 2, 1, 1], - "Bacrygic": [1, 1, 2, 1, 2, 2, 1, 1, 1], - "Aerygic": [1, 2, 1, 2, 2, 1, 1, 1, 1], - "Dathygic": [2, 1, 2, 2, 1, 1, 1, 1, 1], - "Boptygic": [1, 2, 2, 1, 1, 1, 1, 1, 2], - "Epyrygic": [2, 1, 2, 1, 1, 2, 1, 1, 1], - "Aeradygic": [1, 2, 1, 1, 2, 1, 1, 1, 2], - "Staptygic": [2, 1, 1, 2, 1, 1, 1, 2, 1], - "Danygic": [1, 1, 2, 1, 1, 1, 2, 1, 2], - "Goptygic": [1, 2, 1, 1, 1, 2, 1, 2, 1], - "Epocrygic": [2, 1, 1, 1, 2, 1, 2, 1, 1], - "Rocrygic": [1, 1, 1, 2, 1, 2, 1, 1, 2], - "Zyrygic": [1, 1, 2, 1, 2, 1, 1, 2, 1], - "Sadygic": [1, 2, 1, 2, 1, 1, 2, 1, 1], - "Aeolorygic": [2, 1, 2, 1, 1, 1, 2, 1, 1], - "Thydygic": [1, 2, 1, 1, 1, 2, 1, 1, 2], - "Gycrygic": [2, 1, 1, 1, 2, 1, 1, 2, 1], - "Lyrygic": [1, 1, 1, 2, 1, 1, 2, 1, 2], - "Modygic": [1, 1, 2, 1, 1, 2, 1, 2, 1], - "Katodygic": [1, 2, 1, 1, 2, 1, 2, 1, 1], - "Moptygic": [2, 1, 1, 2, 1, 2, 1, 1, 1], - "Ionocrygic": [1, 1, 2, 1, 2, 1, 1, 1, 2], - "Gocrygic": [1, 2, 1, 2, 1, 1, 1, 2, 1], - "Manygic": [4, 1, 1, 1, 1, 1, 1, 1, 1], - "Polygic": [1, 1, 1, 1, 1, 1, 1, 1, 4], - "Stanygic": [1, 1, 1, 1, 1, 1, 1, 4, 1], - "Thaptygic": [1, 1, 1, 1, 1, 1, 4, 1, 1], - "Eporygic": [1, 1, 1, 1, 1, 4, 1, 1, 1], - "Aerynygic": [1, 1, 1, 1, 4, 1, 1, 1, 1], - "Thyptygic": [1, 1, 1, 4, 1, 1, 1, 1, 1], - "Ionogygic": [1, 1, 4, 1, 1, 1, 1, 1, 1], - "Aeolarygic": [1, 4, 1, 1, 1, 1, 1, 1, 1], - "Sathygic": [3, 2, 1, 1, 1, 1, 1, 1, 1], - "Ladygic": [2, 1, 1, 1, 1, 1, 1, 1, 3], - "Sarygic": [1, 1, 1, 1, 1, 1, 1, 3, 2], - "Thacrygic": [1, 1, 1, 1, 1, 1, 3, 2, 1], - "Aeolynygic": [1, 1, 1, 1, 1, 3, 2, 1, 1], - "Thadygic": [1, 1, 1, 1, 3, 2, 1, 1, 1], - "Lynygic": [1, 1, 1, 3, 2, 1, 1, 1, 1], - "Doptygic": [1, 1, 3, 2, 1, 1, 1, 1, 1], - "Ionilygic": [1, 3, 2, 1, 1, 1, 1, 1, 1], - "Phrygic": [3, 1, 2, 1, 1, 1, 1, 1, 1], - "Aeranygic": [1, 2, 1, 1, 1, 1, 1, 1, 3], - "Dothygic": [2, 1, 1, 1, 1, 1, 1, 3, 1], - "Lydygic": [1, 1, 1, 1, 1, 1, 3, 1, 2], - "Stadygic": [1, 1, 1, 1, 1, 3, 1, 2, 1], - "Byptygic": [1, 1, 1, 1, 3, 1, 2, 1, 1], - "Stodygic": [1, 1, 1, 3, 1, 2, 1, 1, 1], - "Zynygic": [1, 1, 3, 1, 2, 1, 1, 1, 1], - "Lonygic": [1, 3, 1, 2, 1, 1, 1, 1, 1], - "Zothygic": [3, 1, 1, 1, 1, 1, 1, 2, 1], - "Aeolathygic": [1, 1, 1, 1, 1, 1, 2, 1, 3], - "Aeolocrygic": [1, 1, 1, 1, 1, 2, 1, 3, 1], - "Phroptygic": [1, 1, 1, 1, 2, 1, 3, 1, 1], - "Kodygic": [1, 1, 1, 2, 1, 3, 1, 1, 1], - "Eparygic": [1, 1, 2, 1, 3, 1, 1, 1, 1], - "Ionygic": [1, 2, 1, 3, 1, 1, 1, 1, 1], - "Gyptygic": [2, 1, 3, 1, 1, 1, 1, 1, 1], - "Aerythygic": [1, 3, 1, 1, 1, 1, 1, 1, 2], - "Aeolacrygic": [3, 1, 1, 1, 1, 1, 1, 1, 2], - "Raptygic": [1, 1, 1, 1, 1, 1, 1, 2, 3], - "Gythygic": [1, 1, 1, 1, 1, 1, 2, 3, 1], - "Pyrygic": [1, 1, 1, 1, 1, 2, 3, 1, 1], - "Rycrygic": [1, 1, 1, 1, 2, 3, 1, 1, 1], - "Phrathygic": [1, 1, 1, 2, 3, 1, 1, 1, 1], - "Badygic": [1, 1, 2, 3, 1, 1, 1, 1, 1], - "Phrocrygic": [1, 2, 3, 1, 1, 1, 1, 1, 1], - "Starygic": [2, 3, 1, 1, 1, 1, 1, 1, 1], - "Kyrygic": [2, 2, 2, 1, 1, 1, 1, 1, 1], - "Sythygic": [2, 2, 1, 1, 1, 1, 1, 1, 2], - "Katycrygic": [2, 1, 1, 1, 1, 1, 1, 2, 2], - "Tharygic": [1, 1, 1, 1, 1, 1, 2, 2, 2], - "Sylygic": [1, 1, 1, 1, 1, 2, 2, 2, 1], - "Lothygic": [1, 1, 1, 1, 2, 2, 2, 1, 1], - "Darygic": [1, 1, 1, 2, 2, 2, 1, 1, 1], - "Monygic": [1, 1, 2, 2, 2, 1, 1, 1, 1], - "Styrygic": [1, 2, 2, 2, 1, 1, 1, 1, 1], - "Porygic": [2, 2, 1, 1, 2, 1, 1, 1, 1], - "Mocrygic": [2, 1, 1, 2, 1, 1, 1, 1, 2], - "Aeolyrygic": [1, 1, 2, 1, 1, 1, 1, 2, 2], - "Barygic": [1, 2, 1, 1, 1, 1, 2, 2, 1], - "Katarygic": [2, 1, 1, 1, 1, 2, 2, 1, 1], - "Aerocrygic": [1, 1, 1, 1, 2, 2, 1, 1, 2], - "Zanygic": [1, 1, 1, 2, 2, 1, 1, 2, 1], - "Aeolonygic": [1, 1, 2, 2, 1, 1, 2, 1, 1], - "Aeolanygic": [1, 2, 2, 1, 1, 2, 1, 1, 1], - "Kaptygic": [2, 2, 1, 1, 1, 1, 2, 1, 1], - "Sacrygic": [2, 1, 1, 1, 1, 2, 1, 1, 2], - "Padygic": [1, 1, 1, 1, 2, 1, 1, 2, 2], - "Epilygic": [1, 1, 1, 2, 1, 1, 2, 2, 1], - "Kynygic": [1, 1, 2, 1, 1, 2, 2, 1, 1], - "Stophygic": [1, 2, 1, 1, 2, 2, 1, 1, 1], - "Ionidygic": [2, 1, 1, 2, 2, 1, 1, 1, 1], - "Stonygic": [1, 1, 2, 2, 1, 1, 1, 1, 2], - "Stalygic": [1, 2, 2, 1, 1, 1, 1, 2, 1], - "Koptygic": [2, 1, 2, 1, 2, 1, 1, 1, 1], - "Raphygic": [1, 2, 1, 2, 1, 1, 1, 1, 2], - "Zycrygic": [2, 1, 2, 1, 1, 1, 1, 2, 1], - "Mycrygic": [1, 2, 1, 1, 1, 1, 2, 1, 2], - "Laptygic": [2, 1, 1, 1, 1, 2, 1, 2, 1], - "Pylygic": [1, 1, 1, 1, 2, 1, 2, 1, 2], - "Rodygic": [1, 1, 1, 2, 1, 2, 1, 2, 1], - "Epolygic": [1, 1, 2, 1, 2, 1, 2, 1, 1], - "Epidygic": [1, 2, 1, 2, 1, 2, 1, 1, 1], - "Phronygic": [2, 1, 1, 2, 1, 1, 2, 1, 1], - "Stynygic": [1, 1, 2, 1, 1, 2, 1, 1, 2], - "Zydygic": [1, 2, 1, 1, 2, 1, 1, 2, 1], - "Aerycryllian": [2, 1, 1, 1, 2, 1, 1, 1, 1, 1], - "Gadyllian": [1, 1, 1, 2, 1, 1, 1, 1, 1, 2], - "Solyllian": [1, 1, 2, 1, 1, 1, 1, 1, 2, 1], - "Zyphyllian": [1, 2, 1, 1, 1, 1, 1, 2, 1, 1], - "Garyllian": [2, 1, 1, 1, 1, 1, 2, 1, 1, 1], - "Soryllian": [1, 1, 1, 1, 1, 2, 1, 1, 1, 2], - "Godyllian": [1, 1, 1, 1, 2, 1, 1, 1, 2, 1], - "Epityllian": [1, 1, 1, 2, 1, 1, 1, 2, 1, 1], - "Ionyllian": [1, 1, 2, 1, 1, 1, 2, 1, 1, 1], - "Aeoryllian": [1, 2, 1, 1, 1, 2, 1, 1, 1, 1], - "Katoryllian": [3, 1, 1, 1, 1, 1, 1, 1, 1, 1], - "Dodyllian": [1, 1, 1, 1, 1, 1, 1, 1, 1, 3], - "Zogyllian": [1, 1, 1, 1, 1, 1, 1, 1, 3, 1], - "Madyllian": [1, 1, 1, 1, 1, 1, 1, 3, 1, 1], - "Dycryllian": [1, 1, 1, 1, 1, 1, 3, 1, 1, 1], - "Aeogyllian": [1, 1, 1, 1, 1, 3, 1, 1, 1, 1], - "Dydyllian": [1, 1, 1, 1, 3, 1, 1, 1, 1, 1], - "Thogyllian": [1, 1, 1, 3, 1, 1, 1, 1, 1, 1], - "Rygyllian": [1, 1, 3, 1, 1, 1, 1, 1, 1, 1], - "Bathyllian": [1, 3, 1, 1, 1, 1, 1, 1, 1, 1], - "Sydyllian": [2, 2, 1, 1, 1, 1, 1, 1, 1, 1], - "Katogyllian": [2, 1, 1, 1, 1, 1, 1, 1, 1, 2], - "Mixodyllian": [1, 1, 1, 1, 1, 1, 1, 1, 2, 2], - "Aeradyllian": [1, 1, 1, 1, 1, 1, 1, 2, 2, 1], - "Ryptyllian": [1, 1, 1, 1, 1, 1, 2, 2, 1, 1], - "Loptyllian": [1, 1, 1, 1, 1, 2, 2, 1, 1, 1], - "Kataphyllian": [1, 1, 1, 1, 2, 2, 1, 1, 1, 1], - "Phradyllian": [1, 1, 1, 2, 2, 1, 1, 1, 1, 1], - "Dagyllian": [1, 1, 2, 2, 1, 1, 1, 1, 1, 1], - "Katyllian": [1, 2, 2, 1, 1, 1, 1, 1, 1, 1], - "Gothyllian": [2, 1, 2, 1, 1, 1, 1, 1, 1, 1], - "Lythyllian": [1, 2, 1, 1, 1, 1, 1, 1, 1, 2], - "Bacryllian": [2, 1, 1, 1, 1, 1, 1, 1, 2, 1], - "Aerygyllian": [1, 1, 1, 1, 1, 1, 1, 2, 1, 2], - "Dathyllian": [1, 1, 1, 1, 1, 1, 2, 1, 2, 1], - "Boptyllian": [1, 1, 1, 1, 1, 2, 1, 2, 1, 1], - "Bagyllian": [1, 1, 1, 1, 2, 1, 2, 1, 1, 1], - "Mathyllian": [1, 1, 1, 2, 1, 2, 1, 1, 1, 1], - "Styptyllian": [1, 1, 2, 1, 2, 1, 1, 1, 1, 1], - "Zolyllian": [1, 2, 1, 2, 1, 1, 1, 1, 1, 1], - "Staptyllian": [2, 1, 1, 2, 1, 1, 1, 1, 1, 1], - "Danyllian": [1, 1, 2, 1, 1, 1, 1, 1, 1, 2], - "Goptyllian": [1, 2, 1, 1, 1, 1, 1, 1, 2, 1], - "Epocryllian": [2, 1, 1, 1, 1, 1, 1, 2, 1, 1], - "Rocryllian": [1, 1, 1, 1, 1, 1, 2, 1, 1, 2], - "Zyryllian": [1, 1, 1, 1, 1, 2, 1, 1, 2, 1], - "Sagyllian": [1, 1, 1, 1, 2, 1, 1, 2, 1, 1], - "Epinyllian": [1, 1, 1, 2, 1, 1, 2, 1, 1, 1], - "Katagyllian": [1, 1, 2, 1, 1, 2, 1, 1, 1, 1], - "Ragyllian": [1, 2, 1, 1, 2, 1, 1, 1, 1, 1], - "Thydyllian": [2, 1, 1, 1, 1, 2, 1, 1, 1, 1], - "Epiryllian": [1, 1, 1, 1, 2, 1, 1, 1, 1, 2], - "Lyryllian": [1, 1, 1, 2, 1, 1, 1, 1, 2, 1], - "Mogyllian": [1, 1, 2, 1, 1, 1, 1, 2, 1, 1], - "Katodyllian": [1, 2, 1, 1, 1, 1, 2, 1, 1, 1], - "Aerycratic": [2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], - "Monatic": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2], - "Solatic": [1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1], - "Zylatic": [1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1], - "Mixolatic": [1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1], - "Soratic": [1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1], - "Godatic": [1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1], - "Eptatic": [1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1], - "Ionatic": [1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1], - "Aeolatic": [1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1], - "Thydatic": [1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1], - "Chromatic": [1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], + "Mixolythian": (1, 2, 2, 2, 2, 1, 2), + "Thadian": (4, 3, 1, 1, 1, 1, 1), + "Sanian": (3, 1, 1, 1, 1, 1, 4), + "Ionydian": (1, 1, 1, 1, 1, 4, 3), + "Epydian": (1, 1, 1, 1, 4, 3, 1), + "Katydian": (1, 1, 1, 4, 3, 1, 1), + "Mathian": (1, 1, 4, 3, 1, 1, 1), + "Aeryptian": (1, 4, 3, 1, 1, 1, 1), + "Pythian": (4, 2, 2, 1, 1, 1, 1), + "Katylian": (2, 2, 1, 1, 1, 1, 4), + "Bydian": (2, 1, 1, 1, 1, 4, 2), + "Bynian": (1, 1, 1, 1, 4, 2, 2), + "Galian": (1, 1, 1, 4, 2, 2, 1), + "Zonian": (1, 1, 4, 2, 2, 1, 1), + "Myrian": (1, 4, 2, 2, 1, 1, 1), + "Katogian": (4, 2, 1, 1, 2, 1, 1), + "Stacrian": (2, 1, 1, 2, 1, 1, 4), + "Styrian": (1, 1, 2, 1, 1, 4, 2), + "Ionyrian": (1, 2, 1, 1, 4, 2, 1), + "Phrodian": (2, 1, 1, 4, 2, 1, 1), + "Pycrian": (1, 1, 4, 2, 1, 1, 2), + "Gyptian": (1, 4, 2, 1, 1, 2, 1), + "Katacrian": (4, 1, 1, 2, 1, 1, 2), + "Sodian": (1, 1, 2, 1, 1, 2, 4), + "Bathian": (1, 2, 1, 1, 2, 4, 1), + "Mylian": (2, 1, 1, 2, 4, 1, 1), + "Godian": (1, 1, 2, 4, 1, 1, 2), + "Thorian": (1, 2, 4, 1, 1, 2, 1), + "Zocrian": (2, 4, 1, 1, 2, 1, 1), + "Stanian": (4, 1, 1, 1, 1, 2, 2), + "Epanian": (1, 1, 1, 1, 2, 2, 4), + "Konian": (1, 1, 1, 2, 2, 4, 1), + "Stocrian": (1, 1, 2, 2, 4, 1, 1), + "Kalian": (1, 2, 2, 4, 1, 1, 1), + "Phroptian": (2, 2, 4, 1, 1, 1, 1), + "Dydian": (2, 4, 1, 1, 1, 1, 2), + "Katyptian": (4, 1, 1, 1, 1, 1, 3), + "Epodian": (1, 1, 1, 1, 1, 3, 4), + "Mygian": (1, 1, 1, 1, 3, 4, 1), + "Pacrian": (1, 1, 1, 3, 4, 1, 1), + "Aerocrian": (1, 1, 3, 4, 1, 1, 1), + "Aeolarian": (1, 3, 4, 1, 1, 1, 1), + "Kythian": (3, 4, 1, 1, 1, 1, 1), + "Bonian": (3, 3, 2, 1, 1, 1, 1), + "Badian": (3, 2, 1, 1, 1, 1, 3), + "Katodian": (2, 1, 1, 1, 1, 3, 3), + "Sadian": (1, 1, 1, 1, 3, 3, 2), + "Dothian": (1, 1, 1, 3, 3, 2, 1), + "Moptian": (1, 1, 3, 3, 2, 1, 1), + "Aeryrian": (1, 3, 3, 2, 1, 1, 1), + "Epagian": (3, 3, 1, 2, 1, 1, 1), + "Raptian": (3, 1, 2, 1, 1, 1, 3), + "Epolian": (1, 2, 1, 1, 1, 3, 3), + "Sythian": (2, 1, 1, 1, 3, 3, 1), + "Sydian": (1, 1, 1, 3, 3, 1, 2), + "Epocrian": (1, 1, 3, 3, 1, 2, 1), + "Kylian": (1, 3, 3, 1, 2, 1, 1), + "Gacrian": (3, 3, 1, 1, 1, 2, 1), + "Borian": (3, 1, 1, 1, 2, 1, 3), + "Sycrian": (1, 1, 1, 2, 1, 3, 3), + "Gadian": (1, 1, 2, 1, 3, 3, 1), + "Aeolocrian": (1, 2, 1, 3, 3, 1, 1), + "Mixodorian": (2, 1, 3, 3, 1, 1, 1), + "Dathian": (1, 3, 3, 1, 1, 1, 2), + "Katoptian": (3, 3, 1, 1, 1, 1, 2), + "Ponian": (3, 1, 1, 1, 1, 2, 3), + "Kadian": (1, 1, 1, 1, 2, 3, 3), + "Gynian": (1, 1, 1, 2, 3, 3, 1), + "Thyphian": (1, 1, 2, 3, 3, 1, 1), + "Polian": (1, 2, 3, 3, 1, 1, 1), + "Thanian": (2, 3, 3, 1, 1, 1, 1), + "Epacrian": (3, 2, 2, 1, 1, 2, 1), + "Sathian": (2, 2, 1, 1, 2, 1, 3), + "Lathian": (2, 1, 1, 2, 1, 3, 2), + "Aeralian": (1, 1, 2, 1, 3, 2, 2), + "Kynian": (1, 2, 1, 3, 2, 2, 1), + "Stynian": (2, 1, 3, 2, 2, 1, 1), + "Epyphian": (1, 3, 2, 2, 1, 1, 2), + "Pogian": (3, 2, 1, 2, 1, 2, 1), + "Aeraptian": (2, 1, 2, 1, 2, 1, 3), + "Epylian": (1, 2, 1, 2, 1, 3, 2), + "Gamian": (2, 1, 2, 1, 3, 2, 1), + "Kathian": (1, 2, 1, 3, 2, 1, 2), + "Lylian": (2, 1, 3, 2, 1, 2, 1), + "Epalian": (1, 3, 2, 1, 2, 1, 2), + "Eporian": (3, 2, 1, 1, 2, 2, 1), + "Rylian": (2, 1, 1, 2, 2, 1, 3), + "Epaptian": (1, 1, 2, 2, 1, 3, 2), + "Byrian": (1, 2, 2, 1, 3, 2, 1), + "Katanian": (2, 2, 1, 3, 2, 1, 1), + "Katyrian": (2, 1, 3, 2, 1, 1, 2), + "Rynian": (1, 3, 2, 1, 1, 2, 2), + "Korian": (3, 1, 2, 2, 1, 1, 2), + "Lynian": (1, 2, 2, 1, 1, 2, 3), + "Malian": (2, 2, 1, 1, 2, 3, 1), + "Synian": (2, 1, 1, 2, 3, 1, 2), + "Phragian": (1, 1, 2, 3, 1, 2, 2), + "Manian": (1, 2, 3, 1, 2, 2, 1), + "Marian": (2, 3, 1, 2, 2, 1, 1), + "Mycrian": (3, 1, 2, 1, 2, 1, 2), + "Ionorian": (1, 2, 1, 2, 1, 2, 3), + "Phrydian": (2, 1, 2, 1, 2, 3, 1), + "Zyptian": (1, 2, 1, 2, 3, 1, 2), + "Katothian": (2, 1, 2, 3, 1, 2, 1), + "Phrylian": (1, 2, 3, 1, 2, 1, 2), + "Kocrian": (2, 3, 1, 2, 1, 2, 1), + "Ionanian": (3, 1, 2, 1, 1, 2, 2), + "Aerothian": (1, 2, 1, 1, 2, 2, 3), + "Stagian": (2, 1, 1, 2, 2, 3, 1), + "Lothian": (1, 1, 2, 2, 3, 1, 2), + "Phrycrian": (1, 2, 2, 3, 1, 2, 1), + "Kyptian": (2, 2, 3, 1, 2, 1, 1), + "Ionylian": (2, 3, 1, 2, 1, 1, 2), + "Gydian": (4, 2, 1, 1, 1, 1, 2), + "Kogian": (2, 1, 1, 1, 1, 2, 4), + "Rarian": (1, 1, 1, 1, 2, 4, 2), + "Aerolian": (1, 1, 1, 2, 4, 2, 1), + "Karian": (1, 1, 2, 4, 2, 1, 1), + "Myptian": (1, 2, 4, 2, 1, 1, 1), + "Rydian": (2, 4, 2, 1, 1, 1, 1), + "Aeolynian": (2, 2, 2, 2, 2, 1, 1), + "Aeroptian": (2, 2, 2, 2, 1, 1, 2), + "Phryrian": (2, 2, 2, 1, 1, 2, 2), + "Gothian": (2, 2, 1, 1, 2, 2, 2), + "Storian": (2, 1, 1, 2, 2, 2, 2), + "Pyptian": (1, 1, 2, 2, 2, 2, 2), + "Thydian": (1, 2, 2, 2, 2, 2, 1), + "Aerycryllic": (2, 2, 1, 2, 2, 1, 1, 1), + "Gadyllic": (2, 1, 2, 2, 1, 1, 1, 2), + "Solyllic": (1, 2, 2, 1, 1, 1, 2, 2), + "Zylyllic": (2, 2, 1, 1, 1, 2, 2, 1), + "Mixodyllic": (2, 1, 1, 1, 2, 2, 1, 2), + "Soryllic": (1, 1, 1, 2, 2, 1, 2, 2), + "Godyllic": (1, 1, 2, 2, 1, 2, 2, 1), + "Epiphyllic": (1, 2, 2, 1, 2, 2, 1, 1), + "Pynyllic": (4, 1, 1, 1, 2, 1, 1, 1), + "Bocryllic": (1, 1, 1, 2, 1, 1, 1, 4), + "Kogyllic": (1, 1, 2, 1, 1, 1, 4, 1), + "Raryllic": (1, 2, 1, 1, 1, 4, 1, 1), + "Zycryllic": (2, 1, 1, 1, 4, 1, 1, 1), + "Mycryllic": (1, 1, 1, 4, 1, 1, 1, 2), + "Laptyllic": (1, 1, 4, 1, 1, 1, 2, 1), + "Pylyllic": (1, 4, 1, 1, 1, 2, 1, 1), + "Pothyllic": (3, 2, 1, 1, 1, 2, 1, 1), + "Phronyllic": (2, 1, 1, 1, 2, 1, 1, 3), + "Stynyllic": (1, 1, 1, 2, 1, 1, 3, 2), + "Rathyllic": (1, 1, 2, 1, 1, 3, 2, 1), + "Aeryptyllic": (1, 2, 1, 1, 3, 2, 1, 1), + "Zydyllic": (2, 1, 1, 3, 2, 1, 1, 1), + "Katolyllic": (1, 1, 3, 2, 1, 1, 1, 2), + "Rythyllic": (1, 3, 2, 1, 1, 1, 2, 1), + "Locryllic": (3, 1, 1, 3, 1, 1, 1, 1), + "Bylyllic": (1, 1, 3, 1, 1, 1, 1, 3), + "Sogyllic": (1, 3, 1, 1, 1, 1, 3, 1), + "Ionycryllic": (3, 1, 1, 1, 1, 3, 1, 1), + "Koptyllic": (1, 1, 1, 1, 3, 1, 1, 3), + "Epyryllic": (1, 1, 1, 3, 1, 1, 3, 1), + "Soptyllic": (1, 1, 3, 1, 1, 3, 1, 1), + "Aeolylyllic": (1, 3, 1, 1, 3, 1, 1, 1), + "Aeracryllic": (3, 1, 1, 2, 2, 1, 1, 1), + "Epygyllic": (1, 1, 2, 2, 1, 1, 1, 3), + "Thonyllic": (1, 2, 2, 1, 1, 1, 3, 1), + "Lanyllic": (2, 2, 1, 1, 1, 3, 1, 1), + "Phrynyllic": (2, 1, 1, 1, 3, 1, 1, 2), + "Lycryllic": (1, 1, 1, 3, 1, 1, 2, 2), + "Ionyptyllic": (1, 1, 3, 1, 1, 2, 2, 1), + "Epathyllic": (1, 3, 1, 1, 2, 2, 1, 1), + "Dydyllic": (3, 1, 1, 2, 1, 2, 1, 1), + "Thogyllic": (1, 1, 2, 1, 2, 1, 1, 3), + "Rygyllic": (1, 2, 1, 2, 1, 1, 3, 1), + "Bycryllic": (2, 1, 2, 1, 1, 3, 1, 1), + "Zacryllic": (1, 2, 1, 1, 3, 1, 1, 2), + "Panyllic": (2, 1, 1, 3, 1, 1, 2, 1), + "Dyryllic": (1, 1, 3, 1, 1, 2, 1, 2), + "Zathyllic": (1, 3, 1, 1, 2, 1, 2, 1), + "Dagyllic": (3, 1, 1, 2, 1, 1, 1, 2), + "Katalyllic": (1, 1, 2, 1, 1, 1, 2, 3), + "Katoryllic": (1, 2, 1, 1, 1, 2, 3, 1), + "Dodyllic": (2, 1, 1, 1, 2, 3, 1, 1), + "Zogyllic": (1, 1, 1, 2, 3, 1, 1, 2), + "Madyllic": (1, 1, 2, 3, 1, 1, 2, 1), + "Dycryllic": (1, 2, 3, 1, 1, 2, 1, 1), + "Aeologyllic": (2, 3, 1, 1, 2, 1, 1, 1), + "Sydyllic": (3, 1, 1, 1, 3, 1, 1, 1), + "Katogyllic": (1, 1, 1, 3, 1, 1, 1, 3), + "Zygyllic": (1, 1, 3, 1, 1, 1, 3, 1), + "Aeralyllic": (1, 3, 1, 1, 1, 3, 1, 1), + "Bacryllic": (3, 1, 1, 1, 2, 2, 1, 1), + "Aerygyllic": (1, 1, 1, 2, 2, 1, 1, 3), + "Dathyllic": (1, 1, 2, 2, 1, 1, 3, 1), + "Boptyllic": (1, 2, 2, 1, 1, 3, 1, 1), + "Bagyllic": (2, 2, 1, 1, 3, 1, 1, 1), + "Mathyllic": (2, 1, 1, 3, 1, 1, 1, 2), + "Styptyllic": (1, 1, 3, 1, 1, 1, 2, 2), + "Zolyllic": (1, 3, 1, 1, 1, 2, 2, 1), + "Rocryllic": (2, 2, 2, 1, 2, 1, 1, 1), + "Zyryllic": (2, 2, 1, 2, 1, 1, 1, 2), + "Sagyllic": (2, 1, 2, 1, 1, 1, 2, 2), + "Epinyllic": (1, 2, 1, 1, 1, 2, 2, 2), + "Katagyllic": (2, 1, 1, 1, 2, 2, 2, 1), + "Ragyllic": (1, 1, 1, 2, 2, 2, 1, 2), + "Gothyllic": (1, 1, 2, 2, 2, 1, 2, 1), + "Lythyllic": (1, 2, 2, 2, 1, 2, 1, 1), + "Ionocryllic": (2, 2, 2, 1, 1, 1, 2, 1), + "Gocryllic": (2, 2, 1, 1, 1, 2, 1, 2), + "Epiryllic": (2, 1, 1, 1, 2, 1, 2, 2), + "Aeradyllic": (1, 1, 1, 2, 1, 2, 2, 2), + "Staptyllic": (1, 1, 2, 1, 2, 2, 2, 1), + "Danyllic": (1, 2, 1, 2, 2, 2, 1, 1), + "Goptyllic": (2, 1, 2, 2, 2, 1, 1, 1), + "Epocryllic": (1, 2, 2, 2, 1, 1, 1, 2), + "Ionoptyllic": (2, 2, 1, 2, 1, 1, 2, 1), + "Aeoloryllic": (2, 1, 2, 1, 1, 2, 1, 2), + "Thydyllic": (1, 2, 1, 1, 2, 1, 2, 2), + "Gycryllic": (2, 1, 1, 2, 1, 2, 2, 1), + "Lyryllic": (1, 1, 2, 1, 2, 2, 1, 2), + "Mogyllic": (1, 2, 1, 2, 2, 1, 2, 1), + "Katodyllic": (2, 1, 2, 2, 1, 2, 1, 1), + "Moptyllic": (1, 2, 2, 1, 2, 1, 1, 2), + "Dolyllic": (4, 1, 2, 1, 1, 1, 1, 1), + "Moryllic": (1, 2, 1, 1, 1, 1, 1, 4), + "Bydyllic": (2, 1, 1, 1, 1, 1, 4, 1), + "Pocryllic": (1, 1, 1, 1, 1, 4, 1, 2), + "Phracryllic": (1, 1, 1, 1, 4, 1, 2, 1), + "Gyryllic": (1, 1, 1, 4, 1, 2, 1, 1), + "Phrygyllic": (1, 1, 4, 1, 2, 1, 1, 1), + "Dogyllic": (1, 4, 1, 2, 1, 1, 1, 1), + "Thagyllic": (4, 1, 1, 2, 1, 1, 1, 1), + "Thoptyllic": (1, 1, 2, 1, 1, 1, 1, 4), + "Phraptyllic": (1, 2, 1, 1, 1, 1, 4, 1), + "Gylyllic": (2, 1, 1, 1, 1, 4, 1, 1), + "Phralyllic": (1, 1, 1, 1, 4, 1, 1, 2), + "Dygyllic": (1, 1, 1, 4, 1, 1, 2, 1), + "Ronyllic": (1, 1, 4, 1, 1, 2, 1, 1), + "Epogyllic": (1, 4, 1, 1, 2, 1, 1, 1), + "Aeoladyllic": (4, 1, 1, 1, 1, 2, 1, 1), + "Kocryllic": (1, 1, 1, 1, 2, 1, 1, 4), + "Lodyllic": (1, 1, 1, 2, 1, 1, 4, 1), + "Bynyllic": (1, 1, 2, 1, 1, 4, 1, 1), + "Kydyllic": (1, 2, 1, 1, 4, 1, 1, 1), + "Bygyllic": (2, 1, 1, 4, 1, 1, 1, 1), + "Phryptyllic": (1, 1, 4, 1, 1, 1, 1, 2), + "Ionayllic": (1, 4, 1, 1, 1, 1, 2, 1), + "Phroryllic": (4, 1, 1, 1, 1, 1, 2, 1), + "Thyphyllic": (1, 1, 1, 1, 1, 2, 1, 4), + "Poptyllic": (1, 1, 1, 1, 2, 1, 4, 1), + "Mixonyllic": (1, 1, 1, 2, 1, 4, 1, 1), + "Paptyllic": (1, 1, 2, 1, 4, 1, 1, 1), + "Storyllic": (1, 2, 1, 4, 1, 1, 1, 1), + "Phrycryllic": (2, 1, 4, 1, 1, 1, 1, 1), + "Palyllic": (1, 4, 1, 1, 1, 1, 1, 2), + "Phranyllic": (3, 2, 2, 1, 1, 1, 1, 1), + "Stydyllic": (2, 2, 1, 1, 1, 1, 1, 3), + "Zadyllic": (2, 1, 1, 1, 1, 1, 3, 2), + "Zalyllic": (1, 1, 1, 1, 1, 3, 2, 2), + "Zocryllic": (1, 1, 1, 1, 3, 2, 2, 1), + "Katocryllic": (1, 1, 1, 3, 2, 2, 1, 1), + "Aerathyllic": (1, 1, 3, 2, 2, 1, 1, 1), + "Stoptyllic": (1, 3, 2, 2, 1, 1, 1, 1), + "Lydyllic": (3, 2, 1, 2, 1, 1, 1, 1), + "Radyllic": (2, 1, 2, 1, 1, 1, 1, 3), + "Stagyllic": (1, 2, 1, 1, 1, 1, 3, 2), + "Ionoryllic": (2, 1, 1, 1, 1, 3, 2, 1), + "Phrodyllic": (1, 1, 1, 1, 3, 2, 1, 2), + "Aeragyllic": (1, 1, 1, 3, 2, 1, 2, 1), + "Banyllic": (1, 1, 3, 2, 1, 2, 1, 1), + "Epothyllic": (1, 3, 2, 1, 2, 1, 1, 1), + "Zoryllic": (3, 2, 1, 1, 2, 1, 1, 1), + "Phrolyllic": (2, 1, 1, 2, 1, 1, 1, 3), + "Kolyllic": (1, 1, 2, 1, 1, 1, 3, 2), + "Thodyllic": (1, 2, 1, 1, 1, 3, 2, 1), + "Socryllic": (2, 1, 1, 1, 3, 2, 1, 1), + "Aeolyllic": (1, 1, 1, 3, 2, 1, 1, 2), + "Zythyllic": (1, 1, 3, 2, 1, 1, 2, 1), + "Aeoryllic": (1, 3, 2, 1, 1, 2, 1, 1), + "Mixolydyllic": (3, 2, 1, 1, 1, 1, 1, 2), + "Mixonyphyllic": (2, 1, 1, 1, 1, 1, 2, 3), + "Aeolanyllic": (1, 1, 1, 1, 1, 2, 3, 2), + "Thocryllic": (1, 1, 1, 1, 2, 3, 2, 1), + "Kygyllic": (1, 1, 1, 2, 3, 2, 1, 1), + "Ionagyllic": (1, 1, 2, 3, 2, 1, 1, 1), + "Gogyllic": (1, 2, 3, 2, 1, 1, 1, 1), + "Phradyllic": (2, 3, 2, 1, 1, 1, 1, 1), + "Ioniptyllic": (3, 1, 3, 1, 1, 1, 1, 1), + "Kycryllic": (1, 3, 1, 1, 1, 1, 1, 3), + "Aeolaptyllic": (3, 1, 1, 1, 1, 1, 3, 1), + "Rodyllic": (1, 1, 1, 1, 1, 3, 1, 3), + "Ionathyllic": (1, 1, 1, 1, 3, 1, 3, 1), + "Pythyllic": (1, 1, 1, 3, 1, 3, 1, 1), + "Zonyllic": (1, 1, 3, 1, 3, 1, 1, 1), + "Ryryllic": (1, 3, 1, 3, 1, 1, 1, 1), + "Aeolothyllic": (3, 1, 2, 2, 1, 1, 1, 1), + "Ionyryllic": (1, 2, 2, 1, 1, 1, 1, 3), + "Rydyllic": (2, 2, 1, 1, 1, 1, 3, 1), + "Gonyllic": (2, 1, 1, 1, 1, 3, 1, 2), + "Rolyllic": (1, 1, 1, 1, 3, 1, 2, 2), + "Katydyllic": (1, 1, 1, 3, 1, 2, 2, 1), + "Zyptyllic": (1, 1, 3, 1, 2, 2, 1, 1), + "Modyllic": (1, 3, 1, 2, 2, 1, 1, 1), + "Maptyllic": (3, 1, 2, 1, 2, 1, 1, 1), + "Aeraptyllic": (1, 2, 1, 2, 1, 1, 1, 3), + "Katadyllic": (2, 1, 2, 1, 1, 1, 3, 1), + "Magyllic": (1, 2, 1, 1, 1, 3, 1, 2), + "Phrylyllic": (2, 1, 1, 1, 3, 1, 2, 1), + "Epigyllic": (1, 1, 1, 3, 1, 2, 1, 2), + "Molyllic": (1, 1, 3, 1, 2, 1, 2, 1), + "Ponyllic": (1, 3, 1, 2, 1, 2, 1, 1), + "Thyptyllic": (3, 1, 2, 1, 1, 2, 1, 1), + "Ionogyllic": (1, 2, 1, 1, 2, 1, 1, 3), + "Aeolaryllic": (2, 1, 1, 2, 1, 1, 3, 1), + "Katygyllic": (1, 1, 2, 1, 1, 3, 1, 2), + "Ganyllic": (1, 2, 1, 1, 3, 1, 2, 1), + "Kyptyllic": (2, 1, 1, 3, 1, 2, 1, 1), + "Salyllic": (1, 1, 3, 1, 2, 1, 1, 2), + "Sanyllic": (1, 3, 1, 2, 1, 1, 2, 1), + "Doptyllic": (3, 1, 2, 1, 1, 1, 2, 1), + "Ionilyllic": (1, 2, 1, 1, 1, 2, 1, 3), + "Manyllic": (2, 1, 1, 1, 2, 1, 3, 1), + "Polyllic": (1, 1, 1, 2, 1, 3, 1, 2), + "Stanyllic": (1, 1, 2, 1, 3, 1, 2, 1), + "Mixotharyllic": (1, 2, 1, 3, 1, 2, 1, 1), + "Eporyllic": (2, 1, 3, 1, 2, 1, 1, 1), + "Aerynyllic": (1, 3, 1, 2, 1, 1, 1, 2), + "Lonyllic": (3, 1, 1, 2, 1, 1, 2, 1), + "Sathyllic": (1, 1, 2, 1, 1, 2, 1, 3), + "Layllic": (1, 2, 1, 1, 2, 1, 3, 1), + "Saryllic": (2, 1, 1, 2, 1, 3, 1, 1), + "Thacryllic": (1, 1, 2, 1, 3, 1, 1, 2), + "Aeolynyllic": (1, 2, 1, 3, 1, 1, 2, 1), + "Thadyllic": (2, 1, 3, 1, 1, 2, 1, 1), + "Lynyllic": (1, 3, 1, 1, 2, 1, 1, 2), + "Aeolathyllic": (3, 1, 1, 1, 2, 1, 2, 1), + "Aeolocryllic": (1, 1, 1, 2, 1, 2, 1, 3), + "Phroptyllic": (1, 1, 2, 1, 2, 1, 3, 1), + "Kodyllic": (1, 2, 1, 2, 1, 3, 1, 1), + "Epaptyllic": (2, 1, 2, 1, 3, 1, 1, 1), + "Ionoyllic": (1, 2, 1, 3, 1, 1, 1, 2), + "Gyptyllic": (2, 1, 3, 1, 1, 1, 2, 1), + "Aerythyllic": (1, 3, 1, 1, 1, 2, 1, 2), + "Zagyllic": (3, 1, 1, 1, 2, 1, 1, 2), + "Epacryllic": (1, 1, 1, 2, 1, 1, 2, 3), + "Thorcryllic": (1, 1, 2, 1, 1, 2, 3, 1), + "Loptyllic": (1, 2, 1, 1, 2, 3, 1, 1), + "Katylyllic": (2, 1, 1, 2, 3, 1, 1, 1), + "Malyllic": (1, 1, 2, 3, 1, 1, 1, 2), + "Mydyllic": (1, 2, 3, 1, 1, 1, 2, 1), + "Thycryllic": (2, 3, 1, 1, 1, 2, 1, 1), + "Gythyllic": (3, 1, 1, 1, 1, 2, 2, 1), + "Pyryllic": (1, 1, 1, 1, 2, 2, 1, 3), + "Rycryllic": (1, 1, 1, 2, 2, 1, 3, 1), + "Phrathyllic": (1, 1, 2, 2, 1, 3, 1, 1), + "Badyllic": (1, 2, 2, 1, 3, 1, 1, 1), + "Phrocryllic": (2, 2, 1, 3, 1, 1, 1, 1), + "Staryllic": (2, 1, 3, 1, 1, 1, 1, 2), + "Zothyllic": (1, 3, 1, 1, 1, 1, 2, 2), + "Tharyllic": (3, 1, 1, 1, 1, 2, 1, 2), + "Sylyllic": (1, 1, 1, 1, 2, 1, 2, 3), + "Lothyllic": (1, 1, 1, 2, 1, 2, 3, 1), + "Daryllic": (1, 1, 2, 1, 2, 3, 1, 1), + "Monyllic": (1, 2, 1, 2, 3, 1, 1, 1), + "Styryllic": (2, 1, 2, 3, 1, 1, 1, 1), + "Aeolacryllic": (1, 2, 3, 1, 1, 1, 1, 2), + "Raptyllic": (2, 3, 1, 1, 1, 1, 2, 1), + "Kataryllic": (3, 1, 1, 1, 1, 1, 2, 2), + "Aerocryllic": (1, 1, 1, 1, 1, 2, 2, 3), + "Zanyllic": (1, 1, 1, 1, 2, 2, 3, 1), + "Aeolonyllic": (1, 1, 1, 2, 2, 3, 1, 1), + "Aeonyllic": (1, 1, 2, 2, 3, 1, 1, 1), + "Kyryllic": (1, 2, 2, 3, 1, 1, 1, 1), + "Sythyllic": (2, 2, 3, 1, 1, 1, 1, 1), + "Katycryllic": (2, 3, 1, 1, 1, 1, 1, 2), + "Stogyllic": (2, 2, 1, 2, 1, 2, 1, 1), + "Ionidyllic": (2, 1, 2, 1, 2, 1, 1, 2), + "Stonyllic": (1, 2, 1, 2, 1, 1, 2, 2), + "Stalyllic": (2, 1, 2, 1, 1, 2, 2, 1), + "Poryllic": (1, 2, 1, 1, 2, 2, 1, 2), + "Mocryllic": (2, 1, 1, 2, 2, 1, 2, 1), + "Aeolyryllic": (1, 1, 2, 2, 1, 2, 1, 2), + "Baryllic": (1, 2, 2, 1, 2, 1, 2, 1), + "Dalyllic": (2, 2, 1, 1, 2, 1, 2, 1), + "Ionyphyllic": (2, 1, 1, 2, 1, 2, 1, 2), + "Zaptyllic": (1, 1, 2, 1, 2, 1, 2, 2), + "Garyllic": (1, 2, 1, 2, 1, 2, 2, 1), + "Gathyllic": (2, 1, 2, 1, 2, 2, 1, 1), + "Mixopyryllic": (1, 2, 1, 2, 2, 1, 1, 2), + "Ionacryllic": (2, 1, 2, 2, 1, 1, 2, 1), + "Stylyllic": (1, 2, 2, 1, 1, 2, 1, 2), + "Stycryllic": (4, 2, 1, 1, 1, 1, 1, 1), + "Ionothyllic": (2, 1, 1, 1, 1, 1, 1, 4), + "Mythyllic": (1, 1, 1, 1, 1, 1, 4, 2), + "Aerylyllic": (1, 1, 1, 1, 1, 4, 2, 1), + "Bonyllic": (1, 1, 1, 1, 4, 2, 1, 1), + "Tholyllic": (1, 1, 1, 4, 2, 1, 1, 1), + "Katyryllic": (1, 1, 4, 2, 1, 1, 1, 1), + "Sadyllic": (1, 4, 2, 1, 1, 1, 1, 1), + "Stolyllic": (4, 1, 1, 1, 1, 1, 1, 2), + "Logyllic": (1, 1, 1, 1, 1, 1, 2, 4), + "Dacryllic": (1, 1, 1, 1, 1, 2, 4, 1), + "Thynyllic": (1, 1, 1, 1, 2, 4, 1, 1), + "Gydyllic": (1, 1, 1, 2, 4, 1, 1, 1), + "Eparyllic": (1, 1, 2, 4, 1, 1, 1, 1), + "Dynyllic": (1, 2, 4, 1, 1, 1, 1, 1), + "Ionyllic": (2, 4, 1, 1, 1, 1, 1, 1), + "Zaryllic": (3, 3, 1, 1, 1, 1, 1, 1), + "Dythyllic": (3, 1, 1, 1, 1, 1, 1, 3), + "Ionaryllic": (1, 1, 1, 1, 1, 1, 3, 3), + "Laryllic": (1, 1, 1, 1, 1, 3, 3, 1), + "Kataptyllic": (1, 1, 1, 1, 3, 3, 1, 1), + "Sonyllic": (1, 1, 1, 3, 3, 1, 1, 1), + "Pathyllic": (1, 1, 3, 3, 1, 1, 1, 1), + "Loryllic": (1, 3, 3, 1, 1, 1, 1, 1), + "Aeronyllic": (3, 2, 1, 1, 1, 1, 2, 1), + "Pycryllic": (2, 1, 1, 1, 1, 2, 1, 3), + "Mygyllic": (1, 1, 1, 1, 2, 1, 3, 2), + "Lylyllic": (1, 1, 1, 2, 1, 3, 2, 1), + "Daptyllic": (1, 1, 2, 1, 3, 2, 1, 1), + "Ioninyllic": (1, 2, 1, 3, 2, 1, 1, 1), + "Epaphyllic": (2, 1, 3, 2, 1, 1, 1, 1), + "Lolyllic": (1, 3, 2, 1, 1, 1, 1, 2), + "Stacryllic": (3, 1, 2, 1, 1, 1, 1, 2), + "Doryllic": (1, 2, 1, 1, 1, 1, 2, 3), + "Kadyllic": (2, 1, 1, 1, 1, 2, 3, 1), + "Rynyllic": (1, 1, 1, 1, 2, 3, 1, 2), + "Aerogyllic": (1, 1, 1, 2, 3, 1, 2, 1), + "Rothyllic": (1, 1, 2, 3, 1, 2, 1, 1), + "Kagyllic": (1, 2, 3, 1, 2, 1, 1, 1), + "Stathyllic": (2, 3, 1, 2, 1, 1, 1, 1), + "Thyryllic": (2, 2, 2, 2, 1, 1, 1, 1), + "Gygyllic": (2, 2, 2, 1, 1, 1, 1, 2), + "Sodyllic": (2, 2, 1, 1, 1, 1, 2, 2), + "Goryllic": (2, 1, 1, 1, 1, 2, 2, 2), + "Bothyllic": (1, 1, 1, 1, 2, 2, 2, 2), + "Gynyllic": (1, 1, 1, 2, 2, 2, 2, 1), + "Ionaptyllic": (1, 1, 2, 2, 2, 2, 1, 1), + "Phryryllic": (1, 2, 2, 2, 2, 1, 1, 1), + "Racryllic": (2, 2, 2, 1, 1, 2, 1, 1), + "Epicryllic": (2, 2, 1, 1, 2, 1, 1, 2), + "Stygyllic": (2, 1, 1, 2, 1, 1, 2, 2), + "Syryllic": (1, 1, 2, 1, 1, 2, 2, 2), + "Stythyllic": (1, 2, 1, 1, 2, 2, 2, 1), + "Aerothyllic": (2, 1, 1, 2, 2, 2, 1, 1), + "Mixoryllic": (1, 1, 2, 2, 2, 1, 1, 2), + "Thanyllic": (1, 2, 2, 2, 1, 1, 2, 1), + "Roryllic": (2, 2, 1, 1, 2, 2, 1, 1), + "Epotyllic": (2, 1, 1, 2, 2, 1, 1, 2), + "Epidyllic": (1, 1, 2, 2, 1, 1, 2, 2), + "Kaptyllic": (1, 2, 2, 1, 1, 2, 2, 1), + "MajorDimin.": (2, 1, 2, 1, 2, 1, 2, 1), + "MinorDimin.": (1, 2, 1, 2, 1, 2, 1, 2), + "Aerycrygic": (2, 2, 1, 1, 1, 2, 1, 1, 1), + "Gadygic": (2, 1, 1, 1, 2, 1, 1, 1, 2), + "Solygic": (1, 1, 1, 2, 1, 1, 1, 2, 2), + "Zylygic": (1, 1, 2, 1, 1, 1, 2, 2, 1), + "Garygic": (1, 2, 1, 1, 1, 2, 2, 1, 1), + "Sorygic": (2, 1, 1, 1, 2, 2, 1, 1, 1), + "Godygic": (1, 1, 1, 2, 2, 1, 1, 1, 2), + "Epithygic": (1, 1, 2, 2, 1, 1, 1, 2, 1), + "Ionoptygic": (1, 2, 2, 1, 1, 1, 2, 1, 1), + "Kalygic": (3, 1, 1, 2, 1, 1, 1, 1, 1), + "Ionodygic": (1, 1, 2, 1, 1, 1, 1, 1, 3), + "Bythygic": (1, 2, 1, 1, 1, 1, 1, 3, 1), + "Epygic": (2, 1, 1, 1, 1, 1, 3, 1, 1), + "Marygic": (1, 1, 1, 1, 1, 3, 1, 1, 2), + "Gaptygic": (1, 1, 1, 1, 3, 1, 1, 2, 1), + "Aeroptygic": (1, 1, 1, 3, 1, 1, 2, 1, 1), + "Mylygic": (1, 1, 3, 1, 1, 2, 1, 1, 1), + "Galygic": (1, 3, 1, 1, 2, 1, 1, 1, 1), + "Mixolydygic": (3, 1, 1, 1, 2, 1, 1, 1, 1), + "Ionycrygic": (1, 1, 1, 2, 1, 1, 1, 1, 3), + "Zoptygic": (1, 1, 2, 1, 1, 1, 1, 3, 1), + "Phrygygic": (1, 2, 1, 1, 1, 1, 3, 1, 1), + "Locrygic": (2, 1, 1, 1, 1, 3, 1, 1, 1), + "Gonygic": (1, 1, 1, 1, 3, 1, 1, 1, 2), + "Aeracrygic": (1, 1, 1, 3, 1, 1, 1, 2, 1), + "Aerathygic": (1, 1, 3, 1, 1, 1, 2, 1, 1), + "Dorygic": (1, 3, 1, 1, 1, 2, 1, 1, 1), + "Dycrygic": (3, 1, 1, 1, 1, 2, 1, 1, 1), + "Aeolygic": (1, 1, 1, 1, 2, 1, 1, 1, 3), + "Dydygic": (1, 1, 1, 2, 1, 1, 1, 3, 1), + "Tholygic": (1, 1, 2, 1, 1, 1, 3, 1, 1), + "Rynygic": (1, 2, 1, 1, 1, 3, 1, 1, 1), + "Bycrygic": (2, 1, 1, 1, 3, 1, 1, 1, 1), + "Zacrygic": (1, 1, 1, 3, 1, 1, 1, 1, 2), + "Panygic": (1, 1, 3, 1, 1, 1, 1, 2, 1), + "Dyrygic": (1, 3, 1, 1, 1, 1, 2, 1, 1), + "Loptygic": (3, 1, 1, 1, 1, 1, 2, 1, 1), + "Katylygic": (1, 1, 1, 1, 1, 2, 1, 1, 3), + "Phradygic": (1, 1, 1, 1, 2, 1, 1, 3, 1), + "Mixodygic": (1, 1, 1, 2, 1, 1, 3, 1, 1), + "Katalygic": (1, 1, 2, 1, 1, 3, 1, 1, 1), + "Katorygic": (1, 2, 1, 1, 3, 1, 1, 1, 1), + "Dogygic": (2, 1, 1, 3, 1, 1, 1, 1, 1), + "Zodygic": (1, 1, 3, 1, 1, 1, 1, 1, 2), + "Madygic": (1, 3, 1, 1, 1, 1, 1, 2, 1), + "Bagygic": (2, 2, 1, 2, 1, 1, 1, 1, 1), + "Mathygic": (2, 1, 2, 1, 1, 1, 1, 1, 2), + "Styptygic": (1, 2, 1, 1, 1, 1, 1, 2, 2), + "Zolygic": (2, 1, 1, 1, 1, 1, 2, 2, 1), + "Sydygic": (1, 1, 1, 1, 1, 2, 2, 1, 2), + "Katygic": (1, 1, 1, 1, 2, 2, 1, 2, 1), + "Zyphygic": (1, 1, 1, 2, 2, 1, 2, 1, 1), + "Aeralygic": (1, 1, 2, 2, 1, 2, 1, 1, 1), + "Ryptygic": (1, 2, 2, 1, 2, 1, 1, 1, 1), + "Apinygic": (2, 2, 1, 1, 1, 1, 1, 2, 1), + "Katagygic": (2, 1, 1, 1, 1, 1, 2, 1, 2), + "Radygic": (1, 1, 1, 1, 1, 2, 1, 2, 2), + "Gothygic": (1, 1, 1, 1, 2, 1, 2, 2, 1), + "Lythygic": (1, 1, 1, 2, 1, 2, 2, 1, 1), + "Bacrygic": (1, 1, 2, 1, 2, 2, 1, 1, 1), + "Aerygic": (1, 2, 1, 2, 2, 1, 1, 1, 1), + "Dathygic": (2, 1, 2, 2, 1, 1, 1, 1, 1), + "Boptygic": (1, 2, 2, 1, 1, 1, 1, 1, 2), + "Epyrygic": (2, 1, 2, 1, 1, 2, 1, 1, 1), + "Aeradygic": (1, 2, 1, 1, 2, 1, 1, 1, 2), + "Staptygic": (2, 1, 1, 2, 1, 1, 1, 2, 1), + "Danygic": (1, 1, 2, 1, 1, 1, 2, 1, 2), + "Goptygic": (1, 2, 1, 1, 1, 2, 1, 2, 1), + "Epocrygic": (2, 1, 1, 1, 2, 1, 2, 1, 1), + "Rocrygic": (1, 1, 1, 2, 1, 2, 1, 1, 2), + "Zyrygic": (1, 1, 2, 1, 2, 1, 1, 2, 1), + "Sadygic": (1, 2, 1, 2, 1, 1, 2, 1, 1), + "Aeolorygic": (2, 1, 2, 1, 1, 1, 2, 1, 1), + "Thydygic": (1, 2, 1, 1, 1, 2, 1, 1, 2), + "Gycrygic": (2, 1, 1, 1, 2, 1, 1, 2, 1), + "Lyrygic": (1, 1, 1, 2, 1, 1, 2, 1, 2), + "Modygic": (1, 1, 2, 1, 1, 2, 1, 2, 1), + "Katodygic": (1, 2, 1, 1, 2, 1, 2, 1, 1), + "Moptygic": (2, 1, 1, 2, 1, 2, 1, 1, 1), + "Ionocrygic": (1, 1, 2, 1, 2, 1, 1, 1, 2), + "Gocrygic": (1, 2, 1, 2, 1, 1, 1, 2, 1), + "Manygic": (4, 1, 1, 1, 1, 1, 1, 1, 1), + "Polygic": (1, 1, 1, 1, 1, 1, 1, 1, 4), + "Stanygic": (1, 1, 1, 1, 1, 1, 1, 4, 1), + "Thaptygic": (1, 1, 1, 1, 1, 1, 4, 1, 1), + "Eporygic": (1, 1, 1, 1, 1, 4, 1, 1, 1), + "Aerynygic": (1, 1, 1, 1, 4, 1, 1, 1, 1), + "Thyptygic": (1, 1, 1, 4, 1, 1, 1, 1, 1), + "Ionogygic": (1, 1, 4, 1, 1, 1, 1, 1, 1), + "Aeolarygic": (1, 4, 1, 1, 1, 1, 1, 1, 1), + "Sathygic": (3, 2, 1, 1, 1, 1, 1, 1, 1), + "Ladygic": (2, 1, 1, 1, 1, 1, 1, 1, 3), + "Sarygic": (1, 1, 1, 1, 1, 1, 1, 3, 2), + "Thacrygic": (1, 1, 1, 1, 1, 1, 3, 2, 1), + "Aeolynygic": (1, 1, 1, 1, 1, 3, 2, 1, 1), + "Thadygic": (1, 1, 1, 1, 3, 2, 1, 1, 1), + "Lynygic": (1, 1, 1, 3, 2, 1, 1, 1, 1), + "Doptygic": (1, 1, 3, 2, 1, 1, 1, 1, 1), + "Ionilygic": (1, 3, 2, 1, 1, 1, 1, 1, 1), + "Phrygic": (3, 1, 2, 1, 1, 1, 1, 1, 1), + "Aeranygic": (1, 2, 1, 1, 1, 1, 1, 1, 3), + "Dothygic": (2, 1, 1, 1, 1, 1, 1, 3, 1), + "Lydygic": (1, 1, 1, 1, 1, 1, 3, 1, 2), + "Stadygic": (1, 1, 1, 1, 1, 3, 1, 2, 1), + "Byptygic": (1, 1, 1, 1, 3, 1, 2, 1, 1), + "Stodygic": (1, 1, 1, 3, 1, 2, 1, 1, 1), + "Zynygic": (1, 1, 3, 1, 2, 1, 1, 1, 1), + "Lonygic": (1, 3, 1, 2, 1, 1, 1, 1, 1), + "Zothygic": (3, 1, 1, 1, 1, 1, 1, 2, 1), + "Aeolathygic": (1, 1, 1, 1, 1, 1, 2, 1, 3), + "Aeolocrygic": (1, 1, 1, 1, 1, 2, 1, 3, 1), + "Phroptygic": (1, 1, 1, 1, 2, 1, 3, 1, 1), + "Kodygic": (1, 1, 1, 2, 1, 3, 1, 1, 1), + "Eparygic": (1, 1, 2, 1, 3, 1, 1, 1, 1), + "Ionygic": (1, 2, 1, 3, 1, 1, 1, 1, 1), + "Gyptygic": (2, 1, 3, 1, 1, 1, 1, 1, 1), + "Aerythygic": (1, 3, 1, 1, 1, 1, 1, 1, 2), + "Aeolacrygic": (3, 1, 1, 1, 1, 1, 1, 1, 2), + "Raptygic": (1, 1, 1, 1, 1, 1, 1, 2, 3), + "Gythygic": (1, 1, 1, 1, 1, 1, 2, 3, 1), + "Pyrygic": (1, 1, 1, 1, 1, 2, 3, 1, 1), + "Rycrygic": (1, 1, 1, 1, 2, 3, 1, 1, 1), + "Phrathygic": (1, 1, 1, 2, 3, 1, 1, 1, 1), + "Badygic": (1, 1, 2, 3, 1, 1, 1, 1, 1), + "Phrocrygic": (1, 2, 3, 1, 1, 1, 1, 1, 1), + "Starygic": (2, 3, 1, 1, 1, 1, 1, 1, 1), + "Kyrygic": (2, 2, 2, 1, 1, 1, 1, 1, 1), + "Sythygic": (2, 2, 1, 1, 1, 1, 1, 1, 2), + "Katycrygic": (2, 1, 1, 1, 1, 1, 1, 2, 2), + "Tharygic": (1, 1, 1, 1, 1, 1, 2, 2, 2), + "Sylygic": (1, 1, 1, 1, 1, 2, 2, 2, 1), + "Lothygic": (1, 1, 1, 1, 2, 2, 2, 1, 1), + "Darygic": (1, 1, 1, 2, 2, 2, 1, 1, 1), + "Monygic": (1, 1, 2, 2, 2, 1, 1, 1, 1), + "Styrygic": (1, 2, 2, 2, 1, 1, 1, 1, 1), + "Porygic": (2, 2, 1, 1, 2, 1, 1, 1, 1), + "Mocrygic": (2, 1, 1, 2, 1, 1, 1, 1, 2), + "Aeolyrygic": (1, 1, 2, 1, 1, 1, 1, 2, 2), + "Barygic": (1, 2, 1, 1, 1, 1, 2, 2, 1), + "Katarygic": (2, 1, 1, 1, 1, 2, 2, 1, 1), + "Aerocrygic": (1, 1, 1, 1, 2, 2, 1, 1, 2), + "Zanygic": (1, 1, 1, 2, 2, 1, 1, 2, 1), + "Aeolonygic": (1, 1, 2, 2, 1, 1, 2, 1, 1), + "Aeolanygic": (1, 2, 2, 1, 1, 2, 1, 1, 1), + "Kaptygic": (2, 2, 1, 1, 1, 1, 2, 1, 1), + "Sacrygic": (2, 1, 1, 1, 1, 2, 1, 1, 2), + "Padygic": (1, 1, 1, 1, 2, 1, 1, 2, 2), + "Epilygic": (1, 1, 1, 2, 1, 1, 2, 2, 1), + "Kynygic": (1, 1, 2, 1, 1, 2, 2, 1, 1), + "Stophygic": (1, 2, 1, 1, 2, 2, 1, 1, 1), + "Ionidygic": (2, 1, 1, 2, 2, 1, 1, 1, 1), + "Stonygic": (1, 1, 2, 2, 1, 1, 1, 1, 2), + "Stalygic": (1, 2, 2, 1, 1, 1, 1, 2, 1), + "Koptygic": (2, 1, 2, 1, 2, 1, 1, 1, 1), + "Raphygic": (1, 2, 1, 2, 1, 1, 1, 1, 2), + "Zycrygic": (2, 1, 2, 1, 1, 1, 1, 2, 1), + "Mycrygic": (1, 2, 1, 1, 1, 1, 2, 1, 2), + "Laptygic": (2, 1, 1, 1, 1, 2, 1, 2, 1), + "Pylygic": (1, 1, 1, 1, 2, 1, 2, 1, 2), + "Rodygic": (1, 1, 1, 2, 1, 2, 1, 2, 1), + "Epolygic": (1, 1, 2, 1, 2, 1, 2, 1, 1), + "Epidygic": (1, 2, 1, 2, 1, 2, 1, 1, 1), + "Phronygic": (2, 1, 1, 2, 1, 1, 2, 1, 1), + "Stynygic": (1, 1, 2, 1, 1, 2, 1, 1, 2), + "Zydygic": (1, 2, 1, 1, 2, 1, 1, 2, 1), + "Aerycryllian": (2, 1, 1, 1, 2, 1, 1, 1, 1, 1), + "Gadyllian": (1, 1, 1, 2, 1, 1, 1, 1, 1, 2), + "Solyllian": (1, 1, 2, 1, 1, 1, 1, 1, 2, 1), + "Zyphyllian": (1, 2, 1, 1, 1, 1, 1, 2, 1, 1), + "Garyllian": (2, 1, 1, 1, 1, 1, 2, 1, 1, 1), + "Soryllian": (1, 1, 1, 1, 1, 2, 1, 1, 1, 2), + "Godyllian": (1, 1, 1, 1, 2, 1, 1, 1, 2, 1), + "Epityllian": (1, 1, 1, 2, 1, 1, 1, 2, 1, 1), + "Ionyllian": (1, 1, 2, 1, 1, 1, 2, 1, 1, 1), + "Aeoryllian": (1, 2, 1, 1, 1, 2, 1, 1, 1, 1), + "Katoryllian": (3, 1, 1, 1, 1, 1, 1, 1, 1, 1), + "Dodyllian": (1, 1, 1, 1, 1, 1, 1, 1, 1, 3), + "Zogyllian": (1, 1, 1, 1, 1, 1, 1, 1, 3, 1), + "Madyllian": (1, 1, 1, 1, 1, 1, 1, 3, 1, 1), + "Dycryllian": (1, 1, 1, 1, 1, 1, 3, 1, 1, 1), + "Aeogyllian": (1, 1, 1, 1, 1, 3, 1, 1, 1, 1), + "Dydyllian": (1, 1, 1, 1, 3, 1, 1, 1, 1, 1), + "Thogyllian": (1, 1, 1, 3, 1, 1, 1, 1, 1, 1), + "Rygyllian": (1, 1, 3, 1, 1, 1, 1, 1, 1, 1), + "Bathyllian": (1, 3, 1, 1, 1, 1, 1, 1, 1, 1), + "Sydyllian": (2, 2, 1, 1, 1, 1, 1, 1, 1, 1), + "Katogyllian": (2, 1, 1, 1, 1, 1, 1, 1, 1, 2), + "Mixodyllian": (1, 1, 1, 1, 1, 1, 1, 1, 2, 2), + "Aeradyllian": (1, 1, 1, 1, 1, 1, 1, 2, 2, 1), + "Ryptyllian": (1, 1, 1, 1, 1, 1, 2, 2, 1, 1), + "Loptyllian": (1, 1, 1, 1, 1, 2, 2, 1, 1, 1), + "Kataphyllian": (1, 1, 1, 1, 2, 2, 1, 1, 1, 1), + "Phradyllian": (1, 1, 1, 2, 2, 1, 1, 1, 1, 1), + "Dagyllian": (1, 1, 2, 2, 1, 1, 1, 1, 1, 1), + "Katyllian": (1, 2, 2, 1, 1, 1, 1, 1, 1, 1), + "Gothyllian": (2, 1, 2, 1, 1, 1, 1, 1, 1, 1), + "Lythyllian": (1, 2, 1, 1, 1, 1, 1, 1, 1, 2), + "Bacryllian": (2, 1, 1, 1, 1, 1, 1, 1, 2, 1), + "Aerygyllian": (1, 1, 1, 1, 1, 1, 1, 2, 1, 2), + "Dathyllian": (1, 1, 1, 1, 1, 1, 2, 1, 2, 1), + "Boptyllian": (1, 1, 1, 1, 1, 2, 1, 2, 1, 1), + "Bagyllian": (1, 1, 1, 1, 2, 1, 2, 1, 1, 1), + "Mathyllian": (1, 1, 1, 2, 1, 2, 1, 1, 1, 1), + "Styptyllian": (1, 1, 2, 1, 2, 1, 1, 1, 1, 1), + "Zolyllian": (1, 2, 1, 2, 1, 1, 1, 1, 1, 1), + "Staptyllian": (2, 1, 1, 2, 1, 1, 1, 1, 1, 1), + "Danyllian": (1, 1, 2, 1, 1, 1, 1, 1, 1, 2), + "Goptyllian": (1, 2, 1, 1, 1, 1, 1, 1, 2, 1), + "Epocryllian": (2, 1, 1, 1, 1, 1, 1, 2, 1, 1), + "Rocryllian": (1, 1, 1, 1, 1, 1, 2, 1, 1, 2), + "Zyryllian": (1, 1, 1, 1, 1, 2, 1, 1, 2, 1), + "Sagyllian": (1, 1, 1, 1, 2, 1, 1, 2, 1, 1), + "Epinyllian": (1, 1, 1, 2, 1, 1, 2, 1, 1, 1), + "Katagyllian": (1, 1, 2, 1, 1, 2, 1, 1, 1, 1), + "Ragyllian": (1, 2, 1, 1, 2, 1, 1, 1, 1, 1), + "Thydyllian": (2, 1, 1, 1, 1, 2, 1, 1, 1, 1), + "Epiryllian": (1, 1, 1, 1, 2, 1, 1, 1, 1, 2), + "Lyryllian": (1, 1, 1, 2, 1, 1, 1, 1, 2, 1), + "Mogyllian": (1, 1, 2, 1, 1, 1, 1, 2, 1, 1), + "Katodyllian": (1, 2, 1, 1, 1, 1, 2, 1, 1, 1), + "Aerycratic": (2, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), + "Monatic": (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2), + "Solatic": (1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 1), + "Zylatic": (1, 1, 1, 1, 1, 1, 1, 1, 2, 1, 1), + "Mixolatic": (1, 1, 1, 1, 1, 1, 1, 2, 1, 1, 1), + "Soratic": (1, 1, 1, 1, 1, 1, 2, 1, 1, 1, 1), + "Godatic": (1, 1, 1, 1, 1, 2, 1, 1, 1, 1, 1), + "Eptatic": (1, 1, 1, 1, 2, 1, 1, 1, 1, 1, 1), + "Ionatic": (1, 1, 1, 2, 1, 1, 1, 1, 1, 1, 1), + "Aeolatic": (1, 1, 2, 1, 1, 1, 1, 1, 1, 1, 1), + "Thydatic": (1, 2, 1, 1, 1, 1, 1, 1, 1, 1, 1), + "Chromatic": (1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1), } return all_scales SCALES = __build_scales() def __build_chords(): - major = [0, 4, 7] - minor = [0, 3, 7] - major7 = [0, 4, 7, 11] - dom7 = [0, 4, 7, 10] - minor7 = [0, 3, 7, 10] - aug = [0, 4, 8] - dim = [0, 3, 6] - dim7 = [0, 3, 6, 9] - halfdim = [0, 3, 6, 10] - aug7 = [0, 4, 8, 10] - aug9 = [0, 4, 10, 14] - six = [0, 4, 7, 9] + major = (0, 4, 7) + minor = (0, 3, 7) + major7 = (0, 4, 7, 11) + dom7 = (0, 4, 7, 10) + minor7 = (0, 3, 7, 10) + aug = (0, 4, 8) + dim = (0, 3, 6) + dim7 = (0, 3, 6, 9) + halfdim = (0, 3, 6, 10) + aug7 = (0, 4, 8, 10) + aug9 = (0, 4, 10, 14) + six = (0, 4, 7, 9) all_chords = { - "1": [0], - "5": [0, 7], - "+5": [0, 4, 8], - "m+5": [0, 3, 8], - "sus2": [0, 2, 7], - "sus4": [0, 5, 7], + "1": (0), + "5": (0, 7), + "+5": (0, 4, 8), + "m+5": (0, 3, 8), + "sus2": (0, 2, 7), + "sus4": (0, 5, 7), "6": six, - "m6": [0, 3, 7, 9], - "7sus2": [0, 2, 7, 10], - "7sus4": [0, 5, 7, 10], - "7-5": [0, 4, 6, 10], + "m6": (0, 3, 7, 9), + "7sus2": (0, 2, 7, 10), + "7sus4": (0, 5, 7, 10), + "7-5": (0, 4, 6, 10), "7+5": aug7, - "m7+5": [0, 3, 8, 10], - "9": [0, 4, 7, 10, 14], - "m9": [0, 3, 7, 10, 14], - "m7+9": [0, 3, 7, 10, 14], - "maj9": [0, 4, 7, 11, 14], - "9sus4": [0, 5, 7, 10, 14], - "6*9": [0, 4, 7, 9, 14], - "m6*9": [0, 3, 7, 9, 14], - "7-9": [0, 4, 7, 10, 13], - "m7-9": [0, 3, 7, 10, 13], - "7-10": [0, 4, 7, 10, 15], - "7-11": [0, 4, 7, 10, 16], - "7-13": [0, 4, 7, 10, 20], - "9+5": [0, 10, 13], - "m9+5": [0, 10, 14], - "7+5-9": [0, 4, 8, 10, 13], - "m7+5-9": [0, 3, 8, 10, 13], - "11": [0, 4, 7, 10, 14, 17], - "m11": [0, 3, 7, 10, 14, 17], - "maj11": [0, 4, 7, 11, 14, 17], - "11+": [0, 4, 7, 10, 14, 18], - "m11+": [0, 3, 7, 10, 14, 18], - "13": [0, 4, 7, 10, 14, 17, 21], - "m13": [0, 3, 7, 10, 14, 17, 21], - "add2": [0, 2, 4, 7], - "add4": [0, 4, 5, 7], - "add9": [0, 4, 7, 14], - "add11": [0, 4, 7, 17], - "add13": [0, 4, 7, 21], - "madd2": [0, 2, 3, 7], - "madd4": [0, 3, 5, 7], - "madd9": [0, 3, 7, 14], - "madd11": [0, 3, 7, 17], - "madd13": [0, 3, 7, 21], - "dim9": [0, 3, 6, 9, 14], + "m7+5": (0, 3, 8, 10), + "9": (0, 4, 7, 10, 14), + "m9": (0, 3, 7, 10, 14), + "m7+9": (0, 3, 7, 10, 14), + "maj9": (0, 4, 7, 11, 14), + "9sus4": (0, 5, 7, 10, 14), + "6*9": (0, 4, 7, 9, 14), + "m6*9": (0, 3, 7, 9, 14), + "7-9": (0, 4, 7, 10, 13), + "m7-9": (0, 3, 7, 10, 13), + "7-10": (0, 4, 7, 10, 15), + "7-11": (0, 4, 7, 10, 16), + "7-13": (0, 4, 7, 10, 20), + "9+5": (0, 10, 13), + "m9+5": (0, 10, 14), + "7+5-9": (0, 4, 8, 10, 13), + "m7+5-9": (0, 3, 8, 10, 13), + "11": (0, 4, 7, 10, 14, 17), + "m11": (0, 3, 7, 10, 14, 17), + "maj11": (0, 4, 7, 11, 14, 17), + "11+": (0, 4, 7, 10, 14, 18), + "m11+": (0, 3, 7, 10, 14, 18), + "13": (0, 4, 7, 10, 14, 17, 21), + "m13": (0, 3, 7, 10, 14, 17, 21), + "add2": (0, 2, 4, 7), + "add4": (0, 4, 5, 7), + "add9": (0, 4, 7, 14), + "add11": (0, 4, 7, 17), + "add13": (0, 4, 7, 21), + "madd2": (0, 2, 3, 7), + "madd4": (0, 3, 5, 7), + "madd9": (0, 3, 7, 14), + "madd11": (0, 3, 7, 17), + "madd13": (0, 3, 7, 21), + "dim9": (0, 3, 6, 9, 14), "dim": dim, "hdim7": halfdim, - "hdim9": [0, 3, 6, 10, 14], - "hdimb9": [0, 3, 6, 10, 13], - "augMaj7": [0, 4, 8, 11], - "minmaj7": [0, 3, 7, 11], - "five": [0, 7, 12], + "hdim9": (0, 3, 6, 10, 14), + "hdimb9": (0, 3, 6, 10, 13), + "augMaj7": (0, 4, 8, 11), + "minmaj7": (0, 3, 7, 11), + "five": (0, 7, 12), "seven": dom7, "nine": aug9, - "b9": [0, 4, 10, 13], - "mM9": [0, 3, 11, 14], + "b9": (0, 4, 10, 13), + "mM9": (0, 3, 11, 14), "min7": minor7, - "min9": [0, 3, 10, 14], - "b5": [0, 4, 6, 12], - "mb5": [0, 3, 6, 12], + "min9": (0, 3, 10, 14), + "b5": (0, 4, 6, 12), + "mb5": (0, 3, 6, 12), "major": major, "maj": major, "M": major, diff --git a/ziffers/mapper.py b/ziffers/mapper.py index defa234..46458d6 100644 --- a/ziffers/mapper.py +++ b/ziffers/mapper.py @@ -1,5 +1,8 @@ """ Lark transformer for mapping Lark tokens to Ziffers objects """ +import random +from math import log from lark import Transformer, Token +from .scale import cents_to_semitones from .classes.root import Ziffers from .classes.sequences import ( Sequence, @@ -337,15 +340,17 @@ class ZiffersTransformer(Transformer): return items[0].value def variable(self, items): - if len(items)>1: + if len(items) > 1: prefixes = sum_dict(items[0:-1]) text_prefix = prefixes.pop("text") - return Variable(name=items[-1], text=text_prefix+items[-1], local_options=prefixes) + return Variable( + name=items[-1], text=text_prefix + items[-1], local_options=prefixes + ) return Variable(name=items[0], text=items[0]) - + def variable_char(self, items): """Return parsed variable name""" - return items[0].value #Variable(name=items[0].value, text=items[0].value) + return items[0].value # Variable(name=items[0].value, text=items[0].value) def variablelist(self, items): """Return list of variables""" @@ -474,3 +479,41 @@ class ZiffersTransformer(Transformer): wrap_start="", wrap_end=":" + items[1].text, ) + + +# pylint: disable=locally-disabled, unused-argument, too-many-public-methods, invalid-name +class ScalaTransformer(Transformer): + def lines(self, items): + return cents_to_semitones(items) + + def operation(self, items): + val = eval("".join(str(item) for item in items)) + return 1200.0 * log(float(val), 2) + + def operator(self, items): + return items[0].value + + def sub_operations(self, items): + return "(" + items[0] + ")" + + def number(self, items): + val = items[0] + return float(val.value) + + def random(self, items): + def _parse_type(val): + if "." in val: + return float(val) + else: + return int(val) + + def _rand_between(start, end): + if isinstance(start, float) or isinstance(end, float): + return random.uniform(min(start, end), max(start, end)) + elif isinstance(start, int) and isinstance(end, int): + return random.randint(min(start, end), max(start, end)) + + start = _parse_type(items[0].value) + end = _parse_type(items[1].value) + rand_val = _rand_between(start, end) + return 1200.0 * log(float(rand_val), 2) diff --git a/ziffers/parser.py b/ziffers/parser.py index d646604..80cb26c 100644 --- a/ziffers/parser.py +++ b/ziffers/parser.py @@ -3,21 +3,43 @@ from pathlib import Path from functools import lru_cache from lark import Lark from .classes.root import Ziffers -from .mapper import ZiffersTransformer +from .mapper import ZiffersTransformer, ScalaTransformer grammar_path = Path(__file__).parent grammar_folder = Path.joinpath(grammar_path, "spec") -grammar_file = Path.joinpath(grammar_folder, "ziffers.lark") +ziffers_grammar = Path.joinpath(grammar_folder, "ziffers.lark") +scala_grammar = Path.joinpath(grammar_folder, "scala.lark") ziffers_parser = Lark.open( - str(grammar_file), + str(ziffers_grammar), rel_to=__file__, start="root", parser="lalr", transformer=ZiffersTransformer(), ) +scala_parser = Lark.open( + str(scala_grammar), + rel_to=__file__, + start="root", + parser="lalr", + transformer=ScalaTransformer(), +) + +def parse_scala(expr: str): + """Parse an expression using the Ziffers parser + + Args: + expr (str): Ziffers expression as a string + + Returns: + Ziffers: Reutrns Ziffers iterable + """ + # Ignore everything before last comment "!" + values = expr.split("!")[-1] + return scala_parser.parse(values) + def parse_expression(expr: str) -> Ziffers: """Parse an expression using the Ziffers parser diff --git a/ziffers/scale.py b/ziffers/scale.py index 660770d..6d4bca9 100644 --- a/ziffers/scale.py +++ b/ziffers/scale.py @@ -2,7 +2,7 @@ #!/usr/bin/env python3 # pylint: disable=locally-disabled, no-name-in-module import re -from math import floor +from math import log2, floor from .common import repeat_text from .defaults import ( SCALES, @@ -138,8 +138,7 @@ def get_scale_length(name: str) -> int: def note_from_pc( root: int | str, pitch_class: int, - intervals: str | list[int | float], - cents: bool = False, + intervals: str | tuple[int | float], octave: int = 0, modifier: int = 0, ) -> int: @@ -160,12 +159,11 @@ def note_from_pc( # Initialization root = note_name_to_midi(root) if isinstance(root, str) else root intervals = get_scale(intervals) if isinstance(intervals, str) else intervals - intervals = list(map(lambda x: x / 100), intervals) if cents else intervals scale_length = len(intervals) # Resolve pitch classes to the scale and calculate octave if pitch_class >= scale_length or pitch_class < 0: - octave += floor(pitch_class / scale_length) + octave += pitch_class // scale_length pitch_class = ( scale_length - (abs(pitch_class) % scale_length) if pitch_class < 0 @@ -177,7 +175,9 @@ def note_from_pc( # Computing the result note = root + sum(intervals[0:pitch_class]) - return note + (octave * sum(intervals)) + modifier + note = note + (octave * sum(intervals)) + modifier + + return resolve_pitch_bend(note) def parse_roman(numeral: str) -> int: @@ -254,7 +254,7 @@ def midi_to_octave(note: int) -> int: Returns: int: Returns default octave in Ziffers where C4 is in octave 0 """ - return 0 if note <= 0 else floor(note / 12) + return 0 if note <= 0 else note // 12 def midi_to_pitch_class(note: int, key: str | int, scale: str) -> dict: @@ -345,3 +345,34 @@ def named_chord_from_degree( for interval in intervals: notes.append(scale_degree + interval + (cur_oct * 12)) return notes + +def resolve_pitch_bend(note_value: float, semitones: int=1) -> int: + """Resolves pitch bend value from float midi note + + Args: + note_value (float): Note value as float, eg. 60.41123 + semitones (int, optional): Number of semitones to scale the pitch bend. Defaults to 1. + + Returns: + int: Returns pitch bend value ranging from 0 to 16383. 8192 means no bend. + """ + # TODO: None or 8192 + midi_bend_value = None + if isinstance(note_value, float) and note_value % 1 != 0.0: + start_value = note_value if note_value > round(note_value) else round(note_value) + end_value = round(note_value) if note_value > round(note_value) else note_value + bend_diff = midi_to_freq(start_value) / midi_to_freq(end_value) + bend_target = 1200 * log2(bend_diff) + # https://www.cs.cmu.edu/~rbd/doc/cmt/part7.html + midi_bend_value = 8192 + int(8191 * (bend_target/(100*semitones))) + return (note_value, midi_bend_value) + + +def cents_to_semitones(cents): + if cents[0] != 0.0: + cents = [0.0]+cents + semitone_scale = [] + for i, cent in enumerate(cents[:-1]): + semitone_interval = (cents[i+1] - cent) / 100 + semitone_scale.append(semitone_interval) + return tuple(semitone_scale) diff --git a/ziffers/spec/scala.lark b/ziffers/spec/scala.lark new file mode 100644 index 0000000..2b5d667 --- /dev/null +++ b/ziffers/spec/scala.lark @@ -0,0 +1,18 @@ +?root: lines + +lines: (number | operation)+ +random: "(" SIGNED_NUMBER "," SIGNED_NUMBER ")" +operation: number (operator (number | sub_operations | operation))+ +!operator: "+" | "-" | "*" | "%" | "&" | "|" | "<<" | ">>" | "/" +sub_operations: "(" operation ")" +number: SIGNED_NUMBER | random + +%import common.SIGNED_NUMBER +%import common.FLOAT +%import common.INT +%import common.WORD +%import common.CNAME +%import common.WS +%import common.NEWLINE + +%ignore WS \ No newline at end of file