@musodojo/music-theory-data 20.3.0 → 20.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm/_dnt.test_shims.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/almost_equals.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/array_includes.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/assert.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/assertion_error.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/equal.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/equals.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/exists.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/fail.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/false.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/greater.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/greater_or_equal.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/instance_of.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/is_error.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/less.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/less_or_equal.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/match.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/mod.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/not_equals.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/not_instance_of.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/not_match.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/not_strict_equals.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/object_match.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/rejects.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/strict_equals.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/string_includes.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/throws.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/unimplemented.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/assert/1.0.18/unreachable.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/internal/1.0.12/build_message.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/internal/1.0.12/diff.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/internal/1.0.12/diff_str.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/internal/1.0.12/format.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/internal/1.0.12/styles.d.ts.map +1 -0
- package/esm/deps/jsr.io/@std/internal/1.0.12/types.d.ts.map +1 -0
- package/esm/package.json +3 -0
- package/esm/src/data/chords/mod.d.ts +10 -0
- package/esm/src/data/chords/mod.d.ts.map +1 -0
- package/esm/src/data/chords/mod.js +72 -0
- package/esm/src/data/colors/mod.d.ts +51 -0
- package/esm/src/data/colors/mod.d.ts.map +1 -0
- package/esm/src/data/colors/mod.js +79 -0
- package/esm/src/data/labels/mod.d.ts +3 -0
- package/esm/src/data/labels/mod.d.ts.map +1 -0
- package/esm/src/data/labels/mod.js +2 -0
- package/esm/src/data/labels/note-label-collections.d.ts +62 -0
- package/esm/src/data/labels/note-label-collections.d.ts.map +1 -0
- package/esm/src/data/labels/note-label-collections.js +91 -0
- package/esm/src/data/labels/note-labels.d.ts +314 -0
- package/esm/src/data/labels/note-labels.d.ts.map +1 -0
- package/esm/src/data/labels/note-labels.js +502 -0
- package/esm/src/data/mod.d.ts +5 -0
- package/esm/src/data/mod.d.ts.map +1 -0
- package/esm/src/data/mod.js +4 -0
- package/esm/src/data/note-collections/augmented-variants.d.ts +8 -0
- package/esm/src/data/note-collections/augmented-variants.d.ts.map +1 -0
- package/esm/src/data/note-collections/augmented-variants.js +27 -0
- package/esm/src/data/note-collections/diatonic-modes.d.ts +14 -0
- package/esm/src/data/note-collections/diatonic-modes.d.ts.map +1 -0
- package/esm/src/data/note-collections/diatonic-modes.js +268 -0
- package/esm/src/data/note-collections/diminished-variants.d.ts +11 -0
- package/esm/src/data/note-collections/diminished-variants.d.ts.map +1 -0
- package/esm/src/data/note-collections/diminished-variants.js +72 -0
- package/esm/src/data/note-collections/dominant-variants.d.ts +11 -0
- package/esm/src/data/note-collections/dominant-variants.d.ts.map +1 -0
- package/esm/src/data/note-collections/dominant-variants.js +116 -0
- package/esm/src/data/note-collections/harmonic-minor-modes.d.ts +13 -0
- package/esm/src/data/note-collections/harmonic-minor-modes.d.ts.map +1 -0
- package/esm/src/data/note-collections/harmonic-minor-modes.js +246 -0
- package/esm/src/data/note-collections/major-variants.d.ts +12 -0
- package/esm/src/data/note-collections/major-variants.d.ts.map +1 -0
- package/esm/src/data/note-collections/major-variants.js +123 -0
- package/esm/src/data/note-collections/melodic-minor-modes.d.ts +13 -0
- package/esm/src/data/note-collections/melodic-minor-modes.d.ts.map +1 -0
- package/esm/src/data/note-collections/melodic-minor-modes.js +206 -0
- package/esm/src/data/note-collections/minor-variants.d.ts +13 -0
- package/esm/src/data/note-collections/minor-variants.d.ts.map +1 -0
- package/esm/src/data/note-collections/minor-variants.js +118 -0
- package/esm/src/data/note-collections/mod.d.ts +86 -0
- package/esm/src/data/note-collections/mod.d.ts.map +1 -0
- package/esm/src/data/note-collections/mod.js +86 -0
- package/esm/src/data/note-collections/other-collections.d.ts +10 -0
- package/esm/src/data/note-collections/other-collections.d.ts.map +1 -0
- package/esm/src/data/note-collections/other-collections.js +91 -0
- package/esm/src/data/note-collections/pentatonic-variants.d.ts +11 -0
- package/esm/src/data/note-collections/pentatonic-variants.d.ts.map +1 -0
- package/esm/src/data/note-collections/pentatonic-variants.js +86 -0
- package/esm/src/mod.d.ts +74 -0
- package/esm/src/mod.d.ts.map +1 -0
- package/{src/mod.ts → esm/src/mod.js} +2 -3
- package/esm/src/utils/chords.d.ts +14 -0
- package/esm/src/utils/chords.d.ts.map +1 -0
- package/esm/src/utils/chords.js +93 -0
- package/esm/src/utils/colors.d.ts +14 -0
- package/esm/src/utils/colors.d.ts.map +1 -0
- package/esm/src/utils/colors.js +47 -0
- package/esm/src/utils/intervals.d.ts +26 -0
- package/esm/src/utils/intervals.d.ts.map +1 -0
- package/esm/src/utils/intervals.js +61 -0
- package/esm/src/utils/midi-note-sequences.d.ts +23 -0
- package/esm/src/utils/midi-note-sequences.d.ts.map +1 -0
- package/esm/src/utils/midi-note-sequences.js +109 -0
- package/esm/src/utils/midi.d.ts +7 -0
- package/esm/src/utils/midi.d.ts.map +1 -0
- package/esm/src/utils/midi.js +26 -0
- package/esm/src/utils/mod.d.ts +9 -0
- package/esm/src/utils/mod.d.ts.map +1 -0
- package/esm/src/utils/mod.js +8 -0
- package/esm/src/utils/note-collections.d.ts +24 -0
- package/esm/src/utils/note-collections.d.ts.map +1 -0
- package/esm/src/utils/note-collections.js +132 -0
- package/esm/src/utils/note-names.d.ts +23 -0
- package/esm/src/utils/note-names.d.ts.map +1 -0
- package/esm/src/utils/note-names.js +127 -0
- package/esm/src/utils/rotate-array.d.ts +19 -0
- package/esm/src/utils/rotate-array.d.ts.map +1 -0
- package/{src/utils/rotate-array.ts → esm/src/utils/rotate-array.js} +10 -12
- package/esm/tests/get-chord-details.test.d.ts.map +1 -0
- package/esm/tests/get-note-names.test.d.ts.map +1 -0
- package/esm/tests/midi.test.d.ts.map +1 -0
- package/esm/tests/note-name-strings.test.d.ts.map +1 -0
- package/esm/tests/search-note-collections.test.d.ts.map +1 -0
- package/esm/tests/transform-intervals.test.d.ts.map +1 -0
- package/package.json +21 -6
- package/script/_dnt.test_shims.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/almost_equals.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/array_includes.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/assert.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/assertion_error.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/equal.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/equals.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/exists.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/fail.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/false.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/greater.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/greater_or_equal.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/instance_of.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/is_error.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/less.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/less_or_equal.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/match.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/mod.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/not_equals.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/not_instance_of.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/not_match.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/not_strict_equals.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/object_match.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/rejects.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/strict_equals.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/string_includes.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/throws.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/unimplemented.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/assert/1.0.18/unreachable.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/internal/1.0.12/build_message.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/internal/1.0.12/diff.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/internal/1.0.12/diff_str.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/internal/1.0.12/format.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/internal/1.0.12/styles.d.ts.map +1 -0
- package/script/deps/jsr.io/@std/internal/1.0.12/types.d.ts.map +1 -0
- package/script/package.json +3 -0
- package/script/src/data/chords/mod.d.ts +10 -0
- package/script/src/data/chords/mod.d.ts.map +1 -0
- package/script/src/data/chords/mod.js +75 -0
- package/script/src/data/colors/mod.d.ts +51 -0
- package/script/src/data/colors/mod.d.ts.map +1 -0
- package/script/src/data/colors/mod.js +82 -0
- package/script/src/data/labels/mod.d.ts +3 -0
- package/script/src/data/labels/mod.d.ts.map +1 -0
- package/script/src/data/labels/mod.js +18 -0
- package/script/src/data/labels/note-label-collections.d.ts +62 -0
- package/script/src/data/labels/note-label-collections.d.ts.map +1 -0
- package/script/src/data/labels/note-label-collections.js +94 -0
- package/script/src/data/labels/note-labels.d.ts +314 -0
- package/script/src/data/labels/note-labels.d.ts.map +1 -0
- package/script/src/data/labels/note-labels.js +505 -0
- package/script/src/data/mod.d.ts +5 -0
- package/script/src/data/mod.d.ts.map +1 -0
- package/script/src/data/mod.js +20 -0
- package/script/src/data/note-collections/augmented-variants.d.ts +8 -0
- package/script/src/data/note-collections/augmented-variants.d.ts.map +1 -0
- package/script/src/data/note-collections/augmented-variants.js +30 -0
- package/script/src/data/note-collections/diatonic-modes.d.ts +14 -0
- package/script/src/data/note-collections/diatonic-modes.d.ts.map +1 -0
- package/script/src/data/note-collections/diatonic-modes.js +271 -0
- package/script/src/data/note-collections/diminished-variants.d.ts +11 -0
- package/script/src/data/note-collections/diminished-variants.d.ts.map +1 -0
- package/script/src/data/note-collections/diminished-variants.js +75 -0
- package/script/src/data/note-collections/dominant-variants.d.ts +11 -0
- package/script/src/data/note-collections/dominant-variants.d.ts.map +1 -0
- package/script/src/data/note-collections/dominant-variants.js +119 -0
- package/script/src/data/note-collections/harmonic-minor-modes.d.ts +13 -0
- package/script/src/data/note-collections/harmonic-minor-modes.d.ts.map +1 -0
- package/script/src/data/note-collections/harmonic-minor-modes.js +249 -0
- package/script/src/data/note-collections/major-variants.d.ts +12 -0
- package/script/src/data/note-collections/major-variants.d.ts.map +1 -0
- package/script/src/data/note-collections/major-variants.js +126 -0
- package/script/src/data/note-collections/melodic-minor-modes.d.ts +13 -0
- package/script/src/data/note-collections/melodic-minor-modes.d.ts.map +1 -0
- package/script/src/data/note-collections/melodic-minor-modes.js +209 -0
- package/script/src/data/note-collections/minor-variants.d.ts +13 -0
- package/script/src/data/note-collections/minor-variants.d.ts.map +1 -0
- package/script/src/data/note-collections/minor-variants.js +121 -0
- package/script/src/data/note-collections/mod.d.ts +86 -0
- package/script/src/data/note-collections/mod.d.ts.map +1 -0
- package/script/src/data/note-collections/mod.js +99 -0
- package/script/src/data/note-collections/other-collections.d.ts +10 -0
- package/script/src/data/note-collections/other-collections.d.ts.map +1 -0
- package/script/src/data/note-collections/other-collections.js +94 -0
- package/script/src/data/note-collections/pentatonic-variants.d.ts +11 -0
- package/script/src/data/note-collections/pentatonic-variants.d.ts.map +1 -0
- package/script/src/data/note-collections/pentatonic-variants.js +89 -0
- package/script/src/mod.d.ts +74 -0
- package/script/src/mod.d.ts.map +1 -0
- package/script/src/mod.js +88 -0
- package/script/src/utils/chords.d.ts +14 -0
- package/script/src/utils/chords.d.ts.map +1 -0
- package/script/src/utils/chords.js +102 -0
- package/script/src/utils/colors.d.ts +14 -0
- package/script/src/utils/colors.d.ts.map +1 -0
- package/script/src/utils/colors.js +51 -0
- package/script/src/utils/intervals.d.ts +26 -0
- package/script/src/utils/intervals.d.ts.map +1 -0
- package/script/src/utils/intervals.js +69 -0
- package/script/src/utils/midi-note-sequences.d.ts +23 -0
- package/script/src/utils/midi-note-sequences.d.ts.map +1 -0
- package/script/src/utils/midi-note-sequences.js +112 -0
- package/script/src/utils/midi.d.ts +7 -0
- package/script/src/utils/midi.d.ts.map +1 -0
- package/script/src/utils/midi.js +32 -0
- package/script/src/utils/mod.d.ts +9 -0
- package/script/src/utils/mod.d.ts.map +1 -0
- package/script/src/utils/mod.js +24 -0
- package/script/src/utils/note-collections.d.ts +24 -0
- package/script/src/utils/note-collections.d.ts.map +1 -0
- package/script/src/utils/note-collections.js +137 -0
- package/script/src/utils/note-names.d.ts +23 -0
- package/script/src/utils/note-names.d.ts.map +1 -0
- package/script/src/utils/note-names.js +134 -0
- package/script/src/utils/rotate-array.d.ts +19 -0
- package/script/src/utils/rotate-array.d.ts.map +1 -0
- package/script/src/utils/rotate-array.js +32 -0
- package/script/tests/get-chord-details.test.d.ts.map +1 -0
- package/script/tests/get-note-names.test.d.ts.map +1 -0
- package/script/tests/midi.test.d.ts.map +1 -0
- package/script/tests/note-name-strings.test.d.ts.map +1 -0
- package/script/tests/search-note-collections.test.d.ts.map +1 -0
- package/script/tests/transform-intervals.test.d.ts.map +1 -0
- package/src/data/chords/mod.ts +0 -86
- package/src/data/colors/mod.ts +0 -109
- package/src/data/labels/mod.ts +0 -2
- package/src/data/labels/note-label-collections.ts +0 -124
- package/src/data/labels/note-labels.ts +0 -702
- package/src/data/mod.ts +0 -4
- package/src/data/note-collections/augmented-variants.ts +0 -35
- package/src/data/note-collections/diatonic-modes.ts +0 -281
- package/src/data/note-collections/diminished-variants.ts +0 -87
- package/src/data/note-collections/dominant-variants.ts +0 -131
- package/src/data/note-collections/harmonic-minor-modes.ts +0 -261
- package/src/data/note-collections/major-variants.ts +0 -135
- package/src/data/note-collections/melodic-minor-modes.ts +0 -221
- package/src/data/note-collections/minor-variants.ts +0 -131
- package/src/data/note-collections/mod.ts +0 -108
- package/src/data/note-collections/other-collections.ts +0 -107
- package/src/data/note-collections/pentatonic-variants.ts +0 -99
- package/src/types/chords.d.ts +0 -48
- package/src/types/midi.d.ts +0 -131
- package/src/types/mod.d.ts +0 -3
- package/src/types/note-collections.d.ts +0 -86
- package/src/utils/chords.ts +0 -168
- package/src/utils/colors.ts +0 -57
- package/src/utils/intervals.ts +0 -111
- package/src/utils/midi-note-sequences.ts +0 -171
- package/src/utils/midi.ts +0 -51
- package/src/utils/mod.ts +0 -8
- package/src/utils/note-collections.ts +0 -188
- package/src/utils/note-names.ts +0 -182
|
@@ -0,0 +1,268 @@
|
|
|
1
|
+
const ionian = {
|
|
2
|
+
category: "scale",
|
|
3
|
+
rotation: 0,
|
|
4
|
+
parentScale: "ionian",
|
|
5
|
+
primaryName: "Major",
|
|
6
|
+
names: [
|
|
7
|
+
"Major",
|
|
8
|
+
"Ionian",
|
|
9
|
+
"Major Scale",
|
|
10
|
+
"Ionian Mode",
|
|
11
|
+
"Diatonic Major",
|
|
12
|
+
],
|
|
13
|
+
intervals: ["1", "2", "3", "4", "5", "6", "7", "8"],
|
|
14
|
+
integers: [0, 2, 4, 5, 7, 9, 11],
|
|
15
|
+
type: [
|
|
16
|
+
"major",
|
|
17
|
+
"ionian",
|
|
18
|
+
"mode",
|
|
19
|
+
"scale",
|
|
20
|
+
"church mode",
|
|
21
|
+
"diatonic mode",
|
|
22
|
+
"heptatonic",
|
|
23
|
+
"first diatonic mode",
|
|
24
|
+
"do mode",
|
|
25
|
+
],
|
|
26
|
+
characteristics: [
|
|
27
|
+
"bright",
|
|
28
|
+
"happy",
|
|
29
|
+
"stable",
|
|
30
|
+
"uplifting",
|
|
31
|
+
"consonant",
|
|
32
|
+
"western",
|
|
33
|
+
"foundational",
|
|
34
|
+
"simple",
|
|
35
|
+
"pop music",
|
|
36
|
+
"major tonality",
|
|
37
|
+
"commonly used western scale",
|
|
38
|
+
],
|
|
39
|
+
pattern: ["whole", "whole", "half", "whole", "whole", "whole", "half"],
|
|
40
|
+
patternShort: ["W", "W", "H", "W", "W", "W", "H"],
|
|
41
|
+
};
|
|
42
|
+
const dorian = {
|
|
43
|
+
category: "scale",
|
|
44
|
+
rotation: 1,
|
|
45
|
+
parentScale: "ionian",
|
|
46
|
+
primaryName: "Dorian",
|
|
47
|
+
names: [
|
|
48
|
+
"Dorian",
|
|
49
|
+
"Minor ♮6",
|
|
50
|
+
"Dorian Mode",
|
|
51
|
+
],
|
|
52
|
+
intervals: ["1", "2", "♭3", "4", "5", "6", "♭7", "8"],
|
|
53
|
+
integers: [0, 2, 3, 5, 7, 9, 10],
|
|
54
|
+
type: [
|
|
55
|
+
"minor",
|
|
56
|
+
"dorian",
|
|
57
|
+
"mode",
|
|
58
|
+
"scale",
|
|
59
|
+
"church mode",
|
|
60
|
+
"diatonic mode",
|
|
61
|
+
"heptatonic",
|
|
62
|
+
"second diatonic mode",
|
|
63
|
+
"re mode",
|
|
64
|
+
],
|
|
65
|
+
characteristics: [
|
|
66
|
+
"soulful",
|
|
67
|
+
"funky",
|
|
68
|
+
"jazzy",
|
|
69
|
+
"hopeful",
|
|
70
|
+
"celtic",
|
|
71
|
+
"folk",
|
|
72
|
+
"minor tonality",
|
|
73
|
+
"versatile",
|
|
74
|
+
"used in folk, jazz, and rock",
|
|
75
|
+
"medieval",
|
|
76
|
+
"minor feel with a hopeful twist",
|
|
77
|
+
],
|
|
78
|
+
pattern: ["whole", "half", "whole", "whole", "whole", "half", "whole"],
|
|
79
|
+
patternShort: ["W", "H", "W", "W", "W", "H", "W"],
|
|
80
|
+
};
|
|
81
|
+
const phrygian = {
|
|
82
|
+
category: "scale",
|
|
83
|
+
rotation: 2,
|
|
84
|
+
parentScale: "ionian",
|
|
85
|
+
primaryName: "Phrygian",
|
|
86
|
+
names: [
|
|
87
|
+
"Phrygian",
|
|
88
|
+
"Minor ♭2",
|
|
89
|
+
"Phrygian Mode",
|
|
90
|
+
],
|
|
91
|
+
intervals: ["1", "♭2", "♭3", "4", "5", "♭6", "♭7", "8"],
|
|
92
|
+
integers: [0, 1, 3, 5, 7, 8, 10],
|
|
93
|
+
type: [
|
|
94
|
+
"minor",
|
|
95
|
+
"phrygian",
|
|
96
|
+
"mode",
|
|
97
|
+
"scale",
|
|
98
|
+
"church mode",
|
|
99
|
+
"diatonic mode",
|
|
100
|
+
"heptatonic",
|
|
101
|
+
"third diatonic mode",
|
|
102
|
+
"mi mode",
|
|
103
|
+
],
|
|
104
|
+
characteristics: [
|
|
105
|
+
"exotic",
|
|
106
|
+
"spanish",
|
|
107
|
+
"flamenco",
|
|
108
|
+
"tense",
|
|
109
|
+
"dark",
|
|
110
|
+
"dramatic",
|
|
111
|
+
"minor tonality",
|
|
112
|
+
"darker emotional tones",
|
|
113
|
+
"often used in metal and flamenco",
|
|
114
|
+
],
|
|
115
|
+
pattern: ["half", "whole", "whole", "whole", "half", "whole", "whole"],
|
|
116
|
+
patternShort: ["H", "W", "W", "W", "H", "W", "W"],
|
|
117
|
+
};
|
|
118
|
+
const lydian = {
|
|
119
|
+
category: "scale",
|
|
120
|
+
rotation: 3,
|
|
121
|
+
parentScale: "ionian",
|
|
122
|
+
primaryName: "Lydian",
|
|
123
|
+
names: ["Lydian", "Major ♯4", "Lydian Mode"],
|
|
124
|
+
intervals: ["1", "2", "3", "♯4", "5", "6", "7", "8"],
|
|
125
|
+
integers: [0, 2, 4, 6, 7, 9, 11],
|
|
126
|
+
type: [
|
|
127
|
+
"major",
|
|
128
|
+
"lydian",
|
|
129
|
+
"mode",
|
|
130
|
+
"scale",
|
|
131
|
+
"church mode",
|
|
132
|
+
"diatonic mode",
|
|
133
|
+
"heptatonic",
|
|
134
|
+
"fourth diatonic mode",
|
|
135
|
+
"fa mode",
|
|
136
|
+
],
|
|
137
|
+
characteristics: [
|
|
138
|
+
"dreamy",
|
|
139
|
+
"floating",
|
|
140
|
+
"ethereal",
|
|
141
|
+
"cinematic",
|
|
142
|
+
"bright",
|
|
143
|
+
"bright major tonality",
|
|
144
|
+
"used in film scores and jazz",
|
|
145
|
+
],
|
|
146
|
+
pattern: ["whole", "whole", "whole", "half", "whole", "whole", "half"],
|
|
147
|
+
patternShort: ["W", "W", "W", "H", "W", "W", "H"],
|
|
148
|
+
};
|
|
149
|
+
const mixolydian = {
|
|
150
|
+
category: "scale",
|
|
151
|
+
rotation: 4,
|
|
152
|
+
parentScale: "ionian",
|
|
153
|
+
primaryName: "Mixolydian",
|
|
154
|
+
names: [
|
|
155
|
+
"Mixolydian",
|
|
156
|
+
"Major ♭7",
|
|
157
|
+
"Dominant Scale",
|
|
158
|
+
"Mixolydian Mode",
|
|
159
|
+
],
|
|
160
|
+
intervals: ["1", "2", "3", "4", "5", "6", "♭7", "8"],
|
|
161
|
+
integers: [0, 2, 4, 5, 7, 9, 10],
|
|
162
|
+
type: [
|
|
163
|
+
"major",
|
|
164
|
+
"dominant",
|
|
165
|
+
"mixolydian",
|
|
166
|
+
"mode",
|
|
167
|
+
"scale",
|
|
168
|
+
"church mode",
|
|
169
|
+
"diatonic mode",
|
|
170
|
+
"heptatonic",
|
|
171
|
+
"fifth diatonic mode",
|
|
172
|
+
"sol mode",
|
|
173
|
+
],
|
|
174
|
+
characteristics: [
|
|
175
|
+
"bluesy",
|
|
176
|
+
"dominant",
|
|
177
|
+
"funky",
|
|
178
|
+
"rock",
|
|
179
|
+
"energetic",
|
|
180
|
+
"major tonality",
|
|
181
|
+
"strong blues and rock feel",
|
|
182
|
+
],
|
|
183
|
+
pattern: ["whole", "whole", "half", "whole", "whole", "half", "whole"],
|
|
184
|
+
patternShort: ["W", "W", "H", "W", "W", "H", "W"],
|
|
185
|
+
};
|
|
186
|
+
const aeolian = {
|
|
187
|
+
category: "scale",
|
|
188
|
+
rotation: 5,
|
|
189
|
+
parentScale: "ionian",
|
|
190
|
+
primaryName: "Minor",
|
|
191
|
+
names: [
|
|
192
|
+
"Minor",
|
|
193
|
+
"Aeolian",
|
|
194
|
+
"Natural Minor Scale",
|
|
195
|
+
"Aeolian Mode",
|
|
196
|
+
"Descending Melodic Minor Scale",
|
|
197
|
+
],
|
|
198
|
+
intervals: ["1", "2", "♭3", "4", "5", "♭6", "♭7", "8"],
|
|
199
|
+
integers: [0, 2, 3, 5, 7, 8, 10],
|
|
200
|
+
type: [
|
|
201
|
+
"minor",
|
|
202
|
+
"aeolian",
|
|
203
|
+
"natural",
|
|
204
|
+
"mode",
|
|
205
|
+
"scale",
|
|
206
|
+
"church mode",
|
|
207
|
+
"diatonic mode",
|
|
208
|
+
"heptatonic",
|
|
209
|
+
"sixth diatonic mode",
|
|
210
|
+
"la mode",
|
|
211
|
+
],
|
|
212
|
+
characteristics: [
|
|
213
|
+
"melancholic",
|
|
214
|
+
"sad",
|
|
215
|
+
"somber",
|
|
216
|
+
"introspective",
|
|
217
|
+
"dark",
|
|
218
|
+
"minor tonality",
|
|
219
|
+
"the relative minor of the major scale",
|
|
220
|
+
],
|
|
221
|
+
pattern: ["whole", "half", "whole", "whole", "half", "whole", "whole"],
|
|
222
|
+
patternShort: ["W", "H", "W", "W", "H", "W", "W"],
|
|
223
|
+
};
|
|
224
|
+
const locrian = {
|
|
225
|
+
category: "scale",
|
|
226
|
+
rotation: 6,
|
|
227
|
+
parentScale: "ionian",
|
|
228
|
+
primaryName: "Locrian",
|
|
229
|
+
names: [
|
|
230
|
+
"Locrian",
|
|
231
|
+
"Minor ♭2 ♭5",
|
|
232
|
+
"Locrian Mode",
|
|
233
|
+
],
|
|
234
|
+
intervals: ["1", "♭2", "♭3", "4", "♭5", "♭6", "♭7", "8"],
|
|
235
|
+
integers: [0, 1, 3, 5, 6, 8, 10],
|
|
236
|
+
type: [
|
|
237
|
+
"diminished",
|
|
238
|
+
"locrian",
|
|
239
|
+
"mode",
|
|
240
|
+
"scale",
|
|
241
|
+
"church mode",
|
|
242
|
+
"diatonic mode",
|
|
243
|
+
"heptatonic",
|
|
244
|
+
"seventh diatonic mode",
|
|
245
|
+
"ti mode",
|
|
246
|
+
],
|
|
247
|
+
characteristics: [
|
|
248
|
+
"unsettling",
|
|
249
|
+
"tense",
|
|
250
|
+
"dark",
|
|
251
|
+
"unstable",
|
|
252
|
+
"dissonant",
|
|
253
|
+
"highly dissonant",
|
|
254
|
+
"rarely used as a tonal center",
|
|
255
|
+
],
|
|
256
|
+
pattern: ["half", "whole", "whole", "half", "whole", "whole", "whole"],
|
|
257
|
+
patternShort: ["H", "W", "W", "H", "W", "W", "W"],
|
|
258
|
+
};
|
|
259
|
+
const _diatonicModes = {
|
|
260
|
+
ionian,
|
|
261
|
+
dorian,
|
|
262
|
+
phrygian,
|
|
263
|
+
lydian,
|
|
264
|
+
mixolydian,
|
|
265
|
+
aeolian,
|
|
266
|
+
locrian,
|
|
267
|
+
};
|
|
268
|
+
export const diatonicModes = _diatonicModes;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ChordCollection, ModalScaleCollection, NoteCollection } from "../../types/note-collections";
|
|
2
|
+
export declare const _diminishedVariants: {
|
|
3
|
+
readonly diminishedTriad: ChordCollection;
|
|
4
|
+
readonly diminished7: ChordCollection;
|
|
5
|
+
readonly halfDiminished7: ChordCollection;
|
|
6
|
+
readonly wholeHalfDiminished: ModalScaleCollection;
|
|
7
|
+
readonly halfWholeDiminished: ModalScaleCollection;
|
|
8
|
+
};
|
|
9
|
+
export type DiminishedVariantKey = keyof typeof _diminishedVariants;
|
|
10
|
+
export declare const diminishedVariants: Record<DiminishedVariantKey, NoteCollection>;
|
|
11
|
+
//# sourceMappingURL=diminished-variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"diminished-variants.d.ts","sourceRoot":"","sources":["../../../../src/src/data/note-collections/diminished-variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,oBAAoB,EACpB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAuEtC,eAAO,MAAM,mBAAmB;;;;;;CAMtB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,mBAAmB,CAAC;AAEpE,eAAO,MAAM,kBAAkB,EAAE,MAAM,CAAC,oBAAoB,EAAE,cAAc,CACvD,CAAC"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
const diminishedTriad = {
|
|
2
|
+
category: "chord",
|
|
3
|
+
primaryName: "dim",
|
|
4
|
+
names: ["dim", "°", "Diminished Triad"],
|
|
5
|
+
intervals: ["1", "♭3", "♭5"],
|
|
6
|
+
integers: [0, 3, 6],
|
|
7
|
+
type: ["diminished", "chord", "arpeggio", "triad"],
|
|
8
|
+
characteristics: ["tense", "unstable", "dissonant"],
|
|
9
|
+
pattern: ["minor third", "minor third"],
|
|
10
|
+
patternShort: ["m3", "m3"],
|
|
11
|
+
};
|
|
12
|
+
const diminished7 = {
|
|
13
|
+
category: "chord",
|
|
14
|
+
primaryName: "dim7",
|
|
15
|
+
names: ["dim7", "°7", "Diminished 7th"],
|
|
16
|
+
intervals: ["1", "♭3", "♭5", "𝄫7"],
|
|
17
|
+
integers: [0, 3, 6, 9],
|
|
18
|
+
type: ["diminished", "chord", "arpeggio", "tetrad", "symmetrical"],
|
|
19
|
+
characteristics: ["very tense", "unstable", "symmetrical", "passing chord"],
|
|
20
|
+
pattern: ["minor third", "minor third", "minor third"],
|
|
21
|
+
patternShort: ["m3", "m3", "m3"],
|
|
22
|
+
};
|
|
23
|
+
const halfDiminished7 = {
|
|
24
|
+
category: "chord",
|
|
25
|
+
primaryName: "m7♭5",
|
|
26
|
+
names: ["m7♭5", "ø7", "Half Diminished 7th"],
|
|
27
|
+
intervals: ["1", "♭3", "♭5", "♭7"],
|
|
28
|
+
integers: [0, 3, 6, 10],
|
|
29
|
+
type: ["diminished", "minor", "chord", "arpeggio", "tetrad"],
|
|
30
|
+
characteristics: ["tense", "jazzy", "leading to minor"],
|
|
31
|
+
pattern: ["minor third", "minor third", "major third"],
|
|
32
|
+
patternShort: ["m3", "m3", "M3"],
|
|
33
|
+
};
|
|
34
|
+
const wholeHalfDiminished = {
|
|
35
|
+
category: "scale",
|
|
36
|
+
rotation: 0,
|
|
37
|
+
parentScale: "wholeHalfDiminished",
|
|
38
|
+
primaryName: "Whole Half Diminished",
|
|
39
|
+
names: ["Whole Half Diminished"],
|
|
40
|
+
intervals: ["1", "2", "♭3", "4", "♭5", "♭6", "6", "7", "8"],
|
|
41
|
+
integers: [0, 2, 3, 5, 6, 8, 9, 11],
|
|
42
|
+
type: ["diminished", "scale", "symmetrical", "octatonic"],
|
|
43
|
+
characteristics: ["tense", "jazzy", "symmetrical", "alternating tones"],
|
|
44
|
+
pattern: ["whole", "half", "whole", "half", "whole", "half", "whole", "half"],
|
|
45
|
+
patternShort: ["W", "H", "W", "H", "W", "H", "W", "H"],
|
|
46
|
+
};
|
|
47
|
+
const halfWholeDiminished = {
|
|
48
|
+
category: "scale",
|
|
49
|
+
rotation: 1,
|
|
50
|
+
parentScale: "wholeHalfDiminished",
|
|
51
|
+
primaryName: "Half Whole Diminished",
|
|
52
|
+
names: ["Half Whole Diminished", "Dominant Diminished"],
|
|
53
|
+
intervals: ["1", "♭2", "♯2", "3", "♯4", "5", "6", "♭7", "8"],
|
|
54
|
+
integers: [0, 1, 3, 4, 6, 7, 9, 10],
|
|
55
|
+
type: ["diminished", "dominant", "scale", "symmetrical", "octatonic"],
|
|
56
|
+
characteristics: [
|
|
57
|
+
"tense",
|
|
58
|
+
"jazzy",
|
|
59
|
+
"symmetrical",
|
|
60
|
+
"used over dominant 7th chords",
|
|
61
|
+
],
|
|
62
|
+
pattern: ["half", "whole", "half", "whole", "half", "whole", "half", "whole"],
|
|
63
|
+
patternShort: ["H", "W", "H", "W", "H", "W", "H", "W"],
|
|
64
|
+
};
|
|
65
|
+
export const _diminishedVariants = {
|
|
66
|
+
diminishedTriad,
|
|
67
|
+
diminished7,
|
|
68
|
+
halfDiminished7,
|
|
69
|
+
wholeHalfDiminished,
|
|
70
|
+
halfWholeDiminished,
|
|
71
|
+
};
|
|
72
|
+
export const diminishedVariants = _diminishedVariants;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ChordCollection, NonModalScaleCollection, NoteCollection } from "../../types/note-collections";
|
|
2
|
+
export declare const _dominantVariants: {
|
|
3
|
+
readonly dominant7: ChordCollection;
|
|
4
|
+
readonly dominant9: ChordCollection;
|
|
5
|
+
readonly dominant11: ChordCollection;
|
|
6
|
+
readonly dominant13: ChordCollection;
|
|
7
|
+
readonly dominantPentatonic: NonModalScaleCollection;
|
|
8
|
+
};
|
|
9
|
+
export type DominantVariantKey = keyof typeof _dominantVariants;
|
|
10
|
+
export declare const dominantVariants: Record<DominantVariantKey, NoteCollection>;
|
|
11
|
+
//# sourceMappingURL=dominant-variants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dominant-variants.d.ts","sourceRoot":"","sources":["../../../../src/src/data/note-collections/dominant-variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,uBAAuB,EACvB,cAAc,EACf,MAAM,8BAA8B,CAAC;AAmHtC,eAAO,MAAM,iBAAiB;;;;;;CAMpB,CAAC;AAEX,MAAM,MAAM,kBAAkB,GAAG,MAAM,OAAO,iBAAiB,CAAC;AAEhE,eAAO,MAAM,gBAAgB,EAAE,MAAM,CAAC,kBAAkB,EAAE,cAAc,CACrD,CAAC"}
|
|
@@ -0,0 +1,116 @@
|
|
|
1
|
+
const dominant7 = {
|
|
2
|
+
category: "chord",
|
|
3
|
+
primaryName: "7",
|
|
4
|
+
names: ["7", "dom7", "Dominant 7th", "Dominant Seventh"],
|
|
5
|
+
intervals: ["1", "3", "5", "♭7"],
|
|
6
|
+
integers: [0, 4, 7, 10],
|
|
7
|
+
type: ["dominant", "major", "chord", "arpeggio", "tetrad"],
|
|
8
|
+
characteristics: [
|
|
9
|
+
"unstable",
|
|
10
|
+
"bluesy",
|
|
11
|
+
"tense",
|
|
12
|
+
"jazzy",
|
|
13
|
+
"major with flat 7th",
|
|
14
|
+
"minor 7th",
|
|
15
|
+
"the most common dominant chord",
|
|
16
|
+
"used in blues, jazz, and rock",
|
|
17
|
+
"foundational dominant chord",
|
|
18
|
+
"creates strong tension and resolution",
|
|
19
|
+
"used in an authentic cadence",
|
|
20
|
+
],
|
|
21
|
+
pattern: ["major third", "minor third", "minor third"],
|
|
22
|
+
patternShort: ["M3", "m3", "m3"],
|
|
23
|
+
};
|
|
24
|
+
const dominant9 = {
|
|
25
|
+
category: "chord",
|
|
26
|
+
primaryName: "9",
|
|
27
|
+
names: ["9", "dom9", "Dominant 9th", "Dominant Ninth"],
|
|
28
|
+
intervals: ["1", "3", "5", "♭7", "9"],
|
|
29
|
+
integers: [0, 4, 7, 10, 14],
|
|
30
|
+
type: ["dominant", "major", "chord", "arpeggio", "pentad"],
|
|
31
|
+
characteristics: [
|
|
32
|
+
"unstable",
|
|
33
|
+
"bluesy",
|
|
34
|
+
"tense",
|
|
35
|
+
"jazzy",
|
|
36
|
+
"rich",
|
|
37
|
+
"richer than a 7th chord",
|
|
38
|
+
"common in jazz and R&B",
|
|
39
|
+
],
|
|
40
|
+
pattern: ["major third", "minor third", "minor third", "major third"],
|
|
41
|
+
patternShort: ["M3", "m3", "m3", "M3"],
|
|
42
|
+
};
|
|
43
|
+
const dominant11 = {
|
|
44
|
+
category: "chord",
|
|
45
|
+
primaryName: "11",
|
|
46
|
+
names: ["11", "dom11", "Dominant 11th", "Dominant Eleventh"],
|
|
47
|
+
intervals: ["1", "3", "5", "♭7", "9", "11"],
|
|
48
|
+
integers: [0, 4, 7, 10, 14, 17],
|
|
49
|
+
type: ["dominant", "major", "chord", "arpeggio", "hexad"],
|
|
50
|
+
characteristics: [
|
|
51
|
+
"unstable",
|
|
52
|
+
"bluesy",
|
|
53
|
+
"tense",
|
|
54
|
+
"jazzy",
|
|
55
|
+
"rich",
|
|
56
|
+
"complex",
|
|
57
|
+
"dissonant 3rd",
|
|
58
|
+
"can be voiced without the 3rd and 5th",
|
|
59
|
+
"can be dissonant",
|
|
60
|
+
],
|
|
61
|
+
pattern: [
|
|
62
|
+
"major third",
|
|
63
|
+
"minor third",
|
|
64
|
+
"minor third",
|
|
65
|
+
"major third",
|
|
66
|
+
"minor third",
|
|
67
|
+
],
|
|
68
|
+
patternShort: ["M3", "m3", "m3", "M3", "m3"],
|
|
69
|
+
};
|
|
70
|
+
const dominant13 = {
|
|
71
|
+
category: "chord",
|
|
72
|
+
primaryName: "13",
|
|
73
|
+
names: ["13", "dom13", "Dominant 13th", "Dominant Thirteenth"],
|
|
74
|
+
intervals: ["1", "3", "5", "♭7", "9", "11", "13"],
|
|
75
|
+
integers: [0, 4, 7, 10, 14, 17, 21],
|
|
76
|
+
type: ["dominant", "major", "chord", "arpeggio", "heptad"],
|
|
77
|
+
characteristics: [
|
|
78
|
+
"unstable",
|
|
79
|
+
"bluesy",
|
|
80
|
+
"tense",
|
|
81
|
+
"jazzy",
|
|
82
|
+
"rich",
|
|
83
|
+
"complex",
|
|
84
|
+
"lush",
|
|
85
|
+
"the richest dominant extension",
|
|
86
|
+
"common in big band and modern jazz",
|
|
87
|
+
],
|
|
88
|
+
pattern: [
|
|
89
|
+
"major third",
|
|
90
|
+
"minor third",
|
|
91
|
+
"minor third",
|
|
92
|
+
"major third",
|
|
93
|
+
"minor third",
|
|
94
|
+
"major third",
|
|
95
|
+
],
|
|
96
|
+
patternShort: ["M3", "m3", "m3", "M3", "m3", "M3"],
|
|
97
|
+
};
|
|
98
|
+
const dominantPentatonic = {
|
|
99
|
+
category: "scale",
|
|
100
|
+
primaryName: "Dominant Pentatonic",
|
|
101
|
+
names: ["Dominant Pentatonic"],
|
|
102
|
+
intervals: ["1", "2", "3", "5", "♭7", "8"],
|
|
103
|
+
integers: [0, 2, 4, 7, 10],
|
|
104
|
+
type: ["dominant", "pentatonic", "scale", "gapped scale"],
|
|
105
|
+
characteristics: ["bluesy", "dominant feel", "mixolydian flavor"],
|
|
106
|
+
pattern: ["whole", "whole", "minor third", "minor third"],
|
|
107
|
+
patternShort: ["W", "W", "m3", "m3"],
|
|
108
|
+
};
|
|
109
|
+
export const _dominantVariants = {
|
|
110
|
+
dominant7,
|
|
111
|
+
dominant9,
|
|
112
|
+
dominant11,
|
|
113
|
+
dominant13,
|
|
114
|
+
dominantPentatonic,
|
|
115
|
+
};
|
|
116
|
+
export const dominantVariants = _dominantVariants;
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { ModalScaleCollection } from "../../types/note-collections";
|
|
2
|
+
export declare const _harmonicMinorModes: {
|
|
3
|
+
readonly harmonicMinor: ModalScaleCollection;
|
|
4
|
+
readonly locrianNatural6: ModalScaleCollection;
|
|
5
|
+
readonly ionianSharp5: ModalScaleCollection;
|
|
6
|
+
readonly dorianSharp4: ModalScaleCollection;
|
|
7
|
+
readonly phrygianDominant: ModalScaleCollection;
|
|
8
|
+
readonly lydianSharp2: ModalScaleCollection;
|
|
9
|
+
readonly superLocrianDoubleFlat7: ModalScaleCollection;
|
|
10
|
+
};
|
|
11
|
+
export type HarmonicMinorModeKey = keyof typeof _harmonicMinorModes;
|
|
12
|
+
export declare const harmonicMinorModes: Record<HarmonicMinorModeKey, ModalScaleCollection>;
|
|
13
|
+
//# sourceMappingURL=harmonic-minor-modes.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"harmonic-minor-modes.d.ts","sourceRoot":"","sources":["../../../../src/src/data/note-collections/harmonic-minor-modes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAqPzE,eAAO,MAAM,mBAAmB;;;;;;;;CAQtB,CAAC;AAEX,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,mBAAmB,CAAC;AAEpE,eAAO,MAAM,kBAAkB,EAAE,MAAM,CACrC,oBAAoB,EACpB,oBAAoB,CACC,CAAC"}
|