ditty['bpm'] = 636866 ^ 636848;
const CYCLE = 605293 ^ 605309,
SWING = .025;
function tick16(t) {
sleep(t % (211898 ^ 211896) == (664135 ^ 664135) ? .25 + SWING : .25 - SWING);
}
const CHORDS = [
[323132 ^ 323081, 229001 ^ 229040, 305015 ^ 304971, 301760 ^ 301696],
[768438 ^ 768387, 464383 ^ 464324, 330516 ^ 330580, 911952 ^ 911893],
[493726 ^ 493735, 756274 ^ 756238, 404852 ^ 404810, 931779 ^ 931714],
[948140 ^ 948123, 961755 ^ 961766, 781844 ^ 781908, 985927 ^ 985858]
],
BASS = [
[713715 ^ 713685, 372798 ^ 372798, 510496 ^ 510496, 311078 ^ 311078, 280500 ^ 280500, 739836 ^ 739836, 400874 ^ 400844, 464873 ^ 464873, 195352 ^ 195370, 528428 ^ 528428, 106983 ^ 106983, 291779 ^ 291813, 299468 ^ 299468, 198581 ^ 198581, 891528 ^ 891557, 953776 ^ 953728],
[162217 ^ 162178, 510648 ^ 510648, 421184 ^ 421184, 800844 ^ 800844, 250670 ^ 250670, 427420 ^ 427420, 985633 ^ 985610, 534945 ^ 534945, 871030 ^ 870977, 385777 ^ 385777, 372711 ^ 372711, 133746 ^ 133721, 692120 ^ 692120, 838111 ^ 838111, 833683 ^ 833727, 385465 ^ 385428],
[888724 ^ 888762, 460057 ^ 460057, 809670 ^ 809670, 783792 ^ 783792, 391279 ^ 391279, 131715 ^ 131715, 754725 ^ 754699, 630428 ^ 630428, 605105 ^ 605067, 855804 ^ 855804, 409301 ^ 409301, 116805 ^ 116843, 143714 ^ 143714, 235284 ^ 235284, 879508 ^ 879546, 851425 ^ 851405],
[297610 ^ 297639, 646023 ^ 646023, 814918 ^ 814918, 254805 ^ 254805, 645150 ^ 645150, 800894 ^ 800894, 589471 ^ 589490, 129968 ^ 129968, 377716 ^ 377677, 430123 ^ 430123, 749974 ^ 749974, 722618 ^ 722583, 397764 ^ 397764, 132399 ^ 132356, 125621 ^ 125597, 882044 ^ 882009]
],
BASS_LEN = BASS['map'](i => i['map']((t, a) => {
if (!t) return 548994 ^ 548994;
var _0x14f78b = (855432 ^ 855438) + (310424 ^ 310417);
let s = a + (619182 ^ 619183);
_0x14f78b = (783850 ^ 783849) + (544988 ^ 544980);
for (; s < (592463 ^ 592479) && !i[s];) s++;
return Math['min'](.25 * (s - a) * .8, .9);
})),
RIFF_A = [730818 ^ 730760, 337644 ^ 337644, 806122 ^ 806063, 422012 ^ 421940, 128873 ^ 128873, 407581 ^ 407639, 980794 ^ 980794, 797055 ^ 796979, 333831 ^ 333901, 658773 ^ 658773, 132938 ^ 132879, 235766 ^ 235710, 388849 ^ 388849, 635166 ^ 635227, 767431 ^ 767364, 903471 ^ 903471],
RIFF_B = [188833 ^ 188904, 561223 ^ 561223, 871052 ^ 871113, 841362 ^ 841435, 464779 ^ 464779, 465794 ^ 465870, 167430 ^ 167430, 635834 ^ 635891, 750690 ^ 750638, 575593 ^ 575593, 570991 ^ 570918, 881998 ^ 881931, 603092 ^ 603092, 706986 ^ 707049, 955781 ^ 955840, 995545 ^ 995545],
MELODY = [
[
[483731 ^ 483731, 700607 ^ 700606],
[314159 ^ 314218, .5],
[590986 ^ 591042, .5],
[938686 ^ 938740, 586375 ^ 586374],
[850746 ^ 850806, .5],
[675383 ^ 675453, .5],
[798557 ^ 798480, 1.5],
[287560 ^ 287492, .5],
[298130 ^ 298200, 318023 ^ 318022],
[380748 ^ 380683, 959535 ^ 959534],
[670803 ^ 670742, 1.5],
[443106 ^ 443050, .5],
[276097 ^ 276171, .5],
[929906 ^ 929855, .5],
[630434 ^ 630510, 572434 ^ 572435],
[809646 ^ 809703, 1.5],
[396365 ^ 396298, .5],
[258260 ^ 258193, 826139 ^ 826138],
[709153 ^ 709153, 533913 ^ 533912]
],
[
[613050 ^ 613104, .5],
[452588 ^ 452513, .5],
[378106 ^ 378027, 1.5],
[870437 ^ 870506, .5],
[531597 ^ 531648, .5],
[922974 ^ 922898, .5],
[125502 ^ 125556, 631869 ^ 631868],
[855344 ^ 855415, .5],
[959317 ^ 959263, .5],
[245942 ^ 246010, 703846 ^ 703844],
[350087 ^ 350154, .5],
[722402 ^ 722350, .5],
[642711 ^ 642781, .5],
[141182 ^ 141110, .5],
[261338 ^ 261279, 342135 ^ 342133],
[363623 ^ 363623, .5],
[848222 ^ 848157, .5],
[898077 ^ 898136, .5],
[431170 ^ 431115, .5],
[887008 ^ 886956, 963753 ^ 963752],
[264438 ^ 264438, 886955 ^ 886954]
]
],
KICK = "x.....x...x..x..",
SNARE = "...x.......x....".split("").reverse().join(""),
GHOST = ".......x.......x",
CONGA = [152996 ^ 152996, 555073 ^ 555073, 312942 ^ 312912, 693438 ^ 693438, 566344 ^ 566344, 600965 ^ 601020, 806118 ^ 806118, 285257 ^ 285257, 825576 ^ 825576, 312575 ^ 312575, 318496 ^ 318494, 995276 ^ 995276, 446361 ^ 446375, 298902 ^ 298902, 747329 ^ 747329, 471954 ^ 471979],
TOMS = [518485 ^ 518498, 296179 ^ 296135, 311437 ^ 311485, 501063 ^ 501098],
bass = synth['def'](class {
constructor() {
this['p'] = 587673 ^ 587673, this['t'] = 882581 ^ 882581, this['low'] = 288560 ^ 288560, this['band'] = 980199 ^ 980199;
}
process(t, a) {
this['t'] += ditty['dt'], this['p'] += midi_to_hz(t) * ditty['dt'];
var t = this['p'] % (986758 ^ 986759),
t = .7 * ((980372 ^ 980374) * t - (510841 ^ 510840)) + .4 * (t < .5 ? 327680 ^ 327681 : -(721971 ^ 721970)),
s = (228115 ^ 228263) + (891312 ^ 892600) * Math['exp']((287049 ^ 287065) * -this['t']),
s = (594521 ^ 594523) * Math['sin'](Math['PI'] * s / ditty['sampleRate']),
s = (this['low'] += s * this['band'], this['band'] += s * (t - this['low'] - .45 * this['band']), Math['sin']((588420 ^ 588422) * this['p'] * Math['PI']));
return Math['tanh'](1.3 * (.8 * this['low'] + .55 * s)) * a['value'];
}
}),
pluck = synth['def'](class {
process(t, a, s, i) {
if (!this['buf']) {
var _0xbf24c = (864868 ^ 864876) + (477967 ^ 477961);
const e = Math['max'](522650 ^ 522648, Math['round'](ditty['sampleRate'] / midi_to_hz(t) - .5));
_0xbf24c = (501170 ^ 501171) + (228597 ^ 228605);
this['buf'] = new Float32Array(e);
let a = 835265 ^ 835265,
s = 674364 ^ 674364;
for (let t = 966050 ^ 966050; t < e; t++) a += i['tone'] * ((352130 ^ 352128) * Math['random']() - (424227 ^ 424226) - a), this['buf'][t] = a, s += a / e;
for (let t = 599784 ^ 599784; t < e; t++) this['buf'][t] = 1.6 * (this['buf'][t] - s);
this['i'] = 546623 ^ 546623;
}
const h = this['buf'],
e = h['length'],
r = (this['i'] + (843526 ^ 843527)) % e,
o = h[this['i']];
return h[this['i']] = .5 * i['decay'] * (o + h[r]), this['i'] = r, o * a['value'];
}
}, {
'tone': .6,
"decay": .996
}),
DETUNE = [.996, 395858 ^ 395859, 1.004],
pad = synth['def'](class {
constructor() {
this['ph'] = [Math['random'](), Math['random'](), Math['random']()], this['y1'] = 256028 ^ 256028, this['y2'] = 922059 ^ 922059, this['t'] = 357327 ^ 357327;
}
process(t, a) {
this['t'] += ditty['dt'];
let _0x6418be;
var s = midi_to_hz(t) * ditty['dt'];
_0x6418be = (848770 ^ 848770) + (435621 ^ 435621);
let i = 668535 ^ 668535;
for (let t = 320199 ^ 320199; t < (907300 ^ 907303); t++) this['ph'][t] = (this['ph'][t] + s * DETUNE[t]) % (782323 ^ 782322), i += (436553 ^ 436555) * this['ph'][t] - (650639 ^ 650638);
t = .07 + .025 * Math['sin']((757731 ^ 757729) * Math['PI'] * .2 * this['t']);
return this['y1'] += t * (i / (889944 ^ 889947) - this['y1']), this['y2'] += t * (this['y1'] - this['y2']), this['y2'] * a['value'];
}
}),
lead = synth['def'](class {
constructor() {
this['p'] = 149104 ^ 149104, this['q'] = 331991 ^ 331991, this['t'] = 718567 ^ 718567, this['y'] = 795828 ^ 795828;
}
process(t, a) {
this['t'] += ditty['dt'];
var s = .15 * Math['sin']((678534 ^ 678532) * Math['PI'] * 5.2 * this['t']) * Math['min'](862478 ^ 862479, Math['max'](920332 ^ 920332, (this['t'] - .25) / .35)),
t = midi_to_hz(t + s) * ditty['dt'],
s = (this['p'] += t, this['q'] += 1.004 * t, (this['p'] % (795779 ^ 795778) < .42 ? 468195 ^ 468194 : -(492788 ^ 492789)) + (this['q'] % (193907 ^ 193906) < .5 ? 223100 ^ 223101 : -(233864 ^ 233865)));
return this['y'] += .18 * (.5 * s - this['y']), (.7 * this['y'] + .35 * Math['sin']((448466 ^ 448464) * this['p'] * Math['PI'])) * a['value'];
}
}),
kick = synth['def'](class {
constructor() {
this['p'] = 804411 ^ 804411, this['t'] = 270111 ^ 270111;
}
process(t, a) {
this['t'] += ditty['dt'], this['p'] += ((856374 ^ 856346) + (297657 ^ 297665) * Math['exp']((334439 ^ 334407) * -this['t'])) * ditty['dt'];
var s = Math['sin']((153944 ^ 153946) * this['p'] * Math['PI']) * Math['exp']((517416 ^ 517423) * -this['t']),
i = ((634316 ^ 634318) * Math['random']() - (713097 ^ 713096)) * Math['exp']((134484 ^ 134154) * -this['t']) * .25;
return Math['tanh'](1.6 * (s + i)) * a['value'];
}
}),
snare = synth['def'](class {
constructor() {
this['p1'] = 423881 ^ 423881, this['p2'] = 894282 ^ 894282, this['t'] = 639471 ^ 639471, this['x'] = 395176 ^ 395176, this['lp'] = 120544 ^ 120544;
}
process(t, a) {
this['t'] += ditty['dt'], this['p1'] += (171241 ^ 171088) * ditty['dt'], this['p2'] += (893536 ^ 893738) * ditty['dt'];
var s = (844614 ^ 844612) * Math['random']() - (562456 ^ 562457),
i = s - this['x'],
s = (this['x'] = s, this['lp'] += .5 * (i - this['lp']), (.5 * Math['sin']((273554 ^ 273552) * this['p1'] * Math['PI']) + .3 * Math['sin']((949260 ^ 949262) * this['p2'] * Math['PI'])) * Math['exp']((594958 ^ 594962) * -this['t']));
return (s + .7 * this['lp'] * Math['exp']((448563 ^ 448547) * -this['t'])) * a['value'];
}
}),
hat = synth['def'](class {
constructor() {
this['t'] = 870183 ^ 870183, this['x'] = 850667 ^ 850667, this['y'] = 327046 ^ 327046;
}
process(t, a, s, i) {
this['t'] += ditty['dt'];
var h = (118506 ^ 118504) * Math['random']() - (615619 ^ 615618),
e = h - this['x'],
h = (this['x'] = h, e - this['y']);
return this['y'] = e, .35 * h * Math['exp'](-this['t'] * i['dk']) * a['value'];
}
}, {
'dk': 60
}),
conga = synth['def'](class {
constructor() {
this['p'] = 182728 ^ 182728, this['t'] = 191517 ^ 191517;
}
process(t, a, s, i) {
this['t'] += ditty['dt'], this['p'] += midi_to_hz(t) * ((587164 ^ 587165) + .6 * Math['exp']((798925 ^ 798961) * -this['t'])) * ditty['dt'];
t = ((362286 ^ 362284) * Math['random']() - (657097 ^ 657096)) * Math['exp']((528241 ^ 528097) * -this['t']);
return (Math['sin']((927882 ^ 927880) * this['p'] * Math['PI']) * Math['exp'](-this['t'] * i['dk']) + .3 * t) * a['value'];
}
}, {
'dk': 16
}),
space = filter['def'](class {
constructor() {
const t = ditty['sampleRate'],
a = t / (840518 ^ 818946),
s = (this['dl'] = new Float32Array((433186 ^ 433184) * t), this['dr'] = new Float32Array((843438 ^ 843436) * t), this['di'] = 803657 ^ 803657, t => ({
'b': new Float32Array(Math['round'](t * a)),
'i': 0,
'f': 0
}));
this['comb'] = [
[748594 ^ 747630, 109373 ^ 110528, 402810 ^ 401462, 434109 ^ 432750],
[834497 ^ 835506, 624950 ^ 625698, 856137 ^ 857386, 995279 ^ 993829]
]['map'](t => t['map'](s)), this['ap'] = [
[217514 ^ 217990, 161554 ^ 161351],
[117836 ^ 118287, 684119 ^ 684347]
]['map'](t => t['map'](s));
}
process(t, s) {
var a = this['dl']['length'],
i = (this['di'] - Math['round'](tick_to_second(s['time']) * ditty['sampleRate']) + a) % a,
h = this['dl'][i],
i = this['dr'][i],
e = (this['dl'][this['di']] = t[274226 ^ 274226] + i * s['fb'], this['dr'][this['di']] = t[530360 ^ 530361] + h * s['fb'], this['di'] = (this['di'] + (289042 ^ 289043)) % a, [t[636778 ^ 636778] + h * s['echo'], t[497169 ^ 497168] + i * s['echo']]),
r = .015 * (e[814159 ^ 814159] + e[446681 ^ 446680]);
for (let a = 868071 ^ 868071; a < (335845 ^ 335847); a++) {
let _0xf5284c;
let t = 482973 ^ 482973;
_0xf5284c = 'bhpmfd';
for (const p of this['comb'][a]) {
var o = p['b'][p['i']];
p['f'] = o + (p['f'] - o) * s['damp'], p['b'][p['i']] = r + p['f'] * s['room'], ++p['i'] >= p['b']['length'] && (p['i'] = 275307 ^ 275307), t += o;
}
for (const d of this['ap'][a]) {
var _0xd88fc = (385105 ^ 385113) + (137753 ^ 137753);
var n = d['b'][d['i']];
_0xd88fc = (906741 ^ 906739) + (243997 ^ 243995);
d['b'][d['i']] = t + .5 * n, t = n - t, ++d['i'] >= d['b']['length'] && (d['i'] = 888009 ^ 888009);
}
e[a] += t * s['verb'];
}
return e;
}
}, {
'time': .75,
'fb': .35,
"echo": 0,
'room': .84,
"damp": .35,
'verb': .3
});
loop(s => {
for (let a = 494744 ^ 494744; a < (302208 ^ 302212); a++)
for (let t = 525479 ^ 525479; t < (642929 ^ 642913); t++) {
var i = (801260 ^ 801261) <= s,
h = s < (489332 ^ 489335) && (332464 ^ 332467) === a && (761603 ^ 761615) <= t,
e = (h ? conga['play'](TOMS[t - (274270 ^ 274258)], {
"attack": .001,
"release": .1,
'duration': .45,
"amp": .5,
'dk': 8,
"pan": .3 - .2 * (t - (615883 ^ 615879))
}) : i && ("x" === KICK[t] && kick['play'](502658 ^ 502694, {
"attack": .001,
'release': .05,
'duration': .5,
'amp': .6
}), "x" === SNARE[t] && snare['play'](828631 ^ 828651, {
'attack': .001,
'release': .05,
"duration": .35,
"amp": .45
}), "x" === GHOST[t]) && snare['play'](147080 ^ 147124, {
'attack': .001,
'release': .03,
'duration': .1,
'amp': .07
}), (659058 ^ 659059) !== s && (242997 ^ 242998) !== s || (389954 ^ 389954) !== a || (954321 ^ 954321) !== t || hat['play'](468071 ^ 467971, {
"attack": .001,
'release': 1.5,
"duration": 2.5,
'amp': .18,
"dk": 2.2,
"pan": -.2
}), i && (955675 ^ 955669) === t && a % (900785 ^ 900787) == (134795 ^ 134794)),
i = (t % (294711 ^ 294707) == (849550 ^ 849548) ? .2 : .07 + .04 * Math['random']()) * (i ? 130654 ^ 130655 : .75);
h || hat['play'](616417 ^ 616379, e ? {
'attack': .001,
"release": .1,
'duration': .4,
"amp": .16,
"dk": 12,
"pan": .25
} : {
"attack": .001,
"release": .02,
'duration': .12,
"amp": i,
'dk': t % (675147 ^ 675151) == (840862 ^ 840860) ? 531346 ^ 531340 : 627002 ^ 627068,
"pan": .25
}), (596874 ^ 596872) <= s && CONGA[t] && conga['play'](CONGA[t], {
'attack': .001,
"release": .05,
'duration': .3,
'amp': .22 + .06 * Math['random'](),
"pan": (175786 ^ 175766) < CONGA[t] ? .35 : -.15
}), tick16(t);
}
}, {
'name': "bateria"
})['connect'](space['create']({
"verb": .12
})), loop(t => {
if (t < (378989 ^ 378988)) return sleep(CYCLE);
BASS['forEach']((a, s) => {
for (let t = 218873 ^ 218873; t < (936049 ^ 936033); t++) a[t] && bass['play'](a[t], {
'attack': .003,
"decay": .2,
'sustain': .7,
'release': .06,
'duration': BASS_LEN[s][t],
"amp": t % (938985 ^ 938989) == (582752 ^ 582752) ? .42 : .36
}), tick16(t);
});
}, {
"name": "bajo"
}), loop(t => {
for (let t = 414623 ^ 414623; t < (960001 ^ 960005); t++) {
let _0xb_0x3c0;
var a = (311506 ^ 311505) === t ? RIFF_B : RIFF_A;
_0xb_0x3c0 = 'lpbmji';
for (let t = 249086 ^ 249086; t < (200554 ^ 200570); t++) a[t] && pluck['play'](a[t], {
"attack": .001,
"release": .3,
'duration': .45,
'amp': (t % (546742 ^ 546738) == (673224 ^ 673224) ? .26 : .2) * (.9 + .2 * Math['random']()),
'pan': -.3
}), tick16(t);
}
}, {
"name": "guitarra"
})['connect'](space['create']({
'echo': .25,
"fb": .35,
'verb': .2
})), loop(t => {
if (t < (707247 ^ 707245)) return sleep(CYCLE);
for (const a of CHORDS) a['forEach']((t, a) => pad['play'](t, {
"attack": .35,
'decay': 1,
'sustain': .8,
"release": 1.4,
'duration': 3.6,
'amp': .075,
'pan': a / (786728 ^ 786731) - .5
})), sleep(306958 ^ 306954);
}, {
'name': "teclados"
})['connect'](space['create']({
"verb": .35
})), loop(t => {
if (t < (314954 ^ 314953)) return sleep(CYCLE);
for (var [a, s] of MELODY[(t - (129942 ^ 129941)) % (795155 ^ 795153)]) a && lead['play'](a, {
"attack": .02,
"decay": .3,
'sustain': .75,
'release': .3,
"duration": .9 * s,
'amp': .2,
"pan": .12
}), sleep(s);
}, {
"name": "melodia"
})['connect'](space['create']({
'echo': .22,
"fb": .3,
'verb': .3
}));