-
Notifications
You must be signed in to change notification settings - Fork 0
/
keyboardTunings.html
448 lines (384 loc) · 46.6 KB
/
keyboardTunings.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
<html>
<head><title>Keyboard Tunings</title>
<style>
body {
font-family: arial;
}
h2 {
font-size: 13px;
}
.split {
display: grid;
width: auto;
grid-template-columns: auto auto;
}
.pythagorean,.tempered,.fivelimit,.sevenlimit,.manual {
margin: auto;
width: auto;
display: grid;
grid-template-rows: auto auto auto auto;
grid-template-columns: repeat(13, auto);
padding: 1px;
}
.tone {
cursor: pointer;
border: 1px solid black;
padding: 3px;
font-size: 10px;
text-align: center;
position: relative;
}
.pythagorean .tone {
background-color: #7fff7f;
}
.tempered .tone {
background-color: #ff7fff;
}
.fivelimit .tone {
background-color: #ff7f7f;
}
.sevenlimit .tone {
background-color: #7fffff;
}
.manual .tone {
background-color: #7f7fff;
}
.manual input {
width: 70%;
}
.tone div {
bottom: 0;
margin-left: auto;
margin-right: auto;
left: 0;
right: 0;
}
.tone.active {
background-color: #ffff7f;
}
.tone .noteName {
font-size: 15px;
font-weight: bold;
}
.keyboard {
margin: auto;
width: 90vw;
display: grid;
grid-template-rows: auto;
grid-template-columns: repeat(31, 3.1vw);
padding: 1px;
}
.key {
cursor:pointer;
background-color: rgba(255, 255, 255, 0.8);
border: 1px solid rgba(0, 0, 0, 0.8);
padding: 5px;
font-size: 10px;
text-align: center;
position: relative;
}
.key div {
position: absolute;
bottom: 0;
margin-left: auto;
margin-right: auto;
left: 0;
right: 0;
}
.key.ivory {
grid-row-start: 1;
background-color: rgba(255, 255, 255, 1.0);
height: 12vw;
z-index: 0;
color: black;
}
.key.ebony {
grid-row-start: 1;
background-color: rgba(63, 63, 63, 1.0);
margin-left: -1.5vw;
margin-right: 1.5vw;
height: 8vw;
z-index: 1;
color: white;
}
.key.playing {
background-color: rgba(255, 255, 127, 1.0) !important;
color: black !important;
}
.noteName {
font-size: 20px;
font-weight: bold;
}
#oscilloscope {
border: 1px solid rgba(0, 0, 0, 0.8);
width: 45vw;
height: 10vw;
display: block;
margin: auto;
}
</style>
</head>
<body>
<h2>Pythagorean tunings (3-limit)<button id="allPythagorean">all</button></h2>
<div id="pythagorean" class="pythagorean"></div>
<div class="split">
<div>
<h2>Five-limit tunings<button id="allFivelimit">all</button></h2>
<div id="fivelimit" class="fivelimit"></div>
</div>
<div>
<h2>Seven-limit tunings (centaur)<button id="allSevenlimit">all</button></h2>
<div id="sevenlimit" class="sevenlimit"></div>
</div>
</div>
<h2>Even tempered tunings<button id="allTempered">all</button></h2>
<div id="tempered" class="tempered"></div>
<h2>Manual tunings<button id="allManual">all</button></h2>
<div id="manual" class="manual"></div>
<h2> Keyboard </h2>
<div id="keyboard" class="keyboard"></div>
<h2> Oscilloscope </h2>
<canvas id="oscilloscope"></canvas>
<h2> Songs </h2>
<button id="jingleBells">Jingle Bells C</button>
<button id="jingleBellsCSharp">Jingle Bells C♯</button>
<button id="cancelSongs">Cancel Songs</button>
<script>
var waveType = 'sine';
var sharp = '\u266f';
var flat = '\u266d';
var middleC = 261.625565;
var noteNames=['C','C'+sharp,'D','E'+flat,'E','F','F'+sharp,'G','A'+flat,'A','B'+flat,'B'];
var noteIvory = [true, false, true, false, true, true, false, true, false, true, false, true];
var audioCtx = new (window.AudioContext || window.webkitAudioContext)();
var gainNode = audioCtx.createGain();
gainNode.gain.value = 1;
gainNode.connect(audioCtx.destination);
var analyser = audioCtx.createAnalyser();
analyser.fftSize = 8192;
var bufferLength = analyser.frequencyBinCount;
var dataArray = new Float32Array(bufferLength);
var prevArray = new Float32Array(bufferLength);
var canvas = document.getElementById("oscilloscope");
var canvasCtx = canvas.getContext("2d");
// draw an oscilloscope of the current audio source
const sq = x => x * x;
var prevMaxCorrelationIndex = 0;
function draw() {
setTimeout(function(){requestAnimationFrame(draw);}, 40);
// requestAnimationFrame(draw);
var tmp = prevArray;
prevArray = dataArray;
dataArray = tmp;
analyser.getFloatTimeDomainData(dataArray);
// find the max cross correlation
var maxCorrelationIndex = 0;
var maxCorrelationValue = -Infinity;
for (var i = 0; i < bufferLength/2; i++) {
var curCorrelationValue = 0;
for (var j = 0; j < bufferLength/2; j++) {
curCorrelationValue += -sq(prevArray[j+prevMaxCorrelationIndex] - dataArray[j+i]);
}
if (curCorrelationValue > maxCorrelationValue) {
maxCorrelationValue = curCorrelationValue;
maxCorrelationIndex = i;
}
}
canvasCtx.fillStyle = "rgb(255, 255, 255)";
canvasCtx.fillRect(0, 0, canvas.width, canvas.height);
canvasCtx.lineWidth = 1.5;
canvasCtx.strokeStyle = "rgb(0, 0, 0)";
canvasCtx.beginPath();
var sliceWidth = canvas.width * 2 / bufferLength;
var x = 0;
for (var i = 0; i < bufferLength/2; i++) {
var v = dataArray[i + maxCorrelationIndex];
var y = ((v*(gainNode.gain.value)) + 1) * canvas.height / 2;
if (i === 0) {
canvasCtx.moveTo(x, y);
} else {
canvasCtx.lineTo(x, y);
}
x += sliceWidth;
}
canvasCtx.stroke();
prevMaxCorrelationIndex = maxCorrelationIndex;
}
draw();
function toggleKey(key, activate) {return function() {
var playing = key.classList.toggle("playing", activate);
//console.log(key.noteName, playing)
gainNode.gain.value = 1/(Array.from(document.querySelectorAll(".key.playing")).length || 1);
if (playing) {
if (key.oscillator) {
key.oscillator.stop();
}
var oscillator = audioCtx.createOscillator();
oscillator.type = waveType;
oscillator.frequency.value = key.freq;
oscillator.connect(gainNode);
oscillator.connect(analyser);
key.oscillator = oscillator;
key.oscillator.start();
} else {
if (key.oscillator) {
key.oscillator.stop();
}
}
}};
function activateTone(tone) { return function() {
Array.from(document.querySelectorAll(".tone")).filter(t => t.noteName === tone.noteName).forEach(t => t.classList.toggle("active", t.freq === tone.freq));
Array.from(document.querySelectorAll(".key")).filter(k => k.noteName === tone.noteName).forEach(k => {
k.freq = Math.pow(2,k.octave)*tone.freq;
if (k.oscillator) k.oscillator.frequency.value = k.freq;
k.querySelector("span.freq").innerText = k.freq.toFixed();
});
}};
function activateAll(type) { return function(){
Array.from(document.getElementById(type).querySelectorAll(".tone")).forEach(t => activateTone(t)());
}};
var hs = Math.pow(2, 1/12);
var keyboardEl = document.getElementById("keyboard");
var keys = [];
var gridColumnIvory = 1;
for (var c=-24; c<=24; c++) {
var key = document.createElement('div');
keys.push(key);
key.className="key";
key.col = c;
key.style.gridColumnStart = gridColumnIvory;
var note = ((c%12)+12)%12;
key.octave = Math.floor(c/12);
if (noteIvory[note]) {
gridColumnIvory++;
key.classList.add('ivory');
} else {
key.classList.add('ebony');
}
key.noteName = noteNames[note];
key.innerHTML = "<div><span class=\"noteName\">"+key.noteName+"</span><br><span class=\"freq\"></span></div>";
key.addEventListener("click", toggleKey(key));
keyboardEl.appendChild(key);
}
var pythagoreanEl = document.getElementById("pythagorean");
for (var c=-6; c<=6; c++) {
var tone = document.createElement('div');
tone.className="tone";
tone.col = c;
tone.style.gridColumnStart = c+7;
tone.note = (((c*7)%12)+12)%12;
tone.noteName=noteNames[tone.note];
var numerator = Math.pow(3,Math.max(c,0));
var denominator = Math.pow(3,Math.max(-c,0));
var scale = Math.floor(Math.log2(numerator/denominator)+(1/24))
numerator *= Math.pow(2, Math.max(-scale,0));
denominator *= Math.pow(2, Math.max(scale,0));
tone.numerator = numerator;
tone.denominator = denominator;
var freq = middleC * numerator / denominator;
tone.freq = freq;
tone.innerHTML = "<div><span class=\"noteName\">"+tone.noteName+"</span>: "+
tone.numerator+"/"+tone.denominator+", "+tone.freq.toFixed(0)+"</div>";
tone.addEventListener("click", activateTone(tone));
pythagoreanEl.appendChild(tone);
}
document.getElementById("allPythagorean").addEventListener("click",activateAll("pythagorean"));
var fivelimitEl = document.getElementById("fivelimit");
for (var r=-1; r<=1; r++) {
for (var c=-2; c<=2; c++) {
var tone = document.createElement('div');
tone.className="tone";
tone.style.gridColumnStart = c+3;
tone.style.gridRowStart = r+2;
tone.note = (((c*7+r*4)%12)+12)%12;
tone.noteName=noteNames[tone.note];
var numerator = Math.pow(5,Math.max(r,0))*Math.pow(3,Math.max(c,0));
var denominator = Math.pow(5,Math.max(-r,0))*Math.pow(3,Math.max(-c,0));
var scale = Math.floor(Math.log2(numerator/denominator)+(1/24))
numerator *= Math.pow(2, Math.max(-scale,0));
denominator *= Math.pow(2, Math.max(scale,0));
tone.numerator = numerator;
tone.denominator = denominator;
var freq = middleC * numerator / denominator;
tone.freq = freq;
tone.innerHTML = "<div><span class=\"noteName\">"+tone.noteName+"</span>: "+
tone.numerator+"/"+tone.denominator+", "+tone.freq.toFixed(0)+"</div>";
tone.addEventListener("click", activateTone(tone));
fivelimitEl.appendChild(tone);
}
}
document.getElementById("allFivelimit").addEventListener("click",activateAll("fivelimit"));
var sevenlimitEl = document.getElementById("sevenlimit");
var centaur = [[1,1],[21,20],[9,8],[7,6],[5,4],[4,3],[7,5],[3,2],[14,9],[5,3],[7,4],[15,8]];
for (var r=0; r<=2; r++) {
for (var c=0; c<=3; c++) {
var tone = document.createElement('div');
tone.className="tone";
tone.style.gridColumnStart = c+1;
tone.style.gridRowStart = r+1;
tone.note = (((c*7+r*4+1)%12)+12)%12;
tone.noteName=noteNames[tone.note];
tone.numerator = centaur[tone.note][0];
tone.denominator = centaur[tone.note][1];
var freq = middleC * tone.numerator / tone.denominator;
tone.freq = freq;
tone.innerHTML = "<div><span class=\"noteName\">"+tone.noteName+"</span>: "+
tone.numerator+"/"+tone.denominator+", "+tone.freq.toFixed(0)+"</div>";
tone.addEventListener("click", activateTone(tone));
sevenlimitEl.appendChild(tone);
}
}
document.getElementById("allSevenlimit").addEventListener("click",activateAll("sevenlimit"));
var temperedEl = document.getElementById("tempered");
for (var c=0; c<12; c++) {
var tone = document.createElement('div');
tone.className="tone";
tone.col = c;
tone.style.gridColumnStart = c+1;
tone.note = (((c)%12)+12)%12;
tone.noteName=noteNames[tone.note];
tone.freq = middleC * Math.pow(2, c/12);
tone.innerHTML = "<div><span class=\"noteName\">"+tone.noteName+"</span>: "+
"2<sup>"+tone.note+"/12</sup>, "+tone.freq.toFixed(0)+"</div>";
tone.addEventListener("click", activateTone(tone));
temperedEl.appendChild(tone);
activateTone(tone)();
}
document.getElementById("allTempered").addEventListener("click",activateAll("tempered"));
var manualEl = document.getElementById("manual");
for (var c=0; c<12; c++) {
let tone = document.createElement('div');
tone.className="tone";
tone.col = c;
tone.style.gridColumnStart = c+1;
tone.note = (((c)%12)+12)%12;
tone.noteName=noteNames[tone.note];
tone.freq = middleC * Math.pow(2, (c+Math.random()-0.5)/12);
tone.innerHTML = "<div><span class=\"noteName\">"+tone.noteName+"</span>: "+
"<input type=\"number\" step=\"0.01\" value=\""+tone.freq.toFixed(2)+"\"></div>";
tone.addEventListener("click", activateTone(tone));
let input = tone.querySelector("input");
input.addEventListener("change", ()=>{ tone.freq=parseFloat(input.value); activateTone(tone)();});
manualEl.appendChild(tone);
}
document.getElementById("allManual").addEventListener("click",activateAll("manual"));
var songTimeouts = [];
function playSong(notes, transpose, speed) {
cancelSongs();
if (!transpose) transpose = 0;
if (!speed) speed = 1;
songTimeouts.push(...notes.map(n => setTimeout(toggleKey(keys[n.note+transpose],n.active), n.time/speed)));
}
function cancelSongs() {
songTimeouts.forEach(t => clearTimeout(t));
songTimeouts = [];
keys.forEach(k => toggleKey(k, false)());
}
var jingleBells = [{"time":0,"note":31,"active":true},{"time":256,"note":31,"active":false},{"time":256,"note":40,"active":true},{"time":512,"note":40,"active":false},{"time":512,"note":38,"active":true},{"time":768,"note":38,"active":false},{"time":768,"note":36,"active":true},{"time":1024,"note":36,"active":false},{"time":1024,"note":31,"active":true},{"time":1536,"note":31,"active":false},{"time":1792,"note":31,"active":true},{"time":2048,"note":31,"active":false},{"time":2048,"note":31,"active":true},{"time":2304,"note":31,"active":false},{"time":2304,"note":40,"active":true},{"time":2560,"note":40,"active":false},{"time":2560,"note":38,"active":true},{"time":2816,"note":38,"active":false},{"time":2816,"note":36,"active":true},{"time":3072,"note":36,"active":false},{"time":3072,"note":33,"active":true},{"time":3584,"note":33,"active":false},{"time":3840,"note":33,"active":true},{"time":4096,"note":33,"active":false},{"time":4096,"note":33,"active":true},{"time":4352,"note":33,"active":false},{"time":4352,"note":41,"active":true},{"time":4608,"note":41,"active":false},{"time":4608,"note":40,"active":true},{"time":4864,"note":40,"active":false},{"time":4864,"note":38,"active":true},{"time":5120,"note":38,"active":false},{"time":5120,"note":43,"active":true},{"time":5632,"note":43,"active":false},{"time":5888,"note":43,"active":true},{"time":6144,"note":43,"active":false},{"time":6144,"note":45,"active":true},{"time":6400,"note":45,"active":false},{"time":6400,"note":43,"active":true},{"time":6656,"note":43,"active":false},{"time":6656,"note":41,"active":true},{"time":6912,"note":41,"active":false},{"time":6912,"note":38,"active":true},{"time":7168,"note":38,"active":false},{"time":7168,"note":40,"active":true},{"time":7936,"note":40,"active":false},{"time":7936,"note":31,"active":true},{"time":8192,"note":31,"active":false},{"time":8192,"note":31,"active":true},{"time":8448,"note":31,"active":false},{"time":8448,"note":40,"active":true},{"time":8704,"note":40,"active":false},{"time":8704,"note":38,"active":true},{"time":8960,"note":38,"active":false},{"time":8960,"note":36,"active":true},{"time":9216,"note":36,"active":false},{"time":9216,"note":31,"active":true},{"time":9728,"note":31,"active":false},{"time":9984,"note":31,"active":true},{"time":10240,"note":31,"active":false},{"time":10240,"note":31,"active":true},{"time":10496,"note":31,"active":false},{"time":10496,"note":40,"active":true},{"time":10752,"note":40,"active":false},{"time":10752,"note":38,"active":true},{"time":11008,"note":38,"active":false},{"time":11008,"note":36,"active":true},{"time":11264,"note":36,"active":false},{"time":11264,"note":33,"active":true},{"time":11776,"note":33,"active":false},{"time":12032,"note":33,"active":true},{"time":12288,"note":33,"active":false},{"time":12288,"note":33,"active":true},{"time":12544,"note":33,"active":false},{"time":12544,"note":41,"active":true},{"time":12800,"note":41,"active":false},{"time":12800,"note":40,"active":true},{"time":13056,"note":40,"active":false},{"time":13056,"note":38,"active":true},{"time":13312,"note":38,"active":false},{"time":13312,"note":43,"active":true},{"time":13568,"note":43,"active":false},{"time":13568,"note":43,"active":true},{"time":13824,"note":43,"active":false},{"time":13824,"note":43,"active":true},{"time":14080,"note":43,"active":false},{"time":14080,"note":43,"active":true},{"time":14336,"note":43,"active":false},{"time":14336,"note":45,"active":true},{"time":14592,"note":45,"active":false},{"time":14592,"note":43,"active":true},{"time":14848,"note":43,"active":false},{"time":14848,"note":41,"active":true},{"time":15104,"note":41,"active":false},{"time":15104,"note":38,"active":true},{"time":15360,"note":38,"active":false},{"time":15360,"note":36,"active":true},{"time":15872,"note":36,"active":false},{"time":15872,"note":43,"active":true},{"time":16384,"note":43,"active":false},{"time":16384,"note":40,"active":true},{"time":16640,"note":40,"active":false},{"time":16640,"note":40,"active":true},{"time":16896,"note":40,"active":false},{"time":16896,"note":40,"active":true},{"time":17408,"note":40,"active":false},{"time":17408,"note":40,"active":true},{"time":17664,"note":40,"active":false},{"time":17664,"note":40,"active":true},{"time":17920,"note":40,"active":false},{"time":17920,"note":40,"active":true},{"time":18432,"note":40,"active":false},{"time":18432,"note":40,"active":true},{"time":18688,"note":40,"active":false},{"time":18688,"note":43,"active":true},{"time":18944,"note":43,"active":false},{"time":18944,"note":36,"active":true},{"time":19328,"note":36,"active":false},{"time":19328,"note":38,"active":true},{"time":19456,"note":38,"active":false},{"time":19456,"note":40,"active":true},{"time":19968,"note":40,"active":false},{"time":20480,"note":41,"active":true},{"time":20736,"note":41,"active":false},{"time":20736,"note":41,"active":true},{"time":20992,"note":41,"active":false},{"time":20992,"note":41,"active":true},{"time":21376,"note":41,"active":false},{"time":21376,"note":41,"active":true},{"time":21504,"note":41,"active":false},{"time":21504,"note":41,"active":true},{"time":21760,"note":41,"active":false},{"time":21760,"note":40,"active":true},{"time":22016,"note":40,"active":false},{"time":22016,"note":40,"active":true},{"time":22272,"note":40,"active":false},{"time":22272,"note":40,"active":true},{"time":22400,"note":40,"active":false},{"time":22400,"note":40,"active":true},{"time":22528,"note":40,"active":false},{"time":22528,"note":40,"active":true},{"time":22784,"note":40,"active":false},{"time":22784,"note":38,"active":true},{"time":23040,"note":38,"active":false},{"time":23040,"note":38,"active":true},{"time":23296,"note":38,"active":false},{"time":23296,"note":40,"active":true},{"time":23552,"note":40,"active":false},{"time":23552,"note":38,"active":true},{"time":24064,"note":38,"active":false},{"time":24064,"note":43,"active":true},{"time":24576,"note":43,"active":false},{"time":24576,"note":40,"active":true},{"time":24832,"note":40,"active":false},{"time":24832,"note":40,"active":true},{"time":25088,"note":40,"active":false},{"time":25088,"note":40,"active":true},{"time":25600,"note":40,"active":false},{"time":25600,"note":40,"active":true},{"time":25856,"note":40,"active":false},{"time":25856,"note":40,"active":true},{"time":26112,"note":40,"active":false},{"time":26112,"note":40,"active":true},{"time":26624,"note":40,"active":false},{"time":26624,"note":40,"active":true},{"time":26880,"note":40,"active":false},{"time":26880,"note":43,"active":true},{"time":27136,"note":43,"active":false},{"time":27136,"note":36,"active":true},{"time":27520,"note":36,"active":false},{"time":27520,"note":38,"active":true},{"time":27648,"note":38,"active":false},{"time":27648,"note":40,"active":true},{"time":28160,"note":40,"active":false},{"time":28672,"note":41,"active":true},{"time":28928,"note":41,"active":false},{"time":28928,"note":41,"active":true},{"time":29184,"note":41,"active":false},{"time":29184,"note":41,"active":true},{"time":29568,"note":41,"active":false},{"time":29568,"note":41,"active":true},{"time":29696,"note":41,"active":false},{"time":29696,"note":41,"active":true},{"time":29952,"note":41,"active":false},{"time":29952,"note":40,"active":true},{"time":30208,"note":40,"active":false},{"time":30208,"note":40,"active":true},{"time":30464,"note":40,"active":false},{"time":30464,"note":40,"active":true},{"time":30592,"note":40,"active":false},{"time":30592,"note":40,"active":true},{"time":30720,"note":40,"active":false},{"time":30720,"note":43,"active":true},{"time":30976,"note":43,"active":false},{"time":30976,"note":43,"active":true},{"time":31232,"note":43,"active":false},{"time":31232,"note":41,"active":true},{"time":31488,"note":41,"active":false},{"time":31488,"note":38,"active":true},{"time":31744,"note":38,"active":false},{"time":31744,"note":36,"active":true},{"time":32512,"note":36,"active":false},{"time":0,"note":19,"active":true},{"time":256,"note":19,"active":false},{"time":256,"note":28,"active":true},{"time":512,"note":28,"active":false},{"time":512,"note":26,"active":true},{"time":768,"note":26,"active":false},{"time":768,"note":24,"active":true},{"time":1024,"note":24,"active":false},{"time":1024,"note":19,"active":true},{"time":1536,"note":19,"active":false},{"time":1792,"note":19,"active":true},{"time":2048,"note":19,"active":false},{"time":2048,"note":19,"active":true},{"time":2304,"note":19,"active":false},{"time":2304,"note":28,"active":true},{"time":2560,"note":28,"active":false},{"time":2560,"note":26,"active":true},{"time":2816,"note":26,"active":false},{"time":2816,"note":24,"active":true},{"time":3072,"note":24,"active":false},{"time":3072,"note":21,"active":true},{"time":3584,"note":21,"active":false},{"time":3840,"note":21,"active":true},{"time":4096,"note":21,"active":false},{"time":4096,"note":21,"active":true},{"time":4352,"note":21,"active":false},{"time":4352,"note":29,"active":true},{"time":4608,"note":29,"active":false},{"time":4608,"note":28,"active":true},{"time":4864,"note":28,"active":false},{"time":4864,"note":26,"active":true},{"time":5120,"note":26,"active":false},{"time":5120,"note":23,"active":true},{"time":5632,"note":23,"active":false},{"time":5888,"note":23,"active":true},{"time":6144,"note":23,"active":false},{"time":6144,"note":23,"active":true},{"time":6400,"note":23,"active":false},{"time":6400,"note":23,"active":true},{"time":6656,"note":23,"active":false},{"time":6656,"note":21,"active":true},{"time":6912,"note":21,"active":false},{"time":6912,"note":23,"active":true},{"time":7168,"note":23,"active":false},{"time":7168,"note":24,"active":true},{"time":7936,"note":24,"active":false},{"time":7936,"note":19,"active":true},{"time":8192,"note":19,"active":false},{"time":8192,"note":19,"active":true},{"time":8448,"note":19,"active":false},{"time":8448,"note":28,"active":true},{"time":8704,"note":28,"active":false},{"time":8704,"note":26,"active":true},{"time":8960,"note":26,"active":false},{"time":8960,"note":24,"active":true},{"time":9216,"note":24,"active":false},{"time":9216,"note":19,"active":true},{"time":9728,"note":19,"active":false},{"time":9984,"note":19,"active":true},{"time":10240,"note":19,"active":false},{"time":10240,"note":19,"active":true},{"time":10496,"note":19,"active":false},{"time":10496,"note":28,"active":true},{"time":10752,"note":28,"active":false},{"time":10752,"note":26,"active":true},{"time":11008,"note":26,"active":false},{"time":11008,"note":24,"active":true},{"time":11264,"note":24,"active":false},{"time":11264,"note":21,"active":true},{"time":11776,"note":21,"active":false},{"time":12032,"note":21,"active":true},{"time":12288,"note":21,"active":false},{"time":12288,"note":21,"active":true},{"time":12544,"note":21,"active":false},{"time":12544,"note":29,"active":true},{"time":12800,"note":29,"active":false},{"time":12800,"note":28,"active":true},{"time":13056,"note":28,"active":false},{"time":13056,"note":26,"active":true},{"time":13312,"note":26,"active":false},{"time":13312,"note":23,"active":true},{"time":13568,"note":23,"active":false},{"time":13568,"note":23,"active":true},{"time":13824,"note":23,"active":false},{"time":13824,"note":23,"active":true},{"time":14080,"note":23,"active":false},{"time":14080,"note":23,"active":true},{"time":14336,"note":23,"active":false},{"time":14336,"note":23,"active":true},{"time":14592,"note":23,"active":false},{"time":14592,"note":23,"active":true},{"time":14848,"note":23,"active":false},{"time":14848,"note":21,"active":true},{"time":15104,"note":21,"active":false},{"time":15104,"note":23,"active":true},{"time":15360,"note":23,"active":false},{"time":15360,"note":24,"active":true},{"time":15872,"note":24,"active":false},{"time":15872,"note":19,"active":true},{"time":16384,"note":19,"active":false},{"time":16384,"note":28,"active":true},{"time":16640,"note":28,"active":false},{"time":16640,"note":28,"active":true},{"time":16896,"note":28,"active":false},{"time":16896,"note":28,"active":true},{"time":17408,"note":28,"active":false},{"time":17408,"note":28,"active":true},{"time":17664,"note":28,"active":false},{"time":17664,"note":28,"active":true},{"time":17920,"note":28,"active":false},{"time":17920,"note":28,"active":true},{"time":18432,"note":28,"active":false},{"time":18432,"note":28,"active":true},{"time":18688,"note":28,"active":false},{"time":18688,"note":31,"active":true},{"time":18944,"note":31,"active":false},{"time":18944,"note":24,"active":true},{"time":19328,"note":24,"active":false},{"time":19328,"note":26,"active":true},{"time":19456,"note":26,"active":false},{"time":19456,"note":28,"active":true},{"time":19968,"note":28,"active":false},{"time":20480,"note":29,"active":true},{"time":20736,"note":29,"active":false},{"time":20736,"note":29,"active":true},{"time":20992,"note":29,"active":false},{"time":20992,"note":29,"active":true},{"time":21376,"note":29,"active":false},{"time":21376,"note":29,"active":true},{"time":21504,"note":29,"active":false},{"time":21504,"note":29,"active":true},{"time":21760,"note":29,"active":false},{"time":21760,"note":28,"active":true},{"time":22016,"note":28,"active":false},{"time":22016,"note":28,"active":true},{"time":22272,"note":28,"active":false},{"time":22272,"note":28,"active":true},{"time":22400,"note":28,"active":false},{"time":22400,"note":28,"active":true},{"time":22528,"note":28,"active":false},{"time":22528,"note":28,"active":true},{"time":22784,"note":28,"active":false},{"time":22784,"note":26,"active":true},{"time":23040,"note":26,"active":false},{"time":23040,"note":26,"active":true},{"time":23296,"note":26,"active":false},{"time":23296,"note":28,"active":true},{"time":23552,"note":28,"active":false},{"time":23552,"note":26,"active":true},{"time":24064,"note":26,"active":false},{"time":24064,"note":31,"active":true},{"time":24576,"note":31,"active":false},{"time":24576,"note":28,"active":true},{"time":24832,"note":28,"active":false},{"time":24832,"note":28,"active":true},{"time":25088,"note":28,"active":false},{"time":25088,"note":28,"active":true},{"time":25600,"note":28,"active":false},{"time":25600,"note":28,"active":true},{"time":25856,"note":28,"active":false},{"time":25856,"note":28,"active":true},{"time":26112,"note":28,"active":false},{"time":26112,"note":28,"active":true},{"time":26624,"note":28,"active":false},{"time":26624,"note":28,"active":true},{"time":26880,"note":28,"active":false},{"time":26880,"note":31,"active":true},{"time":27136,"note":31,"active":false},{"time":27136,"note":24,"active":true},{"time":27520,"note":24,"active":false},{"time":27520,"note":26,"active":true},{"time":27648,"note":26,"active":false},{"time":27648,"note":28,"active":true},{"time":28160,"note":28,"active":false},{"time":28672,"note":29,"active":true},{"time":28928,"note":29,"active":false},{"time":28928,"note":29,"active":true},{"time":29184,"note":29,"active":false},{"time":29184,"note":29,"active":true},{"time":29568,"note":29,"active":false},{"time":29568,"note":29,"active":true},{"time":29696,"note":29,"active":false},{"time":29696,"note":29,"active":true},{"time":29952,"note":29,"active":false},{"time":29952,"note":28,"active":true},{"time":30208,"note":28,"active":false},{"time":30208,"note":28,"active":true},{"time":30464,"note":28,"active":false},{"time":30464,"note":28,"active":true},{"time":30592,"note":28,"active":false},{"time":30592,"note":28,"active":true},{"time":30720,"note":28,"active":false},{"time":30720,"note":31,"active":true},{"time":30976,"note":31,"active":false},{"time":30976,"note":31,"active":true},{"time":31232,"note":31,"active":false},{"time":31232,"note":29,"active":true},{"time":31488,"note":29,"active":false},{"time":31488,"note":26,"active":true},{"time":31744,"note":26,"active":false},{"time":31744,"note":24,"active":true},{"time":32512,"note":24,"active":false},{"time":0,"note":31,"active":true},{"time":0,"note":28,"active":true},{"time":0,"note":12,"active":true},{"time":256,"note":31,"active":false},{"time":256,"note":28,"active":false},{"time":256,"note":31,"active":true},{"time":256,"note":28,"active":true},{"time":512,"note":31,"active":false},{"time":512,"note":28,"active":false},{"time":512,"note":12,"active":false},{"time":512,"note":31,"active":true},{"time":512,"note":29,"active":true},{"time":512,"note":7,"active":true},{"time":768,"note":31,"active":false},{"time":768,"note":29,"active":false},{"time":768,"note":31,"active":true},{"time":768,"note":28,"active":true},{"time":1024,"note":31,"active":false},{"time":1024,"note":28,"active":false},{"time":1024,"note":7,"active":false},{"time":1024,"note":31,"active":true},{"time":1024,"note":28,"active":true},{"time":1024,"note":12,"active":true},{"time":1536,"note":31,"active":false},{"time":1536,"note":28,"active":false},{"time":1536,"note":12,"active":false},{"time":1536,"note":7,"active":true},{"time":1792,"note":31,"active":true},{"time":1792,"note":28,"active":true},{"time":2048,"note":31,"active":false},{"time":2048,"note":28,"active":false},{"time":2048,"note":7,"active":false},{"time":2048,"note":31,"active":true},{"time":2048,"note":28,"active":true},{"time":2048,"note":12,"active":true},{"time":2304,"note":31,"active":false},{"time":2304,"note":28,"active":false},{"time":2304,"note":31,"active":true},{"time":2304,"note":28,"active":true},{"time":2560,"note":31,"active":false},{"time":2560,"note":28,"active":false},{"time":2560,"note":12,"active":false},{"time":2560,"note":31,"active":true},{"time":2560,"note":29,"active":true},{"time":2560,"note":7,"active":true},{"time":2816,"note":31,"active":false},{"time":2816,"note":29,"active":false},{"time":2816,"note":31,"active":true},{"time":2816,"note":28,"active":true},{"time":3072,"note":31,"active":false},{"time":3072,"note":28,"active":false},{"time":3072,"note":7,"active":false},{"time":3072,"note":29,"active":true},{"time":3072,"note":5,"active":true},{"time":3584,"note":29,"active":false},{"time":3584,"note":5,"active":false},{"time":3584,"note":12,"active":true},{"time":3840,"note":29,"active":true},{"time":3840,"note":24,"active":true},{"time":4096,"note":29,"active":false},{"time":4096,"note":24,"active":false},{"time":4096,"note":12,"active":false},{"time":4096,"note":29,"active":true},{"time":4096,"note":24,"active":true},{"time":4096,"note":5,"active":true},{"time":4352,"note":29,"active":false},{"time":4352,"note":24,"active":false},{"time":4352,"note":33,"active":true},{"time":4352,"note":24,"active":true},{"time":4608,"note":33,"active":false},{"time":4608,"note":24,"active":false},{"time":4608,"note":5,"active":false},{"time":4608,"note":33,"active":true},{"time":4608,"note":24,"active":true},{"time":4608,"note":12,"active":true},{"time":4864,"note":33,"active":false},{"time":4864,"note":24,"active":false},{"time":4864,"note":33,"active":true},{"time":4864,"note":29,"active":true},{"time":5120,"note":33,"active":false},{"time":5120,"note":29,"active":false},{"time":5120,"note":12,"active":false},{"time":5120,"note":35,"active":true},{"time":5120,"note":29,"active":true},{"time":5120,"note":7,"active":true},{"time":5632,"note":35,"active":false},{"time":5632,"note":29,"active":false},{"time":5632,"note":7,"active":false},{"time":5632,"note":14,"active":true},{"time":5888,"note":35,"active":true},{"time":5888,"note":29,"active":true},{"time":6144,"note":35,"active":false},{"time":6144,"note":29,"active":false},{"time":6144,"note":14,"active":false},{"time":6144,"note":35,"active":true},{"time":6144,"note":29,"active":true},{"time":6144,"note":7,"active":true},{"time":6400,"note":35,"active":false},{"time":6400,"note":29,"active":false},{"time":6400,"note":35,"active":true},{"time":6400,"note":28,"active":true},{"time":6656,"note":35,"active":false},{"time":6656,"note":28,"active":false},{"time":6656,"note":7,"active":false},{"time":6656,"note":35,"active":true},{"time":6656,"note":26,"active":true},{"time":6656,"note":14,"active":true},{"time":6912,"note":35,"active":false},{"time":6912,"note":26,"active":false},{"time":6912,"note":35,"active":true},{"time":6912,"note":31,"active":true},{"time":7168,"note":35,"active":false},{"time":7168,"note":31,"active":false},{"time":7168,"note":14,"active":false},{"time":7168,"note":36,"active":true},{"time":7168,"note":31,"active":true},{"time":7168,"note":12,"active":true},{"time":7424,"note":12,"active":false},{"time":7424,"note":11,"active":true},{"time":7680,"note":11,"active":false},{"time":7680,"note":9,"active":true},{"time":7936,"note":36,"active":false},{"time":7936,"note":31,"active":false},{"time":7936,"note":9,"active":false},{"time":7936,"note":31,"active":true},{"time":7936,"note":28,"active":true},{"time":7936,"note":7,"active":true},{"time":8192,"note":31,"active":false},{"time":8192,"note":28,"active":false},{"time":8192,"note":7,"active":false},{"time":8192,"note":31,"active":true},{"time":8192,"note":28,"active":true},{"time":8192,"note":12,"active":true},{"time":8448,"note":31,"active":false},{"time":8448,"note":28,"active":false},{"time":8448,"note":31,"active":true},{"time":8448,"note":28,"active":true},{"time":8704,"note":31,"active":false},{"time":8704,"note":28,"active":false},{"time":8704,"note":12,"active":false},{"time":8704,"note":31,"active":true},{"time":8704,"note":29,"active":true},{"time":8704,"note":7,"active":true},{"time":8960,"note":31,"active":false},{"time":8960,"note":29,"active":false},{"time":8960,"note":31,"active":true},{"time":8960,"note":28,"active":true},{"time":9216,"note":31,"active":false},{"time":9216,"note":28,"active":false},{"time":9216,"note":7,"active":false},{"time":9216,"note":31,"active":true},{"time":9216,"note":28,"active":true},{"time":9216,"note":12,"active":true},{"time":9728,"note":31,"active":false},{"time":9728,"note":28,"active":false},{"time":9728,"note":12,"active":false},{"time":9728,"note":7,"active":true},{"time":9984,"note":31,"active":true},{"time":9984,"note":28,"active":true},{"time":10240,"note":31,"active":false},{"time":10240,"note":28,"active":false},{"time":10240,"note":7,"active":false},{"time":10240,"note":31,"active":true},{"time":10240,"note":28,"active":true},{"time":10240,"note":12,"active":true},{"time":10496,"note":31,"active":false},{"time":10496,"note":28,"active":false},{"time":10496,"note":31,"active":true},{"time":10496,"note":28,"active":true},{"time":10752,"note":31,"active":false},{"time":10752,"note":28,"active":false},{"time":10752,"note":12,"active":false},{"time":10752,"note":31,"active":true},{"time":10752,"note":29,"active":true},{"time":10752,"note":7,"active":true},{"time":11008,"note":31,"active":false},{"time":11008,"note":29,"active":false},{"time":11008,"note":31,"active":true},{"time":11008,"note":28,"active":true},{"time":11264,"note":31,"active":false},{"time":11264,"note":28,"active":false},{"time":11264,"note":7,"active":false},{"time":11264,"note":29,"active":true},{"time":11264,"note":5,"active":true},{"time":11776,"note":29,"active":false},{"time":11776,"note":5,"active":false},{"time":11776,"note":12,"active":true},{"time":12032,"note":29,"active":true},{"time":12032,"note":24,"active":true},{"time":12288,"note":29,"active":false},{"time":12288,"note":24,"active":false},{"time":12288,"note":12,"active":false},{"time":12288,"note":29,"active":true},{"time":12288,"note":24,"active":true},{"time":12288,"note":5,"active":true},{"time":12544,"note":29,"active":false},{"time":12544,"note":24,"active":false},{"time":12544,"note":33,"active":true},{"time":12544,"note":24,"active":true},{"time":12800,"note":33,"active":false},{"time":12800,"note":24,"active":false},{"time":12800,"note":5,"active":false},{"time":12800,"note":33,"active":true},{"time":12800,"note":24,"active":true},{"time":12800,"note":12,"active":true},{"time":13056,"note":33,"active":false},{"time":13056,"note":24,"active":false},{"time":13056,"note":33,"active":true},{"time":13056,"note":29,"active":true},{"time":13312,"note":33,"active":false},{"time":13312,"note":29,"active":false},{"time":13312,"note":12,"active":false},{"time":13312,"note":35,"active":true},{"time":13312,"note":29,"active":true},{"time":13312,"note":7,"active":true},{"time":13568,"note":35,"active":false},{"time":13568,"note":29,"active":false},{"time":13568,"note":35,"active":true},{"time":13568,"note":29,"active":true},{"time":13824,"note":35,"active":false},{"time":13824,"note":29,"active":false},{"time":13824,"note":7,"active":false},{"time":13824,"note":35,"active":true},{"time":13824,"note":26,"active":true},{"time":13824,"note":14,"active":true},{"time":14080,"note":35,"active":false},{"time":14080,"note":26,"active":false},{"time":14080,"note":35,"active":true},{"time":14080,"note":26,"active":true},{"time":14336,"note":35,"active":false},{"time":14336,"note":26,"active":false},{"time":14336,"note":14,"active":false},{"time":14336,"note":35,"active":true},{"time":14336,"note":29,"active":true},{"time":14336,"note":7,"active":true},{"time":14592,"note":35,"active":false},{"time":14592,"note":29,"active":false},{"time":14592,"note":35,"active":true},{"time":14592,"note":28,"active":true},{"time":14848,"note":35,"active":false},{"time":14848,"note":28,"active":false},{"time":14848,"note":7,"active":false},{"time":14848,"note":35,"active":true},{"time":14848,"note":26,"active":true},{"time":14848,"note":14,"active":true},{"time":15104,"note":35,"active":false},{"time":15104,"note":26,"active":false},{"time":15104,"note":35,"active":true},{"time":15104,"note":29,"active":true},{"time":15360,"note":35,"active":false},{"time":15360,"note":29,"active":false},{"time":15360,"note":14,"active":false},{"time":15360,"note":36,"active":true},{"time":15360,"note":28,"active":true},{"time":15360,"note":12,"active":true},{"time":15872,"note":12,"active":false},{"time":15872,"note":7,"active":true},{"time":16128,"note":36,"active":false},{"time":16128,"note":28,"active":false},{"time":16384,"note":7,"active":false},{"time":16384,"note":36,"active":true},{"time":16384,"note":12,"active":true},{"time":16640,"note":36,"active":false},{"time":16640,"note":36,"active":true},{"time":16896,"note":36,"active":false},{"time":16896,"note":12,"active":false},{"time":16896,"note":36,"active":true},{"time":16896,"note":7,"active":true},{"time":17408,"note":36,"active":false},{"time":17408,"note":7,"active":false},{"time":17408,"note":36,"active":true},{"time":17408,"note":12,"active":true},{"time":17664,"note":36,"active":false},{"time":17664,"note":36,"active":true},{"time":17920,"note":36,"active":false},{"time":17920,"note":12,"active":false},{"time":17920,"note":36,"active":true},{"time":17920,"note":7,"active":true},{"time":18432,"note":36,"active":false},{"time":18432,"note":7,"active":false},{"time":18432,"note":36,"active":true},{"time":18432,"note":31,"active":true},{"time":18432,"note":12,"active":true},{"time":18688,"note":36,"active":false},{"time":18688,"note":31,"active":false},{"time":18688,"note":36,"active":true},{"time":18688,"note":28,"active":true},{"time":18944,"note":36,"active":false},{"time":18944,"note":28,"active":false},{"time":18944,"note":12,"active":false},{"time":18944,"note":31,"active":true},{"time":18944,"note":28,"active":true},{"time":18944,"note":7,"active":true},{"time":19328,"note":31,"active":false},{"time":19328,"note":28,"active":false},{"time":19328,"note":31,"active":true},{"time":19328,"note":29,"active":true},{"time":19456,"note":31,"active":false},{"time":19456,"note":29,"active":false},{"time":19456,"note":7,"active":false},{"time":19456,"note":36,"active":true},{"time":19456,"note":31,"active":true},{"time":19456,"note":12,"active":true},{"time":19968,"note":36,"active":false},{"time":19968,"note":31,"active":false},{"time":19968,"note":12,"active":false},{"time":19968,"note":7,"active":true},{"time":20480,"note":7,"active":false},{"time":20480,"note":33,"active":true},{"time":20480,"note":24,"active":true},{"time":20480,"note":5,"active":true},{"time":20736,"note":33,"active":false},{"time":20736,"note":24,"active":false},{"time":20736,"note":33,"active":true},{"time":20736,"note":24,"active":true},{"time":20992,"note":33,"active":false},{"time":20992,"note":24,"active":false},{"time":20992,"note":5,"active":false},{"time":20992,"note":33,"active":true},{"time":20992,"note":24,"active":true},{"time":20992,"note":9,"active":true},{"time":21376,"note":33,"active":false},{"time":21376,"note":24,"active":false},{"time":21376,"note":33,"active":true},{"time":21376,"note":24,"active":true},{"time":21504,"note":33,"active":false},{"time":21504,"note":24,"active":false},{"time":21504,"note":9,"active":false},{"time":21504,"note":33,"active":true},{"time":21504,"note":24,"active":true},{"time":21504,"note":12,"active":true},{"time":21760,"note":33,"active":false},{"time":21760,"note":24,"active":false},{"time":21760,"note":31,"active":true},{"time":21760,"note":24,"active":true},{"time":22016,"note":31,"active":false},{"time":22016,"note":24,"active":false},{"time":22016,"note":12,"active":false},{"time":22016,"note":31,"active":true},{"time":22016,"note":24,"active":true},{"time":22016,"note":16,"active":true},{"time":22272,"note":31,"active":false},{"time":22272,"note":24,"active":false},{"time":22272,"note":36,"active":true},{"time":22272,"note":31,"active":true},{"time":22400,"note":36,"active":false},{"time":22400,"note":31,"active":false},{"time":22400,"note":36,"active":true},{"time":22400,"note":31,"active":true},{"time":22528,"note":36,"active":false},{"time":22528,"note":31,"active":false},{"time":22528,"note":16,"active":false},{"time":22528,"note":36,"active":true},{"time":22528,"note":14,"active":true},{"time":22784,"note":36,"active":false},{"time":22784,"note":36,"active":true},{"time":23040,"note":36,"active":false},{"time":23040,"note":14,"active":false},{"time":23040,"note":36,"active":true},{"time":23040,"note":9,"active":true},{"time":23296,"note":36,"active":false},{"time":23296,"note":36,"active":true},{"time":23552,"note":36,"active":false},{"time":23552,"note":9,"active":false},{"time":23552,"note":35,"active":true},{"time":23552,"note":19,"active":true},{"time":23808,"note":19,"active":false},{"time":23808,"note":7,"active":true},{"time":24064,"note":7,"active":false},{"time":24064,"note":9,"active":true},{"time":24320,"note":9,"active":false},{"time":24320,"note":11,"active":true},{"time":24576,"note":35,"active":false},{"time":24576,"note":11,"active":false},{"time":24576,"note":36,"active":true},{"time":24576,"note":12,"active":true},{"time":24832,"note":36,"active":false},{"time":24832,"note":36,"active":true},{"time":25088,"note":36,"active":false},{"time":25088,"note":12,"active":false},{"time":25088,"note":36,"active":true},{"time":25088,"note":7,"active":true},{"time":25600,"note":36,"active":false},{"time":25600,"note":7,"active":false},{"time":25600,"note":36,"active":true},{"time":25600,"note":12,"active":true},{"time":25856,"note":36,"active":false},{"time":25856,"note":36,"active":true},{"time":26112,"note":36,"active":false},{"time":26112,"note":12,"active":false},{"time":26112,"note":36,"active":true},{"time":26112,"note":7,"active":true},{"time":26624,"note":36,"active":false},{"time":26624,"note":7,"active":false},{"time":26624,"note":36,"active":true},{"time":26624,"note":31,"active":true},{"time":26624,"note":12,"active":true},{"time":26880,"note":36,"active":false},{"time":26880,"note":31,"active":false},{"time":26880,"note":36,"active":true},{"time":26880,"note":28,"active":true},{"time":27136,"note":36,"active":false},{"time":27136,"note":28,"active":false},{"time":27136,"note":12,"active":false},{"time":27136,"note":31,"active":true},{"time":27136,"note":28,"active":true},{"time":27136,"note":7,"active":true},{"time":27520,"note":31,"active":false},{"time":27520,"note":28,"active":false},{"time":27520,"note":31,"active":true},{"time":27520,"note":29,"active":true},{"time":27648,"note":31,"active":false},{"time":27648,"note":29,"active":false},{"time":27648,"note":7,"active":false},{"time":27648,"note":36,"active":true},{"time":27648,"note":31,"active":true},{"time":27648,"note":12,"active":true},{"time":28160,"note":36,"active":false},{"time":28160,"note":31,"active":false},{"time":28160,"note":12,"active":false},{"time":28160,"note":4,"active":true},{"time":28672,"note":4,"active":false},{"time":28672,"note":33,"active":true},{"time":28672,"note":24,"active":true},{"time":28672,"note":5,"active":true},{"time":28928,"note":33,"active":false},{"time":28928,"note":24,"active":false},{"time":28928,"note":33,"active":true},{"time":28928,"note":24,"active":true},{"time":29184,"note":33,"active":false},{"time":29184,"note":24,"active":false},{"time":29184,"note":5,"active":false},{"time":29184,"note":33,"active":true},{"time":29184,"note":24,"active":true},{"time":29184,"note":9,"active":true},{"time":29568,"note":33,"active":false},{"time":29568,"note":24,"active":false},{"time":29568,"note":33,"active":true},{"time":29568,"note":24,"active":true},{"time":29696,"note":33,"active":false},{"time":29696,"note":24,"active":false},{"time":29696,"note":9,"active":false},{"time":29696,"note":33,"active":true},{"time":29696,"note":24,"active":true},{"time":29696,"note":12,"active":true},{"time":29952,"note":33,"active":false},{"time":29952,"note":24,"active":false},{"time":29952,"note":31,"active":true},{"time":29952,"note":24,"active":true},{"time":30208,"note":31,"active":false},{"time":30208,"note":24,"active":false},{"time":30208,"note":12,"active":false},{"time":30208,"note":31,"active":true},{"time":30208,"note":24,"active":true},{"time":30208,"note":16,"active":true},{"time":30464,"note":31,"active":false},{"time":30464,"note":24,"active":false},{"time":30464,"note":36,"active":true},{"time":30464,"note":31,"active":true},{"time":30592,"note":36,"active":false},{"time":30592,"note":31,"active":false},{"time":30592,"note":36,"active":true},{"time":30592,"note":31,"active":true},{"time":30720,"note":36,"active":false},{"time":30720,"note":31,"active":false},{"time":30720,"note":16,"active":false},{"time":30720,"note":35,"active":true},{"time":30720,"note":31,"active":true},{"time":30720,"note":19,"active":true},{"time":30976,"note":35,"active":false},{"time":30976,"note":31,"active":false},{"time":30976,"note":35,"active":true},{"time":30976,"note":31,"active":true},{"time":31232,"note":35,"active":false},{"time":31232,"note":31,"active":false},{"time":31232,"note":19,"active":false},{"time":31232,"note":35,"active":true},{"time":31232,"note":26,"active":true},{"time":31232,"note":7,"active":true},{"time":31488,"note":35,"active":false},{"time":31488,"note":26,"active":false},{"time":31488,"note":35,"active":true},{"time":31488,"note":29,"active":true},{"time":31744,"note":35,"active":false},{"time":31744,"note":29,"active":false},{"time":31744,"note":7,"active":false},{"time":31744,"note":36,"active":true},{"time":31744,"note":28,"active":true},{"time":31744,"note":12,"active":true},{"time":32512,"note":36,"active":false},{"time":32512,"note":28,"active":false},{"time":32512,"note":12,"active":false}];
//var song = playSong(jingleBells);
document.getElementById("jingleBells").addEventListener("click",()=>playSong(jingleBells));
document.getElementById("jingleBellsCSharp").addEventListener("click",()=>playSong(jingleBells,1));
document.getElementById("cancelSongs").addEventListener("click", cancelSongs);
</script>
</body>
</html>