From 9e1ba442a948d9efc4b7740acc0dca15ba0f457c Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 21 Dec 2023 10:52:27 +0100 Subject: [PATCH 001/805] tree-sitter experiment --- packages/haskell/.gitignore | 26 ++++ packages/haskell/README.md | 25 ++++ packages/haskell/index.html | 13 ++ packages/haskell/main.js | 7 ++ packages/haskell/package.json | 20 +++ pnpm-lock.yaml | 231 ++++++++++++++++++++++++++++++++++ 6 files changed, 322 insertions(+) create mode 100644 packages/haskell/.gitignore create mode 100644 packages/haskell/README.md create mode 100644 packages/haskell/index.html create mode 100644 packages/haskell/main.js create mode 100644 packages/haskell/package.json diff --git a/packages/haskell/.gitignore b/packages/haskell/.gitignore new file mode 100644 index 00000000..30378b91 --- /dev/null +++ b/packages/haskell/.gitignore @@ -0,0 +1,26 @@ +# Logs +logs +*.log +npm-debug.log* +yarn-debug.log* +yarn-error.log* +pnpm-debug.log* +lerna-debug.log* + +node_modules +dist +dist-ssr +*.local + +# Editor directories and files +.vscode/* +!.vscode/extensions.json +.idea +.DS_Store +*.suo +*.ntvs* +*.njsproj +*.sln +*.sw? + +public/tree-sitter.wasm \ No newline at end of file diff --git a/packages/haskell/README.md b/packages/haskell/README.md new file mode 100644 index 00000000..2769a416 --- /dev/null +++ b/packages/haskell/README.md @@ -0,0 +1,25 @@ +# @strudel/haskell + +This is an experiment in implementing tree-sitter for parsing haskell. + +So far, I have just set up a vite project that imports and inits `web-tree-sitter`, which works after + +- +- + +Running: + +```sh +cd haskell && pnpm i +pnpm dev +``` + +will start the vite dev server, loading tree sitter on `http://localhost:5174/`. + +The next step is be to generate `tree-sitter-haskell.wasm` file following . + +I've tried to generate it using but it failed, due to some versioning conflicts involving node / v8 / node-gyp. + +It seems a lot of work has gone into this package in , without a new npm package version being released, which is why I've written this comment: . + +So either someone authorized releases a new version of the package or we might need to pull the changes and try to build it from the tree-sitter master branch. diff --git a/packages/haskell/index.html b/packages/haskell/index.html new file mode 100644 index 00000000..18355039 --- /dev/null +++ b/packages/haskell/index.html @@ -0,0 +1,13 @@ + + + + + + + Tree sitter test + + +
+ + + diff --git a/packages/haskell/main.js b/packages/haskell/main.js new file mode 100644 index 00000000..e7d2c78b --- /dev/null +++ b/packages/haskell/main.js @@ -0,0 +1,7 @@ +import Parser from 'web-tree-sitter'; + +console.log('Parser', Parser); + +Parser.init().then(() => { + console.log('init done..'); +}); diff --git a/packages/haskell/package.json b/packages/haskell/package.json new file mode 100644 index 00000000..bcc05169 --- /dev/null +++ b/packages/haskell/package.json @@ -0,0 +1,20 @@ +{ + "name": "haskell", + "private": true, + "version": "0.0.0", + "type": "module", + "scripts": { + "dev": "vite", + "build": "vite build", + "preview": "vite preview", + "postinstall": "cp node_modules/web-tree-sitter/tree-sitter.wasm public" + }, + "devDependencies": { + "tree-sitter-cli": "^0.20.8", + "tree-sitter-javascript": "^0.20.1", + "vite": "^5.0.8" + }, + "dependencies": { + "web-tree-sitter": "^0.20.8" + } +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 98f6441f..db0a9dce 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,5 +1,9 @@ lockfileVersion: '6.0' +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + importers: .: @@ -187,6 +191,22 @@ importers: packages/embed: {} + packages/haskell: + dependencies: + web-tree-sitter: + specifier: ^0.20.8 + version: 0.20.8 + devDependencies: + tree-sitter-cli: + specifier: ^0.20.8 + version: 0.20.8 + tree-sitter-javascript: + specifier: ^0.20.1 + version: 0.20.1 + vite: + specifier: ^5.0.8 + version: 5.0.10 + packages/hydra: dependencies: '@strudel.cycles/core': @@ -4053,6 +4073,110 @@ packages: rollup: 2.79.1 dev: true + /@rollup/rollup-android-arm-eabi@4.9.1: + resolution: {integrity: sha512-6vMdBZqtq1dVQ4CWdhFwhKZL6E4L1dV6jUjuBvsavvNJSppzi6dLBbuV+3+IyUREaj9ZFvQefnQm28v4OCXlig==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-android-arm64@4.9.1: + resolution: {integrity: sha512-Jto9Fl3YQ9OLsTDWtLFPtaIMSL2kwGyGoVCmPC8Gxvym9TCZm4Sie+cVeblPO66YZsYH8MhBKDMGZ2NDxuk/XQ==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-arm64@4.9.1: + resolution: {integrity: sha512-LtYcLNM+bhsaKAIGwVkh5IOWhaZhjTfNOkGzGqdHvhiCUVuJDalvDxEdSnhFzAn+g23wgsycmZk1vbnaibZwwA==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-x64@4.9.1: + resolution: {integrity: sha512-KyP/byeXu9V+etKO6Lw3E4tW4QdcnzDG/ake031mg42lob5tN+5qfr+lkcT/SGZaH2PdW4Z1NX9GHEkZ8xV7og==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm-gnueabihf@4.9.1: + resolution: {integrity: sha512-Yqz/Doumf3QTKplwGNrCHe/B2p9xqDghBZSlAY0/hU6ikuDVQuOUIpDP/YcmoT+447tsZTmirmjgG3znvSCR0Q==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-gnu@4.9.1: + resolution: {integrity: sha512-u3XkZVvxcvlAOlQJ3UsD1rFvLWqu4Ef/Ggl40WAVCuogf4S1nJPHh5RTgqYFpCOvuGJ7H5yGHabjFKEZGExk5Q==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-musl@4.9.1: + resolution: {integrity: sha512-0XSYN/rfWShW+i+qjZ0phc6vZ7UWI8XWNz4E/l+6edFt+FxoEghrJHjX1EY/kcUGCnZzYYRCl31SNdfOi450Aw==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.9.1: + resolution: {integrity: sha512-LmYIO65oZVfFt9t6cpYkbC4d5lKHLYv5B4CSHRpnANq0VZUQXGcCPXHzbCXCz4RQnx7jvlYB1ISVNCE/omz5cw==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-gnu@4.9.1: + resolution: {integrity: sha512-kr8rEPQ6ns/Lmr/hiw8sEVj9aa07gh1/tQF2Y5HrNCCEPiCBGnBUt9tVusrcBBiJfIt1yNaXN6r1CCmpbFEDpg==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-musl@4.9.1: + resolution: {integrity: sha512-t4QSR7gN+OEZLG0MiCgPqMWZGwmeHhsM4AkegJ0Kiy6TnJ9vZ8dEIwHw1LcZKhbHxTY32hp9eVCMdR3/I8MGRw==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-arm64-msvc@4.9.1: + resolution: {integrity: sha512-7XI4ZCBN34cb+BH557FJPmh0kmNz2c25SCQeT9OiFWEgf8+dL6ZwJ8f9RnUIit+j01u07Yvrsuu1rZGxJCc51g==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-ia32-msvc@4.9.1: + resolution: {integrity: sha512-yE5c2j1lSWOH5jp+Q0qNL3Mdhr8WuqCNVjc6BxbVfS5cAS6zRmdiw7ktb8GNpDCEUJphILY6KACoFoRtKoqNQg==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-x64-msvc@4.9.1: + resolution: {integrity: sha512-PyJsSsafjmIhVgaI1Zdj7m8BB8mMckFah/xbpplObyHfiXzKcI5UOUXRyOdHW7nz4DpMCuzLnF7v5IWHenCwYA==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + /@sigstore/protobuf-specs@0.1.0: resolution: {integrity: sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -5572,6 +5696,7 @@ packages: /b4a@1.6.4: resolution: {integrity: sha512-fpWrvyVHEKyeEvbKZTVOeZF3VSKKWtJxFIxX/jaVPf+cLbGUSitjb49pHLqPV2BUNNZ0LcoeEGfE/YCpyDYHIw==} + requiresBuild: true optional: true /babel-plugin-add-module-exports@0.2.1: @@ -6154,6 +6279,7 @@ packages: /color-string@1.9.1: resolution: {integrity: sha512-shrVawQFojnZv6xM40anx4CkoDP+fZsw/ZerEMsW/pyzsRbElpsL/DBVW7q3ExxwusdNXI3lXpuhEZkzs8p5Eg==} + requiresBuild: true dependencies: color-name: 1.1.4 simple-swizzle: 0.2.2 @@ -6166,6 +6292,7 @@ packages: /color@4.2.3: resolution: {integrity: sha512-1rXeuUUiGGrykh+CeBdu5Ie7OJwinCgQY0bc7GCRxy5xVHy+moaqkpL/jqQq0MtQOeYcrqEz4abc5f0KtU7W4A==} engines: {node: '>=12.5.0'} + requiresBuild: true dependencies: color-convert: 2.0.1 color-string: 1.9.1 @@ -6629,6 +6756,7 @@ packages: /detect-libc@2.0.2: resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} engines: {node: '>=8'} + requiresBuild: true optional: true /detective-amd@4.0.1: @@ -7472,6 +7600,7 @@ packages: /fast-fifo@1.3.2: resolution: {integrity: sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ==} + requiresBuild: true optional: true /fast-glob@3.2.12: @@ -7743,6 +7872,14 @@ packages: requiresBuild: true optional: true + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + /function-bind@1.1.1: resolution: {integrity: sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==} @@ -10521,6 +10658,12 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true + /nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: true + /nanoid@4.0.2: resolution: {integrity: sha512-7ZtY5KTCNheRGfEFxnedV5zFiORN1+Y1N6zvPTnHQd8ENUvfaDBeuJDZb2bN/oXwXxu3qkTXDzy57W5vAmDTBw==} engines: {node: ^14 || ^16 || >=18} @@ -10579,6 +10722,7 @@ packages: /node-addon-api@6.1.0: resolution: {integrity: sha512-+eawOlIgy680F0kBzPUNFhMZGtJ1YmqM6l4+Crf4IkImjYrO/mqPwRMh352g23uIaQKFItcQ64I7KMaJxHgAVA==} + requiresBuild: true optional: true /node-domexception@1.0.0: @@ -11675,6 +11819,15 @@ packages: picocolors: 1.0.0 source-map-js: 1.0.2 + /postcss@8.4.32: + resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.0 + source-map-js: 1.0.2 + dev: true + /prebuild-install@7.1.1: resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} engines: {node: '>=10'} @@ -11875,6 +12028,7 @@ packages: /queue-tick@1.0.1: resolution: {integrity: sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==} + requiresBuild: true optional: true /quick-lru@4.0.1: @@ -12522,6 +12676,27 @@ packages: optionalDependencies: fsevents: 2.3.2 + /rollup@4.9.1: + resolution: {integrity: sha512-pgPO9DWzLoW/vIhlSoDByCzcpX92bKEorbgXuZrqxByte3JFk2xSW2JEeAcyLc9Ru9pqcNNW+Ob7ntsk2oT/Xw==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.9.1 + '@rollup/rollup-android-arm64': 4.9.1 + '@rollup/rollup-darwin-arm64': 4.9.1 + '@rollup/rollup-darwin-x64': 4.9.1 + '@rollup/rollup-linux-arm-gnueabihf': 4.9.1 + '@rollup/rollup-linux-arm64-gnu': 4.9.1 + '@rollup/rollup-linux-arm64-musl': 4.9.1 + '@rollup/rollup-linux-riscv64-gnu': 4.9.1 + '@rollup/rollup-linux-x64-gnu': 4.9.1 + '@rollup/rollup-linux-x64-musl': 4.9.1 + '@rollup/rollup-win32-arm64-msvc': 4.9.1 + '@rollup/rollup-win32-ia32-msvc': 4.9.1 + '@rollup/rollup-win32-x64-msvc': 4.9.1 + fsevents: 2.3.3 + dev: true + /run-async@2.4.1: resolution: {integrity: sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==} engines: {node: '>=0.12.0'} @@ -12730,6 +12905,7 @@ packages: /simple-swizzle@0.2.2: resolution: {integrity: sha512-JA//kQgZtbuY83m+xT+tXJkmJncGMTFT+C+g2h2R9uxkYIrE2yy9sgmcLhCnw57/WSD+Eh3J97FPEDFnbXnDUg==} + requiresBuild: true dependencies: is-arrayish: 0.3.2 optional: true @@ -12943,6 +13119,7 @@ packages: /streamx@2.15.2: resolution: {integrity: sha512-b62pAV/aeMjUoRN2C/9F0n+G8AfcJjNC0zw/ZmOHeFsIe4m4GzjVW9m6VHXVjk536NbdU9JRwKMJRfkc+zUFTg==} + requiresBuild: true dependencies: fast-fifo: 1.3.2 queue-tick: 1.0.1 @@ -13220,6 +13397,7 @@ packages: /tar-fs@3.0.4: resolution: {integrity: sha512-5AFQU8b9qLfZCX9zp2duONhPmZv0hGYiBPJsyUdqMjzq/mqVpy/rEUSeHk1+YitmxugaptgBh5oDGU3VsAJq4w==} + requiresBuild: true dependencies: mkdirp-classic: 0.5.3 pump: 3.0.0 @@ -13238,6 +13416,7 @@ packages: /tar-stream@3.1.6: resolution: {integrity: sha512-B/UyjYwPpMBv+PaFSWAmtYjwdrlEaZQEhMIBFNC5oEG8lpiW8XjcSdmEaClj28ArfKScKHs2nshz3k2le6crsg==} + requiresBuild: true dependencies: b4a: 1.6.4 fast-fifo: 1.3.2 @@ -13429,6 +13608,19 @@ packages: punycode: 2.3.0 dev: true + /tree-sitter-cli@0.20.8: + resolution: {integrity: sha512-XjTcS3wdTy/2cc/ptMLc/WRyOLECRYcMTrSWyhZnj1oGSOWbHLTklgsgRICU3cPfb0vy+oZCC33M43u6R1HSCA==} + hasBin: true + requiresBuild: true + dev: true + + /tree-sitter-javascript@0.20.1: + resolution: {integrity: sha512-2LNRAw6vd6NDGf5DvAZTaIJDv0j7519bbDsQQ9jnT7uC91efvbn2BxOagNs7u41LSbmsuScjkM8VeN0mnya1iw==} + requiresBuild: true + dependencies: + nan: 2.17.0 + dev: true + /treeverse@3.0.0: resolution: {integrity: sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -14141,6 +14333,41 @@ packages: optionalDependencies: fsevents: 2.3.2 + /vite@5.0.10: + resolution: {integrity: sha512-2P8J7WWgmc355HUMlFrwofacvr98DAjoE52BfdbwQtyLH06XKwaL/FMnmKM2crF0iX4MpmMKoDlNCB1ok7zHCw==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + esbuild: 0.19.5 + postcss: 8.4.32 + rollup: 4.9.1 + optionalDependencies: + fsevents: 2.3.3 + dev: true + /vitefu@0.2.4(vite@4.5.0): resolution: {integrity: sha512-fanAXjSaf9xXtOOeno8wZXIhgia+CZury481LsDaV++lSvcU2R9Ch2bPh3PYFyoHW+w9LqAeYRISVQjUIew14g==} peerDependencies: @@ -14267,6 +14494,10 @@ packages: engines: {node: '>= 8'} dev: true + /web-tree-sitter@0.20.8: + resolution: {integrity: sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==} + dev: false + /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} From 756f37e265d50003b1371f962e7200fba09930d1 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 21 Dec 2023 10:54:12 +0100 Subject: [PATCH 002/805] format --- packages/haskell/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/haskell/index.html b/packages/haskell/index.html index 18355039..c6b59eed 100644 --- a/packages/haskell/index.html +++ b/packages/haskell/index.html @@ -1,4 +1,4 @@ - + From 64dbdd97baaefbc02d1558320bdcc00345ea7376 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Fri, 29 Dec 2023 21:27:54 +0100 Subject: [PATCH 003/805] little update --- packages/haskell/.gitignore | 3 ++- packages/haskell/README.md | 6 ++++++ packages/haskell/main.js | 8 ++++++-- packages/haskell/public/README.md | 3 +++ 4 files changed, 17 insertions(+), 3 deletions(-) create mode 100644 packages/haskell/public/README.md diff --git a/packages/haskell/.gitignore b/packages/haskell/.gitignore index 30378b91..213c8054 100644 --- a/packages/haskell/.gitignore +++ b/packages/haskell/.gitignore @@ -23,4 +23,5 @@ dist-ssr *.sln *.sw? -public/tree-sitter.wasm \ No newline at end of file +public/tree-sitter.wasm +public/tree-sitter-haskell.wasm \ No newline at end of file diff --git a/packages/haskell/README.md b/packages/haskell/README.md index 2769a416..0143b93e 100644 --- a/packages/haskell/README.md +++ b/packages/haskell/README.md @@ -23,3 +23,9 @@ I've tried to generate it using , without a new npm package version being released, which is why I've written this comment: . So either someone authorized releases a new version of the package or we might need to pull the changes and try to build it from the tree-sitter master branch. + +## Update 1 + +I've managed to make it work by using [this tree-sitter-haskell.wasm](https://github.com/tree-sitter/tree-sitter-haskell/blob/master/tree-sitter-haskell.wasm), instead of using the version on npm! Make sure both `tree-sitter.wasm` and `tree-sitter-haskell.wasm` are in the public dir, then run `pnpm dev`. The console should log a tree sitter AST string. + +Next step: understand how the ast works to then transform it into JS function calls! diff --git a/packages/haskell/main.js b/packages/haskell/main.js index e7d2c78b..dd96e32f 100644 --- a/packages/haskell/main.js +++ b/packages/haskell/main.js @@ -2,6 +2,10 @@ import Parser from 'web-tree-sitter'; console.log('Parser', Parser); -Parser.init().then(() => { - console.log('init done..'); +Parser.init().then(async () => { + const parser = new Parser(); + const Lang = await Parser.Language.load('tree-sitter-haskell.wasm'); + parser.setLanguage(Lang); + const tree = parser.parse('d1 $ s "hh*3"'); + console.log(tree.rootNode.toString()); }); diff --git a/packages/haskell/public/README.md b/packages/haskell/public/README.md new file mode 100644 index 00000000..6f8ff001 --- /dev/null +++ b/packages/haskell/public/README.md @@ -0,0 +1,3 @@ +# public + +this file is just here to make sure the public folder exists From a39b4c1637bfb048e6175280171c9aaa8530d1cb Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Sat, 30 Dec 2023 16:43:08 +0100 Subject: [PATCH 004/805] parser viz --- packages/haskell/.gitignore | 3 +- packages/haskell/index.html | 5 +- packages/haskell/main.js | 50 ++++++++++++++-- packages/haskell/package.json | 6 +- pnpm-lock.yaml | 110 +++++++++++++++++++++++++++++++++- 5 files changed, 162 insertions(+), 12 deletions(-) diff --git a/packages/haskell/.gitignore b/packages/haskell/.gitignore index 213c8054..aa33e831 100644 --- a/packages/haskell/.gitignore +++ b/packages/haskell/.gitignore @@ -24,4 +24,5 @@ dist-ssr *.sw? public/tree-sitter.wasm -public/tree-sitter-haskell.wasm \ No newline at end of file +public/tree-sitter-haskell.wasm +public/tree-sitter-haskell_mine.wasm \ No newline at end of file diff --git a/packages/haskell/index.html b/packages/haskell/index.html index c6b59eed..23d1c4a6 100644 --- a/packages/haskell/index.html +++ b/packages/haskell/index.html @@ -6,8 +6,9 @@ Tree sitter test - -
+ + +
diff --git a/packages/haskell/main.js b/packages/haskell/main.js index dd96e32f..df11110a 100644 --- a/packages/haskell/main.js +++ b/packages/haskell/main.js @@ -1,11 +1,51 @@ import Parser from 'web-tree-sitter'; +import toDot from 'jgf-dot'; +import { Graphviz } from '@hpcc-js/wasm'; -console.log('Parser', Parser); +const graphvizLoaded = Graphviz.load(); +const parserLoaded = loadParser(); +const graphContainer = document.getElementById('graph'); -Parser.init().then(async () => { +const textarea = document.getElementById('code'); +textarea.value = 'd1 $ s "hh(3,8)"'; +textarea.addEventListener('input', (e) => renderGraph(e.target.value, graphContainer)); +renderGraph(textarea.value, graphContainer); + +function walk(node, branch = [0], parent) { + let nodes = []; + let edges = []; + const current = { id: branch.join('-'), label: node.type }; + nodes.push(current); + parent && edges.push({ source: parent.id, target: current.id }); + if (node.children.length) { + node.children.forEach((child, j) => { + const { nodes: childNodes, edges: childEdges } = walk(child, branch.concat([j]), current); + nodes = nodes.concat(childNodes || []); + edges = edges.concat(childEdges || []); + }); + } + return { nodes, edges }; +} + +async function renderGraph(code, container) { + const parser = await parserLoaded; + const tree = parser.parse(code); + const { nodes, edges } = walk(tree.rootNode); + const graphviz = await graphvizLoaded; + const dot = toDot({ + graph: { + nodes, + edges, + }, + }); + const svg = await graphviz.layout(dot, 'svg', 'dot'); + container.innerHTML = svg; +} + +async function loadParser() { + await Parser.init(); const parser = new Parser(); const Lang = await Parser.Language.load('tree-sitter-haskell.wasm'); parser.setLanguage(Lang); - const tree = parser.parse('d1 $ s "hh*3"'); - console.log(tree.rootNode.toString()); -}); + return parser; +} diff --git a/packages/haskell/package.json b/packages/haskell/package.json index bcc05169..46039e25 100644 --- a/packages/haskell/package.json +++ b/packages/haskell/package.json @@ -7,14 +7,18 @@ "dev": "vite", "build": "vite build", "preview": "vite preview", - "postinstall": "cp node_modules/web-tree-sitter/tree-sitter.wasm public" + "postinstall": "cp node_modules/web-tree-sitter/tree-sitter.wasm public", + "parse": "tree-sitter parse -D ./test.hs" }, "devDependencies": { + "tree-sitter": "^0.20.6", "tree-sitter-cli": "^0.20.8", "tree-sitter-javascript": "^0.20.1", "vite": "^5.0.8" }, "dependencies": { + "@hpcc-js/wasm": "^2.15.3", + "jgf-dot": "^1.1.1", "web-tree-sitter": "^0.20.8" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 44efa683..5f77b9ad 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -240,10 +240,19 @@ importers: packages/haskell: dependencies: + '@hpcc-js/wasm': + specifier: ^2.15.3 + version: 2.15.3 + jgf-dot: + specifier: ^1.1.1 + version: 1.1.1 web-tree-sitter: specifier: ^0.20.8 version: 0.20.8 devDependencies: + tree-sitter: + specifier: ^0.20.6 + version: 0.20.6 tree-sitter-cli: specifier: ^0.20.8 version: 0.20.8 @@ -2914,6 +2923,13 @@ packages: react: 18.2.0 dev: false + /@hpcc-js/wasm@2.15.3: + resolution: {integrity: sha512-enmVW4APrv6jBCRP5V/WdIjYvxidNgBbgdWOdLpiygoE0g0ZurM1qsysBo4TbZfdS81SCdkjRSU/URWf+gpQUA==} + hasBin: true + dependencies: + yargs: 17.7.2 + dev: false + /@humanwhocodes/config-array@0.11.8: resolution: {integrity: sha512-UybHIJzJnR5Qc/MsD9Kr+RpO2h+/P1GhOwdiLPXK5TWk5sgTdu88bTD9UP+CKbPPh5Rni1u0GjAdYQLemG8g+g==} engines: {node: '>=10.10.0'} @@ -6423,7 +6439,6 @@ packages: resolution: {integrity: sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==} engines: {node: '>=8'} requiresBuild: true - optional: true /detective-amd@4.0.1: resolution: {integrity: sha512-bDo22IYbJ8yzALB0Ow5CQLtyhU1BpDksLB9dsWHI9Eh0N3OQR6aQqhjPsNDd69ncYwRfL1sTo7OA9T3VRVSe2Q==} @@ -6593,6 +6608,10 @@ packages: engines: {node: '>=10'} dev: true + /dotty@0.0.1: + resolution: {integrity: sha512-eDT0hfJEnQbGaZcTuCfj2igPkQ7qa/n9K2pGGDxhEqKhARLq+xE1TonvpOPHq+7KeG+D6A/V8BwCcsdPom2TQg==} + dev: false + /dset@3.1.2: resolution: {integrity: sha512-g/M9sqy3oHe477Ar4voQxWtaPIFw1jTdKZuomOjhCcBx9nHUNn0pu6NopuFFrTh/TRZIKEj+76vLWFu9BNKk+Q==} engines: {node: '>=4'} @@ -7560,6 +7579,10 @@ packages: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} dev: true + /gather-stream@1.0.0: + resolution: {integrity: sha512-NspYMi3rN3EKmMdejUXbtluDYrcRlTEBBFhWzVRZVsOx94OPxlXp0AzyPKyLiT7iaurcoTE/KcHsHP/PowNEaA==} + dev: false + /gauge@3.0.2: resolution: {integrity: sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q==} engines: {node: '>=10'} @@ -7898,6 +7921,33 @@ packages: /grapheme-splitter@1.0.4: resolution: {integrity: sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==} + /graphlib-dot@0.6.4: + resolution: {integrity: sha512-rdhDTu0mBlloTpFMfkQq+e3y4yL22OqP5MhQbkw6QUURqa+4YLgv3XZy2fA64wdEcJNZ+waI76URemVgdFtzng==} + dependencies: + graphlib: 2.1.8 + lodash: 4.17.21 + dev: false + + /graphlib-json-graph@1.0.0: + resolution: {integrity: sha512-sJsFuthZnSL5knaDDZhDx8fg1Zy5t/7ZqVHiytoeSzezGhMoSFD3T3K5YQakKFEyXtYjOzbnvsyr2qo+6/qq/Q==} + dependencies: + graphlib: 1.0.7 + par: 0.3.0 + prop: 0.1.1 + dev: false + + /graphlib@1.0.7: + resolution: {integrity: sha512-jNb7RbqTIRyZRmcVCxGefOlGWjNdbjcT2tFj36zhnRa8yhAlOvydh9nBixfLQIqSU+DwCx47tg3ysw8NIYhpsA==} + dependencies: + lodash: 3.10.1 + dev: false + + /graphlib@2.1.8: + resolution: {integrity: sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==} + dependencies: + lodash: 4.17.21 + dev: false + /gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} @@ -8794,6 +8844,15 @@ packages: supports-color: 7.2.0 dev: true + /jgf-dot@1.1.1: + resolution: {integrity: sha512-/aw9bwVfn67A+lvjxtbocBuhB2rNdL5UY5rlHhKVh9ValvVJETU5lQ0jitDxiIjIPAEeuR4B1aFNA7E3wKNV1A==} + hasBin: true + dependencies: + graphlib-dot: 0.6.4 + graphlib-json-graph: 1.0.0 + read-file-stdin: 0.2.1 + dev: false + /jiti@1.18.2: resolution: {integrity: sha512-QAdOptna2NYiSSpv0O/BwoHBSmz4YhpzJHyi+fnMRTXFjp7B8i/YG5Z8IfusxB1ufjcD2Sre1F3R+nX3fvy7gg==} hasBin: true @@ -9257,9 +9316,12 @@ packages: resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} dev: true + /lodash@3.10.1: + resolution: {integrity: sha512-9mDDwqVIma6OZX79ZlDACZl8sBm0TEnkf99zV3iMA4GzkIT/9hiqP5mY0HoT1iNLCrKc/R1HByV+yJfRWVJryQ==} + dev: false + /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - dev: true /log-symbols@4.1.0: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} @@ -10316,6 +10378,10 @@ packages: /nan@2.17.0: resolution: {integrity: sha512-2ZTgtl0nJsO0KQCjEpxcIr5D+Yv90plTitZt9JBfQvVJDS5seMl3FOvsh3+9CoYWXf/1l5OaZzzF6nDm4cagaQ==} + /nan@2.18.0: + resolution: {integrity: sha512-W7tfG7vMOGtD30sHoZSSc/JVYiyDPEyQVso/Zz+/uQd0B0L46gtC+pHha5FFMRpil6fm/AoEcRWyOVi4+E/f8w==} + dev: true + /nanoid@3.3.6: resolution: {integrity: sha512-BGcqMMJuToF7i1rt+2PWSNVnWIkGCU78jBG3RxO/bZlnZPK2Cmi2QaffxGO/2RvWi9sL+FAiRiXMgsyxQ1DIDA==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -11118,6 +11184,11 @@ packages: - supports-color dev: true + /par@0.3.0: + resolution: {integrity: sha512-6V910zFAoHnxjX6ILkwbQcpIkD3KI2gBAPfCtZQNaJTvTxgIoKXSwDQIE3ty0zbOGdBXHRnl6rd66a5jj12pfw==} + engines: {node: '>=0.6'} + dev: false + /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -11499,7 +11570,7 @@ packages: engines: {node: '>=10'} hasBin: true dependencies: - detect-libc: 2.0.1 + detect-libc: 2.0.2 expand-template: 2.0.3 github-from-package: 0.0.0 minimist: 1.2.7 @@ -11659,6 +11730,12 @@ packages: read: 1.0.7 dev: true + /prop@0.1.1: + resolution: {integrity: sha512-hf5DdgiPkcoVxBfuSknP918U0lDC+7lArIjIB2U4Gh79p1Xtc0JP6W5DW3c0wC0x9/A6CsAISh3202I1GlMgkw==} + dependencies: + dotty: 0.0.1 + dev: false + /property-information@6.2.0: resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} @@ -11792,6 +11869,12 @@ packages: engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dev: true + /read-file-stdin@0.2.1: + resolution: {integrity: sha512-dAqysQ4kfj9m5aejZOPr+aRGXZJXdLkMOLZ3BXMwMBQHiO+aylGBFJPh88AYPQrOf+D43F4Uc2oUIW9kBlItLA==} + dependencies: + gather-stream: 1.0.0 + dev: false + /read-package-json-fast@2.0.3: resolution: {integrity: sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ==} engines: {node: '>=10'} @@ -13294,6 +13377,14 @@ packages: nan: 2.17.0 dev: true + /tree-sitter@0.20.6: + resolution: {integrity: sha512-GxJodajVpfgb3UREzzIbtA1hyRnTxVbWVXrbC6sk4xTMH5ERMBJk9HJNq4c8jOJeUaIOmLcwg+t6mez/PDvGqg==} + requiresBuild: true + dependencies: + nan: 2.18.0 + prebuild-install: 7.1.1 + dev: true + /treeverse@3.0.0: resolution: {integrity: sha512-gcANaAnd2QDZFmHFEOF4k7uc1J/6a6z3DJMd/QwEyxLoKGiptJRwid582r7QIsFlFMIZ3SnxfS52S4hm2DHkuQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -14592,6 +14683,19 @@ packages: y18n: 5.0.8 yargs-parser: 21.1.1 + /yargs@17.7.2: + resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} + engines: {node: '>=12'} + dependencies: + cliui: 8.0.1 + escalade: 3.1.1 + get-caller-file: 2.0.5 + require-directory: 2.1.1 + string-width: 4.2.3 + y18n: 5.0.8 + yargs-parser: 21.1.1 + dev: false + /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} From 89ae241bf7f74ca77b0ad03b38c8a45e6aaa0470 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Sat, 30 Dec 2023 16:45:03 +0100 Subject: [PATCH 005/805] some styling --- packages/haskell/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/haskell/index.html b/packages/haskell/index.html index 23d1c4a6..9883b1b9 100644 --- a/packages/haskell/index.html +++ b/packages/haskell/index.html @@ -7,8 +7,8 @@ Tree sitter test - -
+ +
From eefd8b37b11b3b2f2b74ecafbb86a6a85795175f Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Sat, 30 Dec 2023 16:48:21 +0100 Subject: [PATCH 006/805] ignore their wasm file --- packages/haskell/.gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/haskell/.gitignore b/packages/haskell/.gitignore index aa33e831..75d4123f 100644 --- a/packages/haskell/.gitignore +++ b/packages/haskell/.gitignore @@ -25,4 +25,5 @@ dist-ssr public/tree-sitter.wasm public/tree-sitter-haskell.wasm -public/tree-sitter-haskell_mine.wasm \ No newline at end of file +public/tree-sitter-haskell_mine.wasm +public/tree-sitter-haskell_theirs.wasm \ No newline at end of file From cdba9efb5981d4000c6c21fbd067e2d319c3977e Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Mon, 1 Apr 2024 03:17:15 +0200 Subject: [PATCH 007/805] add filter + filterWhen + within --- packages/core/pattern.mjs | 31 +++++++++++++++++++ test/__snapshots__/examples.test.mjs.snap | 37 +++++++++++++++++++++++ 2 files changed, 68 insertions(+) diff --git a/packages/core/pattern.mjs b/packages/core/pattern.mjs index daacc946..2cac42c5 100644 --- a/packages/core/pattern.mjs +++ b/packages/core/pattern.mjs @@ -2487,6 +2487,37 @@ Pattern.prototype.tag = function (tag) { return this.withContext((ctx) => ({ ...ctx, tags: (ctx.tags || []).concat([tag]) })); }; +/** + * Filters haps using the given function + * @name filter + * @param {Function} test function to test Hap + * @example + * s("hh!7 oh").filter(hap => hap.value.s==='hh') + */ +export const filter = register('filter', (test, pat) => pat.withHaps((haps) => haps.filter(test))); + +/** + * Filters haps by their begin time + * @name filterWhen + * @noAutocomplete + * @param {Function} test function to test Hap.whole.begin + */ +export const filterWhen = register('filterWhen', (test, pat) => pat.filter((h) => test(h.whole.begin))); + +/** + * Use within to apply a function to only a part of a pattern. + * @name within + * @param {number} start start within cycle (0 - 1) + * @param {number} end end within cycle (0 - 1). Must be > start + * @param {Function} func function to be applied to the sub-pattern + */ +export const within = register('within', (a, b, fn, pat) => + stack( + fn(pat.filterWhen((t) => t.cyclePos() >= a && t.cyclePos() <= b)), + pat.filterWhen((t) => t.cyclePos() < a || t.cyclePos() > b), + ), +); + ////////////////////////////////////////////////////////////////////// // Control-related functions, i.e. ones that manipulate patterns of // objects diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap index 27074590..0c9c3f8c 100644 --- a/test/__snapshots__/examples.test.mjs.snap +++ b/test/__snapshots__/examples.test.mjs.snap @@ -2560,6 +2560,43 @@ exports[`runs examples > example "fastGap" example index 0 1`] = ` ] `; +exports[`runs examples > example "filter" example index 0 1`] = ` +[ + "[ 0/1 → 1/8 | s:hh ]", + "[ 1/8 → 1/4 | s:hh ]", + "[ 1/4 → 3/8 | s:hh ]", + "[ 3/8 → 1/2 | s:hh ]", + "[ 1/2 → 5/8 | s:hh ]", + "[ 5/8 → 3/4 | s:hh ]", + "[ 3/4 → 7/8 | s:hh ]", + "[ 7/8 → 1/1 | s:oh ]", + "[ 1/1 → 9/8 | s:hh ]", + "[ 9/8 → 5/4 | s:hh ]", + "[ 5/4 → 11/8 | s:hh ]", + "[ 11/8 → 3/2 | s:hh ]", + "[ 3/2 → 13/8 | s:hh ]", + "[ 13/8 → 7/4 | s:hh ]", + "[ 7/4 → 15/8 | s:hh ]", + "[ 15/8 → 2/1 | s:oh ]", + "[ 2/1 → 17/8 | s:hh ]", + "[ 17/8 → 9/4 | s:hh ]", + "[ 9/4 → 19/8 | s:hh ]", + "[ 19/8 → 5/2 | s:hh ]", + "[ 5/2 → 21/8 | s:hh ]", + "[ 21/8 → 11/4 | s:hh ]", + "[ 11/4 → 23/8 | s:hh ]", + "[ 23/8 → 3/1 | s:oh ]", + "[ 3/1 → 25/8 | s:hh ]", + "[ 25/8 → 13/4 | s:hh ]", + "[ 13/4 → 27/8 | s:hh ]", + "[ 27/8 → 7/2 | s:hh ]", + "[ 7/2 → 29/8 | s:hh ]", + "[ 29/8 → 15/4 | s:hh ]", + "[ 15/4 → 31/8 | s:hh ]", + "[ 31/8 → 4/1 | s:oh ]", +] +`; + exports[`runs examples > example "firstOf" example index 0 1`] = ` [ "[ 0/1 → 1/4 | note:g3 ]", From e3b6884b86f664ed65ed005e7ec8c5952b16f9eb Mon Sep 17 00:00:00 2001 From: fnordomat <46D46D1246803312401472B5A7427E237B7908CA> Date: Mon, 1 Apr 2024 10:46:32 +0200 Subject: [PATCH 008/805] make soundfont base url configurable --- packages/soundfonts/fontloader.mjs | 17 ++++++++++++++++- packages/soundfonts/index.mjs | 4 ++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/packages/soundfonts/fontloader.mjs b/packages/soundfonts/fontloader.mjs index 8cbe3e81..27f1875a 100644 --- a/packages/soundfonts/fontloader.mjs +++ b/packages/soundfonts/fontloader.mjs @@ -1,3 +1,4 @@ +import { persistentMap } from '@nanostores/persistent'; import { noteToMidi, freqToMidi, getSoundIndex } from '@strudel/core'; import { getAudioContext, @@ -9,6 +10,20 @@ import { } from '@strudel/webaudio'; import gm from './gm.mjs'; +export const defaultFontloaderConfig = { + soundfontUrl: 'https://felixroos.github.io/webaudiofontdata/sound' +} + +export const fontloaderConfigMap = persistentMap('strudel-config-fontloader', defaultFontloaderConfig); + +export function setSoundfontUrl(obj) { + fontloaderConfigMap.setKey('soundfontUrl', JSON.stringify(obj)); +} + +export function getSoundfontUrl() { + return JSON.parse(fontloaderConfigMap.get().soundfontUrl); +} + let loadCache = {}; async function loadFont(name) { if (loadCache[name]) { @@ -16,7 +31,7 @@ async function loadFont(name) { } const load = async () => { // TODO: make soundfont source configurable - const url = `https://felixroos.github.io/webaudiofontdata/sound/${name}.js`; + const url = `${getSoundfontUrl()}/${name}.js`; const preset = await fetch(url).then((res) => res.text()); let [_, data] = preset.split('={'); return eval('{' + data); diff --git a/packages/soundfonts/index.mjs b/packages/soundfonts/index.mjs index c54297b5..31792603 100644 --- a/packages/soundfonts/index.mjs +++ b/packages/soundfonts/index.mjs @@ -1,6 +1,6 @@ -import { getFontBufferSource, registerSoundfonts } from './fontloader.mjs'; +import { getFontBufferSource, registerSoundfonts, setSoundfontUrl } from './fontloader.mjs'; import * as soundfontList from './list.mjs'; import { startPresetNote } from 'sfumato'; import { loadSoundfont } from './sfumato.mjs'; -export { loadSoundfont, startPresetNote, getFontBufferSource, soundfontList, registerSoundfonts }; +export { loadSoundfont, startPresetNote, getFontBufferSource, soundfontList, registerSoundfonts, setSoundfontUrl }; From b233c33f56236ebfed2672cc2b1b783048c71f1f Mon Sep 17 00:00:00 2001 From: fnordomat <46D46D1246803312401472B5A7427E237B7908CA> Date: Mon, 1 Apr 2024 17:14:27 +0200 Subject: [PATCH 009/805] (squash me) save setting in variable, not store --- packages/soundfonts/fontloader.mjs | 18 +++++------------- 1 file changed, 5 insertions(+), 13 deletions(-) diff --git a/packages/soundfonts/fontloader.mjs b/packages/soundfonts/fontloader.mjs index 27f1875a..427f57e3 100644 --- a/packages/soundfonts/fontloader.mjs +++ b/packages/soundfonts/fontloader.mjs @@ -1,4 +1,3 @@ -import { persistentMap } from '@nanostores/persistent'; import { noteToMidi, freqToMidi, getSoundIndex } from '@strudel/core'; import { getAudioContext, @@ -10,18 +9,11 @@ import { } from '@strudel/webaudio'; import gm from './gm.mjs'; -export const defaultFontloaderConfig = { - soundfontUrl: 'https://felixroos.github.io/webaudiofontdata/sound' -} +let defaultSoundfontUrl = 'https://felixroos.github.io/webaudiofontdata/sound'; +let soundfontUrl = defaultSoundfontUrl; -export const fontloaderConfigMap = persistentMap('strudel-config-fontloader', defaultFontloaderConfig); - -export function setSoundfontUrl(obj) { - fontloaderConfigMap.setKey('soundfontUrl', JSON.stringify(obj)); -} - -export function getSoundfontUrl() { - return JSON.parse(fontloaderConfigMap.get().soundfontUrl); +export function setSoundfontUrl(value) { + soundfontUrl = value; } let loadCache = {}; @@ -31,7 +23,7 @@ async function loadFont(name) { } const load = async () => { // TODO: make soundfont source configurable - const url = `${getSoundfontUrl()}/${name}.js`; + const url = `${soundfontUrl}/${name}.js`; const preset = await fetch(url).then((res) => res.text()); let [_, data] = preset.split('={'); return eval('{' + data); From fde0da3b195c0c2863aca24668fc3e2198504376 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Wed, 3 Apr 2024 22:43:35 +0200 Subject: [PATCH 010/805] dont ignore hydra.mjs in eslint + fix lint --- .eslintignore | 1 - packages/hydra/hydra.mjs | 3 ++- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.eslintignore b/.eslintignore index 7d807b65..9f6d5035 100644 --- a/.eslintignore +++ b/.eslintignore @@ -20,5 +20,4 @@ vite.config.js **/dist /src-tauri/target/**/* reverbGen.mjs -hydra.mjs jsdoc-synonyms.js \ No newline at end of file diff --git a/packages/hydra/hydra.mjs b/packages/hydra/hydra.mjs index 13d08de6..91401034 100644 --- a/packages/hydra/hydra.mjs +++ b/packages/hydra/hydra.mjs @@ -1,5 +1,5 @@ import { getDrawContext } from '@strudel/draw'; -import { controls } from '@strudel/core'; +import { controls, getTime } from '@strudel/core'; let latestOptions; let hydra; @@ -27,6 +27,7 @@ export async function initHydra(options = {}) { hydraConfig.canvas = canvas; await import(/* @vite-ignore */ src); + /* eslint-disable-next-line */ hydra = new Hydra(hydraConfig); if (feedStrudel) { const { canvas } = getDrawContext(); From d06b70c28d3e153a727653c38c3f0b56884e1cba Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Wed, 3 Apr 2024 23:02:42 +0200 Subject: [PATCH 011/805] fix: call setTime in initStrudel + return promise with scheduler --- packages/web/web.mjs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/web/web.mjs b/packages/web/web.mjs index 660acf26..2c07d2a6 100644 --- a/packages/web/web.mjs +++ b/packages/web/web.mjs @@ -5,7 +5,7 @@ export * from '@strudel/transpiler'; export * from '@strudel/mini'; export * from '@strudel/tonal'; export * from '@strudel/webaudio'; -import { Pattern, evalScope } from '@strudel/core'; +import { Pattern, evalScope, setTime } from '@strudel/core'; import { initAudioOnFirstClick, registerSynthSounds, webaudioScheduler } from '@strudel/webaudio'; // import { registerSoundfonts } from '@strudel/soundfonts'; import { evaluate as _evaluate } from '@strudel/transpiler'; @@ -33,11 +33,14 @@ export function initStrudel(options = {}) { miniAllStrings(); const { prebake, ...schedulerOptions } = options; + scheduler = webaudioScheduler(schedulerOptions); initDone = (async () => { await defaultPrebake(); await prebake?.(); + return scheduler; })(); - scheduler = webaudioScheduler(schedulerOptions); + setTime(() => scheduler.now()); + return initDone; } window.initStrudel = initStrudel; From 610c848ff4632b1924f5b78b8651d190e21ae906 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Wed, 3 Apr 2024 23:06:02 +0200 Subject: [PATCH 012/805] fix: reify hydra pattern --- packages/hydra/hydra.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/hydra/hydra.mjs b/packages/hydra/hydra.mjs index 91401034..8f6d9d8e 100644 --- a/packages/hydra/hydra.mjs +++ b/packages/hydra/hydra.mjs @@ -47,4 +47,4 @@ export function clearHydra() { globalThis.shape = controls.shape; } -export const H = (p) => () => p.queryArc(getTime(), getTime())[0].value; +export const H = (p) => () => reify(p).queryArc(getTime(), getTime())[0].value; From 3a4ffb13ad6b7d6f2b394ee3ce72316e57e08e05 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Wed, 3 Apr 2024 23:48:08 +0200 Subject: [PATCH 013/805] add more info on using strings for patterns in web package --- packages/web/README.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/packages/web/README.md b/packages/web/README.md index 8b567729..659c8271 100644 --- a/packages/web/README.md +++ b/packages/web/README.md @@ -72,7 +72,13 @@ document.getElementById('play').addEventListener('stop', There is a tiny difference between the [Strudel REPL](https://strudel.cc/) and `@strudel/web`. In the REPL you can use 'single quotes' for regular JS strings and "double quotes" for mini notation patterns. In `@strudel/web`, it does not matter which types of quotes you're using. -There will probably be an escapte hatch for that in the future. + +This difference means that you cannot call pattern methods on raw strings, for example `"1 2 3".slow(2)`. +To make it work you can either: + +1. Use the `evaluate` function, which behaves exactly like the Strudel REPL, interpreting double quoted strings as mini notation. +2. wrap the string with `m`: `m("1 2 3").slow(2)` +3. wrap the string in a control function: `n("1 2 3").slow(2)` depending on your context. ## More Examples From 915a4d2149ca33943e22ef752088e06cfe6ceb2f Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Wed, 3 Apr 2024 23:53:25 +0200 Subject: [PATCH 014/805] fix: example encoding for testing builds locally without server --- examples/buildless/headless-simple.html | 25 ++++++++---- examples/buildless/headless-with-samples.html | 38 +++++++++++-------- 2 files changed, 40 insertions(+), 23 deletions(-) diff --git a/examples/buildless/headless-simple.html b/examples/buildless/headless-simple.html index 15a56161..768765d6 100644 --- a/examples/buildless/headless-simple.html +++ b/examples/buildless/headless-simple.html @@ -1,9 +1,18 @@ - - - - + + + + + + + + + + + + + diff --git a/examples/buildless/headless-with-samples.html b/examples/buildless/headless-with-samples.html index 18b5e379..1915cd54 100644 --- a/examples/buildless/headless-with-samples.html +++ b/examples/buildless/headless-with-samples.html @@ -1,16 +1,24 @@ - - - - - - + + + + + + + + + + + + + + From 6ff7697cfda05188caabf575fbdc68f425cfc59a Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 4 Apr 2024 00:03:32 +0200 Subject: [PATCH 015/805] fix: use foreground color for pianoroll playhead --- packages/draw/pianoroll.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/draw/pianoroll.mjs b/packages/draw/pianoroll.mjs index 1bdf81c4..247213b4 100644 --- a/packages/draw/pianoroll.mjs +++ b/packages/draw/pianoroll.mjs @@ -108,7 +108,7 @@ export function pianoroll({ active = getTheme().foreground, background = 'transparent', smear = 0, - playheadColor = 'white', + playheadColor = getTheme().foreground, minMidi = 10, maxMidi = 90, autorange = 0, From 18abcaccbb844438b9948f4700079471255e1a9f Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 4 Apr 2024 00:03:43 +0200 Subject: [PATCH 016/805] add fallback theme --- packages/draw/draw.mjs | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/packages/draw/draw.mjs b/packages/draw/draw.mjs index cfd2ce75..81123f46 100644 --- a/packages/draw/draw.mjs +++ b/packages/draw/draw.mjs @@ -191,7 +191,16 @@ export function getComputedPropertyValue(name) { return getComputedStyle(document.documentElement).getPropertyValue(name); } -let theme = {}; +let theme = { + background: '#222', + foreground: '#75baff', + caret: '#ffcc00', + selection: 'rgba(128, 203, 196, 0.5)', + selectionMatch: '#036dd626', + lineHighlight: '#00000050', + gutterBackground: 'transparent', + gutterForeground: '#8a919966', +}; export function getTheme() { return theme; } From ca8707f32a626d250a498987937400cd2bfe9420 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 4 Apr 2024 00:13:37 +0200 Subject: [PATCH 017/805] cooler example --- examples/buildless/headless-simple.html | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/examples/buildless/headless-simple.html b/examples/buildless/headless-simple.html index 768765d6..61533447 100644 --- a/examples/buildless/headless-simple.html +++ b/examples/buildless/headless-simple.html @@ -2,16 +2,29 @@ - - - + + From 0ba4be0571834b7d0729ca2715238f76df7bcd0d Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 4 Apr 2024 00:13:43 +0200 Subject: [PATCH 018/805] bg --- examples/buildless/headless-with-samples.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/buildless/headless-with-samples.html b/examples/buildless/headless-with-samples.html index 1915cd54..3ac6d42e 100644 --- a/examples/buildless/headless-with-samples.html +++ b/examples/buildless/headless-with-samples.html @@ -2,10 +2,10 @@ - - + + From a4897adb831b9ad0e4ed0c53bead73a497b90e52 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 4 Apr 2024 00:38:08 +0200 Subject: [PATCH 019/805] fix: import --- packages/hydra/hydra.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/hydra/hydra.mjs b/packages/hydra/hydra.mjs index 8f6d9d8e..2cb265c2 100644 --- a/packages/hydra/hydra.mjs +++ b/packages/hydra/hydra.mjs @@ -1,5 +1,5 @@ import { getDrawContext } from '@strudel/draw'; -import { controls, getTime } from '@strudel/core'; +import { controls, getTime, reify } from '@strudel/core'; let latestOptions; let hydra; From 5ca9afa9e804d3189fd524a61d42299e4df9f2fe Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Mon, 15 Apr 2024 19:53:12 -0400 Subject: [PATCH 020/805] restored --- website/src/components/Udels/UdelFrame.jsx | 33 ++++++ website/src/components/Udels/Udels.jsx | 115 +++++++++++++++++++++ website/src/layouts/MainLayout.astro | 2 +- website/src/pages/index.astro | 4 +- website/src/pages/udels/index.astro | 12 +++ website/src/repl/Repl.jsx | 7 +- website/src/repl/panel/PatternsTab.jsx | 4 +- website/src/repl/panel/SettingsTab.jsx | 8 +- website/src/repl/util.mjs | 4 + website/src/settings.mjs | 9 +- 10 files changed, 185 insertions(+), 13 deletions(-) create mode 100644 website/src/components/Udels/UdelFrame.jsx create mode 100644 website/src/components/Udels/Udels.jsx create mode 100644 website/src/pages/udels/index.astro diff --git a/website/src/components/Udels/UdelFrame.jsx b/website/src/components/Udels/UdelFrame.jsx new file mode 100644 index 00000000..78d28944 --- /dev/null +++ b/website/src/components/Udels/UdelFrame.jsx @@ -0,0 +1,33 @@ +import { useRef } from 'react'; + +export function UdelFrame({ onEvaluate, hash, instance }) { + const ref = useRef(); + + window.addEventListener('message', (message) => { + const childWindow = ref?.current?.contentWindow; + if (message == null || message.source !== childWindow) { + return; // Skip message in this event listener + } + onEvaluate(message.data); + }); + + const url = new URL(window.location.origin); + url.hash = hash; + url.searchParams.append('instance', instance); + const source = url.toString(); + + return ( + + ); +} diff --git a/website/src/components/Udels/Udels.jsx b/website/src/components/Udels/Udels.jsx new file mode 100644 index 00000000..b2d81ea9 --- /dev/null +++ b/website/src/components/Udels/Udels.jsx @@ -0,0 +1,115 @@ +import { code2hash } from '@strudel/core'; + +import { UdelFrame } from './UdelFrame'; +import { useState } from 'react'; + +function NumberInput({ value, onChange, label = '', min, max }) { + const [localState, setLocalState] = useState(value); + const [isFocused, setIsFocused] = useState(false); + + return ( + + ); +} +const defaultHash = 'c3RhY2soCiAgCik%3D'; + +const getHashesFromUrl = () => { + return window.location.hash?.slice(1).split(','); +}; +const updateURLHashes = (hashes) => { + const newHash = '#' + hashes.join(','); + window.location.hash = newHash; +}; +export function Udels() { + const hashes = getHashesFromUrl(); + + const [numWindows, setNumWindows] = useState(hashes?.length ?? 1); + const numWindowsOnChange = (num) => { + setNumWindows(num); + const hashes = getHashesFromUrl(); + const newHashes = []; + for (let i = 0; i < num; i++) { + newHashes[i] = hashes[i] ?? defaultHash; + } + updateURLHashes(newHashes); + }; + + const onEvaluate = (key, code) => { + const hashes = getHashesFromUrl(); + hashes[key] = code2hash(code); + updateURLHashes(hashes); + }; + // useEffect(() => { + // prebake(); + // }, []); + + return ( +
+
+ +
+
+ {hashes.map((hash, key) => { + return ( + { + onEvaluate(key, code); + }} + hash={hash} + key={key} + /> + ); + })} +
+ {/* */} +
+ ); +} diff --git a/website/src/layouts/MainLayout.astro b/website/src/layouts/MainLayout.astro index 49952a7e..c6f6653c 100644 --- a/website/src/layouts/MainLayout.astro +++ b/website/src/layouts/MainLayout.astro @@ -30,7 +30,7 @@ const githubEditUrl = `${CONFIG.GITHUB_EDIT_URL}/${currentFile}`; - +
diff --git a/website/src/pages/index.astro b/website/src/pages/index.astro index 760cf448..29cf2fad 100644 --- a/website/src/pages/index.astro +++ b/website/src/pages/index.astro @@ -3,12 +3,12 @@ import HeadCommon from '../components/HeadCommon.astro'; import { Repl } from '../repl/Repl'; --- - + Strudel REPL - + diff --git a/website/src/pages/udels/index.astro b/website/src/pages/udels/index.astro new file mode 100644 index 00000000..4ab699e7 --- /dev/null +++ b/website/src/pages/udels/index.astro @@ -0,0 +1,12 @@ +--- +import { Udels } from '../../components/Udels/Udels.jsx'; + + +const { BASE_URL } = import.meta.env; +const baseNoTrailing = BASE_URL.endsWith('/') ? BASE_URL.slice(0, -1) : BASE_URL; +--- + + + + + \ No newline at end of file diff --git a/website/src/repl/Repl.jsx b/website/src/repl/Repl.jsx index 9c472eb4..0c1ad91d 100644 --- a/website/src/repl/Repl.jsx +++ b/website/src/repl/Repl.jsx @@ -34,7 +34,7 @@ import Loader from './Loader'; import { Panel } from './panel/Panel'; import { useStore } from '@nanostores/react'; import { prebake } from './prebake.mjs'; -import { getRandomTune, initCode, loadModules, shareCode, ReplContext } from './util.mjs'; +import { getRandomTune, initCode, loadModules, shareCode, ReplContext, isUdels } from './util.mjs'; import PlayCircleIcon from '@heroicons/react/20/solid/PlayCircleIcon'; import './Repl.css'; import { setInterval, clearInterval } from 'worker-timers'; @@ -221,6 +221,7 @@ export function Repl({ embedded = false }) { handleEvaluate, }; + const showPanel = !isEmbedded || isUdels(); return (
@@ -246,12 +247,12 @@ export function Repl({ embedded = false }) { } }} > - {panelPosition === 'right' && !isEmbedded && } + {panelPosition === 'right' && showPanel && }
{error && (
{error.message || 'Unknown Error :-/'}
)} - {panelPosition === 'bottom' && !isEmbedded && } + {panelPosition === 'bottom' && showPanel && }
); diff --git a/website/src/repl/panel/PatternsTab.jsx b/website/src/repl/panel/PatternsTab.jsx index f6499d79..cacbe897 100644 --- a/website/src/repl/panel/PatternsTab.jsx +++ b/website/src/repl/panel/PatternsTab.jsx @@ -9,7 +9,7 @@ import { import { useMemo } from 'react'; import { getMetadata } from '../../metadata_parser'; import { useExamplePatterns } from '../useExamplePatterns'; -import { parseJSON } from '../util.mjs'; +import { parseJSON, isUdels } from '../util.mjs'; import { ButtonGroup } from './Forms.jsx'; import { settingsMap, useSettings } from '../../settings.mjs'; @@ -99,7 +99,7 @@ export function PatternsTab({ context }) { }; const viewingPatternID = viewingPatternData?.id; - const autoResetPatternOnChange = !window.parent?.location.pathname.includes('oodles'); + const autoResetPatternOnChange = !isUdels(); return (
diff --git a/website/src/repl/panel/SettingsTab.jsx b/website/src/repl/panel/SettingsTab.jsx index ae290189..36ec12bd 100644 --- a/website/src/repl/panel/SettingsTab.jsx +++ b/website/src/repl/panel/SettingsTab.jsx @@ -1,12 +1,13 @@ import { defaultSettings, settingsMap, useSettings } from '../../settings.mjs'; import { themes } from '@strudel/codemirror'; +import { isUdels } from '../util.mjs'; import { ButtonGroup } from './Forms.jsx'; import { AudioDeviceSelector } from './AudioDeviceSelector.jsx'; -function Checkbox({ label, value, onChange }) { +function Checkbox({ label, value, onChange, disabled = false }) { return ( ); @@ -96,7 +97,7 @@ export function SettingsTab({ started }) { panelPosition, audioDeviceName, } = useSettings(); - + const shouldAlwaysSync = isUdels(); return (
{AudioContext.prototype.setSinkId != null && ( @@ -197,6 +198,7 @@ export function SettingsTab({ started }) { window.location.reload(); } }} + disabled={shouldAlwaysSync} value={isSyncEnabled} /> diff --git a/website/src/repl/util.mjs b/website/src/repl/util.mjs index 6dba7dab..67584760 100644 --- a/website/src/repl/util.mjs +++ b/website/src/repl/util.mjs @@ -132,6 +132,10 @@ export async function shareCode(codeToShare) { export const ReplContext = createContext(null); +export const isUdels = () => { + return window.parent?.location.pathname.includes('udels'); +}; + export const getAudioDevices = async () => { await navigator.mediaDevices.getUserMedia({ audio: true }); let mediaDevices = await navigator.mediaDevices.enumerateDevices(); diff --git a/website/src/settings.mjs b/website/src/settings.mjs index a70c4202..3f1ca051 100644 --- a/website/src/settings.mjs +++ b/website/src/settings.mjs @@ -1,6 +1,7 @@ import { persistentMap } from '@nanostores/persistent'; import { useStore } from '@nanostores/react'; import { register } from '@strudel/core'; +import { isUdels } from './repl/util.mjs'; export const defaultAudioDeviceName = 'System Standard'; @@ -28,8 +29,12 @@ export const defaultSettings = { userPatterns: '{}', audioDeviceName: defaultAudioDeviceName, }; +const search = new URLSearchParams(window.location.search); +// if running multiple instance in one window, it will use the settings for that instance. else default to normal +const instance = parseInt(search.get('instance') ?? '0'); +const settings_key = `strudel-settings${instance > 0 ? instance : ''}`; -export const settingsMap = persistentMap('strudel-settings', defaultSettings); +export const settingsMap = persistentMap(settings_key, defaultSettings); const parseBoolean = (booleanlike) => ([true, 'true'].includes(booleanlike) ? true : false); @@ -54,7 +59,7 @@ export function useSettings() { isTooltipEnabled: parseBoolean(state.isTooltipEnabled), isLineWrappingEnabled: parseBoolean(state.isLineWrappingEnabled), isFlashEnabled: parseBoolean(state.isFlashEnabled), - isSyncEnabled: parseBoolean(state.isSyncEnabled), + isSyncEnabled: isUdels() ? true : parseBoolean(state.isSyncEnabled), fontSize: Number(state.fontSize), panelPosition: state.activeFooter !== '' ? state.panelPosition : 'bottom', // <-- keep this 'bottom' where it is! userPatterns: userPatterns, From 6b919132aad0a220fec4c3ec57a2adc40e216207 Mon Sep 17 00:00:00 2001 From: Bernard Gray Date: Sat, 27 Apr 2024 11:18:51 +1000 Subject: [PATCH 021/805] clarify `off` in pattern-effects.mdx I had a bit of difficulty understanding `off` as it was presented, so I've attempted to simplify it: 1. take out the `delay` effect which is obscuring things (since we're using a delayed `off` pattern) 2. add a more complete explanation of the syntax --- website/src/pages/workshop/pattern-effects.mdx | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/website/src/pages/workshop/pattern-effects.mdx b/website/src/pages/workshop/pattern-effects.mdx index f4ced454..d9b65c4f 100644 --- a/website/src/pages/workshop/pattern-effects.mdx +++ b/website/src/pages/workshop/pattern-effects.mdx @@ -145,13 +145,16 @@ Try patterning the `ply` function, for example using `"<1 2 1 3>"` .off(1/16, x=>x.add(4)) //.off(1/8, x=>x.add(7)) ).scale("/2") -.s("triangle").room(.5).ds(".1:0").delay(.5)`} +.s("triangle").room(.5).ds("0.1:0")`} punchcard /> -In the notation `x=>x.`, the `x` is the shifted pattern, which where modifying. +In the notation `.off(1/16, x=>x.add(4))`, says: + - take the original pattern named as `x` + - modify `x` with `.add(4)`, and + - play it offset to the original pattern by `1/16` of a cycle. From 7f22040a0c4b2e723f316e8635bba3691e25a8c0 Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 10:44:58 +0200 Subject: [PATCH 022/805] use sessionStorage instead of localStorage --- website/src/user_pattern_utils.mjs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index 19cba84b..cf849d3a 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -1,5 +1,5 @@ import { atom } from 'nanostores'; -import { persistentAtom } from '@nanostores/persistent'; +import { persistentAtom, setPersistentEngine } from '@nanostores/persistent'; import { useStore } from '@nanostores/react'; import { logger } from '@strudel/core'; import { nanoid } from 'nanoid'; @@ -21,6 +21,10 @@ export const patternFilterName = { user: 'user', }; +if (typeof sessionStorage !== 'undefined') { + setPersistentEngine(sessionStorage); +} + export let $viewingPatternData = persistentAtom( 'viewingPatternData', { From b69b9c37cd7f380db11a05287478356beae28c4d Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 11:01:02 +0200 Subject: [PATCH 023/805] fix events, add comment --- website/src/user_pattern_utils.mjs | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index cf849d3a..b0a19e6a 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -1,5 +1,5 @@ import { atom } from 'nanostores'; -import { persistentAtom, setPersistentEngine } from '@nanostores/persistent'; +import { persistentAtom, setPersistentEngine, windowPersistentEvents } from '@nanostores/persistent'; import { useStore } from '@nanostores/react'; import { logger } from '@strudel/core'; import { nanoid } from 'nanoid'; @@ -22,7 +22,10 @@ export const patternFilterName = { }; if (typeof sessionStorage !== 'undefined') { - setPersistentEngine(sessionStorage); + // NB: this switches storageEngine of all persistent atoms + // ideally we would switch the engine per atom + // (like in this abandoned pr: https://github.com/nanostores/persistent/pull/30) + setPersistentEngine(sessionStorage, windowPersistentEvents); } export let $viewingPatternData = persistentAtom( From 6249631a722da0222a689ae2e595d85371f0b7a5 Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 11:40:09 +0200 Subject: [PATCH 024/805] implement sessionAtom function (same api as persistenAtom, just used sessionStorage instead of localStorage) --- website/src/user_pattern_utils.mjs | 60 ++++++++++++++++++++++++++---- 1 file changed, 52 insertions(+), 8 deletions(-) diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index b0a19e6a..4ce1e7d9 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -1,5 +1,5 @@ -import { atom } from 'nanostores'; -import { persistentAtom, setPersistentEngine, windowPersistentEvents } from '@nanostores/persistent'; +import {atom, onMount} from 'nanostores'; +import { persistentAtom, windowPersistentEvents } from '@nanostores/persistent'; import { useStore } from '@nanostores/react'; import { logger } from '@strudel/core'; import { nanoid } from 'nanoid'; @@ -21,14 +21,58 @@ export const patternFilterName = { user: 'user', }; +export let sessionAtom = persistentAtom; + if (typeof sessionStorage !== 'undefined') { - // NB: this switches storageEngine of all persistent atoms - // ideally we would switch the engine per atom - // (like in this abandoned pr: https://github.com/nanostores/persistent/pull/30) - setPersistentEngine(sessionStorage, windowPersistentEvents); + const identity = a => a; + const eventsEngine = windowPersistentEvents; + sessionAtom = (name, initial = undefined, opts = {}) => { + let encode = opts.encode || identity + let decode = opts.decode || identity + + let store = atom(initial) + + let set = store.set + store.set = newValue => { + if (typeof newValue === 'undefined') { + delete sessionStorage[name] + } else { + sessionStorage[name] = encode(newValue) + } + set(newValue) + } + + function listener(e) { + if (e.key === name) { + if (e.newValue === null) { + set(undefined) + } else { + set(decode(e.newValue)) + } + } else if (!sessionStorage[name]) { + set(undefined) + } + } + + function restore() { + store.set(sessionStorage[name] ? decode(sessionStorage[name]) : initial) + } + + onMount(store, () => { + restore() + if (opts.listen !== false) { + eventsEngine.addEventListener(name, listener, restore) + return () => { + eventsEngine.removeEventListener(name, listener, restore) + } + } + }) + + return store + } } -export let $viewingPatternData = persistentAtom( +export let $viewingPatternData = sessionAtom( 'viewingPatternData', { id: '', @@ -75,7 +119,7 @@ export async function loadDBPatterns() { } // reason: https://github.com/tidalcycles/strudel/issues/857 -const $activePattern = persistentAtom('activePattern', '', { listen: false }); +const $activePattern = sessionAtom('activePattern', '', { listen: false }); export function setActivePattern(key) { $activePattern.set(key); From 6e6a2439c3bfa9f75a0406a3c4ae7febcaf1f9ce Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 12:54:33 +0200 Subject: [PATCH 025/805] simplify implementation --- website/src/user_pattern_utils.mjs | 54 +++++++----------------------- 1 file changed, 13 insertions(+), 41 deletions(-) diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index 4ce1e7d9..08e1ffc6 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -1,5 +1,5 @@ -import {atom, onMount} from 'nanostores'; -import { persistentAtom, windowPersistentEvents } from '@nanostores/persistent'; +import { atom, onMount } from 'nanostores'; +import { persistentAtom } from '@nanostores/persistent'; import { useStore } from '@nanostores/react'; import { logger } from '@strudel/core'; import { nanoid } from 'nanoid'; @@ -24,52 +24,24 @@ export const patternFilterName = { export let sessionAtom = persistentAtom; if (typeof sessionStorage !== 'undefined') { - const identity = a => a; - const eventsEngine = windowPersistentEvents; + const identity = (a) => a; sessionAtom = (name, initial = undefined, opts = {}) => { - let encode = opts.encode || identity - let decode = opts.decode || identity + let encode = opts.encode || identity; + let decode = opts.decode || identity; + if (opts.listen) console.error('sessionAtom does not support "listen" option'); - let store = atom(initial) + let store = atom(sessionStorage[name] ? decode(sessionStorage[name]) : initial); - let set = store.set - store.set = newValue => { + store.listen((newValue) => { if (typeof newValue === 'undefined') { - delete sessionStorage[name] + delete sessionStorage[name]; } else { - sessionStorage[name] = encode(newValue) + sessionStorage[name] = encode(newValue); } - set(newValue) - } + }); - function listener(e) { - if (e.key === name) { - if (e.newValue === null) { - set(undefined) - } else { - set(decode(e.newValue)) - } - } else if (!sessionStorage[name]) { - set(undefined) - } - } - - function restore() { - store.set(sessionStorage[name] ? decode(sessionStorage[name]) : initial) - } - - onMount(store, () => { - restore() - if (opts.listen !== false) { - eventsEngine.addEventListener(name, listener, restore) - return () => { - eventsEngine.removeEventListener(name, listener, restore) - } - } - }) - - return store - } + return store; + }; } export let $viewingPatternData = sessionAtom( From 5dc2ecd741619b91e470daa03e1ba9b47181fb08 Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 12:55:52 +0200 Subject: [PATCH 026/805] cleanup --- website/src/user_pattern_utils.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index 08e1ffc6..a76cf0e5 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -1,4 +1,4 @@ -import { atom, onMount } from 'nanostores'; +import { atom } from 'nanostores'; import { persistentAtom } from '@nanostores/persistent'; import { useStore } from '@nanostores/react'; import { logger } from '@strudel/core'; From 02ea4d111629c8be199ac09a9ed259c4f4e17cda Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 14:52:06 +0200 Subject: [PATCH 027/805] bug fix --- website/src/user_pattern_utils.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index a76cf0e5..9ab23fab 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -30,7 +30,7 @@ if (typeof sessionStorage !== 'undefined') { let decode = opts.decode || identity; if (opts.listen) console.error('sessionAtom does not support "listen" option'); - let store = atom(sessionStorage[name] ? decode(sessionStorage[name]) : initial); + let store = atom(typeof sessionStorage[name] !== 'undefined' ? decode(sessionStorage[name]) : initial); store.listen((newValue) => { if (typeof newValue === 'undefined') { From 33ebf08e81a1373b4b56fecae8ec716f7f296e20 Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 15:20:59 +0200 Subject: [PATCH 028/805] simplify more --- website/src/user_pattern_utils.mjs | 52 +++++++++++------------------- 1 file changed, 19 insertions(+), 33 deletions(-) diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index 9ab23fab..ab2b5f35 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -21,39 +21,25 @@ export const patternFilterName = { user: 'user', }; -export let sessionAtom = persistentAtom; +const sessionAtom = (name, initial = undefined) => { + const storage = typeof sessionStorage !== 'undefined' ? sessionStorage : {}; + const store = atom(typeof storage[name] !== 'undefined' ? storage[name] : initial); + store.listen((newValue) => { + if (typeof newValue === 'undefined') { + delete storage[name]; + } else { + storage[name] = newValue; + } + }); + return store; +}; -if (typeof sessionStorage !== 'undefined') { - const identity = (a) => a; - sessionAtom = (name, initial = undefined, opts = {}) => { - let encode = opts.encode || identity; - let decode = opts.decode || identity; - if (opts.listen) console.error('sessionAtom does not support "listen" option'); - - let store = atom(typeof sessionStorage[name] !== 'undefined' ? decode(sessionStorage[name]) : initial); - - store.listen((newValue) => { - if (typeof newValue === 'undefined') { - delete sessionStorage[name]; - } else { - sessionStorage[name] = encode(newValue); - } - }); - - return store; - }; -} - -export let $viewingPatternData = sessionAtom( - 'viewingPatternData', - { - id: '', - code: '', - collection: collectionName.user, - created_at: Date.now(), - }, - { listen: false }, -); +export let $viewingPatternData = sessionAtom('viewingPatternData', { + id: '', + code: '', + collection: collectionName.user, + created_at: Date.now(), +}); export const getViewingPatternData = () => { return parseJSON($viewingPatternData.get()); @@ -91,7 +77,7 @@ export async function loadDBPatterns() { } // reason: https://github.com/tidalcycles/strudel/issues/857 -const $activePattern = sessionAtom('activePattern', '', { listen: false }); +const $activePattern = sessionAtom('activePattern', ''); export function setActivePattern(key) { $activePattern.set(key); From a5b602250614afce28e71d0f5ea93fe258f554a7 Mon Sep 17 00:00:00 2001 From: Kaspars Date: Tue, 7 May 2024 23:56:39 +0200 Subject: [PATCH 029/805] - fix scale() to allow both n() and note() at the same time - fix scale() to allow scale names without tonic and then default it to C --- packages/tonal/test/tonal.test.mjs | 15 +++++++++++++++ packages/tonal/tonal.mjs | 7 ++----- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/packages/tonal/test/tonal.test.mjs b/packages/tonal/test/tonal.test.mjs index 8dd0e186..968534c8 100644 --- a/packages/tonal/test/tonal.test.mjs +++ b/packages/tonal/test/tonal.test.mjs @@ -30,6 +30,14 @@ describe('tonal', () => { .firstCycleValues.map((h) => h.note), ).toEqual(['C3', 'D3', 'E3']); }); + it('scale with n and note values', () => { + expect( + n(0, 1, 2) + .note(3, 4, 5) + .scale('C major') + .firstCycleValues.map((h) => h.note), + ).toEqual(['F3', 'G3', 'A3']); + }); it('scale with colon', () => { expect( n(0, 1, 2) @@ -37,6 +45,13 @@ describe('tonal', () => { .firstCycleValues.map((h) => h.note), ).toEqual(['C3', 'D3', 'E3']); }); + it('scale without tonic', () => { + expect( + n(0, 1, 2) + .scale('major') + .firstCycleValues.map((h) => h.note), + ).toEqual(['C3', 'D3', 'E3']); + }); it('scale with mininotation colon', () => { expect( n(0, 1, 2) diff --git a/packages/tonal/tonal.mjs b/packages/tonal/tonal.mjs index 4c25d23e..012a0fc2 100644 --- a/packages/tonal/tonal.mjs +++ b/packages/tonal/tonal.mjs @@ -14,7 +14,7 @@ function scaleStep(step, scale) { scale = scale.replaceAll(':', ' '); step = Math.ceil(step); let { intervals, tonic, empty } = Scale.get(scale); - if ((empty && isNote(scale)) || (!empty && !tonic)) { + if ((empty && isNote(scale)) || (empty && !tonic)) { throw new Error(`incomplete scale. Make sure to use ":" instead of spaces, example: .scale("C:major")`); } else if (empty) { throw new Error(`invalid scale "${scale}"`); @@ -199,10 +199,7 @@ export const scale = register( pat .fmap((value) => { const isObject = typeof value === 'object'; - let step = isObject ? value.n : value; - if (isObject) { - delete value.n; // remove n so it won't cause trouble - } + let step = isObject ? (value.note ?? value.n) : value; if (isNote(step)) { // legacy.. return pure(step); From 4e6d39666a7474f44e28c8e56b9c4f719f88b198 Mon Sep 17 00:00:00 2001 From: Kaspars Date: Wed, 8 May 2024 00:00:58 +0200 Subject: [PATCH 030/805] codeformat --- packages/tonal/test/tonal.test.mjs | 14 +++++++------- packages/tonal/tonal.mjs | 2 +- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/tonal/test/tonal.test.mjs b/packages/tonal/test/tonal.test.mjs index 968534c8..647fed80 100644 --- a/packages/tonal/test/tonal.test.mjs +++ b/packages/tonal/test/tonal.test.mjs @@ -32,10 +32,10 @@ describe('tonal', () => { }); it('scale with n and note values', () => { expect( - n(0, 1, 2) - .note(3, 4, 5) - .scale('C major') - .firstCycleValues.map((h) => h.note), + n(0, 1, 2) + .note(3, 4, 5) + .scale('C major') + .firstCycleValues.map((h) => h.note), ).toEqual(['F3', 'G3', 'A3']); }); it('scale with colon', () => { @@ -47,9 +47,9 @@ describe('tonal', () => { }); it('scale without tonic', () => { expect( - n(0, 1, 2) - .scale('major') - .firstCycleValues.map((h) => h.note), + n(0, 1, 2) + .scale('major') + .firstCycleValues.map((h) => h.note), ).toEqual(['C3', 'D3', 'E3']); }); it('scale with mininotation colon', () => { diff --git a/packages/tonal/tonal.mjs b/packages/tonal/tonal.mjs index 012a0fc2..29691d19 100644 --- a/packages/tonal/tonal.mjs +++ b/packages/tonal/tonal.mjs @@ -199,7 +199,7 @@ export const scale = register( pat .fmap((value) => { const isObject = typeof value === 'object'; - let step = isObject ? (value.note ?? value.n) : value; + let step = isObject ? value.note ?? value.n : value; if (isNote(step)) { // legacy.. return pure(step); From 33a73c37bc5caf29c7e1f04dbe26501b5727d5f9 Mon Sep 17 00:00:00 2001 From: Kaspars Date: Wed, 8 May 2024 00:46:27 +0200 Subject: [PATCH 031/805] fix tests --- packages/tonal/tonal.mjs | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/packages/tonal/tonal.mjs b/packages/tonal/tonal.mjs index 29691d19..acf35a59 100644 --- a/packages/tonal/tonal.mjs +++ b/packages/tonal/tonal.mjs @@ -199,7 +199,15 @@ export const scale = register( pat .fmap((value) => { const isObject = typeof value === 'object'; - let step = isObject ? value.note ?? value.n : value; + let step = value; + if (isObject) { + if (value.note) { + step = value.note; + } else { + step = value.n; + delete value.n; // remove n so it won't cause trouble + } + } if (isNote(step)) { // legacy.. return pure(step); From a4f10d533947f0e6b735e3cfaa40e87439d7e4ee Mon Sep 17 00:00:00 2001 From: Kaspars Date: Wed, 8 May 2024 10:38:06 +0200 Subject: [PATCH 032/805] bug fix --- packages/tonal/test/tonal.test.mjs | 6 +++--- packages/tonal/tonal.mjs | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/tonal/test/tonal.test.mjs b/packages/tonal/test/tonal.test.mjs index 647fed80..73c4de15 100644 --- a/packages/tonal/test/tonal.test.mjs +++ b/packages/tonal/test/tonal.test.mjs @@ -33,10 +33,10 @@ describe('tonal', () => { it('scale with n and note values', () => { expect( n(0, 1, 2) - .note(3, 4, 5) + .note(3, 4, 0) .scale('C major') - .firstCycleValues.map((h) => h.note), - ).toEqual(['F3', 'G3', 'A3']); + .firstCycleValues.map((h) => [h.n, h.note]), + ).toEqual([[0, 'F3'], [1, 'G3'], [2, 'C3']]); }); it('scale with colon', () => { expect( diff --git a/packages/tonal/tonal.mjs b/packages/tonal/tonal.mjs index acf35a59..dd723c2d 100644 --- a/packages/tonal/tonal.mjs +++ b/packages/tonal/tonal.mjs @@ -201,7 +201,7 @@ export const scale = register( const isObject = typeof value === 'object'; let step = value; if (isObject) { - if (value.note) { + if (typeof value.note !== 'undefined') { step = value.note; } else { step = value.n; From 8d8b8ab99ed1a18c7b43c6368c1aefcb65988f0e Mon Sep 17 00:00:00 2001 From: Kaspars Date: Wed, 8 May 2024 10:42:06 +0200 Subject: [PATCH 033/805] codeformat --- packages/tonal/test/tonal.test.mjs | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/tonal/test/tonal.test.mjs b/packages/tonal/test/tonal.test.mjs index 73c4de15..755b1632 100644 --- a/packages/tonal/test/tonal.test.mjs +++ b/packages/tonal/test/tonal.test.mjs @@ -36,7 +36,11 @@ describe('tonal', () => { .note(3, 4, 0) .scale('C major') .firstCycleValues.map((h) => [h.n, h.note]), - ).toEqual([[0, 'F3'], [1, 'G3'], [2, 'C3']]); + ).toEqual([ + [0, 'F3'], + [1, 'G3'], + [2, 'C3'], + ]); }); it('scale with colon', () => { expect( From a69563cb9ba1f9104c1099a205052c5c783b580f Mon Sep 17 00:00:00 2001 From: Kaspars Jaudzems Date: Sun, 12 May 2024 19:23:08 +0300 Subject: [PATCH 034/805] repl: set document.title from @title (#1090) * fixes #811 set document.title from @title --- website/src/repl/Repl.jsx | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/website/src/repl/Repl.jsx b/website/src/repl/Repl.jsx index 9c472eb4..d709d058 100644 --- a/website/src/repl/Repl.jsx +++ b/website/src/repl/Repl.jsx @@ -38,6 +38,7 @@ import { getRandomTune, initCode, loadModules, shareCode, ReplContext } from './ import PlayCircleIcon from '@heroicons/react/20/solid/PlayCircleIcon'; import './Repl.css'; import { setInterval, clearInterval } from 'worker-timers'; +import { getMetadata } from '../metadata_parser'; const { latestCode } = settingsMap.get(); @@ -91,6 +92,7 @@ export function Repl({ embedded = false }) { const { code } = all; setLatestCode(code); window.location.hash = '#' + code2hash(code); + setDocumentTitle(code); const viewingPatternData = getViewingPatternData(); const data = { ...viewingPatternData, code }; let id = data.id; @@ -116,18 +118,20 @@ export function Repl({ embedded = false }) { // init settings initCode().then(async (decoded) => { - let msg; + let code, msg; if (decoded) { - editor.setCode(decoded); + code = decoded; msg = `I have loaded the code from the URL.`; } else if (latestCode) { - editor.setCode(latestCode); + code = latestCode; msg = `Your last session has been loaded!`; } else { const { code: randomTune, name } = await getRandomTune(); - editor.setCode(randomTune); + code = randomTune; msg = `A random code snippet named "${name}" has been loaded!`; } + editor.setCode(code); + setDocumentTitle(code); logger(`Welcome to Strudel! ${msg} Press play or hit ctrl+enter to run it!`, 'highlight'); }); @@ -170,6 +174,11 @@ export function Repl({ embedded = false }) { // UI Actions // + const setDocumentTitle = (code) => { + const meta = getMetadata(code); + document.title = (meta.title ? `${meta.title} - ` : '') + 'Strudel REPL'; + }; + const handleTogglePlay = async () => { editorRef.current?.toggle(); }; From e268802f3cb268cf6cdec6aa7fd60abd61522b1d Mon Sep 17 00:00:00 2001 From: Kaspars Jaudzems Date: Mon, 13 May 2024 11:10:34 +0300 Subject: [PATCH 035/805] OSC/SuperDirt fixes (#1093) * If note is a midi note, and it's sent together with octave to SuperDirt, then that will be wrong. instead we should to midinote whenever sure that it's a midi note. * mapbank to work like tidal's drumFrom * roomsize is size in SuperDirt * fix tidal-sniffer * export `registerControl` (but see #1098) --- packages/core/controls.mjs | 2 +- packages/osc/osc.mjs | 12 ++++++++++-- packages/osc/tidal-sniffer.js | 2 +- 3 files changed, 12 insertions(+), 4 deletions(-) diff --git a/packages/core/controls.mjs b/packages/core/controls.mjs index 166f0ac2..d5dbef13 100644 --- a/packages/core/controls.mjs +++ b/packages/core/controls.mjs @@ -47,7 +47,7 @@ export function createParam(names) { return func; } -function registerControl(names, ...aliases) { +export function registerControl(names, ...aliases) { const name = Array.isArray(names) ? names[0] : names; let bag = {}; bag[name] = createParam(names); diff --git a/packages/osc/osc.mjs b/packages/osc/osc.mjs index 5552a1c1..422e56da 100644 --- a/packages/osc/osc.mjs +++ b/packages/osc/osc.mjs @@ -6,7 +6,7 @@ This program is free software: you can redistribute it and/or modify it under th import OSC from 'osc-js'; -import { logger, parseNumeral, Pattern, getEventOffsetMs } from '@strudel/core'; +import { logger, parseNumeral, Pattern, getEventOffsetMs, isNote, noteToMidi } from '@strudel/core'; let connection; // Promise function connect() { @@ -52,7 +52,15 @@ Pattern.prototype.osc = function () { const controls = Object.assign({}, { cps, cycle, delta }, hap.value); // make sure n and note are numbers controls.n && (controls.n = parseNumeral(controls.n)); - controls.note && (controls.note = parseNumeral(controls.note)); + if (typeof controls.note !== 'undefined') { + if (isNote(controls.note)) { + controls.midinote = noteToMidi(controls.note, controls.octave || 3); + } else { + controls.note = parseNumeral(controls.note); + } + } + controls.bank && (controls.s = controls.bank + controls.s); + controls.roomsize && (controls.size = parseNumeral(controls.roomsize)); const keyvals = Object.entries(controls).flat(); // time should be audio time of onset // currentTime should be current time of audio context (slightly before time) diff --git a/packages/osc/tidal-sniffer.js b/packages/osc/tidal-sniffer.js index 2cbb15e6..10bf0ad0 100644 --- a/packages/osc/tidal-sniffer.js +++ b/packages/osc/tidal-sniffer.js @@ -4,7 +4,7 @@ Copyright (C) 2022 Strudel contributors - see . */ -const OSC = require('osc-js'); +import OSC from 'osc-js'; const config = { receiver: 'ws', // @param {string} Where messages sent via 'send' method will be delivered to, 'ws' for Websocket clients, 'udp' for udp client From 95ae5191ceedfdaae1f85b8e5ed34926129bb9fa Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 03:36:35 +0200 Subject: [PATCH 036/805] begin "understanding voicings" --- website/src/config.ts | 1 + website/src/pages/understand/voicings.mdx | 196 ++++++++++++++++++++++ 2 files changed, 197 insertions(+) create mode 100644 website/src/pages/understand/voicings.mdx diff --git a/website/src/config.ts b/website/src/config.ts index 9dee2aac..f85d60d8 100644 --- a/website/src/config.ts +++ b/website/src/config.ts @@ -99,6 +99,7 @@ export const SIDEBAR: Sidebar = { { text: 'Coding syntax', link: 'learn/code' }, { text: 'Pitch', link: 'understand/pitch' }, { text: 'Cycles', link: 'understand/cycles' }, + { text: 'Voicings', link: 'understand/voicings' }, { text: 'Pattern Alignment', link: 'technical-manual/alignment' }, { text: 'Strudel vs Tidal', link: 'learn/strudel-vs-tidal' }, ], diff --git a/website/src/pages/understand/voicings.mdx b/website/src/pages/understand/voicings.mdx new file mode 100644 index 00000000..a36ecd8a --- /dev/null +++ b/website/src/pages/understand/voicings.mdx @@ -0,0 +1,196 @@ +--- +title: Understanding Chod Voicings +layout: ../../layouts/MainLayout.astro +--- + +import { MiniRepl } from '../../docs/MiniRepl'; +import { PitchSlider } from '../../components/PitchSlider'; +import Box from '@components/Box.astro'; + +# Understanding Chords and Voicings + +Let's dig deeper into how chords and voicings work. +I'll try to keep theory jargon to a minimum, so hopefully this is approachable for anyone interested. + +## What is a chord + +Playing more than one note at a time is generally called a chord. Here's an example: + +").room(.5)`} /> + +Here's the same with midi numbers: + +").room(.5)`} /> + +Here, we have two 3-note chords played in a loop. +You could already stop here and write chords in this style, which is totally fine and gives you control over individual notes. +One downside is that it can be difficult to find good sounding chords and maybe you're yearning for a way to organize chords in some other way.. + +## Labeling Chords + +Chords are typically given different labels depending on the relationship of the notes within. +In the number example above, we have `48,51,55` and `53,57,60`. + +To analyze the relationship of those notes, they are typically compared to some `root`, which is often the lowest note. +In our case, the `roots` would be `48` (= `c3`) and `53` (= `f3`). +We can express the same chords relative to those `roots` like this: + +".add("<48 53>")).room(.5)`} /> + +Now within each chord, each number represents the distance from the root. +A distance between pitches is typically called `interval`, but let's stick to distance for now. + +Now we can see that our 2 chords are actually quite similar, as the only difference is the middle note (and the root of course). +They are part of a group of chords called `triads` which are chords with 3 notes. + +### Triads + +These 4 shapes are the most common types of `triads` you will encounter: + +| shape | label | +| ----- | ---------- | +| 0,3,6 | diminished | +| 0,3,7 | minor | +| 0,4,7 | major | +| 0,4,8 | augmented | + +Here they are in succession: + +".add("60")) +.room(.5)._pitchwheel()`} +/> + +Many types of music often only use minor and major chords, so we already have the knowledge to accompany songs. Here's one: + +\`.add(\`< +a c d f +a e a e +>\`)).room(.5)`} +/> + +These are the chords for "The house of the rising sun" by The Animals. +So far it doesn't sound too exiting but at least it's recognizable.. + +## Voicings + +A `voicing` is one of many ways a certain chord shape could be played. +The term comes from choral music, where chords can be sung in different ways by changing which voice sings which note. +For example we could add 12 to one or more notes in the chord: + +".add("48")) +.room(.5)`} +/> + +Notes that are 12 steps apart (= 1 `octave`) are considered to be equal in a harmonic sense, which is why they get the same note letter. +Here's the same example with note letterns: + +") +.room(.5)`} +/> + +This type of voicings are also called `inversions`. There are many other ways we could `voice` this minor chord: + +".add("48")) +.room(.5)`} +/> + +Here we are changing the flavour of the chord slightly by + +1. doubling notes 12 steps higher, +2. using very wide distances +3. omitting notes + +## Voice Leading + +Let's revisit "The House of the Rising Sun", this time using our newly acquired voicing techniques: + +\`.add(\`< +a c d f +a e a e +>\`)).room(.5)`} + punchcard +/> + +These voicings make the chords sound more connected and less jumpy, compared to the version without voicings. +The way chords interact is also called voice leading, reminiscent of how a choir voice would move through a sequence of chords. + +For example, try singing the top voice in the above example. Then try the same on the example without voice leading. Which one's easier? + +Naturally, there are many ways a progression of chords could be voiced and there is no clear right or wrong. + +## Chord Symbols + +Musicians playing chord-based music often rely on a so called lead sheet, which is a simplified notation of a music piece. +The chords in those lead sheets are notated with symbols that allow a piece to be notated in a very concise manner. +A common way to write the chords "The House of the Rising Sun" would be: + +``` +Am | C | D | F +Am | E | Am | E +``` + +Here, each symbol consists of the `root` of the chord and optionally an `m` to signal it's a minor chord (just the root note means it's major). +We could mirror that notation in strudel using the `pick` function: + +" + .pick({ + Am: "57,60,64", + C: "55,60,64", + D: "50,57,66", + F: "57,60,65", + E: "56,59,64", + }) + .note().room(.5)`} + punchcard +/> + +## The voicing function + +Coming up with good sounding voicings that connect well can be a difficult and time consuming process. +The `chord` and `voicing` functions can be used to automate that: + +").voicing().room(.5)`} punchcard /> + +Here we're also using chord symbols but the voicings will be automatically generated with smooth voice leading. + +## Voicing Dictionaries + +The voicing function internally uses so called `voicing dictionaries`, which can also be customized: + +") + .dict('house').anchor(66) + .voicing().room(.5)`} + punchcard +/> + +In a `voicing dictionary`, each chord symbol is assigned one or more voicings. +The `voicing` function then picks the voicing that is closest to the `anchor` (defaults to `c5`). + +The handy thing about this approach is that a `voicing dictionary` can be used to play any chord progression with automated voice leading! From 83e46037d2b0156e6270ab2f46d533e4bb61d091 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 08:59:07 +0200 Subject: [PATCH 037/805] typo --- website/src/pages/understand/timbre.mdx | 12 ++++++++++++ website/src/pages/understand/voicings.mdx | 2 +- 2 files changed, 13 insertions(+), 1 deletion(-) create mode 100644 website/src/pages/understand/timbre.mdx diff --git a/website/src/pages/understand/timbre.mdx b/website/src/pages/understand/timbre.mdx new file mode 100644 index 00000000..47a8e299 --- /dev/null +++ b/website/src/pages/understand/timbre.mdx @@ -0,0 +1,12 @@ +--- +title: Understanding Timbre +layout: ../../layouts/MainLayout.astro +--- + +import { MiniRepl } from '../../docs/MiniRepl'; +import { PitchSlider } from '../../components/PitchSlider'; +import Box from '@components/Box.astro'; + +# Understanding Timbre + +Let's learn what timbre is! diff --git a/website/src/pages/understand/voicings.mdx b/website/src/pages/understand/voicings.mdx index a36ecd8a..d66e075e 100644 --- a/website/src/pages/understand/voicings.mdx +++ b/website/src/pages/understand/voicings.mdx @@ -1,5 +1,5 @@ --- -title: Understanding Chod Voicings +title: Understanding Chord Voicings layout: ../../layouts/MainLayout.astro --- From 73d49f152af197bcd7e16ac1b0ac75193e3fcf5d Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 10:52:54 +0200 Subject: [PATCH 038/805] refactor sampler: - delegate getSampleBufferSource logic to getSampleInfo + getSampleBuffer - move buffer logic up from onTriggerSample to those functions --- packages/superdough/sampler.mjs | 115 ++++++++++++++++------------- packages/superdough/superdough.mjs | 1 + 2 files changed, 65 insertions(+), 51 deletions(-) diff --git a/packages/superdough/sampler.mjs b/packages/superdough/sampler.mjs index 10087fc6..4e9b8a34 100644 --- a/packages/superdough/sampler.mjs +++ b/packages/superdough/sampler.mjs @@ -22,47 +22,79 @@ function humanFileSize(bytes, si) { return bytes.toFixed(1) + ' ' + units[u]; } -export const getSampleBufferSource = async (s, n, note, speed, freq, bank, resolveUrl) => { - let transpose = 0; - if (freq !== undefined && note !== undefined) { - logger('[sampler] hap has note and freq. ignoring note', 'warning'); - } - let midi = valueToMidi({ freq, note }, 36); - transpose = midi - 36; // C3 is middle C - - const ac = getAudioContext(); - +// deduces relevant info for sample loading from hap.value and sample definition +// it encapsulates the core sampler logic into a pure and synchronous function +// hapValue: Hap.value, samples: sample definition for sound "s" (values in strudel.json format) +export function getSampleInfo(hapValue, samples) { + const { s, n = 0, speed = 1.0 } = hapValue; + let midi = valueToMidi(hapValue, 36); + let transpose = midi - 36; // C3 is middle C; let sampleUrl; let index = 0; - if (Array.isArray(bank)) { - index = getSoundIndex(n, bank.length); - sampleUrl = bank[index]; + if (Array.isArray(samples)) { + index = getSoundIndex(n, samples.length); + sampleUrl = samples[index]; } else { const midiDiff = (noteA) => noteToMidi(noteA) - midi; // object format will expect keys as notes - const closest = Object.keys(bank) + const closest = Object.keys(samples) .filter((k) => !k.startsWith('_')) .reduce( (closest, key, j) => (!closest || Math.abs(midiDiff(key)) < Math.abs(midiDiff(closest)) ? key : closest), null, ); transpose = -midiDiff(closest); // semitones to repitch - index = getSoundIndex(n, bank[closest].length); - sampleUrl = bank[closest][index]; + index = getSoundIndex(n, samples[closest].length); + sampleUrl = samples[closest][index]; } + const label = `${s}:${index}`; + let playbackRate = Math.abs(speed) * Math.pow(2, transpose / 12); + return { transpose, sampleUrl, index, midi, label, playbackRate }; +} + +// takes hapValue and returns buffer + playbackRate. +export const getSampleBuffer = async (hapValue, samples, resolveUrl) => { + let { sampleUrl, label, playbackRate } = getSampleInfo(hapValue, samples); if (resolveUrl) { sampleUrl = await resolveUrl(sampleUrl); } - let buffer = await loadBuffer(sampleUrl, ac, s, index); + const ac = getAudioContext(); + const buffer = await loadBuffer(sampleUrl, ac, label); + + if (hapValue.unit === 'c') { + playbackRate = playbackRate * buffer.duration; + } + return { buffer, playbackRate }; +}; + +// creates playback ready AudioBufferSourceNode from hapValue +export const getSampleBufferSource = async (hapValue, samples, resolveUrl) => { + let { buffer, playbackRate } = await getSampleBuffer(hapValue, samples, resolveUrl); if (speed < 0) { // should this be cached? buffer = reverseBuffer(buffer); } + const ac = getAudioContext(); const bufferSource = ac.createBufferSource(); bufferSource.buffer = buffer; - const playbackRate = 1.0 * Math.pow(2, transpose / 12); bufferSource.playbackRate.value = playbackRate; - return bufferSource; + + const { s, loopBegin = 0, loopEnd = 1, begin = 0, end = 1 } = hapValue; + + // "The computation of the offset into the sound is performed using the sound buffer's natural sample rate, + // rather than the current playback rate, so even if the sound is playing at twice its normal speed, + // the midway point through a 10-second audio buffer is still 5." + const offset = begin * bufferSource.buffer.duration; + // sound names starting with wt_ are looped automatically (wt = wavetable) + const loop = s.startsWith('wt_') ? 1 : hapValue.loop; + if (loop) { + bufferSource.loop = true; + bufferSource.loopStart = loopBegin * bufferSource.buffer.duration - offset; + bufferSource.loopEnd = loopEnd * bufferSource.buffer.duration - offset; + } + const bufferDuration = bufferSource.buffer.duration / bufferSource.playbackRate.value; + const sliceDuration = (end - begin) * bufferDuration; + return { bufferSource, offset, bufferDuration, sliceDuration }; }; export const loadBuffer = (url, ac, s, n = 0) => { @@ -246,41 +278,29 @@ export const samples = async (sampleMap, baseUrl = sampleMap._base || '', option const cutGroups = []; -export async function onTriggerSample(t, value, onended, bank, resolveUrl) { +export async function onTriggerSample(t, value, onended, samples, resolveUrl) { let { s, - freq, - unit, nudge = 0, // TODO: is this in seconds? cut, loop, clip = undefined, // if set, samples will be cut off when the hap ends n = 0, - note, speed = 1, // sample playback speed - loopBegin = 0, - begin = 0, - loopEnd = 1, - end = 1, duration, } = value; + // load sample if (speed === 0) { // no playback return; } - loop = s.startsWith('wt_') ? 1 : value.loop; const ac = getAudioContext(); + // destructure adsr here, because the default should be different for synths and samples - let [attack, decay, sustain, release] = getADSRValues([value.attack, value.decay, value.sustain, value.release]); - //const soundfont = getSoundfontKey(s); - const time = t + nudge; - const bufferSource = await getSampleBufferSource(s, n, note, speed, freq, bank, resolveUrl); - - // vibrato - let vibratoOscillator = getVibratoOscillator(bufferSource.detune, value, t); + const { bufferSource, sliceDuration, offset } = await getSampleBufferSource(value, samples, resolveUrl); // asny stuff above took too long? if (ac.currentTime > t) { @@ -292,26 +312,19 @@ export async function onTriggerSample(t, value, onended, bank, resolveUrl) { logger(`[sampler] could not load "${s}:${n}"`, 'error'); return; } - bufferSource.playbackRate.value = Math.abs(speed) * bufferSource.playbackRate.value; - if (unit === 'c') { - // are there other units? - bufferSource.playbackRate.value = bufferSource.playbackRate.value * bufferSource.buffer.duration * 1; //cps; - } - // "The computation of the offset into the sound is performed using the sound buffer's natural sample rate, - // rather than the current playback rate, so even if the sound is playing at twice its normal speed, - // the midway point through a 10-second audio buffer is still 5." - const offset = begin * bufferSource.buffer.duration; - if (loop) { - bufferSource.loop = true; - bufferSource.loopStart = loopBegin * bufferSource.buffer.duration - offset; - bufferSource.loopEnd = loopEnd * bufferSource.buffer.duration - offset; - } + + // vibrato + let vibratoOscillator = getVibratoOscillator(bufferSource.detune, value, t); + + const time = t + nudge; bufferSource.start(time, offset); + const envGain = ac.createGain(); const node = bufferSource.connect(envGain); + + // if none of these controls is set, the duration of the sound will be set to the duration of the sample slice if (clip == null && loop == null && value.release == null) { - const bufferDuration = bufferSource.buffer.duration / bufferSource.playbackRate.value; - duration = (end - begin) * bufferDuration; + duration = sliceDuration; } let holdEnd = t + duration; diff --git a/packages/superdough/superdough.mjs b/packages/superdough/superdough.mjs index c0ba96e0..ebb54863 100644 --- a/packages/superdough/superdough.mjs +++ b/packages/superdough/superdough.mjs @@ -362,6 +362,7 @@ export const superdough = async (value, t, hapDuration) => { }; if (bank && s) { s = `${bank}_${s}`; + value.s = s; } // get source AudioNode From 4ade86f75ce012ea6eff0617d07108ee058bb037 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 10:59:57 +0200 Subject: [PATCH 039/805] hotfix: rebuild parser to remove logs --- packages/mini/krill-parser.js | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/packages/mini/krill-parser.js b/packages/mini/krill-parser.js index 1cdd3486..0a062f46 100644 --- a/packages/mini/krill-parser.js +++ b/packages/mini/krill-parser.js @@ -295,13 +295,12 @@ function peg$parse(input, options) { var peg$f6 = function(a) { return a }; var peg$f7 = function(s) { s.arguments_.alignment = 'polymeter_slowcat'; return s; }; var peg$f8 = function(a) { return x => x.options_['weight'] = (x.options_['weight'] ?? 1) + (a ?? 2) - 1 }; - var peg$f9 = function(a) { return x => {const reps = (x.options_['reps'] ?? 1) + (a ?? 2) - 1; + var peg$f9 = function(a) { return x => {// A bit fiddly, to support both x!4 and x!!! as equivalent.. + const reps = (x.options_['reps'] ?? 1) + (a ?? 2) - 1; x.options_['reps'] = reps; - console.log("reps: ", reps) x.options_['ops'] = x.options_['ops'].filter(x => x.type_ !== "replicate"); x.options_['ops'].push({ type_: "replicate", arguments_ :{ amount:reps }}); x.options_['weight'] = reps; - console.log("options: ", x.options_); } }; var peg$f10 = function(p, s, r) { return x => x.options_['ops'].push({ type_: "bjorklund", arguments_ :{ pulse: p, step:s, rotation:r }}) }; From 226cf356d6e509e41edf555037767bfaf67f8e51 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 11:05:38 +0200 Subject: [PATCH 040/805] fix: lint --- packages/superdough/sampler.mjs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/superdough/sampler.mjs b/packages/superdough/sampler.mjs index 4e9b8a34..552821da 100644 --- a/packages/superdough/sampler.mjs +++ b/packages/superdough/sampler.mjs @@ -70,7 +70,7 @@ export const getSampleBuffer = async (hapValue, samples, resolveUrl) => { // creates playback ready AudioBufferSourceNode from hapValue export const getSampleBufferSource = async (hapValue, samples, resolveUrl) => { let { buffer, playbackRate } = await getSampleBuffer(hapValue, samples, resolveUrl); - if (speed < 0) { + if (hapValue.speed < 0) { // should this be cached? buffer = reverseBuffer(buffer); } @@ -85,7 +85,7 @@ export const getSampleBufferSource = async (hapValue, samples, resolveUrl) => { // rather than the current playback rate, so even if the sound is playing at twice its normal speed, // the midway point through a 10-second audio buffer is still 5." const offset = begin * bufferSource.buffer.duration; - // sound names starting with wt_ are looped automatically (wt = wavetable) + const loop = s.startsWith('wt_') ? 1 : hapValue.loop; if (loop) { bufferSource.loop = true; From 179931be88056cac4cb4d35579637a2e37c1eec4 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 14:10:42 +0200 Subject: [PATCH 041/805] fix lockfile: reset to main one --- pnpm-lock.yaml | 98 ++------------------------------------------------ 1 file changed, 3 insertions(+), 95 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0a085314..de4f9185 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -251,31 +251,6 @@ importers: packages/embed: {} - packages/haskell: - dependencies: - '@hpcc-js/wasm': - specifier: ^2.15.3 - version: 2.15.3 - jgf-dot: - specifier: ^1.1.1 - version: 1.1.1 - web-tree-sitter: - specifier: ^0.20.8 - version: 0.20.8 - devDependencies: - tree-sitter: - specifier: ^0.20.6 - version: 0.20.6 - tree-sitter-cli: - specifier: ^0.20.8 - version: 0.20.8 - tree-sitter-javascript: - specifier: ^0.20.1 - version: 0.20.1 - vite: - specifier: ^5.0.8 - version: 5.0.10 - packages/hydra: dependencies: '@strudel/core': @@ -8228,33 +8203,6 @@ packages: /graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - /graphlib-dot@0.6.4: - resolution: {integrity: sha512-rdhDTu0mBlloTpFMfkQq+e3y4yL22OqP5MhQbkw6QUURqa+4YLgv3XZy2fA64wdEcJNZ+waI76URemVgdFtzng==} - dependencies: - graphlib: 2.1.8 - lodash: 4.17.21 - dev: false - - /graphlib-json-graph@1.0.0: - resolution: {integrity: sha512-sJsFuthZnSL5knaDDZhDx8fg1Zy5t/7ZqVHiytoeSzezGhMoSFD3T3K5YQakKFEyXtYjOzbnvsyr2qo+6/qq/Q==} - dependencies: - graphlib: 1.0.7 - par: 0.3.0 - prop: 0.1.1 - dev: false - - /graphlib@1.0.7: - resolution: {integrity: sha512-jNb7RbqTIRyZRmcVCxGefOlGWjNdbjcT2tFj36zhnRa8yhAlOvydh9nBixfLQIqSU+DwCx47tg3ysw8NIYhpsA==} - dependencies: - lodash: 3.10.1 - dev: false - - /graphlib@2.1.8: - resolution: {integrity: sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==} - dependencies: - lodash: 4.17.21 - dev: false - /gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} @@ -9610,12 +9558,9 @@ packages: resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} dev: true - /lodash@3.10.1: - resolution: {integrity: sha512-9mDDwqVIma6OZX79ZlDACZl8sBm0TEnkf99zV3iMA4GzkIT/9hiqP5mY0HoT1iNLCrKc/R1HByV+yJfRWVJryQ==} - dev: false - /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + dev: true /log-symbols@4.1.0: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} @@ -11321,11 +11266,6 @@ packages: - supports-color dev: true - /par@0.3.0: - resolution: {integrity: sha512-6V910zFAoHnxjX6ILkwbQcpIkD3KI2gBAPfCtZQNaJTvTxgIoKXSwDQIE3ty0zbOGdBXHRnl6rd66a5jj12pfw==} - engines: {node: '>=0.6'} - dev: false - /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -11661,21 +11601,12 @@ packages: picocolors: 1.0.0 source-map-js: 1.2.0 - /postcss@8.4.32: - resolution: {integrity: sha512-D/kj5JNu6oo2EIy+XL/26JEDTlIbB8hw85G8StOE6L74RQAVVP5rej6wxCNqyMbR4RkPfqvezVbPw81Ngd6Kcw==} - engines: {node: ^10 || ^12 || >=14} - dependencies: - nanoid: 3.3.7 - picocolors: 1.0.0 - source-map-js: 1.0.2 - dev: true - /prebuild-install@7.1.1: resolution: {integrity: sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==} engines: {node: '>=10'} hasBin: true dependencies: - detect-libc: 2.0.2 + detect-libc: 2.0.1 expand-template: 2.0.3 github-from-package: 0.0.0 minimist: 1.2.7 @@ -11805,12 +11736,6 @@ packages: read: 2.1.0 dev: true - /prop@0.1.1: - resolution: {integrity: sha512-hf5DdgiPkcoVxBfuSknP918U0lDC+7lArIjIB2U4Gh79p1Xtc0JP6W5DW3c0wC0x9/A6CsAISh3202I1GlMgkw==} - dependencies: - dotty: 0.0.1 - dev: false - /property-information@6.2.0: resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} @@ -14261,10 +14186,6 @@ packages: engines: {node: '>= 8'} dev: true - /web-tree-sitter@0.20.8: - resolution: {integrity: sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==} - dev: false - /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} @@ -14738,19 +14659,6 @@ packages: yargs-parser: 21.1.1 dev: true - /yargs@17.7.2: - resolution: {integrity: sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==} - engines: {node: '>=12'} - dependencies: - cliui: 8.0.1 - escalade: 3.1.1 - get-caller-file: 2.0.5 - require-directory: 2.1.1 - string-width: 4.2.3 - y18n: 5.0.8 - yargs-parser: 21.1.1 - dev: false - /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} engines: {node: '>=10'} @@ -14763,4 +14671,4 @@ packages: resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} /zwitch@2.0.4: - resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} \ No newline at end of file From 733d6ec67369985a994e41ef7c384af05b032053 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 14:12:11 +0200 Subject: [PATCH 042/805] pnpm i --- pnpm-lock.yaml | 133 ++++++++++++++++++++++++++++++++++++++++++++++--- 1 file changed, 127 insertions(+), 6 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index de4f9185..e3395c25 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -251,6 +251,31 @@ importers: packages/embed: {} + packages/haskell: + dependencies: + '@hpcc-js/wasm': + specifier: ^2.15.3 + version: 2.16.2 + jgf-dot: + specifier: ^1.1.1 + version: 1.1.1 + web-tree-sitter: + specifier: ^0.20.8 + version: 0.20.8 + devDependencies: + tree-sitter: + specifier: ^0.20.6 + version: 0.20.6 + tree-sitter-cli: + specifier: ^0.20.8 + version: 0.20.8 + tree-sitter-javascript: + specifier: ^0.20.1 + version: 0.20.4 + vite: + specifier: ^5.0.8 + version: 5.2.2(@types/node@20.10.6) + packages/hydra: dependencies: '@strudel/core': @@ -3034,6 +3059,13 @@ packages: react: 18.2.0 dev: false + /@hpcc-js/wasm@2.16.2: + resolution: {integrity: sha512-THiidUMYR8/cIfFT3MVcWuRE7bQKh295nrFBxGvUNc4Nq8e2uU1LtiplHs7AUkJ0GxgvZoR+8TQ1/E3Qb/uE2g==} + hasBin: true + dependencies: + yargs: 17.7.2 + dev: false + /@humanwhocodes/config-array@0.11.13: resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==} engines: {node: '>=10.10.0'} @@ -6227,7 +6259,6 @@ packages: string-width: 4.2.3 strip-ansi: 6.0.1 wrap-ansi: 7.0.0 - dev: true /clone-buffer@1.0.0: resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==} @@ -6945,6 +6976,10 @@ packages: engines: {node: '>=12'} dev: true + /dotty@0.0.1: + resolution: {integrity: sha512-eDT0hfJEnQbGaZcTuCfj2igPkQ7qa/n9K2pGGDxhEqKhARLq+xE1TonvpOPHq+7KeG+D6A/V8BwCcsdPom2TQg==} + dev: false + /dset@3.1.3: resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==} engines: {node: '>=4'} @@ -7866,6 +7901,10 @@ packages: resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==} dev: true + /gather-stream@1.0.0: + resolution: {integrity: sha512-NspYMi3rN3EKmMdejUXbtluDYrcRlTEBBFhWzVRZVsOx94OPxlXp0AzyPKyLiT7iaurcoTE/KcHsHP/PowNEaA==} + dev: false + /gauge@4.0.4: resolution: {integrity: sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==} engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0} @@ -8203,6 +8242,33 @@ packages: /graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} + /graphlib-dot@0.6.4: + resolution: {integrity: sha512-rdhDTu0mBlloTpFMfkQq+e3y4yL22OqP5MhQbkw6QUURqa+4YLgv3XZy2fA64wdEcJNZ+waI76URemVgdFtzng==} + dependencies: + graphlib: 2.1.8 + lodash: 4.17.21 + dev: false + + /graphlib-json-graph@1.0.0: + resolution: {integrity: sha512-sJsFuthZnSL5knaDDZhDx8fg1Zy5t/7ZqVHiytoeSzezGhMoSFD3T3K5YQakKFEyXtYjOzbnvsyr2qo+6/qq/Q==} + dependencies: + graphlib: 1.0.7 + par: 0.3.0 + prop: 0.1.1 + dev: false + + /graphlib@1.0.7: + resolution: {integrity: sha512-jNb7RbqTIRyZRmcVCxGefOlGWjNdbjcT2tFj36zhnRa8yhAlOvydh9nBixfLQIqSU+DwCx47tg3ysw8NIYhpsA==} + dependencies: + lodash: 3.10.1 + dev: false + + /graphlib@2.1.8: + resolution: {integrity: sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==} + dependencies: + lodash: 4.17.21 + dev: false + /gray-matter@4.0.3: resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==} engines: {node: '>=6.0'} @@ -9102,6 +9168,15 @@ packages: supports-color: 7.2.0 dev: true + /jgf-dot@1.1.1: + resolution: {integrity: sha512-/aw9bwVfn67A+lvjxtbocBuhB2rNdL5UY5rlHhKVh9ValvVJETU5lQ0jitDxiIjIPAEeuR4B1aFNA7E3wKNV1A==} + hasBin: true + dependencies: + graphlib-dot: 0.6.4 + graphlib-json-graph: 1.0.0 + read-file-stdin: 0.2.1 + dev: false + /jiti@1.21.0: resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==} hasBin: true @@ -9558,9 +9633,12 @@ packages: resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} dev: true + /lodash@3.10.1: + resolution: {integrity: sha512-9mDDwqVIma6OZX79ZlDACZl8sBm0TEnkf99zV3iMA4GzkIT/9hiqP5mY0HoT1iNLCrKc/R1HByV+yJfRWVJryQ==} + dev: false + /lodash@4.17.21: resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} - dev: true /log-symbols@4.1.0: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} @@ -10582,6 +10660,10 @@ packages: thenify-all: 1.6.0 dev: false + /nan@2.19.0: + resolution: {integrity: sha512-nO1xXxfh/RWNxfd/XPfbIfFk5vgLsAxUR9y5O0cHMJu/AW9U95JLXqthYHjEp+8gQ5p96K9jUp8nbVOxCdRbtw==} + dev: true + /nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -11266,6 +11348,11 @@ packages: - supports-color dev: true + /par@0.3.0: + resolution: {integrity: sha512-6V910zFAoHnxjX6ILkwbQcpIkD3KI2gBAPfCtZQNaJTvTxgIoKXSwDQIE3ty0zbOGdBXHRnl6rd66a5jj12pfw==} + engines: {node: '>=0.6'} + dev: false + /parent-module@1.0.1: resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==} engines: {node: '>=6'} @@ -11736,6 +11823,12 @@ packages: read: 2.1.0 dev: true + /prop@0.1.1: + resolution: {integrity: sha512-hf5DdgiPkcoVxBfuSknP918U0lDC+7lArIjIB2U4Gh79p1Xtc0JP6W5DW3c0wC0x9/A6CsAISh3202I1GlMgkw==} + dependencies: + dotty: 0.0.1 + dev: false + /property-information@6.2.0: resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==} @@ -11867,6 +11960,12 @@ packages: engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} dev: true + /read-file-stdin@0.2.1: + resolution: {integrity: sha512-dAqysQ4kfj9m5aejZOPr+aRGXZJXdLkMOLZ3BXMwMBQHiO+aylGBFJPh88AYPQrOf+D43F4Uc2oUIW9kBlItLA==} + dependencies: + gather-stream: 1.0.0 + dev: false + /read-package-json-fast@3.0.2: resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} @@ -13392,6 +13491,27 @@ packages: punycode: 2.3.1 dev: true + /tree-sitter-cli@0.20.8: + resolution: {integrity: sha512-XjTcS3wdTy/2cc/ptMLc/WRyOLECRYcMTrSWyhZnj1oGSOWbHLTklgsgRICU3cPfb0vy+oZCC33M43u6R1HSCA==} + hasBin: true + requiresBuild: true + dev: true + + /tree-sitter-javascript@0.20.4: + resolution: {integrity: sha512-7IUgGkZQROI7MmX2ErKhE3YP4+rM2qwBy5JeukE7fJQMEYP9nHpxvuQpa+eOX+hE1im2pWVc1yDCfVKKCBtxww==} + requiresBuild: true + dependencies: + nan: 2.19.0 + dev: true + + /tree-sitter@0.20.6: + resolution: {integrity: sha512-GxJodajVpfgb3UREzzIbtA1hyRnTxVbWVXrbC6sk4xTMH5ERMBJk9HJNq4c8jOJeUaIOmLcwg+t6mez/PDvGqg==} + requiresBuild: true + dependencies: + nan: 2.19.0 + prebuild-install: 7.1.1 + dev: true + /trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} @@ -14186,6 +14306,10 @@ packages: engines: {node: '>= 8'} dev: true + /web-tree-sitter@0.20.8: + resolution: {integrity: sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==} + dev: false + /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} @@ -14494,7 +14618,6 @@ packages: ansi-styles: 4.3.0 string-width: 4.2.3 strip-ansi: 6.0.1 - dev: true /wrap-ansi@8.1.0: resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==} @@ -14586,7 +14709,6 @@ packages: /y18n@5.0.8: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} - dev: true /yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} @@ -14657,7 +14779,6 @@ packages: string-width: 4.2.3 y18n: 5.0.8 yargs-parser: 21.1.1 - dev: true /yocto-queue@0.1.0: resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==} @@ -14671,4 +14792,4 @@ packages: resolution: {integrity: sha512-iC+8Io04lddc+mVqQ9AZ7OQ2MrUKGN+oIQyq1vemgt46jwCwLfhq7/pwnBnNXXXZb8VTVLKwp9EDkx+ryxIWmg==} /zwitch@2.0.4: - resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} \ No newline at end of file + resolution: {integrity: sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==} From 2aac085bb8ac623e3dd91a36feb596f54b73cab7 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 14:12:30 +0200 Subject: [PATCH 043/805] lint fix --- packages/haskell/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/haskell/index.html b/packages/haskell/index.html index 9883b1b9..c371ec39 100644 --- a/packages/haskell/index.html +++ b/packages/haskell/index.html @@ -1,4 +1,4 @@ - + From 09e455e17e2972239afd0f82e3d09c24fb59ede4 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 14:30:00 +0200 Subject: [PATCH 044/805] move haskell-tree-sitter-playground --- packages/haskell/.gitignore | 2 - packages/haskell/README.md | 28 ++------ packages/haskell/graph.mjs | 43 +++++++++++ packages/haskell/hs2js.mjs | 131 ++++++++++++++++++++++++++++++++++ packages/haskell/index.html | 23 ++++-- packages/haskell/main.js | 120 ++++++++++++++++++++----------- packages/haskell/package.json | 38 +++++++--- packages/haskell/parser.mjs | 22 ++++++ pnpm-lock.yaml | 58 +++++++++------ 9 files changed, 362 insertions(+), 103 deletions(-) create mode 100644 packages/haskell/graph.mjs create mode 100644 packages/haskell/hs2js.mjs create mode 100644 packages/haskell/parser.mjs diff --git a/packages/haskell/.gitignore b/packages/haskell/.gitignore index 75d4123f..ce99c129 100644 --- a/packages/haskell/.gitignore +++ b/packages/haskell/.gitignore @@ -25,5 +25,3 @@ dist-ssr public/tree-sitter.wasm public/tree-sitter-haskell.wasm -public/tree-sitter-haskell_mine.wasm -public/tree-sitter-haskell_theirs.wasm \ No newline at end of file diff --git a/packages/haskell/README.md b/packages/haskell/README.md index 0143b93e..24f3efc3 100644 --- a/packages/haskell/README.md +++ b/packages/haskell/README.md @@ -1,31 +1,11 @@ -# @strudel/haskell +# @strudel/tidal This is an experiment in implementing tree-sitter for parsing haskell. -So far, I have just set up a vite project that imports and inits `web-tree-sitter`, which works after - -- -- - -Running: - ```sh -cd haskell && pnpm i +pnpm i +cd haskell pnpm dev ``` -will start the vite dev server, loading tree sitter on `http://localhost:5174/`. - -The next step is be to generate `tree-sitter-haskell.wasm` file following . - -I've tried to generate it using but it failed, due to some versioning conflicts involving node / v8 / node-gyp. - -It seems a lot of work has gone into this package in , without a new npm package version being released, which is why I've written this comment: . - -So either someone authorized releases a new version of the package or we might need to pull the changes and try to build it from the tree-sitter master branch. - -## Update 1 - -I've managed to make it work by using [this tree-sitter-haskell.wasm](https://github.com/tree-sitter/tree-sitter-haskell/blob/master/tree-sitter-haskell.wasm), instead of using the version on npm! Make sure both `tree-sitter.wasm` and `tree-sitter-haskell.wasm` are in the public dir, then run `pnpm dev`. The console should log a tree sitter AST string. - -Next step: understand how the ast works to then transform it into JS function calls! +This \ No newline at end of file diff --git a/packages/haskell/graph.mjs b/packages/haskell/graph.mjs new file mode 100644 index 00000000..bac3d135 --- /dev/null +++ b/packages/haskell/graph.mjs @@ -0,0 +1,43 @@ +import { Graphviz } from '@hpcc-js/wasm'; +import toDot from 'jgf-dot'; + +const graphvizLoaded = Graphviz.load(); + +function walk(node, branch = [0], parent) { + let nodes = []; + let edges = []; + const color = 'white'; + const current = { + id: branch.join('-'), + color, + fontcolor: color, + label: node.type.replace('\\', 'lambda'), // backslash kills graphviz.. + }; + nodes.push(current); + parent && edges.push({ source: parent.id, target: current.id, color }); + if (node.children.length) { + node.children.forEach((child, j) => { + const { nodes: childNodes, edges: childEdges } = walk(child, branch.concat([j]), current); + nodes = nodes.concat(childNodes || []); + edges = edges.concat(childEdges || []); + }); + } + return { nodes, edges }; +} + +export async function renderGraph(tree, container) { + const { nodes, edges } = walk(tree.rootNode); + const graphviz = await graphvizLoaded; + let dot = toDot({ + graph: { + nodes, + edges, + }, + }); + dot = dot.split('\n'); + dot.splice(1, 0, 'bgcolor="transparent"'); + dot.splice(1, 0, 'color="white"'); + dot = dot.join('\n'); + const svg = await graphviz.layout(dot, 'svg', 'dot', {}); + container.innerHTML = svg; +} diff --git a/packages/haskell/hs2js.mjs b/packages/haskell/hs2js.mjs new file mode 100644 index 00000000..3a507112 --- /dev/null +++ b/packages/haskell/hs2js.mjs @@ -0,0 +1,131 @@ +function runApply(node, scope, ops) { + if (node.children.length !== 2) + throw new Error(`expected 2 children for node type apply, got ${node.children.length}`); + const [fn, arg] = node.children.map((child) => run(child, scope, ops)); + if (typeof fn !== 'function') { + throw new Error(`${node.children[0].text} is not a function`); + } + // only works if fn is curried! + return fn(arg); +} + +function runInfix(left, symbol, right, ops) { + const customOp = ops[symbol]; + if (customOp) { + return customOp(left, right); + } + switch (symbol) { + case '+': + return left + right; + case '-': + return left - right; + case '*': + return left * right; + case '/': + return left / right; + case '$': + return left(right); + case '&': + console.log('right', right); + return right(left); + case '.': + return (x) => left(right(x)); + default: + throw new Error('unexpected infix operator ' + symbol); + } +} + +function curry(patterns, body, scope, ops) { + const [variable, ...rest] = patterns; + return (arg) => { + let _scope = { ...scope, [variable.text]: arg }; + if (patterns.length === 1) { + const result = run(body, _scope, ops); + return result; + } + return curry(rest, body, _scope, ops); + }; +} + +export function run(node, scope, ops = {}) { + let runInScope = (node, scp = scope) => run(node, scp, ops); + //console.log("node", node.type, node.text); + switch (node.type) { + case 'ERROR': + throw new Error(`invalid syntax: "${node.text}"`); + case 'declarations': + let result; + node.children.forEach((declaration) => { + result = runInScope(declaration); + }); + return result; + case 'integer': + return Number(node.text); + case 'float': + return Number(node.text); + case 'string': + const str = node.text.slice(1, -1); + return String(str); + case 'lambda': + const [_, lpatterns, __, lbody] = node.children; + return curry(lpatterns.children, lbody, scope, ops); + case 'function': + const [fvariable, fpatterns, fbody] = node.children; + scope[fvariable.text] = curry(fpatterns.children, fbody, scope, ops); + return scope[fvariable.text]; + case 'list': { + return node.children + .filter((_, i) => i % 2 === 1) // elements are at odd indices + .map((node) => runInScope(node)); + } + case 'match': + if (node.children[0].text !== '=' || node.children.length !== 2) { + throw new Error('match node so far only support simple assignments'); + } + return runInScope(node.children[1]); + case 'bind': + if (node.children.length !== 2) throw new Error('expected 2 children for node type bind'); + if (node.children[0].type !== 'variable') throw new Error('expected variable as first child of bind node'); + if (node.children[1].type !== 'match') throw new Error('expected match as first child of bind node'); + const [bvariable, bmatch] = node.children; + const value = runInScope(bmatch); + scope[bvariable.text] = value; + return value; + case 'variable': + return scope[node.text]; + case 'infix': { + const [a, op, b] = node.children; + const symbol = op.text; + const [left, right] = [runInScope(a), runInScope(b)]; + return runInfix(left, symbol, right, ops); + } + case 'apply': + return runApply(node, scope, ops); + case 'left_section': { + const [_, b, op] = node.children; + const right = runInScope(b); + return (left) => runInfix(left, op.text, right, ops); + } + case 'right_section': { + const [_, op, b] = node.children; + const right = runInScope(b); + return (left) => runInfix(left, op.text, right, ops); + } + case 'parens': + if (node.children.length !== 3) throw new Error('expected 3 children for node type parens'); + return runInScope(node.children[1]); + default: + if (node.children.length === 0) { + throw new Error('unhandled leaf type ' + node.type); + } + if (node.children.length > 1) { + throw new Error('unhandled branch type ' + node.type); + } + return runInScope(node.children[0]); + } +} + +export async function evaluate(haskellCode, scope = globalThis, ops) { + const ast = await parse(haskellCode); + return run(ast.rootNode, scope, ops); +} diff --git a/packages/haskell/index.html b/packages/haskell/index.html index c371ec39..532bce3d 100644 --- a/packages/haskell/index.html +++ b/packages/haskell/index.html @@ -2,13 +2,28 @@ - Tree sitter test + - - -
+ + +

+    
diff --git a/packages/haskell/main.js b/packages/haskell/main.js index df11110a..bd9c2702 100644 --- a/packages/haskell/main.js +++ b/packages/haskell/main.js @@ -1,51 +1,89 @@ -import Parser from 'web-tree-sitter'; -import toDot from 'jgf-dot'; -import { Graphviz } from '@hpcc-js/wasm'; +import { run } from './hs2js.mjs'; +import { renderGraph } from './graph.mjs'; +import { parse } from './parser.mjs'; +import { initStrudel, reify, late } from '@strudel/web'; +initStrudel({ + prebake: () => samples('github:tidalcycles/dirt-samples'), +}); -const graphvizLoaded = Graphviz.load(); -const parserLoaded = loadParser(); const graphContainer = document.getElementById('graph'); const textarea = document.getElementById('code'); -textarea.value = 'd1 $ s "hh(3,8)"'; -textarea.addEventListener('input', (e) => renderGraph(e.target.value, graphContainer)); -renderGraph(textarea.value, graphContainer); +if (window.location.hash) { + textarea.value = atob(window.location.hash.slice(1)); +} else { + textarea.value = 'd1 $ s "jvbass(3,8)"'; +} +textarea.addEventListener('input', (e) => { + window.location.hash = btoa(e.target.value); + update(); +}); +update(); -function walk(node, branch = [0], parent) { - let nodes = []; - let edges = []; - const current = { id: branch.join('-'), label: node.type }; - nodes.push(current); - parent && edges.push({ source: parent.id, target: current.id }); - if (node.children.length) { - node.children.forEach((child, j) => { - const { nodes: childNodes, edges: childEdges } = walk(child, branch.concat([j]), current); - nodes = nodes.concat(childNodes || []); - edges = edges.concat(childEdges || []); +function getInfixOperators() { + let operators = { + '>': 'set', + '#': 'set', + '+': 'add', + '-': 'sub', + '*': 'mul', + '/': 'div', + }; + let alignments = { + in: (s) => '|' + s, + out: (s) => s + '|', + mix: (s) => '|' + s + '|', + }; + let ops = {}; + Object.entries(operators).forEach(([o, name]) => { + // operator without alignment + ops[o] = (l, r) => reify(l)[name](reify(r)); + Object.entries(alignments).forEach(([a, getSymbol]) => { + // get symbol with alignment + let symbol = getSymbol(o); + ops[symbol] = (l, r) => reify(l)[name][a](reify(r)); }); - } - return { nodes, edges }; -} - -async function renderGraph(code, container) { - const parser = await parserLoaded; - const tree = parser.parse(code); - const { nodes, edges } = walk(tree.rootNode); - const graphviz = await graphvizLoaded; - const dot = toDot({ - graph: { - nodes, - edges, - }, }); - const svg = await graphviz.layout(dot, 'svg', 'dot'); - container.innerHTML = svg; + ops['~>'] = (l, r) => reify(l).late(reify(r)); + ops['<~'] = (l, r) => reify(l).early(reify(r)); + ops['<$>'] = (l, r) => reify(r).fmap(l).outerJoin(); // is this right? + return ops; } +const ops = getInfixOperators(); -async function loadParser() { - await Parser.init(); - const parser = new Parser(); - const Lang = await Parser.Language.load('tree-sitter-haskell.wasm'); - parser.setLanguage(Lang); - return parser; +async function update() { + let result, tree; + try { + tree = await parse(textarea.value); + } catch (err) { + console.warn('parse error'); + console.error(err); + } + console.log('parsed tree'); + console.log(tree.rootNode.toString()); + try { + renderGraph(tree, graphContainer); + } catch (err) { + console.warn('could not render graph'); + console.error(err); + } + try { + let patterns = {}; + window.p = (name, pattern) => { + patterns[name] = pattern; + }; + window.d1 = (pat) => window.p(1, pat); + window.d2 = (pat) => window.p(2, pat); + window.d3 = (pat) => window.p(3, pat); + window.rot = late; + result = run(tree.rootNode, window, ops); + if (Object.values(patterns).length) { + stack(...Object.values(patterns)).play(); + } + } catch (err) { + console.warn('eval error'); + console.error(err); + result = 'ERROR: ' + err.message; + } + document.getElementById('result').innerHTML = 'Result: ' + result; } diff --git a/packages/haskell/package.json b/packages/haskell/package.json index 46039e25..7d8b72e4 100644 --- a/packages/haskell/package.json +++ b/packages/haskell/package.json @@ -1,24 +1,42 @@ { - "name": "haskell", + "name": "@strudel/tidal", "private": true, - "version": "0.0.0", + "version": "0.0.1", "type": "module", "scripts": { "dev": "vite", "build": "vite build", "preview": "vite preview", - "postinstall": "cp node_modules/web-tree-sitter/tree-sitter.wasm public", - "parse": "tree-sitter parse -D ./test.hs" + "postinstall": "cp node_modules/web-tree-sitter/tree-sitter.wasm public && npm run build:parser", + "build:parser": "tree-sitter build-wasm node_modules/tree-sitter-haskell && mv tree-sitter-haskell.wasm public" }, - "devDependencies": { - "tree-sitter": "^0.20.6", - "tree-sitter-cli": "^0.20.8", - "tree-sitter-javascript": "^0.20.1", - "vite": "^5.0.8" + "repository": { + "type": "git", + "url": "git+https://github.com/tidalcycles/strudel.git" }, + "keywords": [ + "titdalcycles", + "strudel", + "pattern", + "livecoding", + "algorave" + ], + "author": "Felix Roos ", + "license": "AGPL-3.0-or-later", + "bugs": { + "url": "https://github.com/tidalcycles/strudel/issues" + }, + "homepage": "https://github.com/tidalcycles/strudel#readme", "dependencies": { "@hpcc-js/wasm": "^2.15.3", "jgf-dot": "^1.1.1", - "web-tree-sitter": "^0.20.8" + "web-tree-sitter": "^0.22.6", + "tree-sitter-haskell": "^0.21.0", + "@strudel/web": "workspace:*" + }, + "devDependencies": { + "tree-sitter": "^0.21.1", + "tree-sitter-cli": "^0.20.8", + "vite": "^5.0.8" } } diff --git a/packages/haskell/parser.mjs b/packages/haskell/parser.mjs new file mode 100644 index 00000000..1b1f8a03 --- /dev/null +++ b/packages/haskell/parser.mjs @@ -0,0 +1,22 @@ +import Parser from 'web-tree-sitter'; + +const base = import.meta.env.BASE_URL; + +async function loadParser() { + await Parser.init({ + locateFile(scriptName, scriptDirectory) { + return `${base}${scriptName}`; + }, + }); + const parser = new Parser(); + const Lang = await Parser.Language.load(`${base}tree-sitter-haskell.wasm`); + parser.setLanguage(Lang); + return parser; +} + +let parserLoaded = loadParser(); +export async function parse(code) { + const parser = await parserLoaded; + // for some reason, the parser doesn't like new lines.. + return parser.parse(code.replaceAll('\n\n', '~~~~').replaceAll('\n', '').replaceAll('~~~~', '\n')); +} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index e3395c25..76947b5a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -256,22 +256,25 @@ importers: '@hpcc-js/wasm': specifier: ^2.15.3 version: 2.16.2 + '@strudel/web': + specifier: workspace:* + version: link:../web jgf-dot: specifier: ^1.1.1 version: 1.1.1 + tree-sitter-haskell: + specifier: ^0.21.0 + version: 0.21.0(tree-sitter@0.21.1) web-tree-sitter: - specifier: ^0.20.8 - version: 0.20.8 + specifier: ^0.22.6 + version: 0.22.6 devDependencies: tree-sitter: - specifier: ^0.20.6 - version: 0.20.6 + specifier: ^0.21.1 + version: 0.21.1 tree-sitter-cli: specifier: ^0.20.8 version: 0.20.8 - tree-sitter-javascript: - specifier: ^0.20.1 - version: 0.20.4 vite: specifier: ^5.0.8 version: 5.2.2(@types/node@20.10.6) @@ -10660,10 +10663,6 @@ packages: thenify-all: 1.6.0 dev: false - /nan@2.19.0: - resolution: {integrity: sha512-nO1xXxfh/RWNxfd/XPfbIfFk5vgLsAxUR9y5O0cHMJu/AW9U95JLXqthYHjEp+8gQ5p96K9jUp8nbVOxCdRbtw==} - dev: true - /nanoid@3.3.7: resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} @@ -10719,6 +10718,10 @@ packages: semver: 7.5.4 dev: true + /node-addon-api@8.0.0: + resolution: {integrity: sha512-ipO7rsHEBqa9STO5C5T10fj732ml+5kLN1cAG8/jdHd56ldQeGj3Q7+scUS+VHK/qy1zLEwC4wMK5+yM0btPvw==} + engines: {node: ^18 || ^20 || >= 21} + /node-domexception@1.0.0: resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} engines: {node: '>=10.5.0'} @@ -10762,6 +10765,10 @@ packages: engines: {node: '>= 0.6.0'} dev: false + /node-gyp-build@4.8.1: + resolution: {integrity: sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==} + hasBin: true + /node-gyp@10.0.1: resolution: {integrity: sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==} engines: {node: ^16.14.0 || >=18.0.0} @@ -13497,20 +13504,27 @@ packages: requiresBuild: true dev: true - /tree-sitter-javascript@0.20.4: - resolution: {integrity: sha512-7IUgGkZQROI7MmX2ErKhE3YP4+rM2qwBy5JeukE7fJQMEYP9nHpxvuQpa+eOX+hE1im2pWVc1yDCfVKKCBtxww==} + /tree-sitter-haskell@0.21.0(tree-sitter@0.21.1): + resolution: {integrity: sha512-b2RLegPHuYPh7nJ3YKWgkWnFYxmYlQDE8TDJuNH+iuNuBcCMYyaA9JlJlMHfCvf7DmJNPtqqbO9Kh9NXEmbatQ==} requiresBuild: true + peerDependencies: + tree-sitter: ^0.21.0 + tree_sitter: '*' + peerDependenciesMeta: + tree_sitter: + optional: true dependencies: - nan: 2.19.0 - dev: true + node-addon-api: 8.0.0 + node-gyp-build: 4.8.1 + tree-sitter: 0.21.1 + dev: false - /tree-sitter@0.20.6: - resolution: {integrity: sha512-GxJodajVpfgb3UREzzIbtA1hyRnTxVbWVXrbC6sk4xTMH5ERMBJk9HJNq4c8jOJeUaIOmLcwg+t6mez/PDvGqg==} + /tree-sitter@0.21.1: + resolution: {integrity: sha512-7dxoA6kYvtgWw80265MyqJlkRl4yawIjO7S5MigytjELkX43fV2WsAXzsNfO7sBpPPCF5Gp0+XzHk0DwLCq3xQ==} requiresBuild: true dependencies: - nan: 2.19.0 - prebuild-install: 7.1.1 - dev: true + node-addon-api: 8.0.0 + node-gyp-build: 4.8.1 /trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} @@ -14306,8 +14320,8 @@ packages: engines: {node: '>= 8'} dev: true - /web-tree-sitter@0.20.8: - resolution: {integrity: sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==} + /web-tree-sitter@0.22.6: + resolution: {integrity: sha512-hS87TH71Zd6mGAmYCvlgxeGDjqd9GTeqXNqTT+u0Gs51uIozNIaaq/kUAbV/Zf56jb2ZOyG8BxZs2GG9wbLi6Q==} dev: false /webidl-conversions@3.0.1: From eba7dec1a516d8ee3149ec911917d398b8a7267e Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 14:31:00 +0200 Subject: [PATCH 045/805] rename haskell -> tidal --- packages/{haskell => tidal}/.gitignore | 0 packages/{haskell => tidal}/README.md | 0 packages/{haskell => tidal}/graph.mjs | 0 packages/{haskell => tidal}/hs2js.mjs | 0 packages/{haskell => tidal}/index.html | 0 packages/{haskell => tidal}/main.js | 0 packages/{haskell => tidal}/package.json | 0 packages/{haskell => tidal}/parser.mjs | 0 packages/{haskell => tidal}/public/README.md | 0 pnpm-lock.yaml | 56 ++++++++++---------- 10 files changed, 28 insertions(+), 28 deletions(-) rename packages/{haskell => tidal}/.gitignore (100%) rename packages/{haskell => tidal}/README.md (100%) rename packages/{haskell => tidal}/graph.mjs (100%) rename packages/{haskell => tidal}/hs2js.mjs (100%) rename packages/{haskell => tidal}/index.html (100%) rename packages/{haskell => tidal}/main.js (100%) rename packages/{haskell => tidal}/package.json (100%) rename packages/{haskell => tidal}/parser.mjs (100%) rename packages/{haskell => tidal}/public/README.md (100%) diff --git a/packages/haskell/.gitignore b/packages/tidal/.gitignore similarity index 100% rename from packages/haskell/.gitignore rename to packages/tidal/.gitignore diff --git a/packages/haskell/README.md b/packages/tidal/README.md similarity index 100% rename from packages/haskell/README.md rename to packages/tidal/README.md diff --git a/packages/haskell/graph.mjs b/packages/tidal/graph.mjs similarity index 100% rename from packages/haskell/graph.mjs rename to packages/tidal/graph.mjs diff --git a/packages/haskell/hs2js.mjs b/packages/tidal/hs2js.mjs similarity index 100% rename from packages/haskell/hs2js.mjs rename to packages/tidal/hs2js.mjs diff --git a/packages/haskell/index.html b/packages/tidal/index.html similarity index 100% rename from packages/haskell/index.html rename to packages/tidal/index.html diff --git a/packages/haskell/main.js b/packages/tidal/main.js similarity index 100% rename from packages/haskell/main.js rename to packages/tidal/main.js diff --git a/packages/haskell/package.json b/packages/tidal/package.json similarity index 100% rename from packages/haskell/package.json rename to packages/tidal/package.json diff --git a/packages/haskell/parser.mjs b/packages/tidal/parser.mjs similarity index 100% rename from packages/haskell/parser.mjs rename to packages/tidal/parser.mjs diff --git a/packages/haskell/public/README.md b/packages/tidal/public/README.md similarity index 100% rename from packages/haskell/public/README.md rename to packages/tidal/public/README.md diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 76947b5a..53cf7207 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -251,34 +251,6 @@ importers: packages/embed: {} - packages/haskell: - dependencies: - '@hpcc-js/wasm': - specifier: ^2.15.3 - version: 2.16.2 - '@strudel/web': - specifier: workspace:* - version: link:../web - jgf-dot: - specifier: ^1.1.1 - version: 1.1.1 - tree-sitter-haskell: - specifier: ^0.21.0 - version: 0.21.0(tree-sitter@0.21.1) - web-tree-sitter: - specifier: ^0.22.6 - version: 0.22.6 - devDependencies: - tree-sitter: - specifier: ^0.21.1 - version: 0.21.1 - tree-sitter-cli: - specifier: ^0.20.8 - version: 0.20.8 - vite: - specifier: ^5.0.8 - version: 5.2.2(@types/node@20.10.6) - packages/hydra: dependencies: '@strudel/core': @@ -437,6 +409,34 @@ importers: specifier: ^5.0.10 version: 5.0.10 + packages/tidal: + dependencies: + '@hpcc-js/wasm': + specifier: ^2.15.3 + version: 2.16.2 + '@strudel/web': + specifier: workspace:* + version: link:../web + jgf-dot: + specifier: ^1.1.1 + version: 1.1.1 + tree-sitter-haskell: + specifier: ^0.21.0 + version: 0.21.0(tree-sitter@0.21.1) + web-tree-sitter: + specifier: ^0.22.6 + version: 0.22.6 + devDependencies: + tree-sitter: + specifier: ^0.21.1 + version: 0.21.1 + tree-sitter-cli: + specifier: ^0.20.8 + version: 0.20.8 + vite: + specifier: ^5.0.8 + version: 5.2.2(@types/node@20.10.6) + packages/tonal: dependencies: '@strudel/core': From 29598d1744f7dd06f5994af93c9e1658be8e4ab9 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 16 May 2024 14:32:45 +0200 Subject: [PATCH 046/805] fix: lint --- .eslintignore | 3 ++- packages/tidal/hs2js.mjs | 1 - packages/tidal/main.js | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/.eslintignore b/.eslintignore index 7d807b65..a16bd3cd 100644 --- a/.eslintignore +++ b/.eslintignore @@ -21,4 +21,5 @@ vite.config.js /src-tauri/target/**/* reverbGen.mjs hydra.mjs -jsdoc-synonyms.js \ No newline at end of file +jsdoc-synonyms.js +packages/tidal/hs2js.mjs \ No newline at end of file diff --git a/packages/tidal/hs2js.mjs b/packages/tidal/hs2js.mjs index 3a507112..733b7aeb 100644 --- a/packages/tidal/hs2js.mjs +++ b/packages/tidal/hs2js.mjs @@ -26,7 +26,6 @@ function runInfix(left, symbol, right, ops) { case '$': return left(right); case '&': - console.log('right', right); return right(left); case '.': return (x) => left(right(x)); diff --git a/packages/tidal/main.js b/packages/tidal/main.js index bd9c2702..b1d40198 100644 --- a/packages/tidal/main.js +++ b/packages/tidal/main.js @@ -1,7 +1,7 @@ import { run } from './hs2js.mjs'; import { renderGraph } from './graph.mjs'; import { parse } from './parser.mjs'; -import { initStrudel, reify, late } from '@strudel/web'; +import { initStrudel, reify, late, samples, stack } from '@strudel/web'; initStrudel({ prebake: () => samples('github:tidalcycles/dirt-samples'), }); From 803b5e56fcd6c1326687837e7fb9025853ac1901 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Thu, 16 May 2024 16:49:28 -0400 Subject: [PATCH 047/805] working --- website/src/repl/idbutils.mjs | 13 +++++++++---- website/src/repl/panel/ImportSoundsButton.jsx | 3 ++- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/website/src/repl/idbutils.mjs b/website/src/repl/idbutils.mjs index 40219c9a..959dc7d1 100644 --- a/website/src/repl/idbutils.mjs +++ b/website/src/repl/idbutils.mjs @@ -40,8 +40,10 @@ export const registerSamplesFromDB = (config = userSamplesDBConfig, onComplete = if (!isAudioFile(title)) { return; } - const splitRelativePath = soundFile.id?.split('/'); - const parentDirectory = splitRelativePath[splitRelativePath.length - 2]; + const splitRelativePath = soundFile.id.split('/'); + const parentDirectory = + //fallback to file name before period and seperator if no parent directory + splitRelativePath[splitRelativePath.length - 2] ?? soundFile.id.split(/\W+/)[0] ?? 'user'; const soundPath = soundFile.blob; const soundPaths = sounds.get(parentDirectory) ?? new Set(); soundPaths.add(soundPath); @@ -114,6 +116,7 @@ const processFilesForIDB = async (files) => { Array.from(files) .map(async (s) => { const title = s.name; + if (!isAudioFile(title)) { return; } @@ -121,12 +124,14 @@ const processFilesForIDB = async (files) => { const sUrl = URL.createObjectURL(s); //fetch the sound and turn it into a buffer array const buf = await fetch(sUrl).then((res) => res.arrayBuffer()); - //create a url blob containing all of the buffer data + //create a url base64 containing all of the buffer data const base64 = await bufferToDataUrl(buf); + const path = s.webkitRelativePath; + const id = path?.length ? path : title; return { title, blob: base64, - id: s.webkitRelativePath, + id, }; }) .filter(Boolean), diff --git a/website/src/repl/panel/ImportSoundsButton.jsx b/website/src/repl/panel/ImportSoundsButton.jsx index 20a1d5e3..7a97b9e0 100644 --- a/website/src/repl/panel/ImportSoundsButton.jsx +++ b/website/src/repl/panel/ImportSoundsButton.jsx @@ -10,6 +10,7 @@ export default function ImportSoundsButton({ onComplete }) { return; } setIsUploading(true); + await uploadSamplesToDB(userSamplesDBConfig, fileUploadRef.current.files).then(() => { registerSamplesFromDB(userSamplesDBConfig, () => { onComplete(); @@ -32,7 +33,7 @@ export default function ImportSoundsButton({ onComplete }) { directory="" webkitdirectory="" multiple - accept="audio/*" + accept="audio/*, .wav, .mp3, .m4a, .flac" onChange={() => { onChange(); }} From 16ad27406d57073980646a4c5d4a408154261e00 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Thu, 16 May 2024 17:10:41 -0400 Subject: [PATCH 048/805] sort samples in tabs --- website/src/repl/panel/SoundsTab.jsx | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/website/src/repl/panel/SoundsTab.jsx b/website/src/repl/panel/SoundsTab.jsx index d4b52ee5..9b35d04b 100644 --- a/website/src/repl/panel/SoundsTab.jsx +++ b/website/src/repl/panel/SoundsTab.jsx @@ -13,7 +13,9 @@ export function SoundsTab() { const sounds = useStore(soundMap); const { soundsFilter } = useSettings(); const soundEntries = useMemo(() => { - let filtered = Object.entries(sounds).filter(([key]) => !key.startsWith('_')); + let filtered = Object.entries(sounds) + .filter(([key]) => !key.startsWith('_')) + .sort((a, b) => a[0].localeCompare(b[0])); if (!sounds) { return []; } @@ -43,7 +45,7 @@ export function SoundsTab() { }); return (
-
+
settingsMap.setKey('soundsFilter', value)} From d49c9dce4fccb5df67e60577352a7bcb997cfc49 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Fri, 17 May 2024 00:27:34 -0400 Subject: [PATCH 049/805] working --- packages/superdough/superdough.mjs | 2 + packages/superdough/worklets.mjs | 64 ++++++++++++++++++++++++++++++ website/src/repl/panel/Forms.jsx | 5 +-- 3 files changed, 67 insertions(+), 4 deletions(-) diff --git a/packages/superdough/superdough.mjs b/packages/superdough/superdough.mjs index c0ba96e0..cd9fcfeb 100644 --- a/packages/superdough/superdough.mjs +++ b/packages/superdough/superdough.mjs @@ -471,6 +471,8 @@ export const superdough = async (value, t, hapDuration) => { shape !== undefined && chain.push(getWorklet(ac, 'shape-processor', { shape, postgain: shapevol })); distort !== undefined && chain.push(getWorklet(ac, 'distort-processor', { distort, postgain: distortvol })); + chain.push(getWorklet(ac, 'ladder-processor', { cutoff: 500, q: 1 })); + compressorThreshold !== undefined && chain.push( getCompressor(ac, compressorThreshold, compressorRatio, compressorKnee, compressorAttack, compressorRelease), diff --git a/packages/superdough/worklets.mjs b/packages/superdough/worklets.mjs index a1f524ca..152e51d6 100644 --- a/packages/superdough/worklets.mjs +++ b/packages/superdough/worklets.mjs @@ -106,6 +106,70 @@ class ShapeProcessor extends AudioWorkletProcessor { } registerProcessor('shape-processor', ShapeProcessor); +function fast_tanh(x) { + const x2 = x * x; + return (x * (27.0 + x2)) / (27.0 + 9.0 * x2); +} +const _PI = 3.14159265359; + +class LadderProcessor extends AudioWorkletProcessor { + static get parameterDescriptors() { + return [ + { name: 'cutoff', defaultValue: 500 }, + { name: 'q', defaultValue: 1 }, + ]; + } + + constructor() { + super(); + this.started = false; + this.p0 = 0; + this.p1 = 0; + this.p2 = 0; + this.p3 = 0; + this.p32 = 0; + this.p33 = 0; + this.p34 = 0; + } + + process(inputs, outputs, parameters) { + const input = inputs[0]; + const output = outputs[0]; + + const hasInput = !(input[0] === undefined); + if (this.started && !hasInput) { + return false; + } + this.started = hasInput; + + const resonance = parameters.q[0]; + let cutoff = parameters.cutoff[0]; + cutoff = (cutoff * 2 * _PI) / sampleRate; + cutoff = cutoff > 1 ? 1 : cutoff; + + const k = resonance * 4; + + for (let n = 0; n < blockSize; n++) { + for (let i = 0; i < input.length; i++) { + const out = this.p3 * 0.360891 + this.p32 * 0.41729 + this.p33 * 0.177896 + this.p34 * 0.0439725; + + this.p34 = this.p33; + this.p33 = this.p32; + this.p32 = this.p3; + + this.p0 += (fast_tanh(input[i][n] - k * out) - fast_tanh(this.p0)) * cutoff; + this.p1 += (fast_tanh(this.p0) - fast_tanh(this.p1)) * cutoff; + this.p2 += (fast_tanh(this.p1) - fast_tanh(this.p2)) * cutoff; + this.p3 += (fast_tanh(this.p2) - fast_tanh(this.p3)) * cutoff; + + output[i][n] = out; + } + } + return true; + } +} +registerProcessor('ladder-processor', LadderProcessor); + class DistortProcessor extends AudioWorkletProcessor { static get parameterDescriptors() { return [ diff --git a/website/src/repl/panel/Forms.jsx b/website/src/repl/panel/Forms.jsx index c5b22002..b9172e91 100644 --- a/website/src/repl/panel/Forms.jsx +++ b/website/src/repl/panel/Forms.jsx @@ -2,16 +2,13 @@ import cx from '@src/cx.mjs'; export function ButtonGroup({ value, onChange, items }) { return ( -
+
{Object.entries(items).map(([key, label], i, arr) => ( diff --git a/packages/hs2js/LICENSE b/packages/hs2js/LICENSE new file mode 100644 index 00000000..0ad25db4 --- /dev/null +++ b/packages/hs2js/LICENSE @@ -0,0 +1,661 @@ + GNU AFFERO GENERAL PUBLIC LICENSE + Version 3, 19 November 2007 + + Copyright (C) 2007 Free Software Foundation, Inc. + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The GNU Affero General Public License is a free, copyleft license for +software and other kinds of works, specifically designed to ensure +cooperation with the community in the case of network server software. + + The licenses for most software and other practical works are designed +to take away your freedom to share and change the works. By contrast, +our General Public Licenses are intended to guarantee your freedom to +share and change all versions of a program--to make sure it remains free +software for all its users. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +them if you wish), that you receive source code or can get it if you +want it, that you can change the software or use pieces of it in new +free programs, and that you know you can do these things. + + Developers that use our General Public Licenses protect your rights +with two steps: (1) assert copyright on the software, and (2) offer +you this License which gives you legal permission to copy, distribute +and/or modify the software. + + A secondary benefit of defending all users' freedom is that +improvements made in alternate versions of the program, if they +receive widespread use, become available for other developers to +incorporate. Many developers of free software are heartened and +encouraged by the resulting cooperation. However, in the case of +software used on network servers, this result may fail to come about. +The GNU General Public License permits making a modified version and +letting the public access it on a server without ever releasing its +source code to the public. + + The GNU Affero General Public License is designed specifically to +ensure that, in such cases, the modified source code becomes available +to the community. It requires the operator of a network server to +provide the source code of the modified version running there to the +users of that server. Therefore, public use of a modified version, on +a publicly accessible server, gives the public access to the source +code of the modified version. + + An older license, called the Affero General Public License and +published by Affero, was designed to accomplish similar goals. This is +a different license, not a version of the Affero GPL, but Affero has +released a new version of the Affero GPL which permits relicensing under +this license. + + The precise terms and conditions for copying, distribution and +modification follow. + + TERMS AND CONDITIONS + + 0. Definitions. + + "This License" refers to version 3 of the GNU Affero General Public License. + + "Copyright" also means copyright-like laws that apply to other kinds of +works, such as semiconductor masks. + + "The Program" refers to any copyrightable work licensed under this +License. Each licensee is addressed as "you". "Licensees" and +"recipients" may be individuals or organizations. + + To "modify" a work means to copy from or adapt all or part of the work +in a fashion requiring copyright permission, other than the making of an +exact copy. The resulting work is called a "modified version" of the +earlier work or a work "based on" the earlier work. + + A "covered work" means either the unmodified Program or a work based +on the Program. + + To "propagate" a work means to do anything with it that, without +permission, would make you directly or secondarily liable for +infringement under applicable copyright law, except executing it on a +computer or modifying a private copy. Propagation includes copying, +distribution (with or without modification), making available to the +public, and in some countries other activities as well. + + To "convey" a work means any kind of propagation that enables other +parties to make or receive copies. Mere interaction with a user through +a computer network, with no transfer of a copy, is not conveying. + + An interactive user interface displays "Appropriate Legal Notices" +to the extent that it includes a convenient and prominently visible +feature that (1) displays an appropriate copyright notice, and (2) +tells the user that there is no warranty for the work (except to the +extent that warranties are provided), that licensees may convey the +work under this License, and how to view a copy of this License. If +the interface presents a list of user commands or options, such as a +menu, a prominent item in the list meets this criterion. + + 1. Source Code. + + The "source code" for a work means the preferred form of the work +for making modifications to it. "Object code" means any non-source +form of a work. + + A "Standard Interface" means an interface that either is an official +standard defined by a recognized standards body, or, in the case of +interfaces specified for a particular programming language, one that +is widely used among developers working in that language. + + The "System Libraries" of an executable work include anything, other +than the work as a whole, that (a) is included in the normal form of +packaging a Major Component, but which is not part of that Major +Component, and (b) serves only to enable use of the work with that +Major Component, or to implement a Standard Interface for which an +implementation is available to the public in source code form. A +"Major Component", in this context, means a major essential component +(kernel, window system, and so on) of the specific operating system +(if any) on which the executable work runs, or a compiler used to +produce the work, or an object code interpreter used to run it. + + The "Corresponding Source" for a work in object code form means all +the source code needed to generate, install, and (for an executable +work) run the object code and to modify the work, including scripts to +control those activities. However, it does not include the work's +System Libraries, or general-purpose tools or generally available free +programs which are used unmodified in performing those activities but +which are not part of the work. For example, Corresponding Source +includes interface definition files associated with source files for +the work, and the source code for shared libraries and dynamically +linked subprograms that the work is specifically designed to require, +such as by intimate data communication or control flow between those +subprograms and other parts of the work. + + The Corresponding Source need not include anything that users +can regenerate automatically from other parts of the Corresponding +Source. + + The Corresponding Source for a work in source code form is that +same work. + + 2. Basic Permissions. + + All rights granted under this License are granted for the term of +copyright on the Program, and are irrevocable provided the stated +conditions are met. This License explicitly affirms your unlimited +permission to run the unmodified Program. The output from running a +covered work is covered by this License only if the output, given its +content, constitutes a covered work. This License acknowledges your +rights of fair use or other equivalent, as provided by copyright law. + + You may make, run and propagate covered works that you do not +convey, without conditions so long as your license otherwise remains +in force. You may convey covered works to others for the sole purpose +of having them make modifications exclusively for you, or provide you +with facilities for running those works, provided that you comply with +the terms of this License in conveying all material for which you do +not control copyright. Those thus making or running the covered works +for you must do so exclusively on your behalf, under your direction +and control, on terms that prohibit them from making any copies of +your copyrighted material outside their relationship with you. + + Conveying under any other circumstances is permitted solely under +the conditions stated below. Sublicensing is not allowed; section 10 +makes it unnecessary. + + 3. Protecting Users' Legal Rights From Anti-Circumvention Law. + + No covered work shall be deemed part of an effective technological +measure under any applicable law fulfilling obligations under article +11 of the WIPO copyright treaty adopted on 20 December 1996, or +similar laws prohibiting or restricting circumvention of such +measures. + + When you convey a covered work, you waive any legal power to forbid +circumvention of technological measures to the extent such circumvention +is effected by exercising rights under this License with respect to +the covered work, and you disclaim any intention to limit operation or +modification of the work as a means of enforcing, against the work's +users, your or third parties' legal rights to forbid circumvention of +technological measures. + + 4. Conveying Verbatim Copies. + + You may convey verbatim copies of the Program's source code as you +receive it, in any medium, provided that you conspicuously and +appropriately publish on each copy an appropriate copyright notice; +keep intact all notices stating that this License and any +non-permissive terms added in accord with section 7 apply to the code; +keep intact all notices of the absence of any warranty; and give all +recipients a copy of this License along with the Program. + + You may charge any price or no price for each copy that you convey, +and you may offer support or warranty protection for a fee. + + 5. Conveying Modified Source Versions. + + You may convey a work based on the Program, or the modifications to +produce it from the Program, in the form of source code under the +terms of section 4, provided that you also meet all of these conditions: + + a) The work must carry prominent notices stating that you modified + it, and giving a relevant date. + + b) The work must carry prominent notices stating that it is + released under this License and any conditions added under section + 7. This requirement modifies the requirement in section 4 to + "keep intact all notices". + + c) You must license the entire work, as a whole, under this + License to anyone who comes into possession of a copy. This + License will therefore apply, along with any applicable section 7 + additional terms, to the whole of the work, and all its parts, + regardless of how they are packaged. This License gives no + permission to license the work in any other way, but it does not + invalidate such permission if you have separately received it. + + d) If the work has interactive user interfaces, each must display + Appropriate Legal Notices; however, if the Program has interactive + interfaces that do not display Appropriate Legal Notices, your + work need not make them do so. + + A compilation of a covered work with other separate and independent +works, which are not by their nature extensions of the covered work, +and which are not combined with it such as to form a larger program, +in or on a volume of a storage or distribution medium, is called an +"aggregate" if the compilation and its resulting copyright are not +used to limit the access or legal rights of the compilation's users +beyond what the individual works permit. Inclusion of a covered work +in an aggregate does not cause this License to apply to the other +parts of the aggregate. + + 6. Conveying Non-Source Forms. + + You may convey a covered work in object code form under the terms +of sections 4 and 5, provided that you also convey the +machine-readable Corresponding Source under the terms of this License, +in one of these ways: + + a) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by the + Corresponding Source fixed on a durable physical medium + customarily used for software interchange. + + b) Convey the object code in, or embodied in, a physical product + (including a physical distribution medium), accompanied by a + written offer, valid for at least three years and valid for as + long as you offer spare parts or customer support for that product + model, to give anyone who possesses the object code either (1) a + copy of the Corresponding Source for all the software in the + product that is covered by this License, on a durable physical + medium customarily used for software interchange, for a price no + more than your reasonable cost of physically performing this + conveying of source, or (2) access to copy the + Corresponding Source from a network server at no charge. + + c) Convey individual copies of the object code with a copy of the + written offer to provide the Corresponding Source. This + alternative is allowed only occasionally and noncommercially, and + only if you received the object code with such an offer, in accord + with subsection 6b. + + d) Convey the object code by offering access from a designated + place (gratis or for a charge), and offer equivalent access to the + Corresponding Source in the same way through the same place at no + further charge. You need not require recipients to copy the + Corresponding Source along with the object code. If the place to + copy the object code is a network server, the Corresponding Source + may be on a different server (operated by you or a third party) + that supports equivalent copying facilities, provided you maintain + clear directions next to the object code saying where to find the + Corresponding Source. Regardless of what server hosts the + Corresponding Source, you remain obligated to ensure that it is + available for as long as needed to satisfy these requirements. + + e) Convey the object code using peer-to-peer transmission, provided + you inform other peers where the object code and Corresponding + Source of the work are being offered to the general public at no + charge under subsection 6d. + + A separable portion of the object code, whose source code is excluded +from the Corresponding Source as a System Library, need not be +included in conveying the object code work. + + A "User Product" is either (1) a "consumer product", which means any +tangible personal property which is normally used for personal, family, +or household purposes, or (2) anything designed or sold for incorporation +into a dwelling. In determining whether a product is a consumer product, +doubtful cases shall be resolved in favor of coverage. For a particular +product received by a particular user, "normally used" refers to a +typical or common use of that class of product, regardless of the status +of the particular user or of the way in which the particular user +actually uses, or expects or is expected to use, the product. A product +is a consumer product regardless of whether the product has substantial +commercial, industrial or non-consumer uses, unless such uses represent +the only significant mode of use of the product. + + "Installation Information" for a User Product means any methods, +procedures, authorization keys, or other information required to install +and execute modified versions of a covered work in that User Product from +a modified version of its Corresponding Source. The information must +suffice to ensure that the continued functioning of the modified object +code is in no case prevented or interfered with solely because +modification has been made. + + If you convey an object code work under this section in, or with, or +specifically for use in, a User Product, and the conveying occurs as +part of a transaction in which the right of possession and use of the +User Product is transferred to the recipient in perpetuity or for a +fixed term (regardless of how the transaction is characterized), the +Corresponding Source conveyed under this section must be accompanied +by the Installation Information. But this requirement does not apply +if neither you nor any third party retains the ability to install +modified object code on the User Product (for example, the work has +been installed in ROM). + + The requirement to provide Installation Information does not include a +requirement to continue to provide support service, warranty, or updates +for a work that has been modified or installed by the recipient, or for +the User Product in which it has been modified or installed. Access to a +network may be denied when the modification itself materially and +adversely affects the operation of the network or violates the rules and +protocols for communication across the network. + + Corresponding Source conveyed, and Installation Information provided, +in accord with this section must be in a format that is publicly +documented (and with an implementation available to the public in +source code form), and must require no special password or key for +unpacking, reading or copying. + + 7. Additional Terms. + + "Additional permissions" are terms that supplement the terms of this +License by making exceptions from one or more of its conditions. +Additional permissions that are applicable to the entire Program shall +be treated as though they were included in this License, to the extent +that they are valid under applicable law. If additional permissions +apply only to part of the Program, that part may be used separately +under those permissions, but the entire Program remains governed by +this License without regard to the additional permissions. + + When you convey a copy of a covered work, you may at your option +remove any additional permissions from that copy, or from any part of +it. (Additional permissions may be written to require their own +removal in certain cases when you modify the work.) You may place +additional permissions on material, added by you to a covered work, +for which you have or can give appropriate copyright permission. + + Notwithstanding any other provision of this License, for material you +add to a covered work, you may (if authorized by the copyright holders of +that material) supplement the terms of this License with terms: + + a) Disclaiming warranty or limiting liability differently from the + terms of sections 15 and 16 of this License; or + + b) Requiring preservation of specified reasonable legal notices or + author attributions in that material or in the Appropriate Legal + Notices displayed by works containing it; or + + c) Prohibiting misrepresentation of the origin of that material, or + requiring that modified versions of such material be marked in + reasonable ways as different from the original version; or + + d) Limiting the use for publicity purposes of names of licensors or + authors of the material; or + + e) Declining to grant rights under trademark law for use of some + trade names, trademarks, or service marks; or + + f) Requiring indemnification of licensors and authors of that + material by anyone who conveys the material (or modified versions of + it) with contractual assumptions of liability to the recipient, for + any liability that these contractual assumptions directly impose on + those licensors and authors. + + All other non-permissive additional terms are considered "further +restrictions" within the meaning of section 10. If the Program as you +received it, or any part of it, contains a notice stating that it is +governed by this License along with a term that is a further +restriction, you may remove that term. If a license document contains +a further restriction but permits relicensing or conveying under this +License, you may add to a covered work material governed by the terms +of that license document, provided that the further restriction does +not survive such relicensing or conveying. + + If you add terms to a covered work in accord with this section, you +must place, in the relevant source files, a statement of the +additional terms that apply to those files, or a notice indicating +where to find the applicable terms. + + Additional terms, permissive or non-permissive, may be stated in the +form of a separately written license, or stated as exceptions; +the above requirements apply either way. + + 8. Termination. + + You may not propagate or modify a covered work except as expressly +provided under this License. Any attempt otherwise to propagate or +modify it is void, and will automatically terminate your rights under +this License (including any patent licenses granted under the third +paragraph of section 11). + + However, if you cease all violation of this License, then your +license from a particular copyright holder is reinstated (a) +provisionally, unless and until the copyright holder explicitly and +finally terminates your license, and (b) permanently, if the copyright +holder fails to notify you of the violation by some reasonable means +prior to 60 days after the cessation. + + Moreover, your license from a particular copyright holder is +reinstated permanently if the copyright holder notifies you of the +violation by some reasonable means, this is the first time you have +received notice of violation of this License (for any work) from that +copyright holder, and you cure the violation prior to 30 days after +your receipt of the notice. + + Termination of your rights under this section does not terminate the +licenses of parties who have received copies or rights from you under +this License. If your rights have been terminated and not permanently +reinstated, you do not qualify to receive new licenses for the same +material under section 10. + + 9. Acceptance Not Required for Having Copies. + + You are not required to accept this License in order to receive or +run a copy of the Program. Ancillary propagation of a covered work +occurring solely as a consequence of using peer-to-peer transmission +to receive a copy likewise does not require acceptance. However, +nothing other than this License grants you permission to propagate or +modify any covered work. These actions infringe copyright if you do +not accept this License. Therefore, by modifying or propagating a +covered work, you indicate your acceptance of this License to do so. + + 10. Automatic Licensing of Downstream Recipients. + + Each time you convey a covered work, the recipient automatically +receives a license from the original licensors, to run, modify and +propagate that work, subject to this License. You are not responsible +for enforcing compliance by third parties with this License. + + An "entity transaction" is a transaction transferring control of an +organization, or substantially all assets of one, or subdividing an +organization, or merging organizations. If propagation of a covered +work results from an entity transaction, each party to that +transaction who receives a copy of the work also receives whatever +licenses to the work the party's predecessor in interest had or could +give under the previous paragraph, plus a right to possession of the +Corresponding Source of the work from the predecessor in interest, if +the predecessor has it or can get it with reasonable efforts. + + You may not impose any further restrictions on the exercise of the +rights granted or affirmed under this License. For example, you may +not impose a license fee, royalty, or other charge for exercise of +rights granted under this License, and you may not initiate litigation +(including a cross-claim or counterclaim in a lawsuit) alleging that +any patent claim is infringed by making, using, selling, offering for +sale, or importing the Program or any portion of it. + + 11. Patents. + + A "contributor" is a copyright holder who authorizes use under this +License of the Program or a work on which the Program is based. The +work thus licensed is called the contributor's "contributor version". + + A contributor's "essential patent claims" are all patent claims +owned or controlled by the contributor, whether already acquired or +hereafter acquired, that would be infringed by some manner, permitted +by this License, of making, using, or selling its contributor version, +but do not include claims that would be infringed only as a +consequence of further modification of the contributor version. For +purposes of this definition, "control" includes the right to grant +patent sublicenses in a manner consistent with the requirements of +this License. + + Each contributor grants you a non-exclusive, worldwide, royalty-free +patent license under the contributor's essential patent claims, to +make, use, sell, offer for sale, import and otherwise run, modify and +propagate the contents of its contributor version. + + In the following three paragraphs, a "patent license" is any express +agreement or commitment, however denominated, not to enforce a patent +(such as an express permission to practice a patent or covenant not to +sue for patent infringement). To "grant" such a patent license to a +party means to make such an agreement or commitment not to enforce a +patent against the party. + + If you convey a covered work, knowingly relying on a patent license, +and the Corresponding Source of the work is not available for anyone +to copy, free of charge and under the terms of this License, through a +publicly available network server or other readily accessible means, +then you must either (1) cause the Corresponding Source to be so +available, or (2) arrange to deprive yourself of the benefit of the +patent license for this particular work, or (3) arrange, in a manner +consistent with the requirements of this License, to extend the patent +license to downstream recipients. "Knowingly relying" means you have +actual knowledge that, but for the patent license, your conveying the +covered work in a country, or your recipient's use of the covered work +in a country, would infringe one or more identifiable patents in that +country that you have reason to believe are valid. + + If, pursuant to or in connection with a single transaction or +arrangement, you convey, or propagate by procuring conveyance of, a +covered work, and grant a patent license to some of the parties +receiving the covered work authorizing them to use, propagate, modify +or convey a specific copy of the covered work, then the patent license +you grant is automatically extended to all recipients of the covered +work and works based on it. + + A patent license is "discriminatory" if it does not include within +the scope of its coverage, prohibits the exercise of, or is +conditioned on the non-exercise of one or more of the rights that are +specifically granted under this License. You may not convey a covered +work if you are a party to an arrangement with a third party that is +in the business of distributing software, under which you make payment +to the third party based on the extent of your activity of conveying +the work, and under which the third party grants, to any of the +parties who would receive the covered work from you, a discriminatory +patent license (a) in connection with copies of the covered work +conveyed by you (or copies made from those copies), or (b) primarily +for and in connection with specific products or compilations that +contain the covered work, unless you entered into that arrangement, +or that patent license was granted, prior to 28 March 2007. + + Nothing in this License shall be construed as excluding or limiting +any implied license or other defenses to infringement that may +otherwise be available to you under applicable patent law. + + 12. No Surrender of Others' Freedom. + + If conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot convey a +covered work so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you may +not convey it at all. For example, if you agree to terms that obligate you +to collect a royalty for further conveying from those to whom you convey +the Program, the only way you could satisfy both those terms and this +License would be to refrain entirely from conveying the Program. + + 13. Remote Network Interaction; Use with the GNU General Public License. + + Notwithstanding any other provision of this License, if you modify the +Program, your modified version must prominently offer all users +interacting with it remotely through a computer network (if your version +supports such interaction) an opportunity to receive the Corresponding +Source of your version by providing access to the Corresponding Source +from a network server at no charge, through some standard or customary +means of facilitating copying of software. This Corresponding Source +shall include the Corresponding Source for any work covered by version 3 +of the GNU General Public License that is incorporated pursuant to the +following paragraph. + + Notwithstanding any other provision of this License, you have +permission to link or combine any covered work with a work licensed +under version 3 of the GNU General Public License into a single +combined work, and to convey the resulting work. The terms of this +License will continue to apply to the part which is the covered work, +but the work with which it is combined will remain governed by version +3 of the GNU General Public License. + + 14. Revised Versions of this License. + + The Free Software Foundation may publish revised and/or new versions of +the GNU Affero General Public License from time to time. Such new versions +will be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + + Each version is given a distinguishing version number. If the +Program specifies that a certain numbered version of the GNU Affero General +Public License "or any later version" applies to it, you have the +option of following the terms and conditions either of that numbered +version or of any later version published by the Free Software +Foundation. If the Program does not specify a version number of the +GNU Affero General Public License, you may choose any version ever published +by the Free Software Foundation. + + If the Program specifies that a proxy can decide which future +versions of the GNU Affero General Public License can be used, that proxy's +public statement of acceptance of a version permanently authorizes you +to choose that version for the Program. + + Later license versions may give you additional or different +permissions. However, no additional obligations are imposed on any +author or copyright holder as a result of your choosing to follow a +later version. + + 15. Disclaimer of Warranty. + + THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY +APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT +HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY +OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, +THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR +PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM +IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF +ALL NECESSARY SERVICING, REPAIR OR CORRECTION. + + 16. Limitation of Liability. + + IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MODIFIES AND/OR CONVEYS +THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY +GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE +USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF +DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD +PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), +EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF +SUCH DAMAGES. + + 17. Interpretation of Sections 15 and 16. + + If the disclaimer of warranty and limitation of liability provided +above cannot be given local legal effect according to their terms, +reviewing courts shall apply local law that most closely approximates +an absolute waiver of all civil liability in connection with the +Program, unless a warranty or assumption of liability accompanies a +copy of the Program in return for a fee. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +state the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + This program is free software: you can redistribute it and/or modify + it under the terms of the GNU Affero General Public License as published + by the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. + + This program is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU Affero General Public License for more details. + + You should have received a copy of the GNU Affero General Public License + along with this program. If not, see . + +Also add information on how to contact you by electronic and paper mail. + + If your software can interact with users remotely through a computer +network, you should also make sure that it provides a way for users to +get its source. For example, if your program is a web application, its +interface could display a "Source" link that leads users to an archive +of the code. There are many ways you could offer source, and different +solutions will be better for different programs; see section 13 for the +specific requirements. + + You should also get your employer (if you work as a programmer) or school, +if any, to sign a "copyright disclaimer" for the program, if necessary. +For more information on this, and how to apply and follow the GNU AGPL, see +. diff --git a/packages/hs2js/README.md b/packages/hs2js/README.md new file mode 100644 index 00000000..f4ca3ed5 --- /dev/null +++ b/packages/hs2js/README.md @@ -0,0 +1,49 @@ +# hs2js + +Experimental haskell in javascript interpreter. + +## Usage + +### Via Script Tag + +You can load the library directly from a script tag via unpkg: + +```html + + + +``` + +### Via npm + +You need to add `postinstall` to your `package.json` script to copy the parser to your `public` folder: + +```json +{ + "scripts": { + "postinstall": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public" + } +} +``` + +Depending on your setup, replace `public` with the folder that will serve your assets to `/`. Then install the package: + +```sh +npm i hs2js +``` + +and use it: + +```js +import * as hs2js from 'hs2js'; +hs2js.loadParser(); +document.getElementById('hello').addEventListener('click', () => { + hs2js.evaluate('alert "hello from haskell!"'); +}); +``` diff --git a/packages/hs2js/package.json b/packages/hs2js/package.json new file mode 100644 index 00000000..d0cd0f62 --- /dev/null +++ b/packages/hs2js/package.json @@ -0,0 +1,33 @@ +{ + "name": "hs2js", + "version": "0.0.4", + "description": "Experimental Haskell in JavaScript interpreter", + "main": "dist/index.js", + "module": "dist/index.mjs", + "scripts": { + "build-wasm": "tree-sitter build-wasm node_modules/tree-sitter-haskell && mv tree-sitter-haskell.wasm ./dist/ && cp node_modules/web-tree-sitter/tree-sitter.wasm ./dist/", + "build": "vite build && npm run build-wasm", + "prepublishOnly": "npm run build" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/felixroos/hs2js.git" + }, + "keywords": [ + "haskell", + "javascript" + ], + "author": "Felix Roos ", + "license": "AGPL-3.0-or-later", + "bugs": { + "url": "https://github.com/tidalcycles/strudel/issues" + }, + "homepage": "https://github.com/tidalcycles/strudel/tree/main/packages/hs2js", + "dependencies": { + "web-tree-sitter": "^0.20.8" + }, + "devDependencies": { + "vite": "^5.0.10", + "tree-sitter-haskell": "^0.21.0" + } +} diff --git a/packages/hs2js/pnpm-lock.yaml b/packages/hs2js/pnpm-lock.yaml new file mode 100644 index 00000000..9043fd41 --- /dev/null +++ b/packages/hs2js/pnpm-lock.yaml @@ -0,0 +1,520 @@ +lockfileVersion: '6.0' + +settings: + autoInstallPeers: true + excludeLinksFromLockfile: false + +dependencies: + web-tree-sitter: + specifier: ^0.20.8 + version: 0.20.8 + +devDependencies: + tree-sitter-haskell: + specifier: ^0.21.0 + version: 0.21.0(tree-sitter@0.21.1) + vite: + specifier: ^5.0.10 + version: 5.2.11 + +packages: + + /@esbuild/aix-ppc64@0.20.2: + resolution: {integrity: sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [aix] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm64@0.20.2: + resolution: {integrity: sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==} + engines: {node: '>=12'} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-arm@0.20.2: + resolution: {integrity: sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==} + engines: {node: '>=12'} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/android-x64@0.20.2: + resolution: {integrity: sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==} + engines: {node: '>=12'} + cpu: [x64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-arm64@0.20.2: + resolution: {integrity: sha512-4J6IRT+10J3aJH3l1yzEg9y3wkTDgDk7TSDFX+wKFiWjqWp/iCfLIYzGyasx9l0SAFPT1HwSCR+0w/h1ES/MjA==} + engines: {node: '>=12'} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/darwin-x64@0.20.2: + resolution: {integrity: sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==} + engines: {node: '>=12'} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-arm64@0.20.2: + resolution: {integrity: sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==} + engines: {node: '>=12'} + cpu: [arm64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/freebsd-x64@0.20.2: + resolution: {integrity: sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==} + engines: {node: '>=12'} + cpu: [x64] + os: [freebsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm64@0.20.2: + resolution: {integrity: sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==} + engines: {node: '>=12'} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-arm@0.20.2: + resolution: {integrity: sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==} + engines: {node: '>=12'} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ia32@0.20.2: + resolution: {integrity: sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==} + engines: {node: '>=12'} + cpu: [ia32] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-loong64@0.20.2: + resolution: {integrity: sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==} + engines: {node: '>=12'} + cpu: [loong64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-mips64el@0.20.2: + resolution: {integrity: sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==} + engines: {node: '>=12'} + cpu: [mips64el] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-ppc64@0.20.2: + resolution: {integrity: sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==} + engines: {node: '>=12'} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-riscv64@0.20.2: + resolution: {integrity: sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==} + engines: {node: '>=12'} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-s390x@0.20.2: + resolution: {integrity: sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==} + engines: {node: '>=12'} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/linux-x64@0.20.2: + resolution: {integrity: sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==} + engines: {node: '>=12'} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@esbuild/netbsd-x64@0.20.2: + resolution: {integrity: sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [netbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/openbsd-x64@0.20.2: + resolution: {integrity: sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [openbsd] + requiresBuild: true + dev: true + optional: true + + /@esbuild/sunos-x64@0.20.2: + resolution: {integrity: sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==} + engines: {node: '>=12'} + cpu: [x64] + os: [sunos] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-arm64@0.20.2: + resolution: {integrity: sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==} + engines: {node: '>=12'} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-ia32@0.20.2: + resolution: {integrity: sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==} + engines: {node: '>=12'} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@esbuild/win32-x64@0.20.2: + resolution: {integrity: sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==} + engines: {node: '>=12'} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-android-arm-eabi@4.17.2: + resolution: {integrity: sha512-NM0jFxY8bB8QLkoKxIQeObCaDlJKewVlIEkuyYKm5An1tdVZ966w2+MPQ2l8LBZLjR+SgyV+nRkTIunzOYBMLQ==} + cpu: [arm] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-android-arm64@4.17.2: + resolution: {integrity: sha512-yeX/Usk7daNIVwkq2uGoq2BYJKZY1JfyLTaHO/jaiSwi/lsf8fTFoQW/n6IdAsx5tx+iotu2zCJwz8MxI6D/Bw==} + cpu: [arm64] + os: [android] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-arm64@4.17.2: + resolution: {integrity: sha512-kcMLpE6uCwls023+kknm71ug7MZOrtXo+y5p/tsg6jltpDtgQY1Eq5sGfHcQfb+lfuKwhBmEURDga9N0ol4YPw==} + cpu: [arm64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-darwin-x64@4.17.2: + resolution: {integrity: sha512-AtKwD0VEx0zWkL0ZjixEkp5tbNLzX+FCqGG1SvOu993HnSz4qDI6S4kGzubrEJAljpVkhRSlg5bzpV//E6ysTQ==} + cpu: [x64] + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm-gnueabihf@4.17.2: + resolution: {integrity: sha512-3reX2fUHqN7sffBNqmEyMQVj/CKhIHZd4y631duy0hZqI8Qoqf6lTtmAKvJFYa6bhU95B1D0WgzHkmTg33In0A==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm-musleabihf@4.17.2: + resolution: {integrity: sha512-uSqpsp91mheRgw96xtyAGP9FW5ChctTFEoXP0r5FAzj/3ZRv3Uxjtc7taRQSaQM/q85KEKjKsZuiZM3GyUivRg==} + cpu: [arm] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-gnu@4.17.2: + resolution: {integrity: sha512-EMMPHkiCRtE8Wdk3Qhtciq6BndLtstqZIroHiiGzB3C5LDJmIZcSzVtLRbwuXuUft1Cnv+9fxuDtDxz3k3EW2A==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-arm64-musl@4.17.2: + resolution: {integrity: sha512-NMPylUUZ1i0z/xJUIx6VUhISZDRT+uTWpBcjdv0/zkp7b/bQDF+NfnfdzuTiB1G6HTodgoFa93hp0O1xl+/UbA==} + cpu: [arm64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-powerpc64le-gnu@4.17.2: + resolution: {integrity: sha512-T19My13y8uYXPw/L/k0JYaX1fJKFT/PWdXiHr8mTbXWxjVF1t+8Xl31DgBBvEKclw+1b00Chg0hxE2O7bTG7GQ==} + cpu: [ppc64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-riscv64-gnu@4.17.2: + resolution: {integrity: sha512-BOaNfthf3X3fOWAB+IJ9kxTgPmMqPPH5f5k2DcCsRrBIbWnaJCgX2ll77dV1TdSy9SaXTR5iDXRL8n7AnoP5cg==} + cpu: [riscv64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-s390x-gnu@4.17.2: + resolution: {integrity: sha512-W0UP/x7bnn3xN2eYMql2T/+wpASLE5SjObXILTMPUBDB/Fg/FxC+gX4nvCfPBCbNhz51C+HcqQp2qQ4u25ok6g==} + cpu: [s390x] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-gnu@4.17.2: + resolution: {integrity: sha512-Hy7pLwByUOuyaFC6mAr7m+oMC+V7qyifzs/nW2OJfC8H4hbCzOX07Ov0VFk/zP3kBsELWNFi7rJtgbKYsav9QQ==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-linux-x64-musl@4.17.2: + resolution: {integrity: sha512-h1+yTWeYbRdAyJ/jMiVw0l6fOOm/0D1vNLui9iPuqgRGnXA0u21gAqOyB5iHjlM9MMfNOm9RHCQ7zLIzT0x11Q==} + cpu: [x64] + os: [linux] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-arm64-msvc@4.17.2: + resolution: {integrity: sha512-tmdtXMfKAjy5+IQsVtDiCfqbynAQE/TQRpWdVataHmhMb9DCoJxp9vLcCBjEQWMiUYxO1QprH/HbY9ragCEFLA==} + cpu: [arm64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-ia32-msvc@4.17.2: + resolution: {integrity: sha512-7II/QCSTAHuE5vdZaQEwJq2ZACkBpQDOmQsE6D6XUbnBHW8IAhm4eTufL6msLJorzrHDFv3CF8oCA/hSIRuZeQ==} + cpu: [ia32] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@rollup/rollup-win32-x64-msvc@4.17.2: + resolution: {integrity: sha512-TGGO7v7qOq4CYmSBVEYpI1Y5xDuCEnbVC5Vth8mOsW0gDSzxNrVERPc790IGHsrT2dQSimgMr9Ub3Y1Jci5/8w==} + cpu: [x64] + os: [win32] + requiresBuild: true + dev: true + optional: true + + /@types/estree@1.0.5: + resolution: {integrity: sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==} + dev: true + + /esbuild@0.20.2: + resolution: {integrity: sha512-WdOOppmUNU+IbZ0PaDiTst80zjnrOkyJNHoKupIcVyU8Lvla3Ugx94VzkQ32Ijqd7UhHJy75gNWDMUekcrSJ6g==} + engines: {node: '>=12'} + hasBin: true + requiresBuild: true + optionalDependencies: + '@esbuild/aix-ppc64': 0.20.2 + '@esbuild/android-arm': 0.20.2 + '@esbuild/android-arm64': 0.20.2 + '@esbuild/android-x64': 0.20.2 + '@esbuild/darwin-arm64': 0.20.2 + '@esbuild/darwin-x64': 0.20.2 + '@esbuild/freebsd-arm64': 0.20.2 + '@esbuild/freebsd-x64': 0.20.2 + '@esbuild/linux-arm': 0.20.2 + '@esbuild/linux-arm64': 0.20.2 + '@esbuild/linux-ia32': 0.20.2 + '@esbuild/linux-loong64': 0.20.2 + '@esbuild/linux-mips64el': 0.20.2 + '@esbuild/linux-ppc64': 0.20.2 + '@esbuild/linux-riscv64': 0.20.2 + '@esbuild/linux-s390x': 0.20.2 + '@esbuild/linux-x64': 0.20.2 + '@esbuild/netbsd-x64': 0.20.2 + '@esbuild/openbsd-x64': 0.20.2 + '@esbuild/sunos-x64': 0.20.2 + '@esbuild/win32-arm64': 0.20.2 + '@esbuild/win32-ia32': 0.20.2 + '@esbuild/win32-x64': 0.20.2 + dev: true + + /fsevents@2.3.3: + resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} + engines: {node: ^8.16.0 || ^10.6.0 || >=11.0.0} + os: [darwin] + requiresBuild: true + dev: true + optional: true + + /nanoid@3.3.7: + resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} + hasBin: true + dev: true + + /node-addon-api@8.0.0: + resolution: {integrity: sha512-ipO7rsHEBqa9STO5C5T10fj732ml+5kLN1cAG8/jdHd56ldQeGj3Q7+scUS+VHK/qy1zLEwC4wMK5+yM0btPvw==} + engines: {node: ^18 || ^20 || >= 21} + dev: true + + /node-gyp-build@4.8.1: + resolution: {integrity: sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==} + hasBin: true + dev: true + + /picocolors@1.0.1: + resolution: {integrity: sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==} + dev: true + + /postcss@8.4.38: + resolution: {integrity: sha512-Wglpdk03BSfXkHoQa3b/oulrotAkwrlLDRSOb9D0bN86FdRyE9lppSp33aHNPgBa0JKCoB+drFLZkQoRRYae5A==} + engines: {node: ^10 || ^12 || >=14} + dependencies: + nanoid: 3.3.7 + picocolors: 1.0.1 + source-map-js: 1.2.0 + dev: true + + /rollup@4.17.2: + resolution: {integrity: sha512-/9ClTJPByC0U4zNLowV1tMBe8yMEAxewtR3cUNX5BoEpGH3dQEWpJLr6CLp0fPdYRF/fzVOgvDb1zXuakwF5kQ==} + engines: {node: '>=18.0.0', npm: '>=8.0.0'} + hasBin: true + dependencies: + '@types/estree': 1.0.5 + optionalDependencies: + '@rollup/rollup-android-arm-eabi': 4.17.2 + '@rollup/rollup-android-arm64': 4.17.2 + '@rollup/rollup-darwin-arm64': 4.17.2 + '@rollup/rollup-darwin-x64': 4.17.2 + '@rollup/rollup-linux-arm-gnueabihf': 4.17.2 + '@rollup/rollup-linux-arm-musleabihf': 4.17.2 + '@rollup/rollup-linux-arm64-gnu': 4.17.2 + '@rollup/rollup-linux-arm64-musl': 4.17.2 + '@rollup/rollup-linux-powerpc64le-gnu': 4.17.2 + '@rollup/rollup-linux-riscv64-gnu': 4.17.2 + '@rollup/rollup-linux-s390x-gnu': 4.17.2 + '@rollup/rollup-linux-x64-gnu': 4.17.2 + '@rollup/rollup-linux-x64-musl': 4.17.2 + '@rollup/rollup-win32-arm64-msvc': 4.17.2 + '@rollup/rollup-win32-ia32-msvc': 4.17.2 + '@rollup/rollup-win32-x64-msvc': 4.17.2 + fsevents: 2.3.3 + dev: true + + /source-map-js@1.2.0: + resolution: {integrity: sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==} + engines: {node: '>=0.10.0'} + dev: true + + /tree-sitter-haskell@0.21.0(tree-sitter@0.21.1): + resolution: {integrity: sha512-b2RLegPHuYPh7nJ3YKWgkWnFYxmYlQDE8TDJuNH+iuNuBcCMYyaA9JlJlMHfCvf7DmJNPtqqbO9Kh9NXEmbatQ==} + requiresBuild: true + peerDependencies: + tree-sitter: ^0.21.0 + tree_sitter: '*' + peerDependenciesMeta: + tree_sitter: + optional: true + dependencies: + node-addon-api: 8.0.0 + node-gyp-build: 4.8.1 + tree-sitter: 0.21.1 + dev: true + + /tree-sitter@0.21.1: + resolution: {integrity: sha512-7dxoA6kYvtgWw80265MyqJlkRl4yawIjO7S5MigytjELkX43fV2WsAXzsNfO7sBpPPCF5Gp0+XzHk0DwLCq3xQ==} + requiresBuild: true + dependencies: + node-addon-api: 8.0.0 + node-gyp-build: 4.8.1 + dev: true + + /vite@5.2.11: + resolution: {integrity: sha512-HndV31LWW05i1BLPMUCE1B9E9GFbOu1MbenhS58FuK6owSO5qHm7GiCotrNY1YE5rMeQSFBGmT5ZaLEjFizgiQ==} + engines: {node: ^18.0.0 || >=20.0.0} + hasBin: true + peerDependencies: + '@types/node': ^18.0.0 || >=20.0.0 + less: '*' + lightningcss: ^1.21.0 + sass: '*' + stylus: '*' + sugarss: '*' + terser: ^5.4.0 + peerDependenciesMeta: + '@types/node': + optional: true + less: + optional: true + lightningcss: + optional: true + sass: + optional: true + stylus: + optional: true + sugarss: + optional: true + terser: + optional: true + dependencies: + esbuild: 0.20.2 + postcss: 8.4.38 + rollup: 4.17.2 + optionalDependencies: + fsevents: 2.3.3 + dev: true + + /web-tree-sitter@0.20.8: + resolution: {integrity: sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==} + dev: false diff --git a/packages/hs2js/src/hs2js.mjs b/packages/hs2js/src/hs2js.mjs new file mode 100644 index 00000000..1f894d14 --- /dev/null +++ b/packages/hs2js/src/hs2js.mjs @@ -0,0 +1,139 @@ +import { parse } from "./parser.mjs"; + +function runApply(node, scope, ops) { + if (node.children.length !== 2) + throw new Error( + `expected 2 children for node type apply, got ${node.children.length}` + ); + const [fn, arg] = node.children.map((child) => run(child, scope, ops)); + if (typeof fn !== "function") { + throw new Error(`${node.children[0].text} is not a function`); + } + // only works if fn is curried! + return fn(arg); +} + +function runInfix(left, symbol, right, ops) { + const customOp = ops[symbol]; + if (customOp) { + return customOp(left, right); + } + switch (symbol) { + case "+": + return left + right; + case "-": + return left - right; + case "*": + return left * right; + case "/": + return left / right; + case "$": + return left(right); + case "&": + console.log("right", right); + return right(left); + case ".": + return (x) => left(right(x)); + default: + throw new Error("unexpected infix operator " + symbol); + } +} + +function curry(patterns, body, scope, ops) { + const [variable, ...rest] = patterns; + return (arg) => { + let _scope = { ...scope, [variable.text]: arg }; + if (patterns.length === 1) { + const result = run(body, _scope, ops); + return result; + } + return curry(rest, body, _scope, ops); + }; +} + +export function run(node, scope, ops = {}) { + let runInScope = (node, scp = scope) => run(node, scp, ops); + //console.log("node", node.type, node.text); + switch (node.type) { + case "ERROR": + throw new Error(`invalid syntax: "${node.text}"`); + case "declarations": + let result; + node.children.forEach((declaration) => { + result = runInScope(declaration); + }); + return result; + case "integer": + return Number(node.text); + case "float": + return Number(node.text); + case "string": + const str = node.text.slice(1, -1); + return String(str); + case "lambda": + const [_, lpatterns, __, lbody] = node.children; + return curry(lpatterns.children, lbody, scope, ops); + case "function": + const [fvariable, fpatterns, fbody] = node.children; + scope[fvariable.text] = curry(fpatterns.children, fbody, scope, ops); + return scope[fvariable.text]; + case "list": { + return node.children + .filter((_, i) => i % 2 === 1) // elements are at odd indices + .map((node) => runInScope(node)); + } + case "match": + if (node.children[0].text !== "=" || node.children.length !== 2) { + throw new Error("match node so far only support simple assignments"); + } + return runInScope(node.children[1]); + case "bind": + if (node.children.length !== 2) + throw new Error("expected 2 children for node type bind"); + if (node.children[0].type !== "variable") + throw new Error("expected variable as first child of bind node"); + if (node.children[1].type !== "match") + throw new Error("expected match as first child of bind node"); + const [bvariable, bmatch] = node.children; + const value = runInScope(bmatch); + scope[bvariable.text] = value; + return value; + case "variable": + return scope[node.text]; + case "infix": { + const [a, op, b] = node.children; + const symbol = op.text; + const [left, right] = [runInScope(a), runInScope(b)]; + return runInfix(left, symbol, right, ops); + } + case "apply": + return runApply(node, scope, ops); + case "left_section": { + const [_, b, op] = node.children; + const right = runInScope(b); + return (left) => runInfix(left, op.text, right, ops); + } + case "right_section": { + const [_, op, b] = node.children; + const right = runInScope(b); + return (left) => runInfix(left, op.text, right, ops); + } + case "parens": + if (node.children.length !== 3) + throw new Error("expected 3 children for node type parens"); + return runInScope(node.children[1]); + default: + if (node.children.length === 0) { + throw new Error("unhandled leaf type " + node.type); + } + if (node.children.length > 1) { + throw new Error("unhandled branch type " + node.type); + } + return runInScope(node.children[0]); + } +} + +export async function evaluate(haskellCode, scope = globalThis, ops) { + const ast = await parse(haskellCode); + return run(ast.rootNode, scope, ops); +} diff --git a/packages/hs2js/src/index.mjs b/packages/hs2js/src/index.mjs new file mode 100644 index 00000000..170ef1b6 --- /dev/null +++ b/packages/hs2js/src/index.mjs @@ -0,0 +1,2 @@ +export * from "./hs2js.mjs"; +export * from "./parser.mjs"; diff --git a/packages/hs2js/src/parser.mjs b/packages/hs2js/src/parser.mjs new file mode 100644 index 00000000..829a5da3 --- /dev/null +++ b/packages/hs2js/src/parser.mjs @@ -0,0 +1,37 @@ +import Parser from "web-tree-sitter"; + +let base = "/"; +export function setBase(path) { + base = path; +} + +async function _loadParser() { + await Parser.init({ + locateFile(scriptName, scriptDirectory) { + return `${base}${scriptName}`; + }, + }); + const parser = new Parser(); + const Lang = await Parser.Language.load(`${base}tree-sitter-haskell.wasm`); + parser.setLanguage(Lang); + return parser; +} + +let parserLoaded; +export function loadParser() { + if (!parserLoaded) { + parserLoaded = _loadParser(); + } + return parserLoaded; +} + +export async function parse(code) { + const parser = await loadParser(); + // for some reason, the parser doesn't like new lines.. + return parser.parse( + code + .replaceAll("\n\n", "~~~~") + .replaceAll("\n", "") + .replaceAll("~~~~", "\n") + ); +} diff --git a/packages/hs2js/vite.config.mjs b/packages/hs2js/vite.config.mjs new file mode 100644 index 00000000..9eb4a07a --- /dev/null +++ b/packages/hs2js/vite.config.mjs @@ -0,0 +1,20 @@ +import { defineConfig } from "vite"; +import { resolve } from "path"; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [], + build: { + lib: { + entry: resolve(__dirname, "src", "index.mjs"), + name: "hs2js", + formats: ["es", "iife"], + fileName: (ext) => ({ es: "index.mjs", iife: "index.js" }[ext]), + }, + rollupOptions: { + // external: [...Object.keys(dependencies)], + plugins: [], + }, + target: "esnext", + }, +}); diff --git a/packages/tidal/main.js b/packages/tidal/main.js index b1d40198..0b2ac7d5 100644 --- a/packages/tidal/main.js +++ b/packages/tidal/main.js @@ -1,6 +1,5 @@ -import { run } from './hs2js.mjs'; +import { run, parse } from 'hs2js'; import { renderGraph } from './graph.mjs'; -import { parse } from './parser.mjs'; import { initStrudel, reify, late, samples, stack } from '@strudel/web'; initStrudel({ prebake: () => samples('github:tidalcycles/dirt-samples'), diff --git a/packages/tidal/package.json b/packages/tidal/package.json index 7d8b72e4..7c12cbb6 100644 --- a/packages/tidal/package.json +++ b/packages/tidal/package.json @@ -7,8 +7,7 @@ "dev": "vite", "build": "vite build", "preview": "vite preview", - "postinstall": "cp node_modules/web-tree-sitter/tree-sitter.wasm public && npm run build:parser", - "build:parser": "tree-sitter build-wasm node_modules/tree-sitter-haskell && mv tree-sitter-haskell.wasm public" + "postinstall": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public" }, "repository": { "type": "git", @@ -30,13 +29,10 @@ "dependencies": { "@hpcc-js/wasm": "^2.15.3", "jgf-dot": "^1.1.1", - "web-tree-sitter": "^0.22.6", - "tree-sitter-haskell": "^0.21.0", - "@strudel/web": "workspace:*" + "@strudel/web": "workspace:*", + "hs2js": "workspace:*" }, "devDependencies": { - "tree-sitter": "^0.21.1", - "tree-sitter-cli": "^0.20.8", "vite": "^5.0.8" } } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 577954cb..8ac9adb0 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -251,6 +251,19 @@ importers: packages/embed: {} + packages/hs2js: + dependencies: + web-tree-sitter: + specifier: ^0.20.8 + version: 0.20.8 + devDependencies: + tree-sitter-haskell: + specifier: ^0.21.0 + version: 0.21.0(tree-sitter@0.21.1) + vite: + specifier: ^5.0.10 + version: 5.2.2(@types/node@20.10.6) + packages/hydra: dependencies: '@strudel/core': @@ -417,22 +430,13 @@ importers: '@strudel/web': specifier: workspace:* version: link:../web + hs2js: + specifier: workspace:* + version: link:../hs2js jgf-dot: specifier: ^1.1.1 version: 1.1.1 - tree-sitter-haskell: - specifier: ^0.21.0 - version: 0.21.0(tree-sitter@0.21.1) - web-tree-sitter: - specifier: ^0.22.6 - version: 0.22.6 devDependencies: - tree-sitter: - specifier: ^0.21.1 - version: 0.21.1 - tree-sitter-cli: - specifier: ^0.20.8 - version: 0.20.8 vite: specifier: ^5.0.8 version: 5.2.2(@types/node@20.10.6) @@ -10730,6 +10734,7 @@ packages: /node-addon-api@8.0.0: resolution: {integrity: sha512-ipO7rsHEBqa9STO5C5T10fj732ml+5kLN1cAG8/jdHd56ldQeGj3Q7+scUS+VHK/qy1zLEwC4wMK5+yM0btPvw==} engines: {node: ^18 || ^20 || >= 21} + dev: true /node-domexception@1.0.0: resolution: {integrity: sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==} @@ -10777,6 +10782,7 @@ packages: /node-gyp-build@4.8.1: resolution: {integrity: sha512-OSs33Z9yWr148JZcbZd5WiAXhh/n9z8TxQcdMhIOlpN9AhWpLfvVFO73+m77bBABQMaY9XSvIa+qk0jlI7Gcaw==} hasBin: true + dev: true /node-gyp@10.0.1: resolution: {integrity: sha512-gg3/bHehQfZivQVfqIyy8wTdSymF9yTyP4CJifK73imyNMU8AIGQE2pUa7dNWfmMeG9cDVF2eehiRMv0LC1iAg==} @@ -13507,12 +13513,6 @@ packages: punycode: 2.3.1 dev: true - /tree-sitter-cli@0.20.8: - resolution: {integrity: sha512-XjTcS3wdTy/2cc/ptMLc/WRyOLECRYcMTrSWyhZnj1oGSOWbHLTklgsgRICU3cPfb0vy+oZCC33M43u6R1HSCA==} - hasBin: true - requiresBuild: true - dev: true - /tree-sitter-haskell@0.21.0(tree-sitter@0.21.1): resolution: {integrity: sha512-b2RLegPHuYPh7nJ3YKWgkWnFYxmYlQDE8TDJuNH+iuNuBcCMYyaA9JlJlMHfCvf7DmJNPtqqbO9Kh9NXEmbatQ==} requiresBuild: true @@ -13526,7 +13526,7 @@ packages: node-addon-api: 8.0.0 node-gyp-build: 4.8.1 tree-sitter: 0.21.1 - dev: false + dev: true /tree-sitter@0.21.1: resolution: {integrity: sha512-7dxoA6kYvtgWw80265MyqJlkRl4yawIjO7S5MigytjELkX43fV2WsAXzsNfO7sBpPPCF5Gp0+XzHk0DwLCq3xQ==} @@ -13534,6 +13534,7 @@ packages: dependencies: node-addon-api: 8.0.0 node-gyp-build: 4.8.1 + dev: true /trim-lines@3.0.1: resolution: {integrity: sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==} @@ -14333,10 +14334,6 @@ packages: resolution: {integrity: sha512-weOVgZ3aAARgdnb220GqYuh7+rZU0Ka9k9yfKtGAzEYMa6GgiCzW9JjQRJyCJakvibQW+dfjJdihjInKuuCAUQ==} dev: false - /web-tree-sitter@0.22.6: - resolution: {integrity: sha512-hS87TH71Zd6mGAmYCvlgxeGDjqd9GTeqXNqTT+u0Gs51uIozNIaaq/kUAbV/Zf56jb2ZOyG8BxZs2GG9wbLi6Q==} - dev: false - /webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} From 0123f4e5f3c5abf2871c6a61de51d4d0865d7ec9 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Fri, 17 May 2024 10:02:14 +0200 Subject: [PATCH 053/805] fix lint errors + cleanup --- .eslintignore | 2 +- packages/hs2js/src/hs2js.mjs | 78 +++++++++----------- packages/hs2js/src/index.mjs | 4 +- packages/hs2js/src/parser.mjs | 11 +-- packages/hs2js/vite.config.js | 20 +++++ packages/hs2js/vite.config.mjs | 20 ----- packages/tidal/hs2js.mjs | 130 --------------------------------- packages/tidal/parser.mjs | 22 ------ 8 files changed, 62 insertions(+), 225 deletions(-) create mode 100644 packages/hs2js/vite.config.js delete mode 100644 packages/hs2js/vite.config.mjs delete mode 100644 packages/tidal/hs2js.mjs delete mode 100644 packages/tidal/parser.mjs diff --git a/.eslintignore b/.eslintignore index a16bd3cd..30e8a0ff 100644 --- a/.eslintignore +++ b/.eslintignore @@ -22,4 +22,4 @@ vite.config.js reverbGen.mjs hydra.mjs jsdoc-synonyms.js -packages/tidal/hs2js.mjs \ No newline at end of file +packages/hs2js/src/hs2js.mjs \ No newline at end of file diff --git a/packages/hs2js/src/hs2js.mjs b/packages/hs2js/src/hs2js.mjs index 1f894d14..e7b7cf46 100644 --- a/packages/hs2js/src/hs2js.mjs +++ b/packages/hs2js/src/hs2js.mjs @@ -1,12 +1,10 @@ -import { parse } from "./parser.mjs"; +import { parse } from './parser.mjs'; function runApply(node, scope, ops) { if (node.children.length !== 2) - throw new Error( - `expected 2 children for node type apply, got ${node.children.length}` - ); + throw new Error(`expected 2 children for node type apply, got ${node.children.length}`); const [fn, arg] = node.children.map((child) => run(child, scope, ops)); - if (typeof fn !== "function") { + if (typeof fn !== 'function') { throw new Error(`${node.children[0].text} is not a function`); } // only works if fn is curried! @@ -19,23 +17,23 @@ function runInfix(left, symbol, right, ops) { return customOp(left, right); } switch (symbol) { - case "+": + case '+': return left + right; - case "-": + case '-': return left - right; - case "*": + case '*': return left * right; - case "/": + case '/': return left / right; - case "$": + case '$': return left(right); - case "&": - console.log("right", right); + case '&': + console.log('right', right); return right(left); - case ".": + case '.': return (x) => left(right(x)); default: - throw new Error("unexpected infix operator " + symbol); + throw new Error('unexpected infix operator ' + symbol); } } @@ -55,79 +53,75 @@ export function run(node, scope, ops = {}) { let runInScope = (node, scp = scope) => run(node, scp, ops); //console.log("node", node.type, node.text); switch (node.type) { - case "ERROR": + case 'ERROR': throw new Error(`invalid syntax: "${node.text}"`); - case "declarations": + case 'declarations': let result; node.children.forEach((declaration) => { result = runInScope(declaration); }); return result; - case "integer": + case 'integer': return Number(node.text); - case "float": + case 'float': return Number(node.text); - case "string": + case 'string': const str = node.text.slice(1, -1); return String(str); - case "lambda": + case 'lambda': const [_, lpatterns, __, lbody] = node.children; return curry(lpatterns.children, lbody, scope, ops); - case "function": + case 'function': const [fvariable, fpatterns, fbody] = node.children; scope[fvariable.text] = curry(fpatterns.children, fbody, scope, ops); return scope[fvariable.text]; - case "list": { + case 'list': { return node.children .filter((_, i) => i % 2 === 1) // elements are at odd indices .map((node) => runInScope(node)); } - case "match": - if (node.children[0].text !== "=" || node.children.length !== 2) { - throw new Error("match node so far only support simple assignments"); + case 'match': + if (node.children[0].text !== '=' || node.children.length !== 2) { + throw new Error('match node so far only support simple assignments'); } return runInScope(node.children[1]); - case "bind": - if (node.children.length !== 2) - throw new Error("expected 2 children for node type bind"); - if (node.children[0].type !== "variable") - throw new Error("expected variable as first child of bind node"); - if (node.children[1].type !== "match") - throw new Error("expected match as first child of bind node"); + case 'bind': + if (node.children.length !== 2) throw new Error('expected 2 children for node type bind'); + if (node.children[0].type !== 'variable') throw new Error('expected variable as first child of bind node'); + if (node.children[1].type !== 'match') throw new Error('expected match as first child of bind node'); const [bvariable, bmatch] = node.children; const value = runInScope(bmatch); scope[bvariable.text] = value; return value; - case "variable": + case 'variable': return scope[node.text]; - case "infix": { + case 'infix': { const [a, op, b] = node.children; const symbol = op.text; const [left, right] = [runInScope(a), runInScope(b)]; return runInfix(left, symbol, right, ops); } - case "apply": + case 'apply': return runApply(node, scope, ops); - case "left_section": { + case 'left_section': { const [_, b, op] = node.children; const right = runInScope(b); return (left) => runInfix(left, op.text, right, ops); } - case "right_section": { + case 'right_section': { const [_, op, b] = node.children; const right = runInScope(b); return (left) => runInfix(left, op.text, right, ops); } - case "parens": - if (node.children.length !== 3) - throw new Error("expected 3 children for node type parens"); + case 'parens': + if (node.children.length !== 3) throw new Error('expected 3 children for node type parens'); return runInScope(node.children[1]); default: if (node.children.length === 0) { - throw new Error("unhandled leaf type " + node.type); + throw new Error('unhandled leaf type ' + node.type); } if (node.children.length > 1) { - throw new Error("unhandled branch type " + node.type); + throw new Error('unhandled branch type ' + node.type); } return runInScope(node.children[0]); } diff --git a/packages/hs2js/src/index.mjs b/packages/hs2js/src/index.mjs index 170ef1b6..c3aab230 100644 --- a/packages/hs2js/src/index.mjs +++ b/packages/hs2js/src/index.mjs @@ -1,2 +1,2 @@ -export * from "./hs2js.mjs"; -export * from "./parser.mjs"; +export * from './hs2js.mjs'; +export * from './parser.mjs'; diff --git a/packages/hs2js/src/parser.mjs b/packages/hs2js/src/parser.mjs index 829a5da3..6fbd9ae2 100644 --- a/packages/hs2js/src/parser.mjs +++ b/packages/hs2js/src/parser.mjs @@ -1,6 +1,6 @@ -import Parser from "web-tree-sitter"; +import Parser from 'web-tree-sitter'; -let base = "/"; +let base = '/'; export function setBase(path) { base = path; } @@ -28,10 +28,5 @@ export function loadParser() { export async function parse(code) { const parser = await loadParser(); // for some reason, the parser doesn't like new lines.. - return parser.parse( - code - .replaceAll("\n\n", "~~~~") - .replaceAll("\n", "") - .replaceAll("~~~~", "\n") - ); + return parser.parse(code.replaceAll('\n\n', '~~~~').replaceAll('\n', '').replaceAll('~~~~', '\n')); } diff --git a/packages/hs2js/vite.config.js b/packages/hs2js/vite.config.js new file mode 100644 index 00000000..ce715712 --- /dev/null +++ b/packages/hs2js/vite.config.js @@ -0,0 +1,20 @@ +import { defineConfig } from 'vite'; +import { resolve } from 'path'; + +// https://vitejs.dev/config/ +export default defineConfig({ + plugins: [], + build: { + lib: { + entry: resolve(__dirname, 'src', 'index.mjs'), + name: 'hs2js', + formats: ['es', 'iife'], + fileName: (ext) => ({ es: 'index.mjs', iife: 'index.js' })[ext], + }, + rollupOptions: { + // external: [...Object.keys(dependencies)], + plugins: [], + }, + target: 'esnext', + }, +}); diff --git a/packages/hs2js/vite.config.mjs b/packages/hs2js/vite.config.mjs deleted file mode 100644 index 9eb4a07a..00000000 --- a/packages/hs2js/vite.config.mjs +++ /dev/null @@ -1,20 +0,0 @@ -import { defineConfig } from "vite"; -import { resolve } from "path"; - -// https://vitejs.dev/config/ -export default defineConfig({ - plugins: [], - build: { - lib: { - entry: resolve(__dirname, "src", "index.mjs"), - name: "hs2js", - formats: ["es", "iife"], - fileName: (ext) => ({ es: "index.mjs", iife: "index.js" }[ext]), - }, - rollupOptions: { - // external: [...Object.keys(dependencies)], - plugins: [], - }, - target: "esnext", - }, -}); diff --git a/packages/tidal/hs2js.mjs b/packages/tidal/hs2js.mjs deleted file mode 100644 index 733b7aeb..00000000 --- a/packages/tidal/hs2js.mjs +++ /dev/null @@ -1,130 +0,0 @@ -function runApply(node, scope, ops) { - if (node.children.length !== 2) - throw new Error(`expected 2 children for node type apply, got ${node.children.length}`); - const [fn, arg] = node.children.map((child) => run(child, scope, ops)); - if (typeof fn !== 'function') { - throw new Error(`${node.children[0].text} is not a function`); - } - // only works if fn is curried! - return fn(arg); -} - -function runInfix(left, symbol, right, ops) { - const customOp = ops[symbol]; - if (customOp) { - return customOp(left, right); - } - switch (symbol) { - case '+': - return left + right; - case '-': - return left - right; - case '*': - return left * right; - case '/': - return left / right; - case '$': - return left(right); - case '&': - return right(left); - case '.': - return (x) => left(right(x)); - default: - throw new Error('unexpected infix operator ' + symbol); - } -} - -function curry(patterns, body, scope, ops) { - const [variable, ...rest] = patterns; - return (arg) => { - let _scope = { ...scope, [variable.text]: arg }; - if (patterns.length === 1) { - const result = run(body, _scope, ops); - return result; - } - return curry(rest, body, _scope, ops); - }; -} - -export function run(node, scope, ops = {}) { - let runInScope = (node, scp = scope) => run(node, scp, ops); - //console.log("node", node.type, node.text); - switch (node.type) { - case 'ERROR': - throw new Error(`invalid syntax: "${node.text}"`); - case 'declarations': - let result; - node.children.forEach((declaration) => { - result = runInScope(declaration); - }); - return result; - case 'integer': - return Number(node.text); - case 'float': - return Number(node.text); - case 'string': - const str = node.text.slice(1, -1); - return String(str); - case 'lambda': - const [_, lpatterns, __, lbody] = node.children; - return curry(lpatterns.children, lbody, scope, ops); - case 'function': - const [fvariable, fpatterns, fbody] = node.children; - scope[fvariable.text] = curry(fpatterns.children, fbody, scope, ops); - return scope[fvariable.text]; - case 'list': { - return node.children - .filter((_, i) => i % 2 === 1) // elements are at odd indices - .map((node) => runInScope(node)); - } - case 'match': - if (node.children[0].text !== '=' || node.children.length !== 2) { - throw new Error('match node so far only support simple assignments'); - } - return runInScope(node.children[1]); - case 'bind': - if (node.children.length !== 2) throw new Error('expected 2 children for node type bind'); - if (node.children[0].type !== 'variable') throw new Error('expected variable as first child of bind node'); - if (node.children[1].type !== 'match') throw new Error('expected match as first child of bind node'); - const [bvariable, bmatch] = node.children; - const value = runInScope(bmatch); - scope[bvariable.text] = value; - return value; - case 'variable': - return scope[node.text]; - case 'infix': { - const [a, op, b] = node.children; - const symbol = op.text; - const [left, right] = [runInScope(a), runInScope(b)]; - return runInfix(left, symbol, right, ops); - } - case 'apply': - return runApply(node, scope, ops); - case 'left_section': { - const [_, b, op] = node.children; - const right = runInScope(b); - return (left) => runInfix(left, op.text, right, ops); - } - case 'right_section': { - const [_, op, b] = node.children; - const right = runInScope(b); - return (left) => runInfix(left, op.text, right, ops); - } - case 'parens': - if (node.children.length !== 3) throw new Error('expected 3 children for node type parens'); - return runInScope(node.children[1]); - default: - if (node.children.length === 0) { - throw new Error('unhandled leaf type ' + node.type); - } - if (node.children.length > 1) { - throw new Error('unhandled branch type ' + node.type); - } - return runInScope(node.children[0]); - } -} - -export async function evaluate(haskellCode, scope = globalThis, ops) { - const ast = await parse(haskellCode); - return run(ast.rootNode, scope, ops); -} diff --git a/packages/tidal/parser.mjs b/packages/tidal/parser.mjs deleted file mode 100644 index 1b1f8a03..00000000 --- a/packages/tidal/parser.mjs +++ /dev/null @@ -1,22 +0,0 @@ -import Parser from 'web-tree-sitter'; - -const base = import.meta.env.BASE_URL; - -async function loadParser() { - await Parser.init({ - locateFile(scriptName, scriptDirectory) { - return `${base}${scriptName}`; - }, - }); - const parser = new Parser(); - const Lang = await Parser.Language.load(`${base}tree-sitter-haskell.wasm`); - parser.setLanguage(Lang); - return parser; -} - -let parserLoaded = loadParser(); -export async function parse(code) { - const parser = await parserLoaded; - // for some reason, the parser doesn't like new lines.. - return parser.parse(code.replaceAll('\n\n', '~~~~').replaceAll('\n', '').replaceAll('~~~~', '\n')); -} From bbeb243cea02f2a9da9b532a04d953a859c95d71 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Fri, 17 May 2024 10:05:18 +0200 Subject: [PATCH 054/805] replace postinstall with prepare for dev only --- packages/tidal/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/tidal/package.json b/packages/tidal/package.json index 7c12cbb6..e2f94c56 100644 --- a/packages/tidal/package.json +++ b/packages/tidal/package.json @@ -7,7 +7,7 @@ "dev": "vite", "build": "vite build", "preview": "vite preview", - "postinstall": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public" + "prepare": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public" }, "repository": { "type": "git", From 8c480807d280f0dc4cdd4b8b1d8b9fc6bdd1f53c Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Fri, 17 May 2024 10:11:22 +0200 Subject: [PATCH 055/805] remove prepare script for now --- packages/tidal/README.md | 3 +-- packages/tidal/package.json | 4 ++-- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/packages/tidal/README.md b/packages/tidal/README.md index 24f3efc3..8b07ac19 100644 --- a/packages/tidal/README.md +++ b/packages/tidal/README.md @@ -5,7 +5,6 @@ This is an experiment in implementing tree-sitter for parsing haskell. ```sh pnpm i cd haskell +pnpm copy-wasm pnpm dev ``` - -This \ No newline at end of file diff --git a/packages/tidal/package.json b/packages/tidal/package.json index e2f94c56..3cab8182 100644 --- a/packages/tidal/package.json +++ b/packages/tidal/package.json @@ -5,9 +5,9 @@ "type": "module", "scripts": { "dev": "vite", - "build": "vite build", + "build": "pnpm copy-wasm && vite build", "preview": "vite preview", - "prepare": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public" + "copy-wasm": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public" }, "repository": { "type": "git", From f54f80e698b9c95f9be5d7b641fcefa44e01a0eb Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Fri, 17 May 2024 10:14:26 +0200 Subject: [PATCH 056/805] bump version --- examples/buildless/hs2js.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/examples/buildless/hs2js.html b/examples/buildless/hs2js.html index 5ffb6cf0..96b53c53 100644 --- a/examples/buildless/hs2js.html +++ b/examples/buildless/hs2js.html @@ -1,7 +1,7 @@ - + + + + + diff --git a/packages/tidal/graph.mjs b/packages/tidal/graph.mjs deleted file mode 100644 index bac3d135..00000000 --- a/packages/tidal/graph.mjs +++ /dev/null @@ -1,43 +0,0 @@ -import { Graphviz } from '@hpcc-js/wasm'; -import toDot from 'jgf-dot'; - -const graphvizLoaded = Graphviz.load(); - -function walk(node, branch = [0], parent) { - let nodes = []; - let edges = []; - const color = 'white'; - const current = { - id: branch.join('-'), - color, - fontcolor: color, - label: node.type.replace('\\', 'lambda'), // backslash kills graphviz.. - }; - nodes.push(current); - parent && edges.push({ source: parent.id, target: current.id, color }); - if (node.children.length) { - node.children.forEach((child, j) => { - const { nodes: childNodes, edges: childEdges } = walk(child, branch.concat([j]), current); - nodes = nodes.concat(childNodes || []); - edges = edges.concat(childEdges || []); - }); - } - return { nodes, edges }; -} - -export async function renderGraph(tree, container) { - const { nodes, edges } = walk(tree.rootNode); - const graphviz = await graphvizLoaded; - let dot = toDot({ - graph: { - nodes, - edges, - }, - }); - dot = dot.split('\n'); - dot.splice(1, 0, 'bgcolor="transparent"'); - dot.splice(1, 0, 'color="white"'); - dot = dot.join('\n'); - const svg = await graphviz.layout(dot, 'svg', 'dot', {}); - container.innerHTML = svg; -} diff --git a/packages/tidal/index.html b/packages/tidal/index.html index 532bce3d..cfa818b0 100644 --- a/packages/tidal/index.html +++ b/packages/tidal/index.html @@ -23,7 +23,6 @@

-    
diff --git a/packages/tidal/main.js b/packages/tidal/main.js index 0b2ac7d5..0d948504 100644 --- a/packages/tidal/main.js +++ b/packages/tidal/main.js @@ -1,12 +1,9 @@ import { run, parse } from 'hs2js'; -import { renderGraph } from './graph.mjs'; import { initStrudel, reify, late, samples, stack } from '@strudel/web'; initStrudel({ prebake: () => samples('github:tidalcycles/dirt-samples'), }); -const graphContainer = document.getElementById('graph'); - const textarea = document.getElementById('code'); if (window.location.hash) { textarea.value = atob(window.location.hash.slice(1)); @@ -60,12 +57,6 @@ async function update() { } console.log('parsed tree'); console.log(tree.rootNode.toString()); - try { - renderGraph(tree, graphContainer); - } catch (err) { - console.warn('could not render graph'); - console.error(err); - } try { let patterns = {}; window.p = (name, pattern) => { diff --git a/packages/tidal/package.json b/packages/tidal/package.json index 3cab8182..0e2d8aa5 100644 --- a/packages/tidal/package.json +++ b/packages/tidal/package.json @@ -27,8 +27,6 @@ }, "homepage": "https://github.com/tidalcycles/strudel#readme", "dependencies": { - "@hpcc-js/wasm": "^2.15.3", - "jgf-dot": "^1.1.1", "@strudel/web": "workspace:*", "hs2js": "workspace:*" }, From d108de40d05b1a6968566cd2feb7d287bb7de0a0 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Fri, 17 May 2024 18:41:43 +0200 Subject: [PATCH 061/805] rename --- packages/tidal/index.html | 2 +- packages/tidal/{main.js => tidal.mjs} | 0 2 files changed, 1 insertion(+), 1 deletion(-) rename packages/tidal/{main.js => tidal.mjs} (100%) diff --git a/packages/tidal/index.html b/packages/tidal/index.html index cfa818b0..7f88bf0a 100644 --- a/packages/tidal/index.html +++ b/packages/tidal/index.html @@ -23,6 +23,6 @@

-    
+    
   
 
diff --git a/packages/tidal/main.js b/packages/tidal/tidal.mjs
similarity index 100%
rename from packages/tidal/main.js
rename to packages/tidal/tidal.mjs

From fd950d4476da7650936bc2be9f6325b15de21260 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 17 May 2024 20:36:41 +0200
Subject: [PATCH 062/805] tidy tidal package - move tidal repl to examples -
 make hs2js synchronous

---
 .../tidal => examples/tidal-repl}/.gitignore  |   0
 .../tidal => examples/tidal-repl}/README.md   |   0
 .../tidal => examples/tidal-repl}/index.html  |   3 +-
 examples/tidal-repl/main.js                   |  80 ++++++++++++++
 examples/tidal-repl/package.json              |  36 ++++++
 .../tidal-repl}/public/README.md              |   0
 packages/hs2js/package.json                   |   8 +-
 packages/hs2js/src/hs2js.mjs                  |   4 +-
 packages/hs2js/src/parser.mjs                 |  11 +-
 packages/tidal/package.json                   |  26 ++---
 packages/tidal/tidal.mjs                      |  53 ++-------
 pnpm-lock.yaml                                | 104 ++++--------------
 12 files changed, 171 insertions(+), 154 deletions(-)
 rename {packages/tidal => examples/tidal-repl}/.gitignore (100%)
 rename {packages/tidal => examples/tidal-repl}/README.md (100%)
 rename {packages/tidal => examples/tidal-repl}/index.html (91%)
 create mode 100644 examples/tidal-repl/main.js
 create mode 100644 examples/tidal-repl/package.json
 rename {packages/tidal => examples/tidal-repl}/public/README.md (100%)

diff --git a/packages/tidal/.gitignore b/examples/tidal-repl/.gitignore
similarity index 100%
rename from packages/tidal/.gitignore
rename to examples/tidal-repl/.gitignore
diff --git a/packages/tidal/README.md b/examples/tidal-repl/README.md
similarity index 100%
rename from packages/tidal/README.md
rename to examples/tidal-repl/README.md
diff --git a/packages/tidal/index.html b/examples/tidal-repl/index.html
similarity index 91%
rename from packages/tidal/index.html
rename to examples/tidal-repl/index.html
index 7f88bf0a..0d17855e 100644
--- a/packages/tidal/index.html
+++ b/examples/tidal-repl/index.html
@@ -23,6 +23,7 @@
   
     
     

-    
+    
   
 
diff --git a/examples/tidal-repl/main.js b/examples/tidal-repl/main.js
new file mode 100644
index 00000000..9e572ea8
--- /dev/null
+++ b/examples/tidal-repl/main.js
@@ -0,0 +1,80 @@
+import { run, parse } from 'hs2js';
+import { initStrudel, reify, late, samples, stack } from '@strudel/web';
+
+initStrudel({
+  prebake: () => samples('github:tidalcycles/dirt-samples'),
+});
+
+const textarea = document.getElementById('code');
+if (window.location.hash) {
+  textarea.value = atob(window.location.hash.slice(1));
+} else {
+  textarea.value = 'd1 $ s "jvbass(3,8)"';
+}
+textarea.addEventListener('input', (e) => {
+  window.location.hash = btoa(e.target.value);
+  update();
+});
+update();
+
+function getInfixOperators() {
+  let operators = {
+    '>': 'set',
+    '#': 'set',
+    '+': 'add',
+    '-': 'sub',
+    '*': 'mul',
+    '/': 'div',
+  };
+  let alignments = {
+    in: (s) => '|' + s,
+    out: (s) => s + '|',
+    mix: (s) => '|' + s + '|',
+  };
+  let ops = {};
+  Object.entries(operators).forEach(([o, name]) => {
+    // operator without alignment
+    ops[o] = (l, r) => reify(l)[name](reify(r));
+    Object.entries(alignments).forEach(([a, getSymbol]) => {
+      // get symbol with alignment
+      let symbol = getSymbol(o);
+      ops[symbol] = (l, r) => reify(l)[name][a](reify(r));
+    });
+  });
+  ops['~>'] = (l, r) => reify(l).late(reify(r));
+  ops['<~'] = (l, r) => reify(l).early(reify(r));
+  ops['<$>'] = (l, r) => reify(r).fmap(l).outerJoin(); // is this right?
+  return ops;
+}
+const ops = getInfixOperators();
+
+async function update() {
+  let result, tree;
+  try {
+    tree = await parse(textarea.value);
+  } catch (err) {
+    console.warn('parse error');
+    console.error(err);
+  }
+  console.log('parsed tree');
+  console.log(tree.rootNode.toString());
+  try {
+    let patterns = {};
+    window.p = (name, pattern) => {
+      patterns[name] = pattern;
+    };
+    window.d1 = (pat) => window.p(1, pat);
+    window.d2 = (pat) => window.p(2, pat);
+    window.d3 = (pat) => window.p(3, pat);
+    window.rot = late;
+    result = run(tree.rootNode, window, ops);
+    if (Object.values(patterns).length) {
+      stack(...Object.values(patterns)).play();
+    }
+  } catch (err) {
+    console.warn('eval error');
+    console.error(err);
+    result = 'ERROR: ' + err.message;
+  }
+  document.getElementById('result').innerHTML = 'Result: ' + result;
+}
diff --git a/examples/tidal-repl/package.json b/examples/tidal-repl/package.json
new file mode 100644
index 00000000..0e2d8aa5
--- /dev/null
+++ b/examples/tidal-repl/package.json
@@ -0,0 +1,36 @@
+{
+  "name": "@strudel/tidal",
+  "private": true,
+  "version": "0.0.1",
+  "type": "module",
+  "scripts": {
+    "dev": "vite",
+    "build": "pnpm copy-wasm && vite build",
+    "preview": "vite preview",
+    "copy-wasm": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public"
+  },
+  "repository": {
+    "type": "git",
+    "url": "git+https://github.com/tidalcycles/strudel.git"
+  },
+  "keywords": [
+    "titdalcycles",
+    "strudel",
+    "pattern",
+    "livecoding",
+    "algorave"
+  ],
+  "author": "Felix Roos ",
+  "license": "AGPL-3.0-or-later",
+  "bugs": {
+    "url": "https://github.com/tidalcycles/strudel/issues"
+  },
+  "homepage": "https://github.com/tidalcycles/strudel#readme",
+  "dependencies": {
+    "@strudel/web": "workspace:*",
+    "hs2js": "workspace:*"
+  },
+  "devDependencies": {
+    "vite": "^5.0.8"
+  }
+}
diff --git a/packages/tidal/public/README.md b/examples/tidal-repl/public/README.md
similarity index 100%
rename from packages/tidal/public/README.md
rename to examples/tidal-repl/public/README.md
diff --git a/packages/hs2js/package.json b/packages/hs2js/package.json
index 1f980fcc..1d3907b1 100644
--- a/packages/hs2js/package.json
+++ b/packages/hs2js/package.json
@@ -2,8 +2,12 @@
   "name": "hs2js",
   "version": "0.0.7",
   "description": "Experimental Haskell in JavaScript interpreter",
-  "main": "dist/index.js",
-  "module": "dist/index.mjs",
+  "main": "src/index.mjs",
+  "type": "module",
+  "publishConfig": {
+    "main": "dist/index.js",
+    "module": "dist/index.mjs"
+  },
   "scripts": {
     "build-wasm": "tree-sitter build-wasm node_modules/tree-sitter-haskell && mv tree-sitter-haskell.wasm ./dist/ && cp node_modules/web-tree-sitter/tree-sitter.wasm ./dist/",
     "build": "vite build && npm run build-wasm",
diff --git a/packages/hs2js/src/hs2js.mjs b/packages/hs2js/src/hs2js.mjs
index e7b7cf46..4161b0e6 100644
--- a/packages/hs2js/src/hs2js.mjs
+++ b/packages/hs2js/src/hs2js.mjs
@@ -127,7 +127,7 @@ export function run(node, scope, ops = {}) {
   }
 }
 
-export async function evaluate(haskellCode, scope = globalThis, ops) {
-  const ast = await parse(haskellCode);
+export function evaluate(haskellCode, scope = globalThis, ops) {
+  const ast = parse(haskellCode);
   return run(ast.rootNode, scope, ops);
 }
diff --git a/packages/hs2js/src/parser.mjs b/packages/hs2js/src/parser.mjs
index 6fbd9ae2..25644c7e 100644
--- a/packages/hs2js/src/parser.mjs
+++ b/packages/hs2js/src/parser.mjs
@@ -5,15 +5,18 @@ export function setBase(path) {
   base = path;
 }
 
+let isReady = false,
+  parser;
 async function _loadParser() {
   await Parser.init({
     locateFile(scriptName, scriptDirectory) {
       return `${base}${scriptName}`;
     },
   });
-  const parser = new Parser();
+  parser = new Parser();
   const Lang = await Parser.Language.load(`${base}tree-sitter-haskell.wasm`);
   parser.setLanguage(Lang);
+  isReady = true;
   return parser;
 }
 
@@ -25,8 +28,10 @@ export function loadParser() {
   return parserLoaded;
 }
 
-export async function parse(code) {
-  const parser = await loadParser();
+export function parse(code) {
+  if (!isReady) {
+    throw new Error('hs2js not ready. await loadParser before calling evaluate or parse functions');
+  }
   // for some reason, the parser doesn't like new lines..
   return parser.parse(code.replaceAll('\n\n', '~~~~').replaceAll('\n', '').replaceAll('~~~~', '\n'));
 }
diff --git a/packages/tidal/package.json b/packages/tidal/package.json
index 0e2d8aa5..772f5f4d 100644
--- a/packages/tidal/package.json
+++ b/packages/tidal/package.json
@@ -1,36 +1,26 @@
 {
   "name": "@strudel/tidal",
-  "private": true,
-  "version": "0.0.1",
-  "type": "module",
-  "scripts": {
-    "dev": "vite",
-    "build": "pnpm copy-wasm && vite build",
-    "preview": "vite preview",
-    "copy-wasm": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public"
-  },
+  "version": "0.0.7",
+  "description": "Experimental Tidal Code interpreter",
+  "module": "tidal.mjs",
   "repository": {
     "type": "git",
-    "url": "git+https://github.com/tidalcycles/strudel.git"
+    "url": "git+https://github.com/felixroos/hs2js.git"
   },
   "keywords": [
-    "titdalcycles",
-    "strudel",
-    "pattern",
-    "livecoding",
-    "algorave"
+    "haskell",
+    "javascript"
   ],
   "author": "Felix Roos ",
   "license": "AGPL-3.0-or-later",
   "bugs": {
     "url": "https://github.com/tidalcycles/strudel/issues"
   },
-  "homepage": "https://github.com/tidalcycles/strudel#readme",
+  "homepage": "https://github.com/tidalcycles/strudel/tree/main/packages/hs2js",
   "dependencies": {
-    "@strudel/web": "workspace:*",
     "hs2js": "workspace:*"
   },
   "devDependencies": {
-    "vite": "^5.0.8"
+    "vite": "^5.0.10"
   }
 }
diff --git a/packages/tidal/tidal.mjs b/packages/tidal/tidal.mjs
index 0d948504..60a76946 100644
--- a/packages/tidal/tidal.mjs
+++ b/packages/tidal/tidal.mjs
@@ -1,20 +1,4 @@
-import { run, parse } from 'hs2js';
-import { initStrudel, reify, late, samples, stack } from '@strudel/web';
-initStrudel({
-  prebake: () => samples('github:tidalcycles/dirt-samples'),
-});
-
-const textarea = document.getElementById('code');
-if (window.location.hash) {
-  textarea.value = atob(window.location.hash.slice(1));
-} else {
-  textarea.value = 'd1 $ s "jvbass(3,8)"';
-}
-textarea.addEventListener('input', (e) => {
-  window.location.hash = btoa(e.target.value);
-  update();
-});
-update();
+import { evaluate, loadParser } from 'hs2js';
 
 function getInfixOperators() {
   let operators = {
@@ -47,33 +31,10 @@ function getInfixOperators() {
 }
 const ops = getInfixOperators();
 
-async function update() {
-  let result, tree;
-  try {
-    tree = await parse(textarea.value);
-  } catch (err) {
-    console.warn('parse error');
-    console.error(err);
-  }
-  console.log('parsed tree');
-  console.log(tree.rootNode.toString());
-  try {
-    let patterns = {};
-    window.p = (name, pattern) => {
-      patterns[name] = pattern;
-    };
-    window.d1 = (pat) => window.p(1, pat);
-    window.d2 = (pat) => window.p(2, pat);
-    window.d3 = (pat) => window.p(3, pat);
-    window.rot = late;
-    result = run(tree.rootNode, window, ops);
-    if (Object.values(patterns).length) {
-      stack(...Object.values(patterns)).play();
-    }
-  } catch (err) {
-    console.warn('eval error');
-    console.error(err);
-    result = 'ERROR: ' + err.message;
-  }
-  document.getElementById('result').innerHTML = 'Result: ' + result;
+export async function initTidal() {
+  return loadParser();
+}
+
+export function tidal(code) {
+  return evaluate(code, window, ops);
 }
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 8ac9adb0..7beea16b 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -140,6 +140,19 @@ importers:
         specifier: ^5.0.10
         version: 5.0.10
 
+  examples/tidal-repl:
+    dependencies:
+      '@strudel/web':
+        specifier: workspace:*
+        version: link:../../packages/web
+      hs2js:
+        specifier: workspace:*
+        version: link:../../packages/hs2js
+    devDependencies:
+      vite:
+        specifier: ^5.0.8
+        version: 5.2.2(@types/node@20.10.6)
+
   packages/codemirror:
     dependencies:
       '@codemirror/autocomplete':
@@ -424,21 +437,12 @@ importers:
 
   packages/tidal:
     dependencies:
-      '@hpcc-js/wasm':
-        specifier: ^2.15.3
-        version: 2.16.2
-      '@strudel/web':
-        specifier: workspace:*
-        version: link:../web
       hs2js:
         specifier: workspace:*
         version: link:../hs2js
-      jgf-dot:
-        specifier: ^1.1.1
-        version: 1.1.1
     devDependencies:
       vite:
-        specifier: ^5.0.8
+        specifier: ^5.0.10
         version: 5.2.2(@types/node@20.10.6)
 
   packages/tonal:
@@ -619,6 +623,9 @@ importers:
       '@strudel/soundfonts':
         specifier: workspace:*
         version: link:../packages/soundfonts
+      '@strudel/tidal':
+        specifier: workspace:*
+        version: link:../packages/tidal
       '@strudel/tonal':
         specifier: workspace:*
         version: link:../packages/tonal
@@ -3069,13 +3076,6 @@ packages:
       react: 18.2.0
     dev: false
 
-  /@hpcc-js/wasm@2.16.2:
-    resolution: {integrity: sha512-THiidUMYR8/cIfFT3MVcWuRE7bQKh295nrFBxGvUNc4Nq8e2uU1LtiplHs7AUkJ0GxgvZoR+8TQ1/E3Qb/uE2g==}
-    hasBin: true
-    dependencies:
-      yargs: 17.7.2
-    dev: false
-
   /@humanwhocodes/config-array@0.11.13:
     resolution: {integrity: sha512-JSBDMiDKSzQVngfRjOdFXgFfklaXI4K9nLF49Auh21lmBWRLIK3+xTErTWD4KU54pb6coM6ESE7Awz/FNU3zgQ==}
     engines: {node: '>=10.10.0'}
@@ -6269,6 +6269,7 @@ packages:
       string-width: 4.2.3
       strip-ansi: 6.0.1
       wrap-ansi: 7.0.0
+    dev: true
 
   /clone-buffer@1.0.0:
     resolution: {integrity: sha512-KLLTJWrvwIP+OPfMn0x2PheDEP20RPUcGXj/ERegTgdmPEZylALQldygiqrPPu8P45uNuPs7ckmReLY6v/iA5g==}
@@ -6986,10 +6987,6 @@ packages:
     engines: {node: '>=12'}
     dev: true
 
-  /dotty@0.0.1:
-    resolution: {integrity: sha512-eDT0hfJEnQbGaZcTuCfj2igPkQ7qa/n9K2pGGDxhEqKhARLq+xE1TonvpOPHq+7KeG+D6A/V8BwCcsdPom2TQg==}
-    dev: false
-
   /dset@3.1.3:
     resolution: {integrity: sha512-20TuZZHCEZ2O71q9/+8BwKwZ0QtD9D8ObhrihJPr+vLLYlSuAU3/zL4cSlgbfeoGHTjCSJBa7NGcrF9/Bx/WJQ==}
     engines: {node: '>=4'}
@@ -7911,10 +7908,6 @@ packages:
     resolution: {integrity: sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==}
     dev: true
 
-  /gather-stream@1.0.0:
-    resolution: {integrity: sha512-NspYMi3rN3EKmMdejUXbtluDYrcRlTEBBFhWzVRZVsOx94OPxlXp0AzyPKyLiT7iaurcoTE/KcHsHP/PowNEaA==}
-    dev: false
-
   /gauge@4.0.4:
     resolution: {integrity: sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==}
     engines: {node: ^12.13.0 || ^14.15.0 || >=16.0.0}
@@ -8252,33 +8245,6 @@ packages:
   /graphemer@1.4.0:
     resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==}
 
-  /graphlib-dot@0.6.4:
-    resolution: {integrity: sha512-rdhDTu0mBlloTpFMfkQq+e3y4yL22OqP5MhQbkw6QUURqa+4YLgv3XZy2fA64wdEcJNZ+waI76URemVgdFtzng==}
-    dependencies:
-      graphlib: 2.1.8
-      lodash: 4.17.21
-    dev: false
-
-  /graphlib-json-graph@1.0.0:
-    resolution: {integrity: sha512-sJsFuthZnSL5knaDDZhDx8fg1Zy5t/7ZqVHiytoeSzezGhMoSFD3T3K5YQakKFEyXtYjOzbnvsyr2qo+6/qq/Q==}
-    dependencies:
-      graphlib: 1.0.7
-      par: 0.3.0
-      prop: 0.1.1
-    dev: false
-
-  /graphlib@1.0.7:
-    resolution: {integrity: sha512-jNb7RbqTIRyZRmcVCxGefOlGWjNdbjcT2tFj36zhnRa8yhAlOvydh9nBixfLQIqSU+DwCx47tg3ysw8NIYhpsA==}
-    dependencies:
-      lodash: 3.10.1
-    dev: false
-
-  /graphlib@2.1.8:
-    resolution: {integrity: sha512-jcLLfkpoVGmH7/InMC/1hIvOPSUh38oJtGhvrOFGzioE1DZ+0YW16RgmOJhHiuWTvGiJQ9Z1Ik43JvkRPRvE+A==}
-    dependencies:
-      lodash: 4.17.21
-    dev: false
-
   /gray-matter@4.0.3:
     resolution: {integrity: sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==}
     engines: {node: '>=6.0'}
@@ -9184,15 +9150,6 @@ packages:
       supports-color: 7.2.0
     dev: true
 
-  /jgf-dot@1.1.1:
-    resolution: {integrity: sha512-/aw9bwVfn67A+lvjxtbocBuhB2rNdL5UY5rlHhKVh9ValvVJETU5lQ0jitDxiIjIPAEeuR4B1aFNA7E3wKNV1A==}
-    hasBin: true
-    dependencies:
-      graphlib-dot: 0.6.4
-      graphlib-json-graph: 1.0.0
-      read-file-stdin: 0.2.1
-    dev: false
-
   /jiti@1.21.0:
     resolution: {integrity: sha512-gFqAIbuKyyso/3G2qhiO2OM6shY6EPP/R0+mkDbyspxKazh8BXDC5FiFsUjlczgdNz/vfra0da2y+aHrusLG/Q==}
     hasBin: true
@@ -9649,12 +9606,9 @@ packages:
     resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==}
     dev: true
 
-  /lodash@3.10.1:
-    resolution: {integrity: sha512-9mDDwqVIma6OZX79ZlDACZl8sBm0TEnkf99zV3iMA4GzkIT/9hiqP5mY0HoT1iNLCrKc/R1HByV+yJfRWVJryQ==}
-    dev: false
-
   /lodash@4.17.21:
     resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==}
+    dev: true
 
   /log-symbols@4.1.0:
     resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==}
@@ -11370,11 +11324,6 @@ packages:
       - supports-color
     dev: true
 
-  /par@0.3.0:
-    resolution: {integrity: sha512-6V910zFAoHnxjX6ILkwbQcpIkD3KI2gBAPfCtZQNaJTvTxgIoKXSwDQIE3ty0zbOGdBXHRnl6rd66a5jj12pfw==}
-    engines: {node: '>=0.6'}
-    dev: false
-
   /parent-module@1.0.1:
     resolution: {integrity: sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g==}
     engines: {node: '>=6'}
@@ -11845,12 +11794,6 @@ packages:
       read: 2.1.0
     dev: true
 
-  /prop@0.1.1:
-    resolution: {integrity: sha512-hf5DdgiPkcoVxBfuSknP918U0lDC+7lArIjIB2U4Gh79p1Xtc0JP6W5DW3c0wC0x9/A6CsAISh3202I1GlMgkw==}
-    dependencies:
-      dotty: 0.0.1
-    dev: false
-
   /property-information@6.2.0:
     resolution: {integrity: sha512-kma4U7AFCTwpqq5twzC1YVIDXSqg6qQK6JN0smOw8fgRy1OkMi0CYSzFmsy6dnqSenamAtj0CyXMUJ1Mf6oROg==}
 
@@ -11982,12 +11925,6 @@ packages:
     engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
     dev: true
 
-  /read-file-stdin@0.2.1:
-    resolution: {integrity: sha512-dAqysQ4kfj9m5aejZOPr+aRGXZJXdLkMOLZ3BXMwMBQHiO+aylGBFJPh88AYPQrOf+D43F4Uc2oUIW9kBlItLA==}
-    dependencies:
-      gather-stream: 1.0.0
-    dev: false
-
   /read-package-json-fast@3.0.2:
     resolution: {integrity: sha512-0J+Msgym3vrLOUB3hzQCuZHII0xkNGCtz/HJH9xZshwv9DbDwkw1KaE3gx/e2J5rpEY5rtOy6cyhKOPrkP7FZw==}
     engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
@@ -14642,6 +14579,7 @@ packages:
       ansi-styles: 4.3.0
       string-width: 4.2.3
       strip-ansi: 6.0.1
+    dev: true
 
   /wrap-ansi@8.1.0:
     resolution: {integrity: sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==}
@@ -14733,6 +14671,7 @@ packages:
   /y18n@5.0.8:
     resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==}
     engines: {node: '>=10'}
+    dev: true
 
   /yallist@3.1.1:
     resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==}
@@ -14803,6 +14742,7 @@ packages:
       string-width: 4.2.3
       y18n: 5.0.8
       yargs-parser: 21.1.1
+    dev: true
 
   /yocto-queue@0.1.0:
     resolution: {integrity: sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==}

From a35e9aef0ea75ea7ba8a4dfc23ec6d637b9a9c4a Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 17 May 2024 20:37:04 +0200
Subject: [PATCH 063/805] add tidal package to website

---
 website/.gitignore        | 3 +++
 website/package.json      | 4 +++-
 website/src/repl/util.mjs | 1 +
 3 files changed, 7 insertions(+), 1 deletion(-)

diff --git a/website/.gitignore b/website/.gitignore
index 02f6e50b..60c587b1 100644
--- a/website/.gitignore
+++ b/website/.gitignore
@@ -17,3 +17,6 @@ pnpm-debug.log*
 
 # macOS-specific files
 .DS_Store
+
+public/tree-sitter.wasm
+public/tree-sitter-haskell.wasm
\ No newline at end of file
diff --git a/website/package.json b/website/package.json
index 5065c106..16d86d93 100644
--- a/website/package.json
+++ b/website/package.json
@@ -9,7 +9,8 @@
     "check": "astro check && tsc",
     "build": "astro build",
     "preview": "astro preview --port 3009 --host 0.0.0.0",
-    "astro": "astro"
+    "astro": "astro",
+    "postinstall": "cp node_modules/hs2js/dist/tree-sitter.wasm public && cp node_modules/hs2js/dist/tree-sitter-haskell.wasm public"
   },
   "dependencies": {
     "@algolia/client-search": "^4.22.0",
@@ -39,6 +40,7 @@
     "@strudel/transpiler": "workspace:*",
     "@strudel/webaudio": "workspace:*",
     "@strudel/xen": "workspace:*",
+    "@strudel/tidal": "workspace:*",
     "@supabase/supabase-js": "^2.39.1",
     "@tailwindcss/forms": "^0.5.7",
     "@tailwindcss/typography": "^0.5.10",
diff --git a/website/src/repl/util.mjs b/website/src/repl/util.mjs
index 3147ae38..703d3447 100644
--- a/website/src/repl/util.mjs
+++ b/website/src/repl/util.mjs
@@ -82,6 +82,7 @@ export function loadModules() {
     import('@strudel/serial'),
     import('@strudel/soundfonts'),
     import('@strudel/csound'),
+    import('@strudel/tidal'),
   ];
   if (isTauri()) {
     modules = modules.concat([

From 5b89500acd36187ef6e2b2d852bfa4df0df3396c Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 17 May 2024 20:38:30 +0200
Subject: [PATCH 064/805] fix: lint + format

---
 examples/tidal-repl/index.html | 7 +++++--
 packages/tidal/package.json    | 3 ++-
 packages/tidal/tidal.mjs       | 1 +
 pnpm-lock.yaml                 | 3 +++
 4 files changed, 11 insertions(+), 3 deletions(-)

diff --git a/examples/tidal-repl/index.html b/examples/tidal-repl/index.html
index 0d17855e..25dc693e 100644
--- a/examples/tidal-repl/index.html
+++ b/examples/tidal-repl/index.html
@@ -23,7 +23,10 @@
   
     
     

-    
+    
   
 
diff --git a/packages/tidal/package.json b/packages/tidal/package.json
index 772f5f4d..7db0a82d 100644
--- a/packages/tidal/package.json
+++ b/packages/tidal/package.json
@@ -18,7 +18,8 @@
   },
   "homepage": "https://github.com/tidalcycles/strudel/tree/main/packages/hs2js",
   "dependencies": {
-    "hs2js": "workspace:*"
+    "hs2js": "workspace:*",
+    "@strudel/core": "workspace:*"
   },
   "devDependencies": {
     "vite": "^5.0.10"
diff --git a/packages/tidal/tidal.mjs b/packages/tidal/tidal.mjs
index 60a76946..785635f7 100644
--- a/packages/tidal/tidal.mjs
+++ b/packages/tidal/tidal.mjs
@@ -1,3 +1,4 @@
+import { reify } from '@strudel/core';
 import { evaluate, loadParser } from 'hs2js';
 
 function getInfixOperators() {
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 7beea16b..967c1e0d 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -437,6 +437,9 @@ importers:
 
   packages/tidal:
     dependencies:
+      '@strudel/core':
+        specifier: workspace:*
+        version: link:../core
       hs2js:
         specifier: workspace:*
         version: link:../hs2js

From b4f1cedc20514ffe4d3473b4dba9ae70988d1e5c Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 17 May 2024 20:44:44 +0200
Subject: [PATCH 065/805] update readme after making it sync

---
 packages/hs2js/README.md | 31 +++++++++++++++----------------
 1 file changed, 15 insertions(+), 16 deletions(-)

diff --git a/packages/hs2js/README.md b/packages/hs2js/README.md
index f4059ff0..24d9c774 100644
--- a/packages/hs2js/README.md
+++ b/packages/hs2js/README.md
@@ -15,10 +15,11 @@ You can load the library directly from a script tag via unpkg:
 
 
 ```
 
@@ -66,11 +67,11 @@ Example:
 
 ```js
 // simple
-hs2js.evaluate(`2 + 2`).then(console.log) // log 4
+hs2js.evaluate(`2 + 2`) // = 4
 // passing variables via scope:
-hs2js.evaluate(`a + b`, { a: 1, b: 2 }).then(console.log); // logs 3
+hs2js.evaluate(`a + b`, { a: 1, b: 2 }) // = 3
 // custom operator
-hs2js.evaluate(`2 |* 3`, {}, { '|*': (l, r) => l * r }).then(console.log); // logs 6
+hs2js.evaluate(`2 |* 3`, {}, { '|*': (l, r) => l * r }) // = 6
 ```
 
 ### parse
@@ -80,7 +81,8 @@ hs2js.evaluate(`2 |* 3`, {}, { '|*': (l, r) => l * r }).then(console.log); // lo
 Example:
 
 ```js
-hs2js.parse(`2 + 2`).then(ast=>console.log(ast.toString()))
+const ast = hs2js.parse(`2 + 2`)
+console.log(ast.toString())
 // (haskell declarations: (declarations (top_splice (apply function: (variable) argument: (literal (integer))))))
 ```
 
@@ -95,21 +97,18 @@ Evaluates `rootNode` of haskell AST (used by evaluate internally).
 Example:
 
 ```js
-async function main() {
-  const ast = await hs2js.parse(`2 + 3`);
-  const res = hs2js.run(ast.rootNode);
-  console.log(res);
-}
-main(); // logs 5
+const ast = hs2js.parse(`2 + 3`);
+const res = hs2js.run(ast.rootNode);
+console.log(res); // = 5
 ```
 
 ### loadParser
 
 Loads and caches the parser by fetching `tree-sitter.wasm` and `tree-sitter-haskell.wasm`.
-This function is called internally by `parse` but calling it yourself might make the parser be ready faster, depending on your application.
+Make sure to call and await this function before calling `parse` or `evaluate`.
 
 ```js
-hs2js.loadParser().then(() => console.log('parser loaded'))
+hs2js.loadParser().then(() => hs2js.evaluate('alert "ready"'))
 ```
 
 ### setBase

From d132344d1110d1e0248574f7272147a5b21732c3 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 17 May 2024 20:48:11 +0200
Subject: [PATCH 066/805] bump

---
 packages/hs2js/package.json | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/packages/hs2js/package.json b/packages/hs2js/package.json
index 1d3907b1..56ad995f 100644
--- a/packages/hs2js/package.json
+++ b/packages/hs2js/package.json
@@ -1,6 +1,6 @@
 {
   "name": "hs2js",
-  "version": "0.0.7",
+  "version": "0.0.8",
   "description": "Experimental Haskell in JavaScript interpreter",
   "main": "src/index.mjs",
   "type": "module",

From 71f8c0745c9c6a0870c52ae37fdd97c92a35d085 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 17 May 2024 20:51:43 +0200
Subject: [PATCH 067/805] update examples after making hs2js sync

---
 examples/buildless/tidal.html | 10 ++++++----
 examples/tidal-repl/main.js   |  7 +++++--
 2 files changed, 11 insertions(+), 6 deletions(-)

diff --git a/examples/buildless/tidal.html b/examples/buildless/tidal.html
index 459ad0ed..16416b56 100644
--- a/examples/buildless/tidal.html
+++ b/examples/buildless/tidal.html
@@ -8,12 +8,13 @@
   
     
     

-    
-    
+    
+    
     
+pnpx serve # from root folder
+# go to http://localhost:3000/examples/buildless/web-component-no-iframe
+```

From bcef67e5a1775506cd03def084701d5249f91786 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 08:19:26 +0100
Subject: [PATCH 449/805] chore: bump vite + update lockfile

---
 packages/motion/package.json |  2 +-
 pnpm-lock.yaml               | 13 +++++++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/packages/motion/package.json b/packages/motion/package.json
index b0308a35..cc117a26 100644
--- a/packages/motion/package.json
+++ b/packages/motion/package.json
@@ -32,7 +32,7 @@
       "@strudel/core": "workspace:*"
     },
     "devDependencies": {
-      "vite": "^5.0.10"
+    "vite": "^6.0.11"
     }
 }
   
\ No newline at end of file
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index f85e3ab6..494d04f0 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -331,6 +331,16 @@ importers:
         specifier: ^3.0.4
         version: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
+  packages/motion:
+    dependencies:
+      '@strudel/core':
+        specifier: workspace:*
+        version: link:../core
+    devDependencies:
+      vite:
+        specifier: ^6.0.11
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
+
   packages/mqtt:
     dependencies:
       '@strudel/core':
@@ -639,6 +649,9 @@ importers:
       '@strudel/mini':
         specifier: workspace:*
         version: link:../packages/mini
+      '@strudel/motion':
+        specifier: workspace:*
+        version: link:../packages/motion
       '@strudel/mqtt':
         specifier: workspace:*
         version: link:../packages/mqtt

From 44828e20479e24bb6e91d81ec8d586542b7c343c Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 08:22:04 +0100
Subject: [PATCH 450/805] docs: move dev info down

---
 packages/motion/README.md | 56 ++++++++++++++++++++-------------------
 1 file changed, 29 insertions(+), 27 deletions(-)

diff --git a/packages/motion/README.md b/packages/motion/README.md
index 81ff5393..f122a675 100644
--- a/packages/motion/README.md
+++ b/packages/motion/README.md
@@ -8,33 +8,6 @@ This package adds device motion sensing functionality to strudel Patterns.
 npm i @strudel/motion --save
 ```
 
-## Setup SSL for Local Development
-`DeviceMotionEvent` only works with HTTPS, so you'll need to enable SSL for local development.
-Try installing an SSL plugin for Vite.
-
-```
-cd website
-pnpm install -D @vitejs/plugin-basic-ssl
-```
-
-add the basicSsl plugin to the defineConfig block in `strudel/website/astro.config.mjs`
-```
-vite: {
-  plugins: [basicSsl()],
-  server: {
-    host: '0.0.0.0', // Ensures it binds to all network interfaces
-    // https: { 
-    //   key: '../../key.pem', //
-    //   cert: '../../cert.pem',
-    // },
-  },
-},
-```
-
-generate an SSL certificate to avoid security warnings.
-
-`openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout key.pem -out cert.pem`
-
 ## Usage
 
 | Motion  | Long Names & Aliases | Description |
@@ -68,3 +41,32 @@ $:n("[0 1 3 1 5 4]/4")
   .attack(rotB.range(0,0.1))
   .sound("sawtooth").cpm(tempo)
 ```
+
+## Setup SSL for Local Development
+
+`DeviceMotionEvent` only works with HTTPS, so you'll need to enable SSL for local development.
+Try installing an SSL plugin for Vite.
+
+```sh
+cd website
+pnpm install -D @vitejs/plugin-basic-ssl
+```
+
+add the basicSsl plugin to the defineConfig block in `strudel/website/astro.config.mjs`
+
+```js
+vite: {
+  plugins: [basicSsl()],
+  server: {
+    host: '0.0.0.0', // Ensures it binds to all network interfaces
+    // https: { 
+    //   key: '../../key.pem', //
+    //   cert: '../../cert.pem',
+    // },
+  },
+},
+```
+
+generate an SSL certificate to avoid security warnings.
+
+`openssl req -new -newkey rsa:2048 -days 365 -nodes -x509 -keyout key.pem -out cert.pem`

From 1f5f1a63a6d4e1bd7b2c2bc8c2ab6e9bcdc011ff Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 08:23:52 +0100
Subject: [PATCH 451/805] docs: cpm -> setcpm

---
 packages/motion/README.md | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/packages/motion/README.md b/packages/motion/README.md
index f122a675..4fc343f9 100644
--- a/packages/motion/README.md
+++ b/packages/motion/README.md
@@ -20,14 +20,14 @@ npm i @strudel/motion --save
 
 ## Example
 
-```
+```js
 enableMotion() //enable DeviceMotion 
 
-let tempo = 200
+setcpm(200/4)
 
 $_: accX.segment(16).gain().log()
 
-$:n("[0 1 3 1 5 4]/4")
+$:n("0 1 3 1 5 4")
   .scale("Bb:lydian")
   .sometimesBy(0.5,sub(note(12)))
   .lpf(gravityY.range(20,1000))
@@ -39,7 +39,7 @@ $:n("[0 1 3 1 5 4]/4")
   .delay(rotG.range(0,1))
   .decay(rotA.range(0,1))
   .attack(rotB.range(0,0.1))
-  .sound("sawtooth").cpm(tempo)
+  .sound("sawtooth")
 ```
 
 ## Setup SSL for Local Development

From bcb1da826ef4ae52a06b682782f9368bacc74c1f Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 08:26:09 +0100
Subject: [PATCH 452/805] fix: doc example

---
 packages/motion/docs/devicemotion.mdx | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/packages/motion/docs/devicemotion.mdx b/packages/motion/docs/devicemotion.mdx
index ebf1dbc4..9afccc89 100644
--- a/packages/motion/docs/devicemotion.mdx
+++ b/packages/motion/docs/devicemotion.mdx
@@ -54,8 +54,8 @@ Here's a simple example that uses device motion to control a synthesizer:
   client:idle
   tune={`enableMotion()
 // Create a simple melody
-$:n("0 1 3 5").
-.scale("C major")
+$:n("0 1 3 5")
+.scale("C:major")
 // Use tilt (gravity) to control filter
 .lpf(gravityY.range(200, 2000)) // tilt forward/back for filter cutoff
 // Use rotation to control effects

From 5cef1a8cf943d55757b4e4c701d1a69c10b00057 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 08:40:00 +0100
Subject: [PATCH 453/805] refactor: simplify test runtime

---
 test/runtime.mjs | 92 +++++++++++++-----------------------------------
 1 file changed, 25 insertions(+), 67 deletions(-)

diff --git a/test/runtime.mjs b/test/runtime.mjs
index 18d4a29e..b0a329a4 100644
--- a/test/runtime.mjs
+++ b/test/runtime.mjs
@@ -74,72 +74,31 @@ const toneHelpersMocked = {
   highpass: mockNode,
 };
 
-strudel.Pattern.prototype.osc = function () {
-  return this;
-};
-strudel.Pattern.prototype.csound = function () {
-  return this;
-};
-strudel.Pattern.prototype.tone = function () {
-  return this;
-};
-strudel.Pattern.prototype.webdirt = function () {
-  return this;
-};
-
-// draw mock
-strudel.Pattern.prototype.pianoroll = function () {
-  return this;
-};
-
-// speak mock
-strudel.Pattern.prototype.speak = function () {
-  return this;
-};
-
-// webaudio mock
-strudel.Pattern.prototype.wave = function () {
-  return this;
-};
-strudel.Pattern.prototype.filter = function () {
-  return this;
-};
-strudel.Pattern.prototype.adsr = function () {
-  return this;
-};
-strudel.Pattern.prototype.webaudio = function () {
-  return this;
-};
-strudel.Pattern.prototype.soundfont = function () {
-  return this;
-};
-// tune mock
-strudel.Pattern.prototype.tune = function () {
-  return this;
-};
-
-strudel.Pattern.prototype.midi = function () {
-  return this;
-};
-
-strudel.Pattern.prototype._scope = function () {
-  return this;
-};
-strudel.Pattern.prototype._spiral = function () {
-  return this;
-};
-strudel.Pattern.prototype._pitchwheel = function () {
-  return this;
-};
-strudel.Pattern.prototype._pianoroll = function () {
-  return this;
-};
-strudel.Pattern.prototype._spectrum = function () {
-  return this;
-};
-strudel.Pattern.prototype.markcss = function () {
-  return this;
-};
+[
+  'osc',
+  'csound',
+  'tone',
+  'webdirt',
+  'pianoroll',
+  'speak',
+  'wave',
+  'filter',
+  'adsr',
+  'webaudio',
+  'soundfont',
+  'tune',
+  'midi',
+  '_scope',
+  '_spiral',
+  '_pitchwheel',
+  '_pianoroll',
+  '_spectrum',
+  'markcss',
+].forEach((mock) => {
+  strudel.Pattern.prototype[mock] = function () {
+    return this;
+  };
+});
 
 const uiHelpersMocked = {
   backgroundImage: id,
@@ -193,7 +152,6 @@ evalScope(
     loadcsound,
     setcps: id,
     Clock: {}, // whatever
-    // Tone,
   },
 );
 

From 75f5f456527739982f66a00fe36291ea0f54db46 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 08:40:16 +0100
Subject: [PATCH 454/805] fix: bring back examples test + ignore device motion
 examples

---
 test/examples.test.mjs | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)
 create mode 100644 test/examples.test.mjs

diff --git a/test/examples.test.mjs b/test/examples.test.mjs
new file mode 100644
index 00000000..997c1cf3
--- /dev/null
+++ b/test/examples.test.mjs
@@ -0,0 +1,36 @@
+import { queryCode } from './runtime.mjs';
+import { describe, it } from 'vitest';
+import doc from '../doc.json';
+
+const skippedExamples = [
+  'absoluteOrientationGamma',
+  'absoluteOrientationBeta',
+  'absoluteOrientationAlpha',
+  'orientationGamma',
+  'orientationBeta',
+  'orientationAlpha',
+  'rotationGamma',
+  'rotationBeta',
+  'rotationAlpha',
+  'gravityZ',
+  'gravityY',
+  'gravityX',
+  'accelerationZ',
+  'accelerationY',
+  'accelerationX',
+];
+
+describe('runs examples', () => {
+  const { docs } = doc;
+  docs.forEach(async (doc) => {
+    if (skippedExamples.includes(doc.name)) {
+      return;
+    }
+    doc.examples?.forEach((example, i) => {
+      it(`example "${doc.name}" example index ${i}`, async ({ expect }) => {
+        const haps = await queryCode(example, 4);
+        expect(haps).toMatchSnapshot();
+      });
+    });
+  });
+});

From f558b4b8f651fce57a4c20d13eaaabe375549173 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 09:45:36 +0100
Subject: [PATCH 455/805] hotfix: update action versions

---
 .github/workflows/deploy.yml | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
index a381c201..9a853c78 100644
--- a/.github/workflows/deploy.yml
+++ b/.github/workflows/deploy.yml
@@ -39,11 +39,11 @@ jobs:
         uses: actions/configure-pages@v2
 
       - name: Upload artifact
-        uses: actions/upload-pages-artifact@v1
+        uses: actions/upload-pages-artifact@v3
         with:
           # Upload entire repository
           path: "./website/dist"
 
       - name: Deploy to GitHub Pages
         id: deployment
-        uses: actions/deploy-pages@v1
+        uses: actions/deploy-pages@v4

From ceb466ab9cbdfc940771aba8dbf836b9040cd942 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 10:58:27 +0100
Subject: [PATCH 456/805] chore: update vite

---
 packages/gamepad/package.json |   2 +-
 pnpm-lock.yaml                | 826 ++++++++++++++--------------------
 2 files changed, 350 insertions(+), 478 deletions(-)

diff --git a/packages/gamepad/package.json b/packages/gamepad/package.json
index a827aeda..199c5d03 100644
--- a/packages/gamepad/package.json
+++ b/packages/gamepad/package.json
@@ -32,7 +32,7 @@
       "@strudel/core": "workspace:*"
     },
     "devDependencies": {
-      "vite": "^5.0.10"
+     "vite": "^6.0.11"
     }
 }
   
\ No newline at end of file
diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 8a3db383..ebe09b1b 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -74,7 +74,7 @@ importers:
         version: 3.4.2
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   examples/codemirror-repl:
     dependencies:
@@ -228,7 +228,7 @@ importers:
         version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   packages/csound:
     dependencies:
@@ -274,8 +274,8 @@ importers:
         version: link:../core
     devDependencies:
       vite:
-        specifier: ^5.0.10
-        version: 5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0)
+        specifier: ^6.0.11
+        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   packages/hs2js:
     dependencies:
@@ -339,7 +339,7 @@ importers:
         version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   packages/motion:
     dependencies:
@@ -510,7 +510,7 @@ importers:
         version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   packages/transpiler:
     dependencies:
@@ -535,7 +535,7 @@ importers:
         version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   packages/web:
     dependencies:
@@ -589,7 +589,7 @@ importers:
         version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   tools/dbpatch:
     dependencies:
@@ -927,18 +927,10 @@ packages:
     resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/compat-data@7.25.8':
-    resolution: {integrity: sha512-ZsysZyXY4Tlx+Q53XdnOFmqwfB9QDTHYxaZYajWRoBLuLEAwI2UIbtxOjWh/cFaa9IKUlcB+DDuoskLuKu56JA==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/compat-data@7.26.5':
     resolution: {integrity: sha512-XvcZi1KWf88RVbF9wn8MN6tYFloU5qX8KjuF3E1PVBmJ9eypXfs4GRiJwLuTZL0iSnJUKn1BFPa5BPZZJyFzPg==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/core@7.25.8':
-    resolution: {integrity: sha512-Oixnb+DzmRT30qu9d3tJSQkxuygWm32DFykT4bRoORPa9hZ/L4KhVB/XiRm6KG+roIEM7DBQlmg27kw2HZkdZg==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/core@7.26.7':
     resolution: {integrity: sha512-SRijHmF0PSPgLIBYlWnG0hyeJLwXE2CgpsXaMOrtt2yp9/86ALw6oUlj9KYuZ0JN07T4eBMVIW4li/9S1j2BGA==}
     engines: {node: '>=6.9.0'}
@@ -947,10 +939,6 @@ packages:
     resolution: {integrity: sha512-W1lG5vUwFvfMd8HVXqdfbuG7RuaSrTCCD8cl8fP8wOivdbtbIg2Db3IWUcgvfxKbbn6ZBGYRW/Zk1MIwK49mgw==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/generator@7.25.7':
-    resolution: {integrity: sha512-5Dqpl5fyV9pIAD62yK9P7fcA768uVPUyrQmqpqstHWgMma4feF1x/oFysBCVZLY5wJ2GkMUCdsNDnGZrPoR6rA==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/generator@7.26.5':
     resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==}
     engines: {node: '>=6.9.0'}
@@ -963,10 +951,6 @@ packages:
     resolution: {integrity: sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-compilation-targets@7.25.7':
-    resolution: {integrity: sha512-DniTEax0sv6isaw6qSQSfV4gVRNtw2rte8HHM45t9ZR0xILaufBRNkpMifCRiAPyvL4ACD6v0gfCwCmtOQaV4A==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/helper-compilation-targets@7.26.5':
     resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==}
     engines: {node: '>=6.9.0'}
@@ -992,20 +976,10 @@ packages:
     resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-module-imports@7.25.7':
-    resolution: {integrity: sha512-o0xCgpNmRohmnoWKQ0Ij8IdddjyBFE4T2kagL/x6M3+4zUgc+4qTOUBoNe4XxDskt1HPKO007ZPiMgLDq2s7Kw==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/helper-module-imports@7.25.9':
     resolution: {integrity: sha512-tnUA4RsrmflIM6W6RFTLFSXITtl0wKjgpnLgXyowocVPrbYrLUXSBXDgTs8BlbmIzIdlBySRQjINYs2BAkiLtw==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-module-transforms@7.25.7':
-    resolution: {integrity: sha512-k/6f8dKG3yDz/qCwSM+RKovjMix563SLxQFo0UhRNo239SP6n9u5/eLtKD6EAjwta2JHJ49CsD8pms2HdNiMMQ==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0
-
   '@babel/helper-module-transforms@7.26.0':
     resolution: {integrity: sha512-xO+xu6B5K2czEnQye6BHA7DolFFmS3LB7stHZFaOLb1pAwO1HWLS8fXA+eh0A2yIvltPVmx3eNNDBJA2SLHXFw==}
     engines: {node: '>=6.9.0'}
@@ -1016,10 +990,6 @@ packages:
     resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-plugin-utils@7.25.7':
-    resolution: {integrity: sha512-eaPZai0PiqCi09pPs3pAFfl/zYgGaE6IdXtYvmf0qlcDTd3WCtO7JWCcRd64e0EQrcYgiHibEZnOGsSY4QSgaw==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/helper-plugin-utils@7.26.5':
     resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==}
     engines: {node: '>=6.9.0'}
@@ -1068,10 +1038,6 @@ packages:
     resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-validator-option@7.25.7':
-    resolution: {integrity: sha512-ytbPLsm+GjArDYXJ8Ydr1c/KJuutjF2besPNbIZnZ6MKUxi/uTA22t2ymmA4WFjZFpjiAMO0xuuJPqK2nvDVfQ==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/helper-validator-option@7.25.9':
     resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==}
     engines: {node: '>=6.9.0'}
@@ -1080,10 +1046,6 @@ packages:
     resolution: {integrity: sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helpers@7.25.7':
-    resolution: {integrity: sha512-Sv6pASx7Esm38KQpF/U/OXLwPPrdGHNKoeblRxgZRLXnAtnkEe4ptJPDtAZM7fBLadbc1Q07kQpSiGQ0Jg6tRA==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/helpers@7.26.7':
     resolution: {integrity: sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==}
     engines: {node: '>=6.9.0'}
@@ -1486,18 +1448,10 @@ packages:
     resolution: {integrity: sha512-AOPI3D+a8dXnja+iwsUqGRjr1BbZIe771sXdapOtYI531gSqpi92vXivKcq2asu/DFpdl1ceFAKZyRzK2PCVcQ==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/template@7.25.7':
-    resolution: {integrity: sha512-wRwtAgI3bAS+JGU2upWNL9lSlDcRCqD05BZ1n3X2ONLH1WilFP6O1otQjeMK/1g0pvYcXC7b/qVUB1keofjtZA==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/template@7.25.9':
     resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/traverse@7.25.7':
-    resolution: {integrity: sha512-jatJPT1Zjqvh/1FyJs6qAHL+Dzb7sTb+xr7Q+gM1b+1oBsMsQQ4FkVKb6dFlJvLlVssqkRzV05Jzervt9yhnzg==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/traverse@7.26.7':
     resolution: {integrity: sha512-1x1sgeyRLC3r5fQOM0/xtQKsYjyxmFjaOrLJNtZ81inNjyJHGIolTULPiSc/2qe1/qfpFLisLQYFnnZl7QoedA==}
     engines: {node: '>=6.9.0'}
@@ -5896,10 +5850,6 @@ packages:
     resolution: {integrity: sha512-zNy02qivjjRosswoYmPi8hIKJRr8MpQyeKT6qlcq/OnOgA3Rhoae+IYOqsM9V5+JnHWmxKnWOT2GxvtqdtOCXA==}
     engines: {node: '>=10'}
 
-  node-addon-api@8.2.1:
-    resolution: {integrity: sha512-vmEOvxwiH8tlOcv4SyE8RH34rI5/nWVaigUeAUPawC6f0+HoDthwI0vkMu4tbtsZrXq6QXFfrkhjofzKEs5tpA==}
-    engines: {node: ^18 || ^20 || >= 21}
-
   node-addon-api@8.3.0:
     resolution: {integrity: sha512-8VOpLHFrOQlAH+qA0ZzuGRlALRA6/LVh8QJldbrC4DY0hXoMP0l4Acq8TzFC018HztWiRqyCEj2aTWY2UvnJUg==}
     engines: {node: ^18 || ^20 || >= 21}
@@ -8302,30 +8252,8 @@ snapshots:
       js-tokens: 4.0.0
       picocolors: 1.1.1
 
-  '@babel/compat-data@7.25.8': {}
-
   '@babel/compat-data@7.26.5': {}
 
-  '@babel/core@7.25.8':
-    dependencies:
-      '@ampproject/remapping': 2.3.0
-      '@babel/code-frame': 7.25.7
-      '@babel/generator': 7.25.7
-      '@babel/helper-compilation-targets': 7.25.7
-      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
-      '@babel/helpers': 7.25.7
-      '@babel/parser': 7.25.8
-      '@babel/template': 7.25.7
-      '@babel/traverse': 7.25.7
-      '@babel/types': 7.25.8
-      convert-source-map: 2.0.0
-      debug: 4.3.7
-      gensync: 1.0.0-beta.2
-      json5: 2.2.3
-      semver: 6.3.1
-    transitivePeerDependencies:
-      - supports-color
-
   '@babel/core@7.26.7':
     dependencies:
       '@ampproject/remapping': 2.3.0
@@ -8352,13 +8280,6 @@ snapshots:
       '@jridgewell/gen-mapping': 0.3.2
       jsesc: 2.5.2
 
-  '@babel/generator@7.25.7':
-    dependencies:
-      '@babel/types': 7.25.8
-      '@jridgewell/gen-mapping': 0.3.5
-      '@jridgewell/trace-mapping': 0.3.25
-      jsesc: 3.0.2
-
   '@babel/generator@7.26.5':
     dependencies:
       '@babel/parser': 7.26.7
@@ -8369,23 +8290,15 @@ snapshots:
 
   '@babel/helper-annotate-as-pure@7.25.7':
     dependencies:
-      '@babel/types': 7.25.8
+      '@babel/types': 7.26.7
 
   '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7':
     dependencies:
-      '@babel/traverse': 7.25.7
-      '@babel/types': 7.25.8
+      '@babel/traverse': 7.26.7
+      '@babel/types': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-compilation-targets@7.25.7':
-    dependencies:
-      '@babel/compat-data': 7.25.8
-      '@babel/helper-validator-option': 7.25.7
-      browserslist: 4.24.0
-      lru-cache: 5.1.1
-      semver: 6.3.1
-
   '@babel/helper-compilation-targets@7.26.5':
     dependencies:
       '@babel/compat-data': 7.26.5
@@ -8394,32 +8307,32 @@ snapshots:
       lru-cache: 5.1.1
       semver: 6.3.1
 
-  '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.25.8)':
+  '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
       '@babel/helper-annotate-as-pure': 7.25.7
       '@babel/helper-member-expression-to-functions': 7.25.7
       '@babel/helper-optimise-call-expression': 7.25.7
-      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.8)
+      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.26.7)
       '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
-      '@babel/traverse': 7.25.7
+      '@babel/traverse': 7.26.7
       semver: 6.3.1
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.25.8)':
+  '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
       '@babel/helper-annotate-as-pure': 7.25.7
       regexpu-core: 6.1.1
       semver: 6.3.1
 
-  '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.25.8)':
+  '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-compilation-targets': 7.25.7
-      '@babel/helper-plugin-utils': 7.25.7
-      debug: 4.3.7
+      '@babel/core': 7.26.7
+      '@babel/helper-compilation-targets': 7.26.5
+      '@babel/helper-plugin-utils': 7.26.5
+      debug: 4.4.0
       lodash.debounce: 4.0.8
       resolve: 1.22.8
     transitivePeerDependencies:
@@ -8427,15 +8340,8 @@ snapshots:
 
   '@babel/helper-member-expression-to-functions@7.25.7':
     dependencies:
-      '@babel/traverse': 7.25.7
-      '@babel/types': 7.25.8
-    transitivePeerDependencies:
-      - supports-color
-
-  '@babel/helper-module-imports@7.25.7':
-    dependencies:
-      '@babel/traverse': 7.25.7
-      '@babel/types': 7.25.8
+      '@babel/traverse': 7.26.7
+      '@babel/types': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
@@ -8446,16 +8352,6 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-module-transforms@7.25.7(@babel/core@7.25.8)':
-    dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-module-imports': 7.25.7
-      '@babel/helper-simple-access': 7.25.7
-      '@babel/helper-validator-identifier': 7.25.7
-      '@babel/traverse': 7.25.7
-    transitivePeerDependencies:
-      - supports-color
-
   '@babel/helper-module-transforms@7.26.0(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
@@ -8467,41 +8363,39 @@ snapshots:
 
   '@babel/helper-optimise-call-expression@7.25.7':
     dependencies:
-      '@babel/types': 7.25.8
-
-  '@babel/helper-plugin-utils@7.25.7': {}
+      '@babel/types': 7.26.7
 
   '@babel/helper-plugin-utils@7.26.5': {}
 
-  '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.25.8)':
+  '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
       '@babel/helper-annotate-as-pure': 7.25.7
       '@babel/helper-wrap-function': 7.25.7
-      '@babel/traverse': 7.25.7
+      '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-replace-supers@7.25.7(@babel/core@7.25.8)':
+  '@babel/helper-replace-supers@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
       '@babel/helper-member-expression-to-functions': 7.25.7
       '@babel/helper-optimise-call-expression': 7.25.7
-      '@babel/traverse': 7.25.7
+      '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
   '@babel/helper-simple-access@7.25.7':
     dependencies:
-      '@babel/traverse': 7.25.7
-      '@babel/types': 7.25.8
+      '@babel/traverse': 7.26.7
+      '@babel/types': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
   '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
     dependencies:
-      '@babel/traverse': 7.25.7
-      '@babel/types': 7.25.8
+      '@babel/traverse': 7.26.7
+      '@babel/types': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
@@ -8517,23 +8411,16 @@ snapshots:
 
   '@babel/helper-validator-identifier@7.25.9': {}
 
-  '@babel/helper-validator-option@7.25.7': {}
-
   '@babel/helper-validator-option@7.25.9': {}
 
   '@babel/helper-wrap-function@7.25.7':
     dependencies:
-      '@babel/template': 7.25.7
-      '@babel/traverse': 7.25.7
-      '@babel/types': 7.25.8
+      '@babel/template': 7.25.9
+      '@babel/traverse': 7.26.7
+      '@babel/types': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helpers@7.25.7':
-    dependencies:
-      '@babel/template': 7.25.7
-      '@babel/types': 7.25.8
-
   '@babel/helpers@7.26.7':
     dependencies:
       '@babel/template': 7.25.9
@@ -8558,315 +8445,315 @@ snapshots:
     dependencies:
       '@babel/types': 7.26.7
 
-  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/traverse': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
       '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
-      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.25.8)
+      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/traverse': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.8)':
+  '@babel/plugin-proposal-private-property-in-object@7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
 
-  '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.25.8)':
+  '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-async-generator-functions@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-async-generator-functions@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.8)
-      '@babel/traverse': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.26.7)
+      '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-module-imports': 7.25.7
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.25.8)
+      '@babel/core': 7.26.7
+      '@babel/helper-module-imports': 7.25.9
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-class-static-block@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-class-static-block@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-classes@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-classes@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
       '@babel/helper-annotate-as-pure': 7.25.7
-      '@babel/helper-compilation-targets': 7.25.7
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.8)
-      '@babel/traverse': 7.25.7
+      '@babel/helper-compilation-targets': 7.26.5
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.26.7)
+      '@babel/traverse': 7.26.7
       globals: 11.12.0
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/template': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/template': 7.25.9
 
-  '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-dynamic-import@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-dynamic-import@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
       '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.7
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-export-namespace-from@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-export-namespace-from@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
       '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-compilation-targets': 7.25.7
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/traverse': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-compilation-targets': 7.26.5
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-json-strings@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-json-strings@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-literals@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-literals@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-logical-assignment-operators@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-logical-assignment-operators@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
       '@babel/helper-simple-access': 7.25.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/helper-validator-identifier': 7.25.7
-      '@babel/traverse': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/helper-validator-identifier': 7.25.9
+      '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-module-transforms': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-nullish-coalescing-operator@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-nullish-coalescing-operator@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-numeric-separator@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-numeric-separator@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-object-rest-spread@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-object-rest-spread@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-compilation-targets': 7.25.7
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.8)
+      '@babel/core': 7.26.7
+      '@babel/helper-compilation-targets': 7.26.5
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.26.7)
 
-  '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.25.8)
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-optional-catch-binding@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-optional-catch-binding@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-optional-chaining@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-optional-chaining@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
       '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-private-property-in-object@7.25.8(@babel/core@7.25.8)':
+  '@babel/plugin-transform-private-property-in-object@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
+      '@babel/core': 7.26.7
       '@babel/helper-annotate-as-pure': 7.25.7
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
   '@babel/plugin-transform-react-jsx-self@7.25.9(@babel/core@7.26.7)':
     dependencies:
@@ -8878,147 +8765,147 @@ snapshots:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
       regenerator-transform: 0.15.2
 
-  '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-spread@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-spread@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
       '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.25.8)':
+  '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.25.8)
-      '@babel/helper-plugin-utils': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/preset-env@7.25.8(@babel/core@7.25.8)':
+  '@babel/preset-env@7.25.8(@babel/core@7.26.7)':
     dependencies:
-      '@babel/compat-data': 7.25.8
-      '@babel/core': 7.25.8
-      '@babel/helper-compilation-targets': 7.25.7
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/helper-validator-option': 7.25.7
-      '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.25.8)
-      '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.25.8)
-      '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-async-generator-functions': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-class-static-block': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-dynamic-import': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-export-namespace-from': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-json-strings': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-logical-assignment-operators': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-nullish-coalescing-operator': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-numeric-separator': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-object-rest-spread': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-optional-catch-binding': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-private-property-in-object': 7.25.8(@babel/core@7.25.8)
-      '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.25.8)
-      '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.25.8)
-      '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.25.8)
-      babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.25.8)
-      babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.25.8)
-      babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.25.8)
+      '@babel/compat-data': 7.26.5
+      '@babel/core': 7.26.7
+      '@babel/helper-compilation-targets': 7.26.5
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/helper-validator-option': 7.25.9
+      '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.7)
+      '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.26.7)
+      '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-async-generator-functions': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-class-static-block': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-dynamic-import': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-export-namespace-from': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-json-strings': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-logical-assignment-operators': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-nullish-coalescing-operator': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-numeric-separator': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-object-rest-spread': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-optional-catch-binding': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-private-property-in-object': 7.25.8(@babel/core@7.26.7)
+      '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.26.7)
+      babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.26.7)
+      babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.7)
+      babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.26.7)
       core-js-compat: 3.38.1
       semver: 6.3.1
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.25.8)':
+  '@babel/preset-modules@0.1.6-no-external-plugins(@babel/core@7.26.7)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-plugin-utils': 7.25.7
-      '@babel/types': 7.25.8
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/types': 7.26.7
       esutils: 2.0.3
 
   '@babel/runtime@7.25.7':
@@ -9029,30 +8916,12 @@ snapshots:
     dependencies:
       regenerator-runtime: 0.14.1
 
-  '@babel/template@7.25.7':
-    dependencies:
-      '@babel/code-frame': 7.25.7
-      '@babel/parser': 7.25.8
-      '@babel/types': 7.25.8
-
   '@babel/template@7.25.9':
     dependencies:
       '@babel/code-frame': 7.26.2
       '@babel/parser': 7.26.7
       '@babel/types': 7.26.7
 
-  '@babel/traverse@7.25.7':
-    dependencies:
-      '@babel/code-frame': 7.25.7
-      '@babel/generator': 7.25.7
-      '@babel/parser': 7.25.8
-      '@babel/template': 7.25.7
-      '@babel/types': 7.25.8
-      debug: 4.3.7
-      globals: 11.12.0
-    transitivePeerDependencies:
-      - supports-color
-
   '@babel/traverse@7.26.7':
     dependencies:
       '@babel/code-frame': 7.26.2
@@ -10064,10 +9933,10 @@ snapshots:
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
 
-  '@rollup/plugin-babel@5.3.1(@babel/core@7.25.8)(@types/babel__core@7.20.5)(rollup@2.79.2)':
+  '@rollup/plugin-babel@5.3.1(@babel/core@7.26.7)(@types/babel__core@7.20.5)(rollup@2.79.2)':
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-module-imports': 7.25.7
+      '@babel/core': 7.26.7
+      '@babel/helper-module-imports': 7.25.9
       '@rollup/pluginutils': 3.1.0(rollup@2.79.2)
       rollup: 2.79.2
     optionalDependencies:
@@ -10750,7 +10619,7 @@ snapshots:
       sirv: 3.0.0
       tinyglobby: 0.2.10
       tinyrainbow: 2.0.0
-      vitest: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0)
+      vitest: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
   '@vitest/utils@3.0.4':
     dependencies:
@@ -11129,27 +10998,27 @@ snapshots:
 
   babel-plugin-add-module-exports@0.2.1: {}
 
-  babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.25.8):
+  babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.26.7):
     dependencies:
-      '@babel/compat-data': 7.25.8
-      '@babel/core': 7.25.8
-      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8)
+      '@babel/compat-data': 7.26.5
+      '@babel/core': 7.26.7
+      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.7)
       semver: 6.3.1
     transitivePeerDependencies:
       - supports-color
 
-  babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.25.8):
+  babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.26.7):
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8)
+      '@babel/core': 7.26.7
+      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.7)
       core-js-compat: 3.38.1
     transitivePeerDependencies:
       - supports-color
 
-  babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.25.8):
+  babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.26.7):
     dependencies:
-      '@babel/core': 7.25.8
-      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.25.8)
+      '@babel/core': 7.26.7
+      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
@@ -14306,9 +14175,6 @@ snapshots:
     dependencies:
       semver: 7.6.3
 
-  node-addon-api@8.2.1:
-    optional: true
-
   node-addon-api@8.3.0: {}
 
   node-domexception@1.0.0: {}
@@ -15150,7 +15016,7 @@ snapshots:
 
   regenerator-transform@0.15.2:
     dependencies:
-      '@babel/runtime': 7.25.7
+      '@babel/runtime': 7.26.7
 
   regex-recursion@5.1.1:
     dependencies:
@@ -15393,7 +15259,7 @@ snapshots:
 
   rollup-plugin-terser@7.0.2(rollup@2.79.2):
     dependencies:
-      '@babel/code-frame': 7.25.7
+      '@babel/code-frame': 7.26.2
       jest-worker: 26.6.2
       rollup: 2.79.2
       serialize-javascript: 4.0.0
@@ -16028,7 +15894,7 @@ snapshots:
 
   tree-sitter@0.21.1:
     dependencies:
-      node-addon-api: 8.2.1
+      node-addon-api: 8.3.0
       node-gyp-build: 4.8.2
     optional: true
 
@@ -16361,15 +16227,16 @@ snapshots:
       remove-trailing-separator: 1.1.0
       replace-ext: 1.0.1
 
-  vite-node@3.0.4(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0):
+  vite-node@3.0.4(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0):
     dependencies:
       cac: 6.7.14
       debug: 4.4.0
       es-module-lexer: 1.6.0
       pathe: 2.0.2
-      vite: 5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0)
+      vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
     transitivePeerDependencies:
       - '@types/node'
+      - jiti
       - less
       - lightningcss
       - sass
@@ -16378,11 +16245,13 @@ snapshots:
       - sugarss
       - supports-color
       - terser
+      - tsx
+      - yaml
 
   vite-plugin-pwa@0.17.5(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0):
     dependencies:
-      debug: 4.3.7
-      fast-glob: 3.3.2
+      debug: 4.4.0
+      fast-glob: 3.3.3
       pretty-bytes: 6.1.1
       vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
       workbox-build: 7.0.0(@types/babel__core@7.20.5)
@@ -16417,7 +16286,7 @@ snapshots:
     optionalDependencies:
       vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
 
-  vitest@3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(lightningcss@1.29.1)(terser@5.36.0):
+  vitest@3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0):
     dependencies:
       '@vitest/expect': 3.0.4
       '@vitest/mocker': 3.0.4(vite@5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0))
@@ -16437,12 +16306,13 @@ snapshots:
       tinypool: 1.0.2
       tinyrainbow: 2.0.0
       vite: 5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0)
-      vite-node: 3.0.4(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0)
+      vite-node: 3.0.4(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
       why-is-node-running: 2.3.0
     optionalDependencies:
       '@types/node': 22.12.0
       '@vitest/ui': 3.0.4(vitest@3.0.4)
     transitivePeerDependencies:
+      - jiti
       - less
       - lightningcss
       - msw
@@ -16452,6 +16322,8 @@ snapshots:
       - sugarss
       - supports-color
       - terser
+      - tsx
+      - yaml
 
   w3c-keyname@2.2.6: {}
 
@@ -16571,10 +16443,10 @@ snapshots:
   workbox-build@7.0.0(@types/babel__core@7.20.5):
     dependencies:
       '@apideck/better-ajv-errors': 0.3.6(ajv@8.17.1)
-      '@babel/core': 7.25.8
-      '@babel/preset-env': 7.25.8(@babel/core@7.25.8)
-      '@babel/runtime': 7.25.7
-      '@rollup/plugin-babel': 5.3.1(@babel/core@7.25.8)(@types/babel__core@7.20.5)(rollup@2.79.2)
+      '@babel/core': 7.26.7
+      '@babel/preset-env': 7.25.8(@babel/core@7.26.7)
+      '@babel/runtime': 7.26.7
+      '@rollup/plugin-babel': 5.3.1(@babel/core@7.26.7)(@types/babel__core@7.20.5)(rollup@2.79.2)
       '@rollup/plugin-node-resolve': 11.2.1(rollup@2.79.2)
       '@rollup/plugin-replace': 2.4.2(rollup@2.79.2)
       '@surma/rollup-plugin-off-main-thread': 2.2.3

From b611c9c2b442823a1945b91c1d6b90bf611371ab Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 11:00:07 +0100
Subject: [PATCH 457/805] chore: revert to main package lock

---
 pnpm-lock.yaml | 5656 ++++++++++++++++++++++--------------------------
 1 file changed, 2528 insertions(+), 3128 deletions(-)

diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index ebe09b1b..494d04f0 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -74,7 +74,7 @@ importers:
         version: 3.4.2
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   examples/codemirror-repl:
     dependencies:
@@ -105,7 +105,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   examples/headless-repl:
     dependencies:
@@ -115,7 +115,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   examples/minimal-repl:
     dependencies:
@@ -137,7 +137,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   examples/superdough:
     dependencies:
@@ -147,7 +147,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   examples/tidal-repl:
     dependencies:
@@ -160,7 +160,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/codemirror:
     dependencies:
@@ -199,7 +199,7 @@ importers:
         version: 6.2.1(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/search@6.5.8)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)
       '@replit/codemirror-vscode-keymap':
         specifier: ^6.0.2
-        version: 6.0.2(@codemirror/autocomplete@6.18.4)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.4.2)(@codemirror/search@6.5.8)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)
+        version: 6.0.2(@codemirror/autocomplete@6.18.4)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.8)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)
       '@strudel/core':
         specifier: workspace:*
         version: link:../core
@@ -215,7 +215,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/core:
     dependencies:
@@ -225,10 +225,10 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/csound:
     dependencies:
@@ -244,7 +244,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/desktopbridge:
     dependencies:
@@ -263,20 +263,10 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/embed: {}
 
-  packages/gamepad:
-    dependencies:
-      '@strudel/core':
-        specifier: workspace:*
-        version: link:../core
-    devDependencies:
-      vite:
-        specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
-
   packages/hs2js:
     dependencies:
       web-tree-sitter:
@@ -288,7 +278,7 @@ importers:
         version: 0.23.1(tree-sitter@0.21.1)
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/hydra:
     dependencies:
@@ -300,14 +290,14 @@ importers:
         version: link:../draw
       hydra-synth:
         specifier: ^1.3.29
-        version: 1.3.29
+        version: 1.3.29(rollup@4.32.0)
     devDependencies:
       pkg:
         specifier: ^5.8.1
         version: 5.8.1(encoding@0.1.13)
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/midi:
     dependencies:
@@ -323,7 +313,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/mini:
     dependencies:
@@ -336,10 +326,10 @@ importers:
         version: 4.2.0
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/motion:
     dependencies:
@@ -349,7 +339,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/mqtt:
     dependencies:
@@ -362,7 +352,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/osc:
     dependencies:
@@ -378,13 +368,13 @@ importers:
         version: 5.8.1(encoding@0.1.13)
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/reference:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/repl:
     dependencies:
@@ -421,10 +411,10 @@ importers:
     devDependencies:
       '@rollup/plugin-replace':
         specifier: ^6.0.2
-        version: 6.0.2(rollup@4.24.0)
+        version: 6.0.2(rollup@4.32.0)
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/sampler:
     dependencies:
@@ -440,7 +430,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/soundfonts:
     dependencies:
@@ -462,7 +452,7 @@ importers:
         version: 3.3.2
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/superdough:
     dependencies:
@@ -472,7 +462,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/tidal:
     dependencies:
@@ -488,7 +478,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/tonal:
     dependencies:
@@ -507,10 +497,10 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/transpiler:
     dependencies:
@@ -532,10 +522,10 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/web:
     dependencies:
@@ -557,10 +547,10 @@ importers:
     devDependencies:
       '@rollup/plugin-replace':
         specifier: ^6.0.2
-        version: 6.0.2(rollup@4.24.0)
+        version: 6.0.2(rollup@4.32.0)
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/webaudio:
     dependencies:
@@ -576,7 +566,7 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   packages/xen:
     dependencies:
@@ -586,10 +576,10 @@ importers:
     devDependencies:
       vite:
         specifier: ^6.0.11
-        version: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
       vitest:
         specifier: ^3.0.4
-        version: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+        version: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   tools/dbpatch:
     dependencies:
@@ -604,19 +594,19 @@ importers:
         version: 5.20.0
       '@astro-community/astro-embed-youtube':
         specifier: ^0.5.6
-        version: 0.5.6(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))
+        version: 0.5.6(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))
       '@astrojs/mdx':
         specifier: ^4.0.7
-        version: 4.0.8(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))
+        version: 4.0.7(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))
       '@astrojs/react':
         specifier: ^4.1.6
-        version: 4.2.0(@types/node@22.12.0)(@types/react-dom@19.0.3(@types/react@19.0.8))(@types/react@19.0.8)(jiti@2.4.2)(lightningcss@1.29.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(terser@5.36.0)
+        version: 4.1.6(@types/node@22.10.10)(@types/react-dom@19.0.3(@types/react@19.0.8))(@types/react@19.0.8)(jiti@2.4.2)(lightningcss@1.29.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(terser@5.37.0)(yaml@2.7.0)
       '@astrojs/rss':
         specifier: ^4.0.11
         version: 4.0.11
       '@astrojs/tailwind':
         specifier: ^5.1.5
-        version: 5.1.5(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))(tailwindcss@3.4.17)
+        version: 5.1.5(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))(tailwindcss@3.4.17)
       '@docsearch/css':
         specifier: ^3.8.3
         version: 3.8.3
@@ -650,9 +640,6 @@ importers:
       '@strudel/draw':
         specifier: workspace:*
         version: link:../packages/draw
-      '@strudel/gamepad':
-        specifier: workspace:*
-        version: link:../packages/gamepad
       '@strudel/hydra':
         specifier: workspace:*
         version: link:../packages/hydra
@@ -700,7 +687,7 @@ importers:
         version: 0.5.10(tailwindcss@3.4.17)
       '@tailwindcss/postcss':
         specifier: ^4.0.0
-        version: 4.0.1
+        version: 4.0.0
       '@tailwindcss/typography':
         specifier: ^0.5.16
         version: 0.5.16(tailwindcss@3.4.17)
@@ -709,10 +696,10 @@ importers:
         version: 2.2.0
       '@tauri-apps/plugin-clipboard-manager':
         specifier: ^2.2.0
-        version: 2.2.1
+        version: 2.2.0
       '@types/node':
         specifier: ^22.10.10
-        version: 22.12.0
+        version: 22.10.10
       '@types/react':
         specifier: ^19.0.8
         version: 19.0.8
@@ -721,7 +708,7 @@ importers:
         version: 19.0.3(@types/react@19.0.8)
       astro:
         specifier: ^5.1.9
-        version: 5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3)
+        version: 5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0)
       claviature:
         specifier: ^0.1.0
         version: 0.1.0
@@ -770,7 +757,7 @@ importers:
     devDependencies:
       '@vite-pwa/astro':
         specifier: ^0.5.0
-        version: 0.5.0(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))(vite-plugin-pwa@0.17.5(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0))
+        version: 0.5.0(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))(vite-plugin-pwa@0.21.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0))
       html-escaper:
         specifier: ^3.0.3
         version: 3.0.3
@@ -783,10 +770,6 @@ importers:
 
 packages:
 
-  '@aashutoshrathi/word-wrap@1.2.6':
-    resolution: {integrity: sha512-1Yjs2SvM8TflER/OD3cOjhWWOZb58A2t7wpE2S9XfBYTiIl+XFhQG2bjy4Pu1I+EAlCNUzRDYDdFwFYUKvXcIA==}
-    engines: {node: '>=0.10.0'}
-
   '@algolia/autocomplete-core@1.17.9':
     resolution: {integrity: sha512-O7BxrpLDPJWWHv/DLA9DRFWs+iY1uOJZkqUwjS5HSZAGcl0hIVCQ97LTLewiZmZ402JYUrun+8NqFP+hCknlbQ==}
 
@@ -881,14 +864,14 @@ packages:
   '@astrojs/compiler@2.10.3':
     resolution: {integrity: sha512-bL/O7YBxsFt55YHU021oL+xz+B/9HvGNId3F9xURN16aeqDK9juHGktdkCSXz+U4nqFACq6ZFvWomOzhV+zfPw==}
 
-  '@astrojs/internal-helpers@0.5.0':
-    resolution: {integrity: sha512-CgB5ZaZO1PFG+rbjF3HnA7G6gIBjJ070xb7bUjeu5Gqqufma+t6fpuRWMXnK2iEO3zVyX7e/xplPlqtFKy/lvw==}
+  '@astrojs/internal-helpers@0.4.2':
+    resolution: {integrity: sha512-EdDWkC3JJVcpGpqJAU/5hSk2LKXyG3mNGkzGoAuyK+xoPHbaVdSuIWoN1QTnmK3N/gGfaaAfM8gO2KDCAW7S3w==}
 
-  '@astrojs/markdown-remark@6.1.0':
-    resolution: {integrity: sha512-emZNNSTPGgPc3V399Cazpp5+snogjaF04ocOSQn9vy3Kw/eIC4vTQjXOrWDEoSEy+AwPDZX9bQ4wd3bxhpmGgQ==}
+  '@astrojs/markdown-remark@6.0.2':
+    resolution: {integrity: sha512-aAoHGVRK3rebCYbaLjyyR+3VeAuTz4q49syUxJP29Oo5yZHdy4cCAXRqLBdr9mJVlxCUUjZiF0Dau6YBf65SGg==}
 
-  '@astrojs/mdx@4.0.8':
-    resolution: {integrity: sha512-/aiLr2yQ55W9AbpyOgfMtFXk7g2t7XoWdC2Avps/NqxAx4aYONDLneX43D79QwgqdjFhin7o3cIPp/vVppMbaA==}
+  '@astrojs/mdx@4.0.7':
+    resolution: {integrity: sha512-d3PopBTbbCoX3QOmSLYXW6YCZ0dkhNaeP9/Liz9BhEekflMc9IvBjbtNFf1WCEatsl4LLGftyDisfMM3F3LGMA==}
     engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0}
     peerDependencies:
       astro: ^5.0.0
@@ -897,8 +880,8 @@ packages:
     resolution: {integrity: sha512-GilTHKGCW6HMq7y3BUv9Ac7GMe/MO9gi9GW62GzKtth0SwukCu/qp2wLiGpEujhY+VVhaG9v7kv/5vFzvf4NYw==}
     engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0}
 
-  '@astrojs/react@4.2.0':
-    resolution: {integrity: sha512-2OccnYFK+mLuy9GpJqPM3BQGvvemnXNeww+nBVYFuiH04L7YIdfg4Gq0LT7v/BraiuADV5uTl9VhTDL/ZQPAhw==}
+  '@astrojs/react@4.1.6':
+    resolution: {integrity: sha512-lMBO+Va4JbLsXviagT9/ZmliwfQGmsiw4rvI4yusPZijQek3q5yfEnQor5XWNcErrkazjjNxY9BFO5f/eSfqmw==}
     engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0}
     peerDependencies:
       '@types/react': ^17.0.50 || ^18.0.21 || ^19.0.0
@@ -919,10 +902,6 @@ packages:
     resolution: {integrity: sha512-wxhSKRfKugLwLlr4OFfcqovk+LIFtKwLyGPqMsv+9/ibqqnW3Gv7tBhtKEb0gAyUAC4G9BTVQeQahqnQAhd6IQ==}
     engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0}
 
-  '@babel/code-frame@7.25.7':
-    resolution: {integrity: sha512-0xZJFNE5XMpENsgfHYTw8FbX4kv53mFLn2i3XPoq69LyhYSCBJtitaHx9QnsVTrsogI4Z3+HtEfZ2/GFPOtf5g==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/code-frame@7.26.2':
     resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==}
     engines: {node: '>=6.9.0'}
@@ -943,37 +922,33 @@ packages:
     resolution: {integrity: sha512-2caSP6fN9I7HOe6nqhtft7V4g7/V/gfDsC3Ag4W7kEzzvRGKqiv0pu0HogPiZ3KaVSoNDhUws6IJjDjpfmYIXw==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-annotate-as-pure@7.25.7':
-    resolution: {integrity: sha512-4xwU8StnqnlIhhioZf1tqnVWeQ9pvH/ujS8hRfw/WOza+/a+1qv69BWNy+oY231maTCWgKWhfBU7kDpsds6zAA==}
-    engines: {node: '>=6.9.0'}
-
-  '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7':
-    resolution: {integrity: sha512-12xfNeKNH7jubQNm7PAkzlLwEmCs1tfuX3UjIw6vP6QXi+leKh6+LyC/+Ed4EIQermwd58wsyh070yjDHFlNGg==}
+  '@babel/helper-annotate-as-pure@7.25.9':
+    resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==}
     engines: {node: '>=6.9.0'}
 
   '@babel/helper-compilation-targets@7.26.5':
     resolution: {integrity: sha512-IXuyn5EkouFJscIDuFF5EsiSolseme1s0CZB+QxVugqJLYmKdxI1VfIBOst0SUu4rnk2Z7kqTwmoO1lp3HIfnA==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-create-class-features-plugin@7.25.7':
-    resolution: {integrity: sha512-bD4WQhbkx80mAyj/WCm4ZHcF4rDxkoLFO6ph8/5/mQ3z4vAzltQXAmbc7GvVJx5H+lk5Mi5EmbTeox5nMGCsbw==}
+  '@babel/helper-create-class-features-plugin@7.25.9':
+    resolution: {integrity: sha512-UTZQMvt0d/rSz6KI+qdu7GQze5TIajwTS++GUozlw8VBJDEOAqSXwm1WvmYEZwqdqSGQshRocPDqrt4HBZB3fQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/helper-create-regexp-features-plugin@7.25.7':
-    resolution: {integrity: sha512-byHhumTj/X47wJ6C6eLpK7wW/WBEcnUeb7D0FNc/jFQnQVw7DOso3Zz5u9x/zLrFVkHa89ZGDbkAa1D54NdrCQ==}
+  '@babel/helper-create-regexp-features-plugin@7.26.3':
+    resolution: {integrity: sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/helper-define-polyfill-provider@0.6.2':
-    resolution: {integrity: sha512-LV76g+C502biUK6AyZ3LK10vDpDyCzZnhZFXkH1L75zHPj68+qc8Zfpx2th+gzwA2MzyK+1g/3EPl62yFnVttQ==}
+  '@babel/helper-define-polyfill-provider@0.6.3':
+    resolution: {integrity: sha512-HK7Bi+Hj6H+VTHA3ZvBis7V/6hu9QuTrnMXNybfUf2iiuU/N97I8VjB+KbhFF8Rld/Lx5MzoCwPCpPjfK+n8Cg==}
     peerDependencies:
       '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
 
-  '@babel/helper-member-expression-to-functions@7.25.7':
-    resolution: {integrity: sha512-O31Ssjd5K6lPbTX9AAYpSKrZmLeagt9uwschJd+Ixo6QiRyfpvgtVQp8qrDR9UNFjZ8+DO34ZkdrN+BnPXemeA==}
+  '@babel/helper-member-expression-to-functions@7.25.9':
+    resolution: {integrity: sha512-wbfdZ9w5vk0C0oyHqAJbc62+vet5prjj01jjJ8sKn3j9h3MQQlflEdXYvuqRWjHnM12coDEqiC1IRCi0U/EKwQ==}
     engines: {node: '>=6.9.0'}
 
   '@babel/helper-module-imports@7.25.9':
@@ -986,54 +961,34 @@ packages:
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/helper-optimise-call-expression@7.25.7':
-    resolution: {integrity: sha512-VAwcwuYhv/AT+Vfr28c9y6SHzTan1ryqrydSTFGjU0uDJHw3uZ+PduI8plCLkRsDnqK2DMEDmwrOQRsK/Ykjng==}
+  '@babel/helper-optimise-call-expression@7.25.9':
+    resolution: {integrity: sha512-FIpuNaz5ow8VyrYcnXQTDRGvV6tTjkNtCK/RYNDXGSLlUD6cBuQTSw43CShGxjvfBTfcUA/r6UhUCbtYqkhcuQ==}
     engines: {node: '>=6.9.0'}
 
   '@babel/helper-plugin-utils@7.26.5':
     resolution: {integrity: sha512-RS+jZcRdZdRFzMyr+wcsaqOmld1/EqTghfaBGQQd/WnRdzdlvSZ//kF7U8VQTxf1ynZ4cjUcYgjVGx13ewNPMg==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-remap-async-to-generator@7.25.7':
-    resolution: {integrity: sha512-kRGE89hLnPfcz6fTrlNU+uhgcwv0mBE4Gv3P9Ke9kLVJYpi4AMVVEElXvB5CabrPZW4nCM8P8UyyjrzCM0O2sw==}
+  '@babel/helper-remap-async-to-generator@7.25.9':
+    resolution: {integrity: sha512-IZtukuUeBbhgOcaW2s06OXTzVNJR0ybm4W5xC1opWFFJMZbwRj5LCk+ByYH7WdZPZTt8KnFwA8pvjN2yqcPlgw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/helper-replace-supers@7.25.7':
-    resolution: {integrity: sha512-iy8JhqlUW9PtZkd4pHM96v6BdJ66Ba9yWSE4z0W4TvSZwLBPkyDsiIU3ENe4SmrzRBs76F7rQXTy1lYC49n6Lw==}
+  '@babel/helper-replace-supers@7.26.5':
+    resolution: {integrity: sha512-bJ6iIVdYX1YooY2X7w1q6VITt+LnUILtNk7zT78ykuwStx8BauCzxvFqFaHjOpW1bVnSUM1PN1f0p5P21wHxvg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/helper-simple-access@7.25.7':
-    resolution: {integrity: sha512-FPGAkJmyoChQeM+ruBGIDyrT2tKfZJO8NcxdC+CWNJi7N8/rZpSxK7yvBJ5O/nF1gfu5KzN7VKG3YVSLFfRSxQ==}
-    engines: {node: '>=6.9.0'}
-
-  '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
-    resolution: {integrity: sha512-pPbNbchZBkPMD50K0p3JGcFMNLVUCuU/ABybm/PGNj4JiHrpmNyqqCphBk4i19xXtNV0JhldQJJtbSW5aUvbyA==}
-    engines: {node: '>=6.9.0'}
-
-  '@babel/helper-string-parser@7.21.5':
-    resolution: {integrity: sha512-5pTUx3hAJaZIdW99sJ6ZUUgWq/Y+Hja7TowEnLNMm1VivRgZQL3vpBY3qUACVsvw+yQU6+YgfBVmcbLaZtrA1w==}
-    engines: {node: '>=6.9.0'}
-
-  '@babel/helper-string-parser@7.25.7':
-    resolution: {integrity: sha512-CbkjYdsJNHFk8uqpEkpCvRs3YRp9tY6FmFY7wLMSYuGYkrdUi7r2lc4/wqsvlHoMznX3WJ9IP8giGPq68T/Y6g==}
+  '@babel/helper-skip-transparent-expression-wrappers@7.25.9':
+    resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==}
     engines: {node: '>=6.9.0'}
 
   '@babel/helper-string-parser@7.25.9':
     resolution: {integrity: sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-validator-identifier@7.19.1':
-    resolution: {integrity: sha512-awrNfaMtnHUr653GgGEs++LlAvW6w+DcPrOliSMXWCKo597CwL5Acf/wWdNkf/tfEQE3mjkeD1YOVZOUV/od1w==}
-    engines: {node: '>=6.9.0'}
-
-  '@babel/helper-validator-identifier@7.25.7':
-    resolution: {integrity: sha512-AM6TzwYqGChO45oiuPqwL2t20/HdMC1rTPAesnBCgPCSF1x3oN9MVUwQV2iyz4xqWrctwK5RNC8LV22kaQCNYg==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/helper-validator-identifier@7.25.9':
     resolution: {integrity: sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==}
     engines: {node: '>=6.9.0'}
@@ -1042,59 +997,50 @@ packages:
     resolution: {integrity: sha512-e/zv1co8pp55dNdEcCynfj9X7nyUKUXoUEwfXqaZt0omVOmDe9oOTdKStH4GmAw6zxMFs50ZayuMfHDKlO7Tfw==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/helper-wrap-function@7.25.7':
-    resolution: {integrity: sha512-MA0roW3JF2bD1ptAaJnvcabsVlNQShUaThyJbCDD4bCp8NEgiFvpoqRI2YS22hHlc2thjO/fTg2ShLMC3jygAg==}
+  '@babel/helper-wrap-function@7.25.9':
+    resolution: {integrity: sha512-ETzz9UTjQSTmw39GboatdymDq4XIQbR8ySgVrylRhPOFpsd+JrKHIuF0de7GCWmem+T4uC5z7EZguod7Wj4A4g==}
     engines: {node: '>=6.9.0'}
 
   '@babel/helpers@7.26.7':
     resolution: {integrity: sha512-8NHiL98vsi0mbPQmYAGWwfcFaOy4j2HY49fXJCfuDcdE7fMIsH9a7GdaeXpIBsbT7307WU8KCMp5pUVDNL4f9A==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/highlight@7.25.7':
-    resolution: {integrity: sha512-iYyACpW3iW8Fw+ZybQK+drQre+ns/tKpXbNESfrhNnPLIklLbXr7MYJ6gPEd0iETGLOK+SxMjVvKb/ffmk+FEw==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/parser@7.18.4':
     resolution: {integrity: sha512-FDge0dFazETFcxGw/EXzOkN8uJp0PC7Qbm+Pe9T+av2zlBpOgunFHkQPPn+eRuClU73JF+98D531UgayY89tow==}
     engines: {node: '>=6.0.0'}
     hasBin: true
 
-  '@babel/parser@7.25.8':
-    resolution: {integrity: sha512-HcttkxzdPucv3nNFmfOOMfFf64KgdJVqm1KaCm25dPGMLElo9nsLvXeJECQg8UzPuBGLyTSA0ZzqCtDSzKTEoQ==}
-    engines: {node: '>=6.0.0'}
-    hasBin: true
-
   '@babel/parser@7.26.7':
     resolution: {integrity: sha512-kEvgGGgEjRUutvdVvZhbn/BxVt+5VSpwXz1j3WYXQbXDo8KzFOPNG2GQbdAiNq8g6wn1yKk7C/qrke03a84V+w==}
     engines: {node: '>=6.0.0'}
     hasBin: true
 
-  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7':
-    resolution: {integrity: sha512-UV9Lg53zyebzD1DwQoT9mzkEKa922LNUp5YkTJ6Uta0RbyXaQNUgcvSt7qIu1PpPzVb6rd10OVNTzkyBGeVmxQ==}
+  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9':
+    resolution: {integrity: sha512-ZkRyVkThtxQ/J6nv3JFYv1RYY+JT5BvU0y3k5bWrmuG4woXypRa4PXmm9RhOwodRkYFWqC0C0cqcJ4OqR7kW+g==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7':
-    resolution: {integrity: sha512-GDDWeVLNxRIkQTnJn2pDOM1pkCgYdSqPeT1a9vh9yIqu2uzzgw1zcqEb+IJOhy+dTBMlNdThrDIksr2o09qrrQ==}
+  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9':
+    resolution: {integrity: sha512-MrGRLZxLD/Zjj0gdU15dfs+HH/OXvnw/U4jJD8vpcP2CJQapPEv1IWwjc/qMg7ItBlPwSv1hRBbb7LeuANdcnw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7':
-    resolution: {integrity: sha512-wxyWg2RYaSUYgmd9MR0FyRGyeOMQE/Uzr1wzd/g5cf5bwi9A4v6HFdDm7y1MgDtod/fLOSTZY6jDgV0xU9d5bA==}
+  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9':
+    resolution: {integrity: sha512-2qUwwfAFpJLZqxd02YW9btUCZHl+RFvdDkNfZwaIJrvB8Tesjsk8pEQkTvGwZXLqXUx/2oyY3ySRhm6HOXuCug==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7':
-    resolution: {integrity: sha512-Xwg6tZpLxc4iQjorYsyGMyfJE7nP5MV8t/Ka58BgiA7Jw0fRqQNcANlLfdJ/yvBt9z9LD2We+BEkT7vLqZRWng==}
+  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9':
+    resolution: {integrity: sha512-6xWgLZTJXwilVjlnV7ospI3xi+sl8lN8rXXbBD6vYn3UYDlGsag8wrZkKcSI8G6KgqKP7vNFaDgeDnfAABq61g==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.13.0
 
-  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7':
-    resolution: {integrity: sha512-UVATLMidXrnH+GMUIuxq55nejlj02HP7F5ETyBONzP6G87fPBogG4CH6kxrSrdIuAjdwNO9VzyaYsrZPscWUrw==}
+  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9':
+    resolution: {integrity: sha512-aLnMXYPnzwwqhYSCyXfKkIkYgJ8zv9RK+roo9DkTXz38ynIhd9XCbN08s3MGvqL2MYGVUGdRQLL/JqBIeJhJBg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
@@ -1105,14 +1051,14 @@ packages:
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-syntax-import-assertions@7.25.7':
-    resolution: {integrity: sha512-ZvZQRmME0zfJnDQnVBKYzHxXT7lYBB3Revz1GuS7oLXWMgqUPX4G+DDbT30ICClht9WKV34QVrZhSw6WdklwZQ==}
+  '@babel/plugin-syntax-import-assertions@7.26.0':
+    resolution: {integrity: sha512-QCWT5Hh830hK5EQa7XzuqIkQU9tT/whqbDz7kuaZMHFl1inRRg7JnuAEOQ0Ur0QUl0NufCk1msK2BeY79Aj/eg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-syntax-import-attributes@7.25.7':
-    resolution: {integrity: sha512-AqVo+dguCgmpi/3mYBdu9lkngOBlQ2w2vnNpa6gfiCxQZLzV4ZbhsXitJ2Yblkoe1VQwtHSaNmIaGll/26YWRw==}
+  '@babel/plugin-syntax-import-attributes@7.26.0':
+    resolution: {integrity: sha512-e2dttdsJ1ZTpi3B9UYGLw41hifAubg19AtCu/2I/F1QNVclOBr1dYpTdmdyZ84Xiz43BS/tCUkMAZNLv12Pi+A==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
@@ -1123,230 +1069,230 @@ packages:
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/plugin-transform-arrow-functions@7.25.7':
-    resolution: {integrity: sha512-EJN2mKxDwfOUCPxMO6MUI58RN3ganiRAG/MS/S3HfB6QFNjroAMelQo/gybyYq97WerCBAZoyrAoW8Tzdq2jWg==}
+  '@babel/plugin-transform-arrow-functions@7.25.9':
+    resolution: {integrity: sha512-6jmooXYIwn9ca5/RylZADJ+EnSxVUS5sjeJ9UPk6RWRzXCmOJCy6dqItPJFpw2cuCangPK4OYr5uhGKcmrm5Qg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-async-generator-functions@7.25.8':
-    resolution: {integrity: sha512-9ypqkozyzpG+HxlH4o4gdctalFGIjjdufzo7I2XPda0iBnZ6a+FO0rIEQcdSPXp02CkvGsII1exJhmROPQd5oA==}
+  '@babel/plugin-transform-async-generator-functions@7.25.9':
+    resolution: {integrity: sha512-RXV6QAzTBbhDMO9fWwOmwwTuYaiPbggWQ9INdZqAYeSHyG7FzQ+nOZaUUjNwKv9pV3aE4WFqFm1Hnbci5tBCAw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-async-to-generator@7.25.7':
-    resolution: {integrity: sha512-ZUCjAavsh5CESCmi/xCpX1qcCaAglzs/7tmuvoFnJgA1dM7gQplsguljoTg+Ru8WENpX89cQyAtWoaE0I3X3Pg==}
+  '@babel/plugin-transform-async-to-generator@7.25.9':
+    resolution: {integrity: sha512-NT7Ejn7Z/LjUH0Gv5KsBCxh7BH3fbLTV0ptHvpeMvrt3cPThHfJfst9Wrb7S8EvJ7vRTFI7z+VAvFVEQn/m5zQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-block-scoped-functions@7.25.7':
-    resolution: {integrity: sha512-xHttvIM9fvqW+0a3tZlYcZYSBpSWzGBFIt/sYG3tcdSzBB8ZeVgz2gBP7Df+sM0N1850jrviYSSeUuc+135dmQ==}
+  '@babel/plugin-transform-block-scoped-functions@7.26.5':
+    resolution: {integrity: sha512-chuTSY+hq09+/f5lMj8ZSYgCFpppV2CbYrhNFJ1BFoXpiWPnnAb7R0MqrafCpN8E1+YRrtM1MXZHJdIx8B6rMQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-block-scoping@7.25.7':
-    resolution: {integrity: sha512-ZEPJSkVZaeTFG/m2PARwLZQ+OG0vFIhPlKHK/JdIMy8DbRJ/htz6LRrTFtdzxi9EHmcwbNPAKDnadpNSIW+Aow==}
+  '@babel/plugin-transform-block-scoping@7.25.9':
+    resolution: {integrity: sha512-1F05O7AYjymAtqbsFETboN1NvBdcnzMerO+zlMyJBEz6WkMdejvGWw9p05iTSjC85RLlBseHHQpYaM4gzJkBGg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-class-properties@7.25.7':
-    resolution: {integrity: sha512-mhyfEW4gufjIqYFo9krXHJ3ElbFLIze5IDp+wQTxoPd+mwFb1NxatNAwmv8Q8Iuxv7Zc+q8EkiMQwc9IhyGf4g==}
+  '@babel/plugin-transform-class-properties@7.25.9':
+    resolution: {integrity: sha512-bbMAII8GRSkcd0h0b4X+36GksxuheLFjP65ul9w6C3KgAamI3JqErNgSrosX6ZPj+Mpim5VvEbawXxJCyEUV3Q==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-class-static-block@7.25.8':
-    resolution: {integrity: sha512-e82gl3TCorath6YLf9xUwFehVvjvfqFhdOo4+0iVIVju+6XOi5XHkqB3P2AXnSwoeTX0HBoXq5gJFtvotJzFnQ==}
+  '@babel/plugin-transform-class-static-block@7.26.0':
+    resolution: {integrity: sha512-6J2APTs7BDDm+UMqP1useWqhcRAXo0WIoVj26N7kPFB6S73Lgvyka4KTZYIxtgYXiN5HTyRObA72N2iu628iTQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.12.0
 
-  '@babel/plugin-transform-classes@7.25.7':
-    resolution: {integrity: sha512-9j9rnl+YCQY0IGoeipXvnk3niWicIB6kCsWRGLwX241qSXpbA4MKxtp/EdvFxsc4zI5vqfLxzOd0twIJ7I99zg==}
+  '@babel/plugin-transform-classes@7.25.9':
+    resolution: {integrity: sha512-mD8APIXmseE7oZvZgGABDyM34GUmK45Um2TXiBUt7PnuAxrgoSVf123qUzPxEr/+/BHrRn5NMZCdE2m/1F8DGg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-computed-properties@7.25.7':
-    resolution: {integrity: sha512-QIv+imtM+EtNxg/XBKL3hiWjgdLjMOmZ+XzQwSgmBfKbfxUjBzGgVPklUuE55eq5/uVoh8gg3dqlrwR/jw3ZeA==}
+  '@babel/plugin-transform-computed-properties@7.25.9':
+    resolution: {integrity: sha512-HnBegGqXZR12xbcTHlJ9HGxw1OniltT26J5YpfruGqtUHlz/xKf/G2ak9e+t0rVqrjXa9WOhvYPz1ERfMj23AA==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-destructuring@7.25.7':
-    resolution: {integrity: sha512-xKcfLTlJYUczdaM1+epcdh1UGewJqr9zATgrNHcLBcV2QmfvPPEixo/sK/syql9cEmbr7ulu5HMFG5vbbt/sEA==}
+  '@babel/plugin-transform-destructuring@7.25.9':
+    resolution: {integrity: sha512-WkCGb/3ZxXepmMiX101nnGiU+1CAdut8oHyEOHxkKuS1qKpU2SMXE2uSvfz8PBuLd49V6LEsbtyPhWC7fnkgvQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-dotall-regex@7.25.7':
-    resolution: {integrity: sha512-kXzXMMRzAtJdDEgQBLF4oaiT6ZCU3oWHgpARnTKDAqPkDJ+bs3NrZb310YYevR5QlRo3Kn7dzzIdHbZm1VzJdQ==}
+  '@babel/plugin-transform-dotall-regex@7.25.9':
+    resolution: {integrity: sha512-t7ZQ7g5trIgSRYhI9pIJtRl64KHotutUJsh4Eze5l7olJv+mRSg4/MmbZ0tv1eeqRbdvo/+trvJD/Oc5DmW2cA==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-duplicate-keys@7.25.7':
-    resolution: {integrity: sha512-by+v2CjoL3aMnWDOyCIg+yxU9KXSRa9tN6MbqggH5xvymmr9p4AMjYkNlQy4brMceBnUyHZ9G8RnpvT8wP7Cfg==}
+  '@babel/plugin-transform-duplicate-keys@7.25.9':
+    resolution: {integrity: sha512-LZxhJ6dvBb/f3x8xwWIuyiAHy56nrRG3PeYTpBkkzkYRRQ6tJLu68lEF5VIqMUZiAV7a8+Tb78nEoMCMcqjXBw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7':
-    resolution: {integrity: sha512-HvS6JF66xSS5rNKXLqkk7L9c/jZ/cdIVIcoPVrnl8IsVpLggTjXs8OWekbLHs/VtYDDh5WXnQyeE3PPUGm22MA==}
+  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9':
+    resolution: {integrity: sha512-0UfuJS0EsXbRvKnwcLjFtJy/Sxc5J5jhLHnFhy7u4zih97Hz6tJkLU+O+FMMrNZrosUPxDi6sYxJ/EA8jDiAog==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/plugin-transform-dynamic-import@7.25.8':
-    resolution: {integrity: sha512-gznWY+mr4ZQL/EWPcbBQUP3BXS5FwZp8RUOw06BaRn8tQLzN4XLIxXejpHN9Qo8x8jjBmAAKp6FoS51AgkSA/A==}
+  '@babel/plugin-transform-dynamic-import@7.25.9':
+    resolution: {integrity: sha512-GCggjexbmSLaFhqsojeugBpeaRIgWNTcgKVq/0qIteFEqY2A+b9QidYadrWlnbWQUrW5fn+mCvf3tr7OeBFTyg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-exponentiation-operator@7.25.7':
-    resolution: {integrity: sha512-yjqtpstPfZ0h/y40fAXRv2snciYr0OAoMXY/0ClC7tm4C/nG5NJKmIItlaYlLbIVAWNfrYuy9dq1bE0SbX0PEg==}
+  '@babel/plugin-transform-exponentiation-operator@7.26.3':
+    resolution: {integrity: sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-export-namespace-from@7.25.8':
-    resolution: {integrity: sha512-sPtYrduWINTQTW7FtOy99VCTWp4H23UX7vYcut7S4CIMEXU+54zKX9uCoGkLsWXteyaMXzVHgzWbLfQ1w4GZgw==}
+  '@babel/plugin-transform-export-namespace-from@7.25.9':
+    resolution: {integrity: sha512-2NsEz+CxzJIVOPx2o9UsW1rXLqtChtLoVnwYHHiB04wS5sgn7mrV45fWMBX0Kk+ub9uXytVYfNP2HjbVbCB3Ww==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-for-of@7.25.7':
-    resolution: {integrity: sha512-n/TaiBGJxYFWvpJDfsxSj9lEEE44BFM1EPGz4KEiTipTgkoFVVcCmzAL3qA7fdQU96dpo4gGf5HBx/KnDvqiHw==}
+  '@babel/plugin-transform-for-of@7.25.9':
+    resolution: {integrity: sha512-LqHxduHoaGELJl2uhImHwRQudhCM50pT46rIBNvtT/Oql3nqiS3wOwP+5ten7NpYSXrrVLgtZU3DZmPtWZo16A==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-function-name@7.25.7':
-    resolution: {integrity: sha512-5MCTNcjCMxQ63Tdu9rxyN6cAWurqfrDZ76qvVPrGYdBxIj+EawuuxTu/+dgJlhK5eRz3v1gLwp6XwS8XaX2NiQ==}
+  '@babel/plugin-transform-function-name@7.25.9':
+    resolution: {integrity: sha512-8lP+Yxjv14Vc5MuWBpJsoUCd3hD6V9DgBon2FVYL4jJgbnVQ9fTgYmonchzZJOVNgzEgbxp4OwAf6xz6M/14XA==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-json-strings@7.25.8':
-    resolution: {integrity: sha512-4OMNv7eHTmJ2YXs3tvxAfa/I43di+VcF+M4Wt66c88EAED1RoGaf1D64cL5FkRpNL+Vx9Hds84lksWvd/wMIdA==}
+  '@babel/plugin-transform-json-strings@7.25.9':
+    resolution: {integrity: sha512-xoTMk0WXceiiIvsaquQQUaLLXSW1KJ159KP87VilruQm0LNNGxWzahxSS6T6i4Zg3ezp4vA4zuwiNUR53qmQAw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-literals@7.25.7':
-    resolution: {integrity: sha512-fwzkLrSu2fESR/cm4t6vqd7ebNIopz2QHGtjoU+dswQo/P6lwAG04Q98lliE3jkz/XqnbGFLnUcE0q0CVUf92w==}
+  '@babel/plugin-transform-literals@7.25.9':
+    resolution: {integrity: sha512-9N7+2lFziW8W9pBl2TzaNht3+pgMIRP74zizeCSrtnSKVdUl8mAjjOP2OOVQAfZ881P2cNjDj1uAMEdeD50nuQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-logical-assignment-operators@7.25.8':
-    resolution: {integrity: sha512-f5W0AhSbbI+yY6VakT04jmxdxz+WsID0neG7+kQZbCOjuyJNdL5Nn4WIBm4hRpKnUcO9lP0eipUhFN12JpoH8g==}
+  '@babel/plugin-transform-logical-assignment-operators@7.25.9':
+    resolution: {integrity: sha512-wI4wRAzGko551Y8eVf6iOY9EouIDTtPb0ByZx+ktDGHwv6bHFimrgJM/2T021txPZ2s4c7bqvHbd+vXG6K948Q==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-member-expression-literals@7.25.7':
-    resolution: {integrity: sha512-Std3kXwpXfRV0QtQy5JJcRpkqP8/wG4XL7hSKZmGlxPlDqmpXtEPRmhF7ztnlTCtUN3eXRUJp+sBEZjaIBVYaw==}
+  '@babel/plugin-transform-member-expression-literals@7.25.9':
+    resolution: {integrity: sha512-PYazBVfofCQkkMzh2P6IdIUaCEWni3iYEerAsRWuVd8+jlM1S9S9cz1dF9hIzyoZ8IA3+OwVYIp9v9e+GbgZhA==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-modules-amd@7.25.7':
-    resolution: {integrity: sha512-CgselSGCGzjQvKzghCvDTxKHP3iooenLpJDO842ehn5D2G5fJB222ptnDwQho0WjEvg7zyoxb9P+wiYxiJX5yA==}
+  '@babel/plugin-transform-modules-amd@7.25.9':
+    resolution: {integrity: sha512-g5T11tnI36jVClQlMlt4qKDLlWnG5pP9CSM4GhdRciTNMRgkfpo5cR6b4rGIOYPgRRuFAvwjPQ/Yk+ql4dyhbw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-modules-commonjs@7.25.7':
-    resolution: {integrity: sha512-L9Gcahi0kKFYXvweO6n0wc3ZG1ChpSFdgG+eV1WYZ3/dGbJK7vvk91FgGgak8YwRgrCuihF8tE/Xg07EkL5COg==}
+  '@babel/plugin-transform-modules-commonjs@7.26.3':
+    resolution: {integrity: sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-modules-systemjs@7.25.7':
-    resolution: {integrity: sha512-t9jZIvBmOXJsiuyOwhrIGs8dVcD6jDyg2icw1VL4A/g+FnWyJKwUfSSU2nwJuMV2Zqui856El9u+ElB+j9fV1g==}
+  '@babel/plugin-transform-modules-systemjs@7.25.9':
+    resolution: {integrity: sha512-hyss7iIlH/zLHaehT+xwiymtPOpsiwIIRlCAOwBB04ta5Tt+lNItADdlXw3jAWZ96VJ2jlhl/c+PNIQPKNfvcA==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-modules-umd@7.25.7':
-    resolution: {integrity: sha512-p88Jg6QqsaPh+EB7I9GJrIqi1Zt4ZBHUQtjw3z1bzEXcLh6GfPqzZJ6G+G1HBGKUNukT58MnKG7EN7zXQBCODw==}
+  '@babel/plugin-transform-modules-umd@7.25.9':
+    resolution: {integrity: sha512-bS9MVObUgE7ww36HEfwe6g9WakQ0KF07mQF74uuXdkoziUPfKyu/nIm663kz//e5O1nPInPFx36z7WJmJ4yNEw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-named-capturing-groups-regex@7.25.7':
-    resolution: {integrity: sha512-BtAT9LzCISKG3Dsdw5uso4oV1+v2NlVXIIomKJgQybotJY3OwCwJmkongjHgwGKoZXd0qG5UZ12JUlDQ07W6Ow==}
+  '@babel/plugin-transform-named-capturing-groups-regex@7.25.9':
+    resolution: {integrity: sha512-oqB6WHdKTGl3q/ItQhpLSnWWOpjUJLsOCLVyeFgeTktkBSCiurvPOsyt93gibI9CmuKvTUEtWmG5VhZD+5T/KA==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/plugin-transform-new-target@7.25.7':
-    resolution: {integrity: sha512-CfCS2jDsbcZaVYxRFo2qtavW8SpdzmBXC2LOI4oO0rP+JSRDxxF3inF4GcPsLgfb5FjkhXG5/yR/lxuRs2pySA==}
+  '@babel/plugin-transform-new-target@7.25.9':
+    resolution: {integrity: sha512-U/3p8X1yCSoKyUj2eOBIx3FOn6pElFOKvAAGf8HTtItuPyB+ZeOqfn+mvTtg9ZlOAjsPdK3ayQEjqHjU/yLeVQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-nullish-coalescing-operator@7.25.8':
-    resolution: {integrity: sha512-Z7WJJWdQc8yCWgAmjI3hyC+5PXIubH9yRKzkl9ZEG647O9szl9zvmKLzpbItlijBnVhTUf1cpyWBsZ3+2wjWPQ==}
+  '@babel/plugin-transform-nullish-coalescing-operator@7.26.6':
+    resolution: {integrity: sha512-CKW8Vu+uUZneQCPtXmSBUC6NCAUdya26hWCElAWh5mVSlSRsmiCPUUDKb3Z0szng1hiAJa098Hkhg9o4SE35Qw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-numeric-separator@7.25.8':
-    resolution: {integrity: sha512-rm9a5iEFPS4iMIy+/A/PiS0QN0UyjPIeVvbU5EMZFKJZHt8vQnasbpo3T3EFcxzCeYO0BHfc4RqooCZc51J86Q==}
+  '@babel/plugin-transform-numeric-separator@7.25.9':
+    resolution: {integrity: sha512-TlprrJ1GBZ3r6s96Yq8gEQv82s8/5HnCVHtEJScUj90thHQbwe+E5MLhi2bbNHBEJuzrvltXSru+BUxHDoog7Q==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-object-rest-spread@7.25.8':
-    resolution: {integrity: sha512-LkUu0O2hnUKHKE7/zYOIjByMa4VRaV2CD/cdGz0AxU9we+VA3kDDggKEzI0Oz1IroG+6gUP6UmWEHBMWZU316g==}
+  '@babel/plugin-transform-object-rest-spread@7.25.9':
+    resolution: {integrity: sha512-fSaXafEE9CVHPweLYw4J0emp1t8zYTXyzN3UuG+lylqkvYd7RMrsOQ8TYx5RF231be0vqtFC6jnx3UmpJmKBYg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-object-super@7.25.7':
-    resolution: {integrity: sha512-pWT6UXCEW3u1t2tcAGtE15ornCBvopHj9Bps9D2DsH15APgNVOTwwczGckX+WkAvBmuoYKRCFa4DK+jM8vh5AA==}
+  '@babel/plugin-transform-object-super@7.25.9':
+    resolution: {integrity: sha512-Kj/Gh+Rw2RNLbCK1VAWj2U48yxxqL2x0k10nPtSdRa0O2xnHXalD0s+o1A6a0W43gJ00ANo38jxkQreckOzv5A==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-optional-catch-binding@7.25.8':
-    resolution: {integrity: sha512-EbQYweoMAHOn7iJ9GgZo14ghhb9tTjgOc88xFgYngifx7Z9u580cENCV159M4xDh3q/irbhSjZVpuhpC2gKBbg==}
+  '@babel/plugin-transform-optional-catch-binding@7.25.9':
+    resolution: {integrity: sha512-qM/6m6hQZzDcZF3onzIhZeDHDO43bkNNlOX0i8n3lR6zLbu0GN2d8qfM/IERJZYauhAHSLHy39NF0Ctdvcid7g==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-optional-chaining@7.25.8':
-    resolution: {integrity: sha512-q05Bk7gXOxpTHoQ8RSzGSh/LHVB9JEIkKnk3myAWwZHnYiTGYtbdrYkIsS8Xyh4ltKf7GNUSgzs/6P2bJtBAQg==}
+  '@babel/plugin-transform-optional-chaining@7.25.9':
+    resolution: {integrity: sha512-6AvV0FsLULbpnXeBjrY4dmWF8F7gf8QnvTEoO/wX/5xm/xE1Xo8oPuD3MPS+KS9f9XBEAWN7X1aWr4z9HdOr7A==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-parameters@7.25.7':
-    resolution: {integrity: sha512-FYiTvku63me9+1Nz7TOx4YMtW3tWXzfANZtrzHhUZrz4d47EEtMQhzFoZWESfXuAMMT5mwzD4+y1N8ONAX6lMQ==}
+  '@babel/plugin-transform-parameters@7.25.9':
+    resolution: {integrity: sha512-wzz6MKwpnshBAiRmn4jR8LYz/g8Ksg0o80XmwZDlordjwEk9SxBzTWC7F5ef1jhbrbOW2DJ5J6ayRukrJmnr0g==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-private-methods@7.25.7':
-    resolution: {integrity: sha512-KY0hh2FluNxMLwOCHbxVOKfdB5sjWG4M183885FmaqWWiGMhRZq4DQRKH6mHdEucbJnyDyYiZNwNG424RymJjA==}
+  '@babel/plugin-transform-private-methods@7.25.9':
+    resolution: {integrity: sha512-D/JUozNpQLAPUVusvqMxyvjzllRaF8/nSrP1s2YGQT/W4LHK4xxsMcHjhOGTS01mp9Hda8nswb+FblLdJornQw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-private-property-in-object@7.25.8':
-    resolution: {integrity: sha512-8Uh966svuB4V8RHHg0QJOB32QK287NBksJOByoKmHMp1TAobNniNalIkI2i5IPj5+S9NYCG4VIjbEuiSN8r+ow==}
+  '@babel/plugin-transform-private-property-in-object@7.25.9':
+    resolution: {integrity: sha512-Evf3kcMqzXA3xfYJmZ9Pg1OvKdtqsDMSWBDzZOPLvHiTt36E75jLDQo5w1gtRU95Q4E5PDttrTf25Fw8d/uWLw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-property-literals@7.25.7':
-    resolution: {integrity: sha512-lQEeetGKfFi0wHbt8ClQrUSUMfEeI3MMm74Z73T9/kuz990yYVtfofjf3NuA42Jy3auFOpbjDyCSiIkTs1VIYw==}
+  '@babel/plugin-transform-property-literals@7.25.9':
+    resolution: {integrity: sha512-IvIUeV5KrS/VPavfSM/Iu+RE6llrHrYIKY1yfCzyO/lMXHQ+p7uGhonmGVisv6tSBSVgWzMBohTcvkC9vQcQFA==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
@@ -1363,74 +1309,80 @@ packages:
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-regenerator@7.25.7':
-    resolution: {integrity: sha512-mgDoQCRjrY3XK95UuV60tZlFCQGXEtMg8H+IsW72ldw1ih1jZhzYXbJvghmAEpg5UVhhnCeia1CkGttUvCkiMQ==}
+  '@babel/plugin-transform-regenerator@7.25.9':
+    resolution: {integrity: sha512-vwDcDNsgMPDGP0nMqzahDWE5/MLcX8sv96+wfX7as7LoF/kr97Bo/7fI00lXY4wUXYfVmwIIyG80fGZ1uvt2qg==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
 
-  '@babel/plugin-transform-reserved-words@7.25.7':
-    resolution: {integrity: sha512-3OfyfRRqiGeOvIWSagcwUTVk2hXBsr/ww7bLn6TRTuXnexA+Udov2icFOxFX9abaj4l96ooYkcNN1qi2Zvqwng==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-shorthand-properties@7.25.7':
-    resolution: {integrity: sha512-uBbxNwimHi5Bv3hUccmOFlUy3ATO6WagTApenHz9KzoIdn0XeACdB12ZJ4cjhuB2WSi80Ez2FWzJnarccriJeA==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-spread@7.25.7':
-    resolution: {integrity: sha512-Mm6aeymI0PBh44xNIv/qvo8nmbkpZze1KvR8MkEqbIREDxoiWTi18Zr2jryfRMwDfVZF9foKh060fWgni44luw==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-sticky-regex@7.25.7':
-    resolution: {integrity: sha512-ZFAeNkpGuLnAQ/NCsXJ6xik7Id+tHuS+NT+ue/2+rn/31zcdnupCdmunOizEaP0JsUmTFSTOPoQY7PkK2pttXw==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-template-literals@7.25.7':
-    resolution: {integrity: sha512-SI274k0nUsFFmyQupiO7+wKATAmMFf8iFgq2O+vVFXZ0SV9lNfT1NGzBEhjquFmD8I9sqHLguH+gZVN3vww2AA==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-typeof-symbol@7.25.7':
-    resolution: {integrity: sha512-OmWmQtTHnO8RSUbL0NTdtpbZHeNTnm68Gj5pA4Y2blFNh+V4iZR68V1qL9cI37J21ZN7AaCnkfdHtLExQPf2uA==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-unicode-escapes@7.25.7':
-    resolution: {integrity: sha512-BN87D7KpbdiABA+t3HbVqHzKWUDN3dymLaTnPFAMyc8lV+KN3+YzNhVRNdinaCPA4AUqx7ubXbQ9shRjYBl3SQ==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-unicode-property-regex@7.25.7':
-    resolution: {integrity: sha512-IWfR89zcEPQGB/iB408uGtSPlQd3Jpq11Im86vUgcmSTcoWAiQMCTOa2K2yNNqFJEBVICKhayctee65Ka8OB0w==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-unicode-regex@7.25.7':
-    resolution: {integrity: sha512-8JKfg/hiuA3qXnlLx8qtv5HWRbgyFx2hMMtpDDuU2rTckpKkGu4ycK5yYHwuEa16/quXfoxHBIApEsNyMWnt0g==}
-    engines: {node: '>=6.9.0'}
-    peerDependencies:
-      '@babel/core': ^7.0.0-0
-
-  '@babel/plugin-transform-unicode-sets-regex@7.25.7':
-    resolution: {integrity: sha512-YRW8o9vzImwmh4Q3Rffd09bH5/hvY0pxg+1H1i0f7APoUeg12G7+HhLj9ZFNIrYkgBXhIijPJ+IXypN0hLTIbw==}
+  '@babel/plugin-transform-regexp-modifiers@7.26.0':
+    resolution: {integrity: sha512-vN6saax7lrA2yA/Pak3sCxuD6F5InBjn9IcrIKQPjpsLvuHYLVroTxjdlVRHjjBWxKOqIwpTXDkOssYT4BFdRw==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0
 
-  '@babel/preset-env@7.25.8':
-    resolution: {integrity: sha512-58T2yulDHMN8YMUxiLq5YmWUnlDCyY1FsHM+v12VMx+1/FlrUj5tY50iDCpofFQEM8fMYOaY9YRvym2jcjn1Dg==}
+  '@babel/plugin-transform-reserved-words@7.25.9':
+    resolution: {integrity: sha512-7DL7DKYjn5Su++4RXu8puKZm2XBPHyjWLUidaPEkCUBbE7IPcsrkRHggAOOKydH1dASWdcUBxrkOGNxUv5P3Jg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-shorthand-properties@7.25.9':
+    resolution: {integrity: sha512-MUv6t0FhO5qHnS/W8XCbHmiRWOphNufpE1IVxhK5kuN3Td9FT1x4rx4K42s3RYdMXCXpfWkGSbCSd0Z64xA7Ng==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-spread@7.25.9':
+    resolution: {integrity: sha512-oNknIB0TbURU5pqJFVbOOFspVlrpVwo2H1+HUIsVDvp5VauGGDP1ZEvO8Nn5xyMEs3dakajOxlmkNW7kNgSm6A==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-sticky-regex@7.25.9':
+    resolution: {integrity: sha512-WqBUSgeVwucYDP9U/xNRQam7xV8W5Zf+6Eo7T2SRVUFlhRiMNFdFz58u0KZmCVVqs2i7SHgpRnAhzRNmKfi2uA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-template-literals@7.25.9':
+    resolution: {integrity: sha512-o97AE4syN71M/lxrCtQByzphAdlYluKPDBzDVzMmfCobUjjhAryZV0AIpRPrxN0eAkxXO6ZLEScmt+PNhj2OTw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-typeof-symbol@7.26.7':
+    resolution: {integrity: sha512-jfoTXXZTgGg36BmhqT3cAYK5qkmqvJpvNrPhaK/52Vgjhw4Rq29s9UqpWWV0D6yuRmgiFH/BUVlkl96zJWqnaw==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-unicode-escapes@7.25.9':
+    resolution: {integrity: sha512-s5EDrE6bW97LtxOcGj1Khcx5AaXwiMmi4toFWRDP9/y0Woo6pXC+iyPu/KuhKtfSrNFd7jJB+/fkOtZy6aIC6Q==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-unicode-property-regex@7.25.9':
+    resolution: {integrity: sha512-Jt2d8Ga+QwRluxRQ307Vlxa6dMrYEMZCgGxoPR8V52rxPyldHu3hdlHspxaqYmE7oID5+kB+UKUB/eWS+DkkWg==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-unicode-regex@7.25.9':
+    resolution: {integrity: sha512-yoxstj7Rg9dlNn9UQxzk4fcNivwv4nUYz7fYXBaKxvw/lnmPuOm/ikoELygbYq68Bls3D/D+NBPHiLwZdZZ4HA==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0-0
+
+  '@babel/plugin-transform-unicode-sets-regex@7.25.9':
+    resolution: {integrity: sha512-8BYqO3GeVNHtx69fdPshN3fnzUNLrWdHhk/icSwigksJGczKSizZ+Z6SBCxTs723Fr5VSNorTIK7a+R2tISvwQ==}
+    engines: {node: '>=6.9.0'}
+    peerDependencies:
+      '@babel/core': ^7.0.0
+
+  '@babel/preset-env@7.26.7':
+    resolution: {integrity: sha512-Ycg2tnXwixaXOVb29rana8HNPgLVBof8qqtNQ9LE22IoyZboQbGSxI6ZySMdW3K5nAe6gu35IaJefUJflhUFTQ==}
     engines: {node: '>=6.9.0'}
     peerDependencies:
       '@babel/core': ^7.0.0-0
@@ -1440,10 +1392,6 @@ packages:
     peerDependencies:
       '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0
 
-  '@babel/runtime@7.25.7':
-    resolution: {integrity: sha512-FjoyLe754PMiYsFaN5C94ttGiOmBNYTf6pLr4xXHAT5uctHb092PBszndLDR5XA/jghQvn4n7JMHl7dmTgbm9w==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/runtime@7.26.7':
     resolution: {integrity: sha512-AOPI3D+a8dXnja+iwsUqGRjr1BbZIe771sXdapOtYI531gSqpi92vXivKcq2asu/DFpdl1ceFAKZyRzK2PCVcQ==}
     engines: {node: '>=6.9.0'}
@@ -1460,14 +1408,6 @@ packages:
     resolution: {integrity: sha512-YuGopBq3ke25BVSiS6fgF49Ul9gH1x70Bcr6bqRLjWCkcX8Hre1/5+z+IiWOIerRMSSEfGZVB9z9kyq7wVs9YA==}
     engines: {node: '>=6.9.0'}
 
-  '@babel/types@7.21.5':
-    resolution: {integrity: sha512-m4AfNvVF2mVC/F7fDEdH2El3HzUg9It/XsCxZiOTTA3m3qYfcSVSbTfM6Q9xG+hYDniZssYhlXKKUMD5m8tF4Q==}
-    engines: {node: '>=6.9.0'}
-
-  '@babel/types@7.25.8':
-    resolution: {integrity: sha512-JWtuCu8VQsMladxVz/P4HzHUGCAwpuqacmowgXFs5XjxIgKuNjnLokQzuVjlTvIzODaDmpjT3oxcC48vyk9EWg==}
-    engines: {node: '>=6.9.0'}
-
   '@babel/types@7.26.7':
     resolution: {integrity: sha512-t8kDRGrKXyp6+tjUh7hw2RLyclsW4TRoRvRHtSyAX9Bb5ldlFh+90YAYY6awRXrlB4G5G2izNeGySpATlFzmOg==}
     engines: {node: '>=6.9.0'}
@@ -1484,8 +1424,8 @@ packages:
   '@codemirror/language@6.10.8':
     resolution: {integrity: sha512-wcP8XPPhDH2vTqf181U8MbZnW+tDyPYy0UzVOa+oHORjyT+mhhom9vBd7dApJwoDz9Nb/a8kHjJIsuA/t8vNFw==}
 
-  '@codemirror/lint@6.4.2':
-    resolution: {integrity: sha512-wzRkluWb1ptPKdzlsrbwwjYCPLgzU6N88YBAmlZi8WFyuiEduSd05MnJYNogzyc8rPK7pj6m95ptUApc8sHKVA==}
+  '@codemirror/lint@6.8.4':
+    resolution: {integrity: sha512-u4q7PnZlJUojeRe8FJa/njJcMctISGgPQ4PnWsd9268R4ZTtU+tfFYmwkBvgcrK2+QQ8tYFVALVb5fVJykKc5A==}
 
   '@codemirror/search@6.5.8':
     resolution: {integrity: sha512-PoWtZvo7c1XFeZWmmyaOp2G0XVbOnm+fJzvghqGAktBW3cufwJUWvSCcNG0ppXiBEM05mZu6RhMtXPv2hpllig==}
@@ -1523,14 +1463,14 @@ packages:
       search-insights:
         optional: true
 
+  '@emnapi/core@1.3.1':
+    resolution: {integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==}
+
   '@emnapi/runtime@1.3.1':
     resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==}
 
-  '@esbuild/aix-ppc64@0.21.5':
-    resolution: {integrity: sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==}
-    engines: {node: '>=12'}
-    cpu: [ppc64]
-    os: [aix]
+  '@emnapi/wasi-threads@1.0.1':
+    resolution: {integrity: sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==}
 
   '@esbuild/aix-ppc64@0.24.2':
     resolution: {integrity: sha512-thpVCb/rhxE/BnMLQ7GReQLLN8q9qbHmI55F4489/ByVg2aQaQ6kbcLb6FHkocZzQhxc4gx0sCk0tJkKBFzDhA==}
@@ -1538,192 +1478,96 @@ packages:
     cpu: [ppc64]
     os: [aix]
 
-  '@esbuild/android-arm64@0.21.5':
-    resolution: {integrity: sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [android]
-
   '@esbuild/android-arm64@0.24.2':
     resolution: {integrity: sha512-cNLgeqCqV8WxfcTIOeL4OAtSmL8JjcN6m09XIgro1Wi7cF4t/THaWEa7eL5CMoMBdjoHOTh/vwTO/o2TRXIyzg==}
     engines: {node: '>=18'}
     cpu: [arm64]
     os: [android]
 
-  '@esbuild/android-arm@0.21.5':
-    resolution: {integrity: sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==}
-    engines: {node: '>=12'}
-    cpu: [arm]
-    os: [android]
-
   '@esbuild/android-arm@0.24.2':
     resolution: {integrity: sha512-tmwl4hJkCfNHwFB3nBa8z1Uy3ypZpxqxfTQOcHX+xRByyYgunVbZ9MzUUfb0RxaHIMnbHagwAxuTL+tnNM+1/Q==}
     engines: {node: '>=18'}
     cpu: [arm]
     os: [android]
 
-  '@esbuild/android-x64@0.21.5':
-    resolution: {integrity: sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [android]
-
   '@esbuild/android-x64@0.24.2':
     resolution: {integrity: sha512-B6Q0YQDqMx9D7rvIcsXfmJfvUYLoP722bgfBlO5cGvNVb5V/+Y7nhBE3mHV9OpxBf4eAS2S68KZztiPaWq4XYw==}
     engines: {node: '>=18'}
     cpu: [x64]
     os: [android]
 
-  '@esbuild/darwin-arm64@0.21.5':
-    resolution: {integrity: sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [darwin]
-
   '@esbuild/darwin-arm64@0.24.2':
     resolution: {integrity: sha512-kj3AnYWc+CekmZnS5IPu9D+HWtUI49hbnyqk0FLEJDbzCIQt7hg7ucF1SQAilhtYpIujfaHr6O0UHlzzSPdOeA==}
     engines: {node: '>=18'}
     cpu: [arm64]
     os: [darwin]
 
-  '@esbuild/darwin-x64@0.21.5':
-    resolution: {integrity: sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [darwin]
-
   '@esbuild/darwin-x64@0.24.2':
     resolution: {integrity: sha512-WeSrmwwHaPkNR5H3yYfowhZcbriGqooyu3zI/3GGpF8AyUdsrrP0X6KumITGA9WOyiJavnGZUwPGvxvwfWPHIA==}
     engines: {node: '>=18'}
     cpu: [x64]
     os: [darwin]
 
-  '@esbuild/freebsd-arm64@0.21.5':
-    resolution: {integrity: sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [freebsd]
-
   '@esbuild/freebsd-arm64@0.24.2':
     resolution: {integrity: sha512-UN8HXjtJ0k/Mj6a9+5u6+2eZ2ERD7Edt1Q9IZiB5UZAIdPnVKDoG7mdTVGhHJIeEml60JteamR3qhsr1r8gXvg==}
     engines: {node: '>=18'}
     cpu: [arm64]
     os: [freebsd]
 
-  '@esbuild/freebsd-x64@0.21.5':
-    resolution: {integrity: sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [freebsd]
-
   '@esbuild/freebsd-x64@0.24.2':
     resolution: {integrity: sha512-TvW7wE/89PYW+IevEJXZ5sF6gJRDY/14hyIGFXdIucxCsbRmLUcjseQu1SyTko+2idmCw94TgyaEZi9HUSOe3Q==}
     engines: {node: '>=18'}
     cpu: [x64]
     os: [freebsd]
 
-  '@esbuild/linux-arm64@0.21.5':
-    resolution: {integrity: sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [linux]
-
   '@esbuild/linux-arm64@0.24.2':
     resolution: {integrity: sha512-7HnAD6074BW43YvvUmE/35Id9/NB7BeX5EoNkK9obndmZBUk8xmJJeU7DwmUeN7tkysslb2eSl6CTrYz6oEMQg==}
     engines: {node: '>=18'}
     cpu: [arm64]
     os: [linux]
 
-  '@esbuild/linux-arm@0.21.5':
-    resolution: {integrity: sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==}
-    engines: {node: '>=12'}
-    cpu: [arm]
-    os: [linux]
-
   '@esbuild/linux-arm@0.24.2':
     resolution: {integrity: sha512-n0WRM/gWIdU29J57hJyUdIsk0WarGd6To0s+Y+LwvlC55wt+GT/OgkwoXCXvIue1i1sSNWblHEig00GBWiJgfA==}
     engines: {node: '>=18'}
     cpu: [arm]
     os: [linux]
 
-  '@esbuild/linux-ia32@0.21.5':
-    resolution: {integrity: sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==}
-    engines: {node: '>=12'}
-    cpu: [ia32]
-    os: [linux]
-
   '@esbuild/linux-ia32@0.24.2':
     resolution: {integrity: sha512-sfv0tGPQhcZOgTKO3oBE9xpHuUqguHvSo4jl+wjnKwFpapx+vUDcawbwPNuBIAYdRAvIDBfZVvXprIj3HA+Ugw==}
     engines: {node: '>=18'}
     cpu: [ia32]
     os: [linux]
 
-  '@esbuild/linux-loong64@0.21.5':
-    resolution: {integrity: sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==}
-    engines: {node: '>=12'}
-    cpu: [loong64]
-    os: [linux]
-
   '@esbuild/linux-loong64@0.24.2':
     resolution: {integrity: sha512-CN9AZr8kEndGooS35ntToZLTQLHEjtVB5n7dl8ZcTZMonJ7CCfStrYhrzF97eAecqVbVJ7APOEe18RPI4KLhwQ==}
     engines: {node: '>=18'}
     cpu: [loong64]
     os: [linux]
 
-  '@esbuild/linux-mips64el@0.21.5':
-    resolution: {integrity: sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==}
-    engines: {node: '>=12'}
-    cpu: [mips64el]
-    os: [linux]
-
   '@esbuild/linux-mips64el@0.24.2':
     resolution: {integrity: sha512-iMkk7qr/wl3exJATwkISxI7kTcmHKE+BlymIAbHO8xanq/TjHaaVThFF6ipWzPHryoFsesNQJPE/3wFJw4+huw==}
     engines: {node: '>=18'}
     cpu: [mips64el]
     os: [linux]
 
-  '@esbuild/linux-ppc64@0.21.5':
-    resolution: {integrity: sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==}
-    engines: {node: '>=12'}
-    cpu: [ppc64]
-    os: [linux]
-
   '@esbuild/linux-ppc64@0.24.2':
     resolution: {integrity: sha512-shsVrgCZ57Vr2L8mm39kO5PPIb+843FStGt7sGGoqiiWYconSxwTiuswC1VJZLCjNiMLAMh34jg4VSEQb+iEbw==}
     engines: {node: '>=18'}
     cpu: [ppc64]
     os: [linux]
 
-  '@esbuild/linux-riscv64@0.21.5':
-    resolution: {integrity: sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==}
-    engines: {node: '>=12'}
-    cpu: [riscv64]
-    os: [linux]
-
   '@esbuild/linux-riscv64@0.24.2':
     resolution: {integrity: sha512-4eSFWnU9Hhd68fW16GD0TINewo1L6dRrB+oLNNbYyMUAeOD2yCK5KXGK1GH4qD/kT+bTEXjsyTCiJGHPZ3eM9Q==}
     engines: {node: '>=18'}
     cpu: [riscv64]
     os: [linux]
 
-  '@esbuild/linux-s390x@0.21.5':
-    resolution: {integrity: sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==}
-    engines: {node: '>=12'}
-    cpu: [s390x]
-    os: [linux]
-
   '@esbuild/linux-s390x@0.24.2':
     resolution: {integrity: sha512-S0Bh0A53b0YHL2XEXC20bHLuGMOhFDO6GN4b3YjRLK//Ep3ql3erpNcPlEFed93hsQAjAQDNsvcK+hV90FubSw==}
     engines: {node: '>=18'}
     cpu: [s390x]
     os: [linux]
 
-  '@esbuild/linux-x64@0.21.5':
-    resolution: {integrity: sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [linux]
-
   '@esbuild/linux-x64@0.24.2':
     resolution: {integrity: sha512-8Qi4nQcCTbLnK9WoMjdC9NiTG6/E38RNICU6sUNqK0QFxCYgoARqVqxdFmWkdonVsvGqWhmm7MO0jyTqLqwj0Q==}
     engines: {node: '>=18'}
@@ -1736,12 +1580,6 @@ packages:
     cpu: [arm64]
     os: [netbsd]
 
-  '@esbuild/netbsd-x64@0.21.5':
-    resolution: {integrity: sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [netbsd]
-
   '@esbuild/netbsd-x64@0.24.2':
     resolution: {integrity: sha512-VefFaQUc4FMmJuAxmIHgUmfNiLXY438XrL4GDNV1Y1H/RW3qow68xTwjZKfj/+Plp9NANmzbH5R40Meudu8mmw==}
     engines: {node: '>=18'}
@@ -1754,68 +1592,38 @@ packages:
     cpu: [arm64]
     os: [openbsd]
 
-  '@esbuild/openbsd-x64@0.21.5':
-    resolution: {integrity: sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [openbsd]
-
   '@esbuild/openbsd-x64@0.24.2':
     resolution: {integrity: sha512-+iDS6zpNM6EnJyWv0bMGLWSWeXGN/HTaF/LXHXHwejGsVi+ooqDfMCCTerNFxEkM3wYVcExkeGXNqshc9iMaOA==}
     engines: {node: '>=18'}
     cpu: [x64]
     os: [openbsd]
 
-  '@esbuild/sunos-x64@0.21.5':
-    resolution: {integrity: sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [sunos]
-
   '@esbuild/sunos-x64@0.24.2':
     resolution: {integrity: sha512-hTdsW27jcktEvpwNHJU4ZwWFGkz2zRJUz8pvddmXPtXDzVKTTINmlmga3ZzwcuMpUvLw7JkLy9QLKyGpD2Yxig==}
     engines: {node: '>=18'}
     cpu: [x64]
     os: [sunos]
 
-  '@esbuild/win32-arm64@0.21.5':
-    resolution: {integrity: sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==}
-    engines: {node: '>=12'}
-    cpu: [arm64]
-    os: [win32]
-
   '@esbuild/win32-arm64@0.24.2':
     resolution: {integrity: sha512-LihEQ2BBKVFLOC9ZItT9iFprsE9tqjDjnbulhHoFxYQtQfai7qfluVODIYxt1PgdoyQkz23+01rzwNwYfutxUQ==}
     engines: {node: '>=18'}
     cpu: [arm64]
     os: [win32]
 
-  '@esbuild/win32-ia32@0.21.5':
-    resolution: {integrity: sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==}
-    engines: {node: '>=12'}
-    cpu: [ia32]
-    os: [win32]
-
   '@esbuild/win32-ia32@0.24.2':
     resolution: {integrity: sha512-q+iGUwfs8tncmFC9pcnD5IvRHAzmbwQ3GPS5/ceCyHdjXubwQWI12MKWSNSMYLJMq23/IUCvJMS76PDqXe1fxA==}
     engines: {node: '>=18'}
     cpu: [ia32]
     os: [win32]
 
-  '@esbuild/win32-x64@0.21.5':
-    resolution: {integrity: sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==}
-    engines: {node: '>=12'}
-    cpu: [x64]
-    os: [win32]
-
   '@esbuild/win32-x64@0.24.2':
     resolution: {integrity: sha512-7VTgWzgMGvup6aSqDPLiW5zHaxYJGTO4OokMjIlrCtf+VpEL+cXKtCvg723iguPYI5oaUNdS+/V7OU2gvXVWEg==}
     engines: {node: '>=18'}
     cpu: [x64]
     os: [win32]
 
-  '@eslint-community/eslint-utils@4.4.0':
-    resolution: {integrity: sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==}
+  '@eslint-community/eslint-utils@4.4.1':
+    resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==}
     engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
     peerDependencies:
       eslint: ^6.0.0 || ^7.0.0 || >=8.0.0
@@ -2030,26 +1838,14 @@ packages:
     resolution: {integrity: sha512-mo5j5X+jIZmJQveBKeS/clAueipV7KgiX1vMgCxam1RNYiqE1w62n0/tJJnHtjW8ZHcQco5gY85jA3mi0L+nSA==}
     engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0}
 
-  '@jridgewell/gen-mapping@0.3.2':
-    resolution: {integrity: sha512-mh65xKQAzI6iBcFzwv28KVWSmCkdRBWoOh+bYQGW3+6OZvbbN3TqMGo5hqYxQniRcH9F2VZIoJCm4pa3BPDK/A==}
-    engines: {node: '>=6.0.0'}
-
-  '@jridgewell/gen-mapping@0.3.5':
-    resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==}
-    engines: {node: '>=6.0.0'}
-
-  '@jridgewell/resolve-uri@3.1.0':
-    resolution: {integrity: sha512-F2msla3tad+Mfht5cJq7LSXcdudKTWCVYUgw6pLFOOHSTtZlj6SWNYAp+AhuqLmWdBO2X5hPrLcu8cVP8fy28w==}
+  '@jridgewell/gen-mapping@0.3.8':
+    resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==}
     engines: {node: '>=6.0.0'}
 
   '@jridgewell/resolve-uri@3.1.2':
     resolution: {integrity: sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==}
     engines: {node: '>=6.0.0'}
 
-  '@jridgewell/set-array@1.1.2':
-    resolution: {integrity: sha512-xnkseuNADM0gt2bs+BvhO0p78Mk762YnZdsuzFV018NoG1Sj1SCQvpSqa7XUaTam5vAGasABV9qXASMKnFMwMw==}
-    engines: {node: '>=6.0.0'}
-
   '@jridgewell/set-array@1.2.1':
     resolution: {integrity: sha512-R8gLRTZeyp03ymzP/6Lil/28tGeGEzhx1q2k703KGWRAI1VdvPIXdG70VJc2pAMw3NA6JKL5hhFu1sJX0Mnn/A==}
     engines: {node: '>=6.0.0'}
@@ -2057,37 +1853,31 @@ packages:
   '@jridgewell/source-map@0.3.6':
     resolution: {integrity: sha512-1ZJTZebgqllO79ue2bm3rIGud/bOe0pP5BjSRCRxxYkEZS8STV7zN84UBbiYu7jy+eCKSnVIUgoWWE/tt+shMQ==}
 
-  '@jridgewell/sourcemap-codec@1.4.14':
-    resolution: {integrity: sha512-XPSJHWmi394fuUuzDnGz1wiKqWfo1yXecHQMRf2l6hztTO+nPru658AyDngaBe7isIxEkRsPR3FZh+s7iVa4Uw==}
-
   '@jridgewell/sourcemap-codec@1.5.0':
     resolution: {integrity: sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==}
 
-  '@jridgewell/trace-mapping@0.3.17':
-    resolution: {integrity: sha512-MCNzAp77qzKca9+W/+I0+sEpaUnZoeasnghNeVc41VZCEKaCH73Vq3BZZ/SzWIgrqE4H4ceI+p+b6C0mHf9T4g==}
-
   '@jridgewell/trace-mapping@0.3.25':
     resolution: {integrity: sha512-vNk6aEwybGtawWmy/PzwnGDOjCkLWSD2wqvjGGAgOAwCGWySYXfYoxt00IJkTF+8Lb57DwOb3Aa0o9CApepiYQ==}
 
-  '@jsdoc/salty@0.2.3':
-    resolution: {integrity: sha512-bbtCxCkxcnWhi50I+4Lj6mdz9w3pOXOgEQrID8TCZ/DF51fW7M9GCQW2y45SpBDdHd1Eirm1X/Cf6CkAAe8HPg==}
+  '@jsdoc/salty@0.2.9':
+    resolution: {integrity: sha512-yYxMVH7Dqw6nO0d5NIV8OQWnitU8k6vXH8NtgqAfIa/IUqRMxRv/NUJJ08VEKbAakwxlgBl5PJdrU0dMPStsnw==}
     engines: {node: '>=v12.0.0'}
 
   '@lerna/create@8.1.9':
     resolution: {integrity: sha512-DPnl5lPX4v49eVxEbJnAizrpMdMTBz1qykZrAbBul9rfgk531v8oAt+Pm6O/rpAleRombNM7FJb5rYGzBJatOQ==}
     engines: {node: '>=18.0.0'}
 
-  '@lezer/common@1.2.0':
-    resolution: {integrity: sha512-Wmvlm4q6tRpwiy20TnB3yyLTZim38Tkc50dPY8biQRwqE+ati/wD84rm3N15hikvdT4uSg9phs9ubjvcLmkpKg==}
+  '@lezer/common@1.2.3':
+    resolution: {integrity: sha512-w7ojc8ejBqr2REPsWxJjrMFsA/ysDCFICn8zEOR9mrqzOu2amhITYuLD8ag6XZf0CFXDrhKqw7+tW8cX66NaDA==}
 
   '@lezer/highlight@1.2.1':
     resolution: {integrity: sha512-Z5duk4RN/3zuVO7Jq0pGLJ3qynpxUVsh7IbUbGj88+uV2ApSAn6kWg2au3iJb+0Zi7kKtqffIESgNcRXWZWmSA==}
 
-  '@lezer/javascript@1.4.1':
-    resolution: {integrity: sha512-Hqx36DJeYhKtdpc7wBYPR0XF56ZzIp0IkMO/zNNj80xcaFOV4Oj/P7TQc/8k2TxNhzl7tV5tXS8ZOCPbT4L3nA==}
+  '@lezer/javascript@1.4.21':
+    resolution: {integrity: sha512-lL+1fcuxWYPURMM/oFZLEDm0XuLN128QPV+VuGtKpeaOGdcl9F2LYC3nh1S9LkPqx9M0mndZFdXCipNAZpzIkQ==}
 
-  '@lezer/lr@1.3.1':
-    resolution: {integrity: sha512-+GymJB/+3gThkk2zHwseaJTI5oa4AuOuj1I2LCslAVq1dFZLSX8SAe4ZlJq1TjezteDXtF/+d4qeWz9JvnrG9Q==}
+  '@lezer/lr@1.4.2':
+    resolution: {integrity: sha512-pu0K1jCIdnQ12aWNaAVU5bzi7Bd1w54J3ECgANPmYLtQKP0HBj2cE/5coBD66MT10xbtIuUr7tg0Shbsvk0mDA==}
 
   '@marijn/find-cluster-break@1.0.2':
     resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==}
@@ -2108,6 +1898,9 @@ packages:
       nanostores: ^0.9.0 || ^0.10.0 || ^0.11.0
       react: '>=18.0.0'
 
+  '@napi-rs/wasm-runtime@0.2.4':
+    resolution: {integrity: sha512-9zESzOO5aDByvhIAsOy9TbpZ0Ur2AJbUI7UT73kcUTS2mxAMHOBaa1st/jAymNoCtvrit99kkzT1FZuXVcgfIQ==}
+
   '@nodelib/fs.scandir@2.1.5':
     resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==}
     engines: {node: '>= 8'}
@@ -2178,92 +1971,85 @@ packages:
     resolution: {integrity: sha512-y7efHHwghQfk28G2z3tlZ67pLG0XdfYbcVG26r7YIXALRsrVQcTq4/tdenSmdOrEsNahIYA/eh8aEVROWGFUDg==}
     engines: {node: ^16.14.0 || >=18.0.0}
 
-  '@nrwl/devkit@17.2.8':
-    resolution: {integrity: sha512-l2dFy5LkWqSA45s6pee6CoqJeluH+sjRdVnAAQfjLHRNSx6mFAKblyzq5h1f4P0EUCVVVqLs+kVqmNx5zxYqvw==}
-
-  '@nrwl/tao@17.2.8':
-    resolution: {integrity: sha512-Qpk5YKeJ+LppPL/wtoDyNGbJs2MsTi6qyX/RdRrEc8lc4bk6Cw3Oul1qTXCI6jT0KzTz+dZtd0zYD/G7okkzvg==}
-    hasBin: true
-
-  '@nx/devkit@17.2.8':
-    resolution: {integrity: sha512-6LtiQihtZwqz4hSrtT5cCG5XMCWppG6/B8c1kNksg97JuomELlWyUyVF+sxmeERkcLYFaKPTZytP0L3dmCFXaw==}
+  '@nx/devkit@20.3.3':
+    resolution: {integrity: sha512-YwVQQpyeMpQeXzu4/Yv6Ng3ZZxJ45RGbGqbb+VWQfDKkZIHcyR7iLLQDaLpyl34HkrLYdZez9BB8wnyn3IaxqA==}
     peerDependencies:
-      nx: '>= 16 <= 18'
+      nx: '>= 19 <= 21'
 
-  '@nx/nx-darwin-arm64@17.2.8':
-    resolution: {integrity: sha512-dMb0uxug4hM7tusISAU1TfkDK3ixYmzc1zhHSZwpR7yKJIyKLtUpBTbryt8nyso37AS1yH+dmfh2Fj2WxfBHTg==}
+  '@nx/nx-darwin-arm64@20.3.3':
+    resolution: {integrity: sha512-4C7ShMrqp1vbH1ZgvSlkt0f35hJcqKtRcf8n/tCck46rnMkj4egXi3K1dE6uQcOorwiD1ttAr0DHcI1TTqcNXw==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [darwin]
 
-  '@nx/nx-darwin-x64@17.2.8':
-    resolution: {integrity: sha512-0cXzp1tGr7/6lJel102QiLA4NkaLCkQJj6VzwbwuvmuCDxPbpmbz7HC1tUteijKBtOcdXit1/MEoEU007To8Bw==}
+  '@nx/nx-darwin-x64@20.3.3':
+    resolution: {integrity: sha512-OUtJ7gA09pJC+a+RcZf1bGbMM4T7a/IcPb97z1xOoxr5Wm2s8BGBQUW2CKJ5gCp5iI1pGo44F12u0G9gbYClow==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [darwin]
 
-  '@nx/nx-freebsd-x64@17.2.8':
-    resolution: {integrity: sha512-YFMgx5Qpp2btCgvaniDGdu7Ctj56bfFvbbaHQWmOeBPK1krNDp2mqp8HK6ZKOfEuDJGOYAp7HDtCLvdZKvJxzA==}
+  '@nx/nx-freebsd-x64@20.3.3':
+    resolution: {integrity: sha512-q4SABgKYWPGOcdfRZne6n8HF4CzltRL5nJ3q093jQAUO93yPXtWzhQBaKZIZr6aPoqq0/NuH6xY4gNo4w9F8Bg==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [freebsd]
 
-  '@nx/nx-linux-arm-gnueabihf@17.2.8':
-    resolution: {integrity: sha512-iN2my6MrhLRkVDtdivQHugK8YmR7URo1wU9UDuHQ55z3tEcny7LV3W9NSsY9UYPK/FrxdDfevj0r2hgSSdhnzA==}
+  '@nx/nx-linux-arm-gnueabihf@20.3.3':
+    resolution: {integrity: sha512-e07PJcVsBT/Aelo/Vj6hLplDZamGCZ3zOJpW3XVBhdG4DC4sn+jodsdrIASoEpmF70VB89lzQsm9GrAgQPaWOA==}
     engines: {node: '>= 10'}
     cpu: [arm]
     os: [linux]
 
-  '@nx/nx-linux-arm64-gnu@17.2.8':
-    resolution: {integrity: sha512-Iy8BjoW6mOKrSMiTGujUcNdv+xSM1DALTH6y3iLvNDkGbjGK1Re6QNnJAzqcXyDpv32Q4Fc57PmuexyysZxIGg==}
+  '@nx/nx-linux-arm64-gnu@20.3.3':
+    resolution: {integrity: sha512-1Z9chlN0/hWzliMer7TvdLT8cb6BKpGjZ15a+rQuUbO/CyLhY21Ct+lXtnaBERnNPYJpNOJlrbBDuF/9wpZ4CQ==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [linux]
 
-  '@nx/nx-linux-arm64-musl@17.2.8':
-    resolution: {integrity: sha512-9wkAxWzknjpzdofL1xjtU6qPFF1PHlvKCZI3hgEYJDo4mQiatGI+7Ttko+lx/ZMP6v4+Umjtgq7+qWrApeKamQ==}
+  '@nx/nx-linux-arm64-musl@20.3.3':
+    resolution: {integrity: sha512-RrLgujPU5NfDrsDRa7Y2isxGb8XkoQeJkTMUl1xmBK2Qnf4jAUn0PH0ULWrRMNgChi4nYUTn/Sf+2m6Uyoqcfw==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [linux]
 
-  '@nx/nx-linux-x64-gnu@17.2.8':
-    resolution: {integrity: sha512-sjG1bwGsjLxToasZ3lShildFsF0eyeGu+pOQZIp9+gjFbeIkd19cTlCnHrOV9hoF364GuKSXQyUlwtFYFR4VTQ==}
+  '@nx/nx-linux-x64-gnu@20.3.3':
+    resolution: {integrity: sha512-/WmCnPxv1eR8tyYiFp4XoMbcXrJ8a/OIw1rpZZ5ceMKgH8lPaF2/KFf04JZZygrCKletEdqqIojBXz4AHoaueQ==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [linux]
 
-  '@nx/nx-linux-x64-musl@17.2.8':
-    resolution: {integrity: sha512-QiakXZ1xBCIptmkGEouLHQbcM4klQkcr+kEaz2PlNwy/sW3gH1b/1c0Ed5J1AN9xgQxWspriAONpScYBRgxdhA==}
+  '@nx/nx-linux-x64-musl@20.3.3':
+    resolution: {integrity: sha512-y4BJsR0fgJrXY3P7GkWfUZAeQEHMTXvaRHvzJfBSBPmnVcVZDYNTfEQYnslp8m8ahKdlJwtflxzykJ4Bwf55fw==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [linux]
 
-  '@nx/nx-win32-arm64-msvc@17.2.8':
-    resolution: {integrity: sha512-XBWUY/F/GU3vKN9CAxeI15gM4kr3GOBqnzFZzoZC4qJt2hKSSUEWsMgeZtsMgeqEClbi4ZyCCkY7YJgU32WUGA==}
+  '@nx/nx-win32-arm64-msvc@20.3.3':
+    resolution: {integrity: sha512-BHqZitBaGT9ybv386B5QKxP5N66+xpTiYlKClzQ44o6Ca8QxnkugI64exBdcQyj+DRiL6HJhN14kaPJ1KrsKRA==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [win32]
 
-  '@nx/nx-win32-x64-msvc@17.2.8':
-    resolution: {integrity: sha512-HTqDv+JThlLzbcEm/3f+LbS5/wYQWzb5YDXbP1wi7nlCTihNZOLNqGOkEmwlrR5tAdNHPRpHSmkYg4305W0CtA==}
+  '@nx/nx-win32-x64-msvc@20.3.3':
+    resolution: {integrity: sha512-6HcbAKghEypt4aMAoDjPn2sa6FG0MyiDabpV/cVLKokK09ngyy6qQDa5vSCUSDwI542XBxqtcv0AcZi7Ez+XUQ==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [win32]
 
-  '@octokit/auth-token@3.0.3':
-    resolution: {integrity: sha512-/aFM2M4HVDBT/jjDBa84sJniv1t9Gm/rLkalaz9htOm+L+8JMj1k9w0CkUdcxNyNxZPlTxKPVko+m1VlM58ZVA==}
+  '@octokit/auth-token@3.0.4':
+    resolution: {integrity: sha512-TWFX7cZF2LXoCvdmJWY7XVPi74aSY0+FfBZNSXEXFkMpjcqsQwDSYVv5FhRFaI0V1ECnwbz4j59T/G+rXNWaIQ==}
     engines: {node: '>= 14'}
 
   '@octokit/core@4.2.4':
     resolution: {integrity: sha512-rYKilwgzQ7/imScn3M9/pFfUf4I1AZEH3KhyJmtPdE2zfaXAn2mFfUy4FbKewzc2We5y/LlKLj36fWJLKC2SIQ==}
     engines: {node: '>= 14'}
 
-  '@octokit/endpoint@7.0.5':
-    resolution: {integrity: sha512-LG4o4HMY1Xoaec87IqQ41TQ+glvIeTKqfjkCEmt5AIwDZJwQeVZFIEYXrYY6yLwK+pAScb9Gj4q+Nz2qSw1roA==}
+  '@octokit/endpoint@7.0.6':
+    resolution: {integrity: sha512-5L4fseVRUsDFGR00tMWD/Trdeeihn999rTMGRMC1G/Ldi1uWlWJzI98H4Iak5DB/RVvQuyMYKqSK/R6mbSOQyg==}
     engines: {node: '>= 14'}
 
-  '@octokit/graphql@5.0.5':
-    resolution: {integrity: sha512-Qwfvh3xdqKtIznjX9lz2D458r7dJPP8l6r4GQkIdWQouZwHQK0mVT88uwiU2bdTU2OtT1uOlKpRciUWldpG0yQ==}
+  '@octokit/graphql@5.0.6':
+    resolution: {integrity: sha512-Fxyxdy/JH0MnIB5h+UQ3yCoh1FG4kWXfFKkpWqjZHw/p+Kc8Y44Hu/kCgNBT6nU1shNumEchmW/sUO1JuQnPcw==}
     engines: {node: '>= 14'}
 
   '@octokit/openapi-types@18.1.1':
@@ -2293,8 +2079,8 @@ packages:
     resolution: {integrity: sha512-crqw3V5Iy2uOU5Np+8M/YexTlT8zxCfI+qu+LxUB7SZpje4Qmx3mub5DfEKSO8Ylyk0aogi6TYdf6kxzh2BguQ==}
     engines: {node: '>= 14'}
 
-  '@octokit/request@6.2.3':
-    resolution: {integrity: sha512-TNAodj5yNzrrZ/VxP+H5HiYaZep0H3GU0O7PaF+fhDrt8FPrnkei9Aal/txsN/1P7V3CPiThG0tIvpPDYUsyAA==}
+  '@octokit/request@6.2.8':
+    resolution: {integrity: sha512-ow4+pkVQ+6XVVsekSYBzJC0VTVvh/FCTUUgTsboGq+DTeWdyIFV8WSCdo0RIxk6wSkBTHqIK1mYuY7nOBXOchw==}
     engines: {node: '>= 14'}
 
   '@octokit/rest@19.0.11':
@@ -2404,6 +2190,15 @@ packages:
     peerDependencies:
       rollup: ^1.20.0||^2.0.0
 
+  '@rollup/plugin-node-resolve@15.3.1':
+    resolution: {integrity: sha512-tgg6b91pAybXHJQMAAwW9VuWBO6Thi+q7BCNARLwSqlmsHz0XYURtGvh/AuwSADXSI4h/2uHbs7s4FzlZDGSGA==}
+    engines: {node: '>=14.0.0'}
+    peerDependencies:
+      rollup: ^2.78.0||^3.0.0||^4.0.0
+    peerDependenciesMeta:
+      rollup:
+        optional: true
+
   '@rollup/plugin-replace@2.4.2':
     resolution: {integrity: sha512-IGcu+cydlUMZ5En85jxHH4qj2hta/11BHq95iHEyb2sbgiN0eCdzvUcHw5gt9pBL5lTi4JDYJ1acCoMGpTvEZg==}
     peerDependencies:
@@ -2424,15 +2219,6 @@ packages:
     peerDependencies:
       rollup: ^1.20.0||^2.0.0
 
-  '@rollup/pluginutils@5.1.2':
-    resolution: {integrity: sha512-/FIdS3PyZ39bjZlwqFnWqCOVnW7o963LtKMwQOD0NhQqw22gSr2YY1afu3FxRip4ZCZNsD5jq6Aaz6QV3D/Njw==}
-    engines: {node: '>=14.0.0'}
-    peerDependencies:
-      rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0
-    peerDependenciesMeta:
-      rollup:
-        optional: true
-
   '@rollup/pluginutils@5.1.4':
     resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==}
     engines: {node: '>=14.0.0'}
@@ -2442,106 +2228,121 @@ packages:
       rollup:
         optional: true
 
-  '@rollup/rollup-android-arm-eabi@4.24.0':
-    resolution: {integrity: sha512-Q6HJd7Y6xdB48x8ZNVDOqsbh2uByBhgK8PiQgPhwkIw/HC/YX5Ghq2mQY5sRMZWHb3VsFkWooUVOZHKr7DmDIA==}
+  '@rollup/rollup-android-arm-eabi@4.32.0':
+    resolution: {integrity: sha512-G2fUQQANtBPsNwiVFg4zKiPQyjVKZCUdQUol53R8E71J7AsheRMV/Yv/nB8giOcOVqP7//eB5xPqieBYZe9bGg==}
     cpu: [arm]
     os: [android]
 
-  '@rollup/rollup-android-arm64@4.24.0':
-    resolution: {integrity: sha512-ijLnS1qFId8xhKjT81uBHuuJp2lU4x2yxa4ctFPtG+MqEE6+C5f/+X/bStmxapgmwLwiL3ih122xv8kVARNAZA==}
+  '@rollup/rollup-android-arm64@4.32.0':
+    resolution: {integrity: sha512-qhFwQ+ljoymC+j5lXRv8DlaJYY/+8vyvYmVx074zrLsu5ZGWYsJNLjPPVJJjhZQpyAKUGPydOq9hRLLNvh1s3A==}
     cpu: [arm64]
     os: [android]
 
-  '@rollup/rollup-darwin-arm64@4.24.0':
-    resolution: {integrity: sha512-bIv+X9xeSs1XCk6DVvkO+S/z8/2AMt/2lMqdQbMrmVpgFvXlmde9mLcbQpztXm1tajC3raFDqegsH18HQPMYtA==}
+  '@rollup/rollup-darwin-arm64@4.32.0':
+    resolution: {integrity: sha512-44n/X3lAlWsEY6vF8CzgCx+LQaoqWGN7TzUfbJDiTIOjJm4+L2Yq+r5a8ytQRGyPqgJDs3Rgyo8eVL7n9iW6AQ==}
     cpu: [arm64]
     os: [darwin]
 
-  '@rollup/rollup-darwin-x64@4.24.0':
-    resolution: {integrity: sha512-X6/nOwoFN7RT2svEQWUsW/5C/fYMBe4fnLK9DQk4SX4mgVBiTA9h64kjUYPvGQ0F/9xwJ5U5UfTbl6BEjaQdBQ==}
+  '@rollup/rollup-darwin-x64@4.32.0':
+    resolution: {integrity: sha512-F9ct0+ZX5Np6+ZDztxiGCIvlCaW87HBdHcozUfsHnj1WCUTBUubAoanhHUfnUHZABlElyRikI0mgcw/qdEm2VQ==}
     cpu: [x64]
     os: [darwin]
 
-  '@rollup/rollup-linux-arm-gnueabihf@4.24.0':
-    resolution: {integrity: sha512-0KXvIJQMOImLCVCz9uvvdPgfyWo93aHHp8ui3FrtOP57svqrF/roSSR5pjqL2hcMp0ljeGlU4q9o/rQaAQ3AYA==}
+  '@rollup/rollup-freebsd-arm64@4.32.0':
+    resolution: {integrity: sha512-JpsGxLBB2EFXBsTLHfkZDsXSpSmKD3VxXCgBQtlPcuAqB8TlqtLcbeMhxXQkCDv1avgwNjF8uEIbq5p+Cee0PA==}
+    cpu: [arm64]
+    os: [freebsd]
+
+  '@rollup/rollup-freebsd-x64@4.32.0':
+    resolution: {integrity: sha512-wegiyBT6rawdpvnD9lmbOpx5Sph+yVZKHbhnSP9MqUEDX08G4UzMU+D87jrazGE7lRSyTRs6NEYHtzfkJ3FjjQ==}
+    cpu: [x64]
+    os: [freebsd]
+
+  '@rollup/rollup-linux-arm-gnueabihf@4.32.0':
+    resolution: {integrity: sha512-3pA7xecItbgOs1A5H58dDvOUEboG5UfpTq3WzAdF54acBbUM+olDJAPkgj1GRJ4ZqE12DZ9/hNS2QZk166v92A==}
     cpu: [arm]
     os: [linux]
 
-  '@rollup/rollup-linux-arm-musleabihf@4.24.0':
-    resolution: {integrity: sha512-it2BW6kKFVh8xk/BnHfakEeoLPv8STIISekpoF+nBgWM4d55CZKc7T4Dx1pEbTnYm/xEKMgy1MNtYuoA8RFIWw==}
+  '@rollup/rollup-linux-arm-musleabihf@4.32.0':
+    resolution: {integrity: sha512-Y7XUZEVISGyge51QbYyYAEHwpGgmRrAxQXO3siyYo2kmaj72USSG8LtlQQgAtlGfxYiOwu+2BdbPjzEpcOpRmQ==}
     cpu: [arm]
     os: [linux]
 
-  '@rollup/rollup-linux-arm64-gnu@4.24.0':
-    resolution: {integrity: sha512-i0xTLXjqap2eRfulFVlSnM5dEbTVque/3Pi4g2y7cxrs7+a9De42z4XxKLYJ7+OhE3IgxvfQM7vQc43bwTgPwA==}
+  '@rollup/rollup-linux-arm64-gnu@4.32.0':
+    resolution: {integrity: sha512-r7/OTF5MqeBrZo5omPXcTnjvv1GsrdH8a8RerARvDFiDwFpDVDnJyByYM/nX+mvks8XXsgPUxkwe/ltaX2VH7w==}
     cpu: [arm64]
     os: [linux]
 
-  '@rollup/rollup-linux-arm64-musl@4.24.0':
-    resolution: {integrity: sha512-9E6MKUJhDuDh604Qco5yP/3qn3y7SLXYuiC0Rpr89aMScS2UAmK1wHP2b7KAa1nSjWJc/f/Lc0Wl1L47qjiyQw==}
+  '@rollup/rollup-linux-arm64-musl@4.32.0':
+    resolution: {integrity: sha512-HJbifC9vex9NqnlodV2BHVFNuzKL5OnsV2dvTw6e1dpZKkNjPG6WUq+nhEYV6Hv2Bv++BXkwcyoGlXnPrjAKXw==}
     cpu: [arm64]
     os: [linux]
 
-  '@rollup/rollup-linux-powerpc64le-gnu@4.24.0':
-    resolution: {integrity: sha512-2XFFPJ2XMEiF5Zi2EBf4h73oR1V/lycirxZxHZNc93SqDN/IWhYYSYj8I9381ikUFXZrz2v7r2tOVk2NBwxrWw==}
+  '@rollup/rollup-linux-loongarch64-gnu@4.32.0':
+    resolution: {integrity: sha512-VAEzZTD63YglFlWwRj3taofmkV1V3xhebDXffon7msNz4b14xKsz7utO6F8F4cqt8K/ktTl9rm88yryvDpsfOw==}
+    cpu: [loong64]
+    os: [linux]
+
+  '@rollup/rollup-linux-powerpc64le-gnu@4.32.0':
+    resolution: {integrity: sha512-Sts5DST1jXAc9YH/iik1C9QRsLcCoOScf3dfbY5i4kH9RJpKxiTBXqm7qU5O6zTXBTEZry69bGszr3SMgYmMcQ==}
     cpu: [ppc64]
     os: [linux]
 
-  '@rollup/rollup-linux-riscv64-gnu@4.24.0':
-    resolution: {integrity: sha512-M3Dg4hlwuntUCdzU7KjYqbbd+BLq3JMAOhCKdBE3TcMGMZbKkDdJ5ivNdehOssMCIokNHFOsv7DO4rlEOfyKpg==}
+  '@rollup/rollup-linux-riscv64-gnu@4.32.0':
+    resolution: {integrity: sha512-qhlXeV9AqxIyY9/R1h1hBD6eMvQCO34ZmdYvry/K+/MBs6d1nRFLm6BOiITLVI+nFAAB9kUB6sdJRKyVHXnqZw==}
     cpu: [riscv64]
     os: [linux]
 
-  '@rollup/rollup-linux-s390x-gnu@4.24.0':
-    resolution: {integrity: sha512-mjBaoo4ocxJppTorZVKWFpy1bfFj9FeCMJqzlMQGjpNPY9JwQi7OuS1axzNIk0nMX6jSgy6ZURDZ2w0QW6D56g==}
+  '@rollup/rollup-linux-s390x-gnu@4.32.0':
+    resolution: {integrity: sha512-8ZGN7ExnV0qjXa155Rsfi6H8M4iBBwNLBM9lcVS+4NcSzOFaNqmt7djlox8pN1lWrRPMRRQ8NeDlozIGx3Omsw==}
     cpu: [s390x]
     os: [linux]
 
-  '@rollup/rollup-linux-x64-gnu@4.24.0':
-    resolution: {integrity: sha512-ZXFk7M72R0YYFN5q13niV0B7G8/5dcQ9JDp8keJSfr3GoZeXEoMHP/HlvqROA3OMbMdfr19IjCeNAnPUG93b6A==}
+  '@rollup/rollup-linux-x64-gnu@4.32.0':
+    resolution: {integrity: sha512-VDzNHtLLI5s7xd/VubyS10mq6TxvZBp+4NRWoW+Hi3tgV05RtVm4qK99+dClwTN1McA6PHwob6DEJ6PlXbY83A==}
     cpu: [x64]
     os: [linux]
 
-  '@rollup/rollup-linux-x64-musl@4.24.0':
-    resolution: {integrity: sha512-w1i+L7kAXZNdYl+vFvzSZy8Y1arS7vMgIy8wusXJzRrPyof5LAb02KGr1PD2EkRcl73kHulIID0M501lN+vobQ==}
+  '@rollup/rollup-linux-x64-musl@4.32.0':
+    resolution: {integrity: sha512-qcb9qYDlkxz9DxJo7SDhWxTWV1gFuwznjbTiov289pASxlfGbaOD54mgbs9+z94VwrXtKTu+2RqwlSTbiOqxGg==}
     cpu: [x64]
     os: [linux]
 
-  '@rollup/rollup-win32-arm64-msvc@4.24.0':
-    resolution: {integrity: sha512-VXBrnPWgBpVDCVY6XF3LEW0pOU51KbaHhccHw6AS6vBWIC60eqsH19DAeeObl+g8nKAz04QFdl/Cefta0xQtUQ==}
+  '@rollup/rollup-win32-arm64-msvc@4.32.0':
+    resolution: {integrity: sha512-pFDdotFDMXW2AXVbfdUEfidPAk/OtwE/Hd4eYMTNVVaCQ6Yl8et0meDaKNL63L44Haxv4UExpv9ydSf3aSayDg==}
     cpu: [arm64]
     os: [win32]
 
-  '@rollup/rollup-win32-ia32-msvc@4.24.0':
-    resolution: {integrity: sha512-xrNcGDU0OxVcPTH/8n/ShH4UevZxKIO6HJFK0e15XItZP2UcaiLFd5kiX7hJnqCbSztUF8Qot+JWBC/QXRPYWQ==}
+  '@rollup/rollup-win32-ia32-msvc@4.32.0':
+    resolution: {integrity: sha512-/TG7WfrCAjeRNDvI4+0AAMoHxea/USWhAzf9PVDFHbcqrQ7hMMKp4jZIy4VEjk72AAfN5k4TiSMRXRKf/0akSw==}
     cpu: [ia32]
     os: [win32]
 
-  '@rollup/rollup-win32-x64-msvc@4.24.0':
-    resolution: {integrity: sha512-fbMkAF7fufku0N2dE5TBXcNlg0pt0cJue4xBRE2Qc5Vqikxr4VCgKj/ht6SMdFcOacVA9rqF70APJ8RN/4vMJw==}
+  '@rollup/rollup-win32-x64-msvc@4.32.0':
+    resolution: {integrity: sha512-5hqO5S3PTEO2E5VjCePxv40gIgyS2KvO7E7/vvC/NbIW4SIRamkMr1hqj+5Y67fbBWv/bQLB6KelBQmXlyCjWA==}
     cpu: [x64]
     os: [win32]
 
   '@rtsao/scc@1.1.0':
     resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==}
 
-  '@shikijs/core@1.29.2':
-    resolution: {integrity: sha512-vju0lY9r27jJfOY4Z7+Rt/nIOjzJpZ3y+nYpqtUZInVoXQ/TJZcfGnNOGnKjFdVZb8qexiCuSlZRKcGfhhTTZQ==}
+  '@shikijs/core@1.29.1':
+    resolution: {integrity: sha512-Mo1gGGkuOYjDu5H8YwzmOuly9vNr8KDVkqj9xiKhhhFS8jisAtDSEWB9hzqRHLVQgFdA310e8XRJcW4tYhRB2A==}
 
-  '@shikijs/engine-javascript@1.29.2':
-    resolution: {integrity: sha512-iNEZv4IrLYPv64Q6k7EPpOCE/nuvGiKl7zxdq0WFuRPF5PAE9PRo2JGq/d8crLusM59BRemJ4eOqrFrC4wiQ+A==}
+  '@shikijs/engine-javascript@1.29.1':
+    resolution: {integrity: sha512-Hpi8k9x77rCQ7F/7zxIOUruNkNidMyBnP5qAGbLFqg4kRrg1HZhkB8btib5EXbQWTtLb5gBHOdBwshk20njD7Q==}
 
-  '@shikijs/engine-oniguruma@1.29.2':
-    resolution: {integrity: sha512-7iiOx3SG8+g1MnlzZVDYiaeHe7Ez2Kf2HrJzdmGwkRisT7r4rak0e655AcM/tF9JG/kg5fMNYlLLKglbN7gBqA==}
+  '@shikijs/engine-oniguruma@1.29.1':
+    resolution: {integrity: sha512-gSt2WhLNgEeLstcweQOSp+C+MhOpTsgdNXRqr3zP6M+BUBZ8Md9OU2BYwUYsALBxHza7hwaIWtFHjQ/aOOychw==}
 
-  '@shikijs/langs@1.29.2':
-    resolution: {integrity: sha512-FIBA7N3LZ+223U7cJDUYd5shmciFQlYkFXlkKVaHsCPgfVLiO+e12FmQE6Tf9vuyEsFe3dIl8qGWKXgEHL9wmQ==}
+  '@shikijs/langs@1.29.1':
+    resolution: {integrity: sha512-iERn4HlyuT044/FgrvLOaZgKVKf3PozjKjyV/RZ5GnlyYEAZFcgwHGkYboeBv2IybQG1KVS/e7VGgiAU4JY2Gw==}
 
-  '@shikijs/themes@1.29.2':
-    resolution: {integrity: sha512-i9TNZlsq4uoyqSbluIcZkmPL9Bfi3djVxRnofUHwvx/h6SRW3cwgBC5SML7vsDcWyukY0eCzVN980rqP6qNl9g==}
+  '@shikijs/themes@1.29.1':
+    resolution: {integrity: sha512-lb11zf72Vc9uxkl+aec2oW1HVTHJ2LtgZgumb4Rr6By3y/96VmlU44bkxEb8WBWH3RUtbqAJEN0jljD9cF7H7g==}
 
-  '@shikijs/types@1.29.2':
-    resolution: {integrity: sha512-VJjK0eIijTZf0QSTODEXCqinjBn0joAHQ+aPSBzrv4O2d/QSbsMw+ZeSRx03kV34Hy7NzUvV/7NqfYGRLrASmw==}
+  '@shikijs/types@1.29.1':
+    resolution: {integrity: sha512-aBqAuhYRp5vSir3Pc9+QPu9WESBOjUo03ao0IHLC4TyTioSsp/SkbAZSrIH4ghYYC1T1KTEpRSBa83bas4RnPA==}
 
   '@shikijs/vscode-textmate@10.0.1':
     resolution: {integrity: sha512-fTIQwLF+Qhuws31iw7Ncl1R3HUDtGwIipiJ9iU+UsDUwMhegFcQKQHd51nZjb7CArq0MvON8rbgCGQYWHUKAdg==}
@@ -2554,9 +2355,9 @@ packages:
     resolution: {integrity: sha512-JzBqdVIyqm2FRQCulY6nbQzMpJJpSiJ8XXWMhtOX9eKgaXXpfNOF53lzQEjIydlStnd/eFtuC1dW4VYdD93oRg==}
     engines: {node: ^16.14.0 || >=18.0.0}
 
-  '@sigstore/protobuf-specs@0.3.2':
-    resolution: {integrity: sha512-c6B0ehIWxMI8wiS/bj6rHMPqeFvngFV7cDU/MY+B16P9Z3Mp9k8L93eYZ7BYzSickzuqAQqAq0V956b3Ju6mLw==}
-    engines: {node: ^16.14.0 || >=18.0.0}
+  '@sigstore/protobuf-specs@0.3.3':
+    resolution: {integrity: sha512-RpacQhBlwpBWd7KEJsRKcBQalbV28fvkxwTOJIqhIuDysMMaJW47V4OqW30iJB9uRpqOSxxEAQFdr8tTattReQ==}
+    engines: {node: ^18.17.0 || >=20.5.0}
 
   '@sigstore/sign@2.3.2':
     resolution: {integrity: sha512-5Vz5dPVuunIIvC5vBb0APwo7qKA4G9yM48kPWJT+OEERs40md5GoUR1yedwpekWZ4m0Hhw44m6zU+ObsON+iDA==}
@@ -2606,95 +2407,95 @@ packages:
     peerDependencies:
       tailwindcss: '>=3.0.0 || >= 3.0.0-alpha.1 || >= 4.0.0-alpha.20 || >= 4.0.0-beta.1'
 
-  '@tailwindcss/node@4.0.1':
-    resolution: {integrity: sha512-lc+ly6PKHqgCVl7eO8D2JlV96Lks5bmL6pdtM6UasyUHLU2zmrOqU6jfgln120IVnCh3VC8GG/ca24xVTtSokw==}
+  '@tailwindcss/node@4.0.0':
+    resolution: {integrity: sha512-tfG2uBvo6j6kDIPmntxwXggCOZAt7SkpAXJ6pTIYirNdk5FBqh/CZZ9BZPpgcl/tNFLs6zc4yghM76sqiELG9g==}
 
-  '@tailwindcss/oxide-android-arm64@4.0.1':
-    resolution: {integrity: sha512-eP/rI9WaAElpeiiHDqGtDqga9iDsOClXxIqdHayHsw93F24F03b60CwgGhrGF9Io/EuWIpz3TMRhPVOLhoXivw==}
+  '@tailwindcss/oxide-android-arm64@4.0.0':
+    resolution: {integrity: sha512-EAhjU0+FIdyGPR+7MbBWubLLPtmOu+p7c2egTTFBRk/n//zYjNvVK0WhcBK5Y7oUB5mo4EjA2mCbY7dcEMWSRw==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [android]
 
-  '@tailwindcss/oxide-darwin-arm64@4.0.1':
-    resolution: {integrity: sha512-jZVUo0kNd1IjxdCYwg4dwegDNsq7PoUx4LM814RmgY3gfJ63Y6GlpJXHOpd5FLv1igpeZox5LzRk2oz8MQoJwQ==}
+  '@tailwindcss/oxide-darwin-arm64@4.0.0':
+    resolution: {integrity: sha512-hdz4xnSWS11cIp+7ye+3dGHqs0X33z+BXXTtgPOguDWVa+TdXUzwxonklSzf5wlJFuot3dv5eWzhlNai0oYYQg==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [darwin]
 
-  '@tailwindcss/oxide-darwin-x64@4.0.1':
-    resolution: {integrity: sha512-E31wHiIf4LB0aKRohrS4U6XfFSACCL9ifUFfPQ16FhcBIL4wU5rcBidvWvT9TQFGPkpE69n5dyXUcqiMrnF/Ig==}
+  '@tailwindcss/oxide-darwin-x64@4.0.0':
+    resolution: {integrity: sha512-+dOUUaXTkPKKhtUI9QtVaYg+MpmLh2CN0dHohiYXaBirEyPMkjaT0zbRgzQlNnQWjCVVXPQluIEb0OMEjSTH+Q==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [darwin]
 
-  '@tailwindcss/oxide-freebsd-x64@4.0.1':
-    resolution: {integrity: sha512-8/3ZKLMYqgAsBzTeczOKWtT4geF02g9S7cntY5gvqQZ4E0ImX724cHcZJi9k6fkE6aLbvwxxHxaShFvRxblwKQ==}
+  '@tailwindcss/oxide-freebsd-x64@4.0.0':
+    resolution: {integrity: sha512-CJhGDhxnrmu4SwyC62fA+wP24MhA/TZlIhRHqg1kRuIHoGoVR2uSSm1qxTxU37tSSZj8Up0q6jsBJCAP4k7rgQ==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [freebsd]
 
-  '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.1':
-    resolution: {integrity: sha512-EYjbh225klQfWzy6LeIAfdjHCK+p71yLV/GjdPNW47Bfkkq05fTzIhHhCgshUvNp78EIA33iQU+ktWpW06NgHw==}
+  '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.0':
+    resolution: {integrity: sha512-Wy7Av0xzXfY2ujZBcYy4+7GQm25/J1iHvlQU2CfwdDCuPWfIjYzR6kggz+uVdSJyKV2s64znchBxRE8kV4uXSA==}
     engines: {node: '>= 10'}
     cpu: [arm]
     os: [linux]
 
-  '@tailwindcss/oxide-linux-arm64-gnu@4.0.1':
-    resolution: {integrity: sha512-PrX2SwIqWNP5cYeSyQfrhbk4ffOM338T6CrEwIAGvLPoUZiklt19yknlsBme6bReSw7TSAMy+8KFdLLi5fcWNQ==}
+  '@tailwindcss/oxide-linux-arm64-gnu@4.0.0':
+    resolution: {integrity: sha512-srwBo2l6pvM0swBntc1ucuhGsfFOLkqPRFQ3dWARRTfSkL1U9nAsob2MKc/n47Eva/W9pZZgMOuf7rDw8pK1Ew==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [linux]
 
-  '@tailwindcss/oxide-linux-arm64-musl@4.0.1':
-    resolution: {integrity: sha512-iuoFGhKDojtfloi5uj6MIk4kxEOGcsAk/kPbZItF9Dp7TnzVhxo2U/718tXhxGrg6jSL3ST3cQHIjA6yw3OeXw==}
+  '@tailwindcss/oxide-linux-arm64-musl@4.0.0':
+    resolution: {integrity: sha512-abhusswkduYWuezkBmgo0K0/erGq3M4Se5xP0fhc/0dKs0X/rJUYYCFWntHb3IGh3aVzdQ0SXJs93P76DbUqtw==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [linux]
 
-  '@tailwindcss/oxide-linux-x64-gnu@4.0.1':
-    resolution: {integrity: sha512-pNUrGQYyE8RK+N9yvkPmHnlKDfFbni9A3lsi37u4RoA/6Yn+zWVoegvAQMZu3w+jqnpb2A/bYJ+LumcclUZ3yg==}
+  '@tailwindcss/oxide-linux-x64-gnu@4.0.0':
+    resolution: {integrity: sha512-hGtRYIUEx377/HlU49+jvVKKwU1MDSKYSMMs0JFO2Wp7LGxk5+0j5+RBk9NFnmp/lbp32yPTgIOO5m1BmDq36A==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [linux]
 
-  '@tailwindcss/oxide-linux-x64-musl@4.0.1':
-    resolution: {integrity: sha512-xSGWaDcT6SJ75su9zWXj8GYb2jM/przXwZGH96RTS7HGDIoI1tvgpls88YajG5Sx7hXaqAWCufjw5L/dlu+lzg==}
+  '@tailwindcss/oxide-linux-x64-musl@4.0.0':
+    resolution: {integrity: sha512-7xgQgSAThs0I14VAgmxpJnK6XFSZBxHMGoDXkLyYkEnu+8WRQMbCP93dkCUn2PIv+Q+JulRgc00PJ09uORSLXQ==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [linux]
 
-  '@tailwindcss/oxide-win32-arm64-msvc@4.0.1':
-    resolution: {integrity: sha512-BUNL2isUZ2yWnbplPddggJpZxsqGHPZ1RJAYpu63W4znUnKCzI4m/jiy0WpyYqqOKL9jDM5q0QdsQ9mc3aw5YQ==}
+  '@tailwindcss/oxide-win32-arm64-msvc@4.0.0':
+    resolution: {integrity: sha512-qEcgTIPcWY5ZE7f6VxQ/JPrSFMcehzVIlZj7sGE3mVd5YWreAT+Fl1vSP8q2pjnWXn0avZG3Iw7a2hJQAm+fTQ==}
     engines: {node: '>= 10'}
     cpu: [arm64]
     os: [win32]
 
-  '@tailwindcss/oxide-win32-x64-msvc@4.0.1':
-    resolution: {integrity: sha512-ZtcVu+XXOddGsPlvO5nh2fnbKmwly2C07ZB1lcYCf/b8qIWF04QY9o6vy6/+6ioLRfbp3E7H/ipFio38DZX4oQ==}
+  '@tailwindcss/oxide-win32-x64-msvc@4.0.0':
+    resolution: {integrity: sha512-bqT0AY8RXb8GMDy28JtngvqaOSB2YixbLPLvUo6I6lkvvUwA6Eqh2Tj60e2Lh7O/k083f8tYiB0WEK4wmTI7Jg==}
     engines: {node: '>= 10'}
     cpu: [x64]
     os: [win32]
 
-  '@tailwindcss/oxide@4.0.1':
-    resolution: {integrity: sha512-3z1SpWoDeaA6K6jd92CRrGyDghOcRILEgyWVHRhaUm/tcpiazwJpU9BSG0xB7GGGnl9capojaC+zme/nKsZd/w==}
+  '@tailwindcss/oxide@4.0.0':
+    resolution: {integrity: sha512-W3FjpJgy4VV1JiL7iBYDf2n/WkeDg1Il+0Q7eWnqPyvkPPCo/Mbwc5BiaT7dfBNV6tQKAhVE34rU5xl8pSl50w==}
     engines: {node: '>= 10'}
 
-  '@tailwindcss/postcss@4.0.1':
-    resolution: {integrity: sha512-fZHL49vCDauQymdm2U1jehuUeX8msYVDKB/2v+jWhTQleH3QE8J1dJ2dnL5tqRvB0udjBP4kwUC1ZIVIdv66YA==}
+  '@tailwindcss/postcss@4.0.0':
+    resolution: {integrity: sha512-lI2bPk4TvwavHdehjr5WiC6HnZ59hacM6ySEo4RM/H7tsjWd8JpqiNW9ThH7rO/yKtrn4mGBoXshpvn8clXjPg==}
 
   '@tailwindcss/typography@0.5.16':
     resolution: {integrity: sha512-0wDLwCVF5V3x3b1SGXPCDcdsbDHMBe+lkFzBRaHeLvNi+nrrnZ1lA18u+OTWO8iSWU2GxUOCvlXtDuqftc1oiA==}
     peerDependencies:
       tailwindcss: '>=3.0.0 || insiders || >=4.0.0-alpha.20 || >=4.0.0-beta.1'
 
-  '@tanstack/react-virtual@3.10.8':
-    resolution: {integrity: sha512-VbzbVGSsZlQktyLrP5nxE+vE1ZR+U0NFAWPbJLoG2+DKPwd2D7dVICTVIIaYlJqX1ZCEnYDbaOpmMwbsyhBoIA==}
+  '@tanstack/react-virtual@3.11.2':
+    resolution: {integrity: sha512-OuFzMXPF4+xZgx8UzJha0AieuMihhhaWG0tCqpp6tDzlFwOmNBPYMuLOtMJ1Tr4pXLHmgjcWhG6RlknY2oNTdQ==}
     peerDependencies:
-      react: ^16.8.0 || ^17.0.0 || ^18.0.0
-      react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0
+      react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
+      react-dom: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0
 
-  '@tanstack/virtual-core@3.10.8':
-    resolution: {integrity: sha512-PBu00mtt95jbKFi6Llk9aik8bnR3tR/oQP1o3TSi+iG//+Q2RTIzCEgKkHG8BB86kxMNW6O8wku+Lmi+QFR6jA==}
+  '@tanstack/virtual-core@3.11.2':
+    resolution: {integrity: sha512-vTtpNt7mKCiZ1pwU9hfKPhpdVO2sVzFQsxoVBGtOSHxlrRRzYr8iQ2TlwbAcRYCcEiZ9ECAM8kBzH0v2+VzfKw==}
 
   '@tauri-apps/api@2.2.0':
     resolution: {integrity: sha512-R8epOeZl1eJEl603aUMIGb4RXlhPjpgxbGVEaqY+0G5JG9vzV/clNlzTeqc+NLYXVqXcn8mb4c5b9pJIUDEyAg==}
@@ -2764,68 +2565,101 @@ packages:
     engines: {node: '>= 10'}
     hasBin: true
 
-  '@tauri-apps/plugin-clipboard-manager@2.2.1':
-    resolution: {integrity: sha512-+7YDULB9Bk4fejxYrVNBQcxs3KsjPA3A3r53wwn7K8zOQvxjNBSYBRx/FW1OUBPGzm8BrreJFBkPVzQZSF2R4A==}
+  '@tauri-apps/plugin-clipboard-manager@2.2.0':
+    resolution: {integrity: sha512-sIBrW/HioKq2vqomwwcU/Y8ygAv3DlS32yKPBX5XijCc0IyQKiDxYpGqmvE9DC5Y0lNJ/G53dfS961B31wjJ1g==}
 
-  '@tonaljs/abc-notation@4.8.0':
-    resolution: {integrity: sha512-JggT/DW4rMxu+q1WkeACrg52is3acp9zaW4LJmCheFi3CmLa63sy7/6mgKnlScTOvcpAyTcSytu0VbQHRXyBDA==}
+  '@tonaljs/abc-notation@4.9.1':
+    resolution: {integrity: sha512-2fDUdPsFDdgZgyIiZCTYGKy30QiwIQxSXCSN2thGrSMXbQKCp8iTC8haStYcrA+25MPWhWlmvC/pz3tGcTNAqQ==}
 
-  '@tonaljs/array@4.8.0':
-    resolution: {integrity: sha512-lWCUBRUVWtDV0kl/fjOgICRWzBYWZdJEk1h0vVzpuPaXW6Yz3JfjyKPtLbzYTkgSr1PqcjxVGNwxilz9c2NNkQ==}
+  '@tonaljs/array@4.8.4':
+    resolution: {integrity: sha512-97HVdpZy82PqNBDMM9PRSbO2DUrnxNg3++N4xqLpfby70fKHAHhTWrMXWZK+Dzs76HDPQLd+qhd4cq28eBZzjw==}
 
-  '@tonaljs/chord-detect@4.8.0':
-    resolution: {integrity: sha512-rpBHS2FKitIIodWI32LszeUfpq0of+0zqnU3CBc2/2UiYoyO9PmSs8UjzupKTIX/mHxOxq0ncDheT/ItB7QdNg==}
+  '@tonaljs/chord-detect@4.9.1':
+    resolution: {integrity: sha512-rV/9+R7aZ9cQorQ3jdNMMMh63onosglYZM71Q0n7KKcWMAGrxF66MzxBG82xy+w1QDMJQslB3iHfDHUiS6wRjA==}
 
-  '@tonaljs/chord-type@4.8.0':
-    resolution: {integrity: sha512-NQYvTziV5HiY+fuNWHB85ZFJgKFge3iBcmcJSDI4kguxSHqDDscM1fE+tb6q4mi6RKERtw3oeGWjV5ScL1UKWQ==}
+  '@tonaljs/chord-type@4.8.2':
+    resolution: {integrity: sha512-GzSTjQmZjkUdPhyesFDeJbxpW8R7L/bAE34E8ApGAh9FMcKYpRdX3Tn+gkluRsXOiRMfW07p3E0Adx4bjtyN+Q==}
 
-  '@tonaljs/chord@4.10.0':
-    resolution: {integrity: sha512-PyR17WYtgk0Yi1KRPeK5dVKoCCBf+LA23pRndN9RFWUkQR/zuRgmTyXpS7JRfzNqDu4GLGVCzS37QUdHRD5FvA==}
+  '@tonaljs/chord-type@5.1.1':
+    resolution: {integrity: sha512-ti4WzRYvvjH7to0G3zlJFq7WsjHqmcqbk8Jv98aZSR5YumLdY/ua2yOPPyoPq82n6vfgjZsacnAZ3v8/SodOcw==}
 
-  '@tonaljs/collection@4.8.0':
-    resolution: {integrity: sha512-NSnqUDqnCZajYGPH4+27y6UAflX+RrAZQdP9YNBuJoTFtdSDrqV3cJoPdr2DRpGCK3Nuzw1dU8DlGsyWwNwlmg==}
+  '@tonaljs/chord@4.10.2':
+    resolution: {integrity: sha512-Zlqtq6c6T4y+EqvwHRQp9icEjHqyniCpnIwwCFg5amgAQwXmWzarouOOSmcdJ1Is92eEvcPVuCoLiVUtajS30A==}
 
-  '@tonaljs/core@4.10.0':
-    resolution: {integrity: sha512-+AH7NP9iiAGil+X7NlKGlQvls/KByQmxR51d5O+y6IjHltOkVUXk74oZuxW7zF0IsKchFn8Okr0sxqFmgsQmpA==}
+  '@tonaljs/chord@6.1.1':
+    resolution: {integrity: sha512-gsLyGGkOt0g5L/uF4ICpYQengahW3WAMjckyvyzvqMYpvH7fokmtcymOfbltDQzaVuYuL0TsVmbfjbah2rKEww==}
 
-  '@tonaljs/duration-value@4.8.0':
-    resolution: {integrity: sha512-ewWVKtYCzNkSNaFoEn6NqL5vCmHTqoN+qngoUG2Sy2ZvGCk1pwx3ckJVUkJmYrkxP4PbQASPgJi0y+0fjgVJug==}
+  '@tonaljs/collection@4.9.0':
+    resolution: {integrity: sha512-Mk0h7O54nT6PgNVcUYauzxa5KOB23+0AOKudWzRH7JhJIN9vhVIC7PtwZXE+/G051UTbHSFIcN/afkgF4nB/8A==}
 
-  '@tonaljs/interval@4.8.0':
-    resolution: {integrity: sha512-R+1OvqRS0lFqzmzorbL0cwqZLVRnDw2kmwNtgF17A2vqcZI9aDDH/XELPLLUcZ7ykeIu4X9t/v+yTwREj+nUrA==}
+  '@tonaljs/core@4.10.4':
+    resolution: {integrity: sha512-PhGlQ2Js6rFQ6CufkSiBpEJoPS8QIIhbXSXhT4U+5ffqckli+YBZRN24vjZ4AEKuX8xoYDmCCbl+r6agauvzmw==}
 
-  '@tonaljs/key@4.9.1':
-    resolution: {integrity: sha512-WL/8raLnrcv6qpBog0HNp16/ifleeapZjU2PVTnIJ2DhuVgqtI8ccCyZHAURFdMmwYmn1Gf1VnvUAmG7RmqHJg==}
+  '@tonaljs/duration-value@4.9.0':
+    resolution: {integrity: sha512-Muz54HyIe0nMYKWx6wyTa4y17ma29DtpJF4/oqJphy6A124rAVDe/SKit8JGOvDYAQj71FUXqs17sXBxO/ExVw==}
 
-  '@tonaljs/midi@4.9.0':
-    resolution: {integrity: sha512-zi6lK2OC2EA8E1Nl011erWAZgOSlrfstJMgnrbm4/nLDegotg5ALbMnfX/s+SIfSSFcXn/Og1d8xwPeAwoaUyg==}
+  '@tonaljs/interval@4.8.2':
+    resolution: {integrity: sha512-9SEuJuqFdmu9lnvMmJtxbReQcQvZ1YHXhCcxaF6Re23/w+BqiJvvkvNZhfWH+n1+g0uaSdTsuvMfamp7hAvPMw==}
 
-  '@tonaljs/mode@4.8.0':
-    resolution: {integrity: sha512-hyaj2RWcnA7h6+jzc074JzE8GFFYg2FaRxXJHLBIYXXlqrLnudnSHOAfHUNRySQKEMR6h4oIerf9LW6+z9sPjQ==}
+  '@tonaljs/interval@5.1.0':
+    resolution: {integrity: sha512-GR9dUjn0j7yhjwjRh8HQxZYXOiVl05WfY3AFyMB9rfg807K4dSJmWfPTULPQXyHJ6NiZOPXcwRs8MxMLDxgdbg==}
 
-  '@tonaljs/note@4.10.0':
-    resolution: {integrity: sha512-jWyxk9Dom+vsucj3dWG9z4j6WhZqbY7gkKsS14fHeo7g8qUZTVZFsr8ulpHyLPXN3EhLwHDU7CxIQ1klkPE33A==}
+  '@tonaljs/key@4.11.1':
+    resolution: {integrity: sha512-bZGKhSR+ThYS4CHVR3gS4aVkAM9PYqQPjNvsqwSRDzpuPynuGqIJbEXxx2sTmoendSOQYQXh5OaiDCQZAbk66w==}
 
-  '@tonaljs/pcset@4.8.1':
-    resolution: {integrity: sha512-Ir+xHQHBqhSlOEeIMsPwz6A9MRdeKYajKFFwhnGLzU42HcHfe0MKyttzVO+iSIenLtiYk5TyW9ADdo6y85sJeA==}
+  '@tonaljs/midi@4.10.1':
+    resolution: {integrity: sha512-8epOg4fFArpoR94fkWiPf60kPwFnTi2ZSxYTfueTVOI9l/TIaMk9oEBfw8ZKuuJygGU2LMk27/hKW2rQI5zFNg==}
 
-  '@tonaljs/progression@4.8.0':
-    resolution: {integrity: sha512-JS5xDox5pN3rRAIIC7ACumGmSwMpIRPvQpUePTmfQS0YMjFofzXeAjH/7WZN0328VK4vk8OAWu5N18pVxqJqQw==}
+  '@tonaljs/mode@4.9.1':
+    resolution: {integrity: sha512-h+K7eOUKpyX7kMRCwCew6cV1oN0sZYD5LLeKD7zEERNd/6wvGBfGCdMZECGqzpFUmjUyCY87IOntem6EPbKVCg==}
 
-  '@tonaljs/range@4.8.1':
-    resolution: {integrity: sha512-UAyHBPh1SfqOo2w/BA6Rji3Sl1V0z/ggoE9+gS5aig13qUaVM8B3p2eanEgrxsRTN+yARPSE83CiWWbVqLKzWA==}
+  '@tonaljs/note@4.12.0':
+    resolution: {integrity: sha512-MgHeSTRldgPteucHI+gKzFkqJ8eVPHelxCNeAFr+hTryLoottr/rfqI93GeJkriH3r8jG81LQBxKRbzN4m3Qeg==}
 
-  '@tonaljs/roman-numeral@4.8.0':
-    resolution: {integrity: sha512-jktwfGXcs4qp5A0jy5pyWxgYkeGDcaldV9tiv7XnNR5yLwDm0D6S9rRlNlSo3n0wyDo3+Kh80hd3Mps+Gsf81w==}
+  '@tonaljs/pcset@4.10.1':
+    resolution: {integrity: sha512-CZG1rpKc38yMfpEJsbDTvsTmQqsek9xxcuMgK64Tr6sP1lEiDuZJbQeKVWWRnreBF2FQ1cEGLmfOpvSO+40csA==}
 
-  '@tonaljs/scale-type@4.8.1':
-    resolution: {integrity: sha512-XlSCFnEmiv7olj8mQBnQOBP9l1CtKFju3BqIILvLCacc6nrWSfSOSi8Y08FujSdvnU6i2fJmK/AYqlqFNoR1rA==}
+  '@tonaljs/pitch-distance@5.0.2':
+    resolution: {integrity: sha512-DPxfGJCf4BvfIVRxl2v142tuCKIziM6PomOBT0/s7U5o+Z5qFAIW0tNx/MKyL83guV74p+XIf5VI0w1flmXxDA==}
 
-  '@tonaljs/scale@4.12.0':
-    resolution: {integrity: sha512-1XxGoNqOFRgHWtpGH1Ery/AObnlnHp8+Yxe2FSE7J1BzUFej1XpJJyRvR4sOFVGr603xze+9IOXVgGTADcy/IQ==}
+  '@tonaljs/pitch-distance@5.0.5':
+    resolution: {integrity: sha512-dTfjsU0zyrj5YmiFio5prPaD5w7sBmHp4nnmlEg70nHY+SerAH0KiO9HM9usttVgRFUaXl0Gc7OI8YMGfSFmug==}
 
-  '@tonaljs/time-signature@4.8.0':
-    resolution: {integrity: sha512-ES5WoBC3aA5qQcVxh3GUc/Z1XAlnul/PCdlYrmTNAAJ4hgv4H5WHu15fWk7xRcCC6LZz6chfQNbSIXl9sNRdZQ==}
+  '@tonaljs/pitch-interval@5.0.2':
+    resolution: {integrity: sha512-bQmxeenRFNuuABs9mDc+bSUp3ySGw8I49pHMoGDdCcro9n3MDN8IsSwhvKoGOYErFMx76rNn1t+7WL8ukpvX5w==}
+
+  '@tonaljs/pitch-interval@6.1.0':
+    resolution: {integrity: sha512-9ZMxA7V4UgySnOKPIG6HECzhDb8mbiTCIdNNIzCIfz5XpjUmohku2YZpVVWMacLHgyeQicJzNoRiPel5oSAn4A==}
+
+  '@tonaljs/pitch-note@5.0.3':
+    resolution: {integrity: sha512-JsPgqPa8VZdZtfwvgoHJz996BZqzvlnRxUF6c/Q9q8E0iq30UHBEid0Y6XldK+h6tuIENsG3a9jyvNNxRqIeYw==}
+
+  '@tonaljs/pitch-note@6.1.0':
+    resolution: {integrity: sha512-A4OSLo8DjM38u73862LnDmL4YInDDRBmg0fojXcvu4cyU3oOlqndyeHOra1OVoH/WW46uNIxNs1wJDZNPWL5KQ==}
+
+  '@tonaljs/pitch@5.0.1':
+    resolution: {integrity: sha512-5HYkF4hGY0jS2y5V3Hf5gNFXX46kT4cAcI7JLEn+qQb9N1dU9Gz9koI9di0mD1Tbam+kviceiCsJl4WX/FqYjA==}
+
+  '@tonaljs/pitch@5.0.2':
+    resolution: {integrity: sha512-mxaXJPPe+LIJdjzpZEl8I8Wx3dEvlzkBbsr2Ltwc2dTAdnErAZ5R0TxVq2egF27lMvQN2QPQPWI9iDPPdVUmrg==}
+
+  '@tonaljs/progression@4.9.1':
+    resolution: {integrity: sha512-jHdZUNlXRmjrvbZrvjoW6syW7dO9ilhgvyouB6YuVM5lGShwTN9dsSuQYsugso9jYHkwQBgYj5SaXTTY0/0nHw==}
+
+  '@tonaljs/range@4.9.1':
+    resolution: {integrity: sha512-7afFvdcdseqiG/kkCL3LuOc9rTNBR4+3H5lKx9MttAHVJq8uRJMooO1GdEziQ5f7UYZPmXd17e6ZXd0AdnkXrA==}
+
+  '@tonaljs/roman-numeral@4.9.1':
+    resolution: {integrity: sha512-dJGKBNHdPrNTE97ZDk4t6wpNmgYcpHyLkAvWkRP9I/HsDkeTFFQqNXosYIvspPWrFySlRpeqqFwcqV74MYoOag==}
+
+  '@tonaljs/scale-type@4.9.1':
+    resolution: {integrity: sha512-Nz2wThzz5NmWNx0vazX7MqNbF8kT1g5BEcbZcWjgkc67zhwosfZE0LEn7W9XcVDEws71b8CqQqDPKUEEybC9Rw==}
+
+  '@tonaljs/scale@4.13.1':
+    resolution: {integrity: sha512-lJwXxIa3MldMWfvGBlcqu+D/2CRarSb9L2a/McvOFBF3G3rhrrxI6rHsH7uWFbI3D5SEvTjXV9ke4eICQZLLNA==}
+
+  '@tonaljs/time-signature@4.9.0':
+    resolution: {integrity: sha512-zRo8CBqg/2guzTlF2vxyVIuB5gmwWQaxlknJPUSDII8CTdQ/x3a1LlNoMKkvTUnqwCihe3WrNPZ5XUfOOTthYA==}
 
   '@tonaljs/tonal@4.10.0':
     resolution: {integrity: sha512-F2T9Fiy+j0MVped89kCrX1XF68mQOLUnny4pDOHrIf+OkrjtLQOzzaSOrX1tx0o72WUwQm1knz6D1d57b9X1HA==}
@@ -2838,26 +2672,29 @@ packages:
     resolution: {integrity: sha512-92F7/SFyufn4DXsha9+QfKnN03JGqtMFMXgSHbZOo8JG59WkTni7UzAouNQDf7AuP9OAMxVOPQcqG3sB7w+kkg==}
     engines: {node: ^16.14.0 || >=18.0.0}
 
+  '@tybys/wasm-util@0.9.0':
+    resolution: {integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==}
+
   '@types/acorn@4.0.6':
     resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==}
 
   '@types/babel__core@7.20.5':
     resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==}
 
-  '@types/babel__generator@7.6.4':
-    resolution: {integrity: sha512-tFkciB9j2K755yrTALxD44McOrk+gfpIpvC3sxHjRawj6PfnQxrse4Clq5y/Rq+G3mrBurMax/lG8Qn2t9mSsg==}
+  '@types/babel__generator@7.6.8':
+    resolution: {integrity: sha512-ASsj+tpEDsEiFr1arWrlN6V3mdfjRMZt6LtK/Vp/kreFLnr5QH5+DhvD5nINYZXzwJvXeGq+05iUXcAzVrqWtw==}
 
-  '@types/babel__template@7.4.1':
-    resolution: {integrity: sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g==}
+  '@types/babel__template@7.4.4':
+    resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==}
 
-  '@types/babel__traverse@7.18.3':
-    resolution: {integrity: sha512-1kbcJ40lLB7MHsj39U4Sh1uTd2E7rLEa79kmDpI6cy+XiXsteB3POdQomoq4FxszMrO3ZYchkhYJw7A2862b3w==}
+  '@types/babel__traverse@7.20.6':
+    resolution: {integrity: sha512-r1bzfrm0tomOI8g1SzvCaQHo6Lcv6zu0EA+W2kHrt8dyrHQxGzBBL4kdkzIS+jBMV+EYcMAEAqXqYaLJq5rOZg==}
 
   '@types/cookie@0.6.0':
     resolution: {integrity: sha512-4Kh9a6B2bQciAhf7FSuMRRkUWecJgJu9nPnx3yzpsfXX/c50REIqpHY4C82bXP90qrLtXtkDxTZosYO3UpOwlA==}
 
-  '@types/debug@4.1.7':
-    resolution: {integrity: sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==}
+  '@types/debug@4.1.12':
+    resolution: {integrity: sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==}
 
   '@types/estree-jsx@1.0.5':
     resolution: {integrity: sha512-52CcUVNFyfb1A2ALocQw/Dd1BQFNmSdkuC3BkZ6iqhdMfQz7JWOFRuJFloOzjk+6WijU56m9oKXFAXc7o3Towg==}
@@ -2868,9 +2705,6 @@ packages:
   '@types/estree@1.0.6':
     resolution: {integrity: sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==}
 
-  '@types/hast@3.0.2':
-    resolution: {integrity: sha512-B5hZHgHsXvfCoO3xgNJvBnX7N8p86TqQeGKXcokW4XXi+qY4vxxPSFYofytvVmpFxzPv7oxDQzjg5Un5m2/xiw==}
-
   '@types/hast@3.0.4':
     resolution: {integrity: sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==}
 
@@ -2886,9 +2720,6 @@ packages:
   '@types/markdown-it@14.1.2':
     resolution: {integrity: sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==}
 
-  '@types/mdast@4.0.2':
-    resolution: {integrity: sha512-tYR83EignvhYO9iU3kDg8V28M0jqyh9zzp5GV+EO+AYnyUl3P5ltkTeJuTiFZQFz670FSb3EwT/6LQdX+UdKfw==}
-
   '@types/mdast@4.0.4':
     resolution: {integrity: sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==}
 
@@ -2901,23 +2732,23 @@ packages:
   '@types/minimatch@3.0.5':
     resolution: {integrity: sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ==}
 
-  '@types/minimist@1.2.2':
-    resolution: {integrity: sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ==}
+  '@types/minimist@1.2.5':
+    resolution: {integrity: sha512-hov8bUuiLiyFPGyFPE1lwWhmzYbirOXQNNo40+y3zow8aFVTeyn3VWL0VFFfdNddA8S4Vf0Tc062rzyNr7Paag==}
 
-  '@types/ms@0.7.31':
-    resolution: {integrity: sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==}
+  '@types/ms@2.1.0':
+    resolution: {integrity: sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA==}
 
   '@types/nlcst@2.0.3':
     resolution: {integrity: sha512-vSYNSDe6Ix3q+6Z7ri9lyWqgGhJTmzRjZRqyq15N0Z/1/UnVsno9G/N40NBijoYx2seFDIl0+B2mgAb9mezUCA==}
 
-  '@types/node@22.12.0':
-    resolution: {integrity: sha512-Fll2FZ1riMjNmlmJOdAyY5pUbkftXslB5DgEzlIuNaiWhXd00FhWxVC/r4yV/4wBb9JfImTu+jiSvXTkJ7F/gA==}
+  '@types/node@22.10.10':
+    resolution: {integrity: sha512-X47y/mPNzxviAGY5TcYPtYL8JsY3kAq2n8fMmKoRCxq/c4v4pyGNCzM2R6+M5/umG4ZfHuT+sgqDYqWc9rJ6ww==}
 
-  '@types/normalize-package-data@2.4.1':
-    resolution: {integrity: sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw==}
+  '@types/normalize-package-data@2.4.4':
+    resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==}
 
-  '@types/phoenix@1.6.5':
-    resolution: {integrity: sha512-xegpDuR+z0UqG9fwHqNoy3rI7JDlvaPh2TY47Fl80oq6g+hXT+c/LEuE43X48clZ6lOfANl5WrPur9fYO1RJ/w==}
+  '@types/phoenix@1.6.6':
+    resolution: {integrity: sha512-PIzZZlEppgrpoT2QgbnDU+MMzuR6BbCjllj0bM70lWoejMeNJAxCchxnv7J3XFkI8MpygtRpzXrIlmWUBclP5A==}
 
   '@types/react-dom@19.0.3':
     resolution: {integrity: sha512-0Knk+HJiMP/qOZgMyNFamlIjw9OFCsyC2ZbigmEEyXXixgre6IQpm/4V+r3qH4GC1JPvRJKInw+on2rV6YZLeA==}
@@ -2930,26 +2761,26 @@ packages:
   '@types/resolve@1.17.1':
     resolution: {integrity: sha512-yy7HuzQhj0dhGpD8RLXSZWEkLsV9ibvxvi6EiJ3bkqLAO1RGo0WbkWQiwpRlSFymTJRz0d3k5LM3kkx8ArDbLw==}
 
+  '@types/resolve@1.20.2':
+    resolution: {integrity: sha512-60BCwRFOZCQhDncwQdxxeOEEkbc5dIMccYLwbxsS4TUNeVECQ/pBJ0j09mrHOl/JJvpRPGwO9SvE4nR2Nb/a4Q==}
+
   '@types/trusted-types@2.0.7':
     resolution: {integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==}
 
-  '@types/ungap__structured-clone@0.3.3':
-    resolution: {integrity: sha512-RNmhIPwoip6K/zZOv3ypksTAqaqLEXvlNSXKyrC93xMSOAHZCR7PifW6xKZCwkbbnbM9dwB9X56PPoNTlNwEqw==}
+  '@types/ungap__structured-clone@1.2.0':
+    resolution: {integrity: sha512-ZoaihZNLeZSxESbk9PUAPZOlSpcKx81I1+4emtULDVmBLkYutTcMlCj2K9VNlf9EWODxdO6gkAqEaLorXwZQVA==}
 
   '@types/unist@2.0.11':
     resolution: {integrity: sha512-CmBKiL6NNo/OqgmMn95Fk9Whlp2mtvIv+KNpQKN2F4SjvrEesubTRWGYSg+BnWZOnlCaSTU1sMpsBOzgbYhnsA==}
 
-  '@types/unist@3.0.1':
-    resolution: {integrity: sha512-ue/hDUpPjC85m+PM9OQDMZr3LywT+CT6mPsQq8OJtCLiERkGRcQUFvu9XASF5XWqyZFXbf15lvb3JFJ4dRLWPg==}
-
   '@types/unist@3.0.3':
     resolution: {integrity: sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==}
 
   '@types/webmidi@2.1.0':
     resolution: {integrity: sha512-k898MjEUSHB+6rSeCPQk/kLgie0wgWZ2t78GlWj86HbTQ+XmtbBafYg5LNjn8bVHfItEhPGZPf579Xfc6keV6w==}
 
-  '@types/ws@8.5.12':
-    resolution: {integrity: sha512-3tPRkv1EtkDpzlgyKyI8pGsGZAGPEaXeu0DOj5DI25Ja91bdAYddYHbADRYVrZMRbfW+1l5YwXVDKohDJNQxkQ==}
+  '@types/ws@8.5.14':
+    resolution: {integrity: sha512-bd/YFLW+URhBzMXurx7lWByOu+xzU9+kb3RboOteXYDfW+tr+JZa99OyNmPINEGB/ahzKrEuc8rcv4gnpJmxTw==}
 
   '@typescript-eslint/types@7.18.0':
     resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==}
@@ -2968,8 +2799,8 @@ packages:
     resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==}
     engines: {node: ^18.18.0 || >=20.0.0}
 
-  '@ungap/structured-clone@1.2.0':
-    resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==}
+  '@ungap/structured-clone@1.3.0':
+    resolution: {integrity: sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==}
 
   '@vite-pwa/astro@0.5.0':
     resolution: {integrity: sha512-Yd3Pug/c1EUQJXWvzYh6eTtoqzmSKcdCqWCcNquZeaD13tLWpBb2FIPJ4HMULVY6+GfxMvrT+OBuMrbHQCvftw==}
@@ -3039,12 +2870,12 @@ packages:
   '@yarnpkg/lockfile@1.1.0':
     resolution: {integrity: sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ==}
 
-  '@yarnpkg/parsers@3.0.0-rc.46':
-    resolution: {integrity: sha512-aiATs7pSutzda/rq8fnuPwTglyVwjM22bNnK2ZgjrpAjQHSSl3lztd2f9evst1W/qnC58DRz7T7QndUDumAR4Q==}
-    engines: {node: '>=14.15.0'}
+  '@yarnpkg/parsers@3.0.2':
+    resolution: {integrity: sha512-/HcYgtUSiJiot/XWGLOlGxPYUG65+/31V8oqk17vZLW1xlCoR4PampyePljOxY2n8/3jz9+tIFzICsyGujJZoA==}
+    engines: {node: '>=18.12.0'}
 
-  '@zkochan/js-yaml@0.0.6':
-    resolution: {integrity: sha512-nzvgl3VfhcELQ8LyVrYOru+UtAy1nrygk2+AGbTm8a5YcO6o8lSjAT+pfg3vJWxIoZKOUhrK6UU7xW/+00kQrg==}
+  '@zkochan/js-yaml@0.0.7':
+    resolution: {integrity: sha512-nrUSn7hzt7J6JWgWGz78ZYI8wj+gdIJdk0Ynjpp8l+trkn58Uqsf6RYrYkEK+3X18EX+TNdtJI0WxAtc+L84SQ==}
     hasBin: true
 
   JSONStream@1.3.5:
@@ -3072,8 +2903,8 @@ packages:
     resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==}
     engines: {node: '>= 6.0.0'}
 
-  agent-base@7.1.1:
-    resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==}
+  agent-base@7.1.3:
+    resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==}
     engines: {node: '>= 14'}
 
   aggregate-error@3.1.0:
@@ -3113,10 +2944,6 @@ packages:
     resolution: {integrity: sha512-7HSX4QQb4CspciLpVFwyRe79O3xsIZDDLER21kERQ71oaPodF8jL725AgJMFAYbooIqolJoRLuM81SpeUkpkvA==}
     engines: {node: '>=12'}
 
-  ansi-styles@3.2.1:
-    resolution: {integrity: sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==}
-    engines: {node: '>=4'}
-
   ansi-styles@4.3.0:
     resolution: {integrity: sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==}
     engines: {node: '>=8'}
@@ -3155,11 +2982,8 @@ packages:
     resolution: {integrity: sha512-COROpnaoap1E2F000S62r6A60uHZnmlvomhfyT2DlTcrY1OrBKn2UhH7qn5wTC9zMvD0AY7csdPSNwKP+7WiQw==}
     engines: {node: '>= 0.4'}
 
-  array-buffer-byte-length@1.0.0:
-    resolution: {integrity: sha512-LPuwb2P+NrQw3XhxGc36+XSvuBPopovXYTR9Ew++Du9Yb/bx5AzBfrIsBoj0EZUifjQU+sHL21sseZ3jerWO/A==}
-
-  array-buffer-byte-length@1.0.1:
-    resolution: {integrity: sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==}
+  array-buffer-byte-length@1.0.2:
+    resolution: {integrity: sha512-LHE+8BuR7RYGDKvnrmcuSq3tDcKv9OFEXQt/HpbZhY7V6h0zlUXutnAD82GiFx9rdieCMjkvtcsPqBwgUl1Iiw==}
     engines: {node: '>= 0.4'}
 
   array-differ@3.0.0:
@@ -3184,20 +3008,16 @@ packages:
     resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==}
     engines: {node: '>= 0.4'}
 
-  array.prototype.flat@1.3.2:
-    resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==}
+  array.prototype.flat@1.3.3:
+    resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==}
     engines: {node: '>= 0.4'}
 
-  array.prototype.flatmap@1.3.2:
-    resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==}
+  array.prototype.flatmap@1.3.3:
+    resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==}
     engines: {node: '>= 0.4'}
 
-  arraybuffer.prototype.slice@1.0.2:
-    resolution: {integrity: sha512-yMBKppFur/fbHu9/6USUe03bZ4knMYiwFBcyiaXB8Go0qNehwX6inYPzK9U0NeQvGxKthcmHcaR8P5MStSRBAw==}
-    engines: {node: '>= 0.4'}
-
-  arraybuffer.prototype.slice@1.0.3:
-    resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==}
+  arraybuffer.prototype.slice@1.0.4:
+    resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==}
     engines: {node: '>= 0.4'}
 
   arrify@1.0.1:
@@ -3220,11 +3040,15 @@ packages:
     resolution: {integrity: sha512-LElXdjswlqjWrPpJFg1Fx4wpkOCxj1TDHlSV4PlaRxHGWko024xICaa97ZkMfs6DRKlCguiAI+rbXv5GWwXIkg==}
     hasBin: true
 
-  astro@5.2.1:
-    resolution: {integrity: sha512-OYR2kUo9EqX6OYZ1OmM14xP8mjFwgrk1FzIr+3K3tS0gCCKJsXtfboCUhX3lODZFIsmY/on7NPZd+2PURA0R2Q==}
+  astro@5.1.9:
+    resolution: {integrity: sha512-QB3MH7Ul3gEvmHXEfvPkGpTZyyB/TBKQbm0kTHpo0BTEB7BvaY+wrcWiGEJBVDpVdEAKY9fM3zrJ0c7hZSXVlw==}
     engines: {node: ^18.17.1 || ^20.3.0 || >=22.0.0, npm: '>=9.6.5', pnpm: '>=7.1.0'}
     hasBin: true
 
+  async-function@1.0.0:
+    resolution: {integrity: sha512-hsU18Ae8CDTR6Kgu9DYf0EbCr/a5iGL0rytQDobUcdpYOKokk8LEjVphnXkDkgpi0wYVsqrXuP0bZxJaTqdgoA==}
+    engines: {node: '>= 0.4'}
+
   async@3.2.6:
     resolution: {integrity: sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA==}
 
@@ -3235,9 +3059,9 @@ packages:
     resolution: {integrity: sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==}
     engines: {node: '>= 4.0.0'}
 
-  automation-events@5.0.0:
-    resolution: {integrity: sha512-SkYa2YBwgRUJNsR5v6GxeJwP5IGnYtOMW37coplTOWMUpDYYrk5j8gGOhYa765rchRln/HssFzMAck/2P6zTFw==}
-    engines: {node: '>=14.15.4'}
+  automation-events@7.1.5:
+    resolution: {integrity: sha512-1t/XcUE/nhHtAyePNZHQMU3/Ka9E0CB1aA8FpzSwc1EBHMsZBtX6H5sBNngCL7pmlxoaDrpcwwHE7Kd6lkYoWA==}
+    engines: {node: '>=18.2.0'}
 
   autoprefixer@10.4.20:
     resolution: {integrity: sha512-XY25y5xSv/wEoqzDyXXME4AFfkZI0P23z6Fs3YgymDnKJkCGOnkL0iTxCa85UTqaSgfcqyf3UA6+c7wUvx/16g==}
@@ -3246,16 +3070,12 @@ packages:
     peerDependencies:
       postcss: ^8.1.0
 
-  available-typed-arrays@1.0.5:
-    resolution: {integrity: sha512-DMD0KiN46eipeziST1LPP/STfDU0sufISXmjSgvVsoU2tqxctQeASejWcfNtxYKqETM1UxQ8sp2OrSBWpHY6sw==}
-    engines: {node: '>= 0.4'}
-
   available-typed-arrays@1.0.7:
     resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==}
     engines: {node: '>= 0.4'}
 
-  axios@1.6.3:
-    resolution: {integrity: sha512-fWyNdeawGam70jXSVlKl+SUNVcL6j6W79CuSIPfi6HnDUmSCH6gyUys/HrqHeA/wU0Az41rRgean494d0Jb+ww==}
+  axios@1.7.9:
+    resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==}
 
   axobject-query@4.1.0:
     resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==}
@@ -3264,8 +3084,8 @@ packages:
   babel-plugin-add-module-exports@0.2.1:
     resolution: {integrity: sha512-3AN/9V/rKuv90NG65m4tTHsI04XrCKsWbztIcW7a8H5iIN7WlvWucRtVV0V/rT4QvtA11n5Vmp20fLwfMWqp6g==}
 
-  babel-plugin-polyfill-corejs2@0.4.11:
-    resolution: {integrity: sha512-sMEJ27L0gRHShOh5G54uAAPaiCOygY/5ratXuiyb2G46FmlSpc9eFCzYVyDiPxfNbwzA7mYahmjQc5q+CZQ09Q==}
+  babel-plugin-polyfill-corejs2@0.4.12:
+    resolution: {integrity: sha512-CPWT6BwvhrTO2d8QVorhTCQw9Y43zOu7G9HigcfxvepOU6b8o3tcWad6oVgZIsZCTt42FFv97aA7ZJsbM4+8og==}
     peerDependencies:
       '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
 
@@ -3274,8 +3094,8 @@ packages:
     peerDependencies:
       '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
 
-  babel-plugin-polyfill-regenerator@0.6.2:
-    resolution: {integrity: sha512-2R25rQZWP63nGwaAswvDazbPXfrM3HwVoBXK6HcqeKrSrL/JqcC/rDcf95l4r7LXLyxDXc8uQDa064GubtCABg==}
+  babel-plugin-polyfill-regenerator@0.6.3:
+    resolution: {integrity: sha512-LiWSbl4CRSIa5x/JAU6jZiG9eit9w6mz+yVMFwDE83LAWvt0AfGBoZ7HS/mkhrKuh2ZlzfVZYKoLjXdqw6Yt7Q==}
     peerDependencies:
       '@babel/core': ^7.4.0 || ^8.0.0-0 <8.0.0
 
@@ -3298,8 +3118,8 @@ packages:
     resolution: {integrity: sha512-cMtq4W5ZsEwcutJrVId+a/tjt8GSbS+h0oNkdl6+6rBuEv8Ot33Bevj5KPm40t309zuhVic8NjpuL42QCiJWWA==}
     engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
 
-  binary-extensions@2.2.0:
-    resolution: {integrity: sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==}
+  binary-extensions@2.3.0:
+    resolution: {integrity: sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==}
     engines: {node: '>=8'}
 
   bl@4.1.0:
@@ -3322,8 +3142,8 @@ packages:
     resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==}
     engines: {node: '>=8'}
 
-  browserslist@4.24.0:
-    resolution: {integrity: sha512-Rmb62sR1Zpjql25eSanFGEhAxcFwfA1K0GuQcLoaJBAcENegrQut3hYdhXFF1obQfiDyqIW/cLM5HSJ/9k884A==}
+  browserslist@4.24.4:
+    resolution: {integrity: sha512-KDi1Ny1gSePi1vm0q4oxSF8b4DR44GF4BbmS2YdhPLOEqd8pDviZOGH/GsmRwoWJ2+5Lr085X7naowMwKHDG1A==}
     engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7}
     hasBin: true
 
@@ -3346,8 +3166,8 @@ packages:
     resolution: {integrity: sha512-zhaCDicdLuWN5UbN5IMnFqNMhNfo919sH85y2/ea+5Yg9TsTkeZxpL+JLbp6cgYFS4sRLp3YV4S6yDuqVWHYOw==}
     engines: {node: '>=6'}
 
-  builtins@5.0.1:
-    resolution: {integrity: sha512-qwVpFEHNfhYJIzNRBvd2C1kyo6jz3ZSMPyyuR47OPdiKWlbYnZNyDWuyR175qDnAJLiCo5fBBqPb3RiXgWlkOQ==}
+  builtins@5.1.0:
+    resolution: {integrity: sha512-SW9lzGTLvWTP1AY8xeAMZimqDrIaSdLQUcVr9DMef51niJ022Ri87SwRRKYm4A6iHfkPaiVUu/Duw2Wc4J7kKg==}
 
   byte-size@8.1.1:
     resolution: {integrity: sha512-tUkzZWK0M/qdoLEqikxBWe4kumyuwjl3HO6zHTr4yEI23EojPtLYXdG1+AQY7MN0cGyNDvEaJ8wiYQm6P2bPxg==}
@@ -3361,14 +3181,16 @@ packages:
     resolution: {integrity: sha512-B+L5iIa9mgcjLbliir2th36yEwPftrzteHYujzsx3dFP/31GCHcIeS8f5MGd80odLOjaOvSpU3EEAmRQptkxLQ==}
     engines: {node: ^16.14.0 || >=18.0.0}
 
-  call-bind@1.0.2:
-    resolution: {integrity: sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==}
+  call-bind-apply-helpers@1.0.1:
+    resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==}
+    engines: {node: '>= 0.4'}
 
-  call-bind@1.0.5:
-    resolution: {integrity: sha512-C3nQxfFZxFRVoJoGKKI8y3MOEo129NQ+FgQ08iye+Mk4zNZZGdjfs06bVTr+DBSlA66Q2VEcMki/cUCP4SercQ==}
+  call-bind@1.0.8:
+    resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==}
+    engines: {node: '>= 0.4'}
 
-  call-bind@1.0.7:
-    resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==}
+  call-bound@1.0.3:
+    resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==}
     engines: {node: '>= 0.4'}
 
   callsites@3.1.0:
@@ -3391,8 +3213,8 @@ packages:
     resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==}
     engines: {node: '>=16'}
 
-  caniuse-lite@1.0.30001669:
-    resolution: {integrity: sha512-DlWzFDJqstqtIVx1zeSpIMLjunf5SmwOw0N2Ck/QSQdS8PLS4+9HrLaYei4w8BIAL7IB/UEDu889d8vhCTPA0w==}
+  caniuse-lite@1.0.30001695:
+    resolution: {integrity: sha512-vHyLade6wTgI2u1ec3WQBxv+2BrTERV28UXQu9LO6lZ9pYeMk34vjXFLOxo1A4UBA8XTL4njRQZdno/yYaSmWw==}
 
   catharsis@0.9.0:
     resolution: {integrity: sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==}
@@ -3405,10 +3227,6 @@ packages:
     resolution: {integrity: sha512-aGtmf24DW6MLHHG5gCx4zaI3uBq3KRtxeVs0DjFH6Z0rDNbsvTxFASFvdj79pxjxZ8/5u3PIiN3IwEIQkiiuPw==}
     engines: {node: '>=12'}
 
-  chalk@2.4.2:
-    resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==}
-    engines: {node: '>=4'}
-
   chalk@4.1.0:
     resolution: {integrity: sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==}
     engines: {node: '>=10'}
@@ -3417,8 +3235,8 @@ packages:
     resolution: {integrity: sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==}
     engines: {node: '>=10'}
 
-  chalk@5.3.0:
-    resolution: {integrity: sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==}
+  chalk@5.4.1:
+    resolution: {integrity: sha512-zgVZuo2WcZgfUEmsn6eO3kINexW8RAE4maiQ8QNs8CtpPCSyMiYsULR3HQYkm3w8FIA3SberyMJMSldGsW+U3w==}
     engines: {node: ^12.17.0 || ^14.13 || >=16.0.0}
 
   character-entities-html4@2.1.0:
@@ -3458,10 +3276,6 @@ packages:
     resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==}
     engines: {node: '>=8'}
 
-  ci-info@4.0.0:
-    resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==}
-    engines: {node: '>=8'}
-
   ci-info@4.1.0:
     resolution: {integrity: sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==}
     engines: {node: '>=8'}
@@ -3536,16 +3350,10 @@ packages:
   collapse-white-space@2.1.0:
     resolution: {integrity: sha512-loKTxY1zCOuG4j9f6EPnuyyYkf58RnhhWTvRoZEokgB+WbdXehfjFviyOVYkqzEWz1Q5kRiZdBYS5SwxbQYwzw==}
 
-  color-convert@1.9.3:
-    resolution: {integrity: sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==}
-
   color-convert@2.0.1:
     resolution: {integrity: sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==}
     engines: {node: '>=7.0.0'}
 
-  color-name@1.1.3:
-    resolution: {integrity: sha512-72fSenhMw2HZMTVHeCA9KCmpEIbzWiQsjN+BHcBbS9vr1mtt+vJjPdksIBNUmKAW8TFUDPJK5SUU3QhE9NEXDw==}
-
   color-name@1.1.4:
     resolution: {integrity: sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==}
 
@@ -3568,8 +3376,8 @@ packages:
     resolution: {integrity: sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==}
     engines: {node: '>= 0.8'}
 
-  comlink@4.3.1:
-    resolution: {integrity: sha512-+YbhUdNrpBZggBAHWcgQMLPLH1KDF3wJpeqrCKieWQ8RL7atmgsgTQko1XEBK6PsecfopWNntopJ+ByYG1lRaA==}
+  comlink@4.4.2:
+    resolution: {integrity: sha512-OxGdvBmJuNKSCMO4NTl1L47VRp6xn2wG4F/2hYzB6tiCb709otOxtEYCSvK80PtjODfXXZu8ds+Nw5kVCjqd2g==}
 
   comma-separated-tokens@2.0.3:
     resolution: {integrity: sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==}
@@ -3650,8 +3458,8 @@ packages:
     resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==}
     engines: {node: '>= 0.6'}
 
-  core-js-compat@3.38.1:
-    resolution: {integrity: sha512-JRH6gfXxGmrzF3tZ57lFx97YARxCXPaMzPo6jELZhv88pBH5VXpQ+y0znKGlFnzuaihqhLbefxSJxWJMPtfDzw==}
+  core-js-compat@3.40.0:
+    resolution: {integrity: sha512-0XEDpr5y5mijvw8Lbc6E5AkjrHfp7eEoPlu36SWeAbcL8fn1G1ANe8DBlo2XoNN89oVpxWwOjYIPVzR4ZvsKCQ==}
 
   core-util-is@1.0.3:
     resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==}
@@ -3673,10 +3481,6 @@ packages:
   crelt@1.0.6:
     resolution: {integrity: sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==}
 
-  cross-spawn@7.0.3:
-    resolution: {integrity: sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==}
-    engines: {node: '>= 8'}
-
   cross-spawn@7.0.6:
     resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==}
     engines: {node: '>= 8'}
@@ -3693,8 +3497,8 @@ packages:
     engines: {node: '>=4'}
     hasBin: true
 
-  csstype@3.1.1:
-    resolution: {integrity: sha512-DJR/VvkAvSZW9bTouZue2sSxDwdTN92uHjqeKVm+0dAqdfNykRzQ95tay8aXMBAAPpUiq4Qcug2L7neoRh2Egw==}
+  csstype@3.1.3:
+    resolution: {integrity: sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==}
 
   csv-generate@4.4.2:
     resolution: {integrity: sha512-W6nVsf+rz0J3yo9FOjeer7tmzBJKaTTxf7K0uw6GZgRocZYPVpuSWWa5/aoWWrjQZj4/oNIKTYapOM7hiNjVMA==}
@@ -3717,16 +3521,16 @@ packages:
     resolution: {integrity: sha512-0R9ikRb668HB7QDxT1vkpuUBtqc53YyAwMwGeUFKRojY/NWKvdZ+9UYtRfGmhqNbRkTSVpMbmyhXipFFv2cb/A==}
     engines: {node: '>= 12'}
 
-  data-view-buffer@1.0.1:
-    resolution: {integrity: sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==}
+  data-view-buffer@1.0.2:
+    resolution: {integrity: sha512-EmKO5V3OLXh1rtK2wgXRansaK1/mtVdTUEiEI0W8RkvgT05kfxaH29PliLnpLP73yYO6142Q72QNa8Wx/A5CqQ==}
     engines: {node: '>= 0.4'}
 
-  data-view-byte-length@1.0.1:
-    resolution: {integrity: sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==}
+  data-view-byte-length@1.0.2:
+    resolution: {integrity: sha512-tuhGbE6CfTM9+5ANGf+oQb72Ky/0+s3xKUpHvShfiz2RxMFgFPjsXuRLBVMtvMs15awe45SRb83D6wH4ew6wlQ==}
     engines: {node: '>= 0.4'}
 
-  data-view-byte-offset@1.0.0:
-    resolution: {integrity: sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==}
+  data-view-byte-offset@1.0.1:
+    resolution: {integrity: sha512-BS8PfmtDGnrgYdOonGZQdLZslWIeCGFP9tpan0hi1Co2Zr2NKADsvGYA8XxuG/4UWgJ6Cjtv+YJnB6MM69QGlQ==}
     engines: {node: '>= 0.4'}
 
   date-fns@4.1.0:
@@ -3755,15 +3559,6 @@ packages:
       supports-color:
         optional: true
 
-  debug@4.3.7:
-    resolution: {integrity: sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==}
-    engines: {node: '>=6.0'}
-    peerDependencies:
-      supports-color: '*'
-    peerDependenciesMeta:
-      supports-color:
-        optional: true
-
   debug@4.4.0:
     resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==}
     engines: {node: '>=6.0'}
@@ -3814,10 +3609,6 @@ packages:
   defaults@1.0.4:
     resolution: {integrity: sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==}
 
-  define-data-property@1.1.1:
-    resolution: {integrity: sha512-E7uGkTzkk1d0ByLeSc6ZsFS79Axg+m1P/VsgYsxHgiuc3tFSj+MjMIwe90FC4lOAZzNBdY7kkO2P2wKdsQ1vgQ==}
-    engines: {node: '>= 0.4'}
-
   define-data-property@1.1.4:
     resolution: {integrity: sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==}
     engines: {node: '>= 0.4'}
@@ -3861,10 +3652,6 @@ packages:
     engines: {node: '>=0.10'}
     hasBin: true
 
-  detect-libc@2.0.1:
-    resolution: {integrity: sha512-463v3ZeIrcWtdgIg6vI6XUncguvr2TnGl4SzDXinkt9mSLpBJKXT3mW6xT3VQdDN11+WVs29pgvivTc4Lp8v+w==}
-    engines: {node: '>=8'}
-
   detect-libc@2.0.3:
     resolution: {integrity: sha512-bwy0MGW55bG41VqxxypOsdSdGqLwXPI/focwgTYCFMbdUiBAxLg9CFzG08sz2aqzknwiX7Hkl0bQENjg8iLByw==}
     engines: {node: '>=8'}
@@ -3951,18 +3738,22 @@ packages:
     resolution: {integrity: sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q==}
     engines: {node: '>=8'}
 
-  dotenv-expand@10.0.0:
-    resolution: {integrity: sha512-GopVGCpVS1UKH75VKHGuQFqS1Gusej0z4FyQkPdwjil2gNIv+LNsqBlboOzpJFZKVT95GkCyWJbBSdFEFUWI2A==}
+  dotenv-expand@11.0.7:
+    resolution: {integrity: sha512-zIHwmZPRshsCdpMDyVsqGmgyP0yT8GAgXUnkdAoJisxvf33k7yO6OuoKmcTGuXPWSsm8Oh88nZicRLA9Y0rUeA==}
     engines: {node: '>=12'}
 
-  dotenv@16.3.1:
-    resolution: {integrity: sha512-IPzF4w4/Rd94bA9imS68tZBaYyBWSCE47V1RGuMrB94iyTOIEwRmVL2x/4An+6mETpLrKJ5hQkB8W4kFAadeIQ==}
+  dotenv@16.4.7:
+    resolution: {integrity: sha512-47qPchRCykZC03FhkYAhrvwU4xDBFIj1QPqaarj6mdM/hgUzfPHcpkHJOn3mJAufFeeAxAzeGsr5X0M4k6fLZQ==}
     engines: {node: '>=12'}
 
   dset@3.1.4:
     resolution: {integrity: sha512-2QF/g9/zTaPDc3BjNcVTGoBbXBgYfMTTceLaYcFJ/W9kggFUkhxD/hMEeuLKbugyef9SqAx8cpgwlIP/jinUTA==}
     engines: {node: '>=4'}
 
+  dunder-proto@1.0.1:
+    resolution: {integrity: sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==}
+    engines: {node: '>= 0.4'}
+
   duplexer@0.1.2:
     resolution: {integrity: sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==}
 
@@ -3974,8 +3765,8 @@ packages:
     engines: {node: '>=0.10.0'}
     hasBin: true
 
-  electron-to-chromium@1.5.41:
-    resolution: {integrity: sha512-dfdv/2xNjX0P8Vzme4cfzHqnPm5xsZXwsolTYr0eyW18IUmNyG08vL+fttvinTfhKfIKdRoqkDIC9e9iWQCNYQ==}
+  electron-to-chromium@1.5.88:
+    resolution: {integrity: sha512-K3C2qf1o+bGzbilTDCTBhTQcMS9KW60yTAaTeeXsfvQuTDDwlokLam/AdqlqcSy9u4UainDgsHV23ksXAOgamw==}
 
   emoji-regex-xs@1.0.0:
     resolution: {integrity: sha512-LRlerrMYoIDrT6jgpeZ2YYl/L8EulRTt5hQcYjy5AInh7HWXKimpqx68aknBFpGL2+/IcogTcaydJEgaTmOpDg==}
@@ -3995,10 +3786,6 @@ packages:
   end-of-stream@1.4.4:
     resolution: {integrity: sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==}
 
-  enhanced-resolve@5.17.1:
-    resolution: {integrity: sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==}
-    engines: {node: '>=10.13.0'}
-
   enhanced-resolve@5.18.0:
     resolution: {integrity: sha512-0/r0MySGYG8YqlayBZ6MuCfECmHFdJ5qyPh8s8wa5Hnm6SaFLSK1VYCbj+NKp090Nm1caZhD+QTnmxO7esYGyQ==}
     engines: {node: '>=10.13.0'}
@@ -4026,16 +3813,12 @@ packages:
   error-ex@1.3.2:
     resolution: {integrity: sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==}
 
-  es-abstract@1.22.3:
-    resolution: {integrity: sha512-eiiY8HQeYfYH2Con2berK+To6GrK2RxbPawDkGq4UiCQQfZHb6wX9qQqkbpPqaxQFcl8d9QzZqo0tGE0VcrdwA==}
+  es-abstract@1.23.9:
+    resolution: {integrity: sha512-py07lI0wjxAC/DcfK1S6G7iANonniZwTISvdPzk9hzeH0IZIshbuuFxLIU96OyF89Yb9hiqWn8M/bY83KY5vzA==}
     engines: {node: '>= 0.4'}
 
-  es-abstract@1.23.3:
-    resolution: {integrity: sha512-e+HfNH61Bj1X9/jLc5v1owaLYuHdeHHSQlkhCBiTK8rBvKaULl/beGMxwrMXjpYrv4pz22BlY570vVePA2ho4A==}
-    engines: {node: '>= 0.4'}
-
-  es-define-property@1.0.0:
-    resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==}
+  es-define-property@1.0.1:
+    resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==}
     engines: {node: '>= 0.4'}
 
   es-errors@1.3.0:
@@ -4045,26 +3828,19 @@ packages:
   es-module-lexer@1.6.0:
     resolution: {integrity: sha512-qqnD1yMU6tk/jnaMosogGySTZP8YtUgAffA9nMN+E/rjxcfRQ6IEk7IiozUjgxKoFHBGjTLnrHB/YC45r/59EQ==}
 
-  es-object-atoms@1.0.0:
-    resolution: {integrity: sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==}
+  es-object-atoms@1.1.1:
+    resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==}
     engines: {node: '>= 0.4'}
 
-  es-set-tostringtag@2.0.1:
-    resolution: {integrity: sha512-g3OMbtlwY3QewlqAiMLI47KywjWZoEytKr8pf6iTC8uJq5bIAH52Z9pnQ8pVL6whrCto53JZDuUIsifGeLorTg==}
+  es-set-tostringtag@2.1.0:
+    resolution: {integrity: sha512-j6vWzfrGVfyXxge+O0x5sh6cvxAog0a/4Rdd2K36zCMV5eJ+/+tOAngRO8cODMNWbVRdVlmGZQL2YS3yR8bIUA==}
     engines: {node: '>= 0.4'}
 
-  es-set-tostringtag@2.0.3:
-    resolution: {integrity: sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==}
-    engines: {node: '>= 0.4'}
-
-  es-shim-unscopables@1.0.0:
-    resolution: {integrity: sha512-Jm6GPcCdC30eMLbZ2x8z2WuRwAws3zTBBKuusffYVUrNj/GVSUAZ+xKMaUpfNDR5IbyNA5LJbaecoUVbmUcB1w==}
-
   es-shim-unscopables@1.0.2:
     resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==}
 
-  es-to-primitive@1.2.1:
-    resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==}
+  es-to-primitive@1.3.0:
+    resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==}
     engines: {node: '>= 0.4'}
 
   esast-util-from-estree@2.0.0:
@@ -4073,20 +3849,11 @@ packages:
   esast-util-from-js@2.0.1:
     resolution: {integrity: sha512-8Ja+rNJ0Lt56Pcf3TAmpBZjmx8ZcK5Ts4cAzIOjsjevg9oSXJnl6SUQ2EevU8tv3h6ZLWmoKL5H4fgWvdvfETw==}
 
-  esbuild@0.21.5:
-    resolution: {integrity: sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==}
-    engines: {node: '>=12'}
-    hasBin: true
-
   esbuild@0.24.2:
     resolution: {integrity: sha512-+9egpBW8I3CD5XPe0n6BfT5fxLzxrlDzqydF3aviG+9ni1lDC/OvMHcxqEFV0+LANZG5R1bFMWfUrjVsdwxJvA==}
     engines: {node: '>=18'}
     hasBin: true
 
-  escalade@3.1.1:
-    resolution: {integrity: sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==}
-    engines: {node: '>=6'}
-
   escalade@3.2.0:
     resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==}
     engines: {node: '>=6'}
@@ -4152,8 +3919,8 @@ packages:
       '@typescript-eslint/parser':
         optional: true
 
-  eslint-plugin-n@15.6.1:
-    resolution: {integrity: sha512-R9xw9OtCRxxaxaszTQmQAlPgM+RdGjaL1akWuY/Fv9fRAi8Wj4CUKc6iYVG8QNRjRuo8/BqVYIpfqberJUEacA==}
+  eslint-plugin-n@15.7.0:
+    resolution: {integrity: sha512-jDex9s7D/Qial8AGVIHq4W7NswpUD5DPDL2RH8Lzd9EloWUuvUkHfv4FRLMipH5q2UtyurorBkPeNi1wVWNh3Q==}
     engines: {node: '>=12.22.0'}
     peerDependencies:
       eslint: '>=7.0.0'
@@ -4184,10 +3951,6 @@ packages:
     resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==}
     engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0}
 
-  eslint-visitor-keys@4.1.0:
-    resolution: {integrity: sha512-Q7lok0mqMUSf5a/AdAZkA5a/gHcO6snwQClVNNvFKCAVlxXucdU8pKydU5ZVZjBx5xr37vGbFFWtLQYreLzrZg==}
-    engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
-
   eslint-visitor-keys@4.2.0:
     resolution: {integrity: sha512-UyLnSehNt62FFhSwjZlHmeokpRK59rcz29j+F1/aDgbkbRTk7wIc9XzdoasMUbRNKDM0qQt/+BJ4BrpFeABemw==}
     engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -4202,10 +3965,6 @@ packages:
       jiti:
         optional: true
 
-  espree@10.2.0:
-    resolution: {integrity: sha512-upbkBJbckcCNBDBDXEbuhjbP68n+scUd3k/U2EkyM9nw+I/jPiL4cLF/Al06CF96wRltFda16sxDFrxsI1v0/g==}
-    engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
-
   espree@10.3.0:
     resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==}
     engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0}
@@ -4215,8 +3974,8 @@ packages:
     engines: {node: '>=4'}
     hasBin: true
 
-  esquery@1.5.0:
-    resolution: {integrity: sha512-YQLXUplAwJgCydQ78IMJywZCceoqk1oH01OERdSAJc/7U2AylwjhSCLDEtqwg811idIS/9fIU5GjG73IgjKMVg==}
+  esquery@1.6.0:
+    resolution: {integrity: sha512-ca9pw9fomFcKPvFLXhBKUK90ZvGibiGOvRJNbjljY7s7uq/5YO4BOzcYtJqExdx99rF6aAcnRxHmcUHcz6sQsg==}
     engines: {node: '>=0.10'}
 
   esrecurse@4.3.0:
@@ -4297,10 +4056,6 @@ packages:
   fast-deep-equal@3.1.3:
     resolution: {integrity: sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==}
 
-  fast-glob@3.3.2:
-    resolution: {integrity: sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==}
-    engines: {node: '>=8.6.0'}
-
   fast-glob@3.3.3:
     resolution: {integrity: sha512-7MptL8U0cqcFdzIzwOTHoilX9x5BrNqye7Z/LuC7kCMRio1EMSyqRK3BEAUD7sXRq4iT4AzTVuZdhgQ2TCvYLg==}
     engines: {node: '>=8.6.0'}
@@ -4315,18 +4070,18 @@ packages:
     resolution: {integrity: sha512-vHj0sfq6yB37b/RAAsAJ2DzIp0LR5NlUit7nYFp2YfTUcKL9m/Yk0f0kvYPV4oiuFYXdtO5scs3LQX7qiPAVYQ==}
     engines: {node: '>=18.2.0'}
 
-  fast-uri@3.0.3:
-    resolution: {integrity: sha512-aLrHthzCjH5He4Z2H9YZ+v6Ujb9ocRuW6ZzkJQOrTxleEijANq4v1TsaPaVG1PZcuurEzrLcWRyYBYXD5cEiaw==}
+  fast-uri@3.0.6:
+    resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==}
 
-  fast-xml-parser@4.5.0:
-    resolution: {integrity: sha512-/PlTQCI96+fZMAOLMZK4CWG1ItCbfZ/0jx7UIJFChPNrx7tcEgerUgWbeieCM9MfHInUDyK8DWYZ+YrywDJuTg==}
+  fast-xml-parser@4.5.1:
+    resolution: {integrity: sha512-y655CeyUQ+jj7KBbYMc4FG01V8ZQqjN+gDYGJ50RtfsUB8iG9AmwmwoAgeKLJdmueKKMrH1RJ7yXHTSoczdv5w==}
     hasBin: true
 
-  fastq@1.15.0:
-    resolution: {integrity: sha512-wBrocU2LCXXa+lWBt8RoIRD89Fi8OdABODa/kEnyeyjS5aZO5/GNvI5sEINADqP/h8M29UHTHUb53sUu5Ihqdw==}
+  fastq@1.18.0:
+    resolution: {integrity: sha512-QKHXPW0hD8g4UET03SdOdunzSouc9N4AuHdsX8XNcTsuz+yYFILVNIX4l9yHABMhiEI9Db0JTTIpu0wB+Y1QQw==}
 
-  fdir@6.4.2:
-    resolution: {integrity: sha512-KnhMXsKSPZlAhp7+IjUkRZKPb4fUyccpDrdFXbi4QL1qkmFh9kVY09Yox+n4MaOb3lHZ1Tv829C3oaaXoMYPDQ==}
+  fdir@6.4.3:
+    resolution: {integrity: sha512-PMXmW2y1hDDfTSRc9gaXIuCCRpuoz3Kaz8cUelp3smouvfT632ozg2vrT6lJsHKKOF59YLbOGfAWGUcKEfRMQw==}
     peerDependencies:
       picomatch: ^3 || ^4
     peerDependenciesMeta:
@@ -4390,9 +4145,6 @@ packages:
     resolution: {integrity: sha512-b6suED+5/3rTpUBdG1gupIl8MPFCAMA0QXwmljLhvCUKcUvdE4gWky9zpuGCcXHOsz4J9wPGNWq6OKpmIzz3hQ==}
     hasBin: true
 
-  flatted@3.3.1:
-    resolution: {integrity: sha512-X8cqMLLie7KsNUDSdzeN8FYK9rEt4Dt67OsG/DNGnYTSDBG4uFAJFBnUeiV+zCVAvwFy56IjM9sH51jVaEhNxw==}
-
   flatted@3.3.2:
     resolution: {integrity: sha512-AiwGJM8YcNOaobumgtng+6NHuOqC3A7MixFeDafM3X9cIUM+xUXoS5Vfgf+OihAYe20fxqNM9yPBXJzRtZ/4eA==}
 
@@ -4400,8 +4152,8 @@ packages:
     resolution: {integrity: sha512-9UbaD6XdAL97+k/n+N7JwX46K/M6Zc6KcFYskrYL8wbBV/Uyk0CTAMY0VT+qiK5PM7AIc9aTWYtq65U7T+aCNQ==}
     engines: {node: '>=8'}
 
-  follow-redirects@1.15.2:
-    resolution: {integrity: sha512-VQLG33o04KaQ8uYi2tVNbdrWp1QWxNNea+nmIB4EVM28v0hmP17z7aG1+wAkNzVq4KeXTq3221ye5qTJP91JwA==}
+  follow-redirects@1.15.9:
+    resolution: {integrity: sha512-gew4GsXizNgdoRyqmyfMHyAmXsZDk6mHkSxZFCzW9gwlbtOW44CDtYavM+y+72qD/Vq2l550kMF52DT8fOLJqQ==}
     engines: {node: '>=4.0'}
     peerDependencies:
       debug: '*'
@@ -4409,15 +4161,16 @@ packages:
       debug:
         optional: true
 
-  for-each@0.3.3:
-    resolution: {integrity: sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==}
+  for-each@0.3.4:
+    resolution: {integrity: sha512-kKaIINnFpzW6ffJNDjjyjrk21BkDx38c0xa/klsT8VzLCaMEefv4ZTacrcVR4DmgTeBra++jMDAfS/tS799YDw==}
+    engines: {node: '>= 0.4'}
 
   foreground-child@3.3.0:
     resolution: {integrity: sha512-Ld2g8rrAyMYFXBhEqMz8ZAHBi4J4uS1i/CxGMDnjyFWddMXLVcDp051DZfu+t7+ab7Wv6SMqpWmyFIj5UbfFvg==}
     engines: {node: '>=14'}
 
-  form-data@4.0.0:
-    resolution: {integrity: sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==}
+  form-data@4.0.1:
+    resolution: {integrity: sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==}
     engines: {node: '>= 6'}
 
   formdata-polyfill@4.0.10:
@@ -4434,11 +4187,14 @@ packages:
   from2@2.3.0:
     resolution: {integrity: sha512-OMcX/4IC/uqEPVgGeyfN22LJk6AZrMkRZHxcHBMBvHScDGgwTm2GT2Wkgtocyd3JfZffjj2kYUDXXII0Fk9W0g==}
 
+  front-matter@4.0.2:
+    resolution: {integrity: sha512-I8ZuJ/qG92NWX8i5x1Y8qyj3vizhXS31OxjKDu3LKP+7/qBgfIKValiZIEwoVoJKUHlhWtYrktkxV1XsX+pPlg==}
+
   fs-constants@1.0.0:
     resolution: {integrity: sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==}
 
-  fs-extra@11.2.0:
-    resolution: {integrity: sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==}
+  fs-extra@11.3.0:
+    resolution: {integrity: sha512-Z4XaCL6dUDHfP/jT25jJKMmtxvuwbkrD1vNSMFlo9lNLY2c5FHYSQgHPRZUjAB26TpDEoW9HCOgplrdbaPV/ew==}
     engines: {node: '>=14.14'}
 
   fs-extra@9.1.0:
@@ -4464,8 +4220,8 @@ packages:
   function-bind@1.1.2:
     resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==}
 
-  function.prototype.name@1.1.6:
-    resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==}
+  function.prototype.name@1.1.8:
+    resolution: {integrity: sha512-e5iwyodOHhbMr/yNrc7fDYG4qlbIvI5gajyzPnb5TCwyhjApznQh1BMFou9b30SevY43gCJKXycoCBjMbsuW0Q==}
     engines: {node: '>= 0.4'}
 
   functions-have-names@1.2.3:
@@ -4487,11 +4243,8 @@ packages:
     resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==}
     engines: {node: '>=18'}
 
-  get-intrinsic@1.2.2:
-    resolution: {integrity: sha512-0gSo4ml/0j98Y3lngkFEot/zhiCeWsbYIlZ+uZOVgzLyLaUw7wxUL+nCTP0XJvJg1AXulJRI3UJi8GsbDuxdGA==}
-
-  get-intrinsic@1.2.4:
-    resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==}
+  get-intrinsic@1.2.7:
+    resolution: {integrity: sha512-VW6Pxhsrk0KAOqs3WEd0klDiF/+V7gQOpAvY1jVU/LHmaD/kQO4523aiJuikX/QAKYiW6x8Jh+RJej1almdtCA==}
     engines: {node: '>= 0.4'}
 
   get-own-enumerable-property-symbols@3.0.2:
@@ -4506,6 +4259,10 @@ packages:
     resolution: {integrity: sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ==}
     engines: {node: '>=8'}
 
+  get-proto@1.0.1:
+    resolution: {integrity: sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==}
+    engines: {node: '>= 0.4'}
+
   get-stdin@8.0.0:
     resolution: {integrity: sha512-sY22aA6xchAzprjyqmSEQv4UbAAzRN0L2dQB0NlN5acTTK9Don6nhoc3eAbUnpZiCANAMfd/+40kVdKfFygohg==}
     engines: {node: '>=10'}
@@ -4514,16 +4271,8 @@ packages:
     resolution: {integrity: sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==}
     engines: {node: '>=10'}
 
-  get-stream@6.0.1:
-    resolution: {integrity: sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==}
-    engines: {node: '>=10'}
-
-  get-symbol-description@1.0.0:
-    resolution: {integrity: sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw==}
-    engines: {node: '>= 0.4'}
-
-  get-symbol-description@1.0.2:
-    resolution: {integrity: sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==}
+  get-symbol-description@1.1.0:
+    resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==}
     engines: {node: '>= 0.4'}
 
   git-raw-commits@3.0.0:
@@ -4567,10 +4316,6 @@ packages:
     resolution: {integrity: sha512-7Bv8RF0k6xjo7d4A/PxYLbUCfb6c+Vpd2/mB2yRDlew7Jb5hEXiCD9ibfO7wpk8i4sevK6DFny9h7EYbM3/sHg==}
     hasBin: true
 
-  glob@7.1.4:
-    resolution: {integrity: sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==}
-    deprecated: Glob versions prior to v9 are no longer supported
-
   glob@7.2.3:
     resolution: {integrity: sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==}
     deprecated: Glob versions prior to v9 are no longer supported
@@ -4591,10 +4336,6 @@ packages:
     resolution: {integrity: sha512-OkToC372DtlQeje9/zHIo5CT8lRP/FUgEOKBEhU4e0abL7J7CD24fD9ohiLN5hagG/kWCYj4K5oaxxtj2Z0Dig==}
     engines: {node: '>=18'}
 
-  globalthis@1.0.3:
-    resolution: {integrity: sha512-sFdI5LyBiNTHjRd7cGPWapiHWMOXKyuBNX/cWJ3NfzrZQVa8GI/8cofCl74AOVqq9W5kNmguTIzJ/1s2gyI9wA==}
-    engines: {node: '>= 0.4'}
-
   globalthis@1.0.4:
     resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==}
     engines: {node: '>= 0.4'}
@@ -4634,11 +4375,9 @@ packages:
   google-closure-library@20221102.0.0:
     resolution: {integrity: sha512-M5+LWPS99tMB9dOGpZjLT9CdIYpnwBZiwB+dCmZFOOvwJiOWytntzJ/a/hoNF6zxD15l3GWwRJiEkL636D6DRQ==}
 
-  gopd@1.0.1:
-    resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==}
-
-  graceful-fs@4.2.10:
-    resolution: {integrity: sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==}
+  gopd@1.2.0:
+    resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==}
+    engines: {node: '>= 0.4'}
 
   graceful-fs@4.2.11:
     resolution: {integrity: sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==}
@@ -4655,37 +4394,23 @@ packages:
     resolution: {integrity: sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA==}
     engines: {node: '>=6'}
 
-  has-bigints@1.0.2:
-    resolution: {integrity: sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==}
-
-  has-flag@3.0.0:
-    resolution: {integrity: sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw==}
-    engines: {node: '>=4'}
+  has-bigints@1.1.0:
+    resolution: {integrity: sha512-R3pbpkcIqv2Pm3dUwgjclDRVmWpTJW2DcMzcIhEXEx1oh/CEMObMm3KLmRJOdvhM7o4uQBnwr8pzRK2sJWIqfg==}
+    engines: {node: '>= 0.4'}
 
   has-flag@4.0.0:
     resolution: {integrity: sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==}
     engines: {node: '>=8'}
 
-  has-property-descriptors@1.0.0:
-    resolution: {integrity: sha512-62DVLZGoiEBDHQyqG4w9xCuZ7eJEwNmJRWw2VY84Oedb7WFcA27fiEVe8oUQx9hAUJ4ekurquucTGwsyO1XGdQ==}
-
   has-property-descriptors@1.0.2:
     resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==}
 
-  has-proto@1.0.1:
-    resolution: {integrity: sha512-7qE+iP+O+bgF9clE5+UoBFzE65mlBiVj3tKCrlNQ0Ogwm0BjpT/gK4SlLYDMybDh5I3TCTKnPPa0oMG7JDYrhg==}
+  has-proto@1.2.0:
+    resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==}
     engines: {node: '>= 0.4'}
 
-  has-proto@1.0.3:
-    resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==}
-    engines: {node: '>= 0.4'}
-
-  has-symbols@1.0.3:
-    resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==}
-    engines: {node: '>= 0.4'}
-
-  has-tostringtag@1.0.0:
-    resolution: {integrity: sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ==}
+  has-symbols@1.1.0:
+    resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==}
     engines: {node: '>= 0.4'}
 
   has-tostringtag@1.0.2:
@@ -4695,8 +4420,8 @@ packages:
   has-unicode@2.0.1:
     resolution: {integrity: sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==}
 
-  has@1.0.3:
-    resolution: {integrity: sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==}
+  has@1.0.4:
+    resolution: {integrity: sha512-qdSAmqLF6209RFj4VVItywPMbm3vWylknmB3nvNiUIs72xAimcM8nVYxYr7ncvZq5qzk9MKIZR8ijqD/1QuYjQ==}
     engines: {node: '>= 0.4.0'}
 
   hasown@2.0.2:
@@ -4706,8 +4431,8 @@ packages:
   hast-util-from-html@2.0.3:
     resolution: {integrity: sha512-CUSRHXyKjzHov8yKsQjGOElXy/3EKpyX56ELnkHH34vDVw1N1XSQ1ZcAvTyAPtGqLTuKP/uxM+aLkSPqF/EtMw==}
 
-  hast-util-from-parse5@8.0.1:
-    resolution: {integrity: sha512-Er/Iixbc7IEa7r/XLtuG52zoqn/b3Xng/w6aZQ0xGVxzhw5xUFxcRqdPzP6yFi/4HBYRaifaI5fQ1RH8n0ZeOQ==}
+  hast-util-from-parse5@8.0.2:
+    resolution: {integrity: sha512-SfMzfdAi/zAoZ1KkFEyyeXBn7u/ShQrfd675ZEE9M3qj+PMFX05xubzRyF76CCSJu8au9jgVxDV1+okFvgZU4A==}
 
   hast-util-has-property@1.0.4:
     resolution: {integrity: sha512-ghHup2voGfgFoHMGnaLHOjbYFACKrRh9KFttdCzMCbFoBMJXiNi2+XTrPP8+q6cDJM/RSqlCfVWrjp1H201rZg==}
@@ -4721,11 +4446,11 @@ packages:
   hast-util-parse-selector@4.0.0:
     resolution: {integrity: sha512-wkQCkSYoOGCRKERFWcxMVMOcYE2K1AaNLU8DXS9arxnLOUEWbOXKXiJUNzEpqZ3JOKpnha3jkFrumEjVliDe7A==}
 
-  hast-util-raw@9.0.1:
-    resolution: {integrity: sha512-5m1gmba658Q+lO5uqL5YNGQWeh1MYWZbZmWrM5lncdcuiXuo5E2HT/CIOp0rLF8ksfSwiCVJ3twlgVRyTGThGA==}
+  hast-util-raw@9.1.0:
+    resolution: {integrity: sha512-Y8/SBAHkZGoNkpzqqfCldijcuUKh7/su31kEBp67cFY09Wy0mTRgtsLYsiIxMJxlu0f6AA5SUTbDR8K0rxnbUw==}
 
-  hast-util-to-estree@3.1.0:
-    resolution: {integrity: sha512-lfX5g6hqVh9kjS/B9E2gSkvHH4SZNiQFiqWS0x9fENzEl+8W12RqdRxX6d/Cwxi30tPQs3bIO+aolQJNp1bIyw==}
+  hast-util-to-estree@3.1.1:
+    resolution: {integrity: sha512-IWtwwmPskfSmma9RpzCappDUitC8t5jhAynHhc1m2+5trOgsrp7txscUSavc5Ic8PATyAjfrCK1wgtxh2cICVQ==}
 
   hast-util-to-html@9.0.4:
     resolution: {integrity: sha512-wxQzXtdbhiwGAUKrnQJXlOPmHnEehzphwkK7aluUPQ+lEc1xefC8pblMgpp2w5ldBTEfveRIrADcrhGIWrlTDA==}
@@ -4736,8 +4461,8 @@ packages:
   hast-util-to-parse5@8.0.0:
     resolution: {integrity: sha512-3KKrV5ZVI8if87DVSi1vDeByYrkGzg4mEfeu4alwgmmIeARiBLKCZS2uw5Gb6nU9x9Yufyj3iudm6i7nl52PFw==}
 
-  hast-util-to-string@3.0.0:
-    resolution: {integrity: sha512-OGkAxX1Ua3cbcW6EJ5pT/tslVb90uViVkcJ4ZZIMW/R33DX/AkcJcRrPebPwJkHYwlDHXz4aIwvAAaAdtrACFA==}
+  hast-util-to-string@3.0.1:
+    resolution: {integrity: sha512-XelQVTDWvqcl3axRfI0xSeoVKzyIFPwsAGSLIsKdJKQMXDYJS4WYrBNF/8J7RdhIcFI2BOHgAifggsvsxp/3+A==}
 
   hast-util-to-text@4.0.2:
     resolution: {integrity: sha512-KK6y/BN8lbaq654j7JgBydev7wuNMcID54lkRav1P0CaE1e47P72AWWPiGKXTJU271ooYzcvTAn/Zt0REnvc7A==}
@@ -4745,8 +4470,8 @@ packages:
   hast-util-whitespace@3.0.0:
     resolution: {integrity: sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==}
 
-  hastscript@8.0.0:
-    resolution: {integrity: sha512-dMOtzCEd3ABUeSIISmrETiKuyydk1w0pa+gE/uormcTpSYuaNJPbX1NU3JLyscSLjwAQM8bWMhhIlnCqnRvDTw==}
+  hastscript@9.0.0:
+    resolution: {integrity: sha512-jzaLBGavEDKHrc5EfFImKN7nZKKBdSLIdGvCwDZ9TfzbF2ffXiov8CKE445L2Z1Ek2t/m4SKQ2j6Ipv7NyUolw==}
 
   hosted-git-info@2.8.9:
     resolution: {integrity: sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==}
@@ -4779,8 +4504,8 @@ packages:
     resolution: {integrity: sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==}
     engines: {node: '>= 6'}
 
-  https-proxy-agent@7.0.5:
-    resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==}
+  https-proxy-agent@7.0.6:
+    resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==}
     engines: {node: '>= 14'}
 
   human-signals@2.1.0:
@@ -4808,8 +4533,8 @@ packages:
     resolution: {integrity: sha512-VuuG0wCnjhnylG1ABXT3dAuIpTNDs/G8jlpmwXY03fXoXy/8ZK8/T+hMzt8L4WnrLCJgdybqgPagnF/f97cg3A==}
     engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
 
-  ignore@5.2.4:
-    resolution: {integrity: sha512-MAb38BcSbH0eHNBxn7ql2NH/kX33OkB3lZ1BNdh7ENeRChHTYsTvWrMubiIAMNS2llXEEgZ1MUOBtXChP3kaFQ==}
+  ignore@5.3.2:
+    resolution: {integrity: sha512-hsBTNUqQTDwkWtcdYI2i06Y/nUBEsNEDJKjWdigLvegy8kDuJAS8uRlpkkcQpyEXL0Z/pjDy5HBmMjRCJ2gq+g==}
     engines: {node: '>= 4'}
 
   import-fresh@3.3.0:
@@ -4850,22 +4575,15 @@ packages:
     resolution: {integrity: sha512-Zfeb5ol+H+eqJWHTaGca9BovufyGeIfr4zaaBorPmJBMrJ+KBnN+kQx2ZtXdsotUTgldHmHQV44xvUWOUA7E2w==}
     engines: {node: ^16.14.0 || >=18.0.0}
 
-  inline-style-parser@0.1.1:
-    resolution: {integrity: sha512-7NXolsK4CAS5+xvdj5OMMbI962hU/wvwoxk+LWR9Ek9bVtyuuYScDN6eS0rUm6TxApFpw7CX1o4uJzcd4AyD3Q==}
-
   inline-style-parser@0.2.4:
     resolution: {integrity: sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q==}
 
-  inquirer@8.2.5:
-    resolution: {integrity: sha512-QAgPDQMEgrDssk1XiwwHoOGYF9BAbUcc1+j+FhEvaOt8/cKRqyLn0U5qA6F74fGhTMGxf92pOvPBeh29jQJDTQ==}
+  inquirer@8.2.6:
+    resolution: {integrity: sha512-M1WuAmb7pn9zdFRtQYk26ZBoY043Sse0wVDdk4Bppr+JOXyQYybdtvK+l9wUibhtjdjvtoiNy8tk+EgsYIUqKg==}
     engines: {node: '>=12.0.0'}
 
-  internal-slot@1.0.6:
-    resolution: {integrity: sha512-Xj6dv+PsbtwyPpEflsejS+oIZxmMlV44zAhG479uYu89MsjcYOhCFnNyKrkJrihbsiasQyY0afoCl/9BLR65bg==}
-    engines: {node: '>= 0.4'}
-
-  internal-slot@1.0.7:
-    resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==}
+  internal-slot@1.1.0:
+    resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==}
     engines: {node: '>= 0.4'}
 
   into-stream@6.0.0:
@@ -4885,11 +4603,8 @@ packages:
   is-alphanumerical@2.0.1:
     resolution: {integrity: sha512-hmbYhX/9MUMF5uh7tOXyK/n0ZvWpad5caBA17GsC6vyuCqaWliRG5K1qS9inmUhEMaOBIW7/whAnSwveW/LtZw==}
 
-  is-array-buffer@3.0.2:
-    resolution: {integrity: sha512-y+FyyR/w8vfIRq4eQcM1EYgSTnmHXPqaF+IgzgraytCFq5Xh8lllDVmAZolPJiZttZLeFSINPYMaEJ7/vWUa1w==}
-
-  is-array-buffer@3.0.4:
-    resolution: {integrity: sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==}
+  is-array-buffer@3.0.5:
+    resolution: {integrity: sha512-DDfANUiiG2wC1qawP66qlTugJeL5HyzMpfr8lLK+jMQirGzNod0B12cFB/9q838Ru27sBwfw78/rdoU7RERz6A==}
     engines: {node: '>= 0.4'}
 
   is-arrayish@0.2.1:
@@ -4898,15 +4613,20 @@ packages:
   is-arrayish@0.3.2:
     resolution: {integrity: sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ==}
 
-  is-bigint@1.0.4:
-    resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==}
+  is-async-function@2.1.1:
+    resolution: {integrity: sha512-9dgM/cZBnNvjzaMYHVoxxfPj2QXt22Ev7SuuPrs+xav0ukGB0S6d4ydZdEiM48kLx5kDV+QBPrpVnFyefL8kkQ==}
+    engines: {node: '>= 0.4'}
+
+  is-bigint@1.1.0:
+    resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==}
+    engines: {node: '>= 0.4'}
 
   is-binary-path@2.1.0:
     resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==}
     engines: {node: '>=8'}
 
-  is-boolean-object@1.1.2:
-    resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==}
+  is-boolean-object@1.2.1:
+    resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==}
     engines: {node: '>= 0.4'}
 
   is-callable@1.2.7:
@@ -4917,19 +4637,19 @@ packages:
     resolution: {integrity: sha512-ZYvCgrefwqoQ6yTyYUbQu64HsITZ3NfKX1lzaEYdkTDcfKzzCI/wthRRYKkdjHKFVgNiXKAKm65Zo1pk2as/QQ==}
     hasBin: true
 
-  is-core-module@2.15.1:
-    resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==}
+  is-core-module@2.16.1:
+    resolution: {integrity: sha512-UfoeMA6fIJ8wTYFEUjelnaGI67v6+N7qXJEvQuIGa99l4xsCruSYOVSQ0uPANn4dAzm8lkYPaKLrrijLq7x23w==}
     engines: {node: '>= 0.4'}
 
   is-core-module@2.9.0:
     resolution: {integrity: sha512-+5FPy5PnwmO3lvfMb0AsoPaBG+5KHUI0wYFXOtYPnVVVspTFUuMZNfNaNVRt3FZadstu2c8x23vykRW/NBoU6A==}
 
-  is-data-view@1.0.1:
-    resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==}
+  is-data-view@1.0.2:
+    resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==}
     engines: {node: '>= 0.4'}
 
-  is-date-object@1.0.5:
-    resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==}
+  is-date-object@1.1.0:
+    resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==}
     engines: {node: '>= 0.4'}
 
   is-decimal@2.0.1:
@@ -4949,6 +4669,10 @@ packages:
     resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==}
     engines: {node: '>=0.10.0'}
 
+  is-finalizationregistry@1.1.1:
+    resolution: {integrity: sha512-1pC6N8qWJbWoPtEjgcL2xyhQOP491EQjeUo3qTKcmV8YSDDJrOepfG8pcC7h/QgnQHYSv0mJ3Z/ZWxmatVrysg==}
+    engines: {node: '>= 0.4'}
+
   is-fullwidth-code-point@2.0.0:
     resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==}
     engines: {node: '>=4'}
@@ -4957,6 +4681,10 @@ packages:
     resolution: {integrity: sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==}
     engines: {node: '>=8'}
 
+  is-generator-function@1.1.0:
+    resolution: {integrity: sha512-nPUB5km40q9e8UfN/Zc24eLlzdSf9OfKByBw9CIdw4H1giPMeA0OIJvbchsCu4npfI2QcMVBsGEBHKZ7wLTWmQ==}
+    engines: {node: '>= 0.4'}
+
   is-glob@4.0.3:
     resolution: {integrity: sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==}
     engines: {node: '>=0.10.0'}
@@ -4976,19 +4704,15 @@ packages:
   is-lambda@1.0.1:
     resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==}
 
+  is-map@2.0.3:
+    resolution: {integrity: sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==}
+    engines: {node: '>= 0.4'}
+
   is-module@1.0.0:
     resolution: {integrity: sha512-51ypPSPCoTEIN9dy5Oy+h4pShgJmPCygKfyRCISBI+JoWT/2oJvK8QPxmwv7b/p239jXrm9M1mlQbyKJ5A152g==}
 
-  is-negative-zero@2.0.2:
-    resolution: {integrity: sha512-dqJvarLawXsFbNDeJW7zAz8ItJ9cd28YufuuFzh0G8pNHjJMnY08Dv7sYX2uF5UpQOwieAeOExEYAWWfu7ZZUA==}
-    engines: {node: '>= 0.4'}
-
-  is-negative-zero@2.0.3:
-    resolution: {integrity: sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==}
-    engines: {node: '>= 0.4'}
-
-  is-number-object@1.0.7:
-    resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==}
+  is-number-object@1.1.1:
+    resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==}
     engines: {node: '>= 0.4'}
 
   is-number@7.0.0:
@@ -5019,19 +4743,20 @@ packages:
     resolution: {integrity: sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q==}
     engines: {node: '>=0.10.0'}
 
-  is-regex@1.1.4:
-    resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==}
+  is-regex@1.2.1:
+    resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==}
     engines: {node: '>= 0.4'}
 
   is-regexp@1.0.0:
     resolution: {integrity: sha512-7zjFAPO4/gwyQAAgRRmqeEeyIICSdmCqa3tsVHMdBzaXXRiqopZL4Cyghg/XulGWrtABTpbnYYzzIRffLkP4oA==}
     engines: {node: '>=0.10.0'}
 
-  is-shared-array-buffer@1.0.2:
-    resolution: {integrity: sha512-sqN2UDu1/0y6uvXyStCOzyhAjCSlHceFoMKJW8W9EU9cvic/QdsZ0kEU93HEy3IUEFZIiH/3w+AH/UQbPHNdhA==}
+  is-set@2.0.3:
+    resolution: {integrity: sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==}
+    engines: {node: '>= 0.4'}
 
-  is-shared-array-buffer@1.0.3:
-    resolution: {integrity: sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==}
+  is-shared-array-buffer@1.0.4:
+    resolution: {integrity: sha512-ISWac8drv4ZGfwKl5slpHG9OwPNty4jOWPRIhBpxOoD+hqITiwuipOQ2bNthAzwA3B4fIjO4Nln74N0S9byq8A==}
     engines: {node: '>= 0.4'}
 
   is-ssh@1.4.0:
@@ -5045,24 +4770,20 @@ packages:
     resolution: {integrity: sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==}
     engines: {node: '>=8'}
 
-  is-string@1.0.7:
-    resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==}
+  is-string@1.1.1:
+    resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==}
     engines: {node: '>= 0.4'}
 
-  is-symbol@1.0.4:
-    resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==}
+  is-symbol@1.1.1:
+    resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==}
     engines: {node: '>= 0.4'}
 
   is-text-path@1.0.1:
     resolution: {integrity: sha512-xFuJpne9oFz5qDaodwmmG08e3CawH/2ZV8Qqza1Ko7Sk8POWbkRdwIoAWVhqvq0XeUzANEhKo2n0IXUGBm7A/w==}
     engines: {node: '>=0.10.0'}
 
-  is-typed-array@1.1.12:
-    resolution: {integrity: sha512-Z14TF2JNG8Lss5/HMqt0//T9JeHXttXy5pH/DBU4vi98ozO2btxzq9MwYDZYnKwU8nRsz/+GVFVRDq3DkVuSPg==}
-    engines: {node: '>= 0.4'}
-
-  is-typed-array@1.1.13:
-    resolution: {integrity: sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==}
+  is-typed-array@1.1.15:
+    resolution: {integrity: sha512-p3EcsicXjit7SaskXHs1hA91QxgTw46Fv6EFKKGS5DRFLD8yKnohjF3hxoju94b/OcMZoQukzpPpBE9uLVKzgQ==}
     engines: {node: '>= 0.4'}
 
   is-unicode-supported@0.1.0:
@@ -5076,8 +4797,17 @@ packages:
   is-url@1.2.4:
     resolution: {integrity: sha512-ITvGim8FhRiYe4IQ5uHSkj7pVaPDrCTkNd3yq3cV7iZAcJdHTUMPMEHcqSOy9xZ9qFenQCvi+2wjH9a1nXqHww==}
 
-  is-weakref@1.0.2:
-    resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==}
+  is-weakmap@2.0.2:
+    resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==}
+    engines: {node: '>= 0.4'}
+
+  is-weakref@1.1.0:
+    resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==}
+    engines: {node: '>= 0.4'}
+
+  is-weakset@2.0.4:
+    resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==}
+    engines: {node: '>= 0.4'}
 
   is-wsl@2.2.0:
     resolution: {integrity: sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==}
@@ -5174,6 +4904,11 @@ packages:
     engines: {node: '>=6'}
     hasBin: true
 
+  jsesc@3.1.0:
+    resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==}
+    engines: {node: '>=6'}
+    hasBin: true
+
   json-buffer@3.0.1:
     resolution: {integrity: sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==}
 
@@ -5234,8 +4969,8 @@ packages:
   just-diff@6.0.2:
     resolution: {integrity: sha512-S59eriX5u3/QhMNq3v/gm8Kd0w8OS6Tz2FS1NG4blv+z0MuQcBRJyFWjdovM0Rad4/P4aUPFtnkNjMjyMlMSYA==}
 
-  jzz@1.8.6:
-    resolution: {integrity: sha512-O32b8/Z9oHxsIT/rNV8iEw+RThIBcMAK62fIvMZ3NacR3+T2w4BTJBFNqhOYlkOQhxQD3MZ7b3o69RKAx4xymg==}
+  jzz@1.8.8:
+    resolution: {integrity: sha512-Oupj8xbUtJbP6s1KJWr1ZiGgU1JlUocetHqwVyGKuPhXjvPWOj5+SCirEr/OIVUXsG3iz04Unlu8uUm5EhtIDA==}
 
   keyv@4.5.4:
     resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==}
@@ -5340,10 +5075,6 @@ packages:
     resolution: {integrity: sha512-FmGoeD4S05ewj+AkhTY+D+myDvXI6eL27FjHIjoyUkO/uw7WZD1fBVs0QxeYWa7E17CUHJaYX/RUGISCtcrG4Q==}
     engines: {node: '>= 12.0.0'}
 
-  lilconfig@3.0.0:
-    resolution: {integrity: sha512-K2U4W2Ff5ibV7j7ydLr+zLAkIg5JJ4lPn1Ltsdt+Tz/IjQ8buJ55pZAxoP34lqIiwtF9iAvtLv3JGv7CAyAg+g==}
-    engines: {node: '>=14'}
-
   lilconfig@3.1.3:
     resolution: {integrity: sha512-/vlFKAoH5Cgt3Ie+JLhRbwOsCQePABiU3tJ1egGvyQ+33R/vcwM2Zl2QR/LzjsBeItPt3oSVXapn+m4nQDvpzw==}
     engines: {node: '>=14'}
@@ -5429,9 +5160,6 @@ packages:
   magic-string@0.25.9:
     resolution: {integrity: sha512-RmF0AsMzgt25qzqqLc1+MbHmhdx0ojF2Fvs4XnOqz2ZOBXzzkEwc/dJQZCYHAn7v1jbVOjAZfK8msRn4BxO4VQ==}
 
-  magic-string@0.30.12:
-    resolution: {integrity: sha512-Ea8I3sQMVXr8JhN4z+H/d8zwo+tYDgHE9+5G4Wnrwhs0gaK9fXTKx0Tw5Xwsd/bCPTTZNRAdpyzvoeORe9LYpw==}
-
   magic-string@0.30.17:
     resolution: {integrity: sha512-sNPKHvyjVf7gyjwS4xGTaW/mCnF8wnjtifKBEhxfZ7E/S8tQ0rssrwGNn6q8JH/ohItJfSQp9mBtQYuTlH5QnA==}
 
@@ -5472,25 +5200,29 @@ packages:
     resolution: {integrity: sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==}
     hasBin: true
 
-  markdown-table@3.0.3:
-    resolution: {integrity: sha512-Z1NL3Tb1M9wH4XESsCDEksWoKTdlUafKc4pt0GRwjUyXaCFZ+dc3g2erqB6zm3szA2IUSi7VnPI+o/9jnxh9hw==}
+  markdown-table@3.0.4:
+    resolution: {integrity: sha512-wiYz4+JrLyb/DqW2hkFJxP7Vd7JuTDm77fvbM8VfEQdmSMqcImWeeRbHwZjBjIFki/VaMK2BhFi7oUUZeM5bqw==}
 
   marked@4.3.0:
     resolution: {integrity: sha512-PRsaiG84bK+AMvxziE/lCFss8juXjNaWzVbN5tXAm4XjeaS9NAHhop+PjQxz2A9h8Q4M/xGmzP8vqNwy6JeK0A==}
     engines: {node: '>= 12'}
     hasBin: true
 
+  math-intrinsics@1.1.0:
+    resolution: {integrity: sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==}
+    engines: {node: '>= 0.4'}
+
   mdast-util-definitions@6.0.0:
     resolution: {integrity: sha512-scTllyX6pnYNZH/AIp/0ePz6s4cZtARxImwoPJ7kS42n+MnVsI4XbnG6d4ibehRIldYMWM2LD7ImQblVhUejVQ==}
 
-  mdast-util-find-and-replace@3.0.1:
-    resolution: {integrity: sha512-SG21kZHGC3XRTSUhtofZkBzZTJNM5ecCi0SK2IMKmSXR8vO3peL+kb1O0z7Zl83jKtutG4k5Wv/W7V3/YHvzPA==}
+  mdast-util-find-and-replace@3.0.2:
+    resolution: {integrity: sha512-Tmd1Vg/m3Xz43afeNxDIhWRtFZgM2VLyaf4vSTYwudTyeuTneoL3qtWMA5jeLyz/O1vDJmmV4QuScFCA2tBPwg==}
 
-  mdast-util-from-markdown@2.0.1:
-    resolution: {integrity: sha512-aJEUyzZ6TzlsX2s5B4Of7lN7EQtAxvtradMMglCQDyaTFgse6CmtmdJ15ElnVRlCg1vpNyVtbem0PWzlNieZsA==}
+  mdast-util-from-markdown@2.0.2:
+    resolution: {integrity: sha512-uZhTV/8NBuw0WHkPTrCqDOl0zVe1BIng5ZtHoDk49ME1qqcjYmmLmOf0gELgcRMxN4w2iuIeVso5/6QymSrgmA==}
 
-  mdast-util-gfm-autolink-literal@2.0.0:
-    resolution: {integrity: sha512-FyzMsduZZHSc3i0Px3PQcBT4WJY/X/RCtEJKuybiC6sjPqLv7h1yqAkmILZtuxMSsUyaLUWNp71+vQH2zqp5cg==}
+  mdast-util-gfm-autolink-literal@2.0.1:
+    resolution: {integrity: sha512-5HVP2MKaP6L+G6YaxPNjuL0BPrq9orG3TsrZ9YXbA3vDw/ACI4MEsnoDpn6ZNm7GnZgtAcONJyPhOP8tNJQavQ==}
 
   mdast-util-gfm-footnote@2.0.0:
     resolution: {integrity: sha512-5jOT2boTSVkMnQ7LTrd6n/18kqwjmuYqo7JUPe+tRCY6O7dAuTFMtTPauYYrMPpox9hlN0uOx/FL8XvEfG9/mQ==}
@@ -5510,8 +5242,8 @@ packages:
   mdast-util-mdx-expression@2.0.1:
     resolution: {integrity: sha512-J6f+9hUp+ldTZqKRSg7Vw5V6MqjATc+3E4gf3CFNcuZNWD8XdyI6zQ8GqH7f8169MM6P7hMBRDVGnn7oHB9kXQ==}
 
-  mdast-util-mdx-jsx@3.1.3:
-    resolution: {integrity: sha512-bfOjvNt+1AcbPLTFMFWY149nJz0OjmewJs3LQQ5pIyVGxP4CdOqNVJL6kTaM5c68p8q82Xv3nCyFfUnuEcH3UQ==}
+  mdast-util-mdx-jsx@3.2.0:
+    resolution: {integrity: sha512-lj/z8v0r6ZtsN/cGNNtemmmfoLAFZnjMbNyLzBafjzikOM+glrjNHPlf6lQDOTccj9n5b0PPihEBbhneMyGs1Q==}
 
   mdast-util-mdx@3.0.0:
     resolution: {integrity: sha512-JfbYLAW7XnYTTbUsmpu0kdBUVe+yKVJZBItEjwyYJiDJuZ9w4eeaqks4HQO+R7objWgS2ymV60GYpI14Ug554w==}
@@ -5519,20 +5251,20 @@ packages:
   mdast-util-mdxjs-esm@2.0.1:
     resolution: {integrity: sha512-EcmOpxsZ96CvlP03NghtH1EsLtr0n9Tm4lPUJUBccV9RwUOneqSycg19n5HGzCf+10LozMRSObtVr3ee1WoHtg==}
 
-  mdast-util-phrasing@4.0.0:
-    resolution: {integrity: sha512-xadSsJayQIucJ9n053dfQwVu1kuXg7jCTdYsMK8rqzKZh52nLfSH/k0sAxE0u+pj/zKZX+o5wB+ML5mRayOxFA==}
+  mdast-util-phrasing@4.1.0:
+    resolution: {integrity: sha512-TqICwyvJJpBwvGAMZjj4J2n0X8QWp21b9l0o7eXyVJ25YNWYbJDVIyD1bZXE6WtV6RmKJVYmQAKWa0zWOABz2w==}
 
   mdast-util-to-hast@13.2.0:
     resolution: {integrity: sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==}
 
-  mdast-util-to-markdown@2.1.0:
-    resolution: {integrity: sha512-SR2VnIEdVNCJbP6y7kVTJgPLifdr8WEU440fQec7qHoHOUz/oJ2jmNRqdDQ3rbiStOXb2mCDGTuwsK5OPUgYlQ==}
+  mdast-util-to-markdown@2.1.2:
+    resolution: {integrity: sha512-xj68wMTvGXVOKonmog6LwyJKrYXZPvlwabaryTjLh9LuvovB/KAH+kvi8Gjj+7rJjsFi23nkUxRQv1KqSroMqA==}
 
   mdast-util-to-string@4.0.0:
     resolution: {integrity: sha512-0H44vDimn51F0YwvxSJSm0eCDOJTRlmN0R1yBh4HLj9wiV1Dn0QoXGbvFAWj2hSItVTlCmBF1hqKlIyUBVFLPg==}
 
-  mdast-util-toc@7.0.0:
-    resolution: {integrity: sha512-C28UcSqjmnWuvgT8d97qpaItHKvySqVPAECUzqQ51xuMyNFFJwcFoKW77KoMjtXrclTidLQFDzLUmTmrshRweA==}
+  mdast-util-toc@7.1.0:
+    resolution: {integrity: sha512-2TVKotOQzqdY7THOdn2gGzS9d1Sdd66bvxUyw3aNpWfcPXCLYSJCCgfPy30sEtuzkDraJgqF35dzgmz6xlvH/w==}
 
   mdurl@2.0.0:
     resolution: {integrity: sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==}
@@ -5548,30 +5280,30 @@ packages:
     resolution: {integrity: sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==}
     engines: {node: '>= 8'}
 
-  meyda@5.6.2:
-    resolution: {integrity: sha512-FSHo8XDdmhIDeBJ2nht9WYRj0VIQ8wbzcfken0YIHUuuxVMnpDcvzVfXyY2m6YkA7q6ypzKROUNV4yoXG0uogQ==}
+  meyda@5.6.3:
+    resolution: {integrity: sha512-fAdwfzIi1WDoL0idUQvCD7dZ7EN74FYH83G+jZQO3Nr9yOEBtzFvcMg2KLdLlu6psSP8XFlO0kYynG5o/E681Q==}
     hasBin: true
 
-  micromark-core-commonmark@2.0.1:
-    resolution: {integrity: sha512-CUQyKr1e///ZODyD1U3xit6zXwy1a8q2a1S1HKtIlmgvurrEpaw/Y9y6KSIbF8P59cn/NjzHyO+Q2fAyYLQrAA==}
+  micromark-core-commonmark@2.0.2:
+    resolution: {integrity: sha512-FKjQKbxd1cibWMM1P9N+H8TwlgGgSkWZMmfuVucLCHaYqeSvJ0hFeHsIa65pA2nYbes0f8LDHPMrd9X7Ujxg9w==}
 
-  micromark-extension-gfm-autolink-literal@2.0.0:
-    resolution: {integrity: sha512-rTHfnpt/Q7dEAK1Y5ii0W8bhfJlVJFnJMHIPisfPK3gpVNuOP0VnRl96+YJ3RYWV/P4gFeQoGKNlT3RhuvpqAg==}
+  micromark-extension-gfm-autolink-literal@2.1.0:
+    resolution: {integrity: sha512-oOg7knzhicgQ3t4QCjCWgTmfNhvQbDDnJeVu9v81r7NltNCVmhPy1fJRX27pISafdjL+SVc4d3l48Gb6pbRypw==}
 
-  micromark-extension-gfm-footnote@2.0.0:
-    resolution: {integrity: sha512-6Rzu0CYRKDv3BfLAUnZsSlzx3ak6HAoI85KTiijuKIz5UxZxbUI+pD6oHgw+6UtQuiRwnGRhzMmPRv4smcz0fg==}
+  micromark-extension-gfm-footnote@2.1.0:
+    resolution: {integrity: sha512-/yPhxI1ntnDNsiHtzLKYnE3vf9JZ6cAisqVDauhp4CEHxlb4uoOTxOCJ+9s51bIB8U1N1FJ1RXOKTIlD5B/gqw==}
 
-  micromark-extension-gfm-strikethrough@2.0.0:
-    resolution: {integrity: sha512-c3BR1ClMp5fxxmwP6AoOY2fXO9U8uFMKs4ADD66ahLTNcwzSCyRVU4k7LPV5Nxo/VJiR4TdzxRQY2v3qIUceCw==}
+  micromark-extension-gfm-strikethrough@2.1.0:
+    resolution: {integrity: sha512-ADVjpOOkjz1hhkZLlBiYA9cR2Anf8F4HqZUO6e5eDcPQd0Txw5fxLzzxnEkSkfnD0wziSGiv7sYhk/ktvbf1uw==}
 
-  micromark-extension-gfm-table@2.0.0:
-    resolution: {integrity: sha512-PoHlhypg1ItIucOaHmKE8fbin3vTLpDOUg8KAr8gRCF1MOZI9Nquq2i/44wFvviM4WuxJzc3demT8Y3dkfvYrw==}
+  micromark-extension-gfm-table@2.1.1:
+    resolution: {integrity: sha512-t2OU/dXXioARrC6yWfJ4hqB7rct14e8f7m0cbI5hUmDyyIlwv5vEtooptH8INkbLzOatzKuVbQmAYcbWoyz6Dg==}
 
   micromark-extension-gfm-tagfilter@2.0.0:
     resolution: {integrity: sha512-xHlTOmuCSotIA8TW1mDIM6X2O1SiX5P9IuDtqGonFhEK0qgRI4yeC6vMxEV2dgyr2TiD+2PQ10o+cOhdVAcwfg==}
 
-  micromark-extension-gfm-task-list-item@2.0.1:
-    resolution: {integrity: sha512-cY5PzGcnULaN5O7T+cOzfMoHjBW7j+T9D2sucA5d/KbsBTPcYdebm9zUd9zzdgJGCwahV+/W78Z3nbulBYVbTw==}
+  micromark-extension-gfm-task-list-item@2.1.0:
+    resolution: {integrity: sha512-qIBZhqxqI6fjLDYFTBIa4eivDMnP+OZqsNwmQ3xNLE4Cxwc+zfQEfbs6tzAo2Hjq+bh6q5F+Z8/cksrLFYWQQw==}
 
   micromark-extension-gfm@3.0.0:
     resolution: {integrity: sha512-vsKArQsicm7t0z2GugkCKtZehqUm31oeGBV/KVSorWSy8ZlNAv7ytjFhvaryUiCUJYqs+NoE6AFhpQvBTM6Q4w==}
@@ -5591,71 +5323,71 @@ packages:
   micromark-extension-mdxjs@3.0.0:
     resolution: {integrity: sha512-A873fJfhnJ2siZyUrJ31l34Uqwy4xIFmvPY1oj+Ean5PHcPBYzEsvqvWGaWcfEIr11O5Dlw3p2y0tZWpKHDejQ==}
 
-  micromark-factory-destination@2.0.0:
-    resolution: {integrity: sha512-j9DGrQLm/Uhl2tCzcbLhy5kXsgkHUrjJHg4fFAeoMRwJmJerT9aw4FEhIbZStWN8A3qMwOp1uzHr4UL8AInxtA==}
+  micromark-factory-destination@2.0.1:
+    resolution: {integrity: sha512-Xe6rDdJlkmbFRExpTOmRj9N3MaWmbAgdpSrBQvCFqhezUn4AHqJHbaEnfbVYYiexVSs//tqOdY/DxhjdCiJnIA==}
 
-  micromark-factory-label@2.0.0:
-    resolution: {integrity: sha512-RR3i96ohZGde//4WSe/dJsxOX6vxIg9TimLAS3i4EhBAFx8Sm5SmqVfR8E87DPSR31nEAjZfbt91OMZWcNgdZw==}
+  micromark-factory-label@2.0.1:
+    resolution: {integrity: sha512-VFMekyQExqIW7xIChcXn4ok29YE3rnuyveW3wZQWWqF4Nv9Wk5rgJ99KzPvHjkmPXF93FXIbBp6YdW3t71/7Vg==}
 
   micromark-factory-mdx-expression@2.0.2:
     resolution: {integrity: sha512-5E5I2pFzJyg2CtemqAbcyCktpHXuJbABnsb32wX2U8IQKhhVFBqkcZR5LRm1WVoFqa4kTueZK4abep7wdo9nrw==}
 
-  micromark-factory-space@2.0.0:
-    resolution: {integrity: sha512-TKr+LIDX2pkBJXFLzpyPyljzYK3MtmllMUMODTQJIUfDGncESaqB90db9IAUcz4AZAJFdd8U9zOp9ty1458rxg==}
+  micromark-factory-space@2.0.1:
+    resolution: {integrity: sha512-zRkxjtBxxLd2Sc0d+fbnEunsTj46SWXgXciZmHq0kDYGnck/ZSGj9/wULTV95uoeYiK5hRXP2mJ98Uo4cq/LQg==}
 
-  micromark-factory-title@2.0.0:
-    resolution: {integrity: sha512-jY8CSxmpWLOxS+t8W+FG3Xigc0RDQA9bKMY/EwILvsesiRniiVMejYTE4wumNc2f4UbAa4WsHqe3J1QS1sli+A==}
+  micromark-factory-title@2.0.1:
+    resolution: {integrity: sha512-5bZ+3CjhAd9eChYTHsjy6TGxpOFSKgKKJPJxr293jTbfry2KDoWkhBb6TcPVB4NmzaPhMs1Frm9AZH7OD4Cjzw==}
 
-  micromark-factory-whitespace@2.0.0:
-    resolution: {integrity: sha512-28kbwaBjc5yAI1XadbdPYHX/eDnqaUFVikLwrO7FDnKG7lpgxnvk/XGRhX/PN0mOZ+dBSZ+LgunHS+6tYQAzhA==}
+  micromark-factory-whitespace@2.0.1:
+    resolution: {integrity: sha512-Ob0nuZ3PKt/n0hORHyvoD9uZhr+Za8sFoP+OnMcnWK5lngSzALgQYKMr9RJVOWLqQYuyn6ulqGWSXdwf6F80lQ==}
 
-  micromark-util-character@2.1.0:
-    resolution: {integrity: sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==}
+  micromark-util-character@2.1.1:
+    resolution: {integrity: sha512-wv8tdUTJ3thSFFFJKtpYKOYiGP2+v96Hvk4Tu8KpCAsTMs6yi+nVmGh1syvSCsaxz45J6Jbw+9DD6g97+NV67Q==}
 
-  micromark-util-chunked@2.0.0:
-    resolution: {integrity: sha512-anK8SWmNphkXdaKgz5hJvGa7l00qmcaUQoMYsBwDlSKFKjc6gjGXPDw3FNL3Nbwq5L8gE+RCbGqTw49FK5Qyvg==}
+  micromark-util-chunked@2.0.1:
+    resolution: {integrity: sha512-QUNFEOPELfmvv+4xiNg2sRYeS/P84pTW0TCgP5zc9FpXetHY0ab7SxKyAQCNCc1eK0459uoLI1y5oO5Vc1dbhA==}
 
-  micromark-util-classify-character@2.0.0:
-    resolution: {integrity: sha512-S0ze2R9GH+fu41FA7pbSqNWObo/kzwf8rN/+IGlW/4tC6oACOs8B++bh+i9bVyNnwCcuksbFwsBme5OCKXCwIw==}
+  micromark-util-classify-character@2.0.1:
+    resolution: {integrity: sha512-K0kHzM6afW/MbeWYWLjoHQv1sgg2Q9EccHEDzSkxiP/EaagNzCm7T/WMKZ3rjMbvIpvBiZgwR3dKMygtA4mG1Q==}
 
-  micromark-util-combine-extensions@2.0.0:
-    resolution: {integrity: sha512-vZZio48k7ON0fVS3CUgFatWHoKbbLTK/rT7pzpJ4Bjp5JjkZeasRfrS9wsBdDJK2cJLHMckXZdzPSSr1B8a4oQ==}
+  micromark-util-combine-extensions@2.0.1:
+    resolution: {integrity: sha512-OnAnH8Ujmy59JcyZw8JSbK9cGpdVY44NKgSM7E9Eh7DiLS2E9RNQf0dONaGDzEG9yjEl5hcqeIsj4hfRkLH/Bg==}
 
-  micromark-util-decode-numeric-character-reference@2.0.1:
-    resolution: {integrity: sha512-bmkNc7z8Wn6kgjZmVHOX3SowGmVdhYS7yBpMnuMnPzDq/6xwVA604DuOXMZTO1lvq01g+Adfa0pE2UKGlxL1XQ==}
+  micromark-util-decode-numeric-character-reference@2.0.2:
+    resolution: {integrity: sha512-ccUbYk6CwVdkmCQMyr64dXz42EfHGkPQlBj5p7YVGzq8I7CtjXZJrubAYezf7Rp+bjPseiROqe7G6foFd+lEuw==}
 
-  micromark-util-decode-string@2.0.0:
-    resolution: {integrity: sha512-r4Sc6leeUTn3P6gk20aFMj2ntPwn6qpDZqWvYmAG6NgvFTIlj4WtrAudLi65qYoaGdXYViXYw2pkmn7QnIFasA==}
+  micromark-util-decode-string@2.0.1:
+    resolution: {integrity: sha512-nDV/77Fj6eH1ynwscYTOsbK7rR//Uj0bZXBwJZRfaLEJ1iGBR6kIfNmlNqaqJf649EP0F3NWNdeJi03elllNUQ==}
 
-  micromark-util-encode@2.0.0:
-    resolution: {integrity: sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==}
+  micromark-util-encode@2.0.1:
+    resolution: {integrity: sha512-c3cVx2y4KqUnwopcO9b/SCdo2O67LwJJ/UyqGfbigahfegL9myoEFoDYZgkT7f36T0bLrM9hZTAaAyH+PCAXjw==}
 
   micromark-util-events-to-acorn@2.0.2:
     resolution: {integrity: sha512-Fk+xmBrOv9QZnEDguL9OI9/NQQp6Hz4FuQ4YmCb/5V7+9eAh1s6AYSvL20kHkD67YIg7EpE54TiSlcsf3vyZgA==}
 
-  micromark-util-html-tag-name@2.0.0:
-    resolution: {integrity: sha512-xNn4Pqkj2puRhKdKTm8t1YHC/BAjx6CEwRFXntTaRf/x16aqka6ouVoutm+QdkISTlT7e2zU7U4ZdlDLJd2Mcw==}
+  micromark-util-html-tag-name@2.0.1:
+    resolution: {integrity: sha512-2cNEiYDhCWKI+Gs9T0Tiysk136SnR13hhO8yW6BGNyhOC4qYFnwF1nKfD3HFAIXA5c45RrIG1ub11GiXeYd1xA==}
 
-  micromark-util-normalize-identifier@2.0.0:
-    resolution: {integrity: sha512-2xhYT0sfo85FMrUPtHcPo2rrp1lwbDEEzpx7jiH2xXJLqBuy4H0GgXk5ToU8IEwoROtXuL8ND0ttVa4rNqYK3w==}
+  micromark-util-normalize-identifier@2.0.1:
+    resolution: {integrity: sha512-sxPqmo70LyARJs0w2UclACPUUEqltCkJ6PhKdMIDuJ3gSf/Q+/GIe3WKl0Ijb/GyH9lOpUkRAO2wp0GVkLvS9Q==}
 
-  micromark-util-resolve-all@2.0.0:
-    resolution: {integrity: sha512-6KU6qO7DZ7GJkaCgwBNtplXCvGkJToU86ybBAUdavvgsCiG8lSSvYxr9MhwmQ+udpzywHsl4RpGJsYWG1pDOcA==}
+  micromark-util-resolve-all@2.0.1:
+    resolution: {integrity: sha512-VdQyxFWFT2/FGJgwQnJYbe1jjQoNTS4RjglmSjTUlpUMa95Htx9NHeYW4rGDJzbjvCsl9eLjMQwGeElsqmzcHg==}
 
-  micromark-util-sanitize-uri@2.0.0:
-    resolution: {integrity: sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==}
+  micromark-util-sanitize-uri@2.0.1:
+    resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==}
 
-  micromark-util-subtokenize@2.0.1:
-    resolution: {integrity: sha512-jZNtiFl/1aY73yS3UGQkutD0UbhTt68qnRpw2Pifmz5wV9h8gOVsN70v+Lq/f1rKaU/W8pxRe8y8Q9FX1AOe1Q==}
+  micromark-util-subtokenize@2.0.4:
+    resolution: {integrity: sha512-N6hXjrin2GTJDe3MVjf5FuXpm12PGm80BrUAeub9XFXca8JZbP+oIwY4LJSVwFUCL1IPm/WwSVUN7goFHmSGGQ==}
 
-  micromark-util-symbol@2.0.0:
-    resolution: {integrity: sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==}
+  micromark-util-symbol@2.0.1:
+    resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==}
 
-  micromark-util-types@2.0.0:
-    resolution: {integrity: sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==}
+  micromark-util-types@2.0.1:
+    resolution: {integrity: sha512-534m2WhVTddrcKVepwmVEVnUAmtrx9bfIjNoQHRqfnvdaHQiFytEhJoTgpWJvDEXCO5gLTQh3wYC1PgOJA4NSQ==}
 
-  micromark@4.0.0:
-    resolution: {integrity: sha512-o/sd0nMof8kYff+TqcDx3VSrgBTcZpSvYcAHIfHhv5VAuNmisCxjhx6YmxS8PFEpb9z5WKWKPdzf0jM23ro3RQ==}
+  micromark@4.0.1:
+    resolution: {integrity: sha512-eBPdkcoCNvYcxQOAKAlceo5SNdzZWfF+FcSupREAzdAh9rRmE239CEQAiTwIgblwnoM8zzj35sZ5ZwvSEOF6Kw==}
 
   micromatch@4.0.8:
     resolution: {integrity: sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==}
@@ -5704,6 +5436,10 @@ packages:
     resolution: {integrity: sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==}
     engines: {node: '>=16 || 14 >=14.17'}
 
+  minimatch@9.0.3:
+    resolution: {integrity: sha512-RHiac9mvaRw0x3AYRgDC1CxAP7HTcNrrECeA8YYJeWnpo+2Q5CegtZjaotWTWxDG3UeGA1coE05iH1mPjT/2mg==}
+    engines: {node: '>=16 || 14 >=14.17'}
+
   minimatch@9.0.5:
     resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==}
     engines: {node: '>=16 || 14 >=14.17'}
@@ -5712,9 +5448,6 @@ packages:
     resolution: {integrity: sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A==}
     engines: {node: '>= 6'}
 
-  minimist@1.2.7:
-    resolution: {integrity: sha512-bzfL1YUZsP41gmu/qjrEk0Q6i2ix/cVeAhbCbqH9u3zYutS1cLg00qhrD0M2MVdCcx4Sc0UpP2eBWo9rotpq6g==}
-
   minimist@1.2.8:
     resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==}
 
@@ -5807,11 +5540,6 @@ packages:
   mz@2.7.0:
     resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==}
 
-  nanoid@3.3.7:
-    resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==}
-    engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
-    hasBin: true
-
   nanoid@3.3.8:
     resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==}
     engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1}
@@ -5832,8 +5560,8 @@ packages:
   natural-compare@1.4.0:
     resolution: {integrity: sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==}
 
-  negotiator@0.6.3:
-    resolution: {integrity: sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==}
+  negotiator@0.6.4:
+    resolution: {integrity: sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w==}
     engines: {node: '>= 0.6'}
 
   neo-async@2.6.2:
@@ -5846,8 +5574,8 @@ packages:
   nlcst-to-string@4.0.0:
     resolution: {integrity: sha512-YKLBCcUYKAg0FNlOBT6aI91qFmSiFKiluk655WzPF+DDMA02qIyy8uiRqI8QXtcFpEvll12LpL5MXqEmAZ+dcA==}
 
-  node-abi@3.40.0:
-    resolution: {integrity: sha512-zNy02qivjjRosswoYmPi8hIKJRr8MpQyeKT6qlcq/OnOgA3Rhoae+IYOqsM9V5+JnHWmxKnWOT2GxvtqdtOCXA==}
+  node-abi@3.73.0:
+    resolution: {integrity: sha512-z8iYzQGBu35ZkTQ9mtR8RqugJZ9RCLn8fv3d7LsgDBzOijGQP3RdKTX4LA7LXw03ZhU5z0l4xfhIMgSES31+cg==}
     engines: {node: '>=10'}
 
   node-addon-api@8.3.0:
@@ -5870,8 +5598,8 @@ packages:
       encoding:
         optional: true
 
-  node-fetch@2.6.8:
-    resolution: {integrity: sha512-RZ6dBYuj8dRSfxpUSu+NsdF1dpPpluJxwOp+6IoDp/sH2QNDSvurYsAa+F1WxY2RjA1iP93xhcsUoYbF2XBqVg==}
+  node-fetch@2.7.0:
+    resolution: {integrity: sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==}
     engines: {node: 4.x || >=6.0.0}
     peerDependencies:
       encoding: ^0.1.0
@@ -5887,23 +5615,23 @@ packages:
     resolution: {integrity: sha512-yqkmYrMbK1wPrfz7mgeYvA4tBperLg9FQ4S3Sau3nSAkpOA0x0zC8nQ1siBwozy1f4SE8vq2n1WKv99r+PCa1Q==}
     engines: {node: '>= 0.6.0'}
 
-  node-gyp-build@4.8.2:
-    resolution: {integrity: sha512-IRUxE4BVsHWXkV/SFOut4qTlagw2aM8T5/vnTsmrHJvVoKueJHRc/JaFND7QDDc61kLYUJ6qlZM3sqTSyx2dTw==}
+  node-gyp-build@4.8.4:
+    resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==}
     hasBin: true
 
-  node-gyp@10.2.0:
-    resolution: {integrity: sha512-sp3FonBAaFe4aYTcFdZUn2NYkbP7xroPGYvQmP4Nl5PxamznItBnNCgjrVTKrEfQynInMsJvZrdmqUnysCJ8rw==}
+  node-gyp@10.3.1:
+    resolution: {integrity: sha512-Pp3nFHBThHzVtNY7U6JfPjvT/DTE8+o/4xKsLQtBoU+j2HLsGlhcfzflAoUreaJbNmYnX+LlLi0qjV8kpyO6xQ==}
     engines: {node: ^16.14.0 || >=18.0.0}
     hasBin: true
 
   node-machine-id@1.1.12:
     resolution: {integrity: sha512-QNABxbrPa3qEIfrE6GOJ7BYIuignnJw7iQ2YPbc3Nla1HzRJjXzZOiikfF8m7eAMfichLt3M4VgLOetqgDmgGQ==}
 
-  node-releases@2.0.18:
-    resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==}
+  node-releases@2.0.19:
+    resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==}
 
-  node-source-walk@7.0.1:
-    resolution: {integrity: sha512-3VW/8JpPqPvnJvseXowjZcirPisssnBuDikk6JIZ8jQzF7KJQX52iPFX4RYYxLycYH7IbMRSPUOga/esVjy5Yg==}
+  node-source-walk@7.0.0:
+    resolution: {integrity: sha512-1uiY543L+N7Og4yswvlm5NCKgPKDEXd9AUR9Jh3gen6oOeBsesr6LqhXom1er3eRzSUcVRWXzhv8tSNrIfGHKw==}
     engines: {node: '>=18'}
 
   nopt@7.2.1:
@@ -5962,11 +5690,11 @@ packages:
     resolution: {integrity: sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==}
     engines: {node: '>=8'}
 
-  nx@17.2.8:
-    resolution: {integrity: sha512-rM5zXbuXLEuqQqcjVjClyvHwRJwt+NVImR2A6KFNG40Z60HP6X12wAxxeLHF5kXXTDRU0PFhf/yACibrpbPrAw==}
+  nx@20.3.3:
+    resolution: {integrity: sha512-IUu2D8/bVa7aSr3ViRcrmpTGO2FKqzJoio6gjeq/YbyUHyjrrq5HUmHFx30Wm2vmC1BGm0MeyakTNUJzQvfAog==}
     hasBin: true
     peerDependencies:
-      '@swc-node/register': ^1.6.7
+      '@swc-node/register': ^1.8.0
       '@swc/core': ^1.3.85
     peerDependenciesMeta:
       '@swc-node/register':
@@ -5982,23 +5710,16 @@ packages:
     resolution: {integrity: sha512-RSn9F68PjH9HqtltsSnqYC1XXoWe9Bju5+213R98cNGttag9q9yAOTzdbsqvIa7aNm5WffBZFpWYr2aWrklWAw==}
     engines: {node: '>= 6'}
 
-  object-inspect@1.13.1:
-    resolution: {integrity: sha512-5qoj1RUiKOMsCCNLV1CBiPYE10sziTsnmNxkAI/rZhiD63CF7IqdFGC/XzjWjpSgLf0LxXX3bDFIh0E18f6UhQ==}
-
-  object-inspect@1.13.2:
-    resolution: {integrity: sha512-IRZSRuzJiynemAXPYtPe5BoI/RESNYR7TYm50MC5Mqbd3Jmw5y790sErYw3V6SryFJD64b74qQQs9wn5Bg/k3g==}
+  object-inspect@1.13.3:
+    resolution: {integrity: sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==}
     engines: {node: '>= 0.4'}
 
   object-keys@1.1.1:
     resolution: {integrity: sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==}
     engines: {node: '>= 0.4'}
 
-  object.assign@4.1.4:
-    resolution: {integrity: sha512-1mxKf0e58bvyjSCtKYY4sRe9itRk3PJpquJOjeIkz885CczcI4IvJJDLPS72oowuSh+pBxUFROpX+TU++hxhZQ==}
-    engines: {node: '>= 0.4'}
-
-  object.assign@4.1.5:
-    resolution: {integrity: sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==}
+  object.assign@4.1.7:
+    resolution: {integrity: sha512-nK28WOo+QIjBkDduTINE4JkF/UJJKyf2EJxvJKfblDpyg0Q+pkOHNTL0Qwy6NP6FhE/EnzV73BxxqcJaXY9anw==}
     engines: {node: '>= 0.4'}
 
   object.fromentries@2.0.8:
@@ -6009,8 +5730,8 @@ packages:
     resolution: {integrity: sha512-+Lhy3TQTuzXI5hevh8sBGqbmurHbbIjAi0Z4S63nthVLmLxfbj4T54a4CfZrXIrt9iP4mVAPYMo/v99taj3wjQ==}
     engines: {node: '>= 0.4'}
 
-  object.values@1.2.0:
-    resolution: {integrity: sha512-yBYjY9QX2hnRmZHAjG/f13MzmBzxzYgQhFrke06TTyKY5zSTEqkOeukBzIdVA3j3ulu8Qa3MbVFShV7T2RmGtQ==}
+  object.values@1.2.1:
+    resolution: {integrity: sha512-gXah6aZrcUxjWg2zR2MwouP2eHlCBzdV4pygudehaKXSGW4v2AsRQUK+lwwXhii6KFZcunEnmSUoYp5CXibxtA==}
     engines: {node: '>= 0.4'}
 
   ofetch@1.4.1:
@@ -6029,14 +5750,18 @@ packages:
   oniguruma-to-es@2.3.0:
     resolution: {integrity: sha512-bwALDxriqfKGfUufKGGepCzu9x7nJQuoRoAFp4AnwehhC2crqrDIAP/uN2qdlsAvSMpeRC3+Yzhqc7hLmle5+g==}
 
-  open@8.4.0:
-    resolution: {integrity: sha512-XgFPPM+B28FtCCgSb9I+s9szOC1vZRSwgWsRUA5ylIxRTgKozqjOCrVOqGsYABPYK5qnfqClxZTFBa8PKt2v6Q==}
+  open@8.4.2:
+    resolution: {integrity: sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==}
     engines: {node: '>=12'}
 
-  optionator@0.9.3:
-    resolution: {integrity: sha512-JjCoypp+jKn1ttEFExxhetCKeJt9zhAgAve5FXHixTvFDW/5aEktX9bufBKLRRMdU7bNtpLfcGu94B3cdEJgjg==}
+  optionator@0.9.4:
+    resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==}
     engines: {node: '>= 0.8.0'}
 
+  ora@5.3.0:
+    resolution: {integrity: sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==}
+    engines: {node: '>=10'}
+
   ora@5.4.1:
     resolution: {integrity: sha512-5b6Y85tPxZZ7QytO+BQzysW31HJku27cRIlkbAXaNx+BdcVi+LlRFmVXzeF6a7JCwJpyw5c4b+YSVImQIrBpuQ==}
     engines: {node: '>=10'}
@@ -6048,6 +5773,10 @@ packages:
   osc-js@2.4.1:
     resolution: {integrity: sha512-QlSeRKJclL47FNvO1MUCAAp9frmCF9zcYbnf6R9HpcklAst8ZyX3ISsk1v/Vghr/5GmXn0bhVjFXF9h+hfnl4Q==}
 
+  own-keys@1.0.1:
+    resolution: {integrity: sha512-qFOyK5PjiWZd+QQIh+1jhdb9LpxTF0qs7Pm8o5QHYZ0M3vKqSqzsZaEB6oWlxZ+q2sJBMI/Ktgd2N5ZwQoRHfg==}
+    engines: {node: '>= 0.4'}
+
   p-finally@1.0.0:
     resolution: {integrity: sha512-LICb2p9CB7FS+0eR1oqWnHhp0FljGLZCWBE9aix0Uye9W8LTQPwMTYVGWQWIw9RdQiDg4+epXQODwIYJtSJaow==}
     engines: {node: '>=4'}
@@ -6100,8 +5829,8 @@ packages:
     resolution: {integrity: sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ==}
     engines: {node: '>=8'}
 
-  p-queue@8.0.1:
-    resolution: {integrity: sha512-NXzu9aQJTAzbBqOt2hwsR63ea7yvxJc0PwN/zobNAudYfb1B7R08SzB4TsLeSbUCuG467NhnoT0oO6w1qRO+BA==}
+  p-queue@8.1.0:
+    resolution: {integrity: sha512-mxLDbbGIBEXTJL0zEx8JIylaj3xQ7Z/7eEVjcF9fJX4DBiH9oqe+oahYnlKKxm0Ci9TlWTyhSHgygxMxjIB2jw==}
     engines: {node: '>=18'}
 
   p-reduce@2.1.0:
@@ -6112,8 +5841,8 @@ packages:
     resolution: {integrity: sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==}
     engines: {node: '>=8'}
 
-  p-timeout@6.1.2:
-    resolution: {integrity: sha512-UbD77BuZ9Bc9aABo74gfXhNvzC9Tx7SxtHSh1fxvx3jTLLYvmVhiQZZrJzqqU0jKbN32kb5VOKiLEQI/3bIjgQ==}
+  p-timeout@6.1.4:
+    resolution: {integrity: sha512-MyIV3ZA/PmyBN/ud8vV9XzwTrNtR4jFrObymZYnZqMmW0zA8Z17vnT0rBgFE/TlohB+YCHqXMgZzb3Csp49vqg==}
     engines: {node: '>=14.16'}
 
   p-try@1.0.0:
@@ -6147,8 +5876,8 @@ packages:
     resolution: {integrity: sha512-01TvEktc68vwbJOtWZluyWeVGWjP+bZwXtPDMQVbBKzbJ/vZBif0L69KH1+cHv1SZ6e0FKLvjyHe8mqsIqYOmw==}
     engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
 
-  parse-entities@4.0.1:
-    resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==}
+  parse-entities@4.0.2:
+    resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==}
 
   parse-json@4.0.0:
     resolution: {integrity: sha512-aOIos8bujGN93/8Ox/jPLh7RwVnPEysynVFE+fQZyg6jKELEHwzgKdLRFHUgXJL6kylijVSBC4BvN9OmsB48Rw==}
@@ -6167,8 +5896,8 @@ packages:
   parse-url@8.1.0:
     resolution: {integrity: sha512-xDvOoLU5XRrcOZvnI6b8zA6n9O9ejNk/GExuz1yBuWUGn9KA97GI6HTs6u02wKara1CeVmZhH+0TZFdWScR89w==}
 
-  parse5@7.2.0:
-    resolution: {integrity: sha512-ZkDsAOcxsUMZ4Lz5fVciOehNcJ+Gb8gTzcA4yl3wnc273BAybYWrQ+Ks/OjCjSEpjvQkDSeZbybK9qj2VHHdGA==}
+  parse5@7.2.1:
+    resolution: {integrity: sha512-BuBYQYlv1ckiPdQi/ohiivi9Sagc9JG+Ozs0r7b/0iK3sKmrb0b9FdWdBbOdx6hBCM/F9Ir82ofnBhtZOjCRPQ==}
 
   path-browserify@1.0.1:
     resolution: {integrity: sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==}
@@ -6249,8 +5978,8 @@ packages:
     resolution: {integrity: sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA==}
     engines: {node: '>=10'}
 
-  pirates@4.0.5:
-    resolution: {integrity: sha512-8V9+HQPupnaXMA23c5hvl69zXvTwTzyAYasnkb0Tts4XvO4CliqONMOnvlq26rkhLC3nWDFBJf73LU1e1VZLaQ==}
+  pirates@4.0.6:
+    resolution: {integrity: sha512-saLsH7WeYYPiD25LDuLRRY/i+6HaPYr6G1OUlN39otzkSTxKnubR9RTxS3/Kk50s1g2JTgFwWQDQyplC5/SHZg==}
     engines: {node: '>= 6'}
 
   pkg-dir@4.2.0:
@@ -6321,10 +6050,6 @@ packages:
     peerDependencies:
       postcss: ^8.2.9
 
-  postcss@8.4.47:
-    resolution: {integrity: sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==}
-    engines: {node: ^10 || ^12 || >=14}
-
   postcss@8.5.1:
     resolution: {integrity: sha512-6oz2beyjc5VMn/KV1pPw8fliQkhBXrVn1Z3TVyqZxU8kZpzEKhBdmCFqI6ZbmGtamQvQGuU1sgPTk8ZrXDD7jQ==}
     engines: {node: ^10 || ^12 || >=14}
@@ -6418,8 +6143,8 @@ packages:
   proxy-from-env@1.1.0:
     resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==}
 
-  pump@3.0.0:
-    resolution: {integrity: sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==}
+  pump@3.0.2:
+    resolution: {integrity: sha512-tUPXtzlGM8FE3P0ZL6DVs/3P58k9nk8/jZeQCurTJylQA8qFYzHFfhBJkuqyE0FifOsQ0uKWekiZ5g8wtr28cw==}
 
   punycode.js@2.3.1:
     resolution: {integrity: sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==}
@@ -6448,8 +6173,8 @@ packages:
   raf@3.4.1:
     resolution: {integrity: sha512-Sq4CW4QhwOHE8ucn6J34MqtZCeWFP2aQSmrlroYgqAV1PjStIhJXxYuTgUIfkEk7zTLjmIjLmU5q+fbD1NnOJA==}
 
-  rambda@7.4.0:
-    resolution: {integrity: sha512-A9hihu7dUTLOUCM+I8E61V4kRXnN4DwYeK0DwCBydC1MqNI1PidyAtbtpsJlBBzK4icSctEcCQ1bGcLpBuETUQ==}
+  rambda@7.5.0:
+    resolution: {integrity: sha512-y/M9weqWAH4iopRd7EHDEQQvpFPHj1AA3oHozE9tfITHUtTR7Z9PSlIRRG2l1GuW7sefC1cXFfIcF+cgnShdBA==}
 
   randombytes@2.1.0:
     resolution: {integrity: sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==}
@@ -6520,11 +6245,11 @@ packages:
   readable-stream@1.1.14:
     resolution: {integrity: sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==}
 
-  readable-stream@2.3.7:
-    resolution: {integrity: sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==}
+  readable-stream@2.3.8:
+    resolution: {integrity: sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==}
 
-  readable-stream@3.6.0:
-    resolution: {integrity: sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==}
+  readable-stream@3.6.2:
+    resolution: {integrity: sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==}
     engines: {node: '>= 6'}
 
   readdirp@3.6.0:
@@ -6547,6 +6272,10 @@ packages:
     resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==}
     engines: {node: '>=8'}
 
+  reflect.getprototypeof@1.0.10:
+    resolution: {integrity: sha512-00o4I+DVrefhv+nX0ulyi3biSHCPDe+yLv5o/p6d/UVlirijB8E16FtfwSAi4g3tcqrQ4lRAqQSoFEZJehYEcw==}
+    engines: {node: '>= 0.4'}
+
   regenerate-unicode-properties@10.2.0:
     resolution: {integrity: sha512-DqHn3DwbmmPVzeKj9woBadqmXxLvQoQIwu7nopMc72ztvxVmVk2SBhSnx67zuye5TP+lJsb/TBQsjLKhnDf3MA==}
     engines: {node: '>=4'}
@@ -6569,27 +6298,23 @@ packages:
   regex@5.1.1:
     resolution: {integrity: sha512-dN5I359AVGPnwzJm2jN1k0W9LPZ+ePvoOeVMMfqIMFz53sSwXkxaJoxr50ptnsC771lK95BnTrVSZxq0b9yCGw==}
 
-  regexp.prototype.flags@1.5.1:
-    resolution: {integrity: sha512-sy6TXMN+hnP/wMy+ISxg3krXx7BAtWVO4UouuCN/ziM9UEne0euamVNafDfvC83bRNr95y0V5iijeDQFUNpvrg==}
-    engines: {node: '>= 0.4'}
-
-  regexp.prototype.flags@1.5.3:
-    resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==}
+  regexp.prototype.flags@1.5.4:
+    resolution: {integrity: sha512-dYqgNSZbDwkaJ2ceRd9ojCGjBq+mOm9LmtXnAnEGyHhN/5R7iDW2TRw3h+o/jCFxus3P2LfWIIiwowAjANm7IA==}
     engines: {node: '>= 0.4'}
 
   regexpp@3.2.0:
     resolution: {integrity: sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg==}
     engines: {node: '>=8'}
 
-  regexpu-core@6.1.1:
-    resolution: {integrity: sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==}
+  regexpu-core@6.2.0:
+    resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==}
     engines: {node: '>=4'}
 
   regjsgen@0.8.0:
     resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==}
 
-  regjsparser@0.11.1:
-    resolution: {integrity: sha512-1DHODs4B8p/mQHU9kr+jv8+wIC9mtG4eBHxWxIq5mhjE3D5oORhCc6deRKzTjs9DcfRFmj9BHSDguZklqCGFWQ==}
+  regjsparser@0.12.0:
+    resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==}
     hasBin: true
 
   regl@1.7.0:
@@ -6687,12 +6412,13 @@ packages:
     resolution: {integrity: sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==}
     engines: {node: '>=8'}
 
-  resolve@1.22.2:
-    resolution: {integrity: sha512-Sb+mjNHOULsBv818T40qSPeRiuWLyaGMa5ewydRLFimneixmVy2zdivRl+AF6jaYPC8ERxGDmFSiqui6SfPd+g==}
-    hasBin: true
+  resolve.exports@2.0.3:
+    resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==}
+    engines: {node: '>=10'}
 
-  resolve@1.22.8:
-    resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==}
+  resolve@1.22.10:
+    resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==}
+    engines: {node: '>= 0.4'}
     hasBin: true
 
   restore-cursor@3.1.0:
@@ -6743,8 +6469,8 @@ packages:
     engines: {node: '>=10.0.0'}
     hasBin: true
 
-  rollup@4.24.0:
-    resolution: {integrity: sha512-DOmrlGSXNk1DM0ljiQA+i+o0rSLhtii1je5wgk60j49d1jHT5YYttBv1iWOnYSTG+fZZESUOSNiAl89SIet+Cg==}
+  rollup@4.32.0:
+    resolution: {integrity: sha512-JmrhfQR31Q4AuNBjjAX4s+a/Pu/Q8Q9iwjWBsjRH1q52SPFE2NqRMK6fUZKKnvKO6id+h7JIRf0oYsph53eATg==}
     engines: {node: '>=18.0.0', npm: '>=8.0.0'}
     hasBin: true
 
@@ -6755,15 +6481,11 @@ packages:
   run-parallel@1.2.0:
     resolution: {integrity: sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==}
 
-  rxjs@7.8.0:
-    resolution: {integrity: sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==}
+  rxjs@7.8.1:
+    resolution: {integrity: sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==}
 
-  safe-array-concat@1.0.1:
-    resolution: {integrity: sha512-6XbUAseYE2KtOuGueyeobCySj9L4+66Tn6KQMOPQJrAJEowYKW/YR/MGJZl7FdydUdaFu4LYyDZjxf4/Nmo23Q==}
-    engines: {node: '>=0.4'}
-
-  safe-array-concat@1.1.2:
-    resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==}
+  safe-array-concat@1.1.3:
+    resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==}
     engines: {node: '>=0.4'}
 
   safe-buffer@5.1.2:
@@ -6772,18 +6494,19 @@ packages:
   safe-buffer@5.2.1:
     resolution: {integrity: sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==}
 
-  safe-regex-test@1.0.0:
-    resolution: {integrity: sha512-JBUUzyOgEwXQY1NuPtvcj/qcBDbDmEvWufhlnXZIm75DEHp+afM1r1ujJpJsV/gSM4t59tpDyPi1sd6ZaPFfsA==}
+  safe-push-apply@1.0.0:
+    resolution: {integrity: sha512-iKE9w/Z7xCzUMIZqdBsp6pEQvwuEebH4vdpjcDWnyzaI6yl6O9FHvVpmGelvEHNsoY6wGblkxR6Zty/h00WiSA==}
+    engines: {node: '>= 0.4'}
 
-  safe-regex-test@1.0.3:
-    resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==}
+  safe-regex-test@1.1.0:
+    resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==}
     engines: {node: '>= 0.4'}
 
   safer-buffer@2.1.2:
     resolution: {integrity: sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==}
 
-  sass-lookup@6.1.0:
-    resolution: {integrity: sha512-Zx+lVyoWqXZxHuYWlTA17Z5sczJ6braNT2C7rmClw+c4E7r/n911Zwss3h1uHI9reR5AgHZyNHF7c2+VIp5AUA==}
+  sass-lookup@6.0.1:
+    resolution: {integrity: sha512-nl9Wxbj9RjEJA5SSV0hSDoU2zYGtE+ANaDS4OFUR7nYrquvBFvPKZZtQHe3lvnxCcylEDV00KUijjdMTUElcVQ==}
     engines: {node: '>=18'}
     hasBin: true
 
@@ -6801,11 +6524,6 @@ packages:
     resolution: {integrity: sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==}
     hasBin: true
 
-  semver@7.5.3:
-    resolution: {integrity: sha512-QBlUtyVk/5EeHbi7X0fw6liDZc7BBmEaSYn01fMU1OUYbf6GPsbTtd8WmnqbI20SeycoHSeiybkE/q1Q+qlThQ==}
-    engines: {node: '>=10'}
-    hasBin: true
-
   semver@7.6.3:
     resolution: {integrity: sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==}
     engines: {node: '>=10'}
@@ -6817,22 +6535,18 @@ packages:
   set-blocking@2.0.0:
     resolution: {integrity: sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==}
 
-  set-function-length@1.1.1:
-    resolution: {integrity: sha512-VoaqjbBJKiWtg4yRcKBQ7g7wnGnLV3M8oLvVWwOk2PdYY6PEFegR1vezXR0tw6fZGF9csVakIRjrJiy2veSBFQ==}
-    engines: {node: '>= 0.4'}
-
   set-function-length@1.2.2:
     resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==}
     engines: {node: '>= 0.4'}
 
-  set-function-name@2.0.1:
-    resolution: {integrity: sha512-tMNCiqYVkXIZgc2Hnoy2IvC/f8ezc5koaRFkCjrpWzGpCd3qbZXPzVy9MAZzK1ch/X0jvSkojys3oqJN0qCmdA==}
-    engines: {node: '>= 0.4'}
-
   set-function-name@2.0.2:
     resolution: {integrity: sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==}
     engines: {node: '>= 0.4'}
 
+  set-proto@1.0.0:
+    resolution: {integrity: sha512-RJRdvCo6IAnPdsvP/7m6bsQqNnn1FCBX5ZNtFL98MmFF/4xAIJTIg1YbHW5DC2W5SKZanrC6i4HsJqlajw/dZw==}
+    engines: {node: '>= 0.4'}
+
   sfumato@0.1.2:
     resolution: {integrity: sha512-j2s5BLUS5VUNtaK1l+v+yal3XjjV7JXCQIwE5Xs4yiQ3HJ+2Fc/dd3IkkrVHn0AJO2epShSWVoP3GnE0TvPdMg==}
 
@@ -6852,14 +6566,23 @@ packages:
     resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==}
     engines: {node: '>=8'}
 
-  shiki@1.29.2:
-    resolution: {integrity: sha512-njXuliz/cP+67jU2hukkxCNuH1yUi4QfdZZY+sMr5PPrIyXSu5iTb/qYC4BiWWB0vZ+7TbdvYUCeL23zpwCfbg==}
+  shiki@1.29.1:
+    resolution: {integrity: sha512-TghWKV9pJTd/N+IgAIVJtr0qZkB7FfFCUrrEJc0aRmZupo3D1OCVRknQWVRVA7AX/M0Ld7QfoAruPzr3CnUJuw==}
 
-  side-channel@1.0.4:
-    resolution: {integrity: sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==}
+  side-channel-list@1.0.0:
+    resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==}
+    engines: {node: '>= 0.4'}
 
-  side-channel@1.0.6:
-    resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==}
+  side-channel-map@1.0.1:
+    resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==}
+    engines: {node: '>= 0.4'}
+
+  side-channel-weakmap@1.0.2:
+    resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==}
+    engines: {node: '>= 0.4'}
+
+  side-channel@1.1.0:
+    resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==}
     engines: {node: '>= 0.4'}
 
   siginfo@2.0.0:
@@ -6900,12 +6623,8 @@ packages:
     resolution: {integrity: sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==}
     engines: {node: '>= 6.0.0', npm: '>= 3.0.0'}
 
-  smol-toml@1.3.1:
-    resolution: {integrity: sha512-tEYNll18pPKHroYSmLLrksq233j021G0giwW7P3D24jC54pQ5W5BXMsQ/Mvw1OJCmEYDgY+lrzT+3nNUtoNfXQ==}
-    engines: {node: '>= 18'}
-
-  socks-proxy-agent@8.0.4:
-    resolution: {integrity: sha512-GNAq/eg8Udq2x0eNiFkr9gRg5bA7PXEWagQdeRX4cPSG+X/8V38v637gim9bjFptMk1QWsCTr0ttrJEiXbNnRw==}
+  socks-proxy-agent@8.0.5:
+    resolution: {integrity: sha512-HehCEsotFqbPW9sJ8WVYB6UbmIMv7kUUORIF2Nncq4VQvBfNBLibW9YZR5dlYCSUhwcD628pRllm7n+E+YTzJw==}
     engines: {node: '>= 14'}
 
   socks@2.8.3:
@@ -6956,17 +6675,17 @@ packages:
   space-separated-tokens@2.0.2:
     resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==}
 
-  spdx-correct@3.1.1:
-    resolution: {integrity: sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==}
+  spdx-correct@3.2.0:
+    resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==}
 
-  spdx-exceptions@2.3.0:
-    resolution: {integrity: sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==}
+  spdx-exceptions@2.5.0:
+    resolution: {integrity: sha512-PiU42r+xO4UbUS1buo3LPJkjlO7430Xn5SVAhdpzzsPHsjbYVflnnFdATgabnLude+Cqu25p6N+g2lw/PFsa4w==}
 
   spdx-expression-parse@3.0.1:
     resolution: {integrity: sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==}
 
-  spdx-license-ids@3.0.12:
-    resolution: {integrity: sha512-rr+VVSXtRhO4OHbXUiAF7xW3Bo9DuuF6C5jH+q/x15j2jniycgKbxU09Hr0WqlSLUs4i4ltHGXqTe7VHclYWyA==}
+  spdx-license-ids@3.0.21:
+    resolution: {integrity: sha512-Bvg/8F5XephndSK3JffaRqdT+gyhfqIPwDHpX80tJrF8QQRYMo8sNMeaZ2Dp5+jhwKnUmIOyFFQfHRkjJm5nXg==}
 
   split2@3.2.2:
     resolution: {integrity: sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==}
@@ -6987,8 +6706,8 @@ packages:
   stackback@0.0.2:
     resolution: {integrity: sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw==}
 
-  standardized-audio-context@25.3.37:
-    resolution: {integrity: sha512-lr0+RH/IJXYMts95oYKIJ+orTmstOZN3GXWVGmlkbMj8OLahREkRh7DhNGLYgBGDkBkhhc4ev5pYGSFN3gltHw==}
+  standardized-audio-context@25.3.77:
+    resolution: {integrity: sha512-Ki9zNz6pKcC5Pi+QPjPyVsD9GwJIJWgryji0XL9cAJXMGyn+dPOf6Qik1AHei0+UNVcc4BOCa0hWLBzlwqsW/A==}
 
   std-env@3.8.0:
     resolution: {integrity: sha512-Bc3YwwCB+OzldMxOXJIIvC6cPRWr/LxOp48CdQTOkPyk/t4JWWJbrilwBd7RJzKV8QW7tJkcgAmeuLLJugl5/w==}
@@ -7021,24 +6740,18 @@ packages:
     resolution: {integrity: sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==}
     engines: {node: '>=18'}
 
-  string.prototype.matchall@4.0.11:
-    resolution: {integrity: sha512-NUdh0aDavY2og7IbBPenWqR9exH+E26Sv8e0/eTe1tltDGZL+GtBkDAnnyBtmekfK6/Dq3MkcGtzXFEd1LQrtg==}
+  string.prototype.matchall@4.0.12:
+    resolution: {integrity: sha512-6CC9uyBL+/48dYizRf7H7VAYCMCNTBeM78x/VTUe9bFEaxBepPJDa1Ow99LqI/1yF7kuy7Q3cQsYMrcjGUcskA==}
     engines: {node: '>= 0.4'}
 
-  string.prototype.trim@1.2.8:
-    resolution: {integrity: sha512-lfjY4HcixfQXOfaqCvcBuOIapyaroTXhbkfJN3gcB1OtyupngWK4sEET9Knd0cXd28kTUqu/kHoV4HKSJdnjiQ==}
+  string.prototype.trim@1.2.10:
+    resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==}
     engines: {node: '>= 0.4'}
 
-  string.prototype.trim@1.2.9:
-    resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==}
+  string.prototype.trimend@1.0.9:
+    resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==}
     engines: {node: '>= 0.4'}
 
-  string.prototype.trimend@1.0.8:
-    resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==}
-
-  string.prototype.trimstart@1.0.7:
-    resolution: {integrity: sha512-NGhtDFu3jCEm7B4Fy0DpLewdJQOZcQ0rGbwQ/+stjnrp2i+rlKeCvos9hOIeCmqwratM47OBxY7uFZzjxHXmrg==}
-
   string.prototype.trimstart@1.0.8:
     resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==}
     engines: {node: '>= 0.4'}
@@ -7107,17 +6820,14 @@ packages:
     engines: {node: '>=4'}
     hasBin: true
 
-  style-mod@4.1.0:
-    resolution: {integrity: sha512-Ca5ib8HrFn+f+0n4N4ScTIA9iTOQ7MaGS1ylHcoVqW9J7w2w8PzN6g9gKmTYgGEBH8e120+RCmhpje6jC5uGWA==}
-
-  style-to-object@0.4.4:
-    resolution: {integrity: sha512-HYNoHZa2GorYNyqiCaBgsxvcJIn7OHq6inEga+E6Ke3m5JkoqpQbnFssk4jwe+K7AhGa2fcha4wSOf1Kn01dMg==}
+  style-mod@4.1.2:
+    resolution: {integrity: sha512-wnD1HyVqpJUI2+eKZ+eo1UwghftP6yuFheBqqe+bWCotBjC2K1YnteJILRMs3SM4V/0dLEW1SC27MWP5y+mwmw==}
 
   style-to-object@1.0.8:
     resolution: {integrity: sha512-xT47I/Eo0rwJmaXC4oilDGDWLohVhR6o/xAQcPQN8q6QBuZVL8qMYL85kLmST5cPjAorwvqIA4qXTRQoYHaL6g==}
 
-  stylus-lookup@6.1.0:
-    resolution: {integrity: sha512-5QSwgxAzXPMN+yugy61C60PhoANdItfdjSEZR8siFwz7yL9jTmV0UBKDCfn3K8GkGB4g0Y9py7vTCX8rFu4/pQ==}
+  stylus-lookup@6.0.0:
+    resolution: {integrity: sha512-RaWKxAvPnIXrdby+UWCr1WRfa+lrPMSJPySte4Q6a+rWyjeJyFOLJxr5GrAVfcMCsfVlCuzTAJ/ysYT8p8do7Q==}
     engines: {node: '>=18'}
     hasBin: true
 
@@ -7126,10 +6836,6 @@ packages:
     engines: {node: '>=16 || 14 >=14.17'}
     hasBin: true
 
-  supports-color@5.5.0:
-    resolution: {integrity: sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==}
-    engines: {node: '>=4'}
-
   supports-color@7.2.0:
     resolution: {integrity: sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==}
     engines: {node: '>=8'}
@@ -7146,15 +6852,15 @@ packages:
     engines: {node: '>=14.0.0'}
     hasBin: true
 
-  tailwindcss@4.0.1:
-    resolution: {integrity: sha512-UK5Biiit/e+r3i0O223bisoS5+y7ZT1PM8Ojn0MxRHzXN1VPZ2KY6Lo6fhu1dOfCfyUAlK7Lt6wSxowRabATBw==}
+  tailwindcss@4.0.0:
+    resolution: {integrity: sha512-ULRPI3A+e39T7pSaf1xoi58AqqJxVCLg8F/uM5A3FadUbnyDTgltVnXJvdkTjwCOGA6NazqHVcwPJC5h2vRYVQ==}
 
   tapable@2.2.1:
     resolution: {integrity: sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ==}
     engines: {node: '>=6'}
 
-  tar-fs@2.1.1:
-    resolution: {integrity: sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==}
+  tar-fs@2.1.2:
+    resolution: {integrity: sha512-EsaAXwxmx8UB7FRKqeozqEPop69DXcmYwTQwXvyAPF352HJsPdkVhvTaDPYqfNgruveJIJy3TA2l+2zj8LJIJA==}
 
   tar-stream@2.2.0:
     resolution: {integrity: sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==}
@@ -7176,8 +6882,8 @@ packages:
     resolution: {integrity: sha512-G13vtMYPT/J8A4X2SjdtBTphZlrp1gKv6hZiOjw14RCWg6GbHuQBGtjlx75xLbYV/wEc0D7G5K4rxKP/cXk8Bw==}
     engines: {node: '>=10'}
 
-  terser@5.36.0:
-    resolution: {integrity: sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==}
+  terser@5.37.0:
+    resolution: {integrity: sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==}
     engines: {node: '>=10'}
     hasBin: true
 
@@ -7227,9 +6933,9 @@ packages:
     resolution: {integrity: sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==}
     engines: {node: '>=0.6.0'}
 
-  tmp@0.2.1:
-    resolution: {integrity: sha512-76SUhtfqR2Ijn+xllcI5P1oyannHNHByD80W1q447gU3mp9G9PSpGdWmjUOHRDPiHYacIk66W7ubDTuPF3BEtQ==}
-    engines: {node: '>=8.17.0'}
+  tmp@0.2.3:
+    resolution: {integrity: sha512-nZD7m9iCPC5g0pYmcaxogYKggSfLsdxl8of3Q/oIbqCqLLIO9IAF0GWjX1z9NZRHPiXv8Wex4yDCaZsgEw0Y8w==}
+    engines: {node: '>=14.14'}
 
   to-fast-properties@2.0.0:
     resolution: {integrity: sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==}
@@ -7300,9 +7006,6 @@ packages:
     resolution: {integrity: sha512-NoZ4roiN7LnbKn9QqE1amc9DJfzvZXxF4xDavcOWt1BPkdx+m+0gJuPM+S0vCe7zTJMYUP0R8pO2XMr+Y8oLIg==}
     engines: {node: '>=6'}
 
-  tslib@2.8.0:
-    resolution: {integrity: sha512-jWVzBLplnCmoaTr13V9dYbiQ99wvZRd0vNWaDRg+aVYRcjDF3nDksxFDE/+fkXnKhpnUUkmx5pK/v8mCtLVqZA==}
-
   tslib@2.8.1:
     resolution: {integrity: sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==}
 
@@ -7341,46 +7044,31 @@ packages:
     resolution: {integrity: sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==}
     engines: {node: '>=8'}
 
-  type-fest@4.26.1:
-    resolution: {integrity: sha512-yOGpmOAL7CkKe/91I5O3gPICmJNLJ1G4zFYVAsRHg7M64biSnPtRj0WNQt++bRkjYOqjWXrhnUw1utzmVErAdg==}
+  type-fest@4.33.0:
+    resolution: {integrity: sha512-s6zVrxuyKbbAsSAD5ZPTB77q4YIdRctkTbJ2/Dqlinwz+8ooH2gd+YA7VA6Pa93KML9GockVvoxjZ2vHP+mu8g==}
     engines: {node: '>=16'}
 
-  typed-array-buffer@1.0.0:
-    resolution: {integrity: sha512-Y8KTSIglk9OZEr8zywiIHG/kmQ7KWyjseXs1CbSo8vC42w7hg2HgYTxSWwP0+is7bWDc1H+Fo026CpHFwm8tkw==}
+  typed-array-buffer@1.0.3:
+    resolution: {integrity: sha512-nAYYwfY3qnzX30IkA6AQZjVbtK6duGontcQm1WSG1MD94YLqK0515GNApXkoxKOWMusVssAHWLh9SeaoefYFGw==}
     engines: {node: '>= 0.4'}
 
-  typed-array-buffer@1.0.2:
-    resolution: {integrity: sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==}
+  typed-array-byte-length@1.0.3:
+    resolution: {integrity: sha512-BaXgOuIxz8n8pIq3e7Atg/7s+DpiYrxn4vdot3w9KbnBhcRQq6o3xemQdIfynqSeXeDrF32x+WvfzmOjPiY9lg==}
     engines: {node: '>= 0.4'}
 
-  typed-array-byte-length@1.0.0:
-    resolution: {integrity: sha512-Or/+kvLxNpeQ9DtSydonMxCx+9ZXOswtwJn17SNLvhptaXYDJvkFFP5zbfU/uLmvnBJlI4yrnXRxpdWH/M5tNA==}
+  typed-array-byte-offset@1.0.4:
+    resolution: {integrity: sha512-bTlAFB/FBYMcuX81gbL4OcpH5PmlFHqlCCpAl8AlEzMz5k53oNDvN8p1PNOWLEmI2x4orp3raOFB51tv9X+MFQ==}
     engines: {node: '>= 0.4'}
 
-  typed-array-byte-length@1.0.1:
-    resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==}
-    engines: {node: '>= 0.4'}
-
-  typed-array-byte-offset@1.0.0:
-    resolution: {integrity: sha512-RD97prjEt9EL8YgAgpOkf3O4IF9lhJFr9g0htQkm0rchFp/Vx7LW5Q8fSXXub7BXAODyUQohRMyOc3faCPd0hg==}
-    engines: {node: '>= 0.4'}
-
-  typed-array-byte-offset@1.0.2:
-    resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==}
-    engines: {node: '>= 0.4'}
-
-  typed-array-length@1.0.4:
-    resolution: {integrity: sha512-KjZypGq+I/H7HI5HlOoGHkWUUGq+Q0TPhQurLbyrVrvnKTBgzLhIJ7j6J/XTQOi0d1RjyZ0wdas8bKs2p0x3Ng==}
-
-  typed-array-length@1.0.6:
-    resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==}
+  typed-array-length@1.0.7:
+    resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==}
     engines: {node: '>= 0.4'}
 
   typedarray@0.0.6:
     resolution: {integrity: sha512-/aCDEGatGvZ2BIk+HmLf4ifCJFwvKFNb9/JeZPMulfgFracn9QFcAf5GO8B/mweUjSoblS5In0cWhqpfs/5PQA==}
 
-  typescript@5.6.3:
-    resolution: {integrity: sha512-hjcS1mhfuyi4WW8IWtjP7brDrG2cuDZukyrYrSauoXGNgx0S7zceP07adYkJycEr56BOUTNPzbInooiN3fn1qw==}
+  typescript@5.7.3:
+    resolution: {integrity: sha512-84MVSjMEHP+FQRPy3pX9sTVV/INIex71s9TL2Gm5FG/WG1SqXeKyZ0k7/blY/4FdOzI12CBy1vGc4og/eus0fw==}
     engines: {node: '>=14.17'}
     hasBin: true
 
@@ -7398,14 +7086,15 @@ packages:
   ultrahtml@1.5.3:
     resolution: {integrity: sha512-GykOvZwgDWZlTQMtp5jrD4BVL+gNn2NVlVafjcFUJ7taY20tqYdwdoWBFy6GBJsNTZe1GkGPkSl5knQAjtgceg==}
 
-  unbox-primitive@1.0.2:
-    resolution: {integrity: sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==}
+  unbox-primitive@1.1.0:
+    resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==}
+    engines: {node: '>= 0.4'}
 
   uncrypto@0.1.3:
     resolution: {integrity: sha512-Ql87qFHB3s/De2ClA9e0gsnS6zXG27SkTiSJwjCc9MebbfapQfuPzumMIUMi38ezPZVNFcHI9sUIepeQfw8J8Q==}
 
-  underscore@1.13.6:
-    resolution: {integrity: sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==}
+  underscore@1.13.7:
+    resolution: {integrity: sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g==}
 
   undici-types@6.20.0:
     resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==}
@@ -7429,9 +7118,6 @@ packages:
     resolution: {integrity: sha512-6t3foTQI9qne+OZoVQB/8x8rk2k1eVy1gRXhV3oFQ5T6R1dqQ1xtin3XqSlx3+ATBkliTaR/hHyJBm+LVPNM8w==}
     engines: {node: '>=4'}
 
-  unified@11.0.4:
-    resolution: {integrity: sha512-apMPnyLjAX+ty4OrNap7yumyVAMlKx5IWU2wlzzUdYJO9A8f1p9m/gywF/GM2ZDFcjQPrx59Mc90KwmxsoklxQ==}
-
   unified@11.0.5:
     resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==}
 
@@ -7486,12 +7172,8 @@ packages:
   unist-util-visit@5.0.0:
     resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==}
 
-  universal-user-agent@6.0.0:
-    resolution: {integrity: sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w==}
-
-  universalify@2.0.0:
-    resolution: {integrity: sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==}
-    engines: {node: '>= 10.0.0'}
+  universal-user-agent@6.0.1:
+    resolution: {integrity: sha512-yCzhz6FN2wU1NiiQRogkTQszlQSlpWaw8SvVegAc+bDxbzHgh1vX8uIe8OYyMH6DwH+sdTJsgMl36+mSMdRJIQ==}
 
   universalify@2.0.1:
     resolution: {integrity: sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==}
@@ -7567,8 +7249,8 @@ packages:
     resolution: {integrity: sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==}
     engines: {node: '>=4'}
 
-  update-browserslist-db@1.1.1:
-    resolution: {integrity: sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==}
+  update-browserslist-db@1.1.2:
+    resolution: {integrity: sha512-PPypAm5qvlD7XMZC3BujecnaOxwhrtoFR+Dqkk5Aa/6DssiH0ibKoketaj9w8LP7Bont1rYeoV5plxD7RTEPRg==}
     hasBin: true
     peerDependencies:
       browserslist: '>= 4.21.0'
@@ -7590,8 +7272,8 @@ packages:
     resolution: {integrity: sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==}
     engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0}
 
-  vfile-location@5.0.2:
-    resolution: {integrity: sha512-NXPYyxyBSH7zB5U6+3uDdd6Nybz6o6/od9rk8bp9H8GR3L+cm/fC0uUTbqBmUTnMCUDslAGBOIKNfvvb+gGlDg==}
+  vfile-location@5.0.3:
+    resolution: {integrity: sha512-5yXvWDEgqeiYiBe1lbxYF7UMAIm/IcopxMHrMQDq3nvKcjPKIhZklUKL+AE7J7uApI4kwe2snsK+eI6UTj9EHg==}
 
   vfile-message@4.0.2:
     resolution: {integrity: sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==}
@@ -7611,43 +7293,16 @@ packages:
     engines: {node: ^18.0.0 || ^20.0.0 || >=22.0.0}
     hasBin: true
 
-  vite-plugin-pwa@0.17.5:
-    resolution: {integrity: sha512-UxRNPiJBzh4tqU/vc8G2TxmrUTzT6BqvSzhszLk62uKsf+npXdvLxGDz9C675f4BJi6MbD2tPnJhi5txlMzxbQ==}
+  vite-plugin-pwa@0.21.1:
+    resolution: {integrity: sha512-rkTbKFbd232WdiRJ9R3u+hZmf5SfQljX1b45NF6oLA6DSktEKpYllgTo1l2lkiZWMWV78pABJtFjNXfBef3/3Q==}
     engines: {node: '>=16.0.0'}
     peerDependencies:
-      vite: ^3.1.0 || ^4.0.0 || ^5.0.0
-      workbox-build: ^7.0.0
-      workbox-window: ^7.0.0
-
-  vite@5.4.9:
-    resolution: {integrity: sha512-20OVpJHh0PAM0oSOELa5GaZNWeDjcAvQjGXy2Uyr+Tp+/D2/Hdz6NLgpJLsarPTA2QJ6v8mX2P1ZfbsSKvdMkg==}
-    engines: {node: ^18.0.0 || >=20.0.0}
-    hasBin: true
-    peerDependencies:
-      '@types/node': ^18.0.0 || >=20.0.0
-      less: '*'
-      lightningcss: ^1.21.0
-      sass: '*'
-      sass-embedded: '*'
-      stylus: '*'
-      sugarss: '*'
-      terser: ^5.4.0
+      '@vite-pwa/assets-generator': ^0.2.6
+      vite: ^3.1.0 || ^4.0.0 || ^5.0.0 || ^6.0.0
+      workbox-build: ^7.3.0
+      workbox-window: ^7.3.0
     peerDependenciesMeta:
-      '@types/node':
-        optional: true
-      less:
-        optional: true
-      lightningcss:
-        optional: true
-      sass:
-        optional: true
-      sass-embedded:
-        optional: true
-      stylus:
-        optional: true
-      sugarss:
-        optional: true
-      terser:
+      '@vite-pwa/assets-generator':
         optional: true
 
   vite@6.0.11:
@@ -7726,8 +7381,8 @@ packages:
       jsdom:
         optional: true
 
-  w3c-keyname@2.2.6:
-    resolution: {integrity: sha512-f+fciywl1SJEniZHD6H+kUO8gOnwIr7f4ijKA6+ZvJFjeGi1r4PDLl53Ayud9O/rk64RqgoQine0feoeOU0kXg==}
+  w3c-keyname@2.2.8:
+    resolution: {integrity: sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==}
 
   walk-up-path@3.0.1:
     resolution: {integrity: sha512-9YlCL/ynK3CTlrSRrDxZvUauLzAswPCrsaCgilqFevUYpeEW0/3ScEjaa3kbW/T0ghhkEr7mv+fpjqn1Y1YuTA==}
@@ -7738,14 +7393,14 @@ packages:
   wcwidth@1.0.1:
     resolution: {integrity: sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==}
 
-  web-midi-api@2.2.2:
-    resolution: {integrity: sha512-lQFqcdmzoxLx1833DOC4bavfk9Cp5bjkC5SlZAceqsuUoc2j+fYSbqv45XwJqeECkCUXzB9UQ8wyWr40ppINhw==}
+  web-midi-api@2.3.5:
+    resolution: {integrity: sha512-gbLl0u0I9lVE3V7XeJ5GfG1XFoZFzTEJOyROLmfdA4KJYOSCWHTTYOp7/p7truo5XizTgj5DpRwGLuKrY7wwww==}
 
   web-namespaces@2.0.1:
     resolution: {integrity: sha512-bKr1DkiNa2krS7qxNtdrtHAmzuYGFQLiQ13TsorsdT6ULTkPLKuu5+GsFpDlg6JFjUTwX2DyhMPG2be8uPrqsQ==}
 
-  web-streams-polyfill@3.2.1:
-    resolution: {integrity: sha512-e0MO3wdXWKrLbL0DgGnUV7WHVuw9OUvL4hjgnPkIeEvESk74gAITi5G606JtZPp39cd8HA9VQzCIvA49LpPN5Q==}
+  web-streams-polyfill@3.3.3:
+    resolution: {integrity: sha512-d2JWLCivmZYTSIoge9MsgFCZrt571BikcWGYkjC1khllbTeDlGqZ2D8vD8E/lJa8WGWbb7Plm8/XJYV7IJHZZw==}
     engines: {node: '>= 8'}
 
   web-tree-sitter@0.20.8:
@@ -7770,8 +7425,17 @@ packages:
   whatwg-url@7.1.0:
     resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==}
 
-  which-boxed-primitive@1.0.2:
-    resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==}
+  which-boxed-primitive@1.1.1:
+    resolution: {integrity: sha512-TbX3mj8n0odCBFVlY8AxkqcHASw3L60jIuF8jFP78az3C2YhmGvqbHBpAjTRH2/xqYunrJ9g1jSyjCjpoWzIAA==}
+    engines: {node: '>= 0.4'}
+
+  which-builtin-type@1.2.1:
+    resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==}
+    engines: {node: '>= 0.4'}
+
+  which-collection@1.0.2:
+    resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==}
+    engines: {node: '>= 0.4'}
 
   which-module@2.0.1:
     resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==}
@@ -7784,12 +7448,8 @@ packages:
     resolution: {integrity: sha512-ysVYmw6+ZBhx3+ZkcPwRuJi38ZOTLJJ33PSHaitLxSKUMsh0LkKd0nC69zZCwt5D+AYUcMK2hhw4yWny20vSGg==}
     engines: {node: '>=18.12'}
 
-  which-typed-array@1.1.13:
-    resolution: {integrity: sha512-P5Nra0qjSncduVPEAr7xhoF5guty49ArDTwzJ/yNuPIbZppyRxFQsRCWrocxIY+CnMVG+qfbU2FmDKyvSGClow==}
-    engines: {node: '>= 0.4'}
-
-  which-typed-array@1.1.15:
-    resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==}
+  which-typed-array@1.1.18:
+    resolution: {integrity: sha512-qEcY+KJYlWyLH9vNbsr6/5j59AXk5ni5aakf8ldzBvGde6Iz4sxZGkJyWSAueTG7QhOvNRYb1lDdFmL5Td0QKA==}
     engines: {node: '>= 0.4'}
 
   which@2.0.2:
@@ -7814,6 +7474,10 @@ packages:
     resolution: {integrity: sha512-c9bZp7b5YtRj2wOe6dlj32MK+Bx/M/d+9VB2SHM1OtsUHR0aV0tdP6DWh/iMt0kWi1t5g1Iudu6hQRNd1A4PVA==}
     engines: {node: '>=18'}
 
+  word-wrap@1.2.5:
+    resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==}
+    engines: {node: '>=0.10.0'}
+
   wordwrap@1.0.0:
     resolution: {integrity: sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==}
 
@@ -7950,9 +7614,10 @@ packages:
   yallist@4.0.0:
     resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==}
 
-  yaml@2.3.4:
-    resolution: {integrity: sha512-8aAvwVUSHpfEqTQ4w/KMlf3HcRdt50E5ODIQJBw1fQ5RL34xabzxtUlzTXVqc4rkZsPbvrXKWnABCD7kWSmocA==}
+  yaml@2.7.0:
+    resolution: {integrity: sha512-+hSoy/QHluxmC9kCIJyL/uyFmLmc+e5CFR5Wa+bpIhIj85LVb9ZH2nVnqrHoSvKogwODv0ClqZkmiSSaIH5LTA==}
     engines: {node: '>= 14'}
+    hasBin: true
 
   yargs-parser@18.1.3:
     resolution: {integrity: sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==}
@@ -8013,8 +7678,6 @@ packages:
 
 snapshots:
 
-  '@aashutoshrathi/word-wrap@1.2.6': {}
-
   '@algolia/autocomplete-core@1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)(search-insights@2.13.0)':
     dependencies:
       '@algolia/autocomplete-plugin-algolia-insights': 1.17.9(@algolia/client-search@5.20.0)(algoliasearch@5.20.0)(search-insights@2.13.0)
@@ -8124,7 +7787,7 @@ snapshots:
 
   '@ampproject/remapping@2.3.0':
     dependencies:
-      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/gen-mapping': 0.3.8
       '@jridgewell/trace-mapping': 0.3.25
 
   '@apideck/better-ajv-errors@0.3.6(ajv@8.17.1)':
@@ -8134,16 +7797,16 @@ snapshots:
       jsonpointer: 5.0.1
       leven: 3.1.0
 
-  '@astro-community/astro-embed-youtube@0.5.6(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))':
+  '@astro-community/astro-embed-youtube@0.5.6(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))':
     dependencies:
-      astro: 5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3)
+      astro: 5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0)
       lite-youtube-embed: 0.3.3
 
   '@astrojs/compiler@2.10.3': {}
 
-  '@astrojs/internal-helpers@0.5.0': {}
+  '@astrojs/internal-helpers@0.4.2': {}
 
-  '@astrojs/markdown-remark@6.1.0':
+  '@astrojs/markdown-remark@6.0.2':
     dependencies:
       '@astrojs/prism': 3.2.0
       github-slugger: 2.0.0
@@ -8158,8 +7821,7 @@ snapshots:
       remark-parse: 11.0.0
       remark-rehype: 11.1.1
       remark-smartypants: 3.0.2
-      shiki: 1.29.2
-      smol-toml: 1.3.1
+      shiki: 1.29.1
       unified: 11.0.5
       unist-util-remove-position: 5.0.0
       unist-util-visit: 5.0.0
@@ -8168,12 +7830,12 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@astrojs/mdx@4.0.8(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))':
+  '@astrojs/mdx@4.0.7(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))':
     dependencies:
-      '@astrojs/markdown-remark': 6.1.0
+      '@astrojs/markdown-remark': 6.0.2
       '@mdx-js/mdx': 3.1.0(acorn@8.14.0)
       acorn: 8.14.0
-      astro: 5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3)
+      astro: 5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0)
       es-module-lexer: 1.6.0
       estree-util-visit: 2.0.0
       hast-util-to-html: 9.0.4
@@ -8191,15 +7853,15 @@ snapshots:
     dependencies:
       prismjs: 1.29.0
 
-  '@astrojs/react@4.2.0(@types/node@22.12.0)(@types/react-dom@19.0.3(@types/react@19.0.8))(@types/react@19.0.8)(jiti@2.4.2)(lightningcss@1.29.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(terser@5.36.0)':
+  '@astrojs/react@4.1.6(@types/node@22.10.10)(@types/react-dom@19.0.3(@types/react@19.0.8))(@types/react@19.0.8)(jiti@2.4.2)(lightningcss@1.29.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(terser@5.37.0)(yaml@2.7.0)':
     dependencies:
       '@types/react': 19.0.8
       '@types/react-dom': 19.0.3(@types/react@19.0.8)
-      '@vitejs/plugin-react': 4.3.4(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))
+      '@vitejs/plugin-react': 4.3.4(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))
       react: 19.0.0
       react-dom: 19.0.0(react@19.0.0)
       ultrahtml: 1.5.3
-      vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
     transitivePeerDependencies:
       - '@types/node'
       - jiti
@@ -8216,12 +7878,12 @@ snapshots:
 
   '@astrojs/rss@4.0.11':
     dependencies:
-      fast-xml-parser: 4.5.0
+      fast-xml-parser: 4.5.1
       kleur: 4.1.5
 
-  '@astrojs/tailwind@5.1.5(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))(tailwindcss@3.4.17)':
+  '@astrojs/tailwind@5.1.5(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))(tailwindcss@3.4.17)':
     dependencies:
-      astro: 5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3)
+      astro: 5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0)
       autoprefixer: 10.4.20(postcss@8.5.1)
       postcss: 8.5.1
       postcss-load-config: 4.0.2(postcss@8.5.1)
@@ -8241,11 +7903,6 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/code-frame@7.25.7':
-    dependencies:
-      '@babel/highlight': 7.25.7
-      picocolors: 1.1.1
-
   '@babel/code-frame@7.26.2':
     dependencies:
       '@babel/helper-validator-identifier': 7.25.9
@@ -8267,7 +7924,7 @@ snapshots:
       '@babel/traverse': 7.26.7
       '@babel/types': 7.26.7
       convert-source-map: 2.0.0
-      debug: 4.3.7
+      debug: 4.4.0
       gensync: 1.0.0-beta.2
       json5: 2.2.3
       semver: 6.3.1
@@ -8276,69 +7933,62 @@ snapshots:
 
   '@babel/generator@7.18.2':
     dependencies:
-      '@babel/types': 7.21.5
-      '@jridgewell/gen-mapping': 0.3.2
+      '@babel/types': 7.19.0
+      '@jridgewell/gen-mapping': 0.3.8
       jsesc: 2.5.2
 
   '@babel/generator@7.26.5':
     dependencies:
       '@babel/parser': 7.26.7
       '@babel/types': 7.26.7
-      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/gen-mapping': 0.3.8
       '@jridgewell/trace-mapping': 0.3.25
-      jsesc: 3.0.2
+      jsesc: 3.1.0
 
-  '@babel/helper-annotate-as-pure@7.25.7':
+  '@babel/helper-annotate-as-pure@7.25.9':
     dependencies:
       '@babel/types': 7.26.7
 
-  '@babel/helper-builder-binary-assignment-operator-visitor@7.25.7':
-    dependencies:
-      '@babel/traverse': 7.26.7
-      '@babel/types': 7.26.7
-    transitivePeerDependencies:
-      - supports-color
-
   '@babel/helper-compilation-targets@7.26.5':
     dependencies:
       '@babel/compat-data': 7.26.5
       '@babel/helper-validator-option': 7.25.9
-      browserslist: 4.24.0
+      browserslist: 4.24.4
       lru-cache: 5.1.1
       semver: 6.3.1
 
-  '@babel/helper-create-class-features-plugin@7.25.7(@babel/core@7.26.7)':
+  '@babel/helper-create-class-features-plugin@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-annotate-as-pure': 7.25.7
-      '@babel/helper-member-expression-to-functions': 7.25.7
-      '@babel/helper-optimise-call-expression': 7.25.7
-      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.26.7)
-      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+      '@babel/helper-annotate-as-pure': 7.25.9
+      '@babel/helper-member-expression-to-functions': 7.25.9
+      '@babel/helper-optimise-call-expression': 7.25.9
+      '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.7)
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
       '@babel/traverse': 7.26.7
       semver: 6.3.1
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-create-regexp-features-plugin@7.25.7(@babel/core@7.26.7)':
+  '@babel/helper-create-regexp-features-plugin@7.26.3(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-annotate-as-pure': 7.25.7
-      regexpu-core: 6.1.1
+      '@babel/helper-annotate-as-pure': 7.25.9
+      regexpu-core: 6.2.0
       semver: 6.3.1
 
-  '@babel/helper-define-polyfill-provider@0.6.2(@babel/core@7.26.7)':
+  '@babel/helper-define-polyfill-provider@0.6.3(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-compilation-targets': 7.26.5
       '@babel/helper-plugin-utils': 7.26.5
       debug: 4.4.0
       lodash.debounce: 4.0.8
-      resolve: 1.22.8
+      resolve: 1.22.10
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-member-expression-to-functions@7.25.7':
+  '@babel/helper-member-expression-to-functions@7.25.9':
     dependencies:
       '@babel/traverse': 7.26.7
       '@babel/types': 7.26.7
@@ -8361,59 +8011,44 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-optimise-call-expression@7.25.7':
+  '@babel/helper-optimise-call-expression@7.25.9':
     dependencies:
       '@babel/types': 7.26.7
 
   '@babel/helper-plugin-utils@7.26.5': {}
 
-  '@babel/helper-remap-async-to-generator@7.25.7(@babel/core@7.26.7)':
+  '@babel/helper-remap-async-to-generator@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-annotate-as-pure': 7.25.7
-      '@babel/helper-wrap-function': 7.25.7
+      '@babel/helper-annotate-as-pure': 7.25.9
+      '@babel/helper-wrap-function': 7.25.9
       '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-replace-supers@7.25.7(@babel/core@7.26.7)':
+  '@babel/helper-replace-supers@7.26.5(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-member-expression-to-functions': 7.25.7
-      '@babel/helper-optimise-call-expression': 7.25.7
+      '@babel/helper-member-expression-to-functions': 7.25.9
+      '@babel/helper-optimise-call-expression': 7.25.9
       '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-simple-access@7.25.7':
+  '@babel/helper-skip-transparent-expression-wrappers@7.25.9':
     dependencies:
       '@babel/traverse': 7.26.7
       '@babel/types': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/helper-skip-transparent-expression-wrappers@7.25.7':
-    dependencies:
-      '@babel/traverse': 7.26.7
-      '@babel/types': 7.26.7
-    transitivePeerDependencies:
-      - supports-color
-
-  '@babel/helper-string-parser@7.21.5': {}
-
-  '@babel/helper-string-parser@7.25.7': {}
-
   '@babel/helper-string-parser@7.25.9': {}
 
-  '@babel/helper-validator-identifier@7.19.1': {}
-
-  '@babel/helper-validator-identifier@7.25.7': {}
-
   '@babel/helper-validator-identifier@7.25.9': {}
 
   '@babel/helper-validator-option@7.25.9': {}
 
-  '@babel/helper-wrap-function@7.25.7':
+  '@babel/helper-wrap-function@7.25.9':
     dependencies:
       '@babel/template': 7.25.9
       '@babel/traverse': 7.26.7
@@ -8426,26 +8061,15 @@ snapshots:
       '@babel/template': 7.25.9
       '@babel/types': 7.26.7
 
-  '@babel/highlight@7.25.7':
-    dependencies:
-      '@babel/helper-validator-identifier': 7.25.7
-      chalk: 2.4.2
-      js-tokens: 4.0.0
-      picocolors: 1.1.1
-
   '@babel/parser@7.18.4':
     dependencies:
-      '@babel/types': 7.21.5
-
-  '@babel/parser@7.25.8':
-    dependencies:
-      '@babel/types': 7.25.8
+      '@babel/types': 7.19.0
 
   '@babel/parser@7.26.7':
     dependencies:
       '@babel/types': 7.26.7
 
-  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
@@ -8453,26 +8077,26 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-bugfix-safari-class-field-initializer-scope@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
-      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.26.7)
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
+      '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
@@ -8484,12 +8108,12 @@ snapshots:
     dependencies:
       '@babel/core': 7.26.7
 
-  '@babel/plugin-syntax-import-assertions@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-syntax-import-assertions@7.26.0(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-syntax-import-attributes@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-syntax-import-attributes@7.26.0(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
@@ -8497,125 +8121,122 @@ snapshots:
   '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-arrow-functions@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-async-generator-functions@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-async-generator-functions@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.7)
       '@babel/traverse': 7.26.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-async-to-generator@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-async-to-generator@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-module-imports': 7.25.9
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-remap-async-to-generator': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-block-scoped-functions@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-block-scoped-functions@7.26.5(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-block-scoping@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-block-scoping@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-class-properties@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-class-properties@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-class-static-block@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-class-static-block@7.26.0(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-classes@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-classes@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-annotate-as-pure': 7.25.7
+      '@babel/helper-annotate-as-pure': 7.25.9
       '@babel/helper-compilation-targets': 7.26.5
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.7)
       '@babel/traverse': 7.26.7
       globals: 11.12.0
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-computed-properties@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-computed-properties@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
       '@babel/template': 7.25.9
 
-  '@babel/plugin-transform-destructuring@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-destructuring@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-dotall-regex@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-duplicate-keys@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-dynamic-import@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-exponentiation-operator@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-exponentiation-operator@7.26.3(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.7
       '@babel/helper-plugin-utils': 7.26.5
+
+  '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.26.7)':
+    dependencies:
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+
+  '@babel/plugin-transform-for-of@7.25.9(@babel/core@7.26.7)':
+    dependencies:
+      '@babel/core': 7.26.7
+      '@babel/helper-plugin-utils': 7.26.5
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-export-namespace-from@7.25.8(@babel/core@7.26.7)':
-    dependencies:
-      '@babel/core': 7.26.7
-      '@babel/helper-plugin-utils': 7.26.5
-
-  '@babel/plugin-transform-for-of@7.25.7(@babel/core@7.26.7)':
-    dependencies:
-      '@babel/core': 7.26.7
-      '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
-    transitivePeerDependencies:
-      - supports-color
-
-  '@babel/plugin-transform-function-name@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-function-name@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-compilation-targets': 7.26.5
@@ -8624,27 +8245,27 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-json-strings@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-json-strings@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-literals@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-literals@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-logical-assignment-operators@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-logical-assignment-operators@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-member-expression-literals@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-member-expression-literals@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-modules-amd@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-modules-amd@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
@@ -8652,16 +8273,15 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-modules-commonjs@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-modules-commonjs@7.26.3(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-simple-access': 7.25.7
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-modules-systemjs@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-modules-systemjs@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
@@ -8671,7 +8291,7 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-modules-umd@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-modules-umd@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.7)
@@ -8679,78 +8299,78 @@ snapshots:
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-named-capturing-groups-regex@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-new-target@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-nullish-coalescing-operator@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-nullish-coalescing-operator@7.26.6(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-numeric-separator@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-numeric-separator@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-object-rest-spread@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-object-rest-spread@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-compilation-targets': 7.26.5
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.26.7)
 
-  '@babel/plugin-transform-object-super@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-object-super@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-replace-supers': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-replace-supers': 7.26.5(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-optional-catch-binding@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-optional-catch-binding@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-optional-chaining@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-optional-chaining@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-parameters@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-parameters@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-private-methods@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-private-methods@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-private-property-in-object@7.25.8(@babel/core@7.26.7)':
+  '@babel/plugin-transform-private-property-in-object@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-annotate-as-pure': 7.25.7
-      '@babel/helper-create-class-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-annotate-as-pure': 7.25.9
+      '@babel/helper-create-class-features-plugin': 7.25.9(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-property-literals@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-property-literals@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
@@ -8765,138 +8385,145 @@ snapshots:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-regenerator@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-regenerator@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
       regenerator-transform: 0.15.2
 
-  '@babel/plugin-transform-reserved-words@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-regexp-modifiers@7.26.0(@babel/core@7.26.7)':
+    dependencies:
+      '@babel/core': 7.26.7
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
+      '@babel/helper-plugin-utils': 7.26.5
+
+  '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-shorthand-properties@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-shorthand-properties@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-spread@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-spread@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
-      '@babel/helper-skip-transparent-expression-wrappers': 7.25.7
+      '@babel/helper-skip-transparent-expression-wrappers': 7.25.9
     transitivePeerDependencies:
       - supports-color
 
-  '@babel/plugin-transform-sticky-regex@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-sticky-regex@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-template-literals@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-template-literals@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-typeof-symbol@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-typeof-symbol@7.26.7(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-escapes@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-unicode-escapes@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-property-regex@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-regex@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/plugin-transform-unicode-sets-regex@7.25.7(@babel/core@7.26.7)':
+  '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.26.7)':
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-create-regexp-features-plugin': 7.25.7(@babel/core@7.26.7)
+      '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.7)
       '@babel/helper-plugin-utils': 7.26.5
 
-  '@babel/preset-env@7.25.8(@babel/core@7.26.7)':
+  '@babel/preset-env@7.26.7(@babel/core@7.26.7)':
     dependencies:
       '@babel/compat-data': 7.26.5
       '@babel/core': 7.26.7
       '@babel/helper-compilation-targets': 7.26.5
       '@babel/helper-plugin-utils': 7.26.5
       '@babel/helper-validator-option': 7.25.9
-      '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-firefox-class-in-computed-class-key': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-safari-class-field-initializer-scope': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-safari-id-destructuring-collision-in-function-expression': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-bugfix-v8-static-class-fields-redefine-readonly': 7.25.9(@babel/core@7.26.7)
       '@babel/plugin-proposal-private-property-in-object': 7.21.0-placeholder-for-preset-env.2(@babel/core@7.26.7)
-      '@babel/plugin-syntax-import-assertions': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-syntax-import-attributes': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-syntax-import-assertions': 7.26.0(@babel/core@7.26.7)
+      '@babel/plugin-syntax-import-attributes': 7.26.0(@babel/core@7.26.7)
       '@babel/plugin-syntax-unicode-sets-regex': 7.18.6(@babel/core@7.26.7)
-      '@babel/plugin-transform-arrow-functions': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-async-generator-functions': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-async-to-generator': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-block-scoped-functions': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-block-scoping': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-class-properties': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-class-static-block': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-classes': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-computed-properties': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-destructuring': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-dotall-regex': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-duplicate-keys': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-dynamic-import': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-exponentiation-operator': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-export-namespace-from': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-for-of': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-function-name': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-json-strings': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-literals': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-logical-assignment-operators': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-member-expression-literals': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-modules-amd': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-modules-commonjs': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-modules-systemjs': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-modules-umd': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-named-capturing-groups-regex': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-new-target': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-nullish-coalescing-operator': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-numeric-separator': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-object-rest-spread': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-object-super': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-optional-catch-binding': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-optional-chaining': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-parameters': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-private-methods': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-private-property-in-object': 7.25.8(@babel/core@7.26.7)
-      '@babel/plugin-transform-property-literals': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-regenerator': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-reserved-words': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-shorthand-properties': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-spread': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-sticky-regex': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-template-literals': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-typeof-symbol': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-unicode-escapes': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-unicode-property-regex': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-unicode-regex': 7.25.7(@babel/core@7.26.7)
-      '@babel/plugin-transform-unicode-sets-regex': 7.25.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-arrow-functions': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-async-generator-functions': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-async-to-generator': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-block-scoped-functions': 7.26.5(@babel/core@7.26.7)
+      '@babel/plugin-transform-block-scoping': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-class-properties': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-class-static-block': 7.26.0(@babel/core@7.26.7)
+      '@babel/plugin-transform-classes': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-computed-properties': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-destructuring': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-dotall-regex': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-duplicate-keys': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-dynamic-import': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-exponentiation-operator': 7.26.3(@babel/core@7.26.7)
+      '@babel/plugin-transform-export-namespace-from': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-json-strings': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-literals': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-member-expression-literals': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-amd': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-systemjs': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-modules-umd': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-new-target': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-nullish-coalescing-operator': 7.26.6(@babel/core@7.26.7)
+      '@babel/plugin-transform-numeric-separator': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-object-rest-spread': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-object-super': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-optional-catch-binding': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-optional-chaining': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-parameters': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-private-methods': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-private-property-in-object': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-property-literals': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-regenerator': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-regexp-modifiers': 7.26.0(@babel/core@7.26.7)
+      '@babel/plugin-transform-reserved-words': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-shorthand-properties': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-spread': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-sticky-regex': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-template-literals': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-typeof-symbol': 7.26.7(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-escapes': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-property-regex': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-regex': 7.25.9(@babel/core@7.26.7)
+      '@babel/plugin-transform-unicode-sets-regex': 7.25.9(@babel/core@7.26.7)
       '@babel/preset-modules': 0.1.6-no-external-plugins(@babel/core@7.26.7)
-      babel-plugin-polyfill-corejs2: 0.4.11(@babel/core@7.26.7)
+      babel-plugin-polyfill-corejs2: 0.4.12(@babel/core@7.26.7)
       babel-plugin-polyfill-corejs3: 0.10.6(@babel/core@7.26.7)
-      babel-plugin-polyfill-regenerator: 0.6.2(@babel/core@7.26.7)
-      core-js-compat: 3.38.1
+      babel-plugin-polyfill-regenerator: 0.6.3(@babel/core@7.26.7)
+      core-js-compat: 3.40.0
       semver: 6.3.1
     transitivePeerDependencies:
       - supports-color
@@ -8908,10 +8535,6 @@ snapshots:
       '@babel/types': 7.26.7
       esutils: 2.0.3
 
-  '@babel/runtime@7.25.7':
-    dependencies:
-      regenerator-runtime: 0.14.1
-
   '@babel/runtime@7.26.7':
     dependencies:
       regenerator-runtime: 0.14.1
@@ -8929,27 +8552,15 @@ snapshots:
       '@babel/parser': 7.26.7
       '@babel/template': 7.25.9
       '@babel/types': 7.26.7
-      debug: 4.3.7
+      debug: 4.4.0
       globals: 11.12.0
     transitivePeerDependencies:
       - supports-color
 
   '@babel/types@7.19.0':
     dependencies:
-      '@babel/helper-string-parser': 7.21.5
-      '@babel/helper-validator-identifier': 7.19.1
-      to-fast-properties: 2.0.0
-
-  '@babel/types@7.21.5':
-    dependencies:
-      '@babel/helper-string-parser': 7.21.5
-      '@babel/helper-validator-identifier': 7.19.1
-      to-fast-properties: 2.0.0
-
-  '@babel/types@7.25.8':
-    dependencies:
-      '@babel/helper-string-parser': 7.25.7
-      '@babel/helper-validator-identifier': 7.25.7
+      '@babel/helper-string-parser': 7.25.9
+      '@babel/helper-validator-identifier': 7.25.9
       to-fast-properties: 2.0.0
 
   '@babel/types@7.26.7':
@@ -8962,35 +8573,35 @@ snapshots:
       '@codemirror/language': 6.10.8
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
-      '@lezer/common': 1.2.0
+      '@lezer/common': 1.2.3
 
   '@codemirror/commands@6.8.0':
     dependencies:
       '@codemirror/language': 6.10.8
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
-      '@lezer/common': 1.2.0
+      '@lezer/common': 1.2.3
 
   '@codemirror/lang-javascript@6.2.2':
     dependencies:
       '@codemirror/autocomplete': 6.18.4
       '@codemirror/language': 6.10.8
-      '@codemirror/lint': 6.4.2
+      '@codemirror/lint': 6.8.4
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
-      '@lezer/common': 1.2.0
-      '@lezer/javascript': 1.4.1
+      '@lezer/common': 1.2.3
+      '@lezer/javascript': 1.4.21
 
   '@codemirror/language@6.10.8':
     dependencies:
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
-      '@lezer/common': 1.2.0
+      '@lezer/common': 1.2.3
       '@lezer/highlight': 1.2.1
-      '@lezer/lr': 1.3.1
-      style-mod: 4.1.0
+      '@lezer/lr': 1.4.2
+      style-mod: 4.1.2
 
-  '@codemirror/lint@6.4.2':
+  '@codemirror/lint@6.8.4':
     dependencies:
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
@@ -9009,30 +8620,30 @@ snapshots:
   '@codemirror/view@6.36.2':
     dependencies:
       '@codemirror/state': 6.5.1
-      style-mod: 4.1.0
-      w3c-keyname: 2.2.6
+      style-mod: 4.1.2
+      w3c-keyname: 2.2.8
 
   '@csound/browser@6.18.7(eslint@9.19.0(jiti@2.4.2))':
     dependencies:
-      comlink: 4.3.1
-      eslint-plugin-n: 15.6.1(eslint@9.19.0(jiti@2.4.2))
+      comlink: 4.4.2
+      eslint-plugin-n: 15.7.0(eslint@9.19.0(jiti@2.4.2))
       eventemitter3: 4.0.7
       google-closure-compiler: 20221102.0.1
       google-closure-library: 20221102.0.0
       path-browserify: 1.0.1
-      rambda: 7.4.0
+      rambda: 7.5.0
       rimraf: 3.0.2
-      standardized-audio-context: 25.3.37
+      standardized-audio-context: 25.3.77
       text-encoding-shim: 1.0.5
       unmute-ios-audio: 3.3.0
-      web-midi-api: 2.2.2
+      web-midi-api: 2.3.5
     transitivePeerDependencies:
       - eslint
 
   '@dependents/detective-less@5.0.0':
     dependencies:
       gonzales-pe: 4.3.0
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
   '@docsearch/css@3.8.3': {}
 
@@ -9050,156 +8661,95 @@ snapshots:
     transitivePeerDependencies:
       - '@algolia/client-search'
 
+  '@emnapi/core@1.3.1':
+    dependencies:
+      '@emnapi/wasi-threads': 1.0.1
+      tslib: 2.8.1
+
   '@emnapi/runtime@1.3.1':
     dependencies:
-      tslib: 2.8.0
-    optional: true
+      tslib: 2.8.1
 
-  '@esbuild/aix-ppc64@0.21.5':
-    optional: true
+  '@emnapi/wasi-threads@1.0.1':
+    dependencies:
+      tslib: 2.8.1
 
   '@esbuild/aix-ppc64@0.24.2':
     optional: true
 
-  '@esbuild/android-arm64@0.21.5':
-    optional: true
-
   '@esbuild/android-arm64@0.24.2':
     optional: true
 
-  '@esbuild/android-arm@0.21.5':
-    optional: true
-
   '@esbuild/android-arm@0.24.2':
     optional: true
 
-  '@esbuild/android-x64@0.21.5':
-    optional: true
-
   '@esbuild/android-x64@0.24.2':
     optional: true
 
-  '@esbuild/darwin-arm64@0.21.5':
-    optional: true
-
   '@esbuild/darwin-arm64@0.24.2':
     optional: true
 
-  '@esbuild/darwin-x64@0.21.5':
-    optional: true
-
   '@esbuild/darwin-x64@0.24.2':
     optional: true
 
-  '@esbuild/freebsd-arm64@0.21.5':
-    optional: true
-
   '@esbuild/freebsd-arm64@0.24.2':
     optional: true
 
-  '@esbuild/freebsd-x64@0.21.5':
-    optional: true
-
   '@esbuild/freebsd-x64@0.24.2':
     optional: true
 
-  '@esbuild/linux-arm64@0.21.5':
-    optional: true
-
   '@esbuild/linux-arm64@0.24.2':
     optional: true
 
-  '@esbuild/linux-arm@0.21.5':
-    optional: true
-
   '@esbuild/linux-arm@0.24.2':
     optional: true
 
-  '@esbuild/linux-ia32@0.21.5':
-    optional: true
-
   '@esbuild/linux-ia32@0.24.2':
     optional: true
 
-  '@esbuild/linux-loong64@0.21.5':
-    optional: true
-
   '@esbuild/linux-loong64@0.24.2':
     optional: true
 
-  '@esbuild/linux-mips64el@0.21.5':
-    optional: true
-
   '@esbuild/linux-mips64el@0.24.2':
     optional: true
 
-  '@esbuild/linux-ppc64@0.21.5':
-    optional: true
-
   '@esbuild/linux-ppc64@0.24.2':
     optional: true
 
-  '@esbuild/linux-riscv64@0.21.5':
-    optional: true
-
   '@esbuild/linux-riscv64@0.24.2':
     optional: true
 
-  '@esbuild/linux-s390x@0.21.5':
-    optional: true
-
   '@esbuild/linux-s390x@0.24.2':
     optional: true
 
-  '@esbuild/linux-x64@0.21.5':
-    optional: true
-
   '@esbuild/linux-x64@0.24.2':
     optional: true
 
   '@esbuild/netbsd-arm64@0.24.2':
     optional: true
 
-  '@esbuild/netbsd-x64@0.21.5':
-    optional: true
-
   '@esbuild/netbsd-x64@0.24.2':
     optional: true
 
   '@esbuild/openbsd-arm64@0.24.2':
     optional: true
 
-  '@esbuild/openbsd-x64@0.21.5':
-    optional: true
-
   '@esbuild/openbsd-x64@0.24.2':
     optional: true
 
-  '@esbuild/sunos-x64@0.21.5':
-    optional: true
-
   '@esbuild/sunos-x64@0.24.2':
     optional: true
 
-  '@esbuild/win32-arm64@0.21.5':
-    optional: true
-
   '@esbuild/win32-arm64@0.24.2':
     optional: true
 
-  '@esbuild/win32-ia32@0.21.5':
-    optional: true
-
   '@esbuild/win32-ia32@0.24.2':
     optional: true
 
-  '@esbuild/win32-x64@0.21.5':
-    optional: true
-
   '@esbuild/win32-x64@0.24.2':
     optional: true
 
-  '@eslint-community/eslint-utils@4.4.0(eslint@9.19.0(jiti@2.4.2))':
+  '@eslint-community/eslint-utils@4.4.1(eslint@9.19.0(jiti@2.4.2))':
     dependencies:
       eslint: 9.19.0(jiti@2.4.2)
       eslint-visitor-keys: 3.4.3
@@ -9213,7 +8763,7 @@ snapshots:
   '@eslint/config-array@0.19.1':
     dependencies:
       '@eslint/object-schema': 2.1.5
-      debug: 4.3.7
+      debug: 4.4.0
       minimatch: 3.1.2
     transitivePeerDependencies:
       - supports-color
@@ -9225,10 +8775,10 @@ snapshots:
   '@eslint/eslintrc@3.2.0':
     dependencies:
       ajv: 6.12.6
-      debug: 4.3.7
-      espree: 10.2.0
+      debug: 4.4.0
+      espree: 10.3.0
       globals: 14.0.0
-      ignore: 5.2.4
+      ignore: 5.3.2
       import-fresh: 3.3.0
       js-yaml: 4.1.0
       minimatch: 3.1.2
@@ -9275,7 +8825,7 @@ snapshots:
       '@floating-ui/react': 0.26.28(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
       '@react-aria/focus': 3.19.1(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
       '@react-aria/interactions': 3.23.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
-      '@tanstack/react-virtual': 3.10.8(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
+      '@tanstack/react-virtual': 3.11.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)
       react: 19.0.0
       react-dom: 19.0.0(react@19.0.0)
 
@@ -9388,55 +8938,38 @@ snapshots:
     dependencies:
       '@sinclair/typebox': 0.27.8
 
-  '@jridgewell/gen-mapping@0.3.2':
-    dependencies:
-      '@jridgewell/set-array': 1.1.2
-      '@jridgewell/sourcemap-codec': 1.5.0
-      '@jridgewell/trace-mapping': 0.3.17
-
-  '@jridgewell/gen-mapping@0.3.5':
+  '@jridgewell/gen-mapping@0.3.8':
     dependencies:
       '@jridgewell/set-array': 1.2.1
       '@jridgewell/sourcemap-codec': 1.5.0
       '@jridgewell/trace-mapping': 0.3.25
 
-  '@jridgewell/resolve-uri@3.1.0': {}
-
   '@jridgewell/resolve-uri@3.1.2': {}
 
-  '@jridgewell/set-array@1.1.2': {}
-
   '@jridgewell/set-array@1.2.1': {}
 
   '@jridgewell/source-map@0.3.6':
     dependencies:
-      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/gen-mapping': 0.3.8
       '@jridgewell/trace-mapping': 0.3.25
 
-  '@jridgewell/sourcemap-codec@1.4.14': {}
-
   '@jridgewell/sourcemap-codec@1.5.0': {}
 
-  '@jridgewell/trace-mapping@0.3.17':
-    dependencies:
-      '@jridgewell/resolve-uri': 3.1.0
-      '@jridgewell/sourcemap-codec': 1.4.14
-
   '@jridgewell/trace-mapping@0.3.25':
     dependencies:
       '@jridgewell/resolve-uri': 3.1.2
       '@jridgewell/sourcemap-codec': 1.5.0
 
-  '@jsdoc/salty@0.2.3':
+  '@jsdoc/salty@0.2.9':
     dependencies:
       lodash: 4.17.21
 
-  '@lerna/create@8.1.9(encoding@0.1.13)(typescript@5.6.3)':
+  '@lerna/create@8.1.9(encoding@0.1.13)(typescript@5.7.3)':
     dependencies:
       '@npmcli/arborist': 7.5.4
       '@npmcli/package-json': 5.2.0
       '@npmcli/run-script': 8.1.0
-      '@nx/devkit': 17.2.8(nx@17.2.8)
+      '@nx/devkit': 20.3.3(nx@20.3.3)
       '@octokit/plugin-enterprise-rest': 6.0.1
       '@octokit/rest': 19.0.11(encoding@0.1.13)
       aproba: 2.0.0
@@ -9449,10 +8982,10 @@ snapshots:
       console-control-strings: 1.1.0
       conventional-changelog-core: 5.0.1
       conventional-recommended-bump: 7.0.1
-      cosmiconfig: 9.0.0(typescript@5.6.3)
+      cosmiconfig: 9.0.0(typescript@5.7.3)
       dedent: 1.5.3
       execa: 5.0.0
-      fs-extra: 11.2.0
+      fs-extra: 11.3.0
       get-stream: 6.0.0
       git-url-parse: 14.0.0
       glob-parent: 6.0.2
@@ -9461,7 +8994,7 @@ snapshots:
       has-unicode: 2.0.1
       ini: 1.3.8
       init-package-json: 6.0.3
-      inquirer: 8.2.5
+      inquirer: 8.2.6
       is-ci: 3.0.1
       is-stream: 2.0.0
       js-yaml: 4.1.0
@@ -9475,7 +9008,7 @@ snapshots:
       npm-package-arg: 11.0.2
       npm-packlist: 8.0.2
       npm-registry-fetch: 17.1.0
-      nx: 17.2.8
+      nx: 20.3.3
       p-map: 4.0.0
       p-map-series: 2.1.0
       p-queue: 6.6.2
@@ -9514,20 +9047,21 @@ snapshots:
       - supports-color
       - typescript
 
-  '@lezer/common@1.2.0': {}
+  '@lezer/common@1.2.3': {}
 
   '@lezer/highlight@1.2.1':
     dependencies:
-      '@lezer/common': 1.2.0
+      '@lezer/common': 1.2.3
 
-  '@lezer/javascript@1.4.1':
+  '@lezer/javascript@1.4.21':
     dependencies:
+      '@lezer/common': 1.2.3
       '@lezer/highlight': 1.2.1
-      '@lezer/lr': 1.3.1
+      '@lezer/lr': 1.4.2
 
-  '@lezer/lr@1.3.1':
+  '@lezer/lr@1.4.2':
     dependencies:
-      '@lezer/common': 1.2.0
+      '@lezer/common': 1.2.3
 
   '@marijn/find-cluster-break@1.0.2': {}
 
@@ -9570,6 +9104,12 @@ snapshots:
       nanostores: 0.11.3
       react: 19.0.0
 
+  '@napi-rs/wasm-runtime@0.2.4':
+    dependencies:
+      '@emnapi/core': 1.3.1
+      '@emnapi/runtime': 1.3.1
+      '@tybys/wasm-util': 0.9.0
+
   '@nodelib/fs.scandir@2.1.5':
     dependencies:
       '@nodelib/fs.stat': 2.0.5
@@ -9580,15 +9120,15 @@ snapshots:
   '@nodelib/fs.walk@1.2.8':
     dependencies:
       '@nodelib/fs.scandir': 2.1.5
-      fastq: 1.15.0
+      fastq: 1.18.0
 
   '@npmcli/agent@2.2.2':
     dependencies:
-      agent-base: 7.1.1
+      agent-base: 7.1.3
       http-proxy-agent: 7.0.2
-      https-proxy-agent: 7.0.5
+      https-proxy-agent: 7.0.6
       lru-cache: 10.4.3
-      socks-proxy-agent: 8.0.4
+      socks-proxy-agent: 8.0.5
     transitivePeerDependencies:
       - supports-color
 
@@ -9705,96 +9245,80 @@ snapshots:
       '@npmcli/node-gyp': 3.0.0
       '@npmcli/package-json': 5.2.0
       '@npmcli/promise-spawn': 7.0.2
-      node-gyp: 10.2.0
+      node-gyp: 10.3.1
       proc-log: 4.2.0
       which: 4.0.0
     transitivePeerDependencies:
       - bluebird
       - supports-color
 
-  '@nrwl/devkit@17.2.8(nx@17.2.8)':
+  '@nx/devkit@20.3.3(nx@20.3.3)':
     dependencies:
-      '@nx/devkit': 17.2.8(nx@17.2.8)
-    transitivePeerDependencies:
-      - nx
-
-  '@nrwl/tao@17.2.8':
-    dependencies:
-      nx: 17.2.8
-      tslib: 2.8.0
-    transitivePeerDependencies:
-      - '@swc-node/register'
-      - '@swc/core'
-      - debug
-
-  '@nx/devkit@17.2.8(nx@17.2.8)':
-    dependencies:
-      '@nrwl/devkit': 17.2.8(nx@17.2.8)
       ejs: 3.1.10
       enquirer: 2.3.6
-      ignore: 5.2.4
-      nx: 17.2.8
-      semver: 7.5.3
-      tmp: 0.2.1
-      tslib: 2.8.0
+      ignore: 5.3.2
+      minimatch: 9.0.3
+      nx: 20.3.3
+      semver: 7.6.3
+      tmp: 0.2.3
+      tslib: 2.8.1
+      yargs-parser: 21.1.1
 
-  '@nx/nx-darwin-arm64@17.2.8':
+  '@nx/nx-darwin-arm64@20.3.3':
     optional: true
 
-  '@nx/nx-darwin-x64@17.2.8':
+  '@nx/nx-darwin-x64@20.3.3':
     optional: true
 
-  '@nx/nx-freebsd-x64@17.2.8':
+  '@nx/nx-freebsd-x64@20.3.3':
     optional: true
 
-  '@nx/nx-linux-arm-gnueabihf@17.2.8':
+  '@nx/nx-linux-arm-gnueabihf@20.3.3':
     optional: true
 
-  '@nx/nx-linux-arm64-gnu@17.2.8':
+  '@nx/nx-linux-arm64-gnu@20.3.3':
     optional: true
 
-  '@nx/nx-linux-arm64-musl@17.2.8':
+  '@nx/nx-linux-arm64-musl@20.3.3':
     optional: true
 
-  '@nx/nx-linux-x64-gnu@17.2.8':
+  '@nx/nx-linux-x64-gnu@20.3.3':
     optional: true
 
-  '@nx/nx-linux-x64-musl@17.2.8':
+  '@nx/nx-linux-x64-musl@20.3.3':
     optional: true
 
-  '@nx/nx-win32-arm64-msvc@17.2.8':
+  '@nx/nx-win32-arm64-msvc@20.3.3':
     optional: true
 
-  '@nx/nx-win32-x64-msvc@17.2.8':
+  '@nx/nx-win32-x64-msvc@20.3.3':
     optional: true
 
-  '@octokit/auth-token@3.0.3':
-    dependencies:
-      '@octokit/types': 9.3.2
+  '@octokit/auth-token@3.0.4': {}
 
   '@octokit/core@4.2.4(encoding@0.1.13)':
     dependencies:
-      '@octokit/auth-token': 3.0.3
-      '@octokit/graphql': 5.0.5(encoding@0.1.13)
-      '@octokit/request': 6.2.3(encoding@0.1.13)
+      '@octokit/auth-token': 3.0.4
+      '@octokit/graphql': 5.0.6(encoding@0.1.13)
+      '@octokit/request': 6.2.8(encoding@0.1.13)
       '@octokit/request-error': 3.0.3
       '@octokit/types': 9.3.2
       before-after-hook: 2.2.3
-      universal-user-agent: 6.0.0
+      universal-user-agent: 6.0.1
     transitivePeerDependencies:
       - encoding
 
-  '@octokit/endpoint@7.0.5':
+  '@octokit/endpoint@7.0.6':
     dependencies:
       '@octokit/types': 9.3.2
       is-plain-object: 5.0.0
-      universal-user-agent: 6.0.0
+      universal-user-agent: 6.0.1
 
-  '@octokit/graphql@5.0.5(encoding@0.1.13)':
+  '@octokit/graphql@5.0.6(encoding@0.1.13)':
     dependencies:
-      '@octokit/request': 6.2.3(encoding@0.1.13)
+      '@octokit/request': 6.2.8(encoding@0.1.13)
       '@octokit/types': 9.3.2
-      universal-user-agent: 6.0.0
+      universal-user-agent: 6.0.1
     transitivePeerDependencies:
       - encoding
 
@@ -9823,14 +9347,14 @@ snapshots:
       deprecation: 2.3.1
       once: 1.4.0
 
-  '@octokit/request@6.2.3(encoding@0.1.13)':
+  '@octokit/request@6.2.8(encoding@0.1.13)':
     dependencies:
-      '@octokit/endpoint': 7.0.5
+      '@octokit/endpoint': 7.0.6
       '@octokit/request-error': 3.0.3
       '@octokit/types': 9.3.2
       is-plain-object: 5.0.0
-      node-fetch: 2.6.8(encoding@0.1.13)
-      universal-user-agent: 6.0.0
+      node-fetch: 2.6.7(encoding@0.1.13)
+      universal-user-agent: 6.0.1
     transitivePeerDependencies:
       - encoding
 
@@ -9923,12 +9447,12 @@ snapshots:
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
 
-  '@replit/codemirror-vscode-keymap@6.0.2(@codemirror/autocomplete@6.18.4)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.4.2)(@codemirror/search@6.5.8)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)':
+  '@replit/codemirror-vscode-keymap@6.0.2(@codemirror/autocomplete@6.18.4)(@codemirror/commands@6.8.0)(@codemirror/language@6.10.8)(@codemirror/lint@6.8.4)(@codemirror/search@6.5.8)(@codemirror/state@6.5.1)(@codemirror/view@6.36.2)':
     dependencies:
       '@codemirror/autocomplete': 6.18.4
       '@codemirror/commands': 6.8.0
       '@codemirror/language': 6.10.8
-      '@codemirror/lint': 6.4.2
+      '@codemirror/lint': 6.8.4
       '@codemirror/search': 6.5.8
       '@codemirror/state': 6.5.1
       '@codemirror/view': 6.36.2
@@ -9951,21 +9475,31 @@ snapshots:
       builtin-modules: 3.3.0
       deepmerge: 4.3.1
       is-module: 1.0.0
-      resolve: 1.22.8
+      resolve: 1.22.10
       rollup: 2.79.2
 
+  '@rollup/plugin-node-resolve@15.3.1(rollup@4.32.0)':
+    dependencies:
+      '@rollup/pluginutils': 5.1.4(rollup@4.32.0)
+      '@types/resolve': 1.20.2
+      deepmerge: 4.3.1
+      is-module: 1.0.0
+      resolve: 1.22.10
+    optionalDependencies:
+      rollup: 4.32.0
+
   '@rollup/plugin-replace@2.4.2(rollup@2.79.2)':
     dependencies:
       '@rollup/pluginutils': 3.1.0(rollup@2.79.2)
       magic-string: 0.25.9
       rollup: 2.79.2
 
-  '@rollup/plugin-replace@6.0.2(rollup@4.24.0)':
+  '@rollup/plugin-replace@6.0.2(rollup@4.32.0)':
     dependencies:
-      '@rollup/pluginutils': 5.1.2(rollup@4.24.0)
-      magic-string: 0.30.12
+      '@rollup/pluginutils': 5.1.4(rollup@4.32.0)
+      magic-string: 0.30.17
     optionalDependencies:
-      rollup: 4.24.0
+      rollup: 4.32.0
 
   '@rollup/pluginutils@3.1.0(rollup@2.79.2)':
     dependencies:
@@ -9974,14 +9508,6 @@ snapshots:
       picomatch: 2.3.1
       rollup: 2.79.2
 
-  '@rollup/pluginutils@5.1.2(rollup@4.24.0)':
-    dependencies:
-      '@types/estree': 1.0.6
-      estree-walker: 2.0.2
-      picomatch: 2.3.1
-    optionalDependencies:
-      rollup: 4.24.0
-
   '@rollup/pluginutils@5.1.4(rollup@2.79.2)':
     dependencies:
       '@types/estree': 1.0.6
@@ -9990,85 +9516,102 @@ snapshots:
     optionalDependencies:
       rollup: 2.79.2
 
-  '@rollup/rollup-android-arm-eabi@4.24.0':
+  '@rollup/pluginutils@5.1.4(rollup@4.32.0)':
+    dependencies:
+      '@types/estree': 1.0.6
+      estree-walker: 2.0.2
+      picomatch: 4.0.2
+    optionalDependencies:
+      rollup: 4.32.0
+
+  '@rollup/rollup-android-arm-eabi@4.32.0':
     optional: true
 
-  '@rollup/rollup-android-arm64@4.24.0':
+  '@rollup/rollup-android-arm64@4.32.0':
     optional: true
 
-  '@rollup/rollup-darwin-arm64@4.24.0':
+  '@rollup/rollup-darwin-arm64@4.32.0':
     optional: true
 
-  '@rollup/rollup-darwin-x64@4.24.0':
+  '@rollup/rollup-darwin-x64@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-arm-gnueabihf@4.24.0':
+  '@rollup/rollup-freebsd-arm64@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-arm-musleabihf@4.24.0':
+  '@rollup/rollup-freebsd-x64@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-arm64-gnu@4.24.0':
+  '@rollup/rollup-linux-arm-gnueabihf@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-arm64-musl@4.24.0':
+  '@rollup/rollup-linux-arm-musleabihf@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-powerpc64le-gnu@4.24.0':
+  '@rollup/rollup-linux-arm64-gnu@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-riscv64-gnu@4.24.0':
+  '@rollup/rollup-linux-arm64-musl@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-s390x-gnu@4.24.0':
+  '@rollup/rollup-linux-loongarch64-gnu@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-x64-gnu@4.24.0':
+  '@rollup/rollup-linux-powerpc64le-gnu@4.32.0':
     optional: true
 
-  '@rollup/rollup-linux-x64-musl@4.24.0':
+  '@rollup/rollup-linux-riscv64-gnu@4.32.0':
     optional: true
 
-  '@rollup/rollup-win32-arm64-msvc@4.24.0':
+  '@rollup/rollup-linux-s390x-gnu@4.32.0':
     optional: true
 
-  '@rollup/rollup-win32-ia32-msvc@4.24.0':
+  '@rollup/rollup-linux-x64-gnu@4.32.0':
     optional: true
 
-  '@rollup/rollup-win32-x64-msvc@4.24.0':
+  '@rollup/rollup-linux-x64-musl@4.32.0':
+    optional: true
+
+  '@rollup/rollup-win32-arm64-msvc@4.32.0':
+    optional: true
+
+  '@rollup/rollup-win32-ia32-msvc@4.32.0':
+    optional: true
+
+  '@rollup/rollup-win32-x64-msvc@4.32.0':
     optional: true
 
   '@rtsao/scc@1.1.0': {}
 
-  '@shikijs/core@1.29.2':
+  '@shikijs/core@1.29.1':
     dependencies:
-      '@shikijs/engine-javascript': 1.29.2
-      '@shikijs/engine-oniguruma': 1.29.2
-      '@shikijs/types': 1.29.2
+      '@shikijs/engine-javascript': 1.29.1
+      '@shikijs/engine-oniguruma': 1.29.1
+      '@shikijs/types': 1.29.1
       '@shikijs/vscode-textmate': 10.0.1
       '@types/hast': 3.0.4
       hast-util-to-html: 9.0.4
 
-  '@shikijs/engine-javascript@1.29.2':
+  '@shikijs/engine-javascript@1.29.1':
     dependencies:
-      '@shikijs/types': 1.29.2
+      '@shikijs/types': 1.29.1
       '@shikijs/vscode-textmate': 10.0.1
       oniguruma-to-es: 2.3.0
 
-  '@shikijs/engine-oniguruma@1.29.2':
+  '@shikijs/engine-oniguruma@1.29.1':
     dependencies:
-      '@shikijs/types': 1.29.2
+      '@shikijs/types': 1.29.1
       '@shikijs/vscode-textmate': 10.0.1
 
-  '@shikijs/langs@1.29.2':
+  '@shikijs/langs@1.29.1':
     dependencies:
-      '@shikijs/types': 1.29.2
+      '@shikijs/types': 1.29.1
 
-  '@shikijs/themes@1.29.2':
+  '@shikijs/themes@1.29.1':
     dependencies:
-      '@shikijs/types': 1.29.2
+      '@shikijs/types': 1.29.1
 
-  '@shikijs/types@1.29.2':
+  '@shikijs/types@1.29.1':
     dependencies:
       '@shikijs/vscode-textmate': 10.0.1
       '@types/hast': 3.0.4
@@ -10077,17 +9620,17 @@ snapshots:
 
   '@sigstore/bundle@2.3.2':
     dependencies:
-      '@sigstore/protobuf-specs': 0.3.2
+      '@sigstore/protobuf-specs': 0.3.3
 
   '@sigstore/core@1.1.0': {}
 
-  '@sigstore/protobuf-specs@0.3.2': {}
+  '@sigstore/protobuf-specs@0.3.3': {}
 
   '@sigstore/sign@2.3.2':
     dependencies:
       '@sigstore/bundle': 2.3.2
       '@sigstore/core': 1.1.0
-      '@sigstore/protobuf-specs': 0.3.2
+      '@sigstore/protobuf-specs': 0.3.3
       make-fetch-happen: 13.0.1
       proc-log: 4.2.0
       promise-retry: 2.0.1
@@ -10096,7 +9639,7 @@ snapshots:
 
   '@sigstore/tuf@2.3.4':
     dependencies:
-      '@sigstore/protobuf-specs': 0.3.2
+      '@sigstore/protobuf-specs': 0.3.3
       tuf-js: 2.2.1
     transitivePeerDependencies:
       - supports-color
@@ -10105,7 +9648,7 @@ snapshots:
     dependencies:
       '@sigstore/bundle': 2.3.2
       '@sigstore/core': 1.1.0
-      '@sigstore/protobuf-specs': 0.3.2
+      '@sigstore/protobuf-specs': 0.3.3
 
   '@sinclair/typebox@0.27.8': {}
 
@@ -10128,8 +9671,8 @@ snapshots:
   '@supabase/realtime-js@2.11.2':
     dependencies:
       '@supabase/node-fetch': 2.6.15
-      '@types/phoenix': 1.6.5
-      '@types/ws': 8.5.12
+      '@types/phoenix': 1.6.6
+      '@types/ws': 8.5.14
       ws: 8.18.0
     transitivePeerDependencies:
       - bufferutil
@@ -10156,78 +9699,78 @@ snapshots:
       ejs: 3.1.10
       json5: 2.2.3
       magic-string: 0.25.9
-      string.prototype.matchall: 4.0.11
+      string.prototype.matchall: 4.0.12
 
   '@swc/helpers@0.5.15':
     dependencies:
-      tslib: 2.8.0
+      tslib: 2.8.1
 
   '@tailwindcss/forms@0.5.10(tailwindcss@3.4.17)':
     dependencies:
       mini-svg-data-uri: 1.4.4
       tailwindcss: 3.4.17
 
-  '@tailwindcss/node@4.0.1':
+  '@tailwindcss/node@4.0.0':
     dependencies:
       enhanced-resolve: 5.18.0
       jiti: 2.4.2
-      tailwindcss: 4.0.1
+      tailwindcss: 4.0.0
 
-  '@tailwindcss/oxide-android-arm64@4.0.1':
+  '@tailwindcss/oxide-android-arm64@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-darwin-arm64@4.0.1':
+  '@tailwindcss/oxide-darwin-arm64@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-darwin-x64@4.0.1':
+  '@tailwindcss/oxide-darwin-x64@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-freebsd-x64@4.0.1':
+  '@tailwindcss/oxide-freebsd-x64@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.1':
+  '@tailwindcss/oxide-linux-arm-gnueabihf@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-linux-arm64-gnu@4.0.1':
+  '@tailwindcss/oxide-linux-arm64-gnu@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-linux-arm64-musl@4.0.1':
+  '@tailwindcss/oxide-linux-arm64-musl@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-linux-x64-gnu@4.0.1':
+  '@tailwindcss/oxide-linux-x64-gnu@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-linux-x64-musl@4.0.1':
+  '@tailwindcss/oxide-linux-x64-musl@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-win32-arm64-msvc@4.0.1':
+  '@tailwindcss/oxide-win32-arm64-msvc@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide-win32-x64-msvc@4.0.1':
+  '@tailwindcss/oxide-win32-x64-msvc@4.0.0':
     optional: true
 
-  '@tailwindcss/oxide@4.0.1':
+  '@tailwindcss/oxide@4.0.0':
     optionalDependencies:
-      '@tailwindcss/oxide-android-arm64': 4.0.1
-      '@tailwindcss/oxide-darwin-arm64': 4.0.1
-      '@tailwindcss/oxide-darwin-x64': 4.0.1
-      '@tailwindcss/oxide-freebsd-x64': 4.0.1
-      '@tailwindcss/oxide-linux-arm-gnueabihf': 4.0.1
-      '@tailwindcss/oxide-linux-arm64-gnu': 4.0.1
-      '@tailwindcss/oxide-linux-arm64-musl': 4.0.1
-      '@tailwindcss/oxide-linux-x64-gnu': 4.0.1
-      '@tailwindcss/oxide-linux-x64-musl': 4.0.1
-      '@tailwindcss/oxide-win32-arm64-msvc': 4.0.1
-      '@tailwindcss/oxide-win32-x64-msvc': 4.0.1
+      '@tailwindcss/oxide-android-arm64': 4.0.0
+      '@tailwindcss/oxide-darwin-arm64': 4.0.0
+      '@tailwindcss/oxide-darwin-x64': 4.0.0
+      '@tailwindcss/oxide-freebsd-x64': 4.0.0
+      '@tailwindcss/oxide-linux-arm-gnueabihf': 4.0.0
+      '@tailwindcss/oxide-linux-arm64-gnu': 4.0.0
+      '@tailwindcss/oxide-linux-arm64-musl': 4.0.0
+      '@tailwindcss/oxide-linux-x64-gnu': 4.0.0
+      '@tailwindcss/oxide-linux-x64-musl': 4.0.0
+      '@tailwindcss/oxide-win32-arm64-msvc': 4.0.0
+      '@tailwindcss/oxide-win32-x64-msvc': 4.0.0
 
-  '@tailwindcss/postcss@4.0.1':
+  '@tailwindcss/postcss@4.0.0':
     dependencies:
       '@alloc/quick-lru': 5.2.0
-      '@tailwindcss/node': 4.0.1
-      '@tailwindcss/oxide': 4.0.1
+      '@tailwindcss/node': 4.0.0
+      '@tailwindcss/oxide': 4.0.0
       lightningcss: 1.29.1
-      postcss: 8.4.47
-      tailwindcss: 4.0.1
+      postcss: 8.5.1
+      tailwindcss: 4.0.0
 
   '@tailwindcss/typography@0.5.16(tailwindcss@3.4.17)':
     dependencies:
@@ -10237,13 +9780,13 @@ snapshots:
       postcss-selector-parser: 6.0.10
       tailwindcss: 3.4.17
 
-  '@tanstack/react-virtual@3.10.8(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
+  '@tanstack/react-virtual@3.11.2(react-dom@19.0.0(react@19.0.0))(react@19.0.0)':
     dependencies:
-      '@tanstack/virtual-core': 3.10.8
+      '@tanstack/virtual-core': 3.11.2
       react: 19.0.0
       react-dom: 19.0.0(react@19.0.0)
 
-  '@tanstack/virtual-core@3.10.8': {}
+  '@tanstack/virtual-core@3.11.2': {}
 
   '@tauri-apps/api@2.2.0': {}
 
@@ -10290,128 +9833,200 @@ snapshots:
       '@tauri-apps/cli-win32-ia32-msvc': 2.2.7
       '@tauri-apps/cli-win32-x64-msvc': 2.2.7
 
-  '@tauri-apps/plugin-clipboard-manager@2.2.1':
+  '@tauri-apps/plugin-clipboard-manager@2.2.0':
     dependencies:
       '@tauri-apps/api': 2.2.0
 
-  '@tonaljs/abc-notation@4.8.0':
+  '@tonaljs/abc-notation@4.9.1':
     dependencies:
-      '@tonaljs/core': 4.10.0
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-note': 6.1.0
 
-  '@tonaljs/array@4.8.0':
+  '@tonaljs/array@4.8.4':
     dependencies:
-      '@tonaljs/core': 4.10.0
+      '@tonaljs/pitch-note': 6.1.0
 
-  '@tonaljs/chord-detect@4.8.0':
+  '@tonaljs/chord-detect@4.9.1':
     dependencies:
-      '@tonaljs/chord-type': 4.8.0
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/pcset': 4.8.1
+      '@tonaljs/chord-type': 5.1.1
+      '@tonaljs/pcset': 4.10.1
+      '@tonaljs/pitch-note': 6.1.0
 
-  '@tonaljs/chord-type@4.8.0':
+  '@tonaljs/chord-type@4.8.2':
     dependencies:
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/pcset': 4.8.1
+      '@tonaljs/core': 4.10.4
+      '@tonaljs/pcset': 4.10.1
 
-  '@tonaljs/chord@4.10.0':
+  '@tonaljs/chord-type@5.1.1':
     dependencies:
-      '@tonaljs/chord-detect': 4.8.0
-      '@tonaljs/chord-type': 4.8.0
-      '@tonaljs/collection': 4.8.0
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/pcset': 4.8.1
-      '@tonaljs/scale-type': 4.8.1
+      '@tonaljs/pcset': 4.10.1
 
-  '@tonaljs/collection@4.8.0': {}
-
-  '@tonaljs/core@4.10.0': {}
-
-  '@tonaljs/duration-value@4.8.0': {}
-
-  '@tonaljs/interval@4.8.0':
+  '@tonaljs/chord@4.10.2':
     dependencies:
-      '@tonaljs/core': 4.10.0
+      '@tonaljs/chord-detect': 4.9.1
+      '@tonaljs/chord-type': 4.8.2
+      '@tonaljs/collection': 4.9.0
+      '@tonaljs/core': 4.10.4
+      '@tonaljs/pcset': 4.10.1
+      '@tonaljs/scale-type': 4.9.1
 
-  '@tonaljs/key@4.9.1':
+  '@tonaljs/chord@6.1.1':
     dependencies:
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/note': 4.10.0
-      '@tonaljs/roman-numeral': 4.8.0
+      '@tonaljs/chord-detect': 4.9.1
+      '@tonaljs/chord-type': 5.1.1
+      '@tonaljs/collection': 4.9.0
+      '@tonaljs/interval': 5.1.0
+      '@tonaljs/pcset': 4.10.1
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-note': 6.1.0
+      '@tonaljs/scale-type': 4.9.1
 
-  '@tonaljs/midi@4.9.0':
+  '@tonaljs/collection@4.9.0': {}
+
+  '@tonaljs/core@4.10.4':
     dependencies:
-      '@tonaljs/core': 4.10.0
+      '@tonaljs/pitch': 5.0.1
+      '@tonaljs/pitch-distance': 5.0.2
+      '@tonaljs/pitch-interval': 5.0.2
+      '@tonaljs/pitch-note': 5.0.3
 
-  '@tonaljs/mode@4.8.0':
+  '@tonaljs/duration-value@4.9.0': {}
+
+  '@tonaljs/interval@4.8.2':
     dependencies:
-      '@tonaljs/collection': 4.8.0
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/interval': 4.8.0
-      '@tonaljs/pcset': 4.8.1
-      '@tonaljs/scale-type': 4.8.1
+      '@tonaljs/pitch': 5.0.2
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-interval': 5.0.2
 
-  '@tonaljs/note@4.10.0':
+  '@tonaljs/interval@5.1.0':
     dependencies:
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/midi': 4.9.0
+      '@tonaljs/pitch': 5.0.2
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-interval': 6.1.0
 
-  '@tonaljs/pcset@4.8.1':
+  '@tonaljs/key@4.11.1':
     dependencies:
-      '@tonaljs/collection': 4.8.0
-      '@tonaljs/core': 4.10.0
+      '@tonaljs/note': 4.12.0
+      '@tonaljs/pitch-note': 6.1.0
+      '@tonaljs/roman-numeral': 4.9.1
 
-  '@tonaljs/progression@4.8.0':
+  '@tonaljs/midi@4.10.1':
     dependencies:
-      '@tonaljs/chord': 4.10.0
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/roman-numeral': 4.8.0
+      '@tonaljs/pitch-note': 6.1.0
 
-  '@tonaljs/range@4.8.1':
+  '@tonaljs/mode@4.9.1':
     dependencies:
-      '@tonaljs/collection': 4.8.0
-      '@tonaljs/midi': 4.9.0
+      '@tonaljs/collection': 4.9.0
+      '@tonaljs/interval': 5.1.0
+      '@tonaljs/pcset': 4.10.1
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-note': 6.1.0
+      '@tonaljs/scale-type': 4.9.1
 
-  '@tonaljs/roman-numeral@4.8.0':
+  '@tonaljs/note@4.12.0':
     dependencies:
-      '@tonaljs/core': 4.10.0
+      '@tonaljs/midi': 4.10.1
+      '@tonaljs/pitch': 5.0.2
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-interval': 6.1.0
+      '@tonaljs/pitch-note': 6.1.0
 
-  '@tonaljs/scale-type@4.8.1':
+  '@tonaljs/pcset@4.10.1':
     dependencies:
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/pcset': 4.8.1
+      '@tonaljs/collection': 4.9.0
+      '@tonaljs/pitch': 5.0.2
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-interval': 6.1.0
+      '@tonaljs/pitch-note': 6.1.0
 
-  '@tonaljs/scale@4.12.0':
+  '@tonaljs/pitch-distance@5.0.2':
     dependencies:
-      '@tonaljs/chord-type': 4.8.0
-      '@tonaljs/collection': 4.8.0
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/note': 4.10.0
-      '@tonaljs/pcset': 4.8.1
-      '@tonaljs/scale-type': 4.8.1
+      '@tonaljs/pitch': 5.0.1
+      '@tonaljs/pitch-interval': 5.0.2
+      '@tonaljs/pitch-note': 5.0.3
 
-  '@tonaljs/time-signature@4.8.0': {}
+  '@tonaljs/pitch-distance@5.0.5':
+    dependencies:
+      '@tonaljs/pitch': 5.0.2
+      '@tonaljs/pitch-interval': 6.1.0
+      '@tonaljs/pitch-note': 6.1.0
+
+  '@tonaljs/pitch-interval@5.0.2':
+    dependencies:
+      '@tonaljs/pitch': 5.0.1
+
+  '@tonaljs/pitch-interval@6.1.0':
+    dependencies:
+      '@tonaljs/pitch': 5.0.2
+
+  '@tonaljs/pitch-note@5.0.3':
+    dependencies:
+      '@tonaljs/pitch': 5.0.1
+
+  '@tonaljs/pitch-note@6.1.0':
+    dependencies:
+      '@tonaljs/pitch': 5.0.2
+
+  '@tonaljs/pitch@5.0.1': {}
+
+  '@tonaljs/pitch@5.0.2': {}
+
+  '@tonaljs/progression@4.9.1':
+    dependencies:
+      '@tonaljs/chord': 6.1.1
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-interval': 6.1.0
+      '@tonaljs/pitch-note': 6.1.0
+      '@tonaljs/roman-numeral': 4.9.1
+
+  '@tonaljs/range@4.9.1':
+    dependencies:
+      '@tonaljs/collection': 4.9.0
+      '@tonaljs/midi': 4.10.1
+
+  '@tonaljs/roman-numeral@4.9.1':
+    dependencies:
+      '@tonaljs/pitch': 5.0.2
+      '@tonaljs/pitch-interval': 6.1.0
+      '@tonaljs/pitch-note': 6.1.0
+
+  '@tonaljs/scale-type@4.9.1':
+    dependencies:
+      '@tonaljs/pcset': 4.10.1
+
+  '@tonaljs/scale@4.13.1':
+    dependencies:
+      '@tonaljs/chord-type': 5.1.1
+      '@tonaljs/collection': 4.9.0
+      '@tonaljs/note': 4.12.0
+      '@tonaljs/pcset': 4.10.1
+      '@tonaljs/pitch-distance': 5.0.5
+      '@tonaljs/pitch-note': 6.1.0
+      '@tonaljs/scale-type': 4.9.1
+
+  '@tonaljs/time-signature@4.9.0': {}
 
   '@tonaljs/tonal@4.10.0':
     dependencies:
-      '@tonaljs/abc-notation': 4.8.0
-      '@tonaljs/array': 4.8.0
-      '@tonaljs/chord': 4.10.0
-      '@tonaljs/chord-type': 4.8.0
-      '@tonaljs/collection': 4.8.0
-      '@tonaljs/core': 4.10.0
-      '@tonaljs/duration-value': 4.8.0
-      '@tonaljs/interval': 4.8.0
-      '@tonaljs/key': 4.9.1
-      '@tonaljs/midi': 4.9.0
-      '@tonaljs/mode': 4.8.0
-      '@tonaljs/note': 4.10.0
-      '@tonaljs/pcset': 4.8.1
-      '@tonaljs/progression': 4.8.0
-      '@tonaljs/range': 4.8.1
-      '@tonaljs/roman-numeral': 4.8.0
-      '@tonaljs/scale': 4.12.0
-      '@tonaljs/scale-type': 4.8.1
-      '@tonaljs/time-signature': 4.8.0
+      '@tonaljs/abc-notation': 4.9.1
+      '@tonaljs/array': 4.8.4
+      '@tonaljs/chord': 4.10.2
+      '@tonaljs/chord-type': 4.8.2
+      '@tonaljs/collection': 4.9.0
+      '@tonaljs/core': 4.10.4
+      '@tonaljs/duration-value': 4.9.0
+      '@tonaljs/interval': 4.8.2
+      '@tonaljs/key': 4.11.1
+      '@tonaljs/midi': 4.10.1
+      '@tonaljs/mode': 4.9.1
+      '@tonaljs/note': 4.12.0
+      '@tonaljs/pcset': 4.10.1
+      '@tonaljs/progression': 4.9.1
+      '@tonaljs/range': 4.9.1
+      '@tonaljs/roman-numeral': 4.9.1
+      '@tonaljs/scale': 4.13.1
+      '@tonaljs/scale-type': 4.9.1
+      '@tonaljs/time-signature': 4.9.0
 
   '@tufjs/canonical-json@2.0.0': {}
 
@@ -10420,36 +10035,40 @@ snapshots:
       '@tufjs/canonical-json': 2.0.0
       minimatch: 9.0.5
 
+  '@tybys/wasm-util@0.9.0':
+    dependencies:
+      tslib: 2.8.1
+
   '@types/acorn@4.0.6':
     dependencies:
       '@types/estree': 1.0.6
 
   '@types/babel__core@7.20.5':
     dependencies:
-      '@babel/parser': 7.25.8
-      '@babel/types': 7.25.8
-      '@types/babel__generator': 7.6.4
-      '@types/babel__template': 7.4.1
-      '@types/babel__traverse': 7.18.3
+      '@babel/parser': 7.26.7
+      '@babel/types': 7.26.7
+      '@types/babel__generator': 7.6.8
+      '@types/babel__template': 7.4.4
+      '@types/babel__traverse': 7.20.6
 
-  '@types/babel__generator@7.6.4':
+  '@types/babel__generator@7.6.8':
     dependencies:
-      '@babel/types': 7.25.8
+      '@babel/types': 7.26.7
 
-  '@types/babel__template@7.4.1':
+  '@types/babel__template@7.4.4':
     dependencies:
-      '@babel/parser': 7.25.8
-      '@babel/types': 7.25.8
+      '@babel/parser': 7.26.7
+      '@babel/types': 7.26.7
 
-  '@types/babel__traverse@7.18.3':
+  '@types/babel__traverse@7.20.6':
     dependencies:
-      '@babel/types': 7.25.8
+      '@babel/types': 7.26.7
 
   '@types/cookie@0.6.0': {}
 
-  '@types/debug@4.1.7':
+  '@types/debug@4.1.12':
     dependencies:
-      '@types/ms': 0.7.31
+      '@types/ms': 2.1.0
 
   '@types/estree-jsx@1.0.5':
     dependencies:
@@ -10459,10 +10078,6 @@ snapshots:
 
   '@types/estree@1.0.6': {}
 
-  '@types/hast@3.0.2':
-    dependencies:
-      '@types/unist': 3.0.3
-
   '@types/hast@3.0.4':
     dependencies:
       '@types/unist': 3.0.3
@@ -10478,10 +10093,6 @@ snapshots:
       '@types/linkify-it': 5.0.0
       '@types/mdurl': 2.0.0
 
-  '@types/mdast@4.0.2':
-    dependencies:
-      '@types/unist': 3.0.1
-
   '@types/mdast@4.0.4':
     dependencies:
       '@types/unist': 3.0.3
@@ -10492,21 +10103,21 @@ snapshots:
 
   '@types/minimatch@3.0.5': {}
 
-  '@types/minimist@1.2.2': {}
+  '@types/minimist@1.2.5': {}
 
-  '@types/ms@0.7.31': {}
+  '@types/ms@2.1.0': {}
 
   '@types/nlcst@2.0.3':
     dependencies:
       '@types/unist': 3.0.3
 
-  '@types/node@22.12.0':
+  '@types/node@22.10.10':
     dependencies:
       undici-types: 6.20.0
 
-  '@types/normalize-package-data@2.4.1': {}
+  '@types/normalize-package-data@2.4.4': {}
 
-  '@types/phoenix@1.6.5': {}
+  '@types/phoenix@1.6.6': {}
 
   '@types/react-dom@19.0.3(@types/react@19.0.8)':
     dependencies:
@@ -10514,42 +10125,42 @@ snapshots:
 
   '@types/react@19.0.8':
     dependencies:
-      csstype: 3.1.1
+      csstype: 3.1.3
 
   '@types/resolve@1.17.1':
     dependencies:
-      '@types/node': 22.12.0
+      '@types/node': 22.10.10
+
+  '@types/resolve@1.20.2': {}
 
   '@types/trusted-types@2.0.7': {}
 
-  '@types/ungap__structured-clone@0.3.3': {}
+  '@types/ungap__structured-clone@1.2.0': {}
 
   '@types/unist@2.0.11': {}
 
-  '@types/unist@3.0.1': {}
-
   '@types/unist@3.0.3': {}
 
   '@types/webmidi@2.1.0': {}
 
-  '@types/ws@8.5.12':
+  '@types/ws@8.5.14':
     dependencies:
-      '@types/node': 22.12.0
+      '@types/node': 22.10.10
 
   '@typescript-eslint/types@7.18.0': {}
 
-  '@typescript-eslint/typescript-estree@7.18.0(typescript@5.6.3)':
+  '@typescript-eslint/typescript-estree@7.18.0(typescript@5.7.3)':
     dependencies:
       '@typescript-eslint/types': 7.18.0
       '@typescript-eslint/visitor-keys': 7.18.0
-      debug: 4.3.7
+      debug: 4.4.0
       globby: 11.1.0
       is-glob: 4.0.3
       minimatch: 9.0.5
       semver: 7.6.3
-      ts-api-utils: 1.4.3(typescript@5.6.3)
+      ts-api-utils: 1.4.3(typescript@5.7.3)
     optionalDependencies:
-      typescript: 5.6.3
+      typescript: 5.7.3
     transitivePeerDependencies:
       - supports-color
 
@@ -10558,21 +10169,21 @@ snapshots:
       '@typescript-eslint/types': 7.18.0
       eslint-visitor-keys: 3.4.3
 
-  '@ungap/structured-clone@1.2.0': {}
+  '@ungap/structured-clone@1.3.0': {}
 
-  '@vite-pwa/astro@0.5.0(astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3))(vite-plugin-pwa@0.17.5(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0))':
+  '@vite-pwa/astro@0.5.0(astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0))(vite-plugin-pwa@0.21.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0))':
     dependencies:
-      astro: 5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3)
-      vite-plugin-pwa: 0.17.5(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0)
+      astro: 5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0)
+      vite-plugin-pwa: 0.21.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0)
 
-  '@vitejs/plugin-react@4.3.4(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))':
+  '@vitejs/plugin-react@4.3.4(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))':
     dependencies:
       '@babel/core': 7.26.7
       '@babel/plugin-transform-react-jsx-self': 7.25.9(@babel/core@7.26.7)
       '@babel/plugin-transform-react-jsx-source': 7.25.9(@babel/core@7.26.7)
       '@types/babel__core': 7.20.5
       react-refresh: 0.14.2
-      vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
     transitivePeerDependencies:
       - supports-color
 
@@ -10583,13 +10194,13 @@ snapshots:
       chai: 5.1.2
       tinyrainbow: 2.0.0
 
-  '@vitest/mocker@3.0.4(vite@5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0))':
+  '@vitest/mocker@3.0.4(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))':
     dependencies:
       '@vitest/spy': 3.0.4
       estree-walker: 3.0.3
       magic-string: 0.30.17
     optionalDependencies:
-      vite: 5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0)
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   '@vitest/pretty-format@3.0.4':
     dependencies:
@@ -10619,7 +10230,7 @@ snapshots:
       sirv: 3.0.0
       tinyglobby: 0.2.10
       tinyrainbow: 2.0.0
-      vitest: 3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+      vitest: 3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
   '@vitest/utils@3.0.4':
     dependencies:
@@ -10629,7 +10240,7 @@ snapshots:
 
   '@vue/compiler-core@3.5.13':
     dependencies:
-      '@babel/parser': 7.25.8
+      '@babel/parser': 7.26.7
       '@vue/shared': 3.5.13
       entities: 4.5.0
       estree-walker: 2.0.2
@@ -10642,13 +10253,13 @@ snapshots:
 
   '@vue/compiler-sfc@3.5.13':
     dependencies:
-      '@babel/parser': 7.25.8
+      '@babel/parser': 7.26.7
       '@vue/compiler-core': 3.5.13
       '@vue/compiler-dom': 3.5.13
       '@vue/compiler-ssr': 3.5.13
       '@vue/shared': 3.5.13
       estree-walker: 2.0.2
-      magic-string: 0.30.12
+      magic-string: 0.30.17
       postcss: 8.5.1
       source-map-js: 1.2.1
 
@@ -10661,12 +10272,12 @@ snapshots:
 
   '@yarnpkg/lockfile@1.1.0': {}
 
-  '@yarnpkg/parsers@3.0.0-rc.46':
+  '@yarnpkg/parsers@3.0.2':
     dependencies:
       js-yaml: 3.14.1
-      tslib: 2.8.0
+      tslib: 2.8.1
 
-  '@zkochan/js-yaml@0.0.6':
+  '@zkochan/js-yaml@0.0.7':
     dependencies:
       argparse: 2.0.1
 
@@ -10687,15 +10298,11 @@ snapshots:
 
   agent-base@6.0.2:
     dependencies:
-      debug: 4.3.7
+      debug: 4.4.0
     transitivePeerDependencies:
       - supports-color
 
-  agent-base@7.1.1:
-    dependencies:
-      debug: 4.3.7
-    transitivePeerDependencies:
-      - supports-color
+  agent-base@7.1.3: {}
 
   aggregate-error@3.1.0:
     dependencies:
@@ -10712,7 +10319,7 @@ snapshots:
   ajv@8.17.1:
     dependencies:
       fast-deep-equal: 3.1.3
-      fast-uri: 3.0.3
+      fast-uri: 3.0.6
       json-schema-traverse: 1.0.0
       require-from-string: 2.0.2
 
@@ -10748,10 +10355,6 @@ snapshots:
 
   ansi-regex@6.1.0: {}
 
-  ansi-styles@3.2.1:
-    dependencies:
-      color-convert: 1.9.3
-
   ansi-styles@4.3.0:
     dependencies:
       color-convert: 2.0.1
@@ -10781,15 +10384,10 @@ snapshots:
 
   aria-query@5.3.2: {}
 
-  array-buffer-byte-length@1.0.0:
+  array-buffer-byte-length@1.0.2:
     dependencies:
-      call-bind: 1.0.5
-      is-array-buffer: 3.0.2
-
-  array-buffer-byte-length@1.0.1:
-    dependencies:
-      call-bind: 1.0.7
-      is-array-buffer: 3.0.4
+      call-bound: 1.0.3
+      is-array-buffer: 3.0.5
 
   array-differ@3.0.0: {}
 
@@ -10797,12 +10395,12 @@ snapshots:
 
   array-includes@3.1.8:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-abstract: 1.23.3
-      es-object-atoms: 1.0.0
-      get-intrinsic: 1.2.4
-      is-string: 1.0.7
+      es-abstract: 1.23.9
+      es-object-atoms: 1.1.1
+      get-intrinsic: 1.2.7
+      is-string: 1.1.1
 
   array-iterate@2.0.1: {}
 
@@ -10810,47 +10408,36 @@ snapshots:
 
   array.prototype.findlastindex@1.2.5:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-abstract: 1.23.3
+      es-abstract: 1.23.9
       es-errors: 1.3.0
-      es-object-atoms: 1.0.0
+      es-object-atoms: 1.1.1
       es-shim-unscopables: 1.0.2
 
-  array.prototype.flat@1.3.2:
+  array.prototype.flat@1.3.3:
     dependencies:
-      call-bind: 1.0.2
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-abstract: 1.22.3
-      es-shim-unscopables: 1.0.0
+      es-abstract: 1.23.9
+      es-shim-unscopables: 1.0.2
 
-  array.prototype.flatmap@1.3.2:
+  array.prototype.flatmap@1.3.3:
     dependencies:
-      call-bind: 1.0.2
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-abstract: 1.22.3
-      es-shim-unscopables: 1.0.0
+      es-abstract: 1.23.9
+      es-shim-unscopables: 1.0.2
 
-  arraybuffer.prototype.slice@1.0.2:
+  arraybuffer.prototype.slice@1.0.4:
     dependencies:
-      array-buffer-byte-length: 1.0.0
-      call-bind: 1.0.5
+      array-buffer-byte-length: 1.0.2
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-abstract: 1.22.3
-      get-intrinsic: 1.2.2
-      is-array-buffer: 3.0.2
-      is-shared-array-buffer: 1.0.2
-
-  arraybuffer.prototype.slice@1.0.3:
-    dependencies:
-      array-buffer-byte-length: 1.0.1
-      call-bind: 1.0.7
-      define-properties: 1.2.1
-      es-abstract: 1.23.3
+      es-abstract: 1.23.9
       es-errors: 1.3.0
-      get-intrinsic: 1.2.4
-      is-array-buffer: 3.0.4
-      is-shared-array-buffer: 1.0.3
+      get-intrinsic: 1.2.7
+      is-array-buffer: 3.0.5
 
   arrify@1.0.1: {}
 
@@ -10862,11 +10449,11 @@ snapshots:
 
   astring@1.9.0: {}
 
-  astro@5.2.1(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.36.0)(typescript@5.6.3):
+  astro@5.1.9(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(rollup@2.79.2)(terser@5.37.0)(typescript@5.7.3)(yaml@2.7.0):
     dependencies:
       '@astrojs/compiler': 2.10.3
-      '@astrojs/internal-helpers': 0.5.0
-      '@astrojs/markdown-remark': 6.1.0
+      '@astrojs/internal-helpers': 0.4.2
+      '@astrojs/markdown-remark': 6.0.2
       '@astrojs/telemetry': 3.2.0
       '@oslojs/encoding': 1.1.0
       '@rollup/pluginutils': 5.1.4(rollup@2.79.2)
@@ -10902,27 +10489,27 @@ snapshots:
       mrmime: 2.0.0
       neotraverse: 0.6.18
       p-limit: 6.2.0
-      p-queue: 8.0.1
+      p-queue: 8.1.0
       preferred-pm: 4.0.0
       prompts: 2.4.2
       rehype: 13.0.2
       semver: 7.6.3
-      shiki: 1.29.2
+      shiki: 1.29.1
       tinyexec: 0.3.2
-      tsconfck: 3.1.4(typescript@5.6.3)
+      tsconfck: 3.1.4(typescript@5.7.3)
       ultrahtml: 1.5.3
       unist-util-visit: 5.0.0
       unstorage: 1.14.4
       vfile: 6.0.3
-      vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
-      vitefu: 1.0.5(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
+      vitefu: 1.0.5(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))
       which-pm: 3.0.0
       xxhash-wasm: 1.1.0
       yargs-parser: 21.1.1
       yocto-spinner: 0.1.2
       zod: 3.24.1
       zod-to-json-schema: 3.24.1(zod@3.24.1)
-      zod-to-ts: 1.2.0(typescript@5.6.3)(zod@3.24.1)
+      zod-to-ts: 1.2.0(typescript@5.7.3)(zod@3.24.1)
     optionalDependencies:
       sharp: 0.33.5
     transitivePeerDependencies:
@@ -10959,37 +10546,37 @@ snapshots:
       - uploadthing
       - yaml
 
+  async-function@1.0.0: {}
+
   async@3.2.6: {}
 
   asynckit@0.4.0: {}
 
   at-least-node@1.0.0: {}
 
-  automation-events@5.0.0:
+  automation-events@7.1.5:
     dependencies:
-      '@babel/runtime': 7.25.7
-      tslib: 2.8.0
+      '@babel/runtime': 7.26.7
+      tslib: 2.8.1
 
   autoprefixer@10.4.20(postcss@8.5.1):
     dependencies:
-      browserslist: 4.24.0
-      caniuse-lite: 1.0.30001669
+      browserslist: 4.24.4
+      caniuse-lite: 1.0.30001695
       fraction.js: 4.3.7
       normalize-range: 0.1.2
       picocolors: 1.1.1
       postcss: 8.5.1
       postcss-value-parser: 4.2.0
 
-  available-typed-arrays@1.0.5: {}
-
   available-typed-arrays@1.0.7:
     dependencies:
       possible-typed-array-names: 1.0.0
 
-  axios@1.6.3:
+  axios@1.7.9:
     dependencies:
-      follow-redirects: 1.15.2
-      form-data: 4.0.0
+      follow-redirects: 1.15.9
+      form-data: 4.0.1
       proxy-from-env: 1.1.0
     transitivePeerDependencies:
       - debug
@@ -10998,11 +10585,11 @@ snapshots:
 
   babel-plugin-add-module-exports@0.2.1: {}
 
-  babel-plugin-polyfill-corejs2@0.4.11(@babel/core@7.26.7):
+  babel-plugin-polyfill-corejs2@0.4.12(@babel/core@7.26.7):
     dependencies:
       '@babel/compat-data': 7.26.5
       '@babel/core': 7.26.7
-      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.7)
+      '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.7)
       semver: 6.3.1
     transitivePeerDependencies:
       - supports-color
@@ -11010,15 +10597,15 @@ snapshots:
   babel-plugin-polyfill-corejs3@0.10.6(@babel/core@7.26.7):
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.7)
-      core-js-compat: 3.38.1
+      '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.7)
+      core-js-compat: 3.40.0
     transitivePeerDependencies:
       - supports-color
 
-  babel-plugin-polyfill-regenerator@0.6.2(@babel/core@7.26.7):
+  babel-plugin-polyfill-regenerator@0.6.3(@babel/core@7.26.7):
     dependencies:
       '@babel/core': 7.26.7
-      '@babel/helper-define-polyfill-provider': 0.6.2(@babel/core@7.26.7)
+      '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.7)
     transitivePeerDependencies:
       - supports-color
 
@@ -11039,13 +10626,13 @@ snapshots:
       read-cmd-shim: 4.0.0
       write-file-atomic: 5.0.1
 
-  binary-extensions@2.2.0: {}
+  binary-extensions@2.3.0: {}
 
   bl@4.1.0:
     dependencies:
       buffer: 5.7.1
       inherits: 2.0.4
-      readable-stream: 3.6.0
+      readable-stream: 3.6.2
 
   bluebird@3.7.2: {}
 
@@ -11053,10 +10640,10 @@ snapshots:
     dependencies:
       ansi-align: 3.0.1
       camelcase: 8.0.0
-      chalk: 5.3.0
+      chalk: 5.4.1
       cli-boxes: 3.0.0
       string-width: 7.2.0
-      type-fest: 4.26.1
+      type-fest: 4.33.0
       widest-line: 5.0.0
       wrap-ansi: 9.0.0
 
@@ -11073,12 +10660,12 @@ snapshots:
     dependencies:
       fill-range: 7.1.1
 
-  browserslist@4.24.0:
+  browserslist@4.24.4:
     dependencies:
-      caniuse-lite: 1.0.30001669
-      electron-to-chromium: 1.5.41
-      node-releases: 2.0.18
-      update-browserslist-db: 1.1.1(browserslist@4.24.0)
+      caniuse-lite: 1.0.30001695
+      electron-to-chromium: 1.5.88
+      node-releases: 2.0.19
+      update-browserslist-db: 1.1.2(browserslist@4.24.4)
 
   buffer-alloc-unsafe@1.1.0: {}
 
@@ -11098,7 +10685,7 @@ snapshots:
 
   builtin-modules@3.3.0: {}
 
-  builtins@5.0.1:
+  builtins@5.1.0:
     dependencies:
       semver: 7.6.3
 
@@ -11121,25 +10708,23 @@ snapshots:
       tar: 6.2.1
       unique-filename: 3.0.0
 
-  call-bind@1.0.2:
+  call-bind-apply-helpers@1.0.1:
     dependencies:
-      function-bind: 1.1.2
-      get-intrinsic: 1.2.2
-
-  call-bind@1.0.5:
-    dependencies:
-      function-bind: 1.1.2
-      get-intrinsic: 1.2.2
-      set-function-length: 1.1.1
-
-  call-bind@1.0.7:
-    dependencies:
-      es-define-property: 1.0.0
       es-errors: 1.3.0
       function-bind: 1.1.2
-      get-intrinsic: 1.2.4
+
+  call-bind@1.0.8:
+    dependencies:
+      call-bind-apply-helpers: 1.0.1
+      es-define-property: 1.0.1
+      get-intrinsic: 1.2.7
       set-function-length: 1.2.2
 
+  call-bound@1.0.3:
+    dependencies:
+      call-bind-apply-helpers: 1.0.1
+      get-intrinsic: 1.2.7
+
   callsites@3.1.0: {}
 
   camelcase-css@2.0.1: {}
@@ -11154,7 +10739,7 @@ snapshots:
 
   camelcase@8.0.0: {}
 
-  caniuse-lite@1.0.30001669: {}
+  caniuse-lite@1.0.30001695: {}
 
   catharsis@0.9.0:
     dependencies:
@@ -11170,12 +10755,6 @@ snapshots:
       loupe: 3.1.2
       pathval: 2.0.0
 
-  chalk@2.4.2:
-    dependencies:
-      ansi-styles: 3.2.1
-      escape-string-regexp: 1.0.5
-      supports-color: 5.5.0
-
   chalk@4.1.0:
     dependencies:
       ansi-styles: 4.3.0
@@ -11186,7 +10765,7 @@ snapshots:
       ansi-styles: 4.3.0
       supports-color: 7.2.0
 
-  chalk@5.3.0: {}
+  chalk@5.4.1: {}
 
   character-entities-html4@2.1.0: {}
 
@@ -11222,8 +10801,6 @@ snapshots:
 
   ci-info@3.9.0: {}
 
-  ci-info@4.0.0: {}
-
   ci-info@4.1.0: {}
 
   claviature@0.1.0: {}
@@ -11278,7 +10855,7 @@ snapshots:
     dependencies:
       inherits: 2.0.4
       process-nextick-args: 2.0.1
-      readable-stream: 2.3.7
+      readable-stream: 2.3.8
 
   clsx@2.1.1: {}
 
@@ -11286,16 +10863,10 @@ snapshots:
 
   collapse-white-space@2.1.0: {}
 
-  color-convert@1.9.3:
-    dependencies:
-      color-name: 1.1.3
-
   color-convert@2.0.1:
     dependencies:
       color-name: 1.1.4
 
-  color-name@1.1.3: {}
-
   color-name@1.1.4: {}
 
   color-string@1.9.1:
@@ -11319,7 +10890,7 @@ snapshots:
     dependencies:
       delayed-stream: 1.0.0
 
-  comlink@4.3.1: {}
+  comlink@4.4.2: {}
 
   comma-separated-tokens@2.0.3: {}
 
@@ -11344,7 +10915,7 @@ snapshots:
     dependencies:
       buffer-from: 1.1.2
       inherits: 2.0.4
-      readable-stream: 3.6.0
+      readable-stream: 3.6.2
       typedarray: 0.0.6
 
   consola@3.4.0: {}
@@ -11409,20 +10980,20 @@ snapshots:
 
   cookie@0.7.2: {}
 
-  core-js-compat@3.38.1:
+  core-js-compat@3.40.0:
     dependencies:
-      browserslist: 4.24.0
+      browserslist: 4.24.4
 
   core-util-is@1.0.3: {}
 
-  cosmiconfig@9.0.0(typescript@5.6.3):
+  cosmiconfig@9.0.0(typescript@5.7.3):
     dependencies:
       env-paths: 2.2.1
       import-fresh: 3.3.0
       js-yaml: 4.1.0
       parse-json: 5.2.0
     optionalDependencies:
-      typescript: 5.6.3
+      typescript: 5.7.3
 
   cowsay@1.6.0:
     dependencies:
@@ -11433,12 +11004,6 @@ snapshots:
 
   crelt@1.0.6: {}
 
-  cross-spawn@7.0.3:
-    dependencies:
-      path-key: 3.1.1
-      shebang-command: 2.0.0
-      which: 2.0.2
-
   cross-spawn@7.0.6:
     dependencies:
       path-key: 3.1.1
@@ -11453,7 +11018,7 @@ snapshots:
 
   cssesc@3.0.0: {}
 
-  csstype@3.1.1: {}
+  csstype@3.1.3: {}
 
   csv-generate@4.4.2: {}
 
@@ -11472,23 +11037,23 @@ snapshots:
 
   data-uri-to-buffer@4.0.1: {}
 
-  data-view-buffer@1.0.1:
+  data-view-buffer@1.0.2:
     dependencies:
-      call-bind: 1.0.7
+      call-bound: 1.0.3
       es-errors: 1.3.0
-      is-data-view: 1.0.1
+      is-data-view: 1.0.2
 
-  data-view-byte-length@1.0.1:
+  data-view-byte-length@1.0.2:
     dependencies:
-      call-bind: 1.0.7
+      call-bound: 1.0.3
       es-errors: 1.3.0
-      is-data-view: 1.0.1
+      is-data-view: 1.0.2
 
-  data-view-byte-offset@1.0.0:
+  data-view-byte-offset@1.0.1:
     dependencies:
-      call-bind: 1.0.7
+      call-bound: 1.0.3
       es-errors: 1.3.0
-      is-data-view: 1.0.1
+      is-data-view: 1.0.2
 
   date-fns@4.1.0: {}
 
@@ -11504,10 +11069,6 @@ snapshots:
     dependencies:
       ms: 2.1.3
 
-  debug@4.3.7:
-    dependencies:
-      ms: 2.1.3
-
   debug@4.4.0:
     dependencies:
       ms: 2.1.3
@@ -11541,24 +11102,18 @@ snapshots:
     dependencies:
       clone: 1.0.4
 
-  define-data-property@1.1.1:
-    dependencies:
-      get-intrinsic: 1.2.4
-      gopd: 1.0.1
-      has-property-descriptors: 1.0.0
-
   define-data-property@1.1.4:
     dependencies:
-      es-define-property: 1.0.0
+      es-define-property: 1.0.1
       es-errors: 1.3.0
-      gopd: 1.0.1
+      gopd: 1.2.0
 
   define-lazy-prop@2.0.0: {}
 
   define-properties@1.2.1:
     dependencies:
-      define-data-property: 1.1.1
-      has-property-descriptors: 1.0.0
+      define-data-property: 1.1.4
+      has-property-descriptors: 1.0.2
       object-keys: 1.1.1
 
   defu@6.1.4: {}
@@ -11570,7 +11125,7 @@ snapshots:
       commander: 12.1.0
       filing-cabinet: 5.0.2
       precinct: 12.1.2
-      typescript: 5.6.3
+      typescript: 5.7.3
     transitivePeerDependencies:
       - supports-color
 
@@ -11584,8 +11139,6 @@ snapshots:
 
   detect-libc@1.0.3: {}
 
-  detect-libc@2.0.1: {}
-
   detect-libc@2.0.3: {}
 
   detective-amd@6.0.0:
@@ -11593,45 +11146,45 @@ snapshots:
       ast-module-types: 6.0.0
       escodegen: 2.1.0
       get-amd-module-type: 6.0.0
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
   detective-cjs@6.0.0:
     dependencies:
       ast-module-types: 6.0.0
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
   detective-es6@5.0.0:
     dependencies:
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
-  detective-postcss@7.0.0(postcss@8.4.47):
+  detective-postcss@7.0.0(postcss@8.5.1):
     dependencies:
       is-url: 1.2.4
-      postcss: 8.4.47
-      postcss-values-parser: 6.0.2(postcss@8.4.47)
+      postcss: 8.5.1
+      postcss-values-parser: 6.0.2(postcss@8.5.1)
 
   detective-sass@6.0.0:
     dependencies:
       gonzales-pe: 4.3.0
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
   detective-scss@5.0.0:
     dependencies:
       gonzales-pe: 4.3.0
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
   detective-stylus@5.0.0: {}
 
-  detective-typescript@13.0.0(typescript@5.6.3):
+  detective-typescript@13.0.0(typescript@5.7.3):
     dependencies:
-      '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.6.3)
+      '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.7.3)
       ast-module-types: 6.0.0
-      node-source-walk: 7.0.1
-      typescript: 5.6.3
+      node-source-walk: 7.0.0
+      typescript: 5.7.3
     transitivePeerDependencies:
       - supports-color
 
-  detective-vue2@2.1.1(typescript@5.6.3):
+  detective-vue2@2.1.1(typescript@5.7.3):
     dependencies:
       '@dependents/detective-less': 5.0.0
       '@vue/compiler-sfc': 3.5.13
@@ -11639,8 +11192,8 @@ snapshots:
       detective-sass: 6.0.0
       detective-scss: 5.0.0
       detective-stylus: 5.0.0
-      detective-typescript: 13.0.0(typescript@5.6.3)
-      typescript: 5.6.3
+      detective-typescript: 13.0.0(typescript@5.7.3)
+      typescript: 5.7.3
     transitivePeerDependencies:
       - supports-color
 
@@ -11666,7 +11219,7 @@ snapshots:
 
   djipevents@2.0.7:
     dependencies:
-      '@babel/runtime': 7.25.7
+      '@babel/runtime': 7.26.7
 
   dlv@1.1.3: {}
 
@@ -11678,12 +11231,20 @@ snapshots:
     dependencies:
       is-obj: 2.0.0
 
-  dotenv-expand@10.0.0: {}
+  dotenv-expand@11.0.7:
+    dependencies:
+      dotenv: 16.4.7
 
-  dotenv@16.3.1: {}
+  dotenv@16.4.7: {}
 
   dset@3.1.4: {}
 
+  dunder-proto@1.0.1:
+    dependencies:
+      call-bind-apply-helpers: 1.0.1
+      es-errors: 1.3.0
+      gopd: 1.2.0
+
   duplexer@0.1.2: {}
 
   eastasianwidth@0.2.0: {}
@@ -11692,7 +11253,7 @@ snapshots:
     dependencies:
       jake: 10.9.2
 
-  electron-to-chromium@1.5.41: {}
+  electron-to-chromium@1.5.88: {}
 
   emoji-regex-xs@1.0.0: {}
 
@@ -11711,11 +11272,6 @@ snapshots:
     dependencies:
       once: 1.4.0
 
-  enhanced-resolve@5.17.1:
-    dependencies:
-      graceful-fs: 4.2.11
-      tapable: 2.2.1
-
   enhanced-resolve@5.18.0:
     dependencies:
       graceful-fs: 4.2.11
@@ -11737,134 +11293,86 @@ snapshots:
     dependencies:
       is-arrayish: 0.2.1
 
-  es-abstract@1.22.3:
+  es-abstract@1.23.9:
     dependencies:
-      array-buffer-byte-length: 1.0.0
-      arraybuffer.prototype.slice: 1.0.2
-      available-typed-arrays: 1.0.5
-      call-bind: 1.0.5
-      es-set-tostringtag: 2.0.1
-      es-to-primitive: 1.2.1
-      function.prototype.name: 1.1.6
-      get-intrinsic: 1.2.2
-      get-symbol-description: 1.0.0
-      globalthis: 1.0.3
-      gopd: 1.0.1
-      has-property-descriptors: 1.0.0
-      has-proto: 1.0.1
-      has-symbols: 1.0.3
-      hasown: 2.0.2
-      internal-slot: 1.0.6
-      is-array-buffer: 3.0.2
-      is-callable: 1.2.7
-      is-negative-zero: 2.0.2
-      is-regex: 1.1.4
-      is-shared-array-buffer: 1.0.2
-      is-string: 1.0.7
-      is-typed-array: 1.1.12
-      is-weakref: 1.0.2
-      object-inspect: 1.13.1
-      object-keys: 1.1.1
-      object.assign: 4.1.4
-      regexp.prototype.flags: 1.5.1
-      safe-array-concat: 1.0.1
-      safe-regex-test: 1.0.0
-      string.prototype.trim: 1.2.8
-      string.prototype.trimend: 1.0.8
-      string.prototype.trimstart: 1.0.7
-      typed-array-buffer: 1.0.0
-      typed-array-byte-length: 1.0.0
-      typed-array-byte-offset: 1.0.0
-      typed-array-length: 1.0.4
-      unbox-primitive: 1.0.2
-      which-typed-array: 1.1.13
-
-  es-abstract@1.23.3:
-    dependencies:
-      array-buffer-byte-length: 1.0.1
-      arraybuffer.prototype.slice: 1.0.3
+      array-buffer-byte-length: 1.0.2
+      arraybuffer.prototype.slice: 1.0.4
       available-typed-arrays: 1.0.7
-      call-bind: 1.0.7
-      data-view-buffer: 1.0.1
-      data-view-byte-length: 1.0.1
-      data-view-byte-offset: 1.0.0
-      es-define-property: 1.0.0
+      call-bind: 1.0.8
+      call-bound: 1.0.3
+      data-view-buffer: 1.0.2
+      data-view-byte-length: 1.0.2
+      data-view-byte-offset: 1.0.1
+      es-define-property: 1.0.1
       es-errors: 1.3.0
-      es-object-atoms: 1.0.0
-      es-set-tostringtag: 2.0.3
-      es-to-primitive: 1.2.1
-      function.prototype.name: 1.1.6
-      get-intrinsic: 1.2.4
-      get-symbol-description: 1.0.2
+      es-object-atoms: 1.1.1
+      es-set-tostringtag: 2.1.0
+      es-to-primitive: 1.3.0
+      function.prototype.name: 1.1.8
+      get-intrinsic: 1.2.7
+      get-proto: 1.0.1
+      get-symbol-description: 1.1.0
       globalthis: 1.0.4
-      gopd: 1.0.1
+      gopd: 1.2.0
       has-property-descriptors: 1.0.2
-      has-proto: 1.0.3
-      has-symbols: 1.0.3
+      has-proto: 1.2.0
+      has-symbols: 1.1.0
       hasown: 2.0.2
-      internal-slot: 1.0.7
-      is-array-buffer: 3.0.4
+      internal-slot: 1.1.0
+      is-array-buffer: 3.0.5
       is-callable: 1.2.7
-      is-data-view: 1.0.1
-      is-negative-zero: 2.0.3
-      is-regex: 1.1.4
-      is-shared-array-buffer: 1.0.3
-      is-string: 1.0.7
-      is-typed-array: 1.1.13
-      is-weakref: 1.0.2
-      object-inspect: 1.13.2
+      is-data-view: 1.0.2
+      is-regex: 1.2.1
+      is-shared-array-buffer: 1.0.4
+      is-string: 1.1.1
+      is-typed-array: 1.1.15
+      is-weakref: 1.1.0
+      math-intrinsics: 1.1.0
+      object-inspect: 1.13.3
       object-keys: 1.1.1
-      object.assign: 4.1.5
-      regexp.prototype.flags: 1.5.3
-      safe-array-concat: 1.1.2
-      safe-regex-test: 1.0.3
-      string.prototype.trim: 1.2.9
-      string.prototype.trimend: 1.0.8
+      object.assign: 4.1.7
+      own-keys: 1.0.1
+      regexp.prototype.flags: 1.5.4
+      safe-array-concat: 1.1.3
+      safe-push-apply: 1.0.0
+      safe-regex-test: 1.1.0
+      set-proto: 1.0.0
+      string.prototype.trim: 1.2.10
+      string.prototype.trimend: 1.0.9
       string.prototype.trimstart: 1.0.8
-      typed-array-buffer: 1.0.2
-      typed-array-byte-length: 1.0.1
-      typed-array-byte-offset: 1.0.2
-      typed-array-length: 1.0.6
-      unbox-primitive: 1.0.2
-      which-typed-array: 1.1.15
+      typed-array-buffer: 1.0.3
+      typed-array-byte-length: 1.0.3
+      typed-array-byte-offset: 1.0.4
+      typed-array-length: 1.0.7
+      unbox-primitive: 1.1.0
+      which-typed-array: 1.1.18
 
-  es-define-property@1.0.0:
-    dependencies:
-      get-intrinsic: 1.2.4
+  es-define-property@1.0.1: {}
 
   es-errors@1.3.0: {}
 
   es-module-lexer@1.6.0: {}
 
-  es-object-atoms@1.0.0:
+  es-object-atoms@1.1.1:
     dependencies:
       es-errors: 1.3.0
 
-  es-set-tostringtag@2.0.1:
+  es-set-tostringtag@2.1.0:
     dependencies:
-      get-intrinsic: 1.2.2
-      has: 1.0.3
-      has-tostringtag: 1.0.0
-
-  es-set-tostringtag@2.0.3:
-    dependencies:
-      get-intrinsic: 1.2.4
+      es-errors: 1.3.0
+      get-intrinsic: 1.2.7
       has-tostringtag: 1.0.2
       hasown: 2.0.2
 
-  es-shim-unscopables@1.0.0:
-    dependencies:
-      has: 1.0.3
-
   es-shim-unscopables@1.0.2:
     dependencies:
       hasown: 2.0.2
 
-  es-to-primitive@1.2.1:
+  es-to-primitive@1.3.0:
     dependencies:
       is-callable: 1.2.7
-      is-date-object: 1.0.5
-      is-symbol: 1.0.4
+      is-date-object: 1.1.0
+      is-symbol: 1.1.1
 
   esast-util-from-estree@2.0.0:
     dependencies:
@@ -11880,32 +11388,6 @@ snapshots:
       esast-util-from-estree: 2.0.0
       vfile-message: 4.0.2
 
-  esbuild@0.21.5:
-    optionalDependencies:
-      '@esbuild/aix-ppc64': 0.21.5
-      '@esbuild/android-arm': 0.21.5
-      '@esbuild/android-arm64': 0.21.5
-      '@esbuild/android-x64': 0.21.5
-      '@esbuild/darwin-arm64': 0.21.5
-      '@esbuild/darwin-x64': 0.21.5
-      '@esbuild/freebsd-arm64': 0.21.5
-      '@esbuild/freebsd-x64': 0.21.5
-      '@esbuild/linux-arm': 0.21.5
-      '@esbuild/linux-arm64': 0.21.5
-      '@esbuild/linux-ia32': 0.21.5
-      '@esbuild/linux-loong64': 0.21.5
-      '@esbuild/linux-mips64el': 0.21.5
-      '@esbuild/linux-ppc64': 0.21.5
-      '@esbuild/linux-riscv64': 0.21.5
-      '@esbuild/linux-s390x': 0.21.5
-      '@esbuild/linux-x64': 0.21.5
-      '@esbuild/netbsd-x64': 0.21.5
-      '@esbuild/openbsd-x64': 0.21.5
-      '@esbuild/sunos-x64': 0.21.5
-      '@esbuild/win32-arm64': 0.21.5
-      '@esbuild/win32-ia32': 0.21.5
-      '@esbuild/win32-x64': 0.21.5
-
   esbuild@0.24.2:
     optionalDependencies:
       '@esbuild/aix-ppc64': 0.24.2
@@ -11934,8 +11416,6 @@ snapshots:
       '@esbuild/win32-ia32': 0.24.2
       '@esbuild/win32-x64': 0.24.2
 
-  escalade@3.1.1: {}
-
   escalade@3.2.0: {}
 
   escape-string-regexp@1.0.5: {}
@@ -11957,8 +11437,8 @@ snapshots:
   eslint-import-resolver-node@0.3.9:
     dependencies:
       debug: 3.2.7
-      is-core-module: 2.15.1
-      resolve: 1.22.8
+      is-core-module: 2.16.1
+      resolve: 1.22.10
     transitivePeerDependencies:
       - supports-color
 
@@ -11982,38 +11462,38 @@ snapshots:
       '@rtsao/scc': 1.1.0
       array-includes: 3.1.8
       array.prototype.findlastindex: 1.2.5
-      array.prototype.flat: 1.3.2
-      array.prototype.flatmap: 1.3.2
+      array.prototype.flat: 1.3.3
+      array.prototype.flatmap: 1.3.3
       debug: 3.2.7
       doctrine: 2.1.0
       eslint: 9.19.0(jiti@2.4.2)
       eslint-import-resolver-node: 0.3.9
       eslint-module-utils: 2.12.0(eslint-import-resolver-node@0.3.9)(eslint@9.19.0(jiti@2.4.2))
       hasown: 2.0.2
-      is-core-module: 2.15.1
+      is-core-module: 2.16.1
       is-glob: 4.0.3
       minimatch: 3.1.2
       object.fromentries: 2.0.8
       object.groupby: 1.0.3
-      object.values: 1.2.0
+      object.values: 1.2.1
       semver: 6.3.1
-      string.prototype.trimend: 1.0.8
+      string.prototype.trimend: 1.0.9
       tsconfig-paths: 3.15.0
     transitivePeerDependencies:
       - eslint-import-resolver-typescript
       - eslint-import-resolver-webpack
       - supports-color
 
-  eslint-plugin-n@15.6.1(eslint@9.19.0(jiti@2.4.2)):
+  eslint-plugin-n@15.7.0(eslint@9.19.0(jiti@2.4.2)):
     dependencies:
-      builtins: 5.0.1
+      builtins: 5.1.0
       eslint: 9.19.0(jiti@2.4.2)
       eslint-plugin-es: 4.1.0(eslint@9.19.0(jiti@2.4.2))
       eslint-utils: 3.0.0(eslint@9.19.0(jiti@2.4.2))
-      ignore: 5.2.4
-      is-core-module: 2.15.1
+      ignore: 5.3.2
+      is-core-module: 2.16.1
       minimatch: 3.1.2
-      resolve: 1.22.8
+      resolve: 1.22.10
       semver: 7.6.3
 
   eslint-scope@8.2.0:
@@ -12036,13 +11516,11 @@ snapshots:
 
   eslint-visitor-keys@3.4.3: {}
 
-  eslint-visitor-keys@4.1.0: {}
-
   eslint-visitor-keys@4.2.0: {}
 
   eslint@9.19.0(jiti@2.4.2):
     dependencies:
-      '@eslint-community/eslint-utils': 4.4.0(eslint@9.19.0(jiti@2.4.2))
+      '@eslint-community/eslint-utils': 4.4.1(eslint@9.19.0(jiti@2.4.2))
       '@eslint-community/regexpp': 4.12.1
       '@eslint/config-array': 0.19.1
       '@eslint/core': 0.10.0
@@ -12057,36 +11535,30 @@ snapshots:
       ajv: 6.12.6
       chalk: 4.1.2
       cross-spawn: 7.0.6
-      debug: 4.3.7
+      debug: 4.4.0
       escape-string-regexp: 4.0.0
       eslint-scope: 8.2.0
       eslint-visitor-keys: 4.2.0
       espree: 10.3.0
-      esquery: 1.5.0
+      esquery: 1.6.0
       esutils: 2.0.3
       fast-deep-equal: 3.1.3
       file-entry-cache: 8.0.0
       find-up: 5.0.0
       glob-parent: 6.0.2
-      ignore: 5.2.4
+      ignore: 5.3.2
       imurmurhash: 0.1.4
       is-glob: 4.0.3
       json-stable-stringify-without-jsonify: 1.0.1
       lodash.merge: 4.6.2
       minimatch: 3.1.2
       natural-compare: 1.4.0
-      optionator: 0.9.3
+      optionator: 0.9.4
     optionalDependencies:
       jiti: 2.4.2
     transitivePeerDependencies:
       - supports-color
 
-  espree@10.2.0:
-    dependencies:
-      acorn: 8.14.0
-      acorn-jsx: 5.3.2(acorn@8.14.0)
-      eslint-visitor-keys: 4.1.0
-
   espree@10.3.0:
     dependencies:
       acorn: 8.14.0
@@ -12095,7 +11567,7 @@ snapshots:
 
   esprima@4.0.1: {}
 
-  esquery@1.5.0:
+  esquery@1.6.0:
     dependencies:
       estraverse: 5.3.0
 
@@ -12154,10 +11626,10 @@ snapshots:
 
   execa@5.0.0:
     dependencies:
-      cross-spawn: 7.0.3
-      get-stream: 6.0.1
+      cross-spawn: 7.0.6
+      get-stream: 6.0.0
       human-signals: 2.1.0
-      is-stream: 2.0.1
+      is-stream: 2.0.0
       merge-stream: 2.0.0
       npm-run-path: 4.0.1
       onetime: 5.1.2
@@ -12180,14 +11652,6 @@ snapshots:
 
   fast-deep-equal@3.1.3: {}
 
-  fast-glob@3.3.2:
-    dependencies:
-      '@nodelib/fs.stat': 2.0.5
-      '@nodelib/fs.walk': 1.2.8
-      glob-parent: 5.1.2
-      merge2: 1.4.1
-      micromatch: 4.0.8
-
   fast-glob@3.3.3:
     dependencies:
       '@nodelib/fs.stat': 2.0.5
@@ -12205,24 +11669,24 @@ snapshots:
       '@babel/runtime': 7.26.7
       tslib: 2.8.1
 
-  fast-uri@3.0.3: {}
+  fast-uri@3.0.6: {}
 
-  fast-xml-parser@4.5.0:
+  fast-xml-parser@4.5.1:
     dependencies:
       strnum: 1.0.5
 
-  fastq@1.15.0:
+  fastq@1.18.0:
     dependencies:
       reusify: 1.0.4
 
-  fdir@6.4.2(picomatch@4.0.2):
+  fdir@6.4.3(picomatch@4.0.2):
     optionalDependencies:
       picomatch: 4.0.2
 
   fetch-blob@3.2.0:
     dependencies:
       node-domexception: 1.0.0
-      web-streams-polyfill: 3.2.1
+      web-streams-polyfill: 3.3.3
 
   fflate@0.8.2: {}
 
@@ -12246,15 +11710,15 @@ snapshots:
     dependencies:
       app-module-path: 2.2.0
       commander: 12.1.0
-      enhanced-resolve: 5.17.1
+      enhanced-resolve: 5.18.0
       module-definition: 6.0.0
       module-lookup-amd: 9.0.2
-      resolve: 1.22.8
+      resolve: 1.22.10
       resolve-dependency-path: 4.0.0
-      sass-lookup: 6.1.0
-      stylus-lookup: 6.1.0
+      sass-lookup: 6.0.1
+      stylus-lookup: 6.0.0
       tsconfig-paths: 4.2.0
-      typescript: 5.6.3
+      typescript: 5.7.3
 
   fill-range@7.1.1:
     dependencies:
@@ -12283,29 +11747,27 @@ snapshots:
 
   flat-cache@4.0.1:
     dependencies:
-      flatted: 3.3.1
+      flatted: 3.3.2
       keyv: 4.5.4
 
   flat@5.0.2: {}
 
-  flatted@3.3.1: {}
-
   flatted@3.3.2: {}
 
   flattie@1.1.1: {}
 
-  follow-redirects@1.15.2: {}
+  follow-redirects@1.15.9: {}
 
-  for-each@0.3.3:
+  for-each@0.3.4:
     dependencies:
       is-callable: 1.2.7
 
   foreground-child@3.3.0:
     dependencies:
-      cross-spawn: 7.0.3
+      cross-spawn: 7.0.6
       signal-exit: 4.1.0
 
-  form-data@4.0.0:
+  form-data@4.0.1:
     dependencies:
       asynckit: 0.4.0
       combined-stream: 1.0.8
@@ -12322,11 +11784,15 @@ snapshots:
   from2@2.3.0:
     dependencies:
       inherits: 2.0.4
-      readable-stream: 2.3.7
+      readable-stream: 2.3.8
+
+  front-matter@4.0.2:
+    dependencies:
+      js-yaml: 3.14.1
 
   fs-constants@1.0.0: {}
 
-  fs-extra@11.2.0:
+  fs-extra@11.3.0:
     dependencies:
       graceful-fs: 4.2.11
       jsonfile: 6.1.0
@@ -12335,9 +11801,9 @@ snapshots:
   fs-extra@9.1.0:
     dependencies:
       at-least-node: 1.0.0
-      graceful-fs: 4.2.10
+      graceful-fs: 4.2.11
       jsonfile: 6.1.0
-      universalify: 2.0.0
+      universalify: 2.0.1
 
   fs-minipass@2.1.0:
     dependencies:
@@ -12354,12 +11820,14 @@ snapshots:
 
   function-bind@1.1.2: {}
 
-  function.prototype.name@1.1.6:
+  function.prototype.name@1.1.8:
     dependencies:
-      call-bind: 1.0.5
+      call-bind: 1.0.8
+      call-bound: 1.0.3
       define-properties: 1.2.1
-      es-abstract: 1.22.3
       functions-have-names: 1.2.3
+      hasown: 2.0.2
+      is-callable: 1.2.7
 
   functions-have-names@1.2.3: {}
 
@@ -12368,26 +11836,24 @@ snapshots:
   get-amd-module-type@6.0.0:
     dependencies:
       ast-module-types: 6.0.0
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
   get-caller-file@2.0.5: {}
 
   get-east-asian-width@1.3.0: {}
 
-  get-intrinsic@1.2.2:
-    dependencies:
-      function-bind: 1.1.2
-      has-proto: 1.0.1
-      has-symbols: 1.0.3
-      hasown: 2.0.2
-
-  get-intrinsic@1.2.4:
+  get-intrinsic@1.2.7:
     dependencies:
+      call-bind-apply-helpers: 1.0.1
+      es-define-property: 1.0.1
       es-errors: 1.3.0
+      es-object-atoms: 1.1.1
       function-bind: 1.1.2
-      has-proto: 1.0.3
-      has-symbols: 1.0.3
+      get-proto: 1.0.1
+      gopd: 1.2.0
+      has-symbols: 1.1.0
       hasown: 2.0.2
+      math-intrinsics: 1.1.0
 
   get-own-enumerable-property-symbols@3.0.2: {}
 
@@ -12400,22 +11866,20 @@ snapshots:
 
   get-port@5.1.1: {}
 
+  get-proto@1.0.1:
+    dependencies:
+      dunder-proto: 1.0.1
+      es-object-atoms: 1.1.1
+
   get-stdin@8.0.0: {}
 
   get-stream@6.0.0: {}
 
-  get-stream@6.0.1: {}
-
-  get-symbol-description@1.0.0:
+  get-symbol-description@1.1.0:
     dependencies:
-      call-bind: 1.0.5
-      get-intrinsic: 1.2.2
-
-  get-symbol-description@1.0.2:
-    dependencies:
-      call-bind: 1.0.7
+      call-bound: 1.0.3
       es-errors: 1.3.0
-      get-intrinsic: 1.2.4
+      get-intrinsic: 1.2.7
 
   git-raw-commits@3.0.0:
     dependencies:
@@ -12467,15 +11931,6 @@ snapshots:
       package-json-from-dist: 1.0.1
       path-scurry: 1.11.1
 
-  glob@7.1.4:
-    dependencies:
-      fs.realpath: 1.0.0
-      inflight: 1.0.6
-      inherits: 2.0.4
-      minimatch: 3.1.2
-      once: 1.4.0
-      path-is-absolute: 1.0.1
-
   glob@7.2.3:
     dependencies:
       fs.realpath: 1.0.0
@@ -12498,21 +11953,17 @@ snapshots:
 
   globals@15.14.0: {}
 
-  globalthis@1.0.3:
-    dependencies:
-      define-properties: 1.2.1
-
   globalthis@1.0.4:
     dependencies:
       define-properties: 1.2.1
-      gopd: 1.0.1
+      gopd: 1.2.0
 
   globby@11.1.0:
     dependencies:
       array-union: 2.1.0
       dir-glob: 3.0.1
-      fast-glob: 3.3.2
-      ignore: 5.2.4
+      fast-glob: 3.3.3
+      ignore: 5.3.2
       merge2: 1.4.1
       slash: 3.0.0
 
@@ -12545,11 +11996,7 @@ snapshots:
 
   google-closure-library@20221102.0.0: {}
 
-  gopd@1.0.1:
-    dependencies:
-      get-intrinsic: 1.2.2
-
-  graceful-fs@4.2.10: {}
+  gopd@1.2.0: {}
 
   graceful-fs@4.2.11: {}
 
@@ -12577,39 +12024,27 @@ snapshots:
 
   hard-rejection@2.1.0: {}
 
-  has-bigints@1.0.2: {}
-
-  has-flag@3.0.0: {}
+  has-bigints@1.1.0: {}
 
   has-flag@4.0.0: {}
 
-  has-property-descriptors@1.0.0:
-    dependencies:
-      get-intrinsic: 1.2.4
-
   has-property-descriptors@1.0.2:
     dependencies:
-      es-define-property: 1.0.0
+      es-define-property: 1.0.1
 
-  has-proto@1.0.1: {}
-
-  has-proto@1.0.3: {}
-
-  has-symbols@1.0.3: {}
-
-  has-tostringtag@1.0.0:
+  has-proto@1.2.0:
     dependencies:
-      has-symbols: 1.0.3
+      dunder-proto: 1.0.1
+
+  has-symbols@1.1.0: {}
 
   has-tostringtag@1.0.2:
     dependencies:
-      has-symbols: 1.0.3
+      has-symbols: 1.1.0
 
   has-unicode@2.0.1: {}
 
-  has@1.0.3:
-    dependencies:
-      function-bind: 1.1.2
+  has@1.0.4: {}
 
   hasown@2.0.2:
     dependencies:
@@ -12619,20 +12054,20 @@ snapshots:
     dependencies:
       '@types/hast': 3.0.4
       devlop: 1.1.0
-      hast-util-from-parse5: 8.0.1
-      parse5: 7.2.0
+      hast-util-from-parse5: 8.0.2
+      parse5: 7.2.1
       vfile: 6.0.3
       vfile-message: 4.0.2
 
-  hast-util-from-parse5@8.0.1:
+  hast-util-from-parse5@8.0.2:
     dependencies:
       '@types/hast': 3.0.4
       '@types/unist': 3.0.3
       devlop: 1.1.0
-      hastscript: 8.0.0
+      hastscript: 9.0.0
       property-information: 6.5.0
       vfile: 6.0.3
-      vfile-location: 5.0.2
+      vfile-location: 5.0.3
       web-namespaces: 2.0.1
 
   hast-util-has-property@1.0.4: {}
@@ -12649,23 +12084,23 @@ snapshots:
     dependencies:
       '@types/hast': 3.0.4
 
-  hast-util-raw@9.0.1:
+  hast-util-raw@9.1.0:
     dependencies:
       '@types/hast': 3.0.4
       '@types/unist': 3.0.3
-      '@ungap/structured-clone': 1.2.0
-      hast-util-from-parse5: 8.0.1
+      '@ungap/structured-clone': 1.3.0
+      hast-util-from-parse5: 8.0.2
       hast-util-to-parse5: 8.0.0
       html-void-elements: 3.0.0
       mdast-util-to-hast: 13.2.0
-      parse5: 7.2.0
+      parse5: 7.2.1
       unist-util-position: 5.0.0
       unist-util-visit: 5.0.0
       vfile: 6.0.3
       web-namespaces: 2.0.1
       zwitch: 2.0.4
 
-  hast-util-to-estree@3.1.0:
+  hast-util-to-estree@3.1.1:
     dependencies:
       '@types/estree': 1.0.6
       '@types/estree-jsx': 1.0.5
@@ -12676,11 +12111,11 @@ snapshots:
       estree-util-is-identifier-name: 3.0.0
       hast-util-whitespace: 3.0.0
       mdast-util-mdx-expression: 2.0.1
-      mdast-util-mdx-jsx: 3.1.3
+      mdast-util-mdx-jsx: 3.2.0
       mdast-util-mdxjs-esm: 2.0.1
       property-information: 6.5.0
       space-separated-tokens: 2.0.2
-      style-to-object: 0.4.4
+      style-to-object: 1.0.8
       unist-util-position: 5.0.0
       zwitch: 2.0.4
     transitivePeerDependencies:
@@ -12710,7 +12145,7 @@ snapshots:
       estree-util-is-identifier-name: 3.0.0
       hast-util-whitespace: 3.0.0
       mdast-util-mdx-expression: 2.0.1
-      mdast-util-mdx-jsx: 3.1.3
+      mdast-util-mdx-jsx: 3.2.0
       mdast-util-mdxjs-esm: 2.0.1
       property-information: 6.5.0
       space-separated-tokens: 2.0.2
@@ -12730,7 +12165,7 @@ snapshots:
       web-namespaces: 2.0.1
       zwitch: 2.0.4
 
-  hast-util-to-string@3.0.0:
+  hast-util-to-string@3.0.1:
     dependencies:
       '@types/hast': 3.0.4
 
@@ -12745,7 +12180,7 @@ snapshots:
     dependencies:
       '@types/hast': 3.0.4
 
-  hastscript@8.0.0:
+  hastscript@9.0.0:
     dependencies:
       '@types/hast': 3.0.4
       comma-separated-tokens: 2.0.3
@@ -12775,33 +12210,34 @@ snapshots:
 
   http-proxy-agent@7.0.2:
     dependencies:
-      agent-base: 7.1.1
-      debug: 4.3.7
+      agent-base: 7.1.3
+      debug: 4.4.0
     transitivePeerDependencies:
       - supports-color
 
   https-proxy-agent@5.0.1:
     dependencies:
       agent-base: 6.0.2
-      debug: 4.3.7
+      debug: 4.4.0
     transitivePeerDependencies:
       - supports-color
 
-  https-proxy-agent@7.0.5:
+  https-proxy-agent@7.0.6:
     dependencies:
-      agent-base: 7.1.1
-      debug: 4.3.7
+      agent-base: 7.1.3
+      debug: 4.4.0
     transitivePeerDependencies:
       - supports-color
 
   human-signals@2.1.0: {}
 
-  hydra-synth@1.3.29:
+  hydra-synth@1.3.29(rollup@4.32.0):
     dependencies:
-      meyda: 5.6.2
+      meyda: 5.6.3(rollup@4.32.0)
       raf-loop: 1.1.3
       regl: 1.7.0
     transitivePeerDependencies:
+      - rollup
       - supports-color
 
   iconv-lite@0.4.24:
@@ -12821,7 +12257,7 @@ snapshots:
     dependencies:
       minimatch: 9.0.5
 
-  ignore@5.2.4: {}
+  ignore@5.3.2: {}
 
   import-fresh@3.3.0:
     dependencies:
@@ -12862,11 +12298,9 @@ snapshots:
     transitivePeerDependencies:
       - bluebird
 
-  inline-style-parser@0.1.1: {}
-
   inline-style-parser@0.2.4: {}
 
-  inquirer@8.2.5:
+  inquirer@8.2.6:
     dependencies:
       ansi-escapes: 4.3.2
       chalk: 4.1.2
@@ -12878,23 +12312,17 @@ snapshots:
       mute-stream: 0.0.8
       ora: 5.4.1
       run-async: 2.4.1
-      rxjs: 7.8.0
+      rxjs: 7.8.1
       string-width: 4.2.3
       strip-ansi: 6.0.1
       through: 2.3.8
-      wrap-ansi: 7.0.0
+      wrap-ansi: 6.2.0
 
-  internal-slot@1.0.6:
-    dependencies:
-      get-intrinsic: 1.2.2
-      hasown: 2.0.2
-      side-channel: 1.0.4
-
-  internal-slot@1.0.7:
+  internal-slot@1.1.0:
     dependencies:
       es-errors: 1.3.0
       hasown: 2.0.2
-      side-channel: 1.0.6
+      side-channel: 1.1.0
 
   into-stream@6.0.0:
     dependencies:
@@ -12915,32 +12343,35 @@ snapshots:
       is-alphabetical: 2.0.1
       is-decimal: 2.0.1
 
-  is-array-buffer@3.0.2:
+  is-array-buffer@3.0.5:
     dependencies:
-      call-bind: 1.0.5
-      get-intrinsic: 1.2.2
-      is-typed-array: 1.1.12
-
-  is-array-buffer@3.0.4:
-    dependencies:
-      call-bind: 1.0.7
-      get-intrinsic: 1.2.4
+      call-bind: 1.0.8
+      call-bound: 1.0.3
+      get-intrinsic: 1.2.7
 
   is-arrayish@0.2.1: {}
 
   is-arrayish@0.3.2: {}
 
-  is-bigint@1.0.4:
+  is-async-function@2.1.1:
     dependencies:
-      has-bigints: 1.0.2
+      async-function: 1.0.0
+      call-bound: 1.0.3
+      get-proto: 1.0.1
+      has-tostringtag: 1.0.2
+      safe-regex-test: 1.1.0
+
+  is-bigint@1.1.0:
+    dependencies:
+      has-bigints: 1.1.0
 
   is-binary-path@2.1.0:
     dependencies:
-      binary-extensions: 2.2.0
+      binary-extensions: 2.3.0
 
-  is-boolean-object@1.1.2:
+  is-boolean-object@1.2.1:
     dependencies:
-      call-bind: 1.0.5
+      call-bound: 1.0.3
       has-tostringtag: 1.0.2
 
   is-callable@1.2.7: {}
@@ -12949,20 +12380,23 @@ snapshots:
     dependencies:
       ci-info: 3.9.0
 
-  is-core-module@2.15.1:
+  is-core-module@2.16.1:
     dependencies:
       hasown: 2.0.2
 
   is-core-module@2.9.0:
     dependencies:
-      has: 1.0.3
+      has: 1.0.4
 
-  is-data-view@1.0.1:
+  is-data-view@1.0.2:
     dependencies:
-      is-typed-array: 1.1.13
+      call-bound: 1.0.3
+      get-intrinsic: 1.2.7
+      is-typed-array: 1.1.15
 
-  is-date-object@1.0.5:
+  is-date-object@1.1.0:
     dependencies:
+      call-bound: 1.0.3
       has-tostringtag: 1.0.2
 
   is-decimal@2.0.1: {}
@@ -12973,10 +12407,21 @@ snapshots:
 
   is-extglob@2.1.1: {}
 
+  is-finalizationregistry@1.1.1:
+    dependencies:
+      call-bound: 1.0.3
+
   is-fullwidth-code-point@2.0.0: {}
 
   is-fullwidth-code-point@3.0.0: {}
 
+  is-generator-function@1.1.0:
+    dependencies:
+      call-bound: 1.0.3
+      get-proto: 1.0.1
+      has-tostringtag: 1.0.2
+      safe-regex-test: 1.1.0
+
   is-glob@4.0.3:
     dependencies:
       is-extglob: 2.1.1
@@ -12991,14 +12436,13 @@ snapshots:
 
   is-lambda@1.0.1: {}
 
+  is-map@2.0.3: {}
+
   is-module@1.0.0: {}
 
-  is-negative-zero@2.0.2: {}
-
-  is-negative-zero@2.0.3: {}
-
-  is-number-object@1.0.7:
+  is-number-object@1.1.1:
     dependencies:
+      call-bound: 1.0.3
       has-tostringtag: 1.0.2
 
   is-number@7.0.0: {}
@@ -13017,20 +12461,20 @@ snapshots:
 
   is-plain-object@5.0.0: {}
 
-  is-regex@1.1.4:
+  is-regex@1.2.1:
     dependencies:
-      call-bind: 1.0.5
-      has-tostringtag: 1.0.0
+      call-bound: 1.0.3
+      gopd: 1.2.0
+      has-tostringtag: 1.0.2
+      hasown: 2.0.2
 
   is-regexp@1.0.0: {}
 
-  is-shared-array-buffer@1.0.2:
-    dependencies:
-      call-bind: 1.0.5
+  is-set@2.0.3: {}
 
-  is-shared-array-buffer@1.0.3:
+  is-shared-array-buffer@1.0.4:
     dependencies:
-      call-bind: 1.0.7
+      call-bound: 1.0.3
 
   is-ssh@1.4.0:
     dependencies:
@@ -13040,25 +12484,24 @@ snapshots:
 
   is-stream@2.0.1: {}
 
-  is-string@1.0.7:
+  is-string@1.1.1:
     dependencies:
+      call-bound: 1.0.3
       has-tostringtag: 1.0.2
 
-  is-symbol@1.0.4:
+  is-symbol@1.1.1:
     dependencies:
-      has-symbols: 1.0.3
+      call-bound: 1.0.3
+      has-symbols: 1.1.0
+      safe-regex-test: 1.1.0
 
   is-text-path@1.0.1:
     dependencies:
       text-extensions: 1.9.0
 
-  is-typed-array@1.1.12:
+  is-typed-array@1.1.15:
     dependencies:
-      which-typed-array: 1.1.13
-
-  is-typed-array@1.1.13:
-    dependencies:
-      which-typed-array: 1.1.15
+      which-typed-array: 1.1.18
 
   is-unicode-supported@0.1.0: {}
 
@@ -13066,9 +12509,16 @@ snapshots:
 
   is-url@1.2.4: {}
 
-  is-weakref@1.0.2:
+  is-weakmap@2.0.2: {}
+
+  is-weakref@1.1.0:
     dependencies:
-      call-bind: 1.0.5
+      call-bound: 1.0.3
+
+  is-weakset@2.0.4:
+    dependencies:
+      call-bound: 1.0.3
+      get-intrinsic: 1.2.7
 
   is-wsl@2.2.0:
     dependencies:
@@ -13099,7 +12549,7 @@ snapshots:
   jake@10.9.2:
     dependencies:
       async: 3.2.6
-      chalk: 4.1.2
+      chalk: 4.1.0
       filelist: 1.0.4
       minimatch: 3.1.2
 
@@ -13107,7 +12557,7 @@ snapshots:
 
   jest-diff@29.7.0:
     dependencies:
-      chalk: 4.1.2
+      chalk: 4.1.0
       diff-sequences: 29.6.3
       jest-get-type: 29.6.3
       pretty-format: 29.7.0
@@ -13116,7 +12566,7 @@ snapshots:
 
   jest-worker@26.6.2:
     dependencies:
-      '@types/node': 22.12.0
+      '@types/node': 22.10.10
       merge-stream: 2.0.0
       supports-color: 7.2.0
 
@@ -13145,8 +12595,8 @@ snapshots:
 
   jsdoc@4.0.4:
     dependencies:
-      '@babel/parser': 7.25.8
-      '@jsdoc/salty': 0.2.3
+      '@babel/parser': 7.26.7
+      '@jsdoc/salty': 0.2.9
       '@types/markdown-it': 14.1.2
       bluebird: 3.7.2
       catharsis: 0.9.0
@@ -13159,12 +12609,14 @@ snapshots:
       mkdirp: 1.0.4
       requizzle: 0.2.4
       strip-json-comments: 3.1.1
-      underscore: 1.13.6
+      underscore: 1.13.7
 
   jsesc@2.5.2: {}
 
   jsesc@3.0.2: {}
 
+  jsesc@3.1.0: {}
+
   json-buffer@3.0.1: {}
 
   json-parse-better-errors@1.0.2: {}
@@ -13195,7 +12647,7 @@ snapshots:
 
   jsonfile@6.1.0:
     dependencies:
-      universalify: 2.0.0
+      universalify: 2.0.1
     optionalDependencies:
       graceful-fs: 4.2.11
 
@@ -13207,7 +12659,7 @@ snapshots:
 
   just-diff@6.0.2: {}
 
-  jzz@1.8.6:
+  jzz@1.8.8:
     dependencies:
       '@types/webmidi': 2.1.0
       jazz-midi: 1.7.9
@@ -13228,11 +12680,11 @@ snapshots:
 
   lerna@8.1.9(encoding@0.1.13):
     dependencies:
-      '@lerna/create': 8.1.9(encoding@0.1.13)(typescript@5.6.3)
+      '@lerna/create': 8.1.9(encoding@0.1.13)(typescript@5.7.3)
       '@npmcli/arborist': 7.5.4
       '@npmcli/package-json': 5.2.0
       '@npmcli/run-script': 8.1.0
-      '@nx/devkit': 17.2.8(nx@17.2.8)
+      '@nx/devkit': 20.3.3(nx@20.3.3)
       '@octokit/plugin-enterprise-rest': 6.0.1
       '@octokit/rest': 19.0.11(encoding@0.1.13)
       aproba: 2.0.0
@@ -13246,11 +12698,11 @@ snapshots:
       conventional-changelog-angular: 7.0.0
       conventional-changelog-core: 5.0.1
       conventional-recommended-bump: 7.0.1
-      cosmiconfig: 9.0.0(typescript@5.6.3)
+      cosmiconfig: 9.0.0(typescript@5.7.3)
       dedent: 1.5.3
       envinfo: 7.13.0
       execa: 5.0.0
-      fs-extra: 11.2.0
+      fs-extra: 11.3.0
       get-port: 5.1.1
       get-stream: 6.0.0
       git-url-parse: 14.0.0
@@ -13261,7 +12713,7 @@ snapshots:
       import-local: 3.1.0
       ini: 1.3.8
       init-package-json: 6.0.3
-      inquirer: 8.2.5
+      inquirer: 8.2.6
       is-ci: 3.0.1
       is-stream: 2.0.0
       jest-diff: 29.7.0
@@ -13277,7 +12729,7 @@ snapshots:
       npm-package-arg: 11.0.2
       npm-packlist: 8.0.2
       npm-registry-fetch: 17.1.0
-      nx: 17.2.8
+      nx: 20.3.3
       p-map: 4.0.0
       p-map-series: 2.1.0
       p-pipe: 3.1.0
@@ -13299,7 +12751,7 @@ snapshots:
       strong-log-transformer: 2.1.0
       tar: 6.2.1
       temp-dir: 1.0.0
-      typescript: 5.6.3
+      typescript: 5.7.3
       upath: 2.0.1
       uuid: 10.0.0
       validate-npm-package-license: 3.0.4
@@ -13334,7 +12786,7 @@ snapshots:
 
   libnpmpublish@9.0.9:
     dependencies:
-      ci-info: 4.0.0
+      ci-info: 4.1.0
       normalize-package-data: 6.0.2
       npm-package-arg: 11.0.2
       npm-registry-fetch: 17.1.0
@@ -13390,8 +12842,6 @@ snapshots:
       lightningcss-win32-arm64-msvc: 1.29.1
       lightningcss-win32-x64-msvc: 1.29.1
 
-  lilconfig@3.0.0: {}
-
   lilconfig@3.1.3: {}
 
   lines-and-columns@1.2.4: {}
@@ -13475,18 +12925,14 @@ snapshots:
     dependencies:
       sourcemap-codec: 1.4.8
 
-  magic-string@0.30.12:
-    dependencies:
-      '@jridgewell/sourcemap-codec': 1.5.0
-
   magic-string@0.30.17:
     dependencies:
       '@jridgewell/sourcemap-codec': 1.5.0
 
   magicast@0.3.5:
     dependencies:
-      '@babel/parser': 7.25.8
-      '@babel/types': 7.25.8
+      '@babel/parser': 7.26.7
+      '@babel/types': 7.26.7
       source-map-js: 1.2.1
 
   make-dir@2.1.0:
@@ -13508,7 +12954,7 @@ snapshots:
       minipass-fetch: 3.0.5
       minipass-flush: 1.0.5
       minipass-pipeline: 1.2.4
-      negotiator: 0.6.3
+      negotiator: 0.6.4
       proc-log: 4.2.0
       promise-retry: 2.0.1
       ssri: 10.0.6
@@ -13535,63 +12981,65 @@ snapshots:
       punycode.js: 2.3.1
       uc.micro: 2.1.0
 
-  markdown-table@3.0.3: {}
+  markdown-table@3.0.4: {}
 
   marked@4.3.0: {}
 
+  math-intrinsics@1.1.0: {}
+
   mdast-util-definitions@6.0.0:
     dependencies:
       '@types/mdast': 4.0.4
       '@types/unist': 3.0.3
       unist-util-visit: 5.0.0
 
-  mdast-util-find-and-replace@3.0.1:
+  mdast-util-find-and-replace@3.0.2:
     dependencies:
       '@types/mdast': 4.0.4
       escape-string-regexp: 5.0.0
       unist-util-is: 6.0.0
       unist-util-visit-parents: 6.0.1
 
-  mdast-util-from-markdown@2.0.1:
+  mdast-util-from-markdown@2.0.2:
     dependencies:
       '@types/mdast': 4.0.4
       '@types/unist': 3.0.3
       decode-named-character-reference: 1.0.2
       devlop: 1.1.0
       mdast-util-to-string: 4.0.0
-      micromark: 4.0.0
-      micromark-util-decode-numeric-character-reference: 2.0.1
-      micromark-util-decode-string: 2.0.0
-      micromark-util-normalize-identifier: 2.0.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark: 4.0.1
+      micromark-util-decode-numeric-character-reference: 2.0.2
+      micromark-util-decode-string: 2.0.1
+      micromark-util-normalize-identifier: 2.0.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
       unist-util-stringify-position: 4.0.0
     transitivePeerDependencies:
       - supports-color
 
-  mdast-util-gfm-autolink-literal@2.0.0:
+  mdast-util-gfm-autolink-literal@2.0.1:
     dependencies:
       '@types/mdast': 4.0.4
       ccount: 2.0.1
       devlop: 1.1.0
-      mdast-util-find-and-replace: 3.0.1
-      micromark-util-character: 2.1.0
+      mdast-util-find-and-replace: 3.0.2
+      micromark-util-character: 2.1.1
 
   mdast-util-gfm-footnote@2.0.0:
     dependencies:
       '@types/mdast': 4.0.4
       devlop: 1.1.0
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-to-markdown: 2.1.0
-      micromark-util-normalize-identifier: 2.0.0
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-to-markdown: 2.1.2
+      micromark-util-normalize-identifier: 2.0.1
     transitivePeerDependencies:
       - supports-color
 
   mdast-util-gfm-strikethrough@2.0.0:
     dependencies:
       '@types/mdast': 4.0.4
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-to-markdown: 2.1.0
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-to-markdown: 2.1.2
     transitivePeerDependencies:
       - supports-color
 
@@ -13599,9 +13047,9 @@ snapshots:
     dependencies:
       '@types/mdast': 4.0.4
       devlop: 1.1.0
-      markdown-table: 3.0.3
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-to-markdown: 2.1.0
+      markdown-table: 3.0.4
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-to-markdown: 2.1.2
     transitivePeerDependencies:
       - supports-color
 
@@ -13609,20 +13057,20 @@ snapshots:
     dependencies:
       '@types/mdast': 4.0.4
       devlop: 1.1.0
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-to-markdown: 2.1.0
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-to-markdown: 2.1.2
     transitivePeerDependencies:
       - supports-color
 
   mdast-util-gfm@3.0.0:
     dependencies:
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-gfm-autolink-literal: 2.0.0
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-gfm-autolink-literal: 2.0.1
       mdast-util-gfm-footnote: 2.0.0
       mdast-util-gfm-strikethrough: 2.0.0
       mdast-util-gfm-table: 2.0.0
       mdast-util-gfm-task-list-item: 2.0.0
-      mdast-util-to-markdown: 2.1.0
+      mdast-util-to-markdown: 2.1.2
     transitivePeerDependencies:
       - supports-color
 
@@ -13632,12 +13080,12 @@ snapshots:
       '@types/hast': 3.0.4
       '@types/mdast': 4.0.4
       devlop: 1.1.0
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-to-markdown: 2.1.0
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-to-markdown: 2.1.2
     transitivePeerDependencies:
       - supports-color
 
-  mdast-util-mdx-jsx@3.1.3:
+  mdast-util-mdx-jsx@3.2.0:
     dependencies:
       '@types/estree-jsx': 1.0.5
       '@types/hast': 3.0.4
@@ -13645,9 +13093,9 @@ snapshots:
       '@types/unist': 3.0.3
       ccount: 2.0.1
       devlop: 1.1.0
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-to-markdown: 2.1.0
-      parse-entities: 4.0.1
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-to-markdown: 2.1.2
+      parse-entities: 4.0.2
       stringify-entities: 4.0.4
       unist-util-stringify-position: 4.0.0
       vfile-message: 4.0.2
@@ -13656,11 +13104,11 @@ snapshots:
 
   mdast-util-mdx@3.0.0:
     dependencies:
-      mdast-util-from-markdown: 2.0.1
+      mdast-util-from-markdown: 2.0.2
       mdast-util-mdx-expression: 2.0.1
-      mdast-util-mdx-jsx: 3.1.3
+      mdast-util-mdx-jsx: 3.2.0
       mdast-util-mdxjs-esm: 2.0.1
-      mdast-util-to-markdown: 2.1.0
+      mdast-util-to-markdown: 2.1.2
     transitivePeerDependencies:
       - supports-color
 
@@ -13670,12 +13118,12 @@ snapshots:
       '@types/hast': 3.0.4
       '@types/mdast': 4.0.4
       devlop: 1.1.0
-      mdast-util-from-markdown: 2.0.1
-      mdast-util-to-markdown: 2.1.0
+      mdast-util-from-markdown: 2.0.2
+      mdast-util-to-markdown: 2.1.2
     transitivePeerDependencies:
       - supports-color
 
-  mdast-util-phrasing@4.0.0:
+  mdast-util-phrasing@4.1.0:
     dependencies:
       '@types/mdast': 4.0.4
       unist-util-is: 6.0.0
@@ -13684,34 +13132,35 @@ snapshots:
     dependencies:
       '@types/hast': 3.0.4
       '@types/mdast': 4.0.4
-      '@ungap/structured-clone': 1.2.0
+      '@ungap/structured-clone': 1.3.0
       devlop: 1.1.0
-      micromark-util-sanitize-uri: 2.0.0
+      micromark-util-sanitize-uri: 2.0.1
       trim-lines: 3.0.1
       unist-util-position: 5.0.0
       unist-util-visit: 5.0.0
       vfile: 6.0.3
 
-  mdast-util-to-markdown@2.1.0:
+  mdast-util-to-markdown@2.1.2:
     dependencies:
       '@types/mdast': 4.0.4
       '@types/unist': 3.0.3
       longest-streak: 3.1.0
-      mdast-util-phrasing: 4.0.0
+      mdast-util-phrasing: 4.1.0
       mdast-util-to-string: 4.0.0
-      micromark-util-decode-string: 2.0.0
+      micromark-util-classify-character: 2.0.1
+      micromark-util-decode-string: 2.0.1
       unist-util-visit: 5.0.0
       zwitch: 2.0.4
 
   mdast-util-to-string@4.0.0:
     dependencies:
-      '@types/mdast': 4.0.2
+      '@types/mdast': 4.0.4
 
-  mdast-util-toc@7.0.0:
+  mdast-util-toc@7.1.0:
     dependencies:
-      '@types/mdast': 4.0.2
-      '@types/ungap__structured-clone': 0.3.3
-      '@ungap/structured-clone': 1.2.0
+      '@types/mdast': 4.0.4
+      '@types/ungap__structured-clone': 1.2.0
+      '@ungap/structured-clone': 1.3.0
       github-slugger: 2.0.0
       mdast-util-to-string: 4.0.0
       unist-util-is: 6.0.0
@@ -13721,7 +13170,7 @@ snapshots:
 
   meow@8.1.2:
     dependencies:
-      '@types/minimist': 1.2.2
+      '@types/minimist': 1.2.5
       camelcase-keys: 6.2.2
       decamelize-keys: 1.1.1
       hard-rejection: 2.1.0
@@ -13737,102 +13186,104 @@ snapshots:
 
   merge2@1.4.1: {}
 
-  meyda@5.6.2:
+  meyda@5.6.3(rollup@4.32.0):
     dependencies:
+      '@rollup/plugin-node-resolve': 15.3.1(rollup@4.32.0)
       dct: 0.1.0
       fftjs: 0.0.4
       node-getopt: 0.3.2
       wav: 1.0.2
     transitivePeerDependencies:
+      - rollup
       - supports-color
 
-  micromark-core-commonmark@2.0.1:
+  micromark-core-commonmark@2.0.2:
     dependencies:
       decode-named-character-reference: 1.0.2
       devlop: 1.1.0
-      micromark-factory-destination: 2.0.0
-      micromark-factory-label: 2.0.0
-      micromark-factory-space: 2.0.0
-      micromark-factory-title: 2.0.0
-      micromark-factory-whitespace: 2.0.0
-      micromark-util-character: 2.1.0
-      micromark-util-chunked: 2.0.0
-      micromark-util-classify-character: 2.0.0
-      micromark-util-html-tag-name: 2.0.0
-      micromark-util-normalize-identifier: 2.0.0
-      micromark-util-resolve-all: 2.0.0
-      micromark-util-subtokenize: 2.0.1
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-factory-destination: 2.0.1
+      micromark-factory-label: 2.0.1
+      micromark-factory-space: 2.0.1
+      micromark-factory-title: 2.0.1
+      micromark-factory-whitespace: 2.0.1
+      micromark-util-character: 2.1.1
+      micromark-util-chunked: 2.0.1
+      micromark-util-classify-character: 2.0.1
+      micromark-util-html-tag-name: 2.0.1
+      micromark-util-normalize-identifier: 2.0.1
+      micromark-util-resolve-all: 2.0.1
+      micromark-util-subtokenize: 2.0.4
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-extension-gfm-autolink-literal@2.0.0:
+  micromark-extension-gfm-autolink-literal@2.1.0:
     dependencies:
-      micromark-util-character: 2.1.0
-      micromark-util-sanitize-uri: 2.0.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-character: 2.1.1
+      micromark-util-sanitize-uri: 2.0.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-extension-gfm-footnote@2.0.0:
+  micromark-extension-gfm-footnote@2.1.0:
     dependencies:
       devlop: 1.1.0
-      micromark-core-commonmark: 2.0.1
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
-      micromark-util-normalize-identifier: 2.0.0
-      micromark-util-sanitize-uri: 2.0.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-core-commonmark: 2.0.2
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
+      micromark-util-normalize-identifier: 2.0.1
+      micromark-util-sanitize-uri: 2.0.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-extension-gfm-strikethrough@2.0.0:
+  micromark-extension-gfm-strikethrough@2.1.0:
     dependencies:
       devlop: 1.1.0
-      micromark-util-chunked: 2.0.0
-      micromark-util-classify-character: 2.0.0
-      micromark-util-resolve-all: 2.0.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-chunked: 2.0.1
+      micromark-util-classify-character: 2.0.1
+      micromark-util-resolve-all: 2.0.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-extension-gfm-table@2.0.0:
+  micromark-extension-gfm-table@2.1.1:
     dependencies:
       devlop: 1.1.0
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
   micromark-extension-gfm-tagfilter@2.0.0:
     dependencies:
-      micromark-util-types: 2.0.0
+      micromark-util-types: 2.0.1
 
-  micromark-extension-gfm-task-list-item@2.0.1:
+  micromark-extension-gfm-task-list-item@2.1.0:
     dependencies:
       devlop: 1.1.0
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
   micromark-extension-gfm@3.0.0:
     dependencies:
-      micromark-extension-gfm-autolink-literal: 2.0.0
-      micromark-extension-gfm-footnote: 2.0.0
-      micromark-extension-gfm-strikethrough: 2.0.0
-      micromark-extension-gfm-table: 2.0.0
+      micromark-extension-gfm-autolink-literal: 2.1.0
+      micromark-extension-gfm-footnote: 2.1.0
+      micromark-extension-gfm-strikethrough: 2.1.0
+      micromark-extension-gfm-table: 2.1.1
       micromark-extension-gfm-tagfilter: 2.0.0
-      micromark-extension-gfm-task-list-item: 2.0.1
-      micromark-util-combine-extensions: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-extension-gfm-task-list-item: 2.1.0
+      micromark-util-combine-extensions: 2.0.1
+      micromark-util-types: 2.0.1
 
   micromark-extension-mdx-expression@3.0.0:
     dependencies:
       '@types/estree': 1.0.6
       devlop: 1.1.0
       micromark-factory-mdx-expression: 2.0.2
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
       micromark-util-events-to-acorn: 2.0.2
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
   micromark-extension-mdx-jsx@3.0.1:
     dependencies:
@@ -13841,26 +13292,26 @@ snapshots:
       devlop: 1.1.0
       estree-util-is-identifier-name: 3.0.0
       micromark-factory-mdx-expression: 2.0.2
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
       micromark-util-events-to-acorn: 2.0.2
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
       vfile-message: 4.0.2
 
   micromark-extension-mdx-md@2.0.0:
     dependencies:
-      micromark-util-types: 2.0.0
+      micromark-util-types: 2.0.1
 
   micromark-extension-mdxjs-esm@3.0.0:
     dependencies:
       '@types/estree': 1.0.6
       devlop: 1.1.0
-      micromark-core-commonmark: 2.0.1
-      micromark-util-character: 2.1.0
+      micromark-core-commonmark: 2.0.2
+      micromark-util-character: 2.1.1
       micromark-util-events-to-acorn: 2.0.2
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
       unist-util-position-from-estree: 2.0.0
       vfile-message: 4.0.2
 
@@ -13872,85 +13323,85 @@ snapshots:
       micromark-extension-mdx-jsx: 3.0.1
       micromark-extension-mdx-md: 2.0.0
       micromark-extension-mdxjs-esm: 3.0.0
-      micromark-util-combine-extensions: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-combine-extensions: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-factory-destination@2.0.0:
+  micromark-factory-destination@2.0.1:
     dependencies:
-      micromark-util-character: 2.1.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-character: 2.1.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-factory-label@2.0.0:
+  micromark-factory-label@2.0.1:
     dependencies:
       devlop: 1.1.0
-      micromark-util-character: 2.1.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-character: 2.1.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
   micromark-factory-mdx-expression@2.0.2:
     dependencies:
       '@types/estree': 1.0.6
       devlop: 1.1.0
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
       micromark-util-events-to-acorn: 2.0.2
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
       unist-util-position-from-estree: 2.0.0
       vfile-message: 4.0.2
 
-  micromark-factory-space@2.0.0:
+  micromark-factory-space@2.0.1:
     dependencies:
-      micromark-util-character: 2.1.0
-      micromark-util-types: 2.0.0
+      micromark-util-character: 2.1.1
+      micromark-util-types: 2.0.1
 
-  micromark-factory-title@2.0.0:
+  micromark-factory-title@2.0.1:
     dependencies:
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-factory-whitespace@2.0.0:
+  micromark-factory-whitespace@2.0.1:
     dependencies:
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-util-character@2.1.0:
+  micromark-util-character@2.1.1:
     dependencies:
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-util-chunked@2.0.0:
+  micromark-util-chunked@2.0.1:
     dependencies:
-      micromark-util-symbol: 2.0.0
+      micromark-util-symbol: 2.0.1
 
-  micromark-util-classify-character@2.0.0:
+  micromark-util-classify-character@2.0.1:
     dependencies:
-      micromark-util-character: 2.1.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-character: 2.1.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-util-combine-extensions@2.0.0:
+  micromark-util-combine-extensions@2.0.1:
     dependencies:
-      micromark-util-chunked: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-chunked: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-util-decode-numeric-character-reference@2.0.1:
+  micromark-util-decode-numeric-character-reference@2.0.2:
     dependencies:
-      micromark-util-symbol: 2.0.0
+      micromark-util-symbol: 2.0.1
 
-  micromark-util-decode-string@2.0.0:
+  micromark-util-decode-string@2.0.1:
     dependencies:
       decode-named-character-reference: 1.0.2
-      micromark-util-character: 2.1.0
-      micromark-util-decode-numeric-character-reference: 2.0.1
-      micromark-util-symbol: 2.0.0
+      micromark-util-character: 2.1.1
+      micromark-util-decode-numeric-character-reference: 2.0.2
+      micromark-util-symbol: 2.0.1
 
-  micromark-util-encode@2.0.0: {}
+  micromark-util-encode@2.0.1: {}
 
   micromark-util-events-to-acorn@2.0.2:
     dependencies:
@@ -13959,56 +13410,56 @@ snapshots:
       '@types/unist': 3.0.3
       devlop: 1.1.0
       estree-util-visit: 2.0.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
       vfile-message: 4.0.2
 
-  micromark-util-html-tag-name@2.0.0: {}
+  micromark-util-html-tag-name@2.0.1: {}
 
-  micromark-util-normalize-identifier@2.0.0:
+  micromark-util-normalize-identifier@2.0.1:
     dependencies:
-      micromark-util-symbol: 2.0.0
+      micromark-util-symbol: 2.0.1
 
-  micromark-util-resolve-all@2.0.0:
+  micromark-util-resolve-all@2.0.1:
     dependencies:
-      micromark-util-types: 2.0.0
+      micromark-util-types: 2.0.1
 
-  micromark-util-sanitize-uri@2.0.0:
+  micromark-util-sanitize-uri@2.0.1:
     dependencies:
-      micromark-util-character: 2.1.0
-      micromark-util-encode: 2.0.0
-      micromark-util-symbol: 2.0.0
+      micromark-util-character: 2.1.1
+      micromark-util-encode: 2.0.1
+      micromark-util-symbol: 2.0.1
 
-  micromark-util-subtokenize@2.0.1:
+  micromark-util-subtokenize@2.0.4:
     dependencies:
       devlop: 1.1.0
-      micromark-util-chunked: 2.0.0
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-util-chunked: 2.0.1
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
 
-  micromark-util-symbol@2.0.0: {}
+  micromark-util-symbol@2.0.1: {}
 
-  micromark-util-types@2.0.0: {}
+  micromark-util-types@2.0.1: {}
 
-  micromark@4.0.0:
+  micromark@4.0.1:
     dependencies:
-      '@types/debug': 4.1.7
-      debug: 4.3.7
+      '@types/debug': 4.1.12
+      debug: 4.4.0
       decode-named-character-reference: 1.0.2
       devlop: 1.1.0
-      micromark-core-commonmark: 2.0.1
-      micromark-factory-space: 2.0.0
-      micromark-util-character: 2.1.0
-      micromark-util-chunked: 2.0.0
-      micromark-util-combine-extensions: 2.0.0
-      micromark-util-decode-numeric-character-reference: 2.0.1
-      micromark-util-encode: 2.0.0
-      micromark-util-normalize-identifier: 2.0.0
-      micromark-util-resolve-all: 2.0.0
-      micromark-util-sanitize-uri: 2.0.0
-      micromark-util-subtokenize: 2.0.1
-      micromark-util-symbol: 2.0.0
-      micromark-util-types: 2.0.0
+      micromark-core-commonmark: 2.0.2
+      micromark-factory-space: 2.0.1
+      micromark-util-character: 2.1.1
+      micromark-util-chunked: 2.0.1
+      micromark-util-combine-extensions: 2.0.1
+      micromark-util-decode-numeric-character-reference: 2.0.2
+      micromark-util-encode: 2.0.1
+      micromark-util-normalize-identifier: 2.0.1
+      micromark-util-resolve-all: 2.0.1
+      micromark-util-sanitize-uri: 2.0.1
+      micromark-util-subtokenize: 2.0.4
+      micromark-util-symbol: 2.0.1
+      micromark-util-types: 2.0.1
     transitivePeerDependencies:
       - supports-color
 
@@ -14049,6 +13500,10 @@ snapshots:
     dependencies:
       brace-expansion: 2.0.1
 
+  minimatch@9.0.3:
+    dependencies:
+      brace-expansion: 2.0.1
+
   minimatch@9.0.5:
     dependencies:
       brace-expansion: 2.0.1
@@ -14059,8 +13514,6 @@ snapshots:
       is-plain-obj: 1.1.0
       kind-of: 6.0.3
 
-  minimist@1.2.7: {}
-
   minimist@1.2.8: {}
 
   minipass-collect@2.0.1:
@@ -14111,7 +13564,7 @@ snapshots:
   module-definition@6.0.0:
     dependencies:
       ast-module-types: 6.0.0
-      node-source-walk: 7.0.1
+      node-source-walk: 7.0.0
 
   module-lookup-amd@9.0.2:
     dependencies:
@@ -14132,12 +13585,12 @@ snapshots:
       array-differ: 3.0.0
       array-union: 2.1.0
       arrify: 2.0.1
-      minimatch: 3.1.2
+      minimatch: 3.0.5
 
   multistream@4.1.0:
     dependencies:
       once: 1.4.0
-      readable-stream: 3.6.0
+      readable-stream: 3.6.2
 
   mute-stream@0.0.8: {}
 
@@ -14149,8 +13602,6 @@ snapshots:
       object-assign: 4.1.1
       thenify-all: 1.6.0
 
-  nanoid@3.3.7: {}
-
   nanoid@3.3.8: {}
 
   nanoid@5.0.9: {}
@@ -14161,7 +13612,7 @@ snapshots:
 
   natural-compare@1.4.0: {}
 
-  negotiator@0.6.3: {}
+  negotiator@0.6.4: {}
 
   neo-async@2.6.2: {}
 
@@ -14171,7 +13622,7 @@ snapshots:
     dependencies:
       '@types/nlcst': 2.0.3
 
-  node-abi@3.40.0:
+  node-abi@3.73.0:
     dependencies:
       semver: 7.6.3
 
@@ -14187,7 +13638,7 @@ snapshots:
     optionalDependencies:
       encoding: 0.1.13
 
-  node-fetch@2.6.8(encoding@0.1.13):
+  node-fetch@2.7.0(encoding@0.1.13):
     dependencies:
       whatwg-url: 5.0.0
     optionalDependencies:
@@ -14201,9 +13652,9 @@ snapshots:
 
   node-getopt@0.3.2: {}
 
-  node-gyp-build@4.8.2: {}
+  node-gyp-build@4.8.4: {}
 
-  node-gyp@10.2.0:
+  node-gyp@10.3.1:
     dependencies:
       env-paths: 2.2.1
       exponential-backoff: 3.1.1
@@ -14220,9 +13671,9 @@ snapshots:
 
   node-machine-id@1.1.12: {}
 
-  node-releases@2.0.18: {}
+  node-releases@2.0.19: {}
 
-  node-source-walk@7.0.1:
+  node-source-walk@7.0.0:
     dependencies:
       '@babel/parser': 7.26.7
 
@@ -14233,14 +13684,14 @@ snapshots:
   normalize-package-data@2.5.0:
     dependencies:
       hosted-git-info: 2.8.9
-      resolve: 1.22.8
+      resolve: 1.22.10
       semver: 5.7.2
       validate-npm-package-license: 3.0.4
 
   normalize-package-data@3.0.3:
     dependencies:
       hosted-git-info: 4.1.0
-      is-core-module: 2.15.1
+      is-core-module: 2.16.1
       semver: 7.6.3
       validate-npm-package-license: 3.0.4
 
@@ -14299,53 +13750,53 @@ snapshots:
     dependencies:
       path-key: 3.1.1
 
-  nx@17.2.8:
+  nx@20.3.3:
     dependencies:
-      '@nrwl/tao': 17.2.8
+      '@napi-rs/wasm-runtime': 0.2.4
       '@yarnpkg/lockfile': 1.1.0
-      '@yarnpkg/parsers': 3.0.0-rc.46
-      '@zkochan/js-yaml': 0.0.6
-      axios: 1.6.3
-      chalk: 4.1.2
+      '@yarnpkg/parsers': 3.0.2
+      '@zkochan/js-yaml': 0.0.7
+      axios: 1.7.9
+      chalk: 4.1.0
       cli-cursor: 3.1.0
       cli-spinners: 2.6.1
       cliui: 8.0.1
-      dotenv: 16.3.1
-      dotenv-expand: 10.0.0
+      dotenv: 16.4.7
+      dotenv-expand: 11.0.7
       enquirer: 2.3.6
       figures: 3.2.0
       flat: 5.0.2
-      fs-extra: 11.2.0
-      glob: 7.1.4
-      ignore: 5.2.4
+      front-matter: 4.0.2
+      ignore: 5.3.2
       jest-diff: 29.7.0
-      js-yaml: 4.1.0
       jsonc-parser: 3.2.0
       lines-and-columns: 2.0.3
-      minimatch: 3.0.5
+      minimatch: 9.0.3
       node-machine-id: 1.1.12
       npm-run-path: 4.0.1
-      open: 8.4.0
-      semver: 7.5.3
+      open: 8.4.2
+      ora: 5.3.0
+      resolve.exports: 2.0.3
+      semver: 7.6.3
       string-width: 4.2.3
-      strong-log-transformer: 2.1.0
       tar-stream: 2.2.0
-      tmp: 0.2.1
+      tmp: 0.2.3
       tsconfig-paths: 4.2.0
-      tslib: 2.8.0
+      tslib: 2.8.1
+      yaml: 2.7.0
       yargs: 17.7.2
       yargs-parser: 21.1.1
     optionalDependencies:
-      '@nx/nx-darwin-arm64': 17.2.8
-      '@nx/nx-darwin-x64': 17.2.8
-      '@nx/nx-freebsd-x64': 17.2.8
-      '@nx/nx-linux-arm-gnueabihf': 17.2.8
-      '@nx/nx-linux-arm64-gnu': 17.2.8
-      '@nx/nx-linux-arm64-musl': 17.2.8
-      '@nx/nx-linux-x64-gnu': 17.2.8
-      '@nx/nx-linux-x64-musl': 17.2.8
-      '@nx/nx-win32-arm64-msvc': 17.2.8
-      '@nx/nx-win32-x64-msvc': 17.2.8
+      '@nx/nx-darwin-arm64': 20.3.3
+      '@nx/nx-darwin-x64': 20.3.3
+      '@nx/nx-freebsd-x64': 20.3.3
+      '@nx/nx-linux-arm-gnueabihf': 20.3.3
+      '@nx/nx-linux-arm64-gnu': 20.3.3
+      '@nx/nx-linux-arm64-musl': 20.3.3
+      '@nx/nx-linux-x64-gnu': 20.3.3
+      '@nx/nx-linux-x64-musl': 20.3.3
+      '@nx/nx-win32-arm64-msvc': 20.3.3
+      '@nx/nx-win32-x64-msvc': 20.3.3
     transitivePeerDependencies:
       - debug
 
@@ -14353,44 +13804,38 @@ snapshots:
 
   object-hash@3.0.0: {}
 
-  object-inspect@1.13.1: {}
-
-  object-inspect@1.13.2: {}
+  object-inspect@1.13.3: {}
 
   object-keys@1.1.1: {}
 
-  object.assign@4.1.4:
+  object.assign@4.1.7:
     dependencies:
-      call-bind: 1.0.5
+      call-bind: 1.0.8
+      call-bound: 1.0.3
       define-properties: 1.2.1
-      has-symbols: 1.0.3
-      object-keys: 1.1.1
-
-  object.assign@4.1.5:
-    dependencies:
-      call-bind: 1.0.7
-      define-properties: 1.2.1
-      has-symbols: 1.0.3
+      es-object-atoms: 1.1.1
+      has-symbols: 1.1.0
       object-keys: 1.1.1
 
   object.fromentries@2.0.8:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-abstract: 1.23.3
-      es-object-atoms: 1.0.0
+      es-abstract: 1.23.9
+      es-object-atoms: 1.1.1
 
   object.groupby@1.0.3:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-abstract: 1.23.3
+      es-abstract: 1.23.9
 
-  object.values@1.2.0:
+  object.values@1.2.1:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
+      call-bound: 1.0.3
       define-properties: 1.2.1
-      es-object-atoms: 1.0.0
+      es-object-atoms: 1.1.1
 
   ofetch@1.4.1:
     dependencies:
@@ -14414,20 +13859,31 @@ snapshots:
       regex: 5.1.1
       regex-recursion: 5.1.1
 
-  open@8.4.0:
+  open@8.4.2:
     dependencies:
       define-lazy-prop: 2.0.0
       is-docker: 2.2.1
       is-wsl: 2.2.0
 
-  optionator@0.9.3:
+  optionator@0.9.4:
     dependencies:
-      '@aashutoshrathi/word-wrap': 1.2.6
       deep-is: 0.1.4
       fast-levenshtein: 2.0.6
       levn: 0.4.1
       prelude-ls: 1.2.1
       type-check: 0.4.0
+      word-wrap: 1.2.5
+
+  ora@5.3.0:
+    dependencies:
+      bl: 4.1.0
+      chalk: 4.1.0
+      cli-cursor: 3.1.0
+      cli-spinners: 2.6.1
+      is-interactive: 1.0.0
+      log-symbols: 4.1.0
+      strip-ansi: 6.0.1
+      wcwidth: 1.0.1
 
   ora@5.4.1:
     dependencies:
@@ -14450,6 +13906,12 @@ snapshots:
       - bufferutil
       - utf-8-validate
 
+  own-keys@1.0.1:
+    dependencies:
+      get-intrinsic: 1.2.7
+      object-keys: 1.1.1
+      safe-push-apply: 1.0.0
+
   p-finally@1.0.0: {}
 
   p-is-promise@3.0.0: {}
@@ -14495,10 +13957,10 @@ snapshots:
       eventemitter3: 4.0.7
       p-timeout: 3.2.0
 
-  p-queue@8.0.1:
+  p-queue@8.1.0:
     dependencies:
       eventemitter3: 5.0.1
-      p-timeout: 6.1.2
+      p-timeout: 6.1.4
 
   p-reduce@2.1.0: {}
 
@@ -14506,7 +13968,7 @@ snapshots:
     dependencies:
       p-finally: 1.0.0
 
-  p-timeout@6.1.2: {}
+  p-timeout@6.1.4: {}
 
   p-try@1.0.0: {}
 
@@ -14553,10 +14015,9 @@ snapshots:
       just-diff: 6.0.2
       just-diff-apply: 5.5.0
 
-  parse-entities@4.0.1:
+  parse-entities@4.0.2:
     dependencies:
       '@types/unist': 2.0.11
-      character-entities: 2.0.2
       character-entities-legacy: 3.0.0
       character-reference-invalid: 2.0.1
       decode-named-character-reference: 1.0.2
@@ -14571,7 +14032,7 @@ snapshots:
 
   parse-json@5.2.0:
     dependencies:
-      '@babel/code-frame': 7.25.7
+      '@babel/code-frame': 7.26.2
       error-ex: 1.3.2
       json-parse-even-better-errors: 2.3.1
       lines-and-columns: 1.2.4
@@ -14593,7 +14054,7 @@ snapshots:
     dependencies:
       parse-path: 7.0.0
 
-  parse5@7.2.0:
+  parse5@7.2.1:
     dependencies:
       entities: 4.5.0
 
@@ -14648,7 +14109,7 @@ snapshots:
 
   pify@5.0.0: {}
 
-  pirates@4.0.5: {}
+  pirates@4.0.6: {}
 
   pkg-dir@4.2.0:
     dependencies:
@@ -14659,10 +14120,10 @@ snapshots:
       chalk: 4.1.2
       fs-extra: 9.1.0
       https-proxy-agent: 5.0.1
-      node-fetch: 2.6.8(encoding@0.1.13)
+      node-fetch: 2.7.0(encoding@0.1.13)
       progress: 2.0.3
       semver: 7.6.3
-      tar-fs: 2.1.1
+      tar-fs: 2.1.2
       yargs: 16.2.0
     transitivePeerDependencies:
       - encoding
@@ -14678,11 +14139,11 @@ snapshots:
       globby: 11.1.0
       into-stream: 6.0.0
       is-core-module: 2.9.0
-      minimist: 1.2.7
+      minimist: 1.2.8
       multistream: 4.1.0
       pkg-fetch: 3.4.2(encoding@0.1.13)
       prebuild-install: 7.1.1
-      resolve: 1.22.2
+      resolve: 1.22.10
       stream-meter: 1.0.4
     transitivePeerDependencies:
       - encoding
@@ -14690,35 +14151,28 @@ snapshots:
 
   possible-typed-array-names@1.0.0: {}
 
-  postcss-import@15.1.0(postcss@8.4.47):
+  postcss-import@15.1.0(postcss@8.5.1):
     dependencies:
-      postcss: 8.4.47
+      postcss: 8.5.1
       postcss-value-parser: 4.2.0
       read-cache: 1.0.0
-      resolve: 1.22.8
+      resolve: 1.22.10
 
-  postcss-js@4.0.1(postcss@8.4.47):
+  postcss-js@4.0.1(postcss@8.5.1):
     dependencies:
       camelcase-css: 2.0.1
-      postcss: 8.4.47
-
-  postcss-load-config@4.0.2(postcss@8.4.47):
-    dependencies:
-      lilconfig: 3.0.0
-      yaml: 2.3.4
-    optionalDependencies:
-      postcss: 8.4.47
+      postcss: 8.5.1
 
   postcss-load-config@4.0.2(postcss@8.5.1):
     dependencies:
-      lilconfig: 3.0.0
-      yaml: 2.3.4
+      lilconfig: 3.1.3
+      yaml: 2.7.0
     optionalDependencies:
       postcss: 8.5.1
 
-  postcss-nested@6.2.0(postcss@8.4.47):
+  postcss-nested@6.2.0(postcss@8.5.1):
     dependencies:
-      postcss: 8.4.47
+      postcss: 8.5.1
       postcss-selector-parser: 6.1.2
 
   postcss-selector-parser@6.0.10:
@@ -14733,19 +14187,13 @@ snapshots:
 
   postcss-value-parser@4.2.0: {}
 
-  postcss-values-parser@6.0.2(postcss@8.4.47):
+  postcss-values-parser@6.0.2(postcss@8.5.1):
     dependencies:
       color-name: 1.1.4
       is-url-superb: 4.0.0
-      postcss: 8.4.47
+      postcss: 8.5.1
       quote-unquote: 1.0.0
 
-  postcss@8.4.47:
-    dependencies:
-      nanoid: 3.3.7
-      picocolors: 1.1.1
-      source-map-js: 1.2.1
-
   postcss@8.5.1:
     dependencies:
       nanoid: 3.3.8
@@ -14754,17 +14202,17 @@ snapshots:
 
   prebuild-install@7.1.1:
     dependencies:
-      detect-libc: 2.0.1
+      detect-libc: 2.0.3
       expand-template: 2.0.3
       github-from-package: 0.0.0
-      minimist: 1.2.7
+      minimist: 1.2.8
       mkdirp-classic: 0.5.3
       napi-build-utils: 1.0.2
-      node-abi: 3.40.0
-      pump: 3.0.0
+      node-abi: 3.73.0
+      pump: 3.0.2
       rc: 1.2.8
       simple-get: 4.0.1
-      tar-fs: 2.1.1
+      tar-fs: 2.1.2
       tunnel-agent: 0.6.0
 
   precinct@12.1.2:
@@ -14774,16 +14222,16 @@ snapshots:
       detective-amd: 6.0.0
       detective-cjs: 6.0.0
       detective-es6: 5.0.0
-      detective-postcss: 7.0.0(postcss@8.4.47)
+      detective-postcss: 7.0.0(postcss@8.5.1)
       detective-sass: 6.0.0
       detective-scss: 5.0.0
       detective-stylus: 5.0.0
-      detective-typescript: 13.0.0(typescript@5.6.3)
-      detective-vue2: 2.1.1(typescript@5.6.3)
+      detective-typescript: 13.0.0(typescript@5.7.3)
+      detective-vue2: 2.1.1(typescript@5.7.3)
       module-definition: 6.0.0
-      node-source-walk: 7.0.1
-      postcss: 8.4.47
-      typescript: 5.6.3
+      node-source-walk: 7.0.0
+      postcss: 8.5.1
+      typescript: 5.7.3
     transitivePeerDependencies:
       - supports-color
 
@@ -14843,7 +14291,7 @@ snapshots:
 
   proxy-from-env@1.1.0: {}
 
-  pump@3.0.0:
+  pump@3.0.2:
     dependencies:
       end-of-stream: 1.4.4
       once: 1.4.0
@@ -14871,7 +14319,7 @@ snapshots:
     dependencies:
       performance-now: 2.1.0
 
-  rambda@7.4.0: {}
+  rambda@7.5.0: {}
 
   randombytes@2.1.0:
     dependencies:
@@ -14935,7 +14383,7 @@ snapshots:
 
   read-pkg@5.2.0:
     dependencies:
-      '@types/normalize-package-data': 2.4.1
+      '@types/normalize-package-data': 2.4.4
       normalize-package-data: 2.5.0
       parse-json: 5.2.0
       type-fest: 0.6.0
@@ -14951,7 +14399,7 @@ snapshots:
       isarray: 0.0.1
       string_decoder: 0.10.31
 
-  readable-stream@2.3.7:
+  readable-stream@2.3.8:
     dependencies:
       core-util-is: 1.0.3
       inherits: 2.0.4
@@ -14961,7 +14409,7 @@ snapshots:
       string_decoder: 1.1.1
       util-deprecate: 1.0.2
 
-  readable-stream@3.6.0:
+  readable-stream@3.6.2:
     dependencies:
       inherits: 2.0.4
       string_decoder: 1.3.0
@@ -15006,6 +14454,17 @@ snapshots:
       indent-string: 4.0.0
       strip-indent: 3.0.0
 
+  reflect.getprototypeof@1.0.10:
+    dependencies:
+      call-bind: 1.0.8
+      define-properties: 1.2.1
+      es-abstract: 1.23.9
+      es-errors: 1.3.0
+      es-object-atoms: 1.1.1
+      get-intrinsic: 1.2.7
+      get-proto: 1.0.1
+      which-builtin-type: 1.2.1
+
   regenerate-unicode-properties@10.2.0:
     dependencies:
       regenerate: 1.4.2
@@ -15029,33 +14488,29 @@ snapshots:
     dependencies:
       regex-utilities: 2.3.0
 
-  regexp.prototype.flags@1.5.1:
+  regexp.prototype.flags@1.5.4:
     dependencies:
-      call-bind: 1.0.5
-      define-properties: 1.2.1
-      set-function-name: 2.0.1
-
-  regexp.prototype.flags@1.5.3:
-    dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
       define-properties: 1.2.1
       es-errors: 1.3.0
+      get-proto: 1.0.1
+      gopd: 1.2.0
       set-function-name: 2.0.2
 
   regexpp@3.2.0: {}
 
-  regexpu-core@6.1.1:
+  regexpu-core@6.2.0:
     dependencies:
       regenerate: 1.4.2
       regenerate-unicode-properties: 10.2.0
       regjsgen: 0.8.0
-      regjsparser: 0.11.1
+      regjsparser: 0.12.0
       unicode-match-property-ecmascript: 2.0.0
       unicode-match-property-value-ecmascript: 2.2.0
 
   regjsgen@0.8.0: {}
 
-  regjsparser@0.11.1:
+  regjsparser@0.12.0:
     dependencies:
       jsesc: 3.0.2
 
@@ -15063,11 +14518,11 @@ snapshots:
 
   rehype-autolink-headings@7.1.0:
     dependencies:
-      '@types/hast': 3.0.2
-      '@ungap/structured-clone': 1.2.0
+      '@types/hast': 3.0.4
+      '@ungap/structured-clone': 1.3.0
       hast-util-heading-rank: 3.0.0
       hast-util-is-element: 3.0.0
-      unified: 11.0.4
+      unified: 11.0.5
       unist-util-visit: 5.0.0
 
   rehype-parse@9.0.1:
@@ -15079,23 +14534,23 @@ snapshots:
   rehype-raw@7.0.0:
     dependencies:
       '@types/hast': 3.0.4
-      hast-util-raw: 9.0.1
+      hast-util-raw: 9.1.0
       vfile: 6.0.3
 
   rehype-recma@1.0.0:
     dependencies:
       '@types/estree': 1.0.6
       '@types/hast': 3.0.4
-      hast-util-to-estree: 3.1.0
+      hast-util-to-estree: 3.1.1
     transitivePeerDependencies:
       - supports-color
 
   rehype-slug@6.0.0:
     dependencies:
-      '@types/hast': 3.0.2
+      '@types/hast': 3.0.4
       github-slugger: 2.0.0
       hast-util-heading-rank: 3.0.0
-      hast-util-to-string: 3.0.0
+      hast-util-to-string: 3.0.1
       unist-util-visit: 5.0.0
 
   rehype-stringify@10.0.1:
@@ -15138,8 +14593,8 @@ snapshots:
   remark-parse@11.0.0:
     dependencies:
       '@types/mdast': 4.0.4
-      mdast-util-from-markdown: 2.0.1
-      micromark-util-types: 2.0.0
+      mdast-util-from-markdown: 2.0.2
+      micromark-util-types: 2.0.1
       unified: 11.0.5
     transitivePeerDependencies:
       - supports-color
@@ -15162,13 +14617,13 @@ snapshots:
   remark-stringify@11.0.0:
     dependencies:
       '@types/mdast': 4.0.4
-      mdast-util-to-markdown: 2.1.0
+      mdast-util-to-markdown: 2.1.2
       unified: 11.0.5
 
   remark-toc@9.0.0:
     dependencies:
-      '@types/mdast': 4.0.2
-      mdast-util-toc: 7.0.0
+      '@types/mdast': 4.0.4
+      mdast-util-toc: 7.1.0
 
   remove-trailing-separator@1.1.0: {}
 
@@ -15201,15 +14656,11 @@ snapshots:
 
   resolve-from@5.0.0: {}
 
-  resolve@1.22.2:
-    dependencies:
-      is-core-module: 2.15.1
-      path-parse: 1.0.7
-      supports-preserve-symlinks-flag: 1.0.0
+  resolve.exports@2.0.3: {}
 
-  resolve@1.22.8:
+  resolve@1.22.10:
     dependencies:
-      is-core-module: 2.15.1
+      is-core-module: 2.16.1
       path-parse: 1.0.7
       supports-preserve-symlinks-flag: 1.0.0
 
@@ -15263,32 +14714,35 @@ snapshots:
       jest-worker: 26.6.2
       rollup: 2.79.2
       serialize-javascript: 4.0.0
-      terser: 5.36.0
+      terser: 5.37.0
 
   rollup@2.79.2:
     optionalDependencies:
       fsevents: 2.3.3
 
-  rollup@4.24.0:
+  rollup@4.32.0:
     dependencies:
       '@types/estree': 1.0.6
     optionalDependencies:
-      '@rollup/rollup-android-arm-eabi': 4.24.0
-      '@rollup/rollup-android-arm64': 4.24.0
-      '@rollup/rollup-darwin-arm64': 4.24.0
-      '@rollup/rollup-darwin-x64': 4.24.0
-      '@rollup/rollup-linux-arm-gnueabihf': 4.24.0
-      '@rollup/rollup-linux-arm-musleabihf': 4.24.0
-      '@rollup/rollup-linux-arm64-gnu': 4.24.0
-      '@rollup/rollup-linux-arm64-musl': 4.24.0
-      '@rollup/rollup-linux-powerpc64le-gnu': 4.24.0
-      '@rollup/rollup-linux-riscv64-gnu': 4.24.0
-      '@rollup/rollup-linux-s390x-gnu': 4.24.0
-      '@rollup/rollup-linux-x64-gnu': 4.24.0
-      '@rollup/rollup-linux-x64-musl': 4.24.0
-      '@rollup/rollup-win32-arm64-msvc': 4.24.0
-      '@rollup/rollup-win32-ia32-msvc': 4.24.0
-      '@rollup/rollup-win32-x64-msvc': 4.24.0
+      '@rollup/rollup-android-arm-eabi': 4.32.0
+      '@rollup/rollup-android-arm64': 4.32.0
+      '@rollup/rollup-darwin-arm64': 4.32.0
+      '@rollup/rollup-darwin-x64': 4.32.0
+      '@rollup/rollup-freebsd-arm64': 4.32.0
+      '@rollup/rollup-freebsd-x64': 4.32.0
+      '@rollup/rollup-linux-arm-gnueabihf': 4.32.0
+      '@rollup/rollup-linux-arm-musleabihf': 4.32.0
+      '@rollup/rollup-linux-arm64-gnu': 4.32.0
+      '@rollup/rollup-linux-arm64-musl': 4.32.0
+      '@rollup/rollup-linux-loongarch64-gnu': 4.32.0
+      '@rollup/rollup-linux-powerpc64le-gnu': 4.32.0
+      '@rollup/rollup-linux-riscv64-gnu': 4.32.0
+      '@rollup/rollup-linux-s390x-gnu': 4.32.0
+      '@rollup/rollup-linux-x64-gnu': 4.32.0
+      '@rollup/rollup-linux-x64-musl': 4.32.0
+      '@rollup/rollup-win32-arm64-msvc': 4.32.0
+      '@rollup/rollup-win32-ia32-msvc': 4.32.0
+      '@rollup/rollup-win32-x64-msvc': 4.32.0
       fsevents: 2.3.3
 
   run-async@2.4.1: {}
@@ -15297,46 +14751,38 @@ snapshots:
     dependencies:
       queue-microtask: 1.2.3
 
-  rxjs@7.8.0:
+  rxjs@7.8.1:
     dependencies:
-      tslib: 2.8.0
+      tslib: 2.8.1
 
-  safe-array-concat@1.0.1:
+  safe-array-concat@1.1.3:
     dependencies:
-      call-bind: 1.0.5
-      get-intrinsic: 1.2.2
-      has-symbols: 1.0.3
-      isarray: 2.0.5
-
-  safe-array-concat@1.1.2:
-    dependencies:
-      call-bind: 1.0.7
-      get-intrinsic: 1.2.4
-      has-symbols: 1.0.3
+      call-bind: 1.0.8
+      call-bound: 1.0.3
+      get-intrinsic: 1.2.7
+      has-symbols: 1.1.0
       isarray: 2.0.5
 
   safe-buffer@5.1.2: {}
 
   safe-buffer@5.2.1: {}
 
-  safe-regex-test@1.0.0:
+  safe-push-apply@1.0.0:
     dependencies:
-      call-bind: 1.0.5
-      get-intrinsic: 1.2.2
-      is-regex: 1.1.4
-
-  safe-regex-test@1.0.3:
-    dependencies:
-      call-bind: 1.0.7
       es-errors: 1.3.0
-      is-regex: 1.1.4
+      isarray: 2.0.5
+
+  safe-regex-test@1.1.0:
+    dependencies:
+      call-bound: 1.0.3
+      es-errors: 1.3.0
+      is-regex: 1.2.1
 
   safer-buffer@2.1.2: {}
 
-  sass-lookup@6.1.0:
+  sass-lookup@6.0.1:
     dependencies:
       commander: 12.1.0
-      enhanced-resolve: 5.18.0
 
   scheduler@0.25.0: {}
 
@@ -15346,10 +14792,6 @@ snapshots:
 
   semver@6.3.1: {}
 
-  semver@7.5.3:
-    dependencies:
-      lru-cache: 6.0.0
-
   semver@7.6.3: {}
 
   serialize-javascript@4.0.0:
@@ -15358,28 +14800,15 @@ snapshots:
 
   set-blocking@2.0.0: {}
 
-  set-function-length@1.1.1:
-    dependencies:
-      define-data-property: 1.1.1
-      get-intrinsic: 1.2.2
-      gopd: 1.0.1
-      has-property-descriptors: 1.0.0
-
   set-function-length@1.2.2:
     dependencies:
       define-data-property: 1.1.4
       es-errors: 1.3.0
       function-bind: 1.1.2
-      get-intrinsic: 1.2.4
-      gopd: 1.0.1
+      get-intrinsic: 1.2.7
+      gopd: 1.2.0
       has-property-descriptors: 1.0.2
 
-  set-function-name@2.0.1:
-    dependencies:
-      define-data-property: 1.1.1
-      functions-have-names: 1.2.3
-      has-property-descriptors: 1.0.0
-
   set-function-name@2.0.2:
     dependencies:
       define-data-property: 1.1.4
@@ -15387,6 +14816,12 @@ snapshots:
       functions-have-names: 1.2.3
       has-property-descriptors: 1.0.2
 
+  set-proto@1.0.0:
+    dependencies:
+      dunder-proto: 1.0.1
+      es-errors: 1.3.0
+      es-object-atoms: 1.1.1
+
   sfumato@0.1.2:
     dependencies:
       soundfont2: 0.4.0
@@ -15427,29 +14862,44 @@ snapshots:
 
   shebang-regex@3.0.0: {}
 
-  shiki@1.29.2:
+  shiki@1.29.1:
     dependencies:
-      '@shikijs/core': 1.29.2
-      '@shikijs/engine-javascript': 1.29.2
-      '@shikijs/engine-oniguruma': 1.29.2
-      '@shikijs/langs': 1.29.2
-      '@shikijs/themes': 1.29.2
-      '@shikijs/types': 1.29.2
+      '@shikijs/core': 1.29.1
+      '@shikijs/engine-javascript': 1.29.1
+      '@shikijs/engine-oniguruma': 1.29.1
+      '@shikijs/langs': 1.29.1
+      '@shikijs/themes': 1.29.1
+      '@shikijs/types': 1.29.1
       '@shikijs/vscode-textmate': 10.0.1
       '@types/hast': 3.0.4
 
-  side-channel@1.0.4:
+  side-channel-list@1.0.0:
     dependencies:
-      call-bind: 1.0.5
-      get-intrinsic: 1.2.2
-      object-inspect: 1.13.1
-
-  side-channel@1.0.6:
-    dependencies:
-      call-bind: 1.0.7
       es-errors: 1.3.0
-      get-intrinsic: 1.2.4
-      object-inspect: 1.13.2
+      object-inspect: 1.13.3
+
+  side-channel-map@1.0.1:
+    dependencies:
+      call-bound: 1.0.3
+      es-errors: 1.3.0
+      get-intrinsic: 1.2.7
+      object-inspect: 1.13.3
+
+  side-channel-weakmap@1.0.2:
+    dependencies:
+      call-bound: 1.0.3
+      es-errors: 1.3.0
+      get-intrinsic: 1.2.7
+      object-inspect: 1.13.3
+      side-channel-map: 1.0.1
+
+  side-channel@1.1.0:
+    dependencies:
+      es-errors: 1.3.0
+      object-inspect: 1.13.3
+      side-channel-list: 1.0.0
+      side-channel-map: 1.0.1
+      side-channel-weakmap: 1.0.2
 
   siginfo@2.0.0: {}
 
@@ -15461,7 +14911,7 @@ snapshots:
     dependencies:
       '@sigstore/bundle': 2.3.2
       '@sigstore/core': 1.1.0
-      '@sigstore/protobuf-specs': 0.3.2
+      '@sigstore/protobuf-specs': 0.3.3
       '@sigstore/sign': 2.3.2
       '@sigstore/tuf': 2.3.4
       '@sigstore/verify': 1.2.1
@@ -15492,12 +14942,10 @@ snapshots:
 
   smart-buffer@4.2.0: {}
 
-  smol-toml@1.3.1: {}
-
-  socks-proxy-agent@8.0.4:
+  socks-proxy-agent@8.0.5:
     dependencies:
-      agent-base: 7.1.1
-      debug: 4.3.7
+      agent-base: 7.1.3
+      debug: 4.4.0
       socks: 2.8.3
     transitivePeerDependencies:
       - supports-color
@@ -15538,23 +14986,23 @@ snapshots:
 
   space-separated-tokens@2.0.2: {}
 
-  spdx-correct@3.1.1:
+  spdx-correct@3.2.0:
     dependencies:
       spdx-expression-parse: 3.0.1
-      spdx-license-ids: 3.0.12
+      spdx-license-ids: 3.0.21
 
-  spdx-exceptions@2.3.0: {}
+  spdx-exceptions@2.5.0: {}
 
   spdx-expression-parse@3.0.1:
     dependencies:
-      spdx-exceptions: 2.3.0
-      spdx-license-ids: 3.0.12
+      spdx-exceptions: 2.5.0
+      spdx-license-ids: 3.0.21
 
-  spdx-license-ids@3.0.12: {}
+  spdx-license-ids@3.0.21: {}
 
   split2@3.2.2:
     dependencies:
-      readable-stream: 3.6.0
+      readable-stream: 3.6.2
 
   split@1.0.1:
     dependencies:
@@ -15570,11 +15018,11 @@ snapshots:
 
   stackback@0.0.2: {}
 
-  standardized-audio-context@25.3.37:
+  standardized-audio-context@25.3.77:
     dependencies:
-      '@babel/runtime': 7.25.7
-      automation-events: 5.0.0
-      tslib: 2.8.0
+      '@babel/runtime': 7.26.7
+      automation-events: 7.1.5
+      tslib: 2.8.1
 
   std-env@3.8.0: {}
 
@@ -15584,7 +15032,7 @@ snapshots:
 
   stream-meter@1.0.4:
     dependencies:
-      readable-stream: 2.3.7
+      readable-stream: 2.3.8
 
   stream-parser@0.3.1:
     dependencies:
@@ -15617,51 +15065,44 @@ snapshots:
       get-east-asian-width: 1.3.0
       strip-ansi: 7.1.0
 
-  string.prototype.matchall@4.0.11:
+  string.prototype.matchall@4.0.12:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
+      call-bound: 1.0.3
       define-properties: 1.2.1
-      es-abstract: 1.23.3
+      es-abstract: 1.23.9
       es-errors: 1.3.0
-      es-object-atoms: 1.0.0
-      get-intrinsic: 1.2.4
-      gopd: 1.0.1
-      has-symbols: 1.0.3
-      internal-slot: 1.0.7
-      regexp.prototype.flags: 1.5.3
+      es-object-atoms: 1.1.1
+      get-intrinsic: 1.2.7
+      gopd: 1.2.0
+      has-symbols: 1.1.0
+      internal-slot: 1.1.0
+      regexp.prototype.flags: 1.5.4
       set-function-name: 2.0.2
-      side-channel: 1.0.6
+      side-channel: 1.1.0
 
-  string.prototype.trim@1.2.8:
+  string.prototype.trim@1.2.10:
     dependencies:
-      call-bind: 1.0.5
+      call-bind: 1.0.8
+      call-bound: 1.0.3
+      define-data-property: 1.1.4
       define-properties: 1.2.1
-      es-abstract: 1.22.3
+      es-abstract: 1.23.9
+      es-object-atoms: 1.1.1
+      has-property-descriptors: 1.0.2
 
-  string.prototype.trim@1.2.9:
+  string.prototype.trimend@1.0.9:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
+      call-bound: 1.0.3
       define-properties: 1.2.1
-      es-abstract: 1.23.3
-      es-object-atoms: 1.0.0
-
-  string.prototype.trimend@1.0.8:
-    dependencies:
-      call-bind: 1.0.7
-      define-properties: 1.2.1
-      es-object-atoms: 1.0.0
-
-  string.prototype.trimstart@1.0.7:
-    dependencies:
-      call-bind: 1.0.5
-      define-properties: 1.2.1
-      es-abstract: 1.22.3
+      es-object-atoms: 1.1.1
 
   string.prototype.trimstart@1.0.8:
     dependencies:
-      call-bind: 1.0.7
+      call-bind: 1.0.8
       define-properties: 1.2.1
-      es-object-atoms: 1.0.0
+      es-object-atoms: 1.1.1
 
   string_decoder@0.10.31: {}
 
@@ -15720,34 +15161,26 @@ snapshots:
       minimist: 1.2.8
       through: 2.3.8
 
-  style-mod@4.1.0: {}
-
-  style-to-object@0.4.4:
-    dependencies:
-      inline-style-parser: 0.1.1
+  style-mod@4.1.2: {}
 
   style-to-object@1.0.8:
     dependencies:
       inline-style-parser: 0.2.4
 
-  stylus-lookup@6.1.0:
+  stylus-lookup@6.0.0:
     dependencies:
       commander: 12.1.0
 
   sucrase@3.35.0:
     dependencies:
-      '@jridgewell/gen-mapping': 0.3.5
+      '@jridgewell/gen-mapping': 0.3.8
       commander: 4.1.1
       glob: 10.4.5
       lines-and-columns: 1.2.4
       mz: 2.7.0
-      pirates: 4.0.5
+      pirates: 4.0.6
       ts-interface-checker: 0.1.13
 
-  supports-color@5.5.0:
-    dependencies:
-      has-flag: 3.0.0
-
   supports-color@7.2.0:
     dependencies:
       has-flag: 4.0.0
@@ -15763,7 +15196,7 @@ snapshots:
       chokidar: 3.6.0
       didyoumean: 1.2.2
       dlv: 1.1.3
-      fast-glob: 3.3.2
+      fast-glob: 3.3.3
       glob-parent: 6.0.2
       is-glob: 4.0.3
       jiti: 1.21.7
@@ -15772,26 +15205,26 @@ snapshots:
       normalize-path: 3.0.0
       object-hash: 3.0.0
       picocolors: 1.1.1
-      postcss: 8.4.47
-      postcss-import: 15.1.0(postcss@8.4.47)
-      postcss-js: 4.0.1(postcss@8.4.47)
-      postcss-load-config: 4.0.2(postcss@8.4.47)
-      postcss-nested: 6.2.0(postcss@8.4.47)
+      postcss: 8.5.1
+      postcss-import: 15.1.0(postcss@8.5.1)
+      postcss-js: 4.0.1(postcss@8.5.1)
+      postcss-load-config: 4.0.2(postcss@8.5.1)
+      postcss-nested: 6.2.0(postcss@8.5.1)
       postcss-selector-parser: 6.1.2
-      resolve: 1.22.8
+      resolve: 1.22.10
       sucrase: 3.35.0
     transitivePeerDependencies:
       - ts-node
 
-  tailwindcss@4.0.1: {}
+  tailwindcss@4.0.0: {}
 
   tapable@2.2.1: {}
 
-  tar-fs@2.1.1:
+  tar-fs@2.1.2:
     dependencies:
       chownr: 1.1.4
       mkdirp-classic: 0.5.3
-      pump: 3.0.0
+      pump: 3.0.2
       tar-stream: 2.2.0
 
   tar-stream@2.2.0:
@@ -15800,7 +15233,7 @@ snapshots:
       end-of-stream: 1.4.4
       fs-constants: 1.0.0
       inherits: 2.0.4
-      readable-stream: 3.6.0
+      readable-stream: 3.6.2
 
   tar@6.2.1:
     dependencies:
@@ -15822,7 +15255,7 @@ snapshots:
       type-fest: 0.16.0
       unique-string: 2.0.0
 
-  terser@5.36.0:
+  terser@5.37.0:
     dependencies:
       '@jridgewell/source-map': 0.3.6
       acorn: 8.14.0
@@ -15843,7 +15276,7 @@ snapshots:
 
   through2@2.0.5:
     dependencies:
-      readable-stream: 2.3.7
+      readable-stream: 2.3.8
       xtend: 4.0.2
 
   through@2.3.8: {}
@@ -15854,7 +15287,7 @@ snapshots:
 
   tinyglobby@0.2.10:
     dependencies:
-      fdir: 6.4.2(picomatch@4.0.2)
+      fdir: 6.4.3(picomatch@4.0.2)
       picomatch: 4.0.2
 
   tinypool@1.0.2: {}
@@ -15867,9 +15300,7 @@ snapshots:
     dependencies:
       os-tmpdir: 1.0.2
 
-  tmp@0.2.1:
-    dependencies:
-      rimraf: 3.0.2
+  tmp@0.2.3: {}
 
   to-fast-properties@2.0.0: {}
 
@@ -15888,14 +15319,14 @@ snapshots:
   tree-sitter-haskell@0.23.1(tree-sitter@0.21.1):
     dependencies:
       node-addon-api: 8.3.0
-      node-gyp-build: 4.8.2
+      node-gyp-build: 4.8.4
     optionalDependencies:
       tree-sitter: 0.21.1
 
   tree-sitter@0.21.1:
     dependencies:
       node-addon-api: 8.3.0
-      node-gyp-build: 4.8.2
+      node-gyp-build: 4.8.4
     optional: true
 
   treeverse@3.0.0: {}
@@ -15906,15 +15337,15 @@ snapshots:
 
   trough@2.2.0: {}
 
-  ts-api-utils@1.4.3(typescript@5.6.3):
+  ts-api-utils@1.4.3(typescript@5.7.3):
     dependencies:
-      typescript: 5.6.3
+      typescript: 5.7.3
 
   ts-interface-checker@0.1.13: {}
 
-  tsconfck@3.1.4(typescript@5.6.3):
+  tsconfck@3.1.4(typescript@5.7.3):
     optionalDependencies:
-      typescript: 5.6.3
+      typescript: 5.7.3
 
   tsconfig-paths@3.15.0:
     dependencies:
@@ -15929,14 +15360,12 @@ snapshots:
       minimist: 1.2.8
       strip-bom: 3.0.0
 
-  tslib@2.8.0: {}
-
   tslib@2.8.1: {}
 
   tuf-js@2.2.1:
     dependencies:
       '@tufjs/models': 2.0.1
-      debug: 4.3.7
+      debug: 4.4.0
       make-fetch-happen: 13.0.1
     transitivePeerDependencies:
       - supports-color
@@ -15961,70 +15390,44 @@ snapshots:
 
   type-fest@0.8.1: {}
 
-  type-fest@4.26.1: {}
+  type-fest@4.33.0: {}
 
-  typed-array-buffer@1.0.0:
+  typed-array-buffer@1.0.3:
     dependencies:
-      call-bind: 1.0.5
-      get-intrinsic: 1.2.2
-      is-typed-array: 1.1.12
-
-  typed-array-buffer@1.0.2:
-    dependencies:
-      call-bind: 1.0.7
+      call-bound: 1.0.3
       es-errors: 1.3.0
-      is-typed-array: 1.1.13
+      is-typed-array: 1.1.15
 
-  typed-array-byte-length@1.0.0:
+  typed-array-byte-length@1.0.3:
     dependencies:
-      call-bind: 1.0.5
-      for-each: 0.3.3
-      has-proto: 1.0.1
-      is-typed-array: 1.1.12
+      call-bind: 1.0.8
+      for-each: 0.3.4
+      gopd: 1.2.0
+      has-proto: 1.2.0
+      is-typed-array: 1.1.15
 
-  typed-array-byte-length@1.0.1:
-    dependencies:
-      call-bind: 1.0.7
-      for-each: 0.3.3
-      gopd: 1.0.1
-      has-proto: 1.0.3
-      is-typed-array: 1.1.13
-
-  typed-array-byte-offset@1.0.0:
-    dependencies:
-      available-typed-arrays: 1.0.5
-      call-bind: 1.0.5
-      for-each: 0.3.3
-      has-proto: 1.0.1
-      is-typed-array: 1.1.12
-
-  typed-array-byte-offset@1.0.2:
+  typed-array-byte-offset@1.0.4:
     dependencies:
       available-typed-arrays: 1.0.7
-      call-bind: 1.0.7
-      for-each: 0.3.3
-      gopd: 1.0.1
-      has-proto: 1.0.3
-      is-typed-array: 1.1.13
+      call-bind: 1.0.8
+      for-each: 0.3.4
+      gopd: 1.2.0
+      has-proto: 1.2.0
+      is-typed-array: 1.1.15
+      reflect.getprototypeof: 1.0.10
 
-  typed-array-length@1.0.4:
+  typed-array-length@1.0.7:
     dependencies:
-      call-bind: 1.0.5
-      for-each: 0.3.3
-      is-typed-array: 1.1.12
-
-  typed-array-length@1.0.6:
-    dependencies:
-      call-bind: 1.0.7
-      for-each: 0.3.3
-      gopd: 1.0.1
-      has-proto: 1.0.3
-      is-typed-array: 1.1.13
+      call-bind: 1.0.8
+      for-each: 0.3.4
+      gopd: 1.2.0
+      is-typed-array: 1.1.15
       possible-typed-array-names: 1.0.0
+      reflect.getprototypeof: 1.0.10
 
   typedarray@0.0.6: {}
 
-  typescript@5.6.3: {}
+  typescript@5.7.3: {}
 
   uc.micro@2.1.0: {}
 
@@ -16035,16 +15438,16 @@ snapshots:
 
   ultrahtml@1.5.3: {}
 
-  unbox-primitive@1.0.2:
+  unbox-primitive@1.1.0:
     dependencies:
-      call-bind: 1.0.5
-      has-bigints: 1.0.2
-      has-symbols: 1.0.3
-      which-boxed-primitive: 1.0.2
+      call-bound: 1.0.3
+      has-bigints: 1.1.0
+      has-symbols: 1.1.0
+      which-boxed-primitive: 1.1.1
 
   uncrypto@0.1.3: {}
 
-  underscore@1.13.6: {}
+  underscore@1.13.7: {}
 
   undici-types@6.20.0: {}
 
@@ -16067,16 +15470,6 @@ snapshots:
 
   unicode-property-aliases-ecmascript@2.1.0: {}
 
-  unified@11.0.4:
-    dependencies:
-      '@types/unist': 3.0.3
-      bail: 2.0.2
-      devlop: 1.1.0
-      extend: 3.0.2
-      is-plain-obj: 4.1.0
-      trough: 2.2.0
-      vfile: 6.0.3
-
   unified@11.0.5:
     dependencies:
       '@types/unist': 3.0.3
@@ -16108,7 +15501,7 @@ snapshots:
 
   unist-util-is@6.0.0:
     dependencies:
-      '@types/unist': 3.0.1
+      '@types/unist': 3.0.3
 
   unist-util-modify-children@4.0.0:
     dependencies:
@@ -16155,9 +15548,7 @@ snapshots:
       unist-util-is: 6.0.0
       unist-util-visit-parents: 6.0.1
 
-  universal-user-agent@6.0.0: {}
-
-  universalify@2.0.0: {}
+  universal-user-agent@6.0.1: {}
 
   universalify@2.0.1: {}
 
@@ -16178,9 +15569,9 @@ snapshots:
 
   upath@2.0.1: {}
 
-  update-browserslist-db@1.1.1(browserslist@4.24.0):
+  update-browserslist-db@1.1.2(browserslist@4.24.4):
     dependencies:
-      browserslist: 4.24.0
+      browserslist: 4.24.4
       escalade: 3.2.0
       picocolors: 1.1.1
 
@@ -16194,12 +15585,12 @@ snapshots:
 
   validate-npm-package-license@3.0.4:
     dependencies:
-      spdx-correct: 3.1.1
+      spdx-correct: 3.2.0
       spdx-expression-parse: 3.0.1
 
   validate-npm-package-name@5.0.1: {}
 
-  vfile-location@5.0.2:
+  vfile-location@5.0.3:
     dependencies:
       '@types/unist': 3.0.3
       vfile: 6.0.3
@@ -16227,13 +15618,13 @@ snapshots:
       remove-trailing-separator: 1.1.0
       replace-ext: 1.0.1
 
-  vite-node@3.0.4(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0):
+  vite-node@3.0.4(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0):
     dependencies:
       cac: 6.7.14
       debug: 4.4.0
       es-module-lexer: 1.6.0
       pathe: 2.0.2
-      vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
     transitivePeerDependencies:
       - '@types/node'
       - jiti
@@ -16248,48 +15639,38 @@ snapshots:
       - tsx
       - yaml
 
-  vite-plugin-pwa@0.17.5(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0):
+  vite-plugin-pwa@0.21.1(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))(workbox-build@7.0.0(@types/babel__core@7.20.5))(workbox-window@7.3.0):
     dependencies:
       debug: 4.4.0
-      fast-glob: 3.3.3
       pretty-bytes: 6.1.1
-      vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+      tinyglobby: 0.2.10
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
       workbox-build: 7.0.0(@types/babel__core@7.20.5)
       workbox-window: 7.3.0
     transitivePeerDependencies:
       - supports-color
 
-  vite@5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0):
-    dependencies:
-      esbuild: 0.21.5
-      postcss: 8.4.47
-      rollup: 4.24.0
-    optionalDependencies:
-      '@types/node': 22.12.0
-      fsevents: 2.3.3
-      lightningcss: 1.29.1
-      terser: 5.36.0
-
-  vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0):
+  vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0):
     dependencies:
       esbuild: 0.24.2
       postcss: 8.5.1
-      rollup: 4.24.0
+      rollup: 4.32.0
     optionalDependencies:
-      '@types/node': 22.12.0
+      '@types/node': 22.10.10
       fsevents: 2.3.3
       jiti: 2.4.2
       lightningcss: 1.29.1
-      terser: 5.36.0
+      terser: 5.37.0
+      yaml: 2.7.0
 
-  vitefu@1.0.5(vite@6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)):
+  vitefu@1.0.5(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)):
     optionalDependencies:
-      vite: 6.0.11(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
 
-  vitest@3.0.4(@types/node@22.12.0)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0):
+  vitest@3.0.4(@types/debug@4.1.12)(@types/node@22.10.10)(@vitest/ui@3.0.4)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0):
     dependencies:
       '@vitest/expect': 3.0.4
-      '@vitest/mocker': 3.0.4(vite@5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0))
+      '@vitest/mocker': 3.0.4(vite@6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0))
       '@vitest/pretty-format': 3.0.4
       '@vitest/runner': 3.0.4
       '@vitest/snapshot': 3.0.4
@@ -16305,11 +15686,12 @@ snapshots:
       tinyexec: 0.3.2
       tinypool: 1.0.2
       tinyrainbow: 2.0.0
-      vite: 5.4.9(@types/node@22.12.0)(lightningcss@1.29.1)(terser@5.36.0)
-      vite-node: 3.0.4(@types/node@22.12.0)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.36.0)
+      vite: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
+      vite-node: 3.0.4(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
       why-is-node-running: 2.3.0
     optionalDependencies:
-      '@types/node': 22.12.0
+      '@types/debug': 4.1.12
+      '@types/node': 22.10.10
       '@vitest/ui': 3.0.4(vitest@3.0.4)
     transitivePeerDependencies:
       - jiti
@@ -16325,7 +15707,7 @@ snapshots:
       - tsx
       - yaml
 
-  w3c-keyname@2.2.6: {}
+  w3c-keyname@2.2.8: {}
 
   walk-up-path@3.0.1: {}
 
@@ -16343,13 +15725,13 @@ snapshots:
     dependencies:
       defaults: 1.0.4
 
-  web-midi-api@2.2.2:
+  web-midi-api@2.3.5:
     dependencies:
-      jzz: 1.8.6
+      jzz: 1.8.8
 
   web-namespaces@2.0.1: {}
 
-  web-streams-polyfill@3.2.1: {}
+  web-streams-polyfill@3.3.3: {}
 
   web-tree-sitter@0.20.8: {}
 
@@ -16363,7 +15745,7 @@ snapshots:
     dependencies:
       djipevents: 2.0.7
     optionalDependencies:
-      jzz: 1.8.6
+      jzz: 1.8.8
 
   whatwg-url@5.0.0:
     dependencies:
@@ -16376,13 +15758,36 @@ snapshots:
       tr46: 1.0.1
       webidl-conversions: 4.0.2
 
-  which-boxed-primitive@1.0.2:
+  which-boxed-primitive@1.1.1:
     dependencies:
-      is-bigint: 1.0.4
-      is-boolean-object: 1.1.2
-      is-number-object: 1.0.7
-      is-string: 1.0.7
-      is-symbol: 1.0.4
+      is-bigint: 1.1.0
+      is-boolean-object: 1.2.1
+      is-number-object: 1.1.1
+      is-string: 1.1.1
+      is-symbol: 1.1.1
+
+  which-builtin-type@1.2.1:
+    dependencies:
+      call-bound: 1.0.3
+      function.prototype.name: 1.1.8
+      has-tostringtag: 1.0.2
+      is-async-function: 2.1.1
+      is-date-object: 1.1.0
+      is-finalizationregistry: 1.1.1
+      is-generator-function: 1.1.0
+      is-regex: 1.2.1
+      is-weakref: 1.1.0
+      isarray: 2.0.5
+      which-boxed-primitive: 1.1.1
+      which-collection: 1.0.2
+      which-typed-array: 1.1.18
+
+  which-collection@1.0.2:
+    dependencies:
+      is-map: 2.0.3
+      is-set: 2.0.3
+      is-weakmap: 2.0.2
+      is-weakset: 2.0.4
 
   which-module@2.0.1: {}
 
@@ -16392,20 +15797,13 @@ snapshots:
     dependencies:
       load-yaml-file: 0.2.0
 
-  which-typed-array@1.1.13:
-    dependencies:
-      available-typed-arrays: 1.0.5
-      call-bind: 1.0.5
-      for-each: 0.3.3
-      gopd: 1.0.1
-      has-tostringtag: 1.0.0
-
-  which-typed-array@1.1.15:
+  which-typed-array@1.1.18:
     dependencies:
       available-typed-arrays: 1.0.7
-      call-bind: 1.0.7
-      for-each: 0.3.3
-      gopd: 1.0.1
+      call-bind: 1.0.8
+      call-bound: 1.0.3
+      for-each: 0.3.4
+      gopd: 1.2.0
       has-tostringtag: 1.0.2
 
   which@2.0.2:
@@ -16429,6 +15827,8 @@ snapshots:
     dependencies:
       string-width: 7.2.0
 
+  word-wrap@1.2.5: {}
+
   wordwrap@1.0.0: {}
 
   workbox-background-sync@7.0.0:
@@ -16444,7 +15844,7 @@ snapshots:
     dependencies:
       '@apideck/better-ajv-errors': 0.3.6(ajv@8.17.1)
       '@babel/core': 7.26.7
-      '@babel/preset-env': 7.25.8(@babel/core@7.26.7)
+      '@babel/preset-env': 7.26.7(@babel/core@7.26.7)
       '@babel/runtime': 7.26.7
       '@rollup/plugin-babel': 5.3.1(@babel/core@7.26.7)(@types/babel__core@7.20.5)(rollup@2.79.2)
       '@rollup/plugin-node-resolve': 11.2.1(rollup@2.79.2)
@@ -16638,7 +16038,7 @@ snapshots:
 
   yallist@4.0.0: {}
 
-  yaml@2.3.4: {}
+  yaml@2.7.0: {}
 
   yargs-parser@18.1.3:
     dependencies:
@@ -16666,7 +16066,7 @@ snapshots:
   yargs@16.2.0:
     dependencies:
       cliui: 7.0.4
-      escalade: 3.1.1
+      escalade: 3.2.0
       get-caller-file: 2.0.5
       require-directory: 2.1.1
       string-width: 4.2.3
@@ -16697,9 +16097,9 @@ snapshots:
     dependencies:
       zod: 3.24.1
 
-  zod-to-ts@1.2.0(typescript@5.6.3)(zod@3.24.1):
+  zod-to-ts@1.2.0(typescript@5.7.3)(zod@3.24.1):
     dependencies:
-      typescript: 5.6.3
+      typescript: 5.7.3
       zod: 3.24.1
 
   zod@3.24.1: {}

From 1fb68af5afe4957767677b9c223e2346fcda6416 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 11:01:40 +0100
Subject: [PATCH 458/805] chore: pnpm i

---
 pnpm-lock.yaml | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml
index 494d04f0..bc9fb891 100644
--- a/pnpm-lock.yaml
+++ b/pnpm-lock.yaml
@@ -267,6 +267,16 @@ importers:
 
   packages/embed: {}
 
+  packages/gamepad:
+    dependencies:
+      '@strudel/core':
+        specifier: workspace:*
+        version: link:../core
+    devDependencies:
+      vite:
+        specifier: ^6.0.11
+        version: 6.0.11(@types/node@22.10.10)(jiti@2.4.2)(lightningcss@1.29.1)(terser@5.37.0)(yaml@2.7.0)
+
   packages/hs2js:
     dependencies:
       web-tree-sitter:
@@ -640,6 +650,9 @@ importers:
       '@strudel/draw':
         specifier: workspace:*
         version: link:../packages/draw
+      '@strudel/gamepad':
+        specifier: workspace:*
+        version: link:../packages/gamepad
       '@strudel/hydra':
         specifier: workspace:*
         version: link:../packages/hydra

From e2b7c3a62b49e9871bdb61ea485f1c2e13b15eea Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 11:05:12 +0100
Subject: [PATCH 459/805] chore: remove obsolete snapshots

---
 test/__snapshots__/examples.test.mjs.snap | 329 ----------------------
 1 file changed, 329 deletions(-)

diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index 6a0248a7..e6f2000e 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -565,69 +565,6 @@ exports[`runs examples > example "_euclidRot" example index 20 1`] = `
 ]
 `;
 
-exports[`runs examples > example "absoluteOrientationAlpha" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "absoluteOrientationBeta" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "absoluteOrientationGamma" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
 exports[`runs examples > example "accelerate" example index 0 1`] = `
 [
   "[ 0/1 → 2/1 | s:sax accelerate:0 ]",
@@ -635,69 +572,6 @@ exports[`runs examples > example "accelerate" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "accelerationX" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "accelerationY" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "accelerationZ" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
 exports[`runs examples > example "add" example index 0 1`] = `
 [
   "[ 0/1 → 1/3 | note:C3 ]",
@@ -868,8 +742,6 @@ exports[`runs examples > example "almostNever" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "altitude" example index 0 1`] = `[]`;
-
 exports[`runs examples > example "always" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | s:hh speed:0.5 ]",
@@ -3570,75 +3442,6 @@ exports[`runs examples > example "gain" example index 0 1`] = `
 
 exports[`runs examples > example "gap" example index 0 1`] = `[]`;
 
-exports[`runs examples > example "geoHeading" example index 0 1`] = `[]`;
-
-exports[`runs examples > example "geoSpeed" example index 0 1`] = `[]`;
-
-exports[`runs examples > example "gravityX" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "gravityY" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "gravityZ" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "heading" example index 0 1`] = `[]`;
-
 exports[`runs examples > example "hpattack" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:c2 s:sawtooth hcutoff:500 hpattack:0.5 hpenv:4 ]",
@@ -4403,8 +4206,6 @@ exports[`runs examples > example "late" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "latitude" example index 0 1`] = `[]`;
-
 exports[`runs examples > example "layer" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | note:C3 ]",
@@ -4508,8 +4309,6 @@ exports[`runs examples > example "linger" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "longitude" example index 0 1`] = `[]`;
-
 exports[`runs examples > example "loop" example index 0 1`] = `
 [
   "[ 0/1 → 1/1 | s:casio loop:1 ]",
@@ -5247,69 +5046,6 @@ exports[`runs examples > example "orbit" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "orientationAlpha" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "orientationBeta" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "orientationGamma" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
 exports[`runs examples > example "outside" example index 0 1`] = `
 [
   "[ 0/1 → 1/1 | note:A3 ]",
@@ -6714,69 +6450,6 @@ exports[`runs examples > example "rootNotes" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "rotationAlpha" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "rotationBeta" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
-exports[`runs examples > example "rotationGamma" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:C3 ]",
-  "[ 1/2 → 3/4 | note:C3 ]",
-  "[ 3/4 → 1/1 | note:C3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:C3 ]",
-  "[ 3/2 → 7/4 | note:C3 ]",
-  "[ 7/4 → 2/1 | note:C3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:C3 ]",
-  "[ 5/2 → 11/4 | note:C3 ]",
-  "[ 11/4 → 3/1 | note:C3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:C3 ]",
-  "[ 7/2 → 15/4 | note:C3 ]",
-  "[ 15/4 → 4/1 | note:C3 ]",
-]
-`;
-
 exports[`runs examples > example "round" example index 0 1`] = `
 [
   "[ 0/1 → 1/3 | note:D3 ]",
@@ -8040,8 +7713,6 @@ exports[`runs examples > example "speed" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "speed" example index 0 2`] = `[]`;
-
 exports[`runs examples > example "speed" example index 1 1`] = `
 [
   "[ 0/1 → 1/3 | speed:1 s:piano clip:1 ]",

From 9d5d86bb0921cfd5080c09c028b0d1121f9c5a39 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Fri, 31 Jan 2025 14:13:47 +0100
Subject: [PATCH 460/805] docs: use mask instead of gain, so you see what's
 active

---
 packages/gamepad/docs/gamepad.mdx | 14 +++++++-------
 1 file changed, 7 insertions(+), 7 deletions(-)

diff --git a/packages/gamepad/docs/gamepad.mdx b/packages/gamepad/docs/gamepad.mdx
index 0a2f5246..219d8ae0 100644
--- a/packages/gamepad/docs/gamepad.mdx
+++ b/packages/gamepad/docs/gamepad.mdx
@@ -12,7 +12,7 @@ Initialize a gamepad by calling the gamepad() function with an optional index pa
   client:idle
   tune={`// Initialize gamepad (optional index parameter, defaults to 0)
 const gp = gamepad(0)
-note("c a f e").gain(gp.a)`}
+note("c a f e").mask(gp.a)`}
 />
 
 ## Available Controls
@@ -58,11 +58,11 @@ You can use button inputs to control different aspects of your music, such as ga
   tune={`const gp = gamepad(0)
   // Use button values to control amplitude
 $: stack(
-  s("[[hh hh] oh hh oh]/2").gain(gp.tglX).bank("RolandTR909"), // X btn for HH
-   s("cr*1").gain(gp.Y).bank("RolandTR909"), // LB btn for CR
-  s("bd").gain(gp.tglA).bank("RolandTR909"), // A btn for BD
-  s("[ht - - mt - - lt - ]/2").gain(gp.tglB).bank("RolandTR909"), // B btn for Toms
-  s("sd*4").gain(gp.RB).bank("RolandTR909"), // RB btn for SD
+  s("[[hh hh] oh hh oh]/2").mask(gp.tglX).bank("RolandTR909"), // X btn for HH
+   s("cr*1").mask(gp.Y).bank("RolandTR909"), // LB btn for CR
+  s("bd").mask(gp.tglA).bank("RolandTR909"), // A btn for BD
+  s("[ht - - mt - - lt - ]/2").mask(gp.tglB).bank("RolandTR909"), // B btn for Toms
+  s("sd*4").mask(gp.RB).bank("RolandTR909"), // RB btn for SD
 ).cpm(120)
 `}
 />
@@ -99,7 +99,7 @@ const KONAMI = 'uuddlrlrba' //Konami Code ↑↑↓↓←→←→BA
 
 // Check butto-n sequence (returns 1 while detected, 0 when not within last 1 second)
 $: s("free_hadouken -").slow(2)
-.gain(gp.btnSequence(HADOUKEN)).room(1).cpm(120)
+.mask(gp.btnSequence(HADOUKEN)).room(1).cpm(120)
 
 // hadouken.wav by Syna-Max
 //https://freesound.org/people/Syna-Max/sounds/67674/

From 63ee218d53aad9ac26f5aaa97f83e111bbbc4084 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Sat, 1 Feb 2025 22:54:06 +0100
Subject: [PATCH 461/805] fix: make sure ac is defined

---
 packages/superdough/superdough.mjs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/packages/superdough/superdough.mjs b/packages/superdough/superdough.mjs
index b61f4263..f5f485e2 100644
--- a/packages/superdough/superdough.mjs
+++ b/packages/superdough/superdough.mjs
@@ -314,6 +314,7 @@ export function resetGlobalEffects() {
 }
 
 export const superdough = async (value, t, hapDuration) => {
+  const ac = getAudioContext();
   t = typeof t === 'string' && t.startsWith('=') ? Number(t.slice(1)) : ac.currentTime + t;
   let { stretch } = value;
   if (stretch != null) {
@@ -321,7 +322,6 @@ export const superdough = async (value, t, hapDuration) => {
     const latency = 0.04;
     t = t - latency;
   }
-  const ac = getAudioContext();
   if (typeof value !== 'object') {
     throw new Error(
       `expected hap.value to be an object, but got "${value}". Hint: append .note() or .s() to the end`,

From 1bf74024d4e130bc63c34fe6a0464d6e1f3a4029 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Sat, 1 Feb 2025 22:54:20 +0100
Subject: [PATCH 462/805] fix: sf2 soundfont timing

---
 packages/soundfonts/sfumato.mjs | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/packages/soundfonts/sfumato.mjs b/packages/soundfonts/sfumato.mjs
index 871ee67d..6d60f80d 100644
--- a/packages/soundfonts/sfumato.mjs
+++ b/packages/soundfonts/sfumato.mjs
@@ -3,11 +3,11 @@ import { getAudioContext, registerSound } from '@strudel/webaudio';
 import { loadSoundfont as _loadSoundfont, startPresetNote } from 'sfumato';
 
 Pattern.prototype.soundfont = function (sf, n = 0) {
-  return this.onTrigger((t, h, ct) => {
+  return this.onTrigger((time_deprecate, h, ct, cps, targetTime) => {
     const ctx = getAudioContext();
     const note = getPlayableNoteValue(h);
     const preset = sf.presets[n % sf.presets.length];
-    const deadline = ctx.currentTime + t - ct;
+    const deadline = targetTime;
     const args = [ctx, preset, noteToMidi(note), deadline];
     const stop = startPresetNote(...args);
     stop(deadline + h.duration);

From ce9d23049a5b38dca4d744585933e336756b3d02 Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Sun, 2 Feb 2025 20:26:44 +0000
Subject: [PATCH 463/805] Polish, rename, and document stepwise functions
 (#1262)

* polish, rename, and document stepwise functions: `pace`, `take`, `drop`, `expand`, `contract`, `repeat`, `zip`, `grow`, `shrink`, and `tour`
---
 bench/tunes.bench.mjs                     |  12 +-
 packages/core/bench/pattern.bench.mjs     |   2 +-
 packages/core/pattern.mjs                 | 514 +++++++++-----
 packages/core/test/controls.test.mjs      |  12 +-
 packages/core/test/pattern.test.mjs       | 155 +++--
 packages/mini/krill-parser.js             | 618 ++++++++---------
 packages/mini/krill.pegjs                 |   8 +-
 packages/mini/mini.mjs                    |  34 +-
 packages/mini/test/mini.test.mjs          |  20 +-
 packages/tonal/tonal.mjs                  |   2 +-
 test/__snapshots__/examples.test.mjs.snap | 800 ++++++++++++++++++----
 website/src/config.ts                     |   1 +
 website/src/pages/learn/factories.mdx     |  30 +-
 website/src/pages/learn/stepwise.mdx      | 139 ++++
 14 files changed, 1543 insertions(+), 804 deletions(-)
 create mode 100644 website/src/pages/learn/stepwise.mdx

diff --git a/bench/tunes.bench.mjs b/bench/tunes.bench.mjs
index cd381873..9ab750ce 100644
--- a/bench/tunes.bench.mjs
+++ b/bench/tunes.bench.mjs
@@ -1,22 +1,22 @@
 import { queryCode, testCycles } from '../test/runtime.mjs';
 import * as tunes from '../website/src/repl/tunes.mjs';
 import { describe, bench } from 'vitest';
-import { calculateTactus } from '../packages/core/index.mjs';
+import { calculateSteps } from '../packages/core/index.mjs';
 
 const tuneKeys = Object.keys(tunes);
 
 describe('renders tunes', () => {
   tuneKeys.forEach((key) => {
     describe(key, () => {
-      calculateTactus(true);
-      bench(`+tactus`, async () => {
+      calculateSteps(true);
+      bench(`+steps`, async () => {
         await queryCode(tunes[key], testCycles[key] || 1);
       });
-      calculateTactus(false);
-      bench(`-tactus`, async () => {
+      calculateSteps(false);
+      bench(`-steps`, async () => {
         await queryCode(tunes[key], testCycles[key] || 1);
       });
-      calculateTactus(true);
+      calculateSteps(true);
     });
   });
 });
diff --git a/packages/core/bench/pattern.bench.mjs b/packages/core/bench/pattern.bench.mjs
index 12644800..1b5be0b9 100644
--- a/packages/core/bench/pattern.bench.mjs
+++ b/packages/core/bench/pattern.bench.mjs
@@ -4,7 +4,7 @@ import { calculateTactus, sequence, stack } from '../index.mjs';
 
 const pat64 = sequence(...Array(64).keys());
 
-describe('tactus', () => {
+describe('steps', () => {
   calculateTactus(true);
   bench(
     '+tactus',
diff --git a/packages/core/pattern.mjs b/packages/core/pattern.mjs
index 72d3b100..7bb6a0c7 100644
--- a/packages/core/pattern.mjs
+++ b/packages/core/pattern.mjs
@@ -1,6 +1,6 @@
 /*
 pattern.mjs - Core pattern representation for strudel
-Copyright (C) 2022 Strudel contributors - see 
+Copyright (C) 2025 Strudel contributors - see 
 This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU Affero General Public License for more details. You should have received a copy of the GNU Affero General Public License along with this program.  If not, see .
 */
 
@@ -27,10 +27,10 @@ import { logger } from './logger.mjs';
 
 let stringParser;
 
-let __tactus = true;
+let __steps = true;
 
-export const calculateTactus = function (x) {
-  __tactus = x ? true : false;
+export const calculateSteps = function (x) {
+  __steps = x ? true : false;
 };
 
 // parser is expected to turn a string into a pattern
@@ -46,34 +46,34 @@ export class Pattern {
    * @param {function} query - The function that maps a `State` to an array of `Hap`.
    * @noAutocomplete
    */
-  constructor(query, tactus = undefined) {
+  constructor(query, steps = undefined) {
     this.query = query;
     this._Pattern = true; // this property is used to detectinstance of another Pattern
-    this.tactus = tactus; // in terms of number of steps per cycle
+    this._steps = steps; // in terms of number of steps per cycle
   }
 
-  get tactus() {
-    return this.__tactus;
+  get _steps() {
+    return this.__steps;
   }
 
-  set tactus(tactus) {
-    this.__tactus = tactus === undefined ? undefined : Fraction(tactus);
+  set _steps(steps) {
+    this.__steps = steps === undefined ? undefined : Fraction(steps);
   }
 
-  setTactus(tactus) {
-    this.tactus = tactus;
+  setSteps(steps) {
+    this._steps = steps;
     return this;
   }
 
-  withTactus(f) {
-    if (!__tactus) {
+  withSteps(f) {
+    if (!__steps) {
       return this;
     }
-    return new Pattern(this.query, this.tactus === undefined ? undefined : f(this.tactus));
+    return new Pattern(this.query, this._steps === undefined ? undefined : f(this._steps));
   }
 
-  get hasTactus() {
-    return this.tactus !== undefined;
+  get hasSteps() {
+    return this._steps !== undefined;
   }
 
   //////////////////////////////////////////////////////////////////////
@@ -90,7 +90,7 @@ export class Pattern {
    */
   withValue(func) {
     const result = new Pattern((state) => this.query(state).map((hap) => hap.withValue(func)));
-    result.tactus = this.tactus;
+    result._steps = this._steps;
     return result;
   }
 
@@ -166,8 +166,8 @@ export class Pattern {
       return span_a.intersection_e(span_b);
     };
     const result = pat_func.appWhole(whole_func, pat_val);
-    if (__tactus) {
-      result.tactus = lcm(pat_val.tactus, pat_func.tactus);
+    if (__steps) {
+      result._steps = lcm(pat_val._steps, pat_func._steps);
     }
     return result;
   }
@@ -203,7 +203,7 @@ export class Pattern {
       return haps;
     };
     const result = new Pattern(query);
-    result.tactus = this.tactus;
+    result._steps = this._steps;
     return result;
   }
 
@@ -236,7 +236,7 @@ export class Pattern {
       return haps;
     };
     const result = new Pattern(query);
-    result.tactus = pat_val.tactus;
+    result._steps = pat_val._steps;
     return result;
   }
 
@@ -280,7 +280,7 @@ export class Pattern {
   }
 
   outerBind(func) {
-    return this.bindWhole((a) => a, func).setTactus(this.tactus);
+    return this.bindWhole((a) => a, func).setSteps(this._steps);
   }
 
   outerJoin() {
@@ -388,7 +388,7 @@ export class Pattern {
 
   polyJoin = function () {
     const pp = this;
-    return pp.fmap((p) => p.s_extend(pp.tactus.div(p.tactus))).outerJoin();
+    return pp.fmap((p) => p.repeat(pp._steps.div(p._steps))).outerJoin();
   };
 
   polyBind(func) {
@@ -499,7 +499,7 @@ export class Pattern {
    */
   withHaps(func) {
     const result = new Pattern((state) => func(this.query(state), state));
-    result.tactus = this.tactus;
+    result._steps = this._steps;
     return result;
   }
 
@@ -589,7 +589,7 @@ export class Pattern {
    * @noAutocomplete
    */
   filterValues(value_test) {
-    return new Pattern((state) => this.query(state).filter((hap) => value_test(hap.value))).setTactus(this.tactus);
+    return new Pattern((state) => this.query(state).filter((hap) => value_test(hap.value))).setSteps(this._steps);
   }
 
   /**
@@ -1159,7 +1159,7 @@ function _composeOp(a, b, func) {
 export const polyrhythm = stack;
 export const pr = stack;
 
-export const pm = s_polymeter;
+export const pm = polymeter;
 
 // methods that create patterns, which are added to patternified Pattern methods
 // TODO: remove? this is only used in old transpiler (shapeshifter)
@@ -1182,13 +1182,13 @@ export const pm = s_polymeter;
 // Elemental patterns
 
 /**
- * Does absolutely nothing, but with a given metrical 'tactus'
+ * Does absolutely nothing, but with a given metrical 'steps'
  * @name gap
- * @param  {number} tactus
+ * @param  {number} steps
  * @example
  * gap(3) // "~@3"
  */
-export const gap = (tactus) => new Pattern(() => [], tactus);
+export const gap = (steps) => new Pattern(() => [], steps);
 
 /**
  * Does absolutely nothing..
@@ -1198,7 +1198,7 @@ export const gap = (tactus) => new Pattern(() => [], tactus);
  */
 export const silence = gap(1);
 
-/* Like silence, but with a 'tactus' (relative duration) of 0 */
+/* Like silence, but with a 'steps' (relative duration) of 0 */
 export const nothing = gap(0);
 
 /** A discrete value that repeats once per cycle.
@@ -1263,8 +1263,8 @@ export function stack(...pats) {
   pats = pats.map((pat) => (Array.isArray(pat) ? sequence(...pat) : reify(pat)));
   const query = (state) => flatten(pats.map((pat) => pat.query(state)));
   const result = new Pattern(query);
-  if (__tactus) {
-    result.tactus = lcm(...pats.map((pat) => pat.tactus));
+  if (__steps) {
+    result._steps = lcm(...pats.map((pat) => pat._steps));
   }
   return result;
 }
@@ -1277,54 +1277,54 @@ function _stackWith(func, pats) {
   if (pats.length === 1) {
     return pats[0];
   }
-  const [left, ...right] = pats.map((pat) => pat.tactus);
-  const tactus = __tactus ? left.maximum(...right) : undefined;
-  return stack(...func(tactus, pats));
+  const [left, ...right] = pats.map((pat) => pat._steps);
+  const steps = __steps ? left.maximum(...right) : undefined;
+  return stack(...func(steps, pats));
 }
 
 export function stackLeft(...pats) {
   return _stackWith(
-    (tactus, pats) => pats.map((pat) => (pat.tactus.eq(tactus) ? pat : s_cat(pat, gap(tactus.sub(pat.tactus))))),
+    (steps, pats) => pats.map((pat) => (pat._steps.eq(steps) ? pat : stepcat(pat, gap(steps.sub(pat._steps))))),
     pats,
   );
 }
 
 export function stackRight(...pats) {
   return _stackWith(
-    (tactus, pats) => pats.map((pat) => (pat.tactus.eq(tactus) ? pat : s_cat(gap(tactus.sub(pat.tactus)), pat))),
+    (steps, pats) => pats.map((pat) => (pat._steps.eq(steps) ? pat : stepcat(gap(steps.sub(pat._steps)), pat))),
     pats,
   );
 }
 
 export function stackCentre(...pats) {
   return _stackWith(
-    (tactus, pats) =>
+    (steps, pats) =>
       pats.map((pat) => {
-        if (pat.tactus.eq(tactus)) {
+        if (pat._steps.eq(steps)) {
           return pat;
         }
-        const g = gap(tactus.sub(pat.tactus).div(2));
-        return s_cat(g, pat, g);
+        const g = gap(steps.sub(pat._steps).div(2));
+        return stepcat(g, pat, g);
       }),
     pats,
   );
 }
 
 export function stackBy(by, ...pats) {
-  const [left, ...right] = pats.map((pat) => pat.tactus);
-  const tactus = left.maximum(...right);
+  const [left, ...right] = pats.map((pat) => pat._steps);
+  const steps = left.maximum(...right);
   const lookup = {
     centre: stackCentre,
     left: stackLeft,
     right: stackRight,
     expand: stack,
-    repeat: (...args) => s_polymeterSteps(tactus, ...args),
+    repeat: (...args) => polymeterSteps(steps, ...args),
   };
   return by
     .inhabit(lookup)
     .fmap((func) => func(...pats))
     .innerJoin()
-    .setTactus(tactus);
+    .setSteps(steps);
 }
 
 /** Concatenation: combines a list of patterns, switching between them successively, one per cycle:
@@ -1358,8 +1358,8 @@ export function slowcat(...pats) {
     const offset = span.begin.floor().sub(span.begin.div(pats.length).floor());
     return pat.withHapTime((t) => t.add(offset)).query(state.setSpan(span.withTime((t) => t.sub(offset))));
   };
-  const tactus = __tactus ? lcm(...pats.map((x) => x.tactus)) : undefined;
-  return new Pattern(query).splitQueries().setTactus(tactus);
+  const steps = __steps ? lcm(...pats.map((x) => x._steps)) : undefined;
+  return new Pattern(query).splitQueries().setSteps(steps);
 }
 
 /** Concatenation: combines a list of patterns, switching between them successively, one per cycle. Unlike slowcat, this version will skip cycles.
@@ -1409,7 +1409,7 @@ export function cat(...pats) {
 export function arrange(...sections) {
   const total = sections.reduce((sum, [cycles]) => sum + cycles, 0);
   sections = sections.map(([cycles, section]) => [cycles, section.fast(cycles)]);
-  return s_cat(...sections).slow(total);
+  return stepcat(...sections).slow(total);
 }
 
 /**
@@ -1446,10 +1446,10 @@ export function fastcat(...pats) {
   let result = slowcat(...pats);
   if (pats.length > 1) {
     result = result._fast(pats.length);
-    result.tactus = pats.length;
+    result._steps = pats.length;
   }
-  if (pats.length == 1 && pats[0].__tactus_source) {
-    pats.tactus = pats[0].tactus;
+  if (pats.length == 1 && pats[0].__steps_source) {
+    pats._steps = pats[0]._steps;
   }
   return result;
 }
@@ -1536,11 +1536,11 @@ export const func = curry((a, b) => reify(b).func(a));
  * @noAutocomplete
  *
  */
-export function register(name, func, patternify = true, preserveTactus = false, join = (x) => x.innerJoin()) {
+export function register(name, func, patternify = true, preserveSteps = false, join = (x) => x.innerJoin()) {
   if (Array.isArray(name)) {
     const result = {};
     for (const name_item of name) {
-      result[name_item] = register(name_item, func, patternify);
+      result[name_item] = register(name_item, func, patternify, preserveSteps, join);
     }
     return result;
   }
@@ -1576,8 +1576,8 @@ export function register(name, func, patternify = true, preserveTactus = false,
           result = join(right.reduce((acc, p) => acc.appLeft(p), left.fmap(mapFn)));
         }
       }
-      if (preserveTactus) {
-        result.tactus = pat.tactus;
+      if (preserveSteps) {
+        result._steps = pat._steps;
       }
       return result;
     };
@@ -1585,8 +1585,8 @@ export function register(name, func, patternify = true, preserveTactus = false,
     pfunc = function (...args) {
       args = args.map(reify);
       const result = func(...args);
-      if (preserveTactus) {
-        result.tactus = args[args.length - 1].tactus;
+      if (preserveSteps) {
+        result._steps = args[args.length - 1]._steps;
       }
       return result;
     };
@@ -1609,8 +1609,8 @@ export function register(name, func, patternify = true, preserveTactus = false,
     // version, prefixed by '_'
     Pattern.prototype['_' + name] = function (...args) {
       const result = func(...args, this);
-      if (preserveTactus) {
-        result.setTactus(this.tactus);
+      if (preserveSteps) {
+        result.setSteps(this._steps);
       }
       return result;
     };
@@ -1622,8 +1622,8 @@ export function register(name, func, patternify = true, preserveTactus = false,
 }
 
 // Like register, but defaults to stepJoin
-function stepRegister(name, func, patternify = true, preserveTactus = false, join = (x) => x.stepJoin()) {
-  return register(name, func, patternify, preserveTactus, join);
+function stepRegister(name, func, patternify = true, preserveSteps = false, join = (x) => x.stepJoin()) {
+  return register(name, func, patternify, preserveSteps, join);
 }
 
 //////////////////////////////////////////////////////////////////////
@@ -1833,8 +1833,8 @@ export const { focusSpan, focusspan } = register(['focusSpan', 'focusspan'], fun
  */
 export const ply = register('ply', function (factor, pat) {
   const result = pat.fmap((x) => pure(x)._fast(factor)).squeezeJoin();
-  if (__tactus) {
-    result.tactus = Fraction(factor).mulmaybe(pat.tactus);
+  if (__steps) {
+    result._steps = Fraction(factor).mulmaybe(pat._steps);
   }
   return result;
 });
@@ -1858,7 +1858,7 @@ export const { fast, density } = register(
     }
     factor = Fraction(factor);
     const fastQuery = pat.withQueryTime((t) => t.mul(factor));
-    return fastQuery.withHapTime((t) => t.div(factor)).setTactus(pat.tactus);
+    return fastQuery.withHapTime((t) => t.div(factor)).setSteps(pat._steps);
   },
   true,
   true,
@@ -2030,12 +2030,12 @@ export const zoom = register('zoom', function (s, e, pat) {
     return nothing;
   }
   const d = e.sub(s);
-  const tactus = __tactus ? pat.tactus.mulmaybe(d) : undefined;
+  const steps = __steps ? pat._steps.mulmaybe(d) : undefined;
   return pat
     .withQuerySpan((span) => span.withCycle((t) => t.mul(d).add(s)))
     .withHapSpan((span) => span.withCycle((t) => t.sub(s).div(d)))
     .splitQueries()
-    .setTactus(tactus);
+    .setSteps(steps);
 });
 
 export const { zoomArc, zoomarc } = register(['zoomArc', 'zoomarc'], function (a, pat) {
@@ -2097,7 +2097,7 @@ export const linger = register(
  * note(saw.range(40,52).segment(24))
  */
 export const segment = register('segment', function (rate, pat) {
-  return pat.struct(pure(true)._fast(rate)).setTactus(rate);
+  return pat.struct(pure(true)._fast(rate)).setSteps(rate);
 });
 
 /**
@@ -2273,7 +2273,7 @@ export const { juxBy, juxby } = register(['juxBy', 'juxby'], function (by, func,
   const left = pat.withValue((val) => Object.assign({}, val, { pan: elem_or(val, 'pan', 0.5) - by }));
   const right = func(pat.withValue((val) => Object.assign({}, val, { pan: elem_or(val, 'pan', 0.5) + by })));
 
-  return stack(left, right).setTactus(__tactus ? lcm(left.tactus, right.tactus) : undefined);
+  return stack(left, right).setSteps(__steps ? lcm(left._steps, right._steps) : undefined);
 });
 
 /**
@@ -2533,16 +2533,15 @@ export const within = register('within', (a, b, fn, pat) =>
 );
 
 //////////////////////////////////////////////////////////////////////
-// Tactus-related functions, i.e. ones that do stepwise
-// transformations
+// Stepwise functions
 
 Pattern.prototype.stepJoin = function () {
   const pp = this;
-  const first_t = s_cat(..._retime(_slices(pp.queryArc(0, 1)))).tactus;
+  const first_t = stepcat(..._retime(_slices(pp.queryArc(0, 1))))._steps;
   const q = function (state) {
     const shifted = pp.early(state.span.begin.sam());
     const haps = shifted.query(state.setSpan(new TimeSpan(Fraction(0), Fraction(1))));
-    const pat = s_cat(..._retime(_slices(haps)));
+    const pat = stepcat(..._retime(_slices(haps)));
     return pat.query(state);
   };
   return new Pattern(q, first_t);
@@ -2553,17 +2552,17 @@ Pattern.prototype.stepBind = function (func) {
 };
 
 export function _retime(timedHaps) {
-  const occupied_perc = timedHaps.filter((t, pat) => pat.hasTactus).reduce((a, b) => a.add(b), Fraction(0));
-  const occupied_tactus = removeUndefineds(timedHaps.map((t, pat) => pat.tactus)).reduce(
+  const occupied_perc = timedHaps.filter((t, pat) => pat.hasSteps).reduce((a, b) => a.add(b), Fraction(0));
+  const occupied_steps = removeUndefineds(timedHaps.map((t, pat) => pat._steps)).reduce(
     (a, b) => a.add(b),
     Fraction(0),
   );
-  const total_tactus = occupied_perc.eq(0) ? undefined : occupied_tactus.div(occupied_perc);
+  const total_steps = occupied_perc.eq(0) ? undefined : occupied_steps.div(occupied_perc);
   function adjust(dur, pat) {
-    if (pat.tactus === undefined) {
-      return [dur.mulmaybe(total_tactus), pat];
+    if (pat._steps === undefined) {
+      return [dur.mulmaybe(total_steps), pat];
     }
-    return [pat.tactus, pat];
+    return [pat._steps, pat];
   }
   return timedHaps.map((x) => adjust(...x));
 }
@@ -2593,20 +2592,22 @@ export function _match(span, hap_p) {
 }
 
 /**
- * *EXPERIMENTAL* - Speeds a pattern up or down, to fit to the given number of steps per cycle (aka tactus).
+ * *Experimental*
+ *
+ * Speeds a pattern up or down, to fit to the given number of steps per cycle.
  * @example
- * s("bd sd cp").steps(4)
- * // The same as s("{bd sd cp}%4")
+ * sound("bd sd cp").pace(4)
+ * // The same as sound("{bd sd cp}%4") or sound("*4")
  */
-export const steps = register('steps', function (targetTactus, pat) {
-  if (pat.tactus === undefined) {
+export const pace = register('pace', function (targetSteps, pat) {
+  if (pat._steps === undefined) {
     return pat;
   }
-  if (pat.tactus.eq(Fraction(0))) {
+  if (pat._steps.eq(Fraction(0))) {
     // avoid divide by zero..
     return nothing;
   }
-  return pat._fast(Fraction(targetTactus).div(pat.tactus)).setTactus(targetTactus);
+  return pat._fast(Fraction(targetSteps).div(pat._steps)).setSteps(targetSteps);
 });
 
 export function _polymeterListSteps(steps, ...args) {
@@ -2632,17 +2633,18 @@ export function _polymeterListSteps(steps, ...args) {
 }
 
 /**
- * Aligns one or more given patterns to the given number of steps per cycle.
- * This relies on patterns having coherent number of steps per cycle,
+ * *Experimental*
  *
- * @name s_polymeterSteps
+ * Aligns the steps of the patterns, to match the given number of steps per cycle, creating polymeters.
+ *
+ * @name polymeterSteps
  * @param  {number} steps how many items are placed in one cycle
  * @param  {any[]} patterns one or more patterns
  * @example
  * // the same as "{c d, e f g}%4"
- * s_polymeterSteps(4, "c d", "e f g").note()
+ * polymeterSteps(4, "c d", "e f g").note()
  */
-export function s_polymeterSteps(steps, ...args) {
+export function polymeterSteps(steps, ...args) {
   if (args.length == 0) {
     return silence;
   }
@@ -2651,59 +2653,61 @@ export function s_polymeterSteps(steps, ...args) {
     return _polymeterListSteps(steps, ...args);
   }
 
-  return s_polymeter(...args).steps(steps);
+  return polymeter(...args).pace(steps);
 }
 
 /**
- * *EXPERIMENTAL* - Combines the given lists of patterns with the same pulse, creating polymeters when different sized sequences are used.
+ * *Experimental*
+ *
+ * Aligns the steps of the patterns, to match the steps per cycle of the first pattern, creating polymeters. See `polymeterSteps` to set the target steps explicitly.
  * @synonyms pm
  * @example
  * // The same as note("{c eb g, c2 g2}")
- * s_polymeter("c eb g", "c2 g2").note()
+ * polymeter("c eb g", "c2 g2").note()
  *
  */
-export function s_polymeter(...args) {
+export function polymeter(...args) {
   if (Array.isArray(args[0])) {
     // Support old behaviour
     return _polymeterListSteps(0, ...args);
   }
 
-  // TODO currently ignoring arguments without tactus...
-  args = args.filter((arg) => arg.hasTactus);
+  // TODO currently ignoring arguments without steps...
+  args = args.filter((arg) => arg.hasSteps);
 
   if (args.length == 0) {
     return silence;
   }
-  const tactus = args[0].tactus;
-  if (tactus.eq(Fraction(0))) {
+  const steps = args[0]._steps;
+  if (steps.eq(Fraction(0))) {
     return nothing;
   }
   const [head, ...tail] = args;
 
-  const result = stack(head, ...tail.map((pat) => pat._slow(pat.tactus.div(tactus))));
-  result.tactus = tactus;
+  const result = stack(head, ...tail.map((pat) => pat._slow(pat._steps.div(steps))));
+  result._steps = steps;
   return result;
 }
 
-/** Sequences patterns like `seq`, but each pattern has a length, relative to the whole.
- * This length can either be provided as a [length, pattern] pair, or inferred from
- * the pattern's 'tactus', generally inferred by the mininotation. Has the alias `timecat`.
- * @name s_cat
+/** 'Concatenates' patterns like `fastcat`, but proportional to a number of steps per cycle.
+ * The steps can either be inferred from the pattern, or provided as a [length, pattern] pair.
+ * Has the alias `timecat`.
+ * @name stepcat
  * @synonyms timeCat, timecat
  * @return {Pattern}
  * @example
- * s_cat([3,"e3"],[1, "g3"]).note()
+ * stepcat([3,"e3"],[1, "g3"]).note()
  * // the same as "e3@3 g3".note()
  * @example
- * s_cat("bd sd cp","hh hh").sound()
+ * stepcat("bd sd cp","hh hh").sound()
  * // the same as "bd sd cp hh hh".sound()
  */
-export function s_cat(...timepats) {
+export function stepcat(...timepats) {
   if (timepats.length === 0) {
     return nothing;
   }
-  const findtactus = (x) => (Array.isArray(x) ? x : [x.tactus, x]);
-  timepats = timepats.map(findtactus);
+  const findsteps = (x) => (Array.isArray(x) ? x : [x._steps, x]);
+  timepats = timepats.map(findsteps);
   if (timepats.find((x) => x[0] === undefined)) {
     const times = timepats.map((a) => a[0]).filter((x) => x !== undefined);
     if (times.length === 0) {
@@ -2721,7 +2725,7 @@ export function s_cat(...timepats) {
   }
   if (timepats.length == 1) {
     const result = reify(timepats[0][1]);
-    return result.withTactus((_) => timepats[0][0]);
+    return result.withSteps((_) => timepats[0][0]);
   }
 
   const total = timepats.map((a) => a[0]).reduce((a, b) => a.add(b), Fraction(0));
@@ -2736,23 +2740,22 @@ export function s_cat(...timepats) {
     begin = end;
   }
   const result = stack(...pats);
-  result.tactus = total;
+  result._steps = total;
   return result;
 }
 
-/** Aliases for `s_cat` */
-export const timecat = s_cat;
-export const timeCat = s_cat;
-
 /**
- * *EXPERIMENTAL* - Concatenates patterns stepwise, according to their 'tactus'.
- * Similar to `s_cat`, but if an argument is a list, the whole pattern will alternate between the elements in the list.
+ * *Experimental*
+ *
+ * Concatenates patterns stepwise, according to an inferred 'steps per cycle'.
+ * Similar to `stepcat`, but if an argument is a list, the whole pattern will alternate between the elements in the list.
  *
  * @return {Pattern}
  * @example
- * s_alt(["bd cp", "mt"], "bd").sound()
+ * stepalt(["bd cp", "mt"], "bd").sound()
+ * // The same as "bd cp bd mt bd".sound()
  */
-export function s_alt(...groups) {
+export function stepalt(...groups) {
   groups = groups.map((a) => (Array.isArray(a) ? a.map(reify) : [reify(a)]));
 
   const cycles = lcm(...groups.map((x) => Fraction(x.length)));
@@ -2761,21 +2764,34 @@ export function s_alt(...groups) {
   for (let cycle = 0; cycle < cycles; ++cycle) {
     result.push(...groups.map((x) => (x.length == 0 ? silence : x[cycle % x.length])));
   }
-  result = result.filter((x) => x.hasTactus && x.tactus > 0);
-  const tactus = result.reduce((a, b) => a.add(b.tactus), Fraction(0));
-  result = s_cat(...result);
-  result.tactus = tactus;
+  result = result.filter((x) => x.hasSteps && x._steps > 0);
+  const steps = result.reduce((a, b) => a.add(b._steps), Fraction(0));
+  result = stepcat(...result);
+  result._steps = steps;
   return result;
 }
 
 /**
- * *EXPERIMENTAL* - Retains the given number of steps in a pattern (and dropping the rest), according to its 'tactus'.
+ * *Experimental*
+ *
+ * Takes the given number of steps from a pattern (dropping the rest).
+ * A positive number will take steps from the start of a pattern, and a negative number from the end.
+ * @return {Pattern}
+ * @example
+ * "bd cp ht mt".take("2").sound()
+ * // The same as "bd cp".sound()
+ * @example
+ * "bd cp ht mt".take("1 2 3").sound()
+ * // The same as "bd bd cp bd cp ht".sound()
+ * @example
+ * "bd cp ht mt".take("-1 -2 -3").sound()
+ * // The same as "mt ht mt cp ht mt".sound()
  */
-export const s_add = stepRegister('s_add', function (i, pat) {
-  if (!pat.hasTactus) {
+export const take = stepRegister('take', function (i, pat) {
+  if (!pat.hasSteps) {
     return nothing;
   }
-  if (pat.tactus.lte(0)) {
+  if (pat._steps.lte(0)) {
     return nothing;
   }
   i = Fraction(i);
@@ -2786,7 +2802,7 @@ export const s_add = stepRegister('s_add', function (i, pat) {
   if (flip) {
     i = i.abs();
   }
-  const frac = i.div(pat.tactus);
+  const frac = i.div(pat._steps);
   if (frac.lte(0)) {
     return nothing;
   }
@@ -2800,77 +2816,117 @@ export const s_add = stepRegister('s_add', function (i, pat) {
 });
 
 /**
- * *EXPERIMENTAL* - Removes the given number of steps from a pattern, according to its 'tactus'.
+ * *Experimental*
+ *
+ * Drops the given number of steps from a pattern.
+ * A positive number will drop steps from the start of a pattern, and a negative number from the end.
+ * @return {Pattern}
+ * @example
+ * "bd cp ht mt".drop("1").sound()
+ * // The same as "cp ht mt".sound()
+ * @example
+ * "bd cp ht mt".drop("-1").sound()
+ * // The same as "bd cp ht".sound()
+ * @example
+ * "bd cp ht mt".drop("1 2 3").sound()
+ * // The same as "cp ht mt ht mt mt".sound()
+ * @example
+ * "bd cp ht mt".drop("-1 -2 -3").sound()
+ * // The same as "bd cp ht bd cp bd".sound()
  */
-export const s_sub = stepRegister('s_sub', function (i, pat) {
-  if (!pat.hasTactus) {
+export const drop = stepRegister('drop', function (i, pat) {
+  if (!pat.hasSteps) {
     return nothing;
   }
 
   i = Fraction(i);
   if (i.lt(0)) {
-    return pat.s_add(Fraction(0).sub(pat.tactus.add(i)));
+    return pat.take(pat._steps.add(i));
   }
-  return pat.s_add(pat.tactus.sub(i));
+  return pat.take(Fraction(0).sub(pat._steps.sub(i)));
 });
 
-export const s_extend = stepRegister('s_extend', function (factor, pat) {
-  return pat.fast(factor).s_expand(factor);
+export const repeat = stepRegister('repeat', function (factor, pat) {
+  return pat.fast(factor).expand(factor);
 });
 
-export const s_expand = stepRegister('s_expand', function (factor, pat) {
-  return pat.withTactus((t) => t.mul(Fraction(factor)));
+export const expand = stepRegister('expand', function (factor, pat) {
+  return pat.withSteps((t) => t.mul(Fraction(factor)));
 });
 
-export const s_contract = stepRegister('s_contract', function (factor, pat) {
-  return pat.withTactus((t) => t.div(Fraction(factor)));
+export const contract = stepRegister('contract', function (factor, pat) {
+  return pat.withSteps((t) => t.div(Fraction(factor)));
 });
 
-/**
- * *EXPERIMENTAL*
- */
-Pattern.prototype.s_taperlist = function (amount, times) {
+Pattern.prototype.shrinklist = function (amount) {
   const pat = this;
 
-  if (!pat.hasTactus) {
+  if (!pat.hasSteps) {
     return [pat];
   }
 
-  times = times - 1;
+  let [amountv, times] = Array.isArray(amount) ? amount : [amount, pat._steps];
+  amountv = Fraction(amountv);
 
-  if (times === 0) {
+  if (times === 0 || amountv === 0) {
     return [pat];
   }
 
-  const list = [];
-  const reverse = amount > 0;
-  amount = Fraction(Math.abs(amount));
-  const start = pat.tactus.sub(amount.mul(Fraction(times))).max(Fraction(0));
-
-  for (let i = 0; i < times; ++i) {
-    list.push(pat.zoom(0, start.add(amount.mul(Fraction(i))).div(pat.tactus)));
+  const fromstart = amountv > 0;
+  const ranges = [];
+  if (fromstart) {
+    const seg = Fraction(1).div(pat._steps).mul(amountv);
+    for (let i = 0; i < times; ++i) {
+      const s = seg.mul(i);
+      if (s.gt(1)) {
+        break;
+      }
+      ranges.push([s, 1]);
+    }
+  } else {
+    amountv = Fraction(0).sub(amountv);
+    const seg = Fraction(1).div(pat._steps).mul(amountv);
+    for (let i = 0; i < times; ++i) {
+      const e = Fraction(1).sub(seg.mul(i));
+      if (e.lt(0)) {
+        break;
+      }
+      ranges.push([Fraction(0), e]);
+    }
   }
-  list.push(pat);
-  if (reverse) {
-    list.reverse();
-  }
-  return list;
+  return ranges.map((x) => pat.zoom(...x));
 };
-export const s_taperlist = (amount, times, pat) => pat.s_taperlist(amount, times);
+
+export const shrinklist = (amount, pat) => pat.shrinklist(amount);
 
 /**
- * *EXPERIMENTAL*
+ * *Experimental*
+ *
+ * Progressively shrinks the pattern by 'n' steps until there's nothing left, or if a second value is given (using mininotation list syntax with `:`),
+ * that number of times.
+ * A positive number will progressively drop steps from the start of a pattern, and a negative number from the end.
+ * @return {Pattern}
+ * @example
+ * "bd cp ht mt".shrink("1").sound()
+ * // The same as "bd cp ht mt".drop("0 1 2 3").sound()
+ * @example
+ * "bd cp ht mt".shrink("-1").sound()
+ * // The same as "bd cp ht mt".drop("0 -1 -2 -3").sound()
+ * @example
+ * "bd cp ht mt".grow("1 -1").sound()
  */
-export const s_taper = register(
-  's_taper',
-  function (amount, times, pat) {
-    if (!pat.hasTactus) {
+
+export const shrink = register(
+  'shrink',
+  function (amount, pat) {
+    if (!pat.hasSteps) {
       return nothing;
     }
 
-    const list = pat.s_taperlist(amount, times);
-    const result = s_cat(...list);
-    result.tactus = list.reduce((a, b) => a.add(b.tactus), Fraction(0));
+    const list = pat.shrinklist(amount);
+    const result = stepcat(...list);
+    // TODO is this calculation needed?
+    result._steps = list.reduce((a, b) => a.add(b._steps), Fraction(0));
     return result;
   },
   true,
@@ -2879,10 +2935,58 @@ export const s_taper = register(
 );
 
 /**
- * *EXPERIMENTAL*
+ * *Experimental*
+ *
+ * Progressively grows the pattern by 'n' steps until the full pattern is played, or if a second value is given (using mininotation list syntax with `:`),
+ * that number of times.
+ * A positive number will progressively grow steps from the start of a pattern, and a negative number from the end.
+ * @return {Pattern}
+ * @example
+ * "bd cp ht mt".grow("1").sound()
+ * // The same as "bd cp ht mt".take("1 2 3 4")
+ * @example
+ * "bd cp ht mt".grow("-1").sound()
+ * // The same as "bd cp ht mt".take("-1 -2 -3 -4")
  */
-Pattern.prototype.s_tour = function (...many) {
-  return s_cat(
+
+export const grow = register(
+  'grow',
+  function (amount, pat) {
+    if (!pat.hasSteps) {
+      return nothing;
+    }
+
+    const list = pat.shrinklist(Fraction(0).sub(amount));
+    list.reverse();
+    const result = stepcat(...list);
+    // TODO is this calculation needed?
+    result._steps = list.reduce((a, b) => a.add(b._steps), Fraction(0));
+    return result;
+  },
+  true,
+  false,
+  (x) => x.stepJoin(),
+);
+
+/**
+ * *Experimental*
+ * 
+ * Inserts a pattern into a list of patterns. On the first repetition it will be inserted at the end of the list, then moved backwards through the list 
+ * on successive repetitions. The patterns are added together stepwise, with all repetitions taking place over a single cycle. Using `pace` to set the 
+ * number of steps per cycle is therefore usually recommended.
+ * 
+ * @return {Pattern}
+ * @example
+ * "[c g]".tour("e f", "e f g", "g f e c").note()
+   .sound("folkharp")
+   .pace(8)
+ */
+export const tour = function (pat, ...many) {
+  return pat.tour(...many);
+};
+
+Pattern.prototype.tour = function (...many) {
+  return stepcat(
     ...[].concat(
       ...many.map((x, i) => [...many.slice(0, many.length - i), this, ...many.slice(many.length - i)]),
       this,
@@ -2891,16 +2995,56 @@ Pattern.prototype.s_tour = function (...many) {
   );
 };
 
-export const s_tour = function (pat, ...many) {
-  return pat.s_tour(...many);
+/**
+ * *Experimental*
+ * 
+ * 'zips' together the steps of the provided patterns. This can create a long repetition, taking place over a single, dense cycle. 
+ * Using `pace` to set the number of steps per cycle is therefore usually recommended.
+ * 
+ * @returns {Pattern}
+ * @example
+ * zip("e f", "e f g", "g [f e] a f4 c").note()
+   .sound("folkharp")
+   .pace(8)
+ */
+export const zip = function (...pats) {
+  pats = pats.filter((pat) => pat.hasSteps);
+  const zipped = slowcat(...pats.map((pat) => pat._slow(pat._steps)));
+  const steps = lcm(...pats.map((x) => x._steps));
+  return zipped._fast(steps).setSteps(steps);
 };
 
-const s_zip = function (...pats) {
-  pats = pats.filter((pat) => pat.hasTactus);
-  const zipped = slowcat(...pats.map((pat) => pat._slow(pat.tactus)));
-  // Should maybe use lcm or gcd for tactus?
-  return zipped._fast(pats[0].tactus).setTactus(pats[0].tactus);
-};
+/** Aliases for `stepcat` */
+export const timecat = stepcat;
+export const timeCat = stepcat;
+
+// Deprecated stepwise aliases
+export const s_cat = stepcat;
+export const s_alt = stepalt;
+export const s_polymeterSteps = polymeterSteps;
+Pattern.prototype.s_polymeterSteps = Pattern.prototype.polymeterSteps;
+export const s_polymeter = polymeter;
+Pattern.prototype.s_polymeter = Pattern.prototype.polymeter;
+export const s_taper = shrink;
+Pattern.prototype.s_taper = Pattern.prototype.shrink;
+export const s_taperlist = shrinklist;
+Pattern.prototype.s_taperlist = Pattern.prototype.shrinklist;
+export const s_add = take;
+Pattern.prototype.s_add = Pattern.prototype.take;
+export const s_sub = drop;
+Pattern.prototype.s_sub = Pattern.prototype.drop;
+export const s_expand = expand;
+Pattern.prototype.s_expand = Pattern.prototype.expand;
+export const s_extend = repeat;
+Pattern.prototype.s_extend = Pattern.prototype.repeat;
+export const s_contract = contract;
+Pattern.prototype.s_contract = Pattern.prototype.contract;
+export const s_tour = tour;
+Pattern.prototype.s_tour = Pattern.prototype.tour;
+export const s_zip = zip;
+Pattern.prototype.s_zip = Pattern.prototype.zip;
+export const steps = pace;
+Pattern.prototype.steps = Pattern.prototype.pace;
 
 //////////////////////////////////////////////////////////////////////
 // Control-related functions, i.e. ones that manipulate patterns of
@@ -2934,7 +3078,7 @@ export const chop = register('chop', function (n, pat) {
   const func = function (o) {
     return sequence(slice_objects.map((slice_o) => merge(o, slice_o)));
   };
-  return pat.squeezeBind(func).setTactus(__tactus ? Fraction(n).mulmaybe(pat.tactus) : undefined);
+  return pat.squeezeBind(func).setSteps(__steps ? Fraction(n).mulmaybe(pat._steps) : undefined);
 });
 
 /**
@@ -2952,7 +3096,7 @@ export const striate = register('striate', function (n, pat) {
   return pat
     .set(slicePat)
     ._fast(n)
-    .setTactus(__tactus ? Fraction(n).mulmaybe(pat.tactus) : undefined);
+    .setSteps(__steps ? Fraction(n).mulmaybe(pat._steps) : undefined);
 });
 
 /**
@@ -3001,7 +3145,7 @@ export const slice = register(
           }),
         ),
       )
-      .setTactus(ipat.tactus);
+      .setSteps(ipat._steps);
   },
   false, // turns off auto-patternification
 );
@@ -3032,14 +3176,14 @@ export const splice = register(
           ...v,
         })),
       );
-    }).setTactus(ipat.tactus);
+    }).setSteps(ipat._steps);
   },
   false, // turns off auto-patternification
 );
 
 export const { loopAt, loopat } = register(['loopAt', 'loopat'], function (factor, pat) {
-  const tactus = pat.tactus ? pat.tactus.div(factor) : undefined;
-  return new Pattern((state) => _loopAt(factor, pat, state.controls._cps).query(state), tactus);
+  const steps = pat._steps ? pat._steps.div(factor) : undefined;
+  return new Pattern((state) => _loopAt(factor, pat, state.controls._cps).query(state), steps);
 });
 
 /**
diff --git a/packages/core/test/controls.test.mjs b/packages/core/test/controls.test.mjs
index 9dcbd830..f0af02eb 100644
--- a/packages/core/test/controls.test.mjs
+++ b/packages/core/test/controls.test.mjs
@@ -30,14 +30,14 @@ describe('controls', () => {
     expect(s(mini('bd').pan(1)).firstCycleValues).toEqual([{ s: 'bd', pan: 1 }]);
     expect(s(mini('bd:1').pan(1)).firstCycleValues).toEqual([{ s: 'bd', n: 1, pan: 1 }]);
   });
-  it('preserves tactus of the left pattern', () => {
-    expect(s(mini('bd cp mt').pan(mini('1 2 3 4'))).tactus).toEqual(Fraction(3));
+  it('preserves step count of the left pattern', () => {
+    expect(s(mini('bd cp mt').pan(mini('1 2 3 4')))._steps).toEqual(Fraction(3));
   });
-  it('preserves tactus of the right pattern for .out', () => {
-    expect(s(mini('bd cp mt').set.out(pan(mini('1 2 3 4')))).tactus).toEqual(Fraction(4));
+  it('preserves step count of the right pattern for .out', () => {
+    expect(s(mini('bd cp mt').set.out(pan(mini('1 2 3 4'))))._steps).toEqual(Fraction(4));
   });
-  it('combines tactus of the pattern for .mix as lcm', () => {
-    expect(s(mini('bd cp mt').set.mix(pan(mini('1 2 3 4')))).tactus).toEqual(Fraction(12));
+  it('combines step count of the pattern for .mix as lcm', () => {
+    expect(s(mini('bd cp mt').set.mix(pan(mini('1 2 3 4'))))._steps).toEqual(Fraction(12));
   });
   it('finds control name by alias', () => {
     expect(getControlName('lpf')).toEqual('cutoff');
diff --git a/packages/core/test/pattern.test.mjs b/packages/core/test/pattern.test.mjs
index 7e6d8fd8..1a7a203d 100644
--- a/packages/core/test/pattern.test.mjs
+++ b/packages/core/test/pattern.test.mjs
@@ -21,8 +21,8 @@ import {
   cat,
   sequence,
   palindrome,
-  s_polymeter,
-  s_polymeterSteps,
+  polymeter,
+  polymeterSteps,
   polyrhythm,
   silence,
   fast,
@@ -51,8 +51,8 @@ import {
   stackLeft,
   stackRight,
   stackCentre,
-  s_cat,
-  calculateTactus,
+  stepcat,
+  sometimes,
 } from '../index.mjs';
 
 import { steady } from '../signal.mjs';
@@ -609,18 +609,18 @@ describe('Pattern', () => {
       );
     });
   });
-  describe('s_polymeter()', () => {
+  describe('polymeter()', () => {
     it('Can layer up cycles, stepwise, with lists', () => {
-      expect(s_polymeterSteps(3, ['d', 'e']).firstCycle()).toStrictEqual(
+      expect(polymeterSteps(3, ['d', 'e']).firstCycle()).toStrictEqual(
         fastcat(pure('d'), pure('e'), pure('d')).firstCycle(),
       );
 
-      expect(s_polymeter(['a', 'b', 'c'], ['d', 'e']).fast(2).firstCycle()).toStrictEqual(
+      expect(polymeter(['a', 'b', 'c'], ['d', 'e']).fast(2).firstCycle()).toStrictEqual(
         stack(sequence('a', 'b', 'c', 'a', 'b', 'c'), sequence('d', 'e', 'd', 'e', 'd', 'e')).firstCycle(),
       );
     });
     it('Can layer up cycles, stepwise, with weighted patterns', () => {
-      sameFirst(s_polymeterSteps(3, sequence('a', 'b')).fast(2), sequence('a', 'b', 'a', 'b', 'a', 'b'));
+      sameFirst(polymeterSteps(3, sequence('a', 'b')).fast(2), sequence('a', 'b', 'a', 'b', 'a', 'b'));
     });
   });
 
@@ -1140,130 +1140,135 @@ describe('Pattern', () => {
       );
     });
   });
-  describe('tactus', () => {
+  describe('_steps', () => {
     it('Is correctly preserved/calculated through transformations', () => {
-      expect(sequence(0, 1, 2, 3).linger(4).tactus).toStrictEqual(Fraction(4));
-      expect(sequence(0, 1, 2, 3).iter(4).tactus).toStrictEqual(Fraction(4));
-      expect(sequence(0, 1, 2, 3).fast(4).tactus).toStrictEqual(Fraction(4));
-      expect(sequence(0, 1, 2, 3).hurry(4).tactus).toStrictEqual(Fraction(4));
-      expect(sequence(0, 1, 2, 3).rev().tactus).toStrictEqual(Fraction(4));
-      expect(sequence(1).segment(10).tactus).toStrictEqual(Fraction(10));
-      expect(sequence(1, 0, 1).invert().tactus).toStrictEqual(Fraction(3));
-      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).chop(4).tactus).toStrictEqual(Fraction(8));
-      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).striate(4).tactus).toStrictEqual(Fraction(8));
-      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).slice(4, sequence(0, 1, 2, 3)).tactus).toStrictEqual(
+      expect(sequence(0, 1, 2, 3).linger(4)._steps).toStrictEqual(Fraction(4));
+      expect(sequence(0, 1, 2, 3).iter(4)._steps).toStrictEqual(Fraction(4));
+      expect(sequence(0, 1, 2, 3).fast(4)._steps).toStrictEqual(Fraction(4));
+      expect(sequence(0, 1, 2, 3).hurry(4)._steps).toStrictEqual(Fraction(4));
+      expect(sequence(0, 1, 2, 3).rev()._steps).toStrictEqual(Fraction(4));
+      expect(sequence(1).segment(10)._steps).toStrictEqual(Fraction(10));
+      expect(sequence(1, 0, 1).invert()._steps).toStrictEqual(Fraction(3));
+      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).chop(4)._steps).toStrictEqual(Fraction(8));
+      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).striate(4)._steps).toStrictEqual(Fraction(8));
+      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).slice(4, sequence(0, 1, 2, 3))._steps).toStrictEqual(
         Fraction(4),
       );
-      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).splice(4, sequence(0, 1, 2, 3)).tactus).toStrictEqual(
+      expect(sequence({ s: 'bev' }, { s: 'amenbreak' }).splice(4, sequence(0, 1, 2, 3))._steps).toStrictEqual(
         Fraction(4),
       );
-      expect(sequence({ n: 0 }, { n: 1 }, { n: 2 }).chop(4).tactus).toStrictEqual(Fraction(12));
+      expect(sequence({ n: 0 }, { n: 1 }, { n: 2 }).chop(4)._steps).toStrictEqual(Fraction(12));
       expect(
         pure((x) => x + 1)
-          .setTactus(3)
-          .appBoth(pure(1).setTactus(2)).tactus,
+          .setSteps(3)
+          .appBoth(pure(1).setSteps(2))._steps,
       ).toStrictEqual(Fraction(6));
       expect(
         pure((x) => x + 1)
-          .setTactus(undefined)
-          .appBoth(pure(1).setTactus(2)).tactus,
+          .setSteps(undefined)
+          .appBoth(pure(1).setSteps(2))._steps,
       ).toStrictEqual(Fraction(2));
       expect(
         pure((x) => x + 1)
-          .setTactus(3)
-          .appBoth(pure(1).setTactus(undefined)).tactus,
+          .setSteps(3)
+          .appBoth(pure(1).setSteps(undefined))._steps,
       ).toStrictEqual(Fraction(3));
-      expect(stack(fastcat(0, 1, 2), fastcat(3, 4)).tactus).toStrictEqual(Fraction(6));
-      expect(stack(fastcat(0, 1, 2), fastcat(3, 4).setTactus(undefined)).tactus).toStrictEqual(Fraction(3));
-      expect(stackLeft(fastcat(0, 1, 2, 3), fastcat(3, 4)).tactus).toStrictEqual(Fraction(4));
-      expect(stackRight(fastcat(0, 1, 2), fastcat(3, 4)).tactus).toStrictEqual(Fraction(3));
+      expect(stack(fastcat(0, 1, 2), fastcat(3, 4))._steps).toStrictEqual(Fraction(6));
+      expect(stack(fastcat(0, 1, 2), fastcat(3, 4).setSteps(undefined))._steps).toStrictEqual(Fraction(3));
+      expect(stackLeft(fastcat(0, 1, 2, 3), fastcat(3, 4))._steps).toStrictEqual(Fraction(4));
+      expect(stackRight(fastcat(0, 1, 2), fastcat(3, 4))._steps).toStrictEqual(Fraction(3));
       // maybe this should double when they are either all even or all odd
-      expect(stackCentre(fastcat(0, 1, 2), fastcat(3, 4)).tactus).toStrictEqual(Fraction(3));
-      expect(fastcat(0, 1).ply(3).tactus).toStrictEqual(Fraction(6));
-      expect(fastcat(0, 1).setTactus(undefined).ply(3).tactus).toStrictEqual(undefined);
-      expect(fastcat(0, 1).fast(3).tactus).toStrictEqual(Fraction(2));
-      expect(fastcat(0, 1).setTactus(undefined).fast(3).tactus).toStrictEqual(undefined);
+      expect(stackCentre(fastcat(0, 1, 2), fastcat(3, 4))._steps).toStrictEqual(Fraction(3));
+      expect(fastcat(0, 1).ply(3)._steps).toStrictEqual(Fraction(6));
+      expect(fastcat(0, 1).setSteps(undefined).ply(3)._steps).toStrictEqual(undefined);
+      expect(fastcat(0, 1).fast(3)._steps).toStrictEqual(Fraction(2));
+      expect(fastcat(0, 1).setSteps(undefined).fast(3)._steps).toStrictEqual(undefined);
     });
   });
-  describe('s_cat', () => {
+  describe('stepcat', () => {
     it('can cat', () => {
-      expect(sameFirst(s_cat(fastcat(0, 1, 2, 3), fastcat(4, 5)), fastcat(0, 1, 2, 3, 4, 5)));
-      expect(sameFirst(s_cat(pure(1), pure(2), pure(3)), fastcat(1, 2, 3)));
+      expect(sameFirst(stepcat(fastcat(0, 1, 2, 3), fastcat(4, 5)), fastcat(0, 1, 2, 3, 4, 5)));
+      expect(sameFirst(stepcat(pure(1), pure(2), pure(3)), fastcat(1, 2, 3)));
     });
-    it('calculates undefined tactuses as the average', () => {
-      expect(sameFirst(s_cat(pure(1), pure(2), pure(3).setTactus(undefined)), fastcat(1, 2, 3)));
+    it('calculates undefined steps as the average', () => {
+      expect(sameFirst(stepcat(pure(1), pure(2), pure(3).setSteps(undefined)), fastcat(1, 2, 3)));
     });
   });
-  describe('s_taper', () => {
-    it('can taper', () => {
-      expect(sameFirst(sequence(0, 1, 2, 3, 4).s_taper(1, 5), sequence(0, 1, 2, 3, 4, 0, 1, 2, 3, 0, 1, 2, 0, 1, 0)));
+  describe('shrink', () => {
+    it('can shrink', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).shrink(1), sequence(0, 1, 2, 3, 4, 1, 2, 3, 4, 2, 3, 4, 3, 4, 4)));
     });
-    it('can taper backwards', () => {
-      expect(sameFirst(sequence(0, 1, 2, 3, 4).s_taper(-1, 5), sequence(0, 0, 1, 0, 1, 2, 0, 1, 2, 3, 0, 1, 2, 3, 4)));
+    it('can shrink backwards', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).shrink(-1), sequence(0, 1, 2, 3, 4, 0, 1, 2, 3, 0, 1, 2, 0, 1, 0)));
     });
   });
-  describe('s_add and s_sub', () => {
-    it('can add from the left', () => {
-      expect(sameFirst(sequence(0, 1, 2, 3, 4).s_add(2), sequence(0, 1)));
+  describe('grow', () => {
+    it('can grow', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).grow(1), sequence(0, 0, 1, 0, 1, 2, 0, 1, 2, 3, 0, 1, 2, 3, 4)));
     });
-    it('can sub to the left', () => {
-      expect(sameFirst(sequence(0, 1, 2, 3, 4).s_sub(2), sequence(0, 1, 2)));
+    it('can grow backwards', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).grow(-1), sequence(4, 3, 4, 2, 3, 4, 1, 2, 3, 4, 0, 1, 2, 3, 4)));
     });
-    it('can add from the right', () => {
-      expect(sameFirst(sequence(0, 1, 2, 3, 4).s_add(-2), sequence(3, 4)));
+  });
+  describe('take and drop', () => {
+    it('can take from the left', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).take(2), sequence(0, 1)));
     });
-    it('can sub to the right', () => {
-      expect(sameFirst(sequence(0, 1, 2, 3, 4).s_sub(-2), sequence(2, 3, 4)));
+    it('can drop from the left', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).drop(2), sequence(2, 3, 4)));
     });
-    it('can subtract nothing', () => {
-      expect(sameFirst(pure('a').s_sub(0), pure('a')));
+    it('can take from the right', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).take(-2), sequence(3, 4)));
     });
-    it('can subtract nothing, repeatedly', () => {
-      expect(sameFirst(pure('a').s_sub(0, 0), fastcat('a', 'a')));
+    it('can drop from the right', () => {
+      expect(sameFirst(sequence(0, 1, 2, 3, 4).drop(-2), sequence(0, 1, 2)));
+    });
+    it('can drop nothing', () => {
+      expect(sameFirst(pure('a').drop(0), pure('a')));
+    });
+    it('can drop nothing, repeatedly', () => {
+      expect(sameFirst(pure('a').drop(0, 0), fastcat('a', 'a')));
       for (var i = 0; i < 100; ++i) {
-        expect(sameFirst(pure('a').s_sub(...Array(i).fill(0)), fastcat(...Array(i).fill('a'))));
+        expect(sameFirst(pure('a').drop(...Array(i).fill(0)), fastcat(...Array(i).fill('a'))));
       }
     });
   });
-  describe('s_expand', () => {
+  describe('expand', () => {
     it('can expand four things in half', () => {
       expect(
-        sameFirst(
-          sequence(0, 1, 2, 3).s_expand(1, 0.5),
-          s_cat(sequence(0, 1, 2, 3), sequence(0, 1, 2, 3).s_expand(0.5)),
-        ),
+        sameFirst(sequence(0, 1, 2, 3).expand(1, 0.5), stepcat(sequence(0, 1, 2, 3), sequence(0, 1, 2, 3).expand(0.5))),
       );
     });
     it('can expand five things in half', () => {
       expect(
         sameFirst(
-          sequence(0, 1, 2, 3, 4).s_expand(1, 0.5),
-          s_cat(sequence(0, 1, 2, 3, 4), sequence(0, 1, 2, 3, 4).s_expand(0.5)),
+          sequence(0, 1, 2, 3, 4).expand(1, 0.5),
+          stepcat(sequence(0, 1, 2, 3, 4), sequence(0, 1, 2, 3, 4).expand(0.5)),
         ),
       );
     });
   });
   describe('stepJoin', () => {
-    it('can join a pattern with a tactus of 2', () => {
+    it('can join a pattern with steps of 2', () => {
       expect(
         sameFirst(
-          sequence(pure(pure('a')), pure(pure('b').setTactus(2))).stepJoin(),
-          s_cat(pure('a'), pure('b').setTactus(2)),
+          sequence(pure(pure('a')), pure(pure('b').setSteps(2))).stepJoin(),
+          stepcat(pure('a'), pure('b').setSteps(2)),
         ),
       );
     });
-    it('can join a pattern with a tactus of 0.5', () => {
+    it('can join a pattern with steps of 0.5', () => {
       expect(
         sameFirst(
-          sequence(pure(pure('a')), pure(pure('b').setTactus(0.5))).stepJoin(),
-          s_cat(pure('a'), pure('b').setTactus(0.5)),
+          sequence(pure(pure('a')), pure(pure('b').setSteps(0.5))).stepJoin(),
+          stepcat(pure('a'), pure('b').setSteps(0.5)),
         ),
       );
     });
   });
   describe('loopAt', () => {
-    it('maintains tactus', () => {
-      expect(s('bev').chop(8).loopAt(2).tactus).toStrictEqual(Fraction(4));
+    it('maintains steps', () => {
+      expect(s('bev').chop(8).loopAt(2)._steps).toStrictEqual(Fraction(4));
     });
   });
 });
diff --git a/packages/mini/krill-parser.js b/packages/mini/krill-parser.js
index 0a062f46..0d855e49 100644
--- a/packages/mini/krill-parser.js
+++ b/packages/mini/krill-parser.js
@@ -1,7 +1,8 @@
-// Generated by Peggy 3.0.2.
+// @generated by Peggy 4.2.0.
 //
 // https://peggyjs.org/
 
+
 function peg$subclass(child, parent) {
   function C() { this.constructor = child; }
   C.prototype = parent.prototype;
@@ -180,111 +181,109 @@ function peg$parse(input, options) {
   var peg$c3 = "0";
   var peg$c4 = ",";
   var peg$c5 = "|";
-  var peg$c6 = "\"";
-  var peg$c7 = "'";
-  var peg$c8 = "#";
-  var peg$c9 = "^";
-  var peg$c10 = "_";
-  var peg$c11 = "[";
-  var peg$c12 = "]";
-  var peg$c13 = "{";
-  var peg$c14 = "}";
-  var peg$c15 = "%";
-  var peg$c16 = "<";
-  var peg$c17 = ">";
-  var peg$c18 = "@";
-  var peg$c19 = "!";
-  var peg$c20 = "(";
-  var peg$c21 = ")";
-  var peg$c22 = "/";
-  var peg$c23 = "*";
-  var peg$c24 = "?";
-  var peg$c25 = ":";
-  var peg$c26 = "..";
-  var peg$c27 = "struct";
-  var peg$c28 = "target";
-  var peg$c29 = "euclid";
-  var peg$c30 = "slow";
-  var peg$c31 = "rotL";
-  var peg$c32 = "rotR";
-  var peg$c33 = "fast";
-  var peg$c34 = "scale";
-  var peg$c35 = "//";
-  var peg$c36 = "cat";
-  var peg$c37 = "$";
-  var peg$c38 = "setcps";
-  var peg$c39 = "setbpm";
-  var peg$c40 = "hush";
+  var peg$c6 = "[";
+  var peg$c7 = "]";
+  var peg$c8 = "{";
+  var peg$c9 = "}";
+  var peg$c10 = "%";
+  var peg$c11 = "<";
+  var peg$c12 = ">";
+  var peg$c13 = "!";
+  var peg$c14 = "(";
+  var peg$c15 = ")";
+  var peg$c16 = "/";
+  var peg$c17 = "*";
+  var peg$c18 = "?";
+  var peg$c19 = ":";
+  var peg$c20 = "..";
+  var peg$c21 = "^";
+  var peg$c22 = "struct";
+  var peg$c23 = "target";
+  var peg$c24 = "euclid";
+  var peg$c25 = "slow";
+  var peg$c26 = "rotL";
+  var peg$c27 = "rotR";
+  var peg$c28 = "fast";
+  var peg$c29 = "scale";
+  var peg$c30 = "//";
+  var peg$c31 = "cat";
+  var peg$c32 = "$";
+  var peg$c33 = "setcps";
+  var peg$c34 = "setbpm";
+  var peg$c35 = "hush";
 
   var peg$r0 = /^[1-9]/;
   var peg$r1 = /^[eE]/;
-  var peg$r2 = /^[0-9]/;
-  var peg$r3 = /^[ \n\r\t\xA0]/;
-  var peg$r4 = /^[0-9~]/;
-  var peg$r5 = /^[^\n]/;
-  var peg$r6 = /^[a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137-\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148-\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C-\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA-\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9-\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC-\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF-\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F-\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0-\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB-\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE-\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0560-\u0588\u10D0-\u10FA\u10FD-\u10FF\u13F8-\u13FD\u1C80-\u1C88\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6-\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FC7\u1FD0-\u1FD3\u1FD6-\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6-\u1FF7\u210A\u210E-\u210F\u2113\u212F\u2134\u2139\u213C-\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65-\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73-\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3-\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7AF\uA7B5\uA7B7\uA7B9\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]/;
-  var peg$r7 = /^[\u02B0-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0374\u037A\u0559\u0640\u06E5-\u06E6\u07F4-\u07F5\u07FA\u081A\u0824\u0828\u0971\u0E46\u0EC6\u10FC\u17D7\u1843\u1AA7\u1C78-\u1C7D\u1D2C-\u1D6A\u1D78\u1D9B-\u1DBF\u2071\u207F\u2090-\u209C\u2C7C-\u2C7D\u2D6F\u2E2F\u3005\u3031-\u3035\u303B\u309D-\u309E\u30FC-\u30FE\uA015\uA4F8-\uA4FD\uA60C\uA67F\uA69C-\uA69D\uA717-\uA71F\uA770\uA788\uA7F8-\uA7F9\uA9CF\uA9E6\uAA70\uAADD\uAAF3-\uAAF4\uAB5C-\uAB5F\uFF70\uFF9E-\uFF9F]/;
-  var peg$r8 = /^[\xAA\xBA\u01BB\u01C0-\u01C3\u0294\u05D0-\u05EA\u05EF-\u05F2\u0620-\u063F\u0641-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u0800-\u0815\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0980\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u09FC\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60-\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u1100-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17DC\u1820-\u1842\u1844-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C77\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u2135-\u2138\u2D30-\u2D67\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3006\u303C\u3041-\u3096\u309F\u30A1-\u30FA\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A-\uA62B\uA66E\uA6A0-\uA6E5\uA78F\uA7F7\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD-\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9E0-\uA9E4\uA9E7-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAAE0-\uAAEA\uAAF2\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF66-\uFF6F\uFF71-\uFF9D\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
-  var peg$r9 = /^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/;
-  var peg$r10 = /^[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178-\u0179\u017B\u017D\u0181-\u0182\u0184\u0186-\u0187\u0189-\u018B\u018E-\u0191\u0193-\u0194\u0196-\u0198\u019C-\u019D\u019F-\u01A0\u01A2\u01A4\u01A6-\u01A7\u01A9\u01AC\u01AE-\u01AF\u01B1-\u01B3\u01B5\u01B7-\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A-\u023B\u023D-\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E-\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9-\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0-\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E-\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D-\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uFF21-\uFF3A]/;
-  var peg$r11 = /^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/;
+  var peg$r2 = /^[+\-]/;
+  var peg$r3 = /^[0-9]/;
+  var peg$r4 = /^[ \n\r\t\xA0]/;
+  var peg$r5 = /^["']/;
+  var peg$r6 = /^[#\--.0-9A-Z\^-_a-z~\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376-\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06E5-\u06E6\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4-\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u09FC\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60-\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E46\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7B9\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD-\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
+  var peg$r7 = /^[@_]/;
+  var peg$r8 = /^[^\n]/;
+  var peg$r9 = /^[A-Za-z\xAA\xB5\xBA\xC0-\xD6\xD8-\xF6\xF8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376-\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06E5-\u06E6\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4-\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u09FC\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60-\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E46\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16EE-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2160-\u2188\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2-\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005-\u3007\u3021-\u3029\u3031-\u3035\u3038-\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A-\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6EF\uA717-\uA71F\uA722-\uA788\uA78B-\uA7B9\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD-\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB65\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
+  var peg$r10 = /^[a-z\xB5\xDF-\xF6\xF8-\xFF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137-\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148-\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C-\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA-\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9-\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC-\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF-\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F-\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0-\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB-\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE-\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0560-\u0588\u10D0-\u10FA\u10FD-\u10FF\u13F8-\u13FD\u1C80-\u1C88\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6-\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FC7\u1FD0-\u1FD3\u1FD6-\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6-\u1FF7\u210A\u210E-\u210F\u2113\u212F\u2134\u2139\u213C-\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65-\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73-\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3-\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7AF\uA7B5\uA7B7\uA7B9\uA7FA\uAB30-\uAB5A\uAB60-\uAB65\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A]/;
+  var peg$r11 = /^[\u02B0-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0374\u037A\u0559\u0640\u06E5-\u06E6\u07F4-\u07F5\u07FA\u081A\u0824\u0828\u0971\u0E46\u0EC6\u10FC\u17D7\u1843\u1AA7\u1C78-\u1C7D\u1D2C-\u1D6A\u1D78\u1D9B-\u1DBF\u2071\u207F\u2090-\u209C\u2C7C-\u2C7D\u2D6F\u2E2F\u3005\u3031-\u3035\u303B\u309D-\u309E\u30FC-\u30FE\uA015\uA4F8-\uA4FD\uA60C\uA67F\uA69C-\uA69D\uA717-\uA71F\uA770\uA788\uA7F8-\uA7F9\uA9CF\uA9E6\uAA70\uAADD\uAAF3-\uAAF4\uAB5C-\uAB5F\uFF70\uFF9E-\uFF9F]/;
+  var peg$r12 = /^[\xAA\xBA\u01BB\u01C0-\u01C3\u0294\u05D0-\u05EA\u05EF-\u05F2\u0620-\u063F\u0641-\u064A\u066E-\u066F\u0671-\u06D3\u06D5\u06EE-\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u0800-\u0815\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0972-\u0980\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u09FC\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0-\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B35-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60-\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0-\u0CE1\u0CF1-\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32-\u0E33\u0E40-\u0E45\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065-\u1066\u106E-\u1070\u1075-\u1081\u108E\u1100-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17DC\u1820-\u1842\u1844-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE-\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C77\u1CE9-\u1CEC\u1CEE-\u1CF1\u1CF5-\u1CF6\u2135-\u2138\u2D30-\u2D67\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u3006\u303C\u3041-\u3096\u309F\u30A1-\u30FA\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA014\uA016-\uA48C\uA4D0-\uA4F7\uA500-\uA60B\uA610-\uA61F\uA62A-\uA62B\uA66E\uA6A0-\uA6E5\uA78F\uA7F7\uA7FB-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD-\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9E0-\uA9E4\uA9E7-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA6F\uAA71-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5-\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADC\uAAE0-\uAAEA\uAAF2\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uABC0-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40-\uFB41\uFB43-\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF66-\uFF6F\uFF71-\uFF9D\uFFA0-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC]/;
+  var peg$r13 = /^[\u01C5\u01C8\u01CB\u01F2\u1F88-\u1F8F\u1F98-\u1F9F\u1FA8-\u1FAF\u1FBC\u1FCC\u1FFC]/;
+  var peg$r14 = /^[A-Z\xC0-\xD6\xD8-\xDE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178-\u0179\u017B\u017D\u0181-\u0182\u0184\u0186-\u0187\u0189-\u018B\u018E-\u0191\u0193-\u0194\u0196-\u0198\u019C-\u019D\u019F-\u01A0\u01A2\u01A4\u01A6-\u01A7\u01A9\u01AC\u01AE-\u01AF\u01B1-\u01B3\u01B5\u01B7-\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A-\u023B\u023D-\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E-\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9-\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0-\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E-\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D-\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uFF21-\uFF3A]/;
+  var peg$r15 = /^[\u16EE-\u16F0\u2160-\u2182\u2185-\u2188\u3007\u3021-\u3029\u3038-\u303A\uA6E6-\uA6EF]/;
 
   var peg$e0 = peg$otherExpectation("number");
   var peg$e1 = peg$literalExpectation(".", false);
   var peg$e2 = peg$classExpectation([["1", "9"]], false, false);
   var peg$e3 = peg$classExpectation(["e", "E"], false, false);
-  var peg$e4 = peg$literalExpectation("-", false);
-  var peg$e5 = peg$literalExpectation("+", false);
-  var peg$e6 = peg$literalExpectation("0", false);
-  var peg$e7 = peg$classExpectation([["0", "9"]], false, false);
-  var peg$e8 = peg$otherExpectation("whitespace");
-  var peg$e9 = peg$classExpectation([" ", "\n", "\r", "\t", "\xA0"], false, false);
-  var peg$e10 = peg$literalExpectation(",", false);
-  var peg$e11 = peg$literalExpectation("|", false);
-  var peg$e12 = peg$literalExpectation("\"", false);
-  var peg$e13 = peg$literalExpectation("'", false);
+  var peg$e4 = peg$classExpectation(["+", "-"], false, false);
+  var peg$e5 = peg$literalExpectation("-", false);
+  var peg$e6 = peg$literalExpectation("+", false);
+  var peg$e7 = peg$literalExpectation("0", false);
+  var peg$e8 = peg$classExpectation([["0", "9"]], false, false);
+  var peg$e9 = peg$otherExpectation("whitespace");
+  var peg$e10 = peg$classExpectation([" ", "\n", "\r", "\t", "\xA0"], false, false);
+  var peg$e11 = peg$literalExpectation(",", false);
+  var peg$e12 = peg$literalExpectation("|", false);
+  var peg$e13 = peg$classExpectation(["\"", "'"], false, false);
   var peg$e14 = peg$otherExpectation("a letter, a number, \"-\", \"#\", \".\", \"^\", \"_\"");
-  var peg$e15 = peg$classExpectation([["0", "9"], "~"], false, false);
-  var peg$e16 = peg$literalExpectation("#", false);
-  var peg$e17 = peg$literalExpectation("^", false);
-  var peg$e18 = peg$literalExpectation("_", false);
-  var peg$e19 = peg$literalExpectation("[", false);
-  var peg$e20 = peg$literalExpectation("]", false);
-  var peg$e21 = peg$literalExpectation("{", false);
-  var peg$e22 = peg$literalExpectation("}", false);
-  var peg$e23 = peg$literalExpectation("%", false);
-  var peg$e24 = peg$literalExpectation("<", false);
-  var peg$e25 = peg$literalExpectation(">", false);
-  var peg$e26 = peg$literalExpectation("@", false);
-  var peg$e27 = peg$literalExpectation("!", false);
-  var peg$e28 = peg$literalExpectation("(", false);
-  var peg$e29 = peg$literalExpectation(")", false);
-  var peg$e30 = peg$literalExpectation("/", false);
-  var peg$e31 = peg$literalExpectation("*", false);
-  var peg$e32 = peg$literalExpectation("?", false);
-  var peg$e33 = peg$literalExpectation(":", false);
-  var peg$e34 = peg$literalExpectation("..", false);
-  var peg$e35 = peg$literalExpectation("struct", false);
-  var peg$e36 = peg$literalExpectation("target", false);
-  var peg$e37 = peg$literalExpectation("euclid", false);
-  var peg$e38 = peg$literalExpectation("slow", false);
-  var peg$e39 = peg$literalExpectation("rotL", false);
-  var peg$e40 = peg$literalExpectation("rotR", false);
-  var peg$e41 = peg$literalExpectation("fast", false);
-  var peg$e42 = peg$literalExpectation("scale", false);
-  var peg$e43 = peg$literalExpectation("//", false);
-  var peg$e44 = peg$classExpectation(["\n"], true, false);
-  var peg$e45 = peg$literalExpectation("cat", false);
-  var peg$e46 = peg$literalExpectation("$", false);
-  var peg$e47 = peg$literalExpectation("setcps", false);
-  var peg$e48 = peg$literalExpectation("setbpm", false);
-  var peg$e49 = peg$literalExpectation("hush", false);
-  var peg$e50 = peg$classExpectation([["a", "z"], "\xB5", ["\xDF", "\xF6"], ["\xF8", "\xFF"], "\u0101", "\u0103", "\u0105", "\u0107", "\u0109", "\u010B", "\u010D", "\u010F", "\u0111", "\u0113", "\u0115", "\u0117", "\u0119", "\u011B", "\u011D", "\u011F", "\u0121", "\u0123", "\u0125", "\u0127", "\u0129", "\u012B", "\u012D", "\u012F", "\u0131", "\u0133", "\u0135", ["\u0137", "\u0138"], "\u013A", "\u013C", "\u013E", "\u0140", "\u0142", "\u0144", "\u0146", ["\u0148", "\u0149"], "\u014B", "\u014D", "\u014F", "\u0151", "\u0153", "\u0155", "\u0157", "\u0159", "\u015B", "\u015D", "\u015F", "\u0161", "\u0163", "\u0165", "\u0167", "\u0169", "\u016B", "\u016D", "\u016F", "\u0171", "\u0173", "\u0175", "\u0177", "\u017A", "\u017C", ["\u017E", "\u0180"], "\u0183", "\u0185", "\u0188", ["\u018C", "\u018D"], "\u0192", "\u0195", ["\u0199", "\u019B"], "\u019E", "\u01A1", "\u01A3", "\u01A5", "\u01A8", ["\u01AA", "\u01AB"], "\u01AD", "\u01B0", "\u01B4", "\u01B6", ["\u01B9", "\u01BA"], ["\u01BD", "\u01BF"], "\u01C6", "\u01C9", "\u01CC", "\u01CE", "\u01D0", "\u01D2", "\u01D4", "\u01D6", "\u01D8", "\u01DA", ["\u01DC", "\u01DD"], "\u01DF", "\u01E1", "\u01E3", "\u01E5", "\u01E7", "\u01E9", "\u01EB", "\u01ED", ["\u01EF", "\u01F0"], "\u01F3", "\u01F5", "\u01F9", "\u01FB", "\u01FD", "\u01FF", "\u0201", "\u0203", "\u0205", "\u0207", "\u0209", "\u020B", "\u020D", "\u020F", "\u0211", "\u0213", "\u0215", "\u0217", "\u0219", "\u021B", "\u021D", "\u021F", "\u0221", "\u0223", "\u0225", "\u0227", "\u0229", "\u022B", "\u022D", "\u022F", "\u0231", ["\u0233", "\u0239"], "\u023C", ["\u023F", "\u0240"], "\u0242", "\u0247", "\u0249", "\u024B", "\u024D", ["\u024F", "\u0293"], ["\u0295", "\u02AF"], "\u0371", "\u0373", "\u0377", ["\u037B", "\u037D"], "\u0390", ["\u03AC", "\u03CE"], ["\u03D0", "\u03D1"], ["\u03D5", "\u03D7"], "\u03D9", "\u03DB", "\u03DD", "\u03DF", "\u03E1", "\u03E3", "\u03E5", "\u03E7", "\u03E9", "\u03EB", "\u03ED", ["\u03EF", "\u03F3"], "\u03F5", "\u03F8", ["\u03FB", "\u03FC"], ["\u0430", "\u045F"], "\u0461", "\u0463", "\u0465", "\u0467", "\u0469", "\u046B", "\u046D", "\u046F", "\u0471", "\u0473", "\u0475", "\u0477", "\u0479", "\u047B", "\u047D", "\u047F", "\u0481", "\u048B", "\u048D", "\u048F", "\u0491", "\u0493", "\u0495", "\u0497", "\u0499", "\u049B", "\u049D", "\u049F", "\u04A1", "\u04A3", "\u04A5", "\u04A7", "\u04A9", "\u04AB", "\u04AD", "\u04AF", "\u04B1", "\u04B3", "\u04B5", "\u04B7", "\u04B9", "\u04BB", "\u04BD", "\u04BF", "\u04C2", "\u04C4", "\u04C6", "\u04C8", "\u04CA", "\u04CC", ["\u04CE", "\u04CF"], "\u04D1", "\u04D3", "\u04D5", "\u04D7", "\u04D9", "\u04DB", "\u04DD", "\u04DF", "\u04E1", "\u04E3", "\u04E5", "\u04E7", "\u04E9", "\u04EB", "\u04ED", "\u04EF", "\u04F1", "\u04F3", "\u04F5", "\u04F7", "\u04F9", "\u04FB", "\u04FD", "\u04FF", "\u0501", "\u0503", "\u0505", "\u0507", "\u0509", "\u050B", "\u050D", "\u050F", "\u0511", "\u0513", "\u0515", "\u0517", "\u0519", "\u051B", "\u051D", "\u051F", "\u0521", "\u0523", "\u0525", "\u0527", "\u0529", "\u052B", "\u052D", "\u052F", ["\u0560", "\u0588"], ["\u10D0", "\u10FA"], ["\u10FD", "\u10FF"], ["\u13F8", "\u13FD"], ["\u1C80", "\u1C88"], ["\u1D00", "\u1D2B"], ["\u1D6B", "\u1D77"], ["\u1D79", "\u1D9A"], "\u1E01", "\u1E03", "\u1E05", "\u1E07", "\u1E09", "\u1E0B", "\u1E0D", "\u1E0F", "\u1E11", "\u1E13", "\u1E15", "\u1E17", "\u1E19", "\u1E1B", "\u1E1D", "\u1E1F", "\u1E21", "\u1E23", "\u1E25", "\u1E27", "\u1E29", "\u1E2B", "\u1E2D", "\u1E2F", "\u1E31", "\u1E33", "\u1E35", "\u1E37", "\u1E39", "\u1E3B", "\u1E3D", "\u1E3F", "\u1E41", "\u1E43", "\u1E45", "\u1E47", "\u1E49", "\u1E4B", "\u1E4D", "\u1E4F", "\u1E51", "\u1E53", "\u1E55", "\u1E57", "\u1E59", "\u1E5B", "\u1E5D", "\u1E5F", "\u1E61", "\u1E63", "\u1E65", "\u1E67", "\u1E69", "\u1E6B", "\u1E6D", "\u1E6F", "\u1E71", "\u1E73", "\u1E75", "\u1E77", "\u1E79", "\u1E7B", "\u1E7D", "\u1E7F", "\u1E81", "\u1E83", "\u1E85", "\u1E87", "\u1E89", "\u1E8B", "\u1E8D", "\u1E8F", "\u1E91", "\u1E93", ["\u1E95", "\u1E9D"], "\u1E9F", "\u1EA1", "\u1EA3", "\u1EA5", "\u1EA7", "\u1EA9", "\u1EAB", "\u1EAD", "\u1EAF", "\u1EB1", "\u1EB3", "\u1EB5", "\u1EB7", "\u1EB9", "\u1EBB", "\u1EBD", "\u1EBF", "\u1EC1", "\u1EC3", "\u1EC5", "\u1EC7", "\u1EC9", "\u1ECB", "\u1ECD", "\u1ECF", "\u1ED1", "\u1ED3", "\u1ED5", "\u1ED7", "\u1ED9", "\u1EDB", "\u1EDD", "\u1EDF", "\u1EE1", "\u1EE3", "\u1EE5", "\u1EE7", "\u1EE9", "\u1EEB", "\u1EED", "\u1EEF", "\u1EF1", "\u1EF3", "\u1EF5", "\u1EF7", "\u1EF9", "\u1EFB", "\u1EFD", ["\u1EFF", "\u1F07"], ["\u1F10", "\u1F15"], ["\u1F20", "\u1F27"], ["\u1F30", "\u1F37"], ["\u1F40", "\u1F45"], ["\u1F50", "\u1F57"], ["\u1F60", "\u1F67"], ["\u1F70", "\u1F7D"], ["\u1F80", "\u1F87"], ["\u1F90", "\u1F97"], ["\u1FA0", "\u1FA7"], ["\u1FB0", "\u1FB4"], ["\u1FB6", "\u1FB7"], "\u1FBE", ["\u1FC2", "\u1FC4"], ["\u1FC6", "\u1FC7"], ["\u1FD0", "\u1FD3"], ["\u1FD6", "\u1FD7"], ["\u1FE0", "\u1FE7"], ["\u1FF2", "\u1FF4"], ["\u1FF6", "\u1FF7"], "\u210A", ["\u210E", "\u210F"], "\u2113", "\u212F", "\u2134", "\u2139", ["\u213C", "\u213D"], ["\u2146", "\u2149"], "\u214E", "\u2184", ["\u2C30", "\u2C5E"], "\u2C61", ["\u2C65", "\u2C66"], "\u2C68", "\u2C6A", "\u2C6C", "\u2C71", ["\u2C73", "\u2C74"], ["\u2C76", "\u2C7B"], "\u2C81", "\u2C83", "\u2C85", "\u2C87", "\u2C89", "\u2C8B", "\u2C8D", "\u2C8F", "\u2C91", "\u2C93", "\u2C95", "\u2C97", "\u2C99", "\u2C9B", "\u2C9D", "\u2C9F", "\u2CA1", "\u2CA3", "\u2CA5", "\u2CA7", "\u2CA9", "\u2CAB", "\u2CAD", "\u2CAF", "\u2CB1", "\u2CB3", "\u2CB5", "\u2CB7", "\u2CB9", "\u2CBB", "\u2CBD", "\u2CBF", "\u2CC1", "\u2CC3", "\u2CC5", "\u2CC7", "\u2CC9", "\u2CCB", "\u2CCD", "\u2CCF", "\u2CD1", "\u2CD3", "\u2CD5", "\u2CD7", "\u2CD9", "\u2CDB", "\u2CDD", "\u2CDF", "\u2CE1", ["\u2CE3", "\u2CE4"], "\u2CEC", "\u2CEE", "\u2CF3", ["\u2D00", "\u2D25"], "\u2D27", "\u2D2D", "\uA641", "\uA643", "\uA645", "\uA647", "\uA649", "\uA64B", "\uA64D", "\uA64F", "\uA651", "\uA653", "\uA655", "\uA657", "\uA659", "\uA65B", "\uA65D", "\uA65F", "\uA661", "\uA663", "\uA665", "\uA667", "\uA669", "\uA66B", "\uA66D", "\uA681", "\uA683", "\uA685", "\uA687", "\uA689", "\uA68B", "\uA68D", "\uA68F", "\uA691", "\uA693", "\uA695", "\uA697", "\uA699", "\uA69B", "\uA723", "\uA725", "\uA727", "\uA729", "\uA72B", "\uA72D", ["\uA72F", "\uA731"], "\uA733", "\uA735", "\uA737", "\uA739", "\uA73B", "\uA73D", "\uA73F", "\uA741", "\uA743", "\uA745", "\uA747", "\uA749", "\uA74B", "\uA74D", "\uA74F", "\uA751", "\uA753", "\uA755", "\uA757", "\uA759", "\uA75B", "\uA75D", "\uA75F", "\uA761", "\uA763", "\uA765", "\uA767", "\uA769", "\uA76B", "\uA76D", "\uA76F", ["\uA771", "\uA778"], "\uA77A", "\uA77C", "\uA77F", "\uA781", "\uA783", "\uA785", "\uA787", "\uA78C", "\uA78E", "\uA791", ["\uA793", "\uA795"], "\uA797", "\uA799", "\uA79B", "\uA79D", "\uA79F", "\uA7A1", "\uA7A3", "\uA7A5", "\uA7A7", "\uA7A9", "\uA7AF", "\uA7B5", "\uA7B7", "\uA7B9", "\uA7FA", ["\uAB30", "\uAB5A"], ["\uAB60", "\uAB65"], ["\uAB70", "\uABBF"], ["\uFB00", "\uFB06"], ["\uFB13", "\uFB17"], ["\uFF41", "\uFF5A"]], false, false);
-  var peg$e51 = peg$classExpectation([["\u02B0", "\u02C1"], ["\u02C6", "\u02D1"], ["\u02E0", "\u02E4"], "\u02EC", "\u02EE", "\u0374", "\u037A", "\u0559", "\u0640", ["\u06E5", "\u06E6"], ["\u07F4", "\u07F5"], "\u07FA", "\u081A", "\u0824", "\u0828", "\u0971", "\u0E46", "\u0EC6", "\u10FC", "\u17D7", "\u1843", "\u1AA7", ["\u1C78", "\u1C7D"], ["\u1D2C", "\u1D6A"], "\u1D78", ["\u1D9B", "\u1DBF"], "\u2071", "\u207F", ["\u2090", "\u209C"], ["\u2C7C", "\u2C7D"], "\u2D6F", "\u2E2F", "\u3005", ["\u3031", "\u3035"], "\u303B", ["\u309D", "\u309E"], ["\u30FC", "\u30FE"], "\uA015", ["\uA4F8", "\uA4FD"], "\uA60C", "\uA67F", ["\uA69C", "\uA69D"], ["\uA717", "\uA71F"], "\uA770", "\uA788", ["\uA7F8", "\uA7F9"], "\uA9CF", "\uA9E6", "\uAA70", "\uAADD", ["\uAAF3", "\uAAF4"], ["\uAB5C", "\uAB5F"], "\uFF70", ["\uFF9E", "\uFF9F"]], false, false);
-  var peg$e52 = peg$classExpectation(["\xAA", "\xBA", "\u01BB", ["\u01C0", "\u01C3"], "\u0294", ["\u05D0", "\u05EA"], ["\u05EF", "\u05F2"], ["\u0620", "\u063F"], ["\u0641", "\u064A"], ["\u066E", "\u066F"], ["\u0671", "\u06D3"], "\u06D5", ["\u06EE", "\u06EF"], ["\u06FA", "\u06FC"], "\u06FF", "\u0710", ["\u0712", "\u072F"], ["\u074D", "\u07A5"], "\u07B1", ["\u07CA", "\u07EA"], ["\u0800", "\u0815"], ["\u0840", "\u0858"], ["\u0860", "\u086A"], ["\u08A0", "\u08B4"], ["\u08B6", "\u08BD"], ["\u0904", "\u0939"], "\u093D", "\u0950", ["\u0958", "\u0961"], ["\u0972", "\u0980"], ["\u0985", "\u098C"], ["\u098F", "\u0990"], ["\u0993", "\u09A8"], ["\u09AA", "\u09B0"], "\u09B2", ["\u09B6", "\u09B9"], "\u09BD", "\u09CE", ["\u09DC", "\u09DD"], ["\u09DF", "\u09E1"], ["\u09F0", "\u09F1"], "\u09FC", ["\u0A05", "\u0A0A"], ["\u0A0F", "\u0A10"], ["\u0A13", "\u0A28"], ["\u0A2A", "\u0A30"], ["\u0A32", "\u0A33"], ["\u0A35", "\u0A36"], ["\u0A38", "\u0A39"], ["\u0A59", "\u0A5C"], "\u0A5E", ["\u0A72", "\u0A74"], ["\u0A85", "\u0A8D"], ["\u0A8F", "\u0A91"], ["\u0A93", "\u0AA8"], ["\u0AAA", "\u0AB0"], ["\u0AB2", "\u0AB3"], ["\u0AB5", "\u0AB9"], "\u0ABD", "\u0AD0", ["\u0AE0", "\u0AE1"], "\u0AF9", ["\u0B05", "\u0B0C"], ["\u0B0F", "\u0B10"], ["\u0B13", "\u0B28"], ["\u0B2A", "\u0B30"], ["\u0B32", "\u0B33"], ["\u0B35", "\u0B39"], "\u0B3D", ["\u0B5C", "\u0B5D"], ["\u0B5F", "\u0B61"], "\u0B71", "\u0B83", ["\u0B85", "\u0B8A"], ["\u0B8E", "\u0B90"], ["\u0B92", "\u0B95"], ["\u0B99", "\u0B9A"], "\u0B9C", ["\u0B9E", "\u0B9F"], ["\u0BA3", "\u0BA4"], ["\u0BA8", "\u0BAA"], ["\u0BAE", "\u0BB9"], "\u0BD0", ["\u0C05", "\u0C0C"], ["\u0C0E", "\u0C10"], ["\u0C12", "\u0C28"], ["\u0C2A", "\u0C39"], "\u0C3D", ["\u0C58", "\u0C5A"], ["\u0C60", "\u0C61"], "\u0C80", ["\u0C85", "\u0C8C"], ["\u0C8E", "\u0C90"], ["\u0C92", "\u0CA8"], ["\u0CAA", "\u0CB3"], ["\u0CB5", "\u0CB9"], "\u0CBD", "\u0CDE", ["\u0CE0", "\u0CE1"], ["\u0CF1", "\u0CF2"], ["\u0D05", "\u0D0C"], ["\u0D0E", "\u0D10"], ["\u0D12", "\u0D3A"], "\u0D3D", "\u0D4E", ["\u0D54", "\u0D56"], ["\u0D5F", "\u0D61"], ["\u0D7A", "\u0D7F"], ["\u0D85", "\u0D96"], ["\u0D9A", "\u0DB1"], ["\u0DB3", "\u0DBB"], "\u0DBD", ["\u0DC0", "\u0DC6"], ["\u0E01", "\u0E30"], ["\u0E32", "\u0E33"], ["\u0E40", "\u0E45"], ["\u0E81", "\u0E82"], "\u0E84", ["\u0E87", "\u0E88"], "\u0E8A", "\u0E8D", ["\u0E94", "\u0E97"], ["\u0E99", "\u0E9F"], ["\u0EA1", "\u0EA3"], "\u0EA5", "\u0EA7", ["\u0EAA", "\u0EAB"], ["\u0EAD", "\u0EB0"], ["\u0EB2", "\u0EB3"], "\u0EBD", ["\u0EC0", "\u0EC4"], ["\u0EDC", "\u0EDF"], "\u0F00", ["\u0F40", "\u0F47"], ["\u0F49", "\u0F6C"], ["\u0F88", "\u0F8C"], ["\u1000", "\u102A"], "\u103F", ["\u1050", "\u1055"], ["\u105A", "\u105D"], "\u1061", ["\u1065", "\u1066"], ["\u106E", "\u1070"], ["\u1075", "\u1081"], "\u108E", ["\u1100", "\u1248"], ["\u124A", "\u124D"], ["\u1250", "\u1256"], "\u1258", ["\u125A", "\u125D"], ["\u1260", "\u1288"], ["\u128A", "\u128D"], ["\u1290", "\u12B0"], ["\u12B2", "\u12B5"], ["\u12B8", "\u12BE"], "\u12C0", ["\u12C2", "\u12C5"], ["\u12C8", "\u12D6"], ["\u12D8", "\u1310"], ["\u1312", "\u1315"], ["\u1318", "\u135A"], ["\u1380", "\u138F"], ["\u1401", "\u166C"], ["\u166F", "\u167F"], ["\u1681", "\u169A"], ["\u16A0", "\u16EA"], ["\u16F1", "\u16F8"], ["\u1700", "\u170C"], ["\u170E", "\u1711"], ["\u1720", "\u1731"], ["\u1740", "\u1751"], ["\u1760", "\u176C"], ["\u176E", "\u1770"], ["\u1780", "\u17B3"], "\u17DC", ["\u1820", "\u1842"], ["\u1844", "\u1878"], ["\u1880", "\u1884"], ["\u1887", "\u18A8"], "\u18AA", ["\u18B0", "\u18F5"], ["\u1900", "\u191E"], ["\u1950", "\u196D"], ["\u1970", "\u1974"], ["\u1980", "\u19AB"], ["\u19B0", "\u19C9"], ["\u1A00", "\u1A16"], ["\u1A20", "\u1A54"], ["\u1B05", "\u1B33"], ["\u1B45", "\u1B4B"], ["\u1B83", "\u1BA0"], ["\u1BAE", "\u1BAF"], ["\u1BBA", "\u1BE5"], ["\u1C00", "\u1C23"], ["\u1C4D", "\u1C4F"], ["\u1C5A", "\u1C77"], ["\u1CE9", "\u1CEC"], ["\u1CEE", "\u1CF1"], ["\u1CF5", "\u1CF6"], ["\u2135", "\u2138"], ["\u2D30", "\u2D67"], ["\u2D80", "\u2D96"], ["\u2DA0", "\u2DA6"], ["\u2DA8", "\u2DAE"], ["\u2DB0", "\u2DB6"], ["\u2DB8", "\u2DBE"], ["\u2DC0", "\u2DC6"], ["\u2DC8", "\u2DCE"], ["\u2DD0", "\u2DD6"], ["\u2DD8", "\u2DDE"], "\u3006", "\u303C", ["\u3041", "\u3096"], "\u309F", ["\u30A1", "\u30FA"], "\u30FF", ["\u3105", "\u312F"], ["\u3131", "\u318E"], ["\u31A0", "\u31BA"], ["\u31F0", "\u31FF"], ["\u3400", "\u4DB5"], ["\u4E00", "\u9FEF"], ["\uA000", "\uA014"], ["\uA016", "\uA48C"], ["\uA4D0", "\uA4F7"], ["\uA500", "\uA60B"], ["\uA610", "\uA61F"], ["\uA62A", "\uA62B"], "\uA66E", ["\uA6A0", "\uA6E5"], "\uA78F", "\uA7F7", ["\uA7FB", "\uA801"], ["\uA803", "\uA805"], ["\uA807", "\uA80A"], ["\uA80C", "\uA822"], ["\uA840", "\uA873"], ["\uA882", "\uA8B3"], ["\uA8F2", "\uA8F7"], "\uA8FB", ["\uA8FD", "\uA8FE"], ["\uA90A", "\uA925"], ["\uA930", "\uA946"], ["\uA960", "\uA97C"], ["\uA984", "\uA9B2"], ["\uA9E0", "\uA9E4"], ["\uA9E7", "\uA9EF"], ["\uA9FA", "\uA9FE"], ["\uAA00", "\uAA28"], ["\uAA40", "\uAA42"], ["\uAA44", "\uAA4B"], ["\uAA60", "\uAA6F"], ["\uAA71", "\uAA76"], "\uAA7A", ["\uAA7E", "\uAAAF"], "\uAAB1", ["\uAAB5", "\uAAB6"], ["\uAAB9", "\uAABD"], "\uAAC0", "\uAAC2", ["\uAADB", "\uAADC"], ["\uAAE0", "\uAAEA"], "\uAAF2", ["\uAB01", "\uAB06"], ["\uAB09", "\uAB0E"], ["\uAB11", "\uAB16"], ["\uAB20", "\uAB26"], ["\uAB28", "\uAB2E"], ["\uABC0", "\uABE2"], ["\uAC00", "\uD7A3"], ["\uD7B0", "\uD7C6"], ["\uD7CB", "\uD7FB"], ["\uF900", "\uFA6D"], ["\uFA70", "\uFAD9"], "\uFB1D", ["\uFB1F", "\uFB28"], ["\uFB2A", "\uFB36"], ["\uFB38", "\uFB3C"], "\uFB3E", ["\uFB40", "\uFB41"], ["\uFB43", "\uFB44"], ["\uFB46", "\uFBB1"], ["\uFBD3", "\uFD3D"], ["\uFD50", "\uFD8F"], ["\uFD92", "\uFDC7"], ["\uFDF0", "\uFDFB"], ["\uFE70", "\uFE74"], ["\uFE76", "\uFEFC"], ["\uFF66", "\uFF6F"], ["\uFF71", "\uFF9D"], ["\uFFA0", "\uFFBE"], ["\uFFC2", "\uFFC7"], ["\uFFCA", "\uFFCF"], ["\uFFD2", "\uFFD7"], ["\uFFDA", "\uFFDC"]], false, false);
-  var peg$e53 = peg$classExpectation(["\u01C5", "\u01C8", "\u01CB", "\u01F2", ["\u1F88", "\u1F8F"], ["\u1F98", "\u1F9F"], ["\u1FA8", "\u1FAF"], "\u1FBC", "\u1FCC", "\u1FFC"], false, false);
-  var peg$e54 = peg$classExpectation([["A", "Z"], ["\xC0", "\xD6"], ["\xD8", "\xDE"], "\u0100", "\u0102", "\u0104", "\u0106", "\u0108", "\u010A", "\u010C", "\u010E", "\u0110", "\u0112", "\u0114", "\u0116", "\u0118", "\u011A", "\u011C", "\u011E", "\u0120", "\u0122", "\u0124", "\u0126", "\u0128", "\u012A", "\u012C", "\u012E", "\u0130", "\u0132", "\u0134", "\u0136", "\u0139", "\u013B", "\u013D", "\u013F", "\u0141", "\u0143", "\u0145", "\u0147", "\u014A", "\u014C", "\u014E", "\u0150", "\u0152", "\u0154", "\u0156", "\u0158", "\u015A", "\u015C", "\u015E", "\u0160", "\u0162", "\u0164", "\u0166", "\u0168", "\u016A", "\u016C", "\u016E", "\u0170", "\u0172", "\u0174", "\u0176", ["\u0178", "\u0179"], "\u017B", "\u017D", ["\u0181", "\u0182"], "\u0184", ["\u0186", "\u0187"], ["\u0189", "\u018B"], ["\u018E", "\u0191"], ["\u0193", "\u0194"], ["\u0196", "\u0198"], ["\u019C", "\u019D"], ["\u019F", "\u01A0"], "\u01A2", "\u01A4", ["\u01A6", "\u01A7"], "\u01A9", "\u01AC", ["\u01AE", "\u01AF"], ["\u01B1", "\u01B3"], "\u01B5", ["\u01B7", "\u01B8"], "\u01BC", "\u01C4", "\u01C7", "\u01CA", "\u01CD", "\u01CF", "\u01D1", "\u01D3", "\u01D5", "\u01D7", "\u01D9", "\u01DB", "\u01DE", "\u01E0", "\u01E2", "\u01E4", "\u01E6", "\u01E8", "\u01EA", "\u01EC", "\u01EE", "\u01F1", "\u01F4", ["\u01F6", "\u01F8"], "\u01FA", "\u01FC", "\u01FE", "\u0200", "\u0202", "\u0204", "\u0206", "\u0208", "\u020A", "\u020C", "\u020E", "\u0210", "\u0212", "\u0214", "\u0216", "\u0218", "\u021A", "\u021C", "\u021E", "\u0220", "\u0222", "\u0224", "\u0226", "\u0228", "\u022A", "\u022C", "\u022E", "\u0230", "\u0232", ["\u023A", "\u023B"], ["\u023D", "\u023E"], "\u0241", ["\u0243", "\u0246"], "\u0248", "\u024A", "\u024C", "\u024E", "\u0370", "\u0372", "\u0376", "\u037F", "\u0386", ["\u0388", "\u038A"], "\u038C", ["\u038E", "\u038F"], ["\u0391", "\u03A1"], ["\u03A3", "\u03AB"], "\u03CF", ["\u03D2", "\u03D4"], "\u03D8", "\u03DA", "\u03DC", "\u03DE", "\u03E0", "\u03E2", "\u03E4", "\u03E6", "\u03E8", "\u03EA", "\u03EC", "\u03EE", "\u03F4", "\u03F7", ["\u03F9", "\u03FA"], ["\u03FD", "\u042F"], "\u0460", "\u0462", "\u0464", "\u0466", "\u0468", "\u046A", "\u046C", "\u046E", "\u0470", "\u0472", "\u0474", "\u0476", "\u0478", "\u047A", "\u047C", "\u047E", "\u0480", "\u048A", "\u048C", "\u048E", "\u0490", "\u0492", "\u0494", "\u0496", "\u0498", "\u049A", "\u049C", "\u049E", "\u04A0", "\u04A2", "\u04A4", "\u04A6", "\u04A8", "\u04AA", "\u04AC", "\u04AE", "\u04B0", "\u04B2", "\u04B4", "\u04B6", "\u04B8", "\u04BA", "\u04BC", "\u04BE", ["\u04C0", "\u04C1"], "\u04C3", "\u04C5", "\u04C7", "\u04C9", "\u04CB", "\u04CD", "\u04D0", "\u04D2", "\u04D4", "\u04D6", "\u04D8", "\u04DA", "\u04DC", "\u04DE", "\u04E0", "\u04E2", "\u04E4", "\u04E6", "\u04E8", "\u04EA", "\u04EC", "\u04EE", "\u04F0", "\u04F2", "\u04F4", "\u04F6", "\u04F8", "\u04FA", "\u04FC", "\u04FE", "\u0500", "\u0502", "\u0504", "\u0506", "\u0508", "\u050A", "\u050C", "\u050E", "\u0510", "\u0512", "\u0514", "\u0516", "\u0518", "\u051A", "\u051C", "\u051E", "\u0520", "\u0522", "\u0524", "\u0526", "\u0528", "\u052A", "\u052C", "\u052E", ["\u0531", "\u0556"], ["\u10A0", "\u10C5"], "\u10C7", "\u10CD", ["\u13A0", "\u13F5"], ["\u1C90", "\u1CBA"], ["\u1CBD", "\u1CBF"], "\u1E00", "\u1E02", "\u1E04", "\u1E06", "\u1E08", "\u1E0A", "\u1E0C", "\u1E0E", "\u1E10", "\u1E12", "\u1E14", "\u1E16", "\u1E18", "\u1E1A", "\u1E1C", "\u1E1E", "\u1E20", "\u1E22", "\u1E24", "\u1E26", "\u1E28", "\u1E2A", "\u1E2C", "\u1E2E", "\u1E30", "\u1E32", "\u1E34", "\u1E36", "\u1E38", "\u1E3A", "\u1E3C", "\u1E3E", "\u1E40", "\u1E42", "\u1E44", "\u1E46", "\u1E48", "\u1E4A", "\u1E4C", "\u1E4E", "\u1E50", "\u1E52", "\u1E54", "\u1E56", "\u1E58", "\u1E5A", "\u1E5C", "\u1E5E", "\u1E60", "\u1E62", "\u1E64", "\u1E66", "\u1E68", "\u1E6A", "\u1E6C", "\u1E6E", "\u1E70", "\u1E72", "\u1E74", "\u1E76", "\u1E78", "\u1E7A", "\u1E7C", "\u1E7E", "\u1E80", "\u1E82", "\u1E84", "\u1E86", "\u1E88", "\u1E8A", "\u1E8C", "\u1E8E", "\u1E90", "\u1E92", "\u1E94", "\u1E9E", "\u1EA0", "\u1EA2", "\u1EA4", "\u1EA6", "\u1EA8", "\u1EAA", "\u1EAC", "\u1EAE", "\u1EB0", "\u1EB2", "\u1EB4", "\u1EB6", "\u1EB8", "\u1EBA", "\u1EBC", "\u1EBE", "\u1EC0", "\u1EC2", "\u1EC4", "\u1EC6", "\u1EC8", "\u1ECA", "\u1ECC", "\u1ECE", "\u1ED0", "\u1ED2", "\u1ED4", "\u1ED6", "\u1ED8", "\u1EDA", "\u1EDC", "\u1EDE", "\u1EE0", "\u1EE2", "\u1EE4", "\u1EE6", "\u1EE8", "\u1EEA", "\u1EEC", "\u1EEE", "\u1EF0", "\u1EF2", "\u1EF4", "\u1EF6", "\u1EF8", "\u1EFA", "\u1EFC", "\u1EFE", ["\u1F08", "\u1F0F"], ["\u1F18", "\u1F1D"], ["\u1F28", "\u1F2F"], ["\u1F38", "\u1F3F"], ["\u1F48", "\u1F4D"], "\u1F59", "\u1F5B", "\u1F5D", "\u1F5F", ["\u1F68", "\u1F6F"], ["\u1FB8", "\u1FBB"], ["\u1FC8", "\u1FCB"], ["\u1FD8", "\u1FDB"], ["\u1FE8", "\u1FEC"], ["\u1FF8", "\u1FFB"], "\u2102", "\u2107", ["\u210B", "\u210D"], ["\u2110", "\u2112"], "\u2115", ["\u2119", "\u211D"], "\u2124", "\u2126", "\u2128", ["\u212A", "\u212D"], ["\u2130", "\u2133"], ["\u213E", "\u213F"], "\u2145", "\u2183", ["\u2C00", "\u2C2E"], "\u2C60", ["\u2C62", "\u2C64"], "\u2C67", "\u2C69", "\u2C6B", ["\u2C6D", "\u2C70"], "\u2C72", "\u2C75", ["\u2C7E", "\u2C80"], "\u2C82", "\u2C84", "\u2C86", "\u2C88", "\u2C8A", "\u2C8C", "\u2C8E", "\u2C90", "\u2C92", "\u2C94", "\u2C96", "\u2C98", "\u2C9A", "\u2C9C", "\u2C9E", "\u2CA0", "\u2CA2", "\u2CA4", "\u2CA6", "\u2CA8", "\u2CAA", "\u2CAC", "\u2CAE", "\u2CB0", "\u2CB2", "\u2CB4", "\u2CB6", "\u2CB8", "\u2CBA", "\u2CBC", "\u2CBE", "\u2CC0", "\u2CC2", "\u2CC4", "\u2CC6", "\u2CC8", "\u2CCA", "\u2CCC", "\u2CCE", "\u2CD0", "\u2CD2", "\u2CD4", "\u2CD6", "\u2CD8", "\u2CDA", "\u2CDC", "\u2CDE", "\u2CE0", "\u2CE2", "\u2CEB", "\u2CED", "\u2CF2", "\uA640", "\uA642", "\uA644", "\uA646", "\uA648", "\uA64A", "\uA64C", "\uA64E", "\uA650", "\uA652", "\uA654", "\uA656", "\uA658", "\uA65A", "\uA65C", "\uA65E", "\uA660", "\uA662", "\uA664", "\uA666", "\uA668", "\uA66A", "\uA66C", "\uA680", "\uA682", "\uA684", "\uA686", "\uA688", "\uA68A", "\uA68C", "\uA68E", "\uA690", "\uA692", "\uA694", "\uA696", "\uA698", "\uA69A", "\uA722", "\uA724", "\uA726", "\uA728", "\uA72A", "\uA72C", "\uA72E", "\uA732", "\uA734", "\uA736", "\uA738", "\uA73A", "\uA73C", "\uA73E", "\uA740", "\uA742", "\uA744", "\uA746", "\uA748", "\uA74A", "\uA74C", "\uA74E", "\uA750", "\uA752", "\uA754", "\uA756", "\uA758", "\uA75A", "\uA75C", "\uA75E", "\uA760", "\uA762", "\uA764", "\uA766", "\uA768", "\uA76A", "\uA76C", "\uA76E", "\uA779", "\uA77B", ["\uA77D", "\uA77E"], "\uA780", "\uA782", "\uA784", "\uA786", "\uA78B", "\uA78D", "\uA790", "\uA792", "\uA796", "\uA798", "\uA79A", "\uA79C", "\uA79E", "\uA7A0", "\uA7A2", "\uA7A4", "\uA7A6", "\uA7A8", ["\uA7AA", "\uA7AE"], ["\uA7B0", "\uA7B4"], "\uA7B6", "\uA7B8", ["\uFF21", "\uFF3A"]], false, false);
-  var peg$e55 = peg$classExpectation([["\u16EE", "\u16F0"], ["\u2160", "\u2182"], ["\u2185", "\u2188"], "\u3007", ["\u3021", "\u3029"], ["\u3038", "\u303A"], ["\uA6E6", "\uA6EF"]], false, false);
+  var peg$e15 = peg$classExpectation(["#", ["-", "."], ["0", "9"], ["A", "Z"], ["^", "_"], ["a", "z"], "~", "\xAA", "\xB5", "\xBA", ["\xC0", "\xD6"], ["\xD8", "\xF6"], ["\xF8", "\u02C1"], ["\u02C6", "\u02D1"], ["\u02E0", "\u02E4"], "\u02EC", "\u02EE", ["\u0370", "\u0374"], ["\u0376", "\u0377"], ["\u037A", "\u037D"], "\u037F", "\u0386", ["\u0388", "\u038A"], "\u038C", ["\u038E", "\u03A1"], ["\u03A3", "\u03F5"], ["\u03F7", "\u0481"], ["\u048A", "\u052F"], ["\u0531", "\u0556"], "\u0559", ["\u0560", "\u0588"], ["\u05D0", "\u05EA"], ["\u05EF", "\u05F2"], ["\u0620", "\u064A"], ["\u066E", "\u066F"], ["\u0671", "\u06D3"], "\u06D5", ["\u06E5", "\u06E6"], ["\u06EE", "\u06EF"], ["\u06FA", "\u06FC"], "\u06FF", "\u0710", ["\u0712", "\u072F"], ["\u074D", "\u07A5"], "\u07B1", ["\u07CA", "\u07EA"], ["\u07F4", "\u07F5"], "\u07FA", ["\u0800", "\u0815"], "\u081A", "\u0824", "\u0828", ["\u0840", "\u0858"], ["\u0860", "\u086A"], ["\u08A0", "\u08B4"], ["\u08B6", "\u08BD"], ["\u0904", "\u0939"], "\u093D", "\u0950", ["\u0958", "\u0961"], ["\u0971", "\u0980"], ["\u0985", "\u098C"], ["\u098F", "\u0990"], ["\u0993", "\u09A8"], ["\u09AA", "\u09B0"], "\u09B2", ["\u09B6", "\u09B9"], "\u09BD", "\u09CE", ["\u09DC", "\u09DD"], ["\u09DF", "\u09E1"], ["\u09F0", "\u09F1"], "\u09FC", ["\u0A05", "\u0A0A"], ["\u0A0F", "\u0A10"], ["\u0A13", "\u0A28"], ["\u0A2A", "\u0A30"], ["\u0A32", "\u0A33"], ["\u0A35", "\u0A36"], ["\u0A38", "\u0A39"], ["\u0A59", "\u0A5C"], "\u0A5E", ["\u0A72", "\u0A74"], ["\u0A85", "\u0A8D"], ["\u0A8F", "\u0A91"], ["\u0A93", "\u0AA8"], ["\u0AAA", "\u0AB0"], ["\u0AB2", "\u0AB3"], ["\u0AB5", "\u0AB9"], "\u0ABD", "\u0AD0", ["\u0AE0", "\u0AE1"], "\u0AF9", ["\u0B05", "\u0B0C"], ["\u0B0F", "\u0B10"], ["\u0B13", "\u0B28"], ["\u0B2A", "\u0B30"], ["\u0B32", "\u0B33"], ["\u0B35", "\u0B39"], "\u0B3D", ["\u0B5C", "\u0B5D"], ["\u0B5F", "\u0B61"], "\u0B71", "\u0B83", ["\u0B85", "\u0B8A"], ["\u0B8E", "\u0B90"], ["\u0B92", "\u0B95"], ["\u0B99", "\u0B9A"], "\u0B9C", ["\u0B9E", "\u0B9F"], ["\u0BA3", "\u0BA4"], ["\u0BA8", "\u0BAA"], ["\u0BAE", "\u0BB9"], "\u0BD0", ["\u0C05", "\u0C0C"], ["\u0C0E", "\u0C10"], ["\u0C12", "\u0C28"], ["\u0C2A", "\u0C39"], "\u0C3D", ["\u0C58", "\u0C5A"], ["\u0C60", "\u0C61"], "\u0C80", ["\u0C85", "\u0C8C"], ["\u0C8E", "\u0C90"], ["\u0C92", "\u0CA8"], ["\u0CAA", "\u0CB3"], ["\u0CB5", "\u0CB9"], "\u0CBD", "\u0CDE", ["\u0CE0", "\u0CE1"], ["\u0CF1", "\u0CF2"], ["\u0D05", "\u0D0C"], ["\u0D0E", "\u0D10"], ["\u0D12", "\u0D3A"], "\u0D3D", "\u0D4E", ["\u0D54", "\u0D56"], ["\u0D5F", "\u0D61"], ["\u0D7A", "\u0D7F"], ["\u0D85", "\u0D96"], ["\u0D9A", "\u0DB1"], ["\u0DB3", "\u0DBB"], "\u0DBD", ["\u0DC0", "\u0DC6"], ["\u0E01", "\u0E30"], ["\u0E32", "\u0E33"], ["\u0E40", "\u0E46"], ["\u0E81", "\u0E82"], "\u0E84", ["\u0E87", "\u0E88"], "\u0E8A", "\u0E8D", ["\u0E94", "\u0E97"], ["\u0E99", "\u0E9F"], ["\u0EA1", "\u0EA3"], "\u0EA5", "\u0EA7", ["\u0EAA", "\u0EAB"], ["\u0EAD", "\u0EB0"], ["\u0EB2", "\u0EB3"], "\u0EBD", ["\u0EC0", "\u0EC4"], "\u0EC6", ["\u0EDC", "\u0EDF"], "\u0F00", ["\u0F40", "\u0F47"], ["\u0F49", "\u0F6C"], ["\u0F88", "\u0F8C"], ["\u1000", "\u102A"], "\u103F", ["\u1050", "\u1055"], ["\u105A", "\u105D"], "\u1061", ["\u1065", "\u1066"], ["\u106E", "\u1070"], ["\u1075", "\u1081"], "\u108E", ["\u10A0", "\u10C5"], "\u10C7", "\u10CD", ["\u10D0", "\u10FA"], ["\u10FC", "\u1248"], ["\u124A", "\u124D"], ["\u1250", "\u1256"], "\u1258", ["\u125A", "\u125D"], ["\u1260", "\u1288"], ["\u128A", "\u128D"], ["\u1290", "\u12B0"], ["\u12B2", "\u12B5"], ["\u12B8", "\u12BE"], "\u12C0", ["\u12C2", "\u12C5"], ["\u12C8", "\u12D6"], ["\u12D8", "\u1310"], ["\u1312", "\u1315"], ["\u1318", "\u135A"], ["\u1380", "\u138F"], ["\u13A0", "\u13F5"], ["\u13F8", "\u13FD"], ["\u1401", "\u166C"], ["\u166F", "\u167F"], ["\u1681", "\u169A"], ["\u16A0", "\u16EA"], ["\u16EE", "\u16F8"], ["\u1700", "\u170C"], ["\u170E", "\u1711"], ["\u1720", "\u1731"], ["\u1740", "\u1751"], ["\u1760", "\u176C"], ["\u176E", "\u1770"], ["\u1780", "\u17B3"], "\u17D7", "\u17DC", ["\u1820", "\u1878"], ["\u1880", "\u1884"], ["\u1887", "\u18A8"], "\u18AA", ["\u18B0", "\u18F5"], ["\u1900", "\u191E"], ["\u1950", "\u196D"], ["\u1970", "\u1974"], ["\u1980", "\u19AB"], ["\u19B0", "\u19C9"], ["\u1A00", "\u1A16"], ["\u1A20", "\u1A54"], "\u1AA7", ["\u1B05", "\u1B33"], ["\u1B45", "\u1B4B"], ["\u1B83", "\u1BA0"], ["\u1BAE", "\u1BAF"], ["\u1BBA", "\u1BE5"], ["\u1C00", "\u1C23"], ["\u1C4D", "\u1C4F"], ["\u1C5A", "\u1C7D"], ["\u1C80", "\u1C88"], ["\u1C90", "\u1CBA"], ["\u1CBD", "\u1CBF"], ["\u1CE9", "\u1CEC"], ["\u1CEE", "\u1CF1"], ["\u1CF5", "\u1CF6"], ["\u1D00", "\u1DBF"], ["\u1E00", "\u1F15"], ["\u1F18", "\u1F1D"], ["\u1F20", "\u1F45"], ["\u1F48", "\u1F4D"], ["\u1F50", "\u1F57"], "\u1F59", "\u1F5B", "\u1F5D", ["\u1F5F", "\u1F7D"], ["\u1F80", "\u1FB4"], ["\u1FB6", "\u1FBC"], "\u1FBE", ["\u1FC2", "\u1FC4"], ["\u1FC6", "\u1FCC"], ["\u1FD0", "\u1FD3"], ["\u1FD6", "\u1FDB"], ["\u1FE0", "\u1FEC"], ["\u1FF2", "\u1FF4"], ["\u1FF6", "\u1FFC"], "\u2071", "\u207F", ["\u2090", "\u209C"], "\u2102", "\u2107", ["\u210A", "\u2113"], "\u2115", ["\u2119", "\u211D"], "\u2124", "\u2126", "\u2128", ["\u212A", "\u212D"], ["\u212F", "\u2139"], ["\u213C", "\u213F"], ["\u2145", "\u2149"], "\u214E", ["\u2160", "\u2188"], ["\u2C00", "\u2C2E"], ["\u2C30", "\u2C5E"], ["\u2C60", "\u2CE4"], ["\u2CEB", "\u2CEE"], ["\u2CF2", "\u2CF3"], ["\u2D00", "\u2D25"], "\u2D27", "\u2D2D", ["\u2D30", "\u2D67"], "\u2D6F", ["\u2D80", "\u2D96"], ["\u2DA0", "\u2DA6"], ["\u2DA8", "\u2DAE"], ["\u2DB0", "\u2DB6"], ["\u2DB8", "\u2DBE"], ["\u2DC0", "\u2DC6"], ["\u2DC8", "\u2DCE"], ["\u2DD0", "\u2DD6"], ["\u2DD8", "\u2DDE"], "\u2E2F", ["\u3005", "\u3007"], ["\u3021", "\u3029"], ["\u3031", "\u3035"], ["\u3038", "\u303C"], ["\u3041", "\u3096"], ["\u309D", "\u309F"], ["\u30A1", "\u30FA"], ["\u30FC", "\u30FF"], ["\u3105", "\u312F"], ["\u3131", "\u318E"], ["\u31A0", "\u31BA"], ["\u31F0", "\u31FF"], ["\u3400", "\u4DB5"], ["\u4E00", "\u9FEF"], ["\uA000", "\uA48C"], ["\uA4D0", "\uA4FD"], ["\uA500", "\uA60C"], ["\uA610", "\uA61F"], ["\uA62A", "\uA62B"], ["\uA640", "\uA66E"], ["\uA67F", "\uA69D"], ["\uA6A0", "\uA6EF"], ["\uA717", "\uA71F"], ["\uA722", "\uA788"], ["\uA78B", "\uA7B9"], ["\uA7F7", "\uA801"], ["\uA803", "\uA805"], ["\uA807", "\uA80A"], ["\uA80C", "\uA822"], ["\uA840", "\uA873"], ["\uA882", "\uA8B3"], ["\uA8F2", "\uA8F7"], "\uA8FB", ["\uA8FD", "\uA8FE"], ["\uA90A", "\uA925"], ["\uA930", "\uA946"], ["\uA960", "\uA97C"], ["\uA984", "\uA9B2"], "\uA9CF", ["\uA9E0", "\uA9E4"], ["\uA9E6", "\uA9EF"], ["\uA9FA", "\uA9FE"], ["\uAA00", "\uAA28"], ["\uAA40", "\uAA42"], ["\uAA44", "\uAA4B"], ["\uAA60", "\uAA76"], "\uAA7A", ["\uAA7E", "\uAAAF"], "\uAAB1", ["\uAAB5", "\uAAB6"], ["\uAAB9", "\uAABD"], "\uAAC0", "\uAAC2", ["\uAADB", "\uAADD"], ["\uAAE0", "\uAAEA"], ["\uAAF2", "\uAAF4"], ["\uAB01", "\uAB06"], ["\uAB09", "\uAB0E"], ["\uAB11", "\uAB16"], ["\uAB20", "\uAB26"], ["\uAB28", "\uAB2E"], ["\uAB30", "\uAB5A"], ["\uAB5C", "\uAB65"], ["\uAB70", "\uABE2"], ["\uAC00", "\uD7A3"], ["\uD7B0", "\uD7C6"], ["\uD7CB", "\uD7FB"], ["\uF900", "\uFA6D"], ["\uFA70", "\uFAD9"], ["\uFB00", "\uFB06"], ["\uFB13", "\uFB17"], "\uFB1D", ["\uFB1F", "\uFB28"], ["\uFB2A", "\uFB36"], ["\uFB38", "\uFB3C"], "\uFB3E", ["\uFB40", "\uFB41"], ["\uFB43", "\uFB44"], ["\uFB46", "\uFBB1"], ["\uFBD3", "\uFD3D"], ["\uFD50", "\uFD8F"], ["\uFD92", "\uFDC7"], ["\uFDF0", "\uFDFB"], ["\uFE70", "\uFE74"], ["\uFE76", "\uFEFC"], ["\uFF21", "\uFF3A"], ["\uFF41", "\uFF5A"], ["\uFF66", "\uFFBE"], ["\uFFC2", "\uFFC7"], ["\uFFCA", "\uFFCF"], ["\uFFD2", "\uFFD7"], ["\uFFDA", "\uFFDC"]], false, false);
+  var peg$e16 = peg$literalExpectation("[", false);
+  var peg$e17 = peg$literalExpectation("]", false);
+  var peg$e18 = peg$literalExpectation("{", false);
+  var peg$e19 = peg$literalExpectation("}", false);
+  var peg$e20 = peg$literalExpectation("%", false);
+  var peg$e21 = peg$literalExpectation("<", false);
+  var peg$e22 = peg$literalExpectation(">", false);
+  var peg$e23 = peg$classExpectation(["@", "_"], false, false);
+  var peg$e24 = peg$literalExpectation("!", false);
+  var peg$e25 = peg$literalExpectation("(", false);
+  var peg$e26 = peg$literalExpectation(")", false);
+  var peg$e27 = peg$literalExpectation("/", false);
+  var peg$e28 = peg$literalExpectation("*", false);
+  var peg$e29 = peg$literalExpectation("?", false);
+  var peg$e30 = peg$literalExpectation(":", false);
+  var peg$e31 = peg$literalExpectation("..", false);
+  var peg$e32 = peg$literalExpectation("^", false);
+  var peg$e33 = peg$literalExpectation("struct", false);
+  var peg$e34 = peg$literalExpectation("target", false);
+  var peg$e35 = peg$literalExpectation("euclid", false);
+  var peg$e36 = peg$literalExpectation("slow", false);
+  var peg$e37 = peg$literalExpectation("rotL", false);
+  var peg$e38 = peg$literalExpectation("rotR", false);
+  var peg$e39 = peg$literalExpectation("fast", false);
+  var peg$e40 = peg$literalExpectation("scale", false);
+  var peg$e41 = peg$literalExpectation("//", false);
+  var peg$e42 = peg$classExpectation(["\n"], true, false);
+  var peg$e43 = peg$literalExpectation("cat", false);
+  var peg$e44 = peg$literalExpectation("$", false);
+  var peg$e45 = peg$literalExpectation("setcps", false);
+  var peg$e46 = peg$literalExpectation("setbpm", false);
+  var peg$e47 = peg$literalExpectation("hush", false);
+  var peg$e48 = peg$classExpectation([["A", "Z"], ["a", "z"], "\xAA", "\xB5", "\xBA", ["\xC0", "\xD6"], ["\xD8", "\xF6"], ["\xF8", "\u02C1"], ["\u02C6", "\u02D1"], ["\u02E0", "\u02E4"], "\u02EC", "\u02EE", ["\u0370", "\u0374"], ["\u0376", "\u0377"], ["\u037A", "\u037D"], "\u037F", "\u0386", ["\u0388", "\u038A"], "\u038C", ["\u038E", "\u03A1"], ["\u03A3", "\u03F5"], ["\u03F7", "\u0481"], ["\u048A", "\u052F"], ["\u0531", "\u0556"], "\u0559", ["\u0560", "\u0588"], ["\u05D0", "\u05EA"], ["\u05EF", "\u05F2"], ["\u0620", "\u064A"], ["\u066E", "\u066F"], ["\u0671", "\u06D3"], "\u06D5", ["\u06E5", "\u06E6"], ["\u06EE", "\u06EF"], ["\u06FA", "\u06FC"], "\u06FF", "\u0710", ["\u0712", "\u072F"], ["\u074D", "\u07A5"], "\u07B1", ["\u07CA", "\u07EA"], ["\u07F4", "\u07F5"], "\u07FA", ["\u0800", "\u0815"], "\u081A", "\u0824", "\u0828", ["\u0840", "\u0858"], ["\u0860", "\u086A"], ["\u08A0", "\u08B4"], ["\u08B6", "\u08BD"], ["\u0904", "\u0939"], "\u093D", "\u0950", ["\u0958", "\u0961"], ["\u0971", "\u0980"], ["\u0985", "\u098C"], ["\u098F", "\u0990"], ["\u0993", "\u09A8"], ["\u09AA", "\u09B0"], "\u09B2", ["\u09B6", "\u09B9"], "\u09BD", "\u09CE", ["\u09DC", "\u09DD"], ["\u09DF", "\u09E1"], ["\u09F0", "\u09F1"], "\u09FC", ["\u0A05", "\u0A0A"], ["\u0A0F", "\u0A10"], ["\u0A13", "\u0A28"], ["\u0A2A", "\u0A30"], ["\u0A32", "\u0A33"], ["\u0A35", "\u0A36"], ["\u0A38", "\u0A39"], ["\u0A59", "\u0A5C"], "\u0A5E", ["\u0A72", "\u0A74"], ["\u0A85", "\u0A8D"], ["\u0A8F", "\u0A91"], ["\u0A93", "\u0AA8"], ["\u0AAA", "\u0AB0"], ["\u0AB2", "\u0AB3"], ["\u0AB5", "\u0AB9"], "\u0ABD", "\u0AD0", ["\u0AE0", "\u0AE1"], "\u0AF9", ["\u0B05", "\u0B0C"], ["\u0B0F", "\u0B10"], ["\u0B13", "\u0B28"], ["\u0B2A", "\u0B30"], ["\u0B32", "\u0B33"], ["\u0B35", "\u0B39"], "\u0B3D", ["\u0B5C", "\u0B5D"], ["\u0B5F", "\u0B61"], "\u0B71", "\u0B83", ["\u0B85", "\u0B8A"], ["\u0B8E", "\u0B90"], ["\u0B92", "\u0B95"], ["\u0B99", "\u0B9A"], "\u0B9C", ["\u0B9E", "\u0B9F"], ["\u0BA3", "\u0BA4"], ["\u0BA8", "\u0BAA"], ["\u0BAE", "\u0BB9"], "\u0BD0", ["\u0C05", "\u0C0C"], ["\u0C0E", "\u0C10"], ["\u0C12", "\u0C28"], ["\u0C2A", "\u0C39"], "\u0C3D", ["\u0C58", "\u0C5A"], ["\u0C60", "\u0C61"], "\u0C80", ["\u0C85", "\u0C8C"], ["\u0C8E", "\u0C90"], ["\u0C92", "\u0CA8"], ["\u0CAA", "\u0CB3"], ["\u0CB5", "\u0CB9"], "\u0CBD", "\u0CDE", ["\u0CE0", "\u0CE1"], ["\u0CF1", "\u0CF2"], ["\u0D05", "\u0D0C"], ["\u0D0E", "\u0D10"], ["\u0D12", "\u0D3A"], "\u0D3D", "\u0D4E", ["\u0D54", "\u0D56"], ["\u0D5F", "\u0D61"], ["\u0D7A", "\u0D7F"], ["\u0D85", "\u0D96"], ["\u0D9A", "\u0DB1"], ["\u0DB3", "\u0DBB"], "\u0DBD", ["\u0DC0", "\u0DC6"], ["\u0E01", "\u0E30"], ["\u0E32", "\u0E33"], ["\u0E40", "\u0E46"], ["\u0E81", "\u0E82"], "\u0E84", ["\u0E87", "\u0E88"], "\u0E8A", "\u0E8D", ["\u0E94", "\u0E97"], ["\u0E99", "\u0E9F"], ["\u0EA1", "\u0EA3"], "\u0EA5", "\u0EA7", ["\u0EAA", "\u0EAB"], ["\u0EAD", "\u0EB0"], ["\u0EB2", "\u0EB3"], "\u0EBD", ["\u0EC0", "\u0EC4"], "\u0EC6", ["\u0EDC", "\u0EDF"], "\u0F00", ["\u0F40", "\u0F47"], ["\u0F49", "\u0F6C"], ["\u0F88", "\u0F8C"], ["\u1000", "\u102A"], "\u103F", ["\u1050", "\u1055"], ["\u105A", "\u105D"], "\u1061", ["\u1065", "\u1066"], ["\u106E", "\u1070"], ["\u1075", "\u1081"], "\u108E", ["\u10A0", "\u10C5"], "\u10C7", "\u10CD", ["\u10D0", "\u10FA"], ["\u10FC", "\u1248"], ["\u124A", "\u124D"], ["\u1250", "\u1256"], "\u1258", ["\u125A", "\u125D"], ["\u1260", "\u1288"], ["\u128A", "\u128D"], ["\u1290", "\u12B0"], ["\u12B2", "\u12B5"], ["\u12B8", "\u12BE"], "\u12C0", ["\u12C2", "\u12C5"], ["\u12C8", "\u12D6"], ["\u12D8", "\u1310"], ["\u1312", "\u1315"], ["\u1318", "\u135A"], ["\u1380", "\u138F"], ["\u13A0", "\u13F5"], ["\u13F8", "\u13FD"], ["\u1401", "\u166C"], ["\u166F", "\u167F"], ["\u1681", "\u169A"], ["\u16A0", "\u16EA"], ["\u16EE", "\u16F8"], ["\u1700", "\u170C"], ["\u170E", "\u1711"], ["\u1720", "\u1731"], ["\u1740", "\u1751"], ["\u1760", "\u176C"], ["\u176E", "\u1770"], ["\u1780", "\u17B3"], "\u17D7", "\u17DC", ["\u1820", "\u1878"], ["\u1880", "\u1884"], ["\u1887", "\u18A8"], "\u18AA", ["\u18B0", "\u18F5"], ["\u1900", "\u191E"], ["\u1950", "\u196D"], ["\u1970", "\u1974"], ["\u1980", "\u19AB"], ["\u19B0", "\u19C9"], ["\u1A00", "\u1A16"], ["\u1A20", "\u1A54"], "\u1AA7", ["\u1B05", "\u1B33"], ["\u1B45", "\u1B4B"], ["\u1B83", "\u1BA0"], ["\u1BAE", "\u1BAF"], ["\u1BBA", "\u1BE5"], ["\u1C00", "\u1C23"], ["\u1C4D", "\u1C4F"], ["\u1C5A", "\u1C7D"], ["\u1C80", "\u1C88"], ["\u1C90", "\u1CBA"], ["\u1CBD", "\u1CBF"], ["\u1CE9", "\u1CEC"], ["\u1CEE", "\u1CF1"], ["\u1CF5", "\u1CF6"], ["\u1D00", "\u1DBF"], ["\u1E00", "\u1F15"], ["\u1F18", "\u1F1D"], ["\u1F20", "\u1F45"], ["\u1F48", "\u1F4D"], ["\u1F50", "\u1F57"], "\u1F59", "\u1F5B", "\u1F5D", ["\u1F5F", "\u1F7D"], ["\u1F80", "\u1FB4"], ["\u1FB6", "\u1FBC"], "\u1FBE", ["\u1FC2", "\u1FC4"], ["\u1FC6", "\u1FCC"], ["\u1FD0", "\u1FD3"], ["\u1FD6", "\u1FDB"], ["\u1FE0", "\u1FEC"], ["\u1FF2", "\u1FF4"], ["\u1FF6", "\u1FFC"], "\u2071", "\u207F", ["\u2090", "\u209C"], "\u2102", "\u2107", ["\u210A", "\u2113"], "\u2115", ["\u2119", "\u211D"], "\u2124", "\u2126", "\u2128", ["\u212A", "\u212D"], ["\u212F", "\u2139"], ["\u213C", "\u213F"], ["\u2145", "\u2149"], "\u214E", ["\u2160", "\u2188"], ["\u2C00", "\u2C2E"], ["\u2C30", "\u2C5E"], ["\u2C60", "\u2CE4"], ["\u2CEB", "\u2CEE"], ["\u2CF2", "\u2CF3"], ["\u2D00", "\u2D25"], "\u2D27", "\u2D2D", ["\u2D30", "\u2D67"], "\u2D6F", ["\u2D80", "\u2D96"], ["\u2DA0", "\u2DA6"], ["\u2DA8", "\u2DAE"], ["\u2DB0", "\u2DB6"], ["\u2DB8", "\u2DBE"], ["\u2DC0", "\u2DC6"], ["\u2DC8", "\u2DCE"], ["\u2DD0", "\u2DD6"], ["\u2DD8", "\u2DDE"], "\u2E2F", ["\u3005", "\u3007"], ["\u3021", "\u3029"], ["\u3031", "\u3035"], ["\u3038", "\u303C"], ["\u3041", "\u3096"], ["\u309D", "\u309F"], ["\u30A1", "\u30FA"], ["\u30FC", "\u30FF"], ["\u3105", "\u312F"], ["\u3131", "\u318E"], ["\u31A0", "\u31BA"], ["\u31F0", "\u31FF"], ["\u3400", "\u4DB5"], ["\u4E00", "\u9FEF"], ["\uA000", "\uA48C"], ["\uA4D0", "\uA4FD"], ["\uA500", "\uA60C"], ["\uA610", "\uA61F"], ["\uA62A", "\uA62B"], ["\uA640", "\uA66E"], ["\uA67F", "\uA69D"], ["\uA6A0", "\uA6EF"], ["\uA717", "\uA71F"], ["\uA722", "\uA788"], ["\uA78B", "\uA7B9"], ["\uA7F7", "\uA801"], ["\uA803", "\uA805"], ["\uA807", "\uA80A"], ["\uA80C", "\uA822"], ["\uA840", "\uA873"], ["\uA882", "\uA8B3"], ["\uA8F2", "\uA8F7"], "\uA8FB", ["\uA8FD", "\uA8FE"], ["\uA90A", "\uA925"], ["\uA930", "\uA946"], ["\uA960", "\uA97C"], ["\uA984", "\uA9B2"], "\uA9CF", ["\uA9E0", "\uA9E4"], ["\uA9E6", "\uA9EF"], ["\uA9FA", "\uA9FE"], ["\uAA00", "\uAA28"], ["\uAA40", "\uAA42"], ["\uAA44", "\uAA4B"], ["\uAA60", "\uAA76"], "\uAA7A", ["\uAA7E", "\uAAAF"], "\uAAB1", ["\uAAB5", "\uAAB6"], ["\uAAB9", "\uAABD"], "\uAAC0", "\uAAC2", ["\uAADB", "\uAADD"], ["\uAAE0", "\uAAEA"], ["\uAAF2", "\uAAF4"], ["\uAB01", "\uAB06"], ["\uAB09", "\uAB0E"], ["\uAB11", "\uAB16"], ["\uAB20", "\uAB26"], ["\uAB28", "\uAB2E"], ["\uAB30", "\uAB5A"], ["\uAB5C", "\uAB65"], ["\uAB70", "\uABE2"], ["\uAC00", "\uD7A3"], ["\uD7B0", "\uD7C6"], ["\uD7CB", "\uD7FB"], ["\uF900", "\uFA6D"], ["\uFA70", "\uFAD9"], ["\uFB00", "\uFB06"], ["\uFB13", "\uFB17"], "\uFB1D", ["\uFB1F", "\uFB28"], ["\uFB2A", "\uFB36"], ["\uFB38", "\uFB3C"], "\uFB3E", ["\uFB40", "\uFB41"], ["\uFB43", "\uFB44"], ["\uFB46", "\uFBB1"], ["\uFBD3", "\uFD3D"], ["\uFD50", "\uFD8F"], ["\uFD92", "\uFDC7"], ["\uFDF0", "\uFDFB"], ["\uFE70", "\uFE74"], ["\uFE76", "\uFEFC"], ["\uFF21", "\uFF3A"], ["\uFF41", "\uFF5A"], ["\uFF66", "\uFFBE"], ["\uFFC2", "\uFFC7"], ["\uFFCA", "\uFFCF"], ["\uFFD2", "\uFFD7"], ["\uFFDA", "\uFFDC"]], false, false);
+  var peg$e49 = peg$classExpectation([["a", "z"], "\xB5", ["\xDF", "\xF6"], ["\xF8", "\xFF"], "\u0101", "\u0103", "\u0105", "\u0107", "\u0109", "\u010B", "\u010D", "\u010F", "\u0111", "\u0113", "\u0115", "\u0117", "\u0119", "\u011B", "\u011D", "\u011F", "\u0121", "\u0123", "\u0125", "\u0127", "\u0129", "\u012B", "\u012D", "\u012F", "\u0131", "\u0133", "\u0135", ["\u0137", "\u0138"], "\u013A", "\u013C", "\u013E", "\u0140", "\u0142", "\u0144", "\u0146", ["\u0148", "\u0149"], "\u014B", "\u014D", "\u014F", "\u0151", "\u0153", "\u0155", "\u0157", "\u0159", "\u015B", "\u015D", "\u015F", "\u0161", "\u0163", "\u0165", "\u0167", "\u0169", "\u016B", "\u016D", "\u016F", "\u0171", "\u0173", "\u0175", "\u0177", "\u017A", "\u017C", ["\u017E", "\u0180"], "\u0183", "\u0185", "\u0188", ["\u018C", "\u018D"], "\u0192", "\u0195", ["\u0199", "\u019B"], "\u019E", "\u01A1", "\u01A3", "\u01A5", "\u01A8", ["\u01AA", "\u01AB"], "\u01AD", "\u01B0", "\u01B4", "\u01B6", ["\u01B9", "\u01BA"], ["\u01BD", "\u01BF"], "\u01C6", "\u01C9", "\u01CC", "\u01CE", "\u01D0", "\u01D2", "\u01D4", "\u01D6", "\u01D8", "\u01DA", ["\u01DC", "\u01DD"], "\u01DF", "\u01E1", "\u01E3", "\u01E5", "\u01E7", "\u01E9", "\u01EB", "\u01ED", ["\u01EF", "\u01F0"], "\u01F3", "\u01F5", "\u01F9", "\u01FB", "\u01FD", "\u01FF", "\u0201", "\u0203", "\u0205", "\u0207", "\u0209", "\u020B", "\u020D", "\u020F", "\u0211", "\u0213", "\u0215", "\u0217", "\u0219", "\u021B", "\u021D", "\u021F", "\u0221", "\u0223", "\u0225", "\u0227", "\u0229", "\u022B", "\u022D", "\u022F", "\u0231", ["\u0233", "\u0239"], "\u023C", ["\u023F", "\u0240"], "\u0242", "\u0247", "\u0249", "\u024B", "\u024D", ["\u024F", "\u0293"], ["\u0295", "\u02AF"], "\u0371", "\u0373", "\u0377", ["\u037B", "\u037D"], "\u0390", ["\u03AC", "\u03CE"], ["\u03D0", "\u03D1"], ["\u03D5", "\u03D7"], "\u03D9", "\u03DB", "\u03DD", "\u03DF", "\u03E1", "\u03E3", "\u03E5", "\u03E7", "\u03E9", "\u03EB", "\u03ED", ["\u03EF", "\u03F3"], "\u03F5", "\u03F8", ["\u03FB", "\u03FC"], ["\u0430", "\u045F"], "\u0461", "\u0463", "\u0465", "\u0467", "\u0469", "\u046B", "\u046D", "\u046F", "\u0471", "\u0473", "\u0475", "\u0477", "\u0479", "\u047B", "\u047D", "\u047F", "\u0481", "\u048B", "\u048D", "\u048F", "\u0491", "\u0493", "\u0495", "\u0497", "\u0499", "\u049B", "\u049D", "\u049F", "\u04A1", "\u04A3", "\u04A5", "\u04A7", "\u04A9", "\u04AB", "\u04AD", "\u04AF", "\u04B1", "\u04B3", "\u04B5", "\u04B7", "\u04B9", "\u04BB", "\u04BD", "\u04BF", "\u04C2", "\u04C4", "\u04C6", "\u04C8", "\u04CA", "\u04CC", ["\u04CE", "\u04CF"], "\u04D1", "\u04D3", "\u04D5", "\u04D7", "\u04D9", "\u04DB", "\u04DD", "\u04DF", "\u04E1", "\u04E3", "\u04E5", "\u04E7", "\u04E9", "\u04EB", "\u04ED", "\u04EF", "\u04F1", "\u04F3", "\u04F5", "\u04F7", "\u04F9", "\u04FB", "\u04FD", "\u04FF", "\u0501", "\u0503", "\u0505", "\u0507", "\u0509", "\u050B", "\u050D", "\u050F", "\u0511", "\u0513", "\u0515", "\u0517", "\u0519", "\u051B", "\u051D", "\u051F", "\u0521", "\u0523", "\u0525", "\u0527", "\u0529", "\u052B", "\u052D", "\u052F", ["\u0560", "\u0588"], ["\u10D0", "\u10FA"], ["\u10FD", "\u10FF"], ["\u13F8", "\u13FD"], ["\u1C80", "\u1C88"], ["\u1D00", "\u1D2B"], ["\u1D6B", "\u1D77"], ["\u1D79", "\u1D9A"], "\u1E01", "\u1E03", "\u1E05", "\u1E07", "\u1E09", "\u1E0B", "\u1E0D", "\u1E0F", "\u1E11", "\u1E13", "\u1E15", "\u1E17", "\u1E19", "\u1E1B", "\u1E1D", "\u1E1F", "\u1E21", "\u1E23", "\u1E25", "\u1E27", "\u1E29", "\u1E2B", "\u1E2D", "\u1E2F", "\u1E31", "\u1E33", "\u1E35", "\u1E37", "\u1E39", "\u1E3B", "\u1E3D", "\u1E3F", "\u1E41", "\u1E43", "\u1E45", "\u1E47", "\u1E49", "\u1E4B", "\u1E4D", "\u1E4F", "\u1E51", "\u1E53", "\u1E55", "\u1E57", "\u1E59", "\u1E5B", "\u1E5D", "\u1E5F", "\u1E61", "\u1E63", "\u1E65", "\u1E67", "\u1E69", "\u1E6B", "\u1E6D", "\u1E6F", "\u1E71", "\u1E73", "\u1E75", "\u1E77", "\u1E79", "\u1E7B", "\u1E7D", "\u1E7F", "\u1E81", "\u1E83", "\u1E85", "\u1E87", "\u1E89", "\u1E8B", "\u1E8D", "\u1E8F", "\u1E91", "\u1E93", ["\u1E95", "\u1E9D"], "\u1E9F", "\u1EA1", "\u1EA3", "\u1EA5", "\u1EA7", "\u1EA9", "\u1EAB", "\u1EAD", "\u1EAF", "\u1EB1", "\u1EB3", "\u1EB5", "\u1EB7", "\u1EB9", "\u1EBB", "\u1EBD", "\u1EBF", "\u1EC1", "\u1EC3", "\u1EC5", "\u1EC7", "\u1EC9", "\u1ECB", "\u1ECD", "\u1ECF", "\u1ED1", "\u1ED3", "\u1ED5", "\u1ED7", "\u1ED9", "\u1EDB", "\u1EDD", "\u1EDF", "\u1EE1", "\u1EE3", "\u1EE5", "\u1EE7", "\u1EE9", "\u1EEB", "\u1EED", "\u1EEF", "\u1EF1", "\u1EF3", "\u1EF5", "\u1EF7", "\u1EF9", "\u1EFB", "\u1EFD", ["\u1EFF", "\u1F07"], ["\u1F10", "\u1F15"], ["\u1F20", "\u1F27"], ["\u1F30", "\u1F37"], ["\u1F40", "\u1F45"], ["\u1F50", "\u1F57"], ["\u1F60", "\u1F67"], ["\u1F70", "\u1F7D"], ["\u1F80", "\u1F87"], ["\u1F90", "\u1F97"], ["\u1FA0", "\u1FA7"], ["\u1FB0", "\u1FB4"], ["\u1FB6", "\u1FB7"], "\u1FBE", ["\u1FC2", "\u1FC4"], ["\u1FC6", "\u1FC7"], ["\u1FD0", "\u1FD3"], ["\u1FD6", "\u1FD7"], ["\u1FE0", "\u1FE7"], ["\u1FF2", "\u1FF4"], ["\u1FF6", "\u1FF7"], "\u210A", ["\u210E", "\u210F"], "\u2113", "\u212F", "\u2134", "\u2139", ["\u213C", "\u213D"], ["\u2146", "\u2149"], "\u214E", "\u2184", ["\u2C30", "\u2C5E"], "\u2C61", ["\u2C65", "\u2C66"], "\u2C68", "\u2C6A", "\u2C6C", "\u2C71", ["\u2C73", "\u2C74"], ["\u2C76", "\u2C7B"], "\u2C81", "\u2C83", "\u2C85", "\u2C87", "\u2C89", "\u2C8B", "\u2C8D", "\u2C8F", "\u2C91", "\u2C93", "\u2C95", "\u2C97", "\u2C99", "\u2C9B", "\u2C9D", "\u2C9F", "\u2CA1", "\u2CA3", "\u2CA5", "\u2CA7", "\u2CA9", "\u2CAB", "\u2CAD", "\u2CAF", "\u2CB1", "\u2CB3", "\u2CB5", "\u2CB7", "\u2CB9", "\u2CBB", "\u2CBD", "\u2CBF", "\u2CC1", "\u2CC3", "\u2CC5", "\u2CC7", "\u2CC9", "\u2CCB", "\u2CCD", "\u2CCF", "\u2CD1", "\u2CD3", "\u2CD5", "\u2CD7", "\u2CD9", "\u2CDB", "\u2CDD", "\u2CDF", "\u2CE1", ["\u2CE3", "\u2CE4"], "\u2CEC", "\u2CEE", "\u2CF3", ["\u2D00", "\u2D25"], "\u2D27", "\u2D2D", "\uA641", "\uA643", "\uA645", "\uA647", "\uA649", "\uA64B", "\uA64D", "\uA64F", "\uA651", "\uA653", "\uA655", "\uA657", "\uA659", "\uA65B", "\uA65D", "\uA65F", "\uA661", "\uA663", "\uA665", "\uA667", "\uA669", "\uA66B", "\uA66D", "\uA681", "\uA683", "\uA685", "\uA687", "\uA689", "\uA68B", "\uA68D", "\uA68F", "\uA691", "\uA693", "\uA695", "\uA697", "\uA699", "\uA69B", "\uA723", "\uA725", "\uA727", "\uA729", "\uA72B", "\uA72D", ["\uA72F", "\uA731"], "\uA733", "\uA735", "\uA737", "\uA739", "\uA73B", "\uA73D", "\uA73F", "\uA741", "\uA743", "\uA745", "\uA747", "\uA749", "\uA74B", "\uA74D", "\uA74F", "\uA751", "\uA753", "\uA755", "\uA757", "\uA759", "\uA75B", "\uA75D", "\uA75F", "\uA761", "\uA763", "\uA765", "\uA767", "\uA769", "\uA76B", "\uA76D", "\uA76F", ["\uA771", "\uA778"], "\uA77A", "\uA77C", "\uA77F", "\uA781", "\uA783", "\uA785", "\uA787", "\uA78C", "\uA78E", "\uA791", ["\uA793", "\uA795"], "\uA797", "\uA799", "\uA79B", "\uA79D", "\uA79F", "\uA7A1", "\uA7A3", "\uA7A5", "\uA7A7", "\uA7A9", "\uA7AF", "\uA7B5", "\uA7B7", "\uA7B9", "\uA7FA", ["\uAB30", "\uAB5A"], ["\uAB60", "\uAB65"], ["\uAB70", "\uABBF"], ["\uFB00", "\uFB06"], ["\uFB13", "\uFB17"], ["\uFF41", "\uFF5A"]], false, false);
+  var peg$e50 = peg$classExpectation([["\u02B0", "\u02C1"], ["\u02C6", "\u02D1"], ["\u02E0", "\u02E4"], "\u02EC", "\u02EE", "\u0374", "\u037A", "\u0559", "\u0640", ["\u06E5", "\u06E6"], ["\u07F4", "\u07F5"], "\u07FA", "\u081A", "\u0824", "\u0828", "\u0971", "\u0E46", "\u0EC6", "\u10FC", "\u17D7", "\u1843", "\u1AA7", ["\u1C78", "\u1C7D"], ["\u1D2C", "\u1D6A"], "\u1D78", ["\u1D9B", "\u1DBF"], "\u2071", "\u207F", ["\u2090", "\u209C"], ["\u2C7C", "\u2C7D"], "\u2D6F", "\u2E2F", "\u3005", ["\u3031", "\u3035"], "\u303B", ["\u309D", "\u309E"], ["\u30FC", "\u30FE"], "\uA015", ["\uA4F8", "\uA4FD"], "\uA60C", "\uA67F", ["\uA69C", "\uA69D"], ["\uA717", "\uA71F"], "\uA770", "\uA788", ["\uA7F8", "\uA7F9"], "\uA9CF", "\uA9E6", "\uAA70", "\uAADD", ["\uAAF3", "\uAAF4"], ["\uAB5C", "\uAB5F"], "\uFF70", ["\uFF9E", "\uFF9F"]], false, false);
+  var peg$e51 = peg$classExpectation(["\xAA", "\xBA", "\u01BB", ["\u01C0", "\u01C3"], "\u0294", ["\u05D0", "\u05EA"], ["\u05EF", "\u05F2"], ["\u0620", "\u063F"], ["\u0641", "\u064A"], ["\u066E", "\u066F"], ["\u0671", "\u06D3"], "\u06D5", ["\u06EE", "\u06EF"], ["\u06FA", "\u06FC"], "\u06FF", "\u0710", ["\u0712", "\u072F"], ["\u074D", "\u07A5"], "\u07B1", ["\u07CA", "\u07EA"], ["\u0800", "\u0815"], ["\u0840", "\u0858"], ["\u0860", "\u086A"], ["\u08A0", "\u08B4"], ["\u08B6", "\u08BD"], ["\u0904", "\u0939"], "\u093D", "\u0950", ["\u0958", "\u0961"], ["\u0972", "\u0980"], ["\u0985", "\u098C"], ["\u098F", "\u0990"], ["\u0993", "\u09A8"], ["\u09AA", "\u09B0"], "\u09B2", ["\u09B6", "\u09B9"], "\u09BD", "\u09CE", ["\u09DC", "\u09DD"], ["\u09DF", "\u09E1"], ["\u09F0", "\u09F1"], "\u09FC", ["\u0A05", "\u0A0A"], ["\u0A0F", "\u0A10"], ["\u0A13", "\u0A28"], ["\u0A2A", "\u0A30"], ["\u0A32", "\u0A33"], ["\u0A35", "\u0A36"], ["\u0A38", "\u0A39"], ["\u0A59", "\u0A5C"], "\u0A5E", ["\u0A72", "\u0A74"], ["\u0A85", "\u0A8D"], ["\u0A8F", "\u0A91"], ["\u0A93", "\u0AA8"], ["\u0AAA", "\u0AB0"], ["\u0AB2", "\u0AB3"], ["\u0AB5", "\u0AB9"], "\u0ABD", "\u0AD0", ["\u0AE0", "\u0AE1"], "\u0AF9", ["\u0B05", "\u0B0C"], ["\u0B0F", "\u0B10"], ["\u0B13", "\u0B28"], ["\u0B2A", "\u0B30"], ["\u0B32", "\u0B33"], ["\u0B35", "\u0B39"], "\u0B3D", ["\u0B5C", "\u0B5D"], ["\u0B5F", "\u0B61"], "\u0B71", "\u0B83", ["\u0B85", "\u0B8A"], ["\u0B8E", "\u0B90"], ["\u0B92", "\u0B95"], ["\u0B99", "\u0B9A"], "\u0B9C", ["\u0B9E", "\u0B9F"], ["\u0BA3", "\u0BA4"], ["\u0BA8", "\u0BAA"], ["\u0BAE", "\u0BB9"], "\u0BD0", ["\u0C05", "\u0C0C"], ["\u0C0E", "\u0C10"], ["\u0C12", "\u0C28"], ["\u0C2A", "\u0C39"], "\u0C3D", ["\u0C58", "\u0C5A"], ["\u0C60", "\u0C61"], "\u0C80", ["\u0C85", "\u0C8C"], ["\u0C8E", "\u0C90"], ["\u0C92", "\u0CA8"], ["\u0CAA", "\u0CB3"], ["\u0CB5", "\u0CB9"], "\u0CBD", "\u0CDE", ["\u0CE0", "\u0CE1"], ["\u0CF1", "\u0CF2"], ["\u0D05", "\u0D0C"], ["\u0D0E", "\u0D10"], ["\u0D12", "\u0D3A"], "\u0D3D", "\u0D4E", ["\u0D54", "\u0D56"], ["\u0D5F", "\u0D61"], ["\u0D7A", "\u0D7F"], ["\u0D85", "\u0D96"], ["\u0D9A", "\u0DB1"], ["\u0DB3", "\u0DBB"], "\u0DBD", ["\u0DC0", "\u0DC6"], ["\u0E01", "\u0E30"], ["\u0E32", "\u0E33"], ["\u0E40", "\u0E45"], ["\u0E81", "\u0E82"], "\u0E84", ["\u0E87", "\u0E88"], "\u0E8A", "\u0E8D", ["\u0E94", "\u0E97"], ["\u0E99", "\u0E9F"], ["\u0EA1", "\u0EA3"], "\u0EA5", "\u0EA7", ["\u0EAA", "\u0EAB"], ["\u0EAD", "\u0EB0"], ["\u0EB2", "\u0EB3"], "\u0EBD", ["\u0EC0", "\u0EC4"], ["\u0EDC", "\u0EDF"], "\u0F00", ["\u0F40", "\u0F47"], ["\u0F49", "\u0F6C"], ["\u0F88", "\u0F8C"], ["\u1000", "\u102A"], "\u103F", ["\u1050", "\u1055"], ["\u105A", "\u105D"], "\u1061", ["\u1065", "\u1066"], ["\u106E", "\u1070"], ["\u1075", "\u1081"], "\u108E", ["\u1100", "\u1248"], ["\u124A", "\u124D"], ["\u1250", "\u1256"], "\u1258", ["\u125A", "\u125D"], ["\u1260", "\u1288"], ["\u128A", "\u128D"], ["\u1290", "\u12B0"], ["\u12B2", "\u12B5"], ["\u12B8", "\u12BE"], "\u12C0", ["\u12C2", "\u12C5"], ["\u12C8", "\u12D6"], ["\u12D8", "\u1310"], ["\u1312", "\u1315"], ["\u1318", "\u135A"], ["\u1380", "\u138F"], ["\u1401", "\u166C"], ["\u166F", "\u167F"], ["\u1681", "\u169A"], ["\u16A0", "\u16EA"], ["\u16F1", "\u16F8"], ["\u1700", "\u170C"], ["\u170E", "\u1711"], ["\u1720", "\u1731"], ["\u1740", "\u1751"], ["\u1760", "\u176C"], ["\u176E", "\u1770"], ["\u1780", "\u17B3"], "\u17DC", ["\u1820", "\u1842"], ["\u1844", "\u1878"], ["\u1880", "\u1884"], ["\u1887", "\u18A8"], "\u18AA", ["\u18B0", "\u18F5"], ["\u1900", "\u191E"], ["\u1950", "\u196D"], ["\u1970", "\u1974"], ["\u1980", "\u19AB"], ["\u19B0", "\u19C9"], ["\u1A00", "\u1A16"], ["\u1A20", "\u1A54"], ["\u1B05", "\u1B33"], ["\u1B45", "\u1B4B"], ["\u1B83", "\u1BA0"], ["\u1BAE", "\u1BAF"], ["\u1BBA", "\u1BE5"], ["\u1C00", "\u1C23"], ["\u1C4D", "\u1C4F"], ["\u1C5A", "\u1C77"], ["\u1CE9", "\u1CEC"], ["\u1CEE", "\u1CF1"], ["\u1CF5", "\u1CF6"], ["\u2135", "\u2138"], ["\u2D30", "\u2D67"], ["\u2D80", "\u2D96"], ["\u2DA0", "\u2DA6"], ["\u2DA8", "\u2DAE"], ["\u2DB0", "\u2DB6"], ["\u2DB8", "\u2DBE"], ["\u2DC0", "\u2DC6"], ["\u2DC8", "\u2DCE"], ["\u2DD0", "\u2DD6"], ["\u2DD8", "\u2DDE"], "\u3006", "\u303C", ["\u3041", "\u3096"], "\u309F", ["\u30A1", "\u30FA"], "\u30FF", ["\u3105", "\u312F"], ["\u3131", "\u318E"], ["\u31A0", "\u31BA"], ["\u31F0", "\u31FF"], ["\u3400", "\u4DB5"], ["\u4E00", "\u9FEF"], ["\uA000", "\uA014"], ["\uA016", "\uA48C"], ["\uA4D0", "\uA4F7"], ["\uA500", "\uA60B"], ["\uA610", "\uA61F"], ["\uA62A", "\uA62B"], "\uA66E", ["\uA6A0", "\uA6E5"], "\uA78F", "\uA7F7", ["\uA7FB", "\uA801"], ["\uA803", "\uA805"], ["\uA807", "\uA80A"], ["\uA80C", "\uA822"], ["\uA840", "\uA873"], ["\uA882", "\uA8B3"], ["\uA8F2", "\uA8F7"], "\uA8FB", ["\uA8FD", "\uA8FE"], ["\uA90A", "\uA925"], ["\uA930", "\uA946"], ["\uA960", "\uA97C"], ["\uA984", "\uA9B2"], ["\uA9E0", "\uA9E4"], ["\uA9E7", "\uA9EF"], ["\uA9FA", "\uA9FE"], ["\uAA00", "\uAA28"], ["\uAA40", "\uAA42"], ["\uAA44", "\uAA4B"], ["\uAA60", "\uAA6F"], ["\uAA71", "\uAA76"], "\uAA7A", ["\uAA7E", "\uAAAF"], "\uAAB1", ["\uAAB5", "\uAAB6"], ["\uAAB9", "\uAABD"], "\uAAC0", "\uAAC2", ["\uAADB", "\uAADC"], ["\uAAE0", "\uAAEA"], "\uAAF2", ["\uAB01", "\uAB06"], ["\uAB09", "\uAB0E"], ["\uAB11", "\uAB16"], ["\uAB20", "\uAB26"], ["\uAB28", "\uAB2E"], ["\uABC0", "\uABE2"], ["\uAC00", "\uD7A3"], ["\uD7B0", "\uD7C6"], ["\uD7CB", "\uD7FB"], ["\uF900", "\uFA6D"], ["\uFA70", "\uFAD9"], "\uFB1D", ["\uFB1F", "\uFB28"], ["\uFB2A", "\uFB36"], ["\uFB38", "\uFB3C"], "\uFB3E", ["\uFB40", "\uFB41"], ["\uFB43", "\uFB44"], ["\uFB46", "\uFBB1"], ["\uFBD3", "\uFD3D"], ["\uFD50", "\uFD8F"], ["\uFD92", "\uFDC7"], ["\uFDF0", "\uFDFB"], ["\uFE70", "\uFE74"], ["\uFE76", "\uFEFC"], ["\uFF66", "\uFF6F"], ["\uFF71", "\uFF9D"], ["\uFFA0", "\uFFBE"], ["\uFFC2", "\uFFC7"], ["\uFFCA", "\uFFCF"], ["\uFFD2", "\uFFD7"], ["\uFFDA", "\uFFDC"]], false, false);
+  var peg$e52 = peg$classExpectation(["\u01C5", "\u01C8", "\u01CB", "\u01F2", ["\u1F88", "\u1F8F"], ["\u1F98", "\u1F9F"], ["\u1FA8", "\u1FAF"], "\u1FBC", "\u1FCC", "\u1FFC"], false, false);
+  var peg$e53 = peg$classExpectation([["A", "Z"], ["\xC0", "\xD6"], ["\xD8", "\xDE"], "\u0100", "\u0102", "\u0104", "\u0106", "\u0108", "\u010A", "\u010C", "\u010E", "\u0110", "\u0112", "\u0114", "\u0116", "\u0118", "\u011A", "\u011C", "\u011E", "\u0120", "\u0122", "\u0124", "\u0126", "\u0128", "\u012A", "\u012C", "\u012E", "\u0130", "\u0132", "\u0134", "\u0136", "\u0139", "\u013B", "\u013D", "\u013F", "\u0141", "\u0143", "\u0145", "\u0147", "\u014A", "\u014C", "\u014E", "\u0150", "\u0152", "\u0154", "\u0156", "\u0158", "\u015A", "\u015C", "\u015E", "\u0160", "\u0162", "\u0164", "\u0166", "\u0168", "\u016A", "\u016C", "\u016E", "\u0170", "\u0172", "\u0174", "\u0176", ["\u0178", "\u0179"], "\u017B", "\u017D", ["\u0181", "\u0182"], "\u0184", ["\u0186", "\u0187"], ["\u0189", "\u018B"], ["\u018E", "\u0191"], ["\u0193", "\u0194"], ["\u0196", "\u0198"], ["\u019C", "\u019D"], ["\u019F", "\u01A0"], "\u01A2", "\u01A4", ["\u01A6", "\u01A7"], "\u01A9", "\u01AC", ["\u01AE", "\u01AF"], ["\u01B1", "\u01B3"], "\u01B5", ["\u01B7", "\u01B8"], "\u01BC", "\u01C4", "\u01C7", "\u01CA", "\u01CD", "\u01CF", "\u01D1", "\u01D3", "\u01D5", "\u01D7", "\u01D9", "\u01DB", "\u01DE", "\u01E0", "\u01E2", "\u01E4", "\u01E6", "\u01E8", "\u01EA", "\u01EC", "\u01EE", "\u01F1", "\u01F4", ["\u01F6", "\u01F8"], "\u01FA", "\u01FC", "\u01FE", "\u0200", "\u0202", "\u0204", "\u0206", "\u0208", "\u020A", "\u020C", "\u020E", "\u0210", "\u0212", "\u0214", "\u0216", "\u0218", "\u021A", "\u021C", "\u021E", "\u0220", "\u0222", "\u0224", "\u0226", "\u0228", "\u022A", "\u022C", "\u022E", "\u0230", "\u0232", ["\u023A", "\u023B"], ["\u023D", "\u023E"], "\u0241", ["\u0243", "\u0246"], "\u0248", "\u024A", "\u024C", "\u024E", "\u0370", "\u0372", "\u0376", "\u037F", "\u0386", ["\u0388", "\u038A"], "\u038C", ["\u038E", "\u038F"], ["\u0391", "\u03A1"], ["\u03A3", "\u03AB"], "\u03CF", ["\u03D2", "\u03D4"], "\u03D8", "\u03DA", "\u03DC", "\u03DE", "\u03E0", "\u03E2", "\u03E4", "\u03E6", "\u03E8", "\u03EA", "\u03EC", "\u03EE", "\u03F4", "\u03F7", ["\u03F9", "\u03FA"], ["\u03FD", "\u042F"], "\u0460", "\u0462", "\u0464", "\u0466", "\u0468", "\u046A", "\u046C", "\u046E", "\u0470", "\u0472", "\u0474", "\u0476", "\u0478", "\u047A", "\u047C", "\u047E", "\u0480", "\u048A", "\u048C", "\u048E", "\u0490", "\u0492", "\u0494", "\u0496", "\u0498", "\u049A", "\u049C", "\u049E", "\u04A0", "\u04A2", "\u04A4", "\u04A6", "\u04A8", "\u04AA", "\u04AC", "\u04AE", "\u04B0", "\u04B2", "\u04B4", "\u04B6", "\u04B8", "\u04BA", "\u04BC", "\u04BE", ["\u04C0", "\u04C1"], "\u04C3", "\u04C5", "\u04C7", "\u04C9", "\u04CB", "\u04CD", "\u04D0", "\u04D2", "\u04D4", "\u04D6", "\u04D8", "\u04DA", "\u04DC", "\u04DE", "\u04E0", "\u04E2", "\u04E4", "\u04E6", "\u04E8", "\u04EA", "\u04EC", "\u04EE", "\u04F0", "\u04F2", "\u04F4", "\u04F6", "\u04F8", "\u04FA", "\u04FC", "\u04FE", "\u0500", "\u0502", "\u0504", "\u0506", "\u0508", "\u050A", "\u050C", "\u050E", "\u0510", "\u0512", "\u0514", "\u0516", "\u0518", "\u051A", "\u051C", "\u051E", "\u0520", "\u0522", "\u0524", "\u0526", "\u0528", "\u052A", "\u052C", "\u052E", ["\u0531", "\u0556"], ["\u10A0", "\u10C5"], "\u10C7", "\u10CD", ["\u13A0", "\u13F5"], ["\u1C90", "\u1CBA"], ["\u1CBD", "\u1CBF"], "\u1E00", "\u1E02", "\u1E04", "\u1E06", "\u1E08", "\u1E0A", "\u1E0C", "\u1E0E", "\u1E10", "\u1E12", "\u1E14", "\u1E16", "\u1E18", "\u1E1A", "\u1E1C", "\u1E1E", "\u1E20", "\u1E22", "\u1E24", "\u1E26", "\u1E28", "\u1E2A", "\u1E2C", "\u1E2E", "\u1E30", "\u1E32", "\u1E34", "\u1E36", "\u1E38", "\u1E3A", "\u1E3C", "\u1E3E", "\u1E40", "\u1E42", "\u1E44", "\u1E46", "\u1E48", "\u1E4A", "\u1E4C", "\u1E4E", "\u1E50", "\u1E52", "\u1E54", "\u1E56", "\u1E58", "\u1E5A", "\u1E5C", "\u1E5E", "\u1E60", "\u1E62", "\u1E64", "\u1E66", "\u1E68", "\u1E6A", "\u1E6C", "\u1E6E", "\u1E70", "\u1E72", "\u1E74", "\u1E76", "\u1E78", "\u1E7A", "\u1E7C", "\u1E7E", "\u1E80", "\u1E82", "\u1E84", "\u1E86", "\u1E88", "\u1E8A", "\u1E8C", "\u1E8E", "\u1E90", "\u1E92", "\u1E94", "\u1E9E", "\u1EA0", "\u1EA2", "\u1EA4", "\u1EA6", "\u1EA8", "\u1EAA", "\u1EAC", "\u1EAE", "\u1EB0", "\u1EB2", "\u1EB4", "\u1EB6", "\u1EB8", "\u1EBA", "\u1EBC", "\u1EBE", "\u1EC0", "\u1EC2", "\u1EC4", "\u1EC6", "\u1EC8", "\u1ECA", "\u1ECC", "\u1ECE", "\u1ED0", "\u1ED2", "\u1ED4", "\u1ED6", "\u1ED8", "\u1EDA", "\u1EDC", "\u1EDE", "\u1EE0", "\u1EE2", "\u1EE4", "\u1EE6", "\u1EE8", "\u1EEA", "\u1EEC", "\u1EEE", "\u1EF0", "\u1EF2", "\u1EF4", "\u1EF6", "\u1EF8", "\u1EFA", "\u1EFC", "\u1EFE", ["\u1F08", "\u1F0F"], ["\u1F18", "\u1F1D"], ["\u1F28", "\u1F2F"], ["\u1F38", "\u1F3F"], ["\u1F48", "\u1F4D"], "\u1F59", "\u1F5B", "\u1F5D", "\u1F5F", ["\u1F68", "\u1F6F"], ["\u1FB8", "\u1FBB"], ["\u1FC8", "\u1FCB"], ["\u1FD8", "\u1FDB"], ["\u1FE8", "\u1FEC"], ["\u1FF8", "\u1FFB"], "\u2102", "\u2107", ["\u210B", "\u210D"], ["\u2110", "\u2112"], "\u2115", ["\u2119", "\u211D"], "\u2124", "\u2126", "\u2128", ["\u212A", "\u212D"], ["\u2130", "\u2133"], ["\u213E", "\u213F"], "\u2145", "\u2183", ["\u2C00", "\u2C2E"], "\u2C60", ["\u2C62", "\u2C64"], "\u2C67", "\u2C69", "\u2C6B", ["\u2C6D", "\u2C70"], "\u2C72", "\u2C75", ["\u2C7E", "\u2C80"], "\u2C82", "\u2C84", "\u2C86", "\u2C88", "\u2C8A", "\u2C8C", "\u2C8E", "\u2C90", "\u2C92", "\u2C94", "\u2C96", "\u2C98", "\u2C9A", "\u2C9C", "\u2C9E", "\u2CA0", "\u2CA2", "\u2CA4", "\u2CA6", "\u2CA8", "\u2CAA", "\u2CAC", "\u2CAE", "\u2CB0", "\u2CB2", "\u2CB4", "\u2CB6", "\u2CB8", "\u2CBA", "\u2CBC", "\u2CBE", "\u2CC0", "\u2CC2", "\u2CC4", "\u2CC6", "\u2CC8", "\u2CCA", "\u2CCC", "\u2CCE", "\u2CD0", "\u2CD2", "\u2CD4", "\u2CD6", "\u2CD8", "\u2CDA", "\u2CDC", "\u2CDE", "\u2CE0", "\u2CE2", "\u2CEB", "\u2CED", "\u2CF2", "\uA640", "\uA642", "\uA644", "\uA646", "\uA648", "\uA64A", "\uA64C", "\uA64E", "\uA650", "\uA652", "\uA654", "\uA656", "\uA658", "\uA65A", "\uA65C", "\uA65E", "\uA660", "\uA662", "\uA664", "\uA666", "\uA668", "\uA66A", "\uA66C", "\uA680", "\uA682", "\uA684", "\uA686", "\uA688", "\uA68A", "\uA68C", "\uA68E", "\uA690", "\uA692", "\uA694", "\uA696", "\uA698", "\uA69A", "\uA722", "\uA724", "\uA726", "\uA728", "\uA72A", "\uA72C", "\uA72E", "\uA732", "\uA734", "\uA736", "\uA738", "\uA73A", "\uA73C", "\uA73E", "\uA740", "\uA742", "\uA744", "\uA746", "\uA748", "\uA74A", "\uA74C", "\uA74E", "\uA750", "\uA752", "\uA754", "\uA756", "\uA758", "\uA75A", "\uA75C", "\uA75E", "\uA760", "\uA762", "\uA764", "\uA766", "\uA768", "\uA76A", "\uA76C", "\uA76E", "\uA779", "\uA77B", ["\uA77D", "\uA77E"], "\uA780", "\uA782", "\uA784", "\uA786", "\uA78B", "\uA78D", "\uA790", "\uA792", "\uA796", "\uA798", "\uA79A", "\uA79C", "\uA79E", "\uA7A0", "\uA7A2", "\uA7A4", "\uA7A6", "\uA7A8", ["\uA7AA", "\uA7AE"], ["\uA7B0", "\uA7B4"], "\uA7B6", "\uA7B8", ["\uFF21", "\uFF3A"]], false, false);
+  var peg$e54 = peg$classExpectation([["\u16EE", "\u16F0"], ["\u2160", "\u2182"], ["\u2185", "\u2188"], "\u3007", ["\u3021", "\u3029"], ["\u3038", "\u303A"], ["\uA6E6", "\uA6EF"]], false, false);
 
   var peg$f0 = function() { return parseFloat(text()); };
   var peg$f1 = function() { return parseInt(text()); };
@@ -315,7 +314,7 @@ function peg$parse(input, options) {
     }
     return result;
   };
-  var peg$f17 = function(tactus, s) { return new PatternStub(s, 'fastcat', undefined, !!tactus); };
+  var peg$f17 = function(_steps, s) { return new PatternStub(s, 'fastcat', undefined, !!_steps); };
   var peg$f18 = function(tail) { return { alignment: 'stack', list: tail }; };
   var peg$f19 = function(tail) { return { alignment: 'rand', list: tail, seed: seed++ }; };
   var peg$f20 = function(tail) { return { alignment: 'feet', list: tail, seed: seed++ }; };
@@ -339,16 +338,16 @@ function peg$parse(input, options) {
   var peg$f38 = function(v) { return new CommandStub("setcps", { value: v})};
   var peg$f39 = function(v) { return new CommandStub("setcps", { value: (v/120/2)})};
   var peg$f40 = function() { return new CommandStub("hush")};
-  var peg$currPos = 0;
-  var peg$savedPos = 0;
+  var peg$currPos = options.peg$currPos | 0;
+  var peg$savedPos = peg$currPos;
   var peg$posDetailsCache = [{ line: 1, column: 1 }];
-  var peg$maxFailPos = 0;
-  var peg$maxFailExpected = [];
-  var peg$silentFails = 0;
+  var peg$maxFailPos = peg$currPos;
+  var peg$maxFailExpected = options.peg$maxFailExpected || [];
+  var peg$silentFails = options.peg$silentFails | 0;
 
   var peg$result;
 
-  if ("startRule" in options) {
+  if (options.startRule) {
     if (!(options.startRule in peg$startRuleFunctions)) {
       throw new Error("Can't start parsing from rule \"" + options.startRule + "\".");
     }
@@ -423,9 +422,11 @@ function peg$parse(input, options) {
     if (details) {
       return details;
     } else {
-      p = pos - 1;
-      while (!peg$posDetailsCache[p]) {
-        p--;
+      if (pos >= peg$posDetailsCache.length) {
+        p = peg$posDetailsCache.length - 1;
+      } else {
+        p = pos;
+        while (!peg$posDetailsCache[--p]) {}
       }
 
       details = peg$posDetailsCache[p];
@@ -558,8 +559,8 @@ function peg$parse(input, options) {
   function peg$parsedigit1_9() {
     var s0;
 
-    if (peg$r0.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r0.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
@@ -572,8 +573,8 @@ function peg$parse(input, options) {
   function peg$parsee() {
     var s0;
 
-    if (peg$r1.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r1.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
@@ -589,9 +590,12 @@ function peg$parse(input, options) {
     s0 = peg$currPos;
     s1 = peg$parsee();
     if (s1 !== peg$FAILED) {
-      s2 = peg$parseminus();
-      if (s2 === peg$FAILED) {
-        s2 = peg$parseplus();
+      s2 = input.charAt(peg$currPos);
+      if (peg$r2.test(s2)) {
+        peg$currPos++;
+      } else {
+        s2 = peg$FAILED;
+        if (peg$silentFails === 0) { peg$fail(peg$e4); }
       }
       if (s2 === peg$FAILED) {
         s2 = null;
@@ -705,7 +709,7 @@ function peg$parse(input, options) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e4); }
+      if (peg$silentFails === 0) { peg$fail(peg$e5); }
     }
 
     return s0;
@@ -719,7 +723,7 @@ function peg$parse(input, options) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e5); }
+      if (peg$silentFails === 0) { peg$fail(peg$e6); }
     }
 
     return s0;
@@ -733,7 +737,7 @@ function peg$parse(input, options) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e6); }
+      if (peg$silentFails === 0) { peg$fail(peg$e7); }
     }
 
     return s0;
@@ -742,12 +746,12 @@ function peg$parse(input, options) {
   function peg$parseDIGIT() {
     var s0;
 
-    if (peg$r2.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r3.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e7); }
+      if (peg$silentFails === 0) { peg$fail(peg$e8); }
     }
 
     return s0;
@@ -758,26 +762,26 @@ function peg$parse(input, options) {
 
     peg$silentFails++;
     s0 = [];
-    if (peg$r3.test(input.charAt(peg$currPos))) {
-      s1 = input.charAt(peg$currPos);
+    s1 = input.charAt(peg$currPos);
+    if (peg$r4.test(s1)) {
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e9); }
+      if (peg$silentFails === 0) { peg$fail(peg$e10); }
     }
     while (s1 !== peg$FAILED) {
       s0.push(s1);
-      if (peg$r3.test(input.charAt(peg$currPos))) {
-        s1 = input.charAt(peg$currPos);
+      s1 = input.charAt(peg$currPos);
+      if (peg$r4.test(s1)) {
         peg$currPos++;
       } else {
         s1 = peg$FAILED;
-        if (peg$silentFails === 0) { peg$fail(peg$e9); }
+        if (peg$silentFails === 0) { peg$fail(peg$e10); }
       }
     }
     peg$silentFails--;
     s1 = peg$FAILED;
-    if (peg$silentFails === 0) { peg$fail(peg$e8); }
+    if (peg$silentFails === 0) { peg$fail(peg$e9); }
 
     return s0;
   }
@@ -792,7 +796,7 @@ function peg$parse(input, options) {
       peg$currPos++;
     } else {
       s2 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e10); }
+      if (peg$silentFails === 0) { peg$fail(peg$e11); }
     }
     if (s2 !== peg$FAILED) {
       s3 = peg$parsews();
@@ -816,7 +820,7 @@ function peg$parse(input, options) {
       peg$currPos++;
     } else {
       s2 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e11); }
+      if (peg$silentFails === 0) { peg$fail(peg$e12); }
     }
     if (s2 !== peg$FAILED) {
       s3 = peg$parsews();
@@ -857,21 +861,12 @@ function peg$parse(input, options) {
   function peg$parsequote() {
     var s0;
 
-    if (input.charCodeAt(peg$currPos) === 34) {
-      s0 = peg$c6;
+    s0 = input.charAt(peg$currPos);
+    if (peg$r5.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e12); }
-    }
-    if (s0 === peg$FAILED) {
-      if (input.charCodeAt(peg$currPos) === 39) {
-        s0 = peg$c7;
-        peg$currPos++;
-      } else {
-        s0 = peg$FAILED;
-        if (peg$silentFails === 0) { peg$fail(peg$e13); }
-      }
+      if (peg$silentFails === 0) { peg$fail(peg$e13); }
     }
 
     return s0;
@@ -881,60 +876,12 @@ function peg$parse(input, options) {
     var s0, s1;
 
     peg$silentFails++;
-    s0 = peg$parseunicode_letter();
-    if (s0 === peg$FAILED) {
-      if (peg$r4.test(input.charAt(peg$currPos))) {
-        s0 = input.charAt(peg$currPos);
-        peg$currPos++;
-      } else {
-        s0 = peg$FAILED;
-        if (peg$silentFails === 0) { peg$fail(peg$e15); }
-      }
-      if (s0 === peg$FAILED) {
-        if (input.charCodeAt(peg$currPos) === 45) {
-          s0 = peg$c1;
-          peg$currPos++;
-        } else {
-          s0 = peg$FAILED;
-          if (peg$silentFails === 0) { peg$fail(peg$e4); }
-        }
-        if (s0 === peg$FAILED) {
-          if (input.charCodeAt(peg$currPos) === 35) {
-            s0 = peg$c8;
-            peg$currPos++;
-          } else {
-            s0 = peg$FAILED;
-            if (peg$silentFails === 0) { peg$fail(peg$e16); }
-          }
-          if (s0 === peg$FAILED) {
-            if (input.charCodeAt(peg$currPos) === 46) {
-              s0 = peg$c0;
-              peg$currPos++;
-            } else {
-              s0 = peg$FAILED;
-              if (peg$silentFails === 0) { peg$fail(peg$e1); }
-            }
-            if (s0 === peg$FAILED) {
-              if (input.charCodeAt(peg$currPos) === 94) {
-                s0 = peg$c9;
-                peg$currPos++;
-              } else {
-                s0 = peg$FAILED;
-                if (peg$silentFails === 0) { peg$fail(peg$e17); }
-              }
-              if (s0 === peg$FAILED) {
-                if (input.charCodeAt(peg$currPos) === 95) {
-                  s0 = peg$c10;
-                  peg$currPos++;
-                } else {
-                  s0 = peg$FAILED;
-                  if (peg$silentFails === 0) { peg$fail(peg$e18); }
-                }
-              }
-            }
-          }
-        }
-      }
+    s0 = input.charAt(peg$currPos);
+    if (peg$r6.test(s0)) {
+      peg$currPos++;
+    } else {
+      s0 = peg$FAILED;
+      if (peg$silentFails === 0) { peg$fail(peg$e15); }
     }
     peg$silentFails--;
     if (s0 === peg$FAILED) {
@@ -990,11 +937,11 @@ function peg$parse(input, options) {
     s0 = peg$currPos;
     s1 = peg$parsews();
     if (input.charCodeAt(peg$currPos) === 91) {
-      s2 = peg$c11;
+      s2 = peg$c6;
       peg$currPos++;
     } else {
       s2 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e19); }
+      if (peg$silentFails === 0) { peg$fail(peg$e16); }
     }
     if (s2 !== peg$FAILED) {
       s3 = peg$parsews();
@@ -1002,11 +949,11 @@ function peg$parse(input, options) {
       if (s4 !== peg$FAILED) {
         s5 = peg$parsews();
         if (input.charCodeAt(peg$currPos) === 93) {
-          s6 = peg$c12;
+          s6 = peg$c7;
           peg$currPos++;
         } else {
           s6 = peg$FAILED;
-          if (peg$silentFails === 0) { peg$fail(peg$e20); }
+          if (peg$silentFails === 0) { peg$fail(peg$e17); }
         }
         if (s6 !== peg$FAILED) {
           s7 = peg$parsews();
@@ -1034,11 +981,11 @@ function peg$parse(input, options) {
     s0 = peg$currPos;
     s1 = peg$parsews();
     if (input.charCodeAt(peg$currPos) === 123) {
-      s2 = peg$c13;
+      s2 = peg$c8;
       peg$currPos++;
     } else {
       s2 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e21); }
+      if (peg$silentFails === 0) { peg$fail(peg$e18); }
     }
     if (s2 !== peg$FAILED) {
       s3 = peg$parsews();
@@ -1046,11 +993,11 @@ function peg$parse(input, options) {
       if (s4 !== peg$FAILED) {
         s5 = peg$parsews();
         if (input.charCodeAt(peg$currPos) === 125) {
-          s6 = peg$c14;
+          s6 = peg$c9;
           peg$currPos++;
         } else {
           s6 = peg$FAILED;
-          if (peg$silentFails === 0) { peg$fail(peg$e22); }
+          if (peg$silentFails === 0) { peg$fail(peg$e19); }
         }
         if (s6 !== peg$FAILED) {
           s7 = peg$parsepolymeter_steps();
@@ -1081,11 +1028,11 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     if (input.charCodeAt(peg$currPos) === 37) {
-      s1 = peg$c15;
+      s1 = peg$c10;
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e23); }
+      if (peg$silentFails === 0) { peg$fail(peg$e20); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parseslice();
@@ -1110,11 +1057,11 @@ function peg$parse(input, options) {
     s0 = peg$currPos;
     s1 = peg$parsews();
     if (input.charCodeAt(peg$currPos) === 60) {
-      s2 = peg$c16;
+      s2 = peg$c11;
       peg$currPos++;
     } else {
       s2 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e24); }
+      if (peg$silentFails === 0) { peg$fail(peg$e21); }
     }
     if (s2 !== peg$FAILED) {
       s3 = peg$parsews();
@@ -1122,11 +1069,11 @@ function peg$parse(input, options) {
       if (s4 !== peg$FAILED) {
         s5 = peg$parsews();
         if (input.charCodeAt(peg$currPos) === 62) {
-          s6 = peg$c17;
+          s6 = peg$c12;
           peg$currPos++;
         } else {
           s6 = peg$FAILED;
-          if (peg$silentFails === 0) { peg$fail(peg$e25); }
+          if (peg$silentFails === 0) { peg$fail(peg$e22); }
         }
         if (s6 !== peg$FAILED) {
           s7 = peg$parsews();
@@ -1199,21 +1146,12 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     s1 = peg$parsews();
-    if (input.charCodeAt(peg$currPos) === 64) {
-      s2 = peg$c18;
+    s2 = input.charAt(peg$currPos);
+    if (peg$r7.test(s2)) {
       peg$currPos++;
     } else {
       s2 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e26); }
-    }
-    if (s2 === peg$FAILED) {
-      if (input.charCodeAt(peg$currPos) === 95) {
-        s2 = peg$c10;
-        peg$currPos++;
-      } else {
-        s2 = peg$FAILED;
-        if (peg$silentFails === 0) { peg$fail(peg$e18); }
-      }
+      if (peg$silentFails === 0) { peg$fail(peg$e23); }
     }
     if (s2 !== peg$FAILED) {
       s3 = peg$parsenumber();
@@ -1236,11 +1174,11 @@ function peg$parse(input, options) {
     s0 = peg$currPos;
     s1 = peg$parsews();
     if (input.charCodeAt(peg$currPos) === 33) {
-      s2 = peg$c19;
+      s2 = peg$c13;
       peg$currPos++;
     } else {
       s2 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e27); }
+      if (peg$silentFails === 0) { peg$fail(peg$e24); }
     }
     if (s2 !== peg$FAILED) {
       s3 = peg$parsenumber();
@@ -1262,11 +1200,11 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     if (input.charCodeAt(peg$currPos) === 40) {
-      s1 = peg$c20;
+      s1 = peg$c14;
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e28); }
+      if (peg$silentFails === 0) { peg$fail(peg$e25); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -1290,11 +1228,11 @@ function peg$parse(input, options) {
             }
             s12 = peg$parsews();
             if (input.charCodeAt(peg$currPos) === 41) {
-              s13 = peg$c21;
+              s13 = peg$c15;
               peg$currPos++;
             } else {
               s13 = peg$FAILED;
-              if (peg$silentFails === 0) { peg$fail(peg$e29); }
+              if (peg$silentFails === 0) { peg$fail(peg$e26); }
             }
             if (s13 !== peg$FAILED) {
               peg$savedPos = s0;
@@ -1328,11 +1266,11 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     if (input.charCodeAt(peg$currPos) === 47) {
-      s1 = peg$c22;
+      s1 = peg$c16;
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e30); }
+      if (peg$silentFails === 0) { peg$fail(peg$e27); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parseslice();
@@ -1356,11 +1294,11 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     if (input.charCodeAt(peg$currPos) === 42) {
-      s1 = peg$c23;
+      s1 = peg$c17;
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e31); }
+      if (peg$silentFails === 0) { peg$fail(peg$e28); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parseslice();
@@ -1384,11 +1322,11 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     if (input.charCodeAt(peg$currPos) === 63) {
-      s1 = peg$c24;
+      s1 = peg$c18;
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e32); }
+      if (peg$silentFails === 0) { peg$fail(peg$e29); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsenumber();
@@ -1410,11 +1348,11 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     if (input.charCodeAt(peg$currPos) === 58) {
-      s1 = peg$c25;
+      s1 = peg$c19;
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e33); }
+      if (peg$silentFails === 0) { peg$fail(peg$e30); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parseslice();
@@ -1437,12 +1375,12 @@ function peg$parse(input, options) {
     var s0, s1, s2;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 2) === peg$c26) {
-      s1 = peg$c26;
+    if (input.substr(peg$currPos, 2) === peg$c20) {
+      s1 = peg$c20;
       peg$currPos += 2;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e34); }
+      if (peg$silentFails === 0) { peg$fail(peg$e31); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parseslice();
@@ -1488,11 +1426,11 @@ function peg$parse(input, options) {
 
     s0 = peg$currPos;
     if (input.charCodeAt(peg$currPos) === 94) {
-      s1 = peg$c9;
+      s1 = peg$c21;
       peg$currPos++;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e17); }
+      if (peg$silentFails === 0) { peg$fail(peg$e32); }
     }
     if (s1 === peg$FAILED) {
       s1 = null;
@@ -1775,12 +1713,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 6) === peg$c27) {
-      s1 = peg$c27;
+    if (input.substr(peg$currPos, 6) === peg$c22) {
+      s1 = peg$c22;
       peg$currPos += 6;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e35); }
+      if (peg$silentFails === 0) { peg$fail(peg$e33); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -1804,12 +1742,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3, s4, s5;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 6) === peg$c28) {
-      s1 = peg$c28;
+    if (input.substr(peg$currPos, 6) === peg$c23) {
+      s1 = peg$c23;
       peg$currPos += 6;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e36); }
+      if (peg$silentFails === 0) { peg$fail(peg$e34); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -1845,12 +1783,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3, s4, s5, s6, s7;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 6) === peg$c29) {
-      s1 = peg$c29;
+    if (input.substr(peg$currPos, 6) === peg$c24) {
+      s1 = peg$c24;
       peg$currPos += 6;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e37); }
+      if (peg$silentFails === 0) { peg$fail(peg$e35); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -1886,12 +1824,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 4) === peg$c30) {
-      s1 = peg$c30;
+    if (input.substr(peg$currPos, 4) === peg$c25) {
+      s1 = peg$c25;
       peg$currPos += 4;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e38); }
+      if (peg$silentFails === 0) { peg$fail(peg$e36); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -1915,12 +1853,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 4) === peg$c31) {
-      s1 = peg$c31;
+    if (input.substr(peg$currPos, 4) === peg$c26) {
+      s1 = peg$c26;
       peg$currPos += 4;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e39); }
+      if (peg$silentFails === 0) { peg$fail(peg$e37); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -1944,12 +1882,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 4) === peg$c32) {
-      s1 = peg$c32;
+    if (input.substr(peg$currPos, 4) === peg$c27) {
+      s1 = peg$c27;
       peg$currPos += 4;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e40); }
+      if (peg$silentFails === 0) { peg$fail(peg$e38); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -1973,12 +1911,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 4) === peg$c33) {
-      s1 = peg$c33;
+    if (input.substr(peg$currPos, 4) === peg$c28) {
+      s1 = peg$c28;
       peg$currPos += 4;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e41); }
+      if (peg$silentFails === 0) { peg$fail(peg$e39); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -2002,12 +1940,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3, s4, s5;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 5) === peg$c34) {
-      s1 = peg$c34;
+    if (input.substr(peg$currPos, 5) === peg$c29) {
+      s1 = peg$c29;
       peg$currPos += 5;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e42); }
+      if (peg$silentFails === 0) { peg$fail(peg$e40); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -2052,30 +1990,30 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 2) === peg$c35) {
-      s1 = peg$c35;
+    if (input.substr(peg$currPos, 2) === peg$c30) {
+      s1 = peg$c30;
       peg$currPos += 2;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e43); }
+      if (peg$silentFails === 0) { peg$fail(peg$e41); }
     }
     if (s1 !== peg$FAILED) {
       s2 = [];
-      if (peg$r5.test(input.charAt(peg$currPos))) {
-        s3 = input.charAt(peg$currPos);
+      s3 = input.charAt(peg$currPos);
+      if (peg$r8.test(s3)) {
         peg$currPos++;
       } else {
         s3 = peg$FAILED;
-        if (peg$silentFails === 0) { peg$fail(peg$e44); }
+        if (peg$silentFails === 0) { peg$fail(peg$e42); }
       }
       while (s3 !== peg$FAILED) {
         s2.push(s3);
-        if (peg$r5.test(input.charAt(peg$currPos))) {
-          s3 = input.charAt(peg$currPos);
+        s3 = input.charAt(peg$currPos);
+        if (peg$r8.test(s3)) {
           peg$currPos++;
         } else {
           s3 = peg$FAILED;
-          if (peg$silentFails === 0) { peg$fail(peg$e44); }
+          if (peg$silentFails === 0) { peg$fail(peg$e42); }
         }
       }
       s1 = [s1, s2];
@@ -2092,21 +2030,21 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 3) === peg$c36) {
-      s1 = peg$c36;
+    if (input.substr(peg$currPos, 3) === peg$c31) {
+      s1 = peg$c31;
       peg$currPos += 3;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e45); }
+      if (peg$silentFails === 0) { peg$fail(peg$e43); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
       if (input.charCodeAt(peg$currPos) === 91) {
-        s3 = peg$c11;
+        s3 = peg$c6;
         peg$currPos++;
       } else {
         s3 = peg$FAILED;
-        if (peg$silentFails === 0) { peg$fail(peg$e19); }
+        if (peg$silentFails === 0) { peg$fail(peg$e16); }
       }
       if (s3 !== peg$FAILED) {
         s4 = peg$parsews();
@@ -2148,11 +2086,11 @@ function peg$parse(input, options) {
           }
           s7 = peg$parsews();
           if (input.charCodeAt(peg$currPos) === 93) {
-            s8 = peg$c12;
+            s8 = peg$c7;
             peg$currPos++;
           } else {
             s8 = peg$FAILED;
-            if (peg$silentFails === 0) { peg$fail(peg$e20); }
+            if (peg$silentFails === 0) { peg$fail(peg$e17); }
           }
           if (s8 !== peg$FAILED) {
             peg$savedPos = s0;
@@ -2213,11 +2151,11 @@ function peg$parse(input, options) {
       if (s1 !== peg$FAILED) {
         s2 = peg$parsews();
         if (input.charCodeAt(peg$currPos) === 36) {
-          s3 = peg$c37;
+          s3 = peg$c32;
           peg$currPos++;
         } else {
           s3 = peg$FAILED;
-          if (peg$silentFails === 0) { peg$fail(peg$e46); }
+          if (peg$silentFails === 0) { peg$fail(peg$e44); }
         }
         if (s3 !== peg$FAILED) {
           s4 = peg$parsews();
@@ -2295,12 +2233,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 6) === peg$c38) {
-      s1 = peg$c38;
+    if (input.substr(peg$currPos, 6) === peg$c33) {
+      s1 = peg$c33;
       peg$currPos += 6;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e47); }
+      if (peg$silentFails === 0) { peg$fail(peg$e45); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -2324,12 +2262,12 @@ function peg$parse(input, options) {
     var s0, s1, s2, s3;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 6) === peg$c39) {
-      s1 = peg$c39;
+    if (input.substr(peg$currPos, 6) === peg$c34) {
+      s1 = peg$c34;
       peg$currPos += 6;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e48); }
+      if (peg$silentFails === 0) { peg$fail(peg$e46); }
     }
     if (s1 !== peg$FAILED) {
       s2 = peg$parsews();
@@ -2353,12 +2291,12 @@ function peg$parse(input, options) {
     var s0, s1;
 
     s0 = peg$currPos;
-    if (input.substr(peg$currPos, 4) === peg$c40) {
-      s1 = peg$c40;
+    if (input.substr(peg$currPos, 4) === peg$c35) {
+      s1 = peg$c35;
       peg$currPos += 4;
     } else {
       s1 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e49); }
+      if (peg$silentFails === 0) { peg$fail(peg$e47); }
     }
     if (s1 !== peg$FAILED) {
       peg$savedPos = s0;
@@ -2383,21 +2321,12 @@ function peg$parse(input, options) {
   function peg$parseunicode_letter() {
     var s0;
 
-    s0 = peg$parseLu();
-    if (s0 === peg$FAILED) {
-      s0 = peg$parseLl();
-      if (s0 === peg$FAILED) {
-        s0 = peg$parseLt();
-        if (s0 === peg$FAILED) {
-          s0 = peg$parseLm();
-          if (s0 === peg$FAILED) {
-            s0 = peg$parseLo();
-            if (s0 === peg$FAILED) {
-              s0 = peg$parseNl();
-            }
-          }
-        }
-      }
+    s0 = input.charAt(peg$currPos);
+    if (peg$r9.test(s0)) {
+      peg$currPos++;
+    } else {
+      s0 = peg$FAILED;
+      if (peg$silentFails === 0) { peg$fail(peg$e48); }
     }
 
     return s0;
@@ -2406,8 +2335,22 @@ function peg$parse(input, options) {
   function peg$parseLl() {
     var s0;
 
-    if (peg$r6.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r10.test(s0)) {
+      peg$currPos++;
+    } else {
+      s0 = peg$FAILED;
+      if (peg$silentFails === 0) { peg$fail(peg$e49); }
+    }
+
+    return s0;
+  }
+
+  function peg$parseLm() {
+    var s0;
+
+    s0 = input.charAt(peg$currPos);
+    if (peg$r11.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
@@ -2417,11 +2360,11 @@ function peg$parse(input, options) {
     return s0;
   }
 
-  function peg$parseLm() {
+  function peg$parseLo() {
     var s0;
 
-    if (peg$r7.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r12.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
@@ -2431,11 +2374,11 @@ function peg$parse(input, options) {
     return s0;
   }
 
-  function peg$parseLo() {
+  function peg$parseLt() {
     var s0;
 
-    if (peg$r8.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r13.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
@@ -2445,11 +2388,11 @@ function peg$parse(input, options) {
     return s0;
   }
 
-  function peg$parseLt() {
+  function peg$parseLu() {
     var s0;
 
-    if (peg$r9.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r14.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
@@ -2459,11 +2402,11 @@ function peg$parse(input, options) {
     return s0;
   }
 
-  function peg$parseLu() {
+  function peg$parseNl() {
     var s0;
 
-    if (peg$r10.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
+    s0 = input.charAt(peg$currPos);
+    if (peg$r15.test(s0)) {
       peg$currPos++;
     } else {
       s0 = peg$FAILED;
@@ -2473,20 +2416,6 @@ function peg$parse(input, options) {
     return s0;
   }
 
-  function peg$parseNl() {
-    var s0;
-
-    if (peg$r11.test(input.charAt(peg$currPos))) {
-      s0 = input.charAt(peg$currPos);
-      peg$currPos++;
-    } else {
-      s0 = peg$FAILED;
-      if (peg$silentFails === 0) { peg$fail(peg$e55); }
-    }
-
-    return s0;
-  }
-
 
   var AtomStub = function(source)
   {
@@ -2495,10 +2424,10 @@ function peg$parse(input, options) {
     this.location_ = location();
   }
 
-  var PatternStub = function(source, alignment, seed, tactus)
+  var PatternStub = function(source, alignment, seed, _steps)
   {
     this.type_ = "pattern";
-    this.arguments_ = { alignment: alignment, tactus: tactus };
+    this.arguments_ = { alignment: alignment, _steps: _steps };
     if (seed !== undefined) {
       this.arguments_.seed = seed;
     }
@@ -2531,6 +2460,15 @@ function peg$parse(input, options) {
 
   peg$result = peg$startRuleFunction();
 
+  if (options.peg$library) {
+    return /** @type {any} */ ({
+      peg$result,
+      peg$currPos,
+      peg$FAILED,
+      peg$maxFailExpected,
+      peg$maxFailPos
+    });
+  }
   if (peg$result !== peg$FAILED && peg$currPos === input.length) {
     return peg$result;
   } else {
@@ -2548,8 +2486,12 @@ function peg$parse(input, options) {
   }
 }
 
-export {
-  peg$SyntaxError as SyntaxError,
+const peg$allowedStartRules = [
+  "start"
+];
 
+export {
+  peg$allowedStartRules as StartRules,
+  peg$SyntaxError as SyntaxError,
   peg$parse as parse
 };
diff --git a/packages/mini/krill.pegjs b/packages/mini/krill.pegjs
index c1349ca5..a593b416 100644
--- a/packages/mini/krill.pegjs
+++ b/packages/mini/krill.pegjs
@@ -19,10 +19,10 @@ This program is free software: you can redistribute it and/or modify it under th
     this.location_ = location();
   }
 
-  var PatternStub = function(source, alignment, seed, tactus)
+  var PatternStub = function(source, alignment, seed, _steps)
   {
     this.type_ = "pattern";
-    this.arguments_ = { alignment: alignment, tactus: tactus };
+    this.arguments_ = { alignment: alignment, _steps: _steps };
     if (seed !== undefined) {
       this.arguments_.seed = seed;
     }
@@ -172,8 +172,8 @@ slice_with_ops = s:slice ops:slice_op*
   }
 
 // a sequence is a combination of one or more successive slices (as an array)
-sequence = tactus:'^'? s:(slice_with_ops)+
-  { return new PatternStub(s, 'fastcat', undefined, !!tactus); }
+sequence = _steps:'^'? s:(slice_with_ops)+
+  { return new PatternStub(s, 'fastcat', undefined, !!_steps); }
 
 // a stack is a series of vertically aligned sequence, separated by a comma
 stack_tail = tail:(comma @sequence)+
diff --git a/packages/mini/mini.mjs b/packages/mini/mini.mjs
index 86c372b8..6277daa9 100644
--- a/packages/mini/mini.mjs
+++ b/packages/mini/mini.mjs
@@ -14,7 +14,7 @@ const applyOptions = (parent, enter) => (pat, i) => {
   const ast = parent.source_[i];
   const options = ast.options_;
   const ops = options?.ops;
-  const tactus_source = pat.__tactus_source;
+  const steps_source = pat.__steps_source;
   if (ops) {
     for (const op of ops) {
       switch (op.type_) {
@@ -69,7 +69,7 @@ const applyOptions = (parent, enter) => (pat, i) => {
       }
     }
   }
-  pat.__tactus_source = pat.__tactus_source || tactus_source;
+  pat.__steps_source = pat.__steps_source || steps_source;
   return pat;
 };
 
@@ -82,20 +82,20 @@ export function patternifyAST(ast, code, onEnter, offset = 0) {
       // resolveReplications(ast);
       const children = ast.source_.map((child) => enter(child)).map(applyOptions(ast, enter));
       const alignment = ast.arguments_.alignment;
-      const with_tactus = children.filter((child) => child.__tactus_source);
+      const with_steps = children.filter((child) => child.__steps_source);
       let pat;
       switch (alignment) {
         case 'stack': {
           pat = strudel.stack(...children);
-          if (with_tactus.length) {
-            pat.tactus = lcm(...with_tactus.map((x) => Fraction(x.tactus)));
+          if (with_steps.length) {
+            pat._steps = lcm(...with_steps.map((x) => Fraction(x._steps)));
           }
           break;
         }
         case 'polymeter_slowcat': {
           pat = strudel.stack(...children.map((child) => child._slow(child.__weight)));
-          if (with_tactus.length) {
-            pat.tactus = lcm(...with_tactus.map((x) => Fraction(x.tactus)));
+          if (with_steps.length) {
+            pat._steps = lcm(...with_steps.map((x) => Fraction(x._steps)));
           }
           break;
         }
@@ -111,8 +111,8 @@ export function patternifyAST(ast, code, onEnter, offset = 0) {
         }
         case 'rand': {
           pat = strudel.chooseInWith(strudel.rand.early(randOffset * ast.arguments_.seed).segment(1), children);
-          if (with_tactus.length) {
-            pat.tactus = lcm(...with_tactus.map((x) => Fraction(x.tactus)));
+          if (with_steps.length) {
+            pat._steps = lcm(...with_steps.map((x) => Fraction(x._steps)));
           }
           break;
         }
@@ -131,21 +131,21 @@ export function patternifyAST(ast, code, onEnter, offset = 0) {
               ...ast.source_.map((child, i) => [child.options_?.weight || strudel.Fraction(1), children[i]]),
             );
             pat.__weight = weightSum; // for polymeter
-            pat.tactus = weightSum;
-            if (with_tactus.length) {
-              pat.tactus = pat.tactus.mul(lcm(...with_tactus.map((x) => Fraction(x.tactus))));
+            pat._steps = weightSum;
+            if (with_steps.length) {
+              pat._steps = pat._steps.mul(lcm(...with_steps.map((x) => Fraction(x._steps))));
             }
           } else {
             pat = strudel.sequence(...children);
-            pat.tactus = children.length;
+            pat._steps = children.length;
           }
-          if (ast.arguments_.tactus) {
-            pat.__tactus_source = true;
+          if (ast.arguments_._steps) {
+            pat.__steps_source = true;
           }
         }
       }
-      if (with_tactus.length) {
-        pat.__tactus_source = true;
+      if (with_steps.length) {
+        pat.__steps_source = true;
       }
       return pat;
     }
diff --git a/packages/mini/test/mini.test.mjs b/packages/mini/test/mini.test.mjs
index 112edcb7..15d50111 100644
--- a/packages/mini/test/mini.test.mjs
+++ b/packages/mini/test/mini.test.mjs
@@ -208,16 +208,16 @@ describe('mini', () => {
   it('_ and @ are almost interchangeable', () => {
     expect(minS('a @ b @ @')).toEqual(minS('a _2 b _3'));
   });
-  it('supports ^ tactus marking', () => {
-    expect(mini('a [^b c]').tactus).toEqual(Fraction(4));
-    expect(mini('[^b c]!3').tactus).toEqual(Fraction(6));
-    expect(mini('[a b c] [d [e f]]').tactus).toEqual(Fraction(2));
-    expect(mini('^[a b c] [d [e f]]').tactus).toEqual(Fraction(2));
-    expect(mini('[a b c] [d [^e f]]').tactus).toEqual(Fraction(8));
-    expect(mini('[a b c] [^d [e f]]').tactus).toEqual(Fraction(4));
-    expect(mini('[^a b c] [^d [e f]]').tactus).toEqual(Fraction(12));
-    expect(mini('[^a b c] [d [^e f]]').tactus).toEqual(Fraction(24));
-    expect(mini('[^a b c d e]').tactus).toEqual(Fraction(5));
+  it('supports ^ step marking', () => {
+    expect(mini('a [^b c]')._steps).toEqual(Fraction(4));
+    expect(mini('[^b c]!3')._steps).toEqual(Fraction(6));
+    expect(mini('[a b c] [d [e f]]')._steps).toEqual(Fraction(2));
+    expect(mini('^[a b c] [d [e f]]')._steps).toEqual(Fraction(2));
+    expect(mini('[a b c] [d [^e f]]')._steps).toEqual(Fraction(8));
+    expect(mini('[a b c] [^d [e f]]')._steps).toEqual(Fraction(4));
+    expect(mini('[^a b c] [^d [e f]]')._steps).toEqual(Fraction(12));
+    expect(mini('[^a b c] [d [^e f]]')._steps).toEqual(Fraction(24));
+    expect(mini('[^a b c d e]')._steps).toEqual(Fraction(5));
   });
 });
 
diff --git a/packages/tonal/tonal.mjs b/packages/tonal/tonal.mjs
index 4c25d23e..78183d22 100644
--- a/packages/tonal/tonal.mjs
+++ b/packages/tonal/tonal.mjs
@@ -249,5 +249,5 @@ export const scale = register(
     );
   },
   true,
-  true, // preserve tactus
+  true, // preserve step count
 );
diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index e6f2000e..3cd86382 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -2521,6 +2521,98 @@ exports[`runs examples > example "drive" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "drop" example index 0 1`] = `
+[
+  "[ 0/1 → 1/3 | s:cp ]",
+  "[ 1/3 → 2/3 | s:ht ]",
+  "[ 2/3 → 1/1 | s:mt ]",
+  "[ 1/1 → 4/3 | s:cp ]",
+  "[ 4/3 → 5/3 | s:ht ]",
+  "[ 5/3 → 2/1 | s:mt ]",
+  "[ 2/1 → 7/3 | s:cp ]",
+  "[ 7/3 → 8/3 | s:ht ]",
+  "[ 8/3 → 3/1 | s:mt ]",
+  "[ 3/1 → 10/3 | s:cp ]",
+  "[ 10/3 → 11/3 | s:ht ]",
+  "[ 11/3 → 4/1 | s:mt ]",
+]
+`;
+
+exports[`runs examples > example "drop" example index 1 1`] = `
+[
+  "[ 0/1 → 1/3 | s:bd ]",
+  "[ 1/3 → 2/3 | s:cp ]",
+  "[ 2/3 → 1/1 | s:ht ]",
+  "[ 1/1 → 4/3 | s:bd ]",
+  "[ 4/3 → 5/3 | s:cp ]",
+  "[ 5/3 → 2/1 | s:ht ]",
+  "[ 2/1 → 7/3 | s:bd ]",
+  "[ 7/3 → 8/3 | s:cp ]",
+  "[ 8/3 → 3/1 | s:ht ]",
+  "[ 3/1 → 10/3 | s:bd ]",
+  "[ 10/3 → 11/3 | s:cp ]",
+  "[ 11/3 → 4/1 | s:ht ]",
+]
+`;
+
+exports[`runs examples > example "drop" example index 2 1`] = `
+[
+  "[ 0/1 → 1/6 | s:cp ]",
+  "[ 1/6 → 1/3 | s:ht ]",
+  "[ 1/3 → 1/2 | s:mt ]",
+  "[ 1/2 → 2/3 | s:ht ]",
+  "[ 2/3 → 5/6 | s:mt ]",
+  "[ 5/6 → 1/1 | s:mt ]",
+  "[ 1/1 → 7/6 | s:cp ]",
+  "[ 7/6 → 4/3 | s:ht ]",
+  "[ 4/3 → 3/2 | s:mt ]",
+  "[ 3/2 → 5/3 | s:ht ]",
+  "[ 5/3 → 11/6 | s:mt ]",
+  "[ 11/6 → 2/1 | s:mt ]",
+  "[ 2/1 → 13/6 | s:cp ]",
+  "[ 13/6 → 7/3 | s:ht ]",
+  "[ 7/3 → 5/2 | s:mt ]",
+  "[ 5/2 → 8/3 | s:ht ]",
+  "[ 8/3 → 17/6 | s:mt ]",
+  "[ 17/6 → 3/1 | s:mt ]",
+  "[ 3/1 → 19/6 | s:cp ]",
+  "[ 19/6 → 10/3 | s:ht ]",
+  "[ 10/3 → 7/2 | s:mt ]",
+  "[ 7/2 → 11/3 | s:ht ]",
+  "[ 11/3 → 23/6 | s:mt ]",
+  "[ 23/6 → 4/1 | s:mt ]",
+]
+`;
+
+exports[`runs examples > example "drop" example index 3 1`] = `
+[
+  "[ 0/1 → 1/6 | s:bd ]",
+  "[ 1/6 → 1/3 | s:cp ]",
+  "[ 1/3 → 1/2 | s:ht ]",
+  "[ 1/2 → 2/3 | s:bd ]",
+  "[ 2/3 → 5/6 | s:cp ]",
+  "[ 5/6 → 1/1 | s:bd ]",
+  "[ 1/1 → 7/6 | s:bd ]",
+  "[ 7/6 → 4/3 | s:cp ]",
+  "[ 4/3 → 3/2 | s:ht ]",
+  "[ 3/2 → 5/3 | s:bd ]",
+  "[ 5/3 → 11/6 | s:cp ]",
+  "[ 11/6 → 2/1 | s:bd ]",
+  "[ 2/1 → 13/6 | s:bd ]",
+  "[ 13/6 → 7/3 | s:cp ]",
+  "[ 7/3 → 5/2 | s:ht ]",
+  "[ 5/2 → 8/3 | s:bd ]",
+  "[ 8/3 → 17/6 | s:cp ]",
+  "[ 17/6 → 3/1 | s:bd ]",
+  "[ 3/1 → 19/6 | s:bd ]",
+  "[ 19/6 → 10/3 | s:cp ]",
+  "[ 10/3 → 7/2 | s:ht ]",
+  "[ 7/2 → 11/3 | s:bd ]",
+  "[ 11/3 → 23/6 | s:cp ]",
+  "[ 23/6 → 4/1 | s:bd ]",
+]
+`;
+
 exports[`runs examples > example "dry" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | n:0 s:superpiano room:0.7 dry:0 ]",
@@ -3442,6 +3534,96 @@ exports[`runs examples > example "gain" example index 0 1`] = `
 
 exports[`runs examples > example "gap" example index 0 1`] = `[]`;
 
+exports[`runs examples > example "grow" example index 0 1`] = `
+[
+  "[ 0/1 → 1/10 | s:bd ]",
+  "[ 1/10 → 1/5 | s:bd ]",
+  "[ 1/5 → 3/10 | s:cp ]",
+  "[ 3/10 → 2/5 | s:bd ]",
+  "[ 2/5 → 1/2 | s:cp ]",
+  "[ 1/2 → 3/5 | s:ht ]",
+  "[ 3/5 → 7/10 | s:bd ]",
+  "[ 7/10 → 4/5 | s:cp ]",
+  "[ 4/5 → 9/10 | s:ht ]",
+  "[ 9/10 → 1/1 | s:mt ]",
+  "[ 1/1 → 11/10 | s:bd ]",
+  "[ 11/10 → 6/5 | s:bd ]",
+  "[ 6/5 → 13/10 | s:cp ]",
+  "[ 13/10 → 7/5 | s:bd ]",
+  "[ 7/5 → 3/2 | s:cp ]",
+  "[ 3/2 → 8/5 | s:ht ]",
+  "[ 8/5 → 17/10 | s:bd ]",
+  "[ 17/10 → 9/5 | s:cp ]",
+  "[ 9/5 → 19/10 | s:ht ]",
+  "[ 19/10 → 2/1 | s:mt ]",
+  "[ 2/1 → 21/10 | s:bd ]",
+  "[ 21/10 → 11/5 | s:bd ]",
+  "[ 11/5 → 23/10 | s:cp ]",
+  "[ 23/10 → 12/5 | s:bd ]",
+  "[ 12/5 → 5/2 | s:cp ]",
+  "[ 5/2 → 13/5 | s:ht ]",
+  "[ 13/5 → 27/10 | s:bd ]",
+  "[ 27/10 → 14/5 | s:cp ]",
+  "[ 14/5 → 29/10 | s:ht ]",
+  "[ 29/10 → 3/1 | s:mt ]",
+  "[ 3/1 → 31/10 | s:bd ]",
+  "[ 31/10 → 16/5 | s:bd ]",
+  "[ 16/5 → 33/10 | s:cp ]",
+  "[ 33/10 → 17/5 | s:bd ]",
+  "[ 17/5 → 7/2 | s:cp ]",
+  "[ 7/2 → 18/5 | s:ht ]",
+  "[ 18/5 → 37/10 | s:bd ]",
+  "[ 37/10 → 19/5 | s:cp ]",
+  "[ 19/5 → 39/10 | s:ht ]",
+  "[ 39/10 → 4/1 | s:mt ]",
+]
+`;
+
+exports[`runs examples > example "grow" example index 1 1`] = `
+[
+  "[ 0/1 → 1/10 | s:mt ]",
+  "[ 1/10 → 1/5 | s:ht ]",
+  "[ 1/5 → 3/10 | s:mt ]",
+  "[ 3/10 → 2/5 | s:cp ]",
+  "[ 2/5 → 1/2 | s:ht ]",
+  "[ 1/2 → 3/5 | s:mt ]",
+  "[ 3/5 → 7/10 | s:bd ]",
+  "[ 7/10 → 4/5 | s:cp ]",
+  "[ 4/5 → 9/10 | s:ht ]",
+  "[ 9/10 → 1/1 | s:mt ]",
+  "[ 1/1 → 11/10 | s:mt ]",
+  "[ 11/10 → 6/5 | s:ht ]",
+  "[ 6/5 → 13/10 | s:mt ]",
+  "[ 13/10 → 7/5 | s:cp ]",
+  "[ 7/5 → 3/2 | s:ht ]",
+  "[ 3/2 → 8/5 | s:mt ]",
+  "[ 8/5 → 17/10 | s:bd ]",
+  "[ 17/10 → 9/5 | s:cp ]",
+  "[ 9/5 → 19/10 | s:ht ]",
+  "[ 19/10 → 2/1 | s:mt ]",
+  "[ 2/1 → 21/10 | s:mt ]",
+  "[ 21/10 → 11/5 | s:ht ]",
+  "[ 11/5 → 23/10 | s:mt ]",
+  "[ 23/10 → 12/5 | s:cp ]",
+  "[ 12/5 → 5/2 | s:ht ]",
+  "[ 5/2 → 13/5 | s:mt ]",
+  "[ 13/5 → 27/10 | s:bd ]",
+  "[ 27/10 → 14/5 | s:cp ]",
+  "[ 14/5 → 29/10 | s:ht ]",
+  "[ 29/10 → 3/1 | s:mt ]",
+  "[ 3/1 → 31/10 | s:mt ]",
+  "[ 31/10 → 16/5 | s:ht ]",
+  "[ 16/5 → 33/10 | s:mt ]",
+  "[ 33/10 → 17/5 | s:cp ]",
+  "[ 17/5 → 7/2 | s:ht ]",
+  "[ 7/2 → 18/5 | s:mt ]",
+  "[ 18/5 → 37/10 | s:bd ]",
+  "[ 37/10 → 19/5 | s:cp ]",
+  "[ 19/5 → 39/10 | s:ht ]",
+  "[ 39/10 → 4/1 | s:mt ]",
+]
+`;
+
 exports[`runs examples > example "hpattack" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:c2 s:sawtooth hcutoff:500 hpattack:0.5 hpenv:4 ]",
@@ -5057,6 +5239,27 @@ exports[`runs examples > example "outside" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "pace" example index 0 1`] = `
+[
+  "[ 0/1 → 1/4 | s:bd ]",
+  "[ 1/4 → 1/2 | s:sd ]",
+  "[ 1/2 → 3/4 | s:cp ]",
+  "[ 3/4 → 1/1 | s:bd ]",
+  "[ 1/1 → 5/4 | s:sd ]",
+  "[ 5/4 → 3/2 | s:cp ]",
+  "[ 3/2 → 7/4 | s:bd ]",
+  "[ 7/4 → 2/1 | s:sd ]",
+  "[ 2/1 → 9/4 | s:cp ]",
+  "[ 9/4 → 5/2 | s:bd ]",
+  "[ 5/2 → 11/4 | s:sd ]",
+  "[ 11/4 → 3/1 | s:cp ]",
+  "[ 3/1 → 13/4 | s:bd ]",
+  "[ 13/4 → 7/2 | s:sd ]",
+  "[ 7/2 → 15/4 | s:cp ]",
+  "[ 15/4 → 4/1 | s:bd ]",
+]
+`;
+
 exports[`runs examples > example "palindrome" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:c ]",
@@ -5651,6 +5854,72 @@ exports[`runs examples > example "ply" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "polymeter" example index 0 1`] = `
+[
+  "[ 0/1 → 1/3 | note:c ]",
+  "[ 0/1 → 1/3 | note:c2 ]",
+  "[ 1/3 → 2/3 | note:eb ]",
+  "[ 1/3 → 2/3 | note:g2 ]",
+  "[ 2/3 → 1/1 | note:g ]",
+  "[ 2/3 → 1/1 | note:c2 ]",
+  "[ 1/1 → 4/3 | note:c ]",
+  "[ 1/1 → 4/3 | note:g2 ]",
+  "[ 4/3 → 5/3 | note:eb ]",
+  "[ 4/3 → 5/3 | note:c2 ]",
+  "[ 5/3 → 2/1 | note:g ]",
+  "[ 5/3 → 2/1 | note:g2 ]",
+  "[ 2/1 → 7/3 | note:c ]",
+  "[ 2/1 → 7/3 | note:c2 ]",
+  "[ 7/3 → 8/3 | note:eb ]",
+  "[ 7/3 → 8/3 | note:g2 ]",
+  "[ 8/3 → 3/1 | note:g ]",
+  "[ 8/3 → 3/1 | note:c2 ]",
+  "[ 3/1 → 10/3 | note:c ]",
+  "[ 3/1 → 10/3 | note:g2 ]",
+  "[ 10/3 → 11/3 | note:eb ]",
+  "[ 10/3 → 11/3 | note:c2 ]",
+  "[ 11/3 → 4/1 | note:g ]",
+  "[ 11/3 → 4/1 | note:g2 ]",
+]
+`;
+
+exports[`runs examples > example "polymeterSteps" example index 0 1`] = `
+[
+  "[ 0/1 → 1/4 | note:c ]",
+  "[ 0/1 → 1/4 | note:e ]",
+  "[ 1/4 → 1/2 | note:d ]",
+  "[ 1/4 → 1/2 | note:f ]",
+  "[ 1/2 → 3/4 | note:c ]",
+  "[ 1/2 → 3/4 | note:g ]",
+  "[ 3/4 → 1/1 | note:d ]",
+  "[ 3/4 → 1/1 | note:e ]",
+  "[ 1/1 → 5/4 | note:c ]",
+  "[ 1/1 → 5/4 | note:f ]",
+  "[ 5/4 → 3/2 | note:d ]",
+  "[ 5/4 → 3/2 | note:g ]",
+  "[ 3/2 → 7/4 | note:c ]",
+  "[ 3/2 → 7/4 | note:e ]",
+  "[ 7/4 → 2/1 | note:d ]",
+  "[ 7/4 → 2/1 | note:f ]",
+  "[ 2/1 → 9/4 | note:c ]",
+  "[ 2/1 → 9/4 | note:g ]",
+  "[ 9/4 → 5/2 | note:d ]",
+  "[ 9/4 → 5/2 | note:e ]",
+  "[ 5/2 → 11/4 | note:c ]",
+  "[ 5/2 → 11/4 | note:f ]",
+  "[ 11/4 → 3/1 | note:d ]",
+  "[ 11/4 → 3/1 | note:g ]",
+  "[ 3/1 → 13/4 | note:c ]",
+  "[ 3/1 → 13/4 | note:e ]",
+  "[ 13/4 → 7/2 | note:d ]",
+  "[ 13/4 → 7/2 | note:f ]",
+  "[ 7/2 → 15/4 | note:c ]",
+  "[ 7/2 → 15/4 | note:g ]",
+  "[ 15/4 → 4/1 | note:d ]",
+  "[ 15/4 → 4/1 | note:e ]",
+]
+`;
+
 exports[`runs examples > example "postgain" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | s:hh compressor:-20 compressorRatio:20 compressorKnee:10 compressorAttack:0.002 compressorRelease:0.02 postgain:1.5 ]",
@@ -6522,135 +6791,6 @@ exports[`runs examples > example "s" example index 1 1`] = `
 ]
 `;
 
-exports[`runs examples > example "s_alt" example index 0 1`] = `
-[
-  "[ 0/1 → 1/5 | s:bd ]",
-  "[ 1/5 → 2/5 | s:cp ]",
-  "[ 2/5 → 3/5 | s:bd ]",
-  "[ 3/5 → 4/5 | s:mt ]",
-  "[ 4/5 → 1/1 | s:bd ]",
-  "[ 1/1 → 6/5 | s:bd ]",
-  "[ 6/5 → 7/5 | s:cp ]",
-  "[ 7/5 → 8/5 | s:bd ]",
-  "[ 8/5 → 9/5 | s:mt ]",
-  "[ 9/5 → 2/1 | s:bd ]",
-  "[ 2/1 → 11/5 | s:bd ]",
-  "[ 11/5 → 12/5 | s:cp ]",
-  "[ 12/5 → 13/5 | s:bd ]",
-  "[ 13/5 → 14/5 | s:mt ]",
-  "[ 14/5 → 3/1 | s:bd ]",
-  "[ 3/1 → 16/5 | s:bd ]",
-  "[ 16/5 → 17/5 | s:cp ]",
-  "[ 17/5 → 18/5 | s:bd ]",
-  "[ 18/5 → 19/5 | s:mt ]",
-  "[ 19/5 → 4/1 | s:bd ]",
-]
-`;
-
-exports[`runs examples > example "s_cat" example index 0 1`] = `
-[
-  "[ 0/1 → 3/4 | note:e3 ]",
-  "[ 3/4 → 1/1 | note:g3 ]",
-  "[ 1/1 → 7/4 | note:e3 ]",
-  "[ 7/4 → 2/1 | note:g3 ]",
-  "[ 2/1 → 11/4 | note:e3 ]",
-  "[ 11/4 → 3/1 | note:g3 ]",
-  "[ 3/1 → 15/4 | note:e3 ]",
-  "[ 15/4 → 4/1 | note:g3 ]",
-]
-`;
-
-exports[`runs examples > example "s_cat" example index 1 1`] = `
-[
-  "[ 0/1 → 1/5 | s:bd ]",
-  "[ 1/5 → 2/5 | s:sd ]",
-  "[ 2/5 → 3/5 | s:cp ]",
-  "[ 3/5 → 4/5 | s:hh ]",
-  "[ 4/5 → 1/1 | s:hh ]",
-  "[ 1/1 → 6/5 | s:bd ]",
-  "[ 6/5 → 7/5 | s:sd ]",
-  "[ 7/5 → 8/5 | s:cp ]",
-  "[ 8/5 → 9/5 | s:hh ]",
-  "[ 9/5 → 2/1 | s:hh ]",
-  "[ 2/1 → 11/5 | s:bd ]",
-  "[ 11/5 → 12/5 | s:sd ]",
-  "[ 12/5 → 13/5 | s:cp ]",
-  "[ 13/5 → 14/5 | s:hh ]",
-  "[ 14/5 → 3/1 | s:hh ]",
-  "[ 3/1 → 16/5 | s:bd ]",
-  "[ 16/5 → 17/5 | s:sd ]",
-  "[ 17/5 → 18/5 | s:cp ]",
-  "[ 18/5 → 19/5 | s:hh ]",
-  "[ 19/5 → 4/1 | s:hh ]",
-]
-`;
-
-exports[`runs examples > example "s_polymeter" example index 0 1`] = `
-[
-  "[ 0/1 → 1/3 | note:c ]",
-  "[ 0/1 → 1/3 | note:c2 ]",
-  "[ 1/3 → 2/3 | note:eb ]",
-  "[ 1/3 → 2/3 | note:g2 ]",
-  "[ 2/3 → 1/1 | note:g ]",
-  "[ 2/3 → 1/1 | note:c2 ]",
-  "[ 1/1 → 4/3 | note:c ]",
-  "[ 1/1 → 4/3 | note:g2 ]",
-  "[ 4/3 → 5/3 | note:eb ]",
-  "[ 4/3 → 5/3 | note:c2 ]",
-  "[ 5/3 → 2/1 | note:g ]",
-  "[ 5/3 → 2/1 | note:g2 ]",
-  "[ 2/1 → 7/3 | note:c ]",
-  "[ 2/1 → 7/3 | note:c2 ]",
-  "[ 7/3 → 8/3 | note:eb ]",
-  "[ 7/3 → 8/3 | note:g2 ]",
-  "[ 8/3 → 3/1 | note:g ]",
-  "[ 8/3 → 3/1 | note:c2 ]",
-  "[ 3/1 → 10/3 | note:c ]",
-  "[ 3/1 → 10/3 | note:g2 ]",
-  "[ 10/3 → 11/3 | note:eb ]",
-  "[ 10/3 → 11/3 | note:c2 ]",
-  "[ 11/3 → 4/1 | note:g ]",
-  "[ 11/3 → 4/1 | note:g2 ]",
-]
-`;
-
-exports[`runs examples > example "s_polymeterSteps" example index 0 1`] = `
-[
-  "[ 0/1 → 1/4 | note:c ]",
-  "[ 0/1 → 1/4 | note:e ]",
-  "[ 1/4 → 1/2 | note:d ]",
-  "[ 1/4 → 1/2 | note:f ]",
-  "[ 1/2 → 3/4 | note:c ]",
-  "[ 1/2 → 3/4 | note:g ]",
-  "[ 3/4 → 1/1 | note:d ]",
-  "[ 3/4 → 1/1 | note:e ]",
-  "[ 1/1 → 5/4 | note:c ]",
-  "[ 1/1 → 5/4 | note:f ]",
-  "[ 5/4 → 3/2 | note:d ]",
-  "[ 5/4 → 3/2 | note:g ]",
-  "[ 3/2 → 7/4 | note:c ]",
-  "[ 3/2 → 7/4 | note:e ]",
-  "[ 7/4 → 2/1 | note:d ]",
-  "[ 7/4 → 2/1 | note:f ]",
-  "[ 2/1 → 9/4 | note:c ]",
-  "[ 2/1 → 9/4 | note:g ]",
-  "[ 9/4 → 5/2 | note:d ]",
-  "[ 9/4 → 5/2 | note:e ]",
-  "[ 5/2 → 11/4 | note:c ]",
-  "[ 5/2 → 11/4 | note:f ]",
-  "[ 11/4 → 3/1 | note:d ]",
-  "[ 11/4 → 3/1 | note:g ]",
-  "[ 3/1 → 13/4 | note:c ]",
-  "[ 3/1 → 13/4 | note:e ]",
-  "[ 13/4 → 7/2 | note:d ]",
-  "[ 13/4 → 7/2 | note:f ]",
-  "[ 7/2 → 15/4 | note:c ]",
-  "[ 7/2 → 15/4 | note:g ]",
-  "[ 15/4 → 4/1 | note:d ]",
-  "[ 15/4 → 4/1 | note:e ]",
-]
-`;
-
 exports[`runs examples > example "samples" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | s:bd ]",
@@ -7238,6 +7378,181 @@ exports[`runs examples > example "shape" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "shrink" example index 0 1`] = `
+[
+  "[ 0/1 → 1/10 | s:bd ]",
+  "[ 1/10 → 1/5 | s:cp ]",
+  "[ 1/5 → 3/10 | s:ht ]",
+  "[ 3/10 → 2/5 | s:mt ]",
+  "[ 2/5 → 1/2 | s:cp ]",
+  "[ 1/2 → 3/5 | s:ht ]",
+  "[ 3/5 → 7/10 | s:mt ]",
+  "[ 7/10 → 4/5 | s:ht ]",
+  "[ 4/5 → 9/10 | s:mt ]",
+  "[ 9/10 → 1/1 | s:mt ]",
+  "[ 1/1 → 11/10 | s:bd ]",
+  "[ 11/10 → 6/5 | s:cp ]",
+  "[ 6/5 → 13/10 | s:ht ]",
+  "[ 13/10 → 7/5 | s:mt ]",
+  "[ 7/5 → 3/2 | s:cp ]",
+  "[ 3/2 → 8/5 | s:ht ]",
+  "[ 8/5 → 17/10 | s:mt ]",
+  "[ 17/10 → 9/5 | s:ht ]",
+  "[ 9/5 → 19/10 | s:mt ]",
+  "[ 19/10 → 2/1 | s:mt ]",
+  "[ 2/1 → 21/10 | s:bd ]",
+  "[ 21/10 → 11/5 | s:cp ]",
+  "[ 11/5 → 23/10 | s:ht ]",
+  "[ 23/10 → 12/5 | s:mt ]",
+  "[ 12/5 → 5/2 | s:cp ]",
+  "[ 5/2 → 13/5 | s:ht ]",
+  "[ 13/5 → 27/10 | s:mt ]",
+  "[ 27/10 → 14/5 | s:ht ]",
+  "[ 14/5 → 29/10 | s:mt ]",
+  "[ 29/10 → 3/1 | s:mt ]",
+  "[ 3/1 → 31/10 | s:bd ]",
+  "[ 31/10 → 16/5 | s:cp ]",
+  "[ 16/5 → 33/10 | s:ht ]",
+  "[ 33/10 → 17/5 | s:mt ]",
+  "[ 17/5 → 7/2 | s:cp ]",
+  "[ 7/2 → 18/5 | s:ht ]",
+  "[ 18/5 → 37/10 | s:mt ]",
+  "[ 37/10 → 19/5 | s:ht ]",
+  "[ 19/5 → 39/10 | s:mt ]",
+  "[ 39/10 → 4/1 | s:mt ]",
+]
+`;
+
+exports[`runs examples > example "shrink" example index 1 1`] = `
+[
+  "[ 0/1 → 1/10 | s:bd ]",
+  "[ 1/10 → 1/5 | s:cp ]",
+  "[ 1/5 → 3/10 | s:ht ]",
+  "[ 3/10 → 2/5 | s:mt ]",
+  "[ 2/5 → 1/2 | s:bd ]",
+  "[ 1/2 → 3/5 | s:cp ]",
+  "[ 3/5 → 7/10 | s:ht ]",
+  "[ 7/10 → 4/5 | s:bd ]",
+  "[ 4/5 → 9/10 | s:cp ]",
+  "[ 9/10 → 1/1 | s:bd ]",
+  "[ 1/1 → 11/10 | s:bd ]",
+  "[ 11/10 → 6/5 | s:cp ]",
+  "[ 6/5 → 13/10 | s:ht ]",
+  "[ 13/10 → 7/5 | s:mt ]",
+  "[ 7/5 → 3/2 | s:bd ]",
+  "[ 3/2 → 8/5 | s:cp ]",
+  "[ 8/5 → 17/10 | s:ht ]",
+  "[ 17/10 → 9/5 | s:bd ]",
+  "[ 9/5 → 19/10 | s:cp ]",
+  "[ 19/10 → 2/1 | s:bd ]",
+  "[ 2/1 → 21/10 | s:bd ]",
+  "[ 21/10 → 11/5 | s:cp ]",
+  "[ 11/5 → 23/10 | s:ht ]",
+  "[ 23/10 → 12/5 | s:mt ]",
+  "[ 12/5 → 5/2 | s:bd ]",
+  "[ 5/2 → 13/5 | s:cp ]",
+  "[ 13/5 → 27/10 | s:ht ]",
+  "[ 27/10 → 14/5 | s:bd ]",
+  "[ 14/5 → 29/10 | s:cp ]",
+  "[ 29/10 → 3/1 | s:bd ]",
+  "[ 3/1 → 31/10 | s:bd ]",
+  "[ 31/10 → 16/5 | s:cp ]",
+  "[ 16/5 → 33/10 | s:ht ]",
+  "[ 33/10 → 17/5 | s:mt ]",
+  "[ 17/5 → 7/2 | s:bd ]",
+  "[ 7/2 → 18/5 | s:cp ]",
+  "[ 18/5 → 37/10 | s:ht ]",
+  "[ 37/10 → 19/5 | s:bd ]",
+  "[ 19/5 → 39/10 | s:cp ]",
+  "[ 39/10 → 4/1 | s:bd ]",
+]
+`;
+
+exports[`runs examples > example "shrink" example index 2 1`] = `
+[
+  "[ 0/1 → 1/20 | s:bd ]",
+  "[ 1/20 → 1/10 | s:bd ]",
+  "[ 1/10 → 3/20 | s:cp ]",
+  "[ 3/20 → 1/5 | s:bd ]",
+  "[ 1/5 → 1/4 | s:cp ]",
+  "[ 1/4 → 3/10 | s:ht ]",
+  "[ 3/10 → 7/20 | s:bd ]",
+  "[ 7/20 → 2/5 | s:cp ]",
+  "[ 2/5 → 9/20 | s:ht ]",
+  "[ 9/20 → 1/2 | s:mt ]",
+  "[ 1/2 → 11/20 | s:mt ]",
+  "[ 11/20 → 3/5 | s:ht ]",
+  "[ 3/5 → 13/20 | s:mt ]",
+  "[ 13/20 → 7/10 | s:cp ]",
+  "[ 7/10 → 3/4 | s:ht ]",
+  "[ 3/4 → 4/5 | s:mt ]",
+  "[ 4/5 → 17/20 | s:bd ]",
+  "[ 17/20 → 9/10 | s:cp ]",
+  "[ 9/10 → 19/20 | s:ht ]",
+  "[ 19/20 → 1/1 | s:mt ]",
+  "[ 1/1 → 21/20 | s:bd ]",
+  "[ 21/20 → 11/10 | s:bd ]",
+  "[ 11/10 → 23/20 | s:cp ]",
+  "[ 23/20 → 6/5 | s:bd ]",
+  "[ 6/5 → 5/4 | s:cp ]",
+  "[ 5/4 → 13/10 | s:ht ]",
+  "[ 13/10 → 27/20 | s:bd ]",
+  "[ 27/20 → 7/5 | s:cp ]",
+  "[ 7/5 → 29/20 | s:ht ]",
+  "[ 29/20 → 3/2 | s:mt ]",
+  "[ 3/2 → 31/20 | s:mt ]",
+  "[ 31/20 → 8/5 | s:ht ]",
+  "[ 8/5 → 33/20 | s:mt ]",
+  "[ 33/20 → 17/10 | s:cp ]",
+  "[ 17/10 → 7/4 | s:ht ]",
+  "[ 7/4 → 9/5 | s:mt ]",
+  "[ 9/5 → 37/20 | s:bd ]",
+  "[ 37/20 → 19/10 | s:cp ]",
+  "[ 19/10 → 39/20 | s:ht ]",
+  "[ 39/20 → 2/1 | s:mt ]",
+  "[ 2/1 → 41/20 | s:bd ]",
+  "[ 41/20 → 21/10 | s:bd ]",
+  "[ 21/10 → 43/20 | s:cp ]",
+  "[ 43/20 → 11/5 | s:bd ]",
+  "[ 11/5 → 9/4 | s:cp ]",
+  "[ 9/4 → 23/10 | s:ht ]",
+  "[ 23/10 → 47/20 | s:bd ]",
+  "[ 47/20 → 12/5 | s:cp ]",
+  "[ 12/5 → 49/20 | s:ht ]",
+  "[ 49/20 → 5/2 | s:mt ]",
+  "[ 5/2 → 51/20 | s:mt ]",
+  "[ 51/20 → 13/5 | s:ht ]",
+  "[ 13/5 → 53/20 | s:mt ]",
+  "[ 53/20 → 27/10 | s:cp ]",
+  "[ 27/10 → 11/4 | s:ht ]",
+  "[ 11/4 → 14/5 | s:mt ]",
+  "[ 14/5 → 57/20 | s:bd ]",
+  "[ 57/20 → 29/10 | s:cp ]",
+  "[ 29/10 → 59/20 | s:ht ]",
+  "[ 59/20 → 3/1 | s:mt ]",
+  "[ 3/1 → 61/20 | s:bd ]",
+  "[ 61/20 → 31/10 | s:bd ]",
+  "[ 31/10 → 63/20 | s:cp ]",
+  "[ 63/20 → 16/5 | s:bd ]",
+  "[ 16/5 → 13/4 | s:cp ]",
+  "[ 13/4 → 33/10 | s:ht ]",
+  "[ 33/10 → 67/20 | s:bd ]",
+  "[ 67/20 → 17/5 | s:cp ]",
+  "[ 17/5 → 69/20 | s:ht ]",
+  "[ 69/20 → 7/2 | s:mt ]",
+  "[ 7/2 → 71/20 | s:mt ]",
+  "[ 71/20 → 18/5 | s:ht ]",
+  "[ 18/5 → 73/20 | s:mt ]",
+  "[ 73/20 → 37/10 | s:cp ]",
+  "[ 37/10 → 15/4 | s:ht ]",
+  "[ 15/4 → 19/5 | s:mt ]",
+  "[ 19/5 → 77/20 | s:bd ]",
+  "[ 77/20 → 39/10 | s:cp ]",
+  "[ 39/10 → 79/20 | s:ht ]",
+  "[ 79/20 → 4/1 | s:mt ]",
+]
+`;
+
 exports[`runs examples > example "shuffle
 Slices a pattern into the given number of parts, then plays those parts in random order.
 Each part will be played exactly once per cycle." example index 0 1`] = `
@@ -7988,24 +8303,66 @@ exports[`runs examples > example "stack" example index 1 1`] = `
 ]
 `;
 
-exports[`runs examples > example "steps" example index 0 1`] = `
+exports[`runs examples > example "stepalt" example index 0 1`] = `
 [
-  "[ 0/1 → 1/4 | s:bd ]",
-  "[ 1/4 → 1/2 | s:sd ]",
-  "[ 1/2 → 3/4 | s:cp ]",
-  "[ 3/4 → 1/1 | s:bd ]",
-  "[ 1/1 → 5/4 | s:sd ]",
-  "[ 5/4 → 3/2 | s:cp ]",
-  "[ 3/2 → 7/4 | s:bd ]",
-  "[ 7/4 → 2/1 | s:sd ]",
-  "[ 2/1 → 9/4 | s:cp ]",
-  "[ 9/4 → 5/2 | s:bd ]",
-  "[ 5/2 → 11/4 | s:sd ]",
-  "[ 11/4 → 3/1 | s:cp ]",
-  "[ 3/1 → 13/4 | s:bd ]",
-  "[ 13/4 → 7/2 | s:sd ]",
-  "[ 7/2 → 15/4 | s:cp ]",
-  "[ 15/4 → 4/1 | s:bd ]",
+  "[ 0/1 → 1/5 | s:bd ]",
+  "[ 1/5 → 2/5 | s:cp ]",
+  "[ 2/5 → 3/5 | s:bd ]",
+  "[ 3/5 → 4/5 | s:mt ]",
+  "[ 4/5 → 1/1 | s:bd ]",
+  "[ 1/1 → 6/5 | s:bd ]",
+  "[ 6/5 → 7/5 | s:cp ]",
+  "[ 7/5 → 8/5 | s:bd ]",
+  "[ 8/5 → 9/5 | s:mt ]",
+  "[ 9/5 → 2/1 | s:bd ]",
+  "[ 2/1 → 11/5 | s:bd ]",
+  "[ 11/5 → 12/5 | s:cp ]",
+  "[ 12/5 → 13/5 | s:bd ]",
+  "[ 13/5 → 14/5 | s:mt ]",
+  "[ 14/5 → 3/1 | s:bd ]",
+  "[ 3/1 → 16/5 | s:bd ]",
+  "[ 16/5 → 17/5 | s:cp ]",
+  "[ 17/5 → 18/5 | s:bd ]",
+  "[ 18/5 → 19/5 | s:mt ]",
+  "[ 19/5 → 4/1 | s:bd ]",
+]
+`;
+
+exports[`runs examples > example "stepcat" example index 0 1`] = `
+[
+  "[ 0/1 → 3/4 | note:e3 ]",
+  "[ 3/4 → 1/1 | note:g3 ]",
+  "[ 1/1 → 7/4 | note:e3 ]",
+  "[ 7/4 → 2/1 | note:g3 ]",
+  "[ 2/1 → 11/4 | note:e3 ]",
+  "[ 11/4 → 3/1 | note:g3 ]",
+  "[ 3/1 → 15/4 | note:e3 ]",
+  "[ 15/4 → 4/1 | note:g3 ]",
+]
+`;
+
+exports[`runs examples > example "stepcat" example index 1 1`] = `
+[
+  "[ 0/1 → 1/5 | s:bd ]",
+  "[ 1/5 → 2/5 | s:sd ]",
+  "[ 2/5 → 3/5 | s:cp ]",
+  "[ 3/5 → 4/5 | s:hh ]",
+  "[ 4/5 → 1/1 | s:hh ]",
+  "[ 1/1 → 6/5 | s:bd ]",
+  "[ 6/5 → 7/5 | s:sd ]",
+  "[ 7/5 → 8/5 | s:cp ]",
+  "[ 8/5 → 9/5 | s:hh ]",
+  "[ 9/5 → 2/1 | s:hh ]",
+  "[ 2/1 → 11/5 | s:bd ]",
+  "[ 11/5 → 12/5 | s:sd ]",
+  "[ 12/5 → 13/5 | s:cp ]",
+  "[ 13/5 → 14/5 | s:hh ]",
+  "[ 14/5 → 3/1 | s:hh ]",
+  "[ 3/1 → 16/5 | s:bd ]",
+  "[ 16/5 → 17/5 | s:sd ]",
+  "[ 17/5 → 18/5 | s:cp ]",
+  "[ 18/5 → 19/5 | s:hh ]",
+  "[ 19/5 → 4/1 | s:hh ]",
 ]
 `;
 
@@ -8318,6 +8675,118 @@ exports[`runs examples > example "swingBy" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "take" example index 0 1`] = `
+[
+  "[ 0/1 → 1/2 | s:bd ]",
+  "[ 1/2 → 1/1 | s:cp ]",
+  "[ 1/1 → 3/2 | s:bd ]",
+  "[ 3/2 → 2/1 | s:cp ]",
+  "[ 2/1 → 5/2 | s:bd ]",
+  "[ 5/2 → 3/1 | s:cp ]",
+  "[ 3/1 → 7/2 | s:bd ]",
+  "[ 7/2 → 4/1 | s:cp ]",
+]
+`;
+
+exports[`runs examples > example "take" example index 1 1`] = `
+[
+  "[ 0/1 → 1/6 | s:bd ]",
+  "[ 1/6 → 1/3 | s:bd ]",
+  "[ 1/3 → 1/2 | s:cp ]",
+  "[ 1/2 → 2/3 | s:bd ]",
+  "[ 2/3 → 5/6 | s:cp ]",
+  "[ 5/6 → 1/1 | s:ht ]",
+  "[ 1/1 → 7/6 | s:bd ]",
+  "[ 7/6 → 4/3 | s:bd ]",
+  "[ 4/3 → 3/2 | s:cp ]",
+  "[ 3/2 → 5/3 | s:bd ]",
+  "[ 5/3 → 11/6 | s:cp ]",
+  "[ 11/6 → 2/1 | s:ht ]",
+  "[ 2/1 → 13/6 | s:bd ]",
+  "[ 13/6 → 7/3 | s:bd ]",
+  "[ 7/3 → 5/2 | s:cp ]",
+  "[ 5/2 → 8/3 | s:bd ]",
+  "[ 8/3 → 17/6 | s:cp ]",
+  "[ 17/6 → 3/1 | s:ht ]",
+  "[ 3/1 → 19/6 | s:bd ]",
+  "[ 19/6 → 10/3 | s:bd ]",
+  "[ 10/3 → 7/2 | s:cp ]",
+  "[ 7/2 → 11/3 | s:bd ]",
+  "[ 11/3 → 23/6 | s:cp ]",
+  "[ 23/6 → 4/1 | s:ht ]",
+]
+`;
+
+exports[`runs examples > example "take" example index 2 1`] = `
+[
+  "[ 0/1 → 1/6 | s:mt ]",
+  "[ 1/6 → 1/3 | s:ht ]",
+  "[ 1/3 → 1/2 | s:mt ]",
+  "[ 1/2 → 2/3 | s:cp ]",
+  "[ 2/3 → 5/6 | s:ht ]",
+  "[ 5/6 → 1/1 | s:mt ]",
+  "[ 1/1 → 7/6 | s:mt ]",
+  "[ 7/6 → 4/3 | s:ht ]",
+  "[ 4/3 → 3/2 | s:mt ]",
+  "[ 3/2 → 5/3 | s:cp ]",
+  "[ 5/3 → 11/6 | s:ht ]",
+  "[ 11/6 → 2/1 | s:mt ]",
+  "[ 2/1 → 13/6 | s:mt ]",
+  "[ 13/6 → 7/3 | s:ht ]",
+  "[ 7/3 → 5/2 | s:mt ]",
+  "[ 5/2 → 8/3 | s:cp ]",
+  "[ 8/3 → 17/6 | s:ht ]",
+  "[ 17/6 → 3/1 | s:mt ]",
+  "[ 3/1 → 19/6 | s:mt ]",
+  "[ 19/6 → 10/3 | s:ht ]",
+  "[ 10/3 → 7/2 | s:mt ]",
+  "[ 7/2 → 11/3 | s:cp ]",
+  "[ 11/3 → 23/6 | s:ht ]",
+  "[ 23/6 → 4/1 | s:mt ]",
+]
+`;
+
+exports[`runs examples > example "tour" example index 0 1`] = `
+[
+  "[ 0/1 → 1/8 | note:e s:folkharp ]",
+  "[ 1/8 → 1/4 | note:f s:folkharp ]",
+  "[ 1/4 → 3/8 | note:e s:folkharp ]",
+  "[ 3/8 → 1/2 | note:f s:folkharp ]",
+  "[ 1/2 → 5/8 | note:g s:folkharp ]",
+  "[ 5/8 → 3/4 | note:g s:folkharp ]",
+  "[ 3/4 → 7/8 | note:f s:folkharp ]",
+  "[ 7/8 → 1/1 | note:e s:folkharp ]",
+  "[ 1/1 → 9/8 | note:c s:folkharp ]",
+  "[ 9/8 → 19/16 | note:c s:folkharp ]",
+  "[ 19/16 → 5/4 | note:g s:folkharp ]",
+  "[ 5/4 → 11/8 | note:e s:folkharp ]",
+  "[ 11/8 → 3/2 | note:f s:folkharp ]",
+  "[ 3/2 → 13/8 | note:e s:folkharp ]",
+  "[ 13/8 → 7/4 | note:f s:folkharp ]",
+  "[ 7/4 → 15/8 | note:g s:folkharp ]",
+  "[ 15/8 → 31/16 | note:c s:folkharp ]",
+  "[ 31/16 → 2/1 | note:g s:folkharp ]",
+  "[ 2/1 → 17/8 | note:g s:folkharp ]",
+  "[ 17/8 → 9/4 | note:f s:folkharp ]",
+  "[ 9/4 → 19/8 | note:e s:folkharp ]",
+  "[ 19/8 → 5/2 | note:c s:folkharp ]",
+  "[ 5/2 → 21/8 | note:e s:folkharp ]",
+  "[ 21/8 → 11/4 | note:f s:folkharp ]",
+  "[ 11/4 → 45/16 | note:c s:folkharp ]",
+  "[ 45/16 → 23/8 | note:g s:folkharp ]",
+  "[ 23/8 → 3/1 | note:e s:folkharp ]",
+  "[ 3/1 → 25/8 | note:f s:folkharp ]",
+  "[ 25/8 → 13/4 | note:g s:folkharp ]",
+  "[ 13/4 → 27/8 | note:g s:folkharp ]",
+  "[ 27/8 → 7/2 | note:f s:folkharp ]",
+  "[ 7/2 → 29/8 | note:e s:folkharp ]",
+  "[ 29/8 → 15/4 | note:c s:folkharp ]",
+  "[ 15/4 → 61/16 | note:c s:folkharp ]",
+  "[ 61/16 → 31/8 | note:g s:folkharp ]",
+  "[ 31/8 → 4/1 | note:e s:folkharp ]",
+]
+`;
+
 exports[`runs examples > example "transpose" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:C2 ]",
@@ -9003,6 +9472,45 @@ exports[`runs examples > example "xfade" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "zip" example index 0 1`] = `
+[
+  "[ 0/1 → 1/8 | note:e s:folkharp ]",
+  "[ 1/8 → 1/4 | note:e s:folkharp ]",
+  "[ 1/4 → 3/8 | note:g s:folkharp ]",
+  "[ 3/8 → 1/2 | note:f s:folkharp ]",
+  "[ 1/2 → 5/8 | note:f s:folkharp ]",
+  "[ 5/8 → 11/16 | note:f s:folkharp ]",
+  "[ 11/16 → 3/4 | note:e s:folkharp ]",
+  "[ 3/4 → 7/8 | note:e s:folkharp ]",
+  "[ 7/8 → 1/1 | note:g s:folkharp ]",
+  "[ 1/1 → 9/8 | note:a s:folkharp ]",
+  "[ 9/8 → 5/4 | note:f s:folkharp ]",
+  "[ 5/4 → 11/8 | note:e s:folkharp ]",
+  "[ 11/8 → 3/2 | note:f4 s:folkharp ]",
+  "[ 3/2 → 13/8 | note:e s:folkharp ]",
+  "[ 13/8 → 7/4 | note:f s:folkharp ]",
+  "[ 7/4 → 15/8 | note:c s:folkharp ]",
+  "[ 15/8 → 2/1 | note:f s:folkharp ]",
+  "[ 2/1 → 17/8 | note:g s:folkharp ]",
+  "[ 17/8 → 9/4 | note:g s:folkharp ]",
+  "[ 9/4 → 19/8 | note:e s:folkharp ]",
+  "[ 19/8 → 5/2 | note:e s:folkharp ]",
+  "[ 5/2 → 41/16 | note:f s:folkharp ]",
+  "[ 41/16 → 21/8 | note:e s:folkharp ]",
+  "[ 21/8 → 11/4 | note:f s:folkharp ]",
+  "[ 11/4 → 23/8 | note:f s:folkharp ]",
+  "[ 23/8 → 3/1 | note:a s:folkharp ]",
+  "[ 3/1 → 25/8 | note:e s:folkharp ]",
+  "[ 25/8 → 13/4 | note:g s:folkharp ]",
+  "[ 13/4 → 27/8 | note:f4 s:folkharp ]",
+  "[ 27/8 → 7/2 | note:f s:folkharp ]",
+  "[ 7/2 → 29/8 | note:e s:folkharp ]",
+  "[ 29/8 → 15/4 | note:c s:folkharp ]",
+  "[ 15/4 → 31/8 | note:e s:folkharp ]",
+  "[ 31/8 → 4/1 | note:f s:folkharp ]",
+]
+`;
+
 exports[`runs examples > example "zoom" example index 0 1`] = `
 [
   "[ 0/1 → 1/6 | s:hh ]",
diff --git a/website/src/config.ts b/website/src/config.ts
index fd6cc479..376db54f 100644
--- a/website/src/config.ts
+++ b/website/src/config.ts
@@ -96,6 +96,7 @@ export const SIDEBAR: Sidebar = {
       { text: 'Conditional Modifiers', link: 'learn/conditional-modifiers' },
       { text: 'Accumulation', link: 'learn/accumulation' },
       { text: 'Tonal Functions', link: 'learn/tonal' },
+      { text: 'Stepwise Functions', link: 'learn/stepwise' },
     ],
     Understand: [
       { text: 'Coding syntax', link: 'learn/code' },
diff --git a/website/src/pages/learn/factories.mdx b/website/src/pages/learn/factories.mdx
index b43d3abf..ab77c102 100644
--- a/website/src/pages/learn/factories.mdx
+++ b/website/src/pages/learn/factories.mdx
@@ -11,15 +11,15 @@ import { JsDoc } from '../../docs/JsDoc';
 The following functions will return a pattern.
 These are the equivalents used by the Mini Notation:
 
-| function                         | mini             |
-| -------------------------------- | ---------------- |
-| `cat(x, y)`                      | `""`        |
-| `seq(x, y)`                      | `"x y"`          |
-| `stack(x, y)`                    | `"x,y"`          |
-| `s_cat([3,x],[2,y])`             | `"x@3 y@2"`      |
-| `s_polymeter([a, b, c], [x, y])` | `"{a b c, x y}"` |
-| `s_polymeterSteps(2, x, y, z)`   | `"{x y z}%2"`    |
-| `silence`                        | `"~"`            |
+| function                       | mini             |
+| ------------------------------ | ---------------- |
+| `cat(x, y)`                    | `""`        |
+| `seq(x, y)`                    | `"x y"`          |
+| `stack(x, y)`                  | `"x,y"`          |
+| `stepcat([3,x],[2,y])`         | `"x@3 y@2"`      |
+| `polymeter([a, b, c], [x, y])` | `"{a b c, x y}"` |
+| `polymeterSteps(2, x, y, z)`   | `"{x y z}%2"`    |
+| `silence`                      | `"~"`            |
 
 ## cat
 
@@ -33,21 +33,21 @@ These are the equivalents used by the Mini Notation:
 
 
 
-## s_cat
+## stepcat
 
-
+
 
 ## arrange
 
 
 
-## s_polymeter
+## polymeter
 
-
+
 
-## s_polymeterSteps
+## polymeterSteps
 
-
+
 
 ## silence
 
diff --git a/website/src/pages/learn/stepwise.mdx b/website/src/pages/learn/stepwise.mdx
new file mode 100644
index 00000000..f5ba5ec0
--- /dev/null
+++ b/website/src/pages/learn/stepwise.mdx
@@ -0,0 +1,139 @@
+---
+title: Stepwise patterning
+layout: ../../layouts/MainLayout.astro
+---
+
+import { MiniRepl } from '../../docs/MiniRepl';
+import { JsDoc } from '../../docs/JsDoc';
+
+# Stepwise patterning (experimental)
+
+This is a developing area of strudel, and behaviour might change or be renamed in future versions. Feedback and ideas are welcome!
+
+## Introduction
+
+Usually in strudel, the only reference point for most pattern transformations is the _cycle_. Now it is possible to also work with _steps_, via a growing range of functions.
+
+For example usually when you `fastcat` two patterns together, the cycles will be squashed into half a cycle each:
+
+
+
+With the new stepwise `stepcat` function, the steps of the two patterns will be evenly distributed across the cycle:
+
+
+
+By default, steps are counted according to the 'top level' in mini-notation. For example `"a [b c] d e"` has five events in it per cycle, but is counted as four steps, where `[b c]` is counted as a single step.
+
+However, you can mark a different metrical level to count steps relative to, using a `^` at the start of a sub-pattern. If we do this to the subpattern in our example: `"a [^b c] d e"`, then the pattern is now counted as having _eight_ steps. This is because 'b' and 'c' are each counted as single steps, and the events in the pattenr are twice as long, and so counted as two steps each.
+
+## Pacing the steps
+
+Some stepwise functions don't appear to do very much on their own, for example these two examples of the `expand` function sound exactly the same despite being expanded by different amounts:
+
+
+
+
+
+The number of steps per cycle is being changed behind the scenes, but on its own, that doesn't do anything. You will hear a difference however, once you use another stepwise function with it, for example `stepcat`:
+
+
+
+
+
+You should be able to hear that `expand` increases the duration of the steps of the first subpattern, proportionally to the second one.
+
+You can also change the speed of a pattern to match a given number of steps per cycle, with the `pace` function:
+
+
+
+
+
+The first example has ten steps, and the second example has 18 steps, but are then both played a rate of 8 steps per cycle.
+
+The argument to `expand` can also be patterned, and will be treated in a stepwise fashion. This means that the patterns from the changing values in the argument will be `stepcat`ted together:
+
+
+
+This results in a dense pattern, because the different expanded versions are squashed into a single cycle. `pace` is again handy here for slowing down the pattern to a particular number of steps per cycle:
+
+
+
+## Deprecated aliases
+
+Earlier versions of many of these functions had `s_` prefixes, and the `pace` function was previously known as `steps`. These still exist as aliases, but may have changed behaviour and will soon be removed. Please update your patterns!
+
+## Stepwise functions
+
+### pace
+
+
+
+### stepcat
+
+
+
+### stepalt
+
+
+
+### expand
+
+
+
+### contract
+
+
+
+### repeat
+
+
+
+### take
+
+
+
+### drop
+
+
+
+### polymeter
+
+
+
+### polymeterSteps
+
+
+
+### shrink
+
+
+
+### grow
+
+
+
+### tour
+
+
+
+### zip
+
+

From 0b1bc74c3bd7ac85695df3209e66abd21aa3f29e Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Sun, 2 Feb 2025 22:01:53 +0100
Subject: [PATCH 464/805] feat: basic midimap handling

---
 packages/core/controls.mjs |  1 +
 packages/midi/midi.mjs     | 70 ++++++++++++++++++++++++++++++++------
 2 files changed, 61 insertions(+), 10 deletions(-)

diff --git a/packages/core/controls.mjs b/packages/core/controls.mjs
index 3d3530d5..daf13328 100644
--- a/packages/core/controls.mjs
+++ b/packages/core/controls.mjs
@@ -1514,6 +1514,7 @@ export const { binshift } = registerControl('binshift');
 export const { hbrick } = registerControl('hbrick');
 export const { lbrick } = registerControl('lbrick');
 export const { midichan } = registerControl('midichan');
+export const { midimap } = registerControl('midimap');
 export const { control } = registerControl('control');
 export const { ccn } = registerControl('ccn');
 export const { ccv } = registerControl('ccv');
diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 32e66f6c..8ad611fe 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -6,7 +6,7 @@ This program is free software: you can redistribute it and/or modify it under th
 
 import * as _WebMidi from 'webmidi';
 import { Pattern, getEventOffsetMs, isPattern, logger, ref } from '@strudel/core';
-import { noteToMidi } from '@strudel/core';
+import { noteToMidi, getControlName } from '@strudel/core';
 import { Note } from 'webmidi';
 // if you use WebMidi from outside of this package, make sure to import that instance:
 export const { WebMidi } = _WebMidi;
@@ -89,6 +89,57 @@ if (typeof window !== 'undefined') {
   });
 }
 
+// registry for midi mappings, converting control names to cc messages
+export const midiMappings = new Map();
+
+// takes midimap and converts each control key to the main control name
+function unifyMapping(mapping) {
+  return Object.fromEntries(Object.entries(mapping).map(([key, mapping]) => [getControlName(key), mapping]));
+}
+// adds a midimap to the registry
+export function addMidimap(name, mapping) {
+  midiMappings.set(name, unifyMapping(mapping));
+}
+// adds multiple midimaps to the registry
+export function midimaps(map) {
+  if (typeof map === 'object') {
+    Object.entries(midiMappings).forEach(([name, mapping]) => addMidimap(name, mapping));
+  }
+}
+
+// normalizes the given value from the given range and exponent
+function normalize(value = 0, min = 0, max = 1, exp = 1) {
+  if (min === max) {
+    throw new Error('min and max cannot be the same value');
+  }
+  let normalized = (value - min) / (max - min);
+  normalized = Math.min(1, Math.max(0, normalized));
+  return Math.pow(normalized, exp);
+}
+function mapCC(mapping, value) {
+  const ccs = Array.isArray(value.cc) ? value.cc : [];
+  const matches = Object.entries(value).filter(([key]) => !!mapping[getControlName(key)]);
+  matches.forEach((match) => {
+    const control = match[0];
+    const { ccn, min = 0, max = 1, exp = 1 } = mapping[control];
+    const ccv = normalize(value[control], min, max, exp);
+    ccs.push({ ccn, ccv });
+  });
+  return ccs;
+}
+
+// sends a cc message to the given device on the given channel
+function sendCC(ccn, ccv, device, midichan, timeOffsetString) {
+  if (typeof ccv !== 'number' || ccv < 0 || ccv > 1) {
+    throw new Error('expected ccv to be a number between 0 and 1');
+  }
+  if (!['string', 'number'].includes(typeof ccn)) {
+    throw new Error('expected ccn to be a number or a string');
+  }
+  const scaled = Math.round(ccv * 127);
+  device.sendControlChange(ccn, scaled, midichan, { time: timeOffsetString });
+}
+
 Pattern.prototype.midi = function (output) {
   if (isPattern(output)) {
     throw new Error(
@@ -124,10 +175,16 @@ Pattern.prototype.midi = function (output) {
     // passing a string with a +num into the webmidi api adds an offset to the current time https://webmidijs.org/api/classes/Output
     const timeOffsetString = `+${getEventOffsetMs(targetTime, currentTime) + latencyMs}`;
     // destructure value
-    let { note, nrpnn, nrpv, ccn, ccv, midichan = 1, midicmd, gain = 1, velocity = 0.9 } = hap.value;
+    let { note, nrpnn, nrpv, ccn, ccv, midichan = 1, midicmd, gain = 1, velocity = 0.9, midimap } = hap.value;
 
     velocity = gain * velocity;
 
+    // if midimap is set, send a cc messages from defined controls
+    if (!!midimap && midiMappings.has(midimap)) {
+      const ccs = mapCC(midiMappings.get(midimap), hap.value);
+      ccs.forEach(({ ccn, ccv }) => sendCC(ccn, ccv, device, midichan, timeOffsetString));
+    }
+
     // note off messages will often a few ms arrive late, try to prevent glitching by subtracting from the duration length
     const duration = (hap.duration.valueOf() / cps) * 1000 - 10;
     if (note != null) {
@@ -138,14 +195,7 @@ Pattern.prototype.midi = function (output) {
       });
     }
     if (ccv !== undefined && ccn !== undefined) {
-      if (typeof ccv !== 'number' || ccv < 0 || ccv > 1) {
-        throw new Error('expected ccv to be a number between 0 and 1');
-      }
-      if (!['string', 'number'].includes(typeof ccn)) {
-        throw new Error('expected ccn to be a number or a string');
-      }
-      const scaled = Math.round(ccv * 127);
-      device.sendControlChange(ccn, scaled, midichan, { time: timeOffsetString });
+      sendCC(ccn, ccv, device, midichan, timeOffsetString);
     }
     if (hap.whole.begin + 0 === 0) {
       // we need to start here because we have the timing info

From 95b1548e5fdf0a7d9237bc5d4a937b31bb9e9d3b Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Sun, 2 Feb 2025 22:16:11 +0100
Subject: [PATCH 465/805] simplify

---
 packages/midi/midi.mjs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 8ad611fe..9425beac 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -117,7 +117,7 @@ function normalize(value = 0, min = 0, max = 1, exp = 1) {
   return Math.pow(normalized, exp);
 }
 function mapCC(mapping, value) {
-  const ccs = Array.isArray(value.cc) ? value.cc : [];
+  const ccs = [];
   const matches = Object.entries(value).filter(([key]) => !!mapping[getControlName(key)]);
   matches.forEach((match) => {
     const control = match[0];

From b87b2aff9a06aa3f54e0c1c7ce65ae27f18f21ce Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Sun, 2 Feb 2025 22:18:56 +0100
Subject: [PATCH 466/805] simplify more

---
 packages/midi/midi.mjs | 16 +++++++---------
 1 file changed, 7 insertions(+), 9 deletions(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 9425beac..240e3844 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -117,15 +117,13 @@ function normalize(value = 0, min = 0, max = 1, exp = 1) {
   return Math.pow(normalized, exp);
 }
 function mapCC(mapping, value) {
-  const ccs = [];
-  const matches = Object.entries(value).filter(([key]) => !!mapping[getControlName(key)]);
-  matches.forEach((match) => {
-    const control = match[0];
-    const { ccn, min = 0, max = 1, exp = 1 } = mapping[control];
-    const ccv = normalize(value[control], min, max, exp);
-    ccs.push({ ccn, ccv });
-  });
-  return ccs;
+  return Object.keys(value)
+    .filter((key) => !!mapping[getControlName(key)])
+    .map((key) => {
+      const { ccn, min = 0, max = 1, exp = 1 } = mapping[key];
+      const ccv = normalize(value[key], min, max, exp);
+      return { ccn, ccv };
+    });
 }
 
 // sends a cc message to the given device on the given channel

From b74d5becd5db8c42d5eb962a44d43d94fabdddef Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Sun, 2 Feb 2025 23:37:20 +0100
Subject: [PATCH 467/805] allow passing ccn numbers directly to midimapped
 control name

---
 packages/midi/midi.mjs | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 240e3844..7da20498 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -94,7 +94,14 @@ export const midiMappings = new Map();
 
 // takes midimap and converts each control key to the main control name
 function unifyMapping(mapping) {
-  return Object.fromEntries(Object.entries(mapping).map(([key, mapping]) => [getControlName(key), mapping]));
+  return Object.fromEntries(
+    Object.entries(mapping).map(([key, mapping]) => {
+      if (typeof mapping === 'number') {
+        mapping = { ccn: mapping };
+      }
+      return [getControlName(key), mapping];
+    }),
+  );
 }
 // adds a midimap to the registry
 export function addMidimap(name, mapping) {

From d86df33b8cdae139d85c88ba630dac2c811a54e6 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Sun, 2 Feb 2025 23:49:17 +0100
Subject: [PATCH 468/805] allow loading midimap from url

---
 packages/midi/midi.mjs | 28 ++++++++++++++++++++++++++--
 1 file changed, 26 insertions(+), 2 deletions(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 7da20498..ddea2ff1 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -107,10 +107,34 @@ function unifyMapping(mapping) {
 export function addMidimap(name, mapping) {
   midiMappings.set(name, unifyMapping(mapping));
 }
+
+function githubPath(base, subpath = '') {
+  if (!base.startsWith('github:')) {
+    throw new Error('expected "github:" at the start of pseudoUrl');
+  }
+  let [_, path] = base.split('github:');
+  path = path.endsWith('/') ? path.slice(0, -1) : path;
+  if (path.split('/').length === 2) {
+    // assume main as default branch if none set
+    path += '/main';
+  }
+  return `https://raw.githubusercontent.com/${path}/${subpath}`;
+}
+
+let loadCache = {};
 // adds multiple midimaps to the registry
-export function midimaps(map) {
+export async function midimaps(map) {
+  if (typeof map === 'string') {
+    if (map.startsWith('github:')) {
+      map = githubPath(map, 'midimap.json');
+    }
+    if (!loadCache[map]) {
+      loadCache[map] = fetch(map).then((res) => res.json());
+    }
+    map = await loadCache[map];
+  }
   if (typeof map === 'object') {
-    Object.entries(midiMappings).forEach(([name, mapping]) => addMidimap(name, mapping));
+    Object.entries(map).forEach(([name, mapping]) => addMidimap(name, mapping));
   }
 }
 

From 018d1ccd3112b9040d0efd9c2c06a2e110e9c31f Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Sun, 2 Feb 2025 23:55:36 +0000
Subject: [PATCH 469/805] Stepwise documentation tweaks, with mridangam samples
 (#1275)

* add mridangam sample bank
* stepwise documentation tweaks
---
 packages/core/pattern.mjs                 |  65 +-
 packages/repl/prebake.mjs                 |   1 +
 test/__snapshots__/examples.test.mjs.snap | 797 +++++++++++++---------
 website/public/mridangam.json             | 160 +++++
 website/src/pages/learn/stepwise.mdx      |   2 -
 website/src/repl/prebake.mjs              |   1 +
 6 files changed, 695 insertions(+), 331 deletions(-)
 create mode 100644 website/public/mridangam.json

diff --git a/packages/core/pattern.mjs b/packages/core/pattern.mjs
index 7bb6a0c7..6bfe39ce 100644
--- a/packages/core/pattern.mjs
+++ b/packages/core/pattern.mjs
@@ -2822,17 +2822,13 @@ export const take = stepRegister('take', function (i, pat) {
  * A positive number will drop steps from the start of a pattern, and a negative number from the end.
  * @return {Pattern}
  * @example
- * "bd cp ht mt".drop("1").sound()
- * // The same as "cp ht mt".sound()
+ * "tha dhi thom nam".drop("1").sound().bank("mridangam")
  * @example
- * "bd cp ht mt".drop("-1").sound()
- * // The same as "bd cp ht".sound()
+ * "tha dhi thom nam".drop("-1").sound().bank("mridangam")
  * @example
- * "bd cp ht mt".drop("1 2 3").sound()
- * // The same as "cp ht mt ht mt mt".sound()
+ * "tha dhi thom nam".drop("0 1 2 3").sound().bank("mridangam")
  * @example
- * "bd cp ht mt".drop("-1 -2 -3").sound()
- * // The same as "bd cp ht bd cp bd".sound()
+ * "tha dhi thom nam".drop("0 -1 -2 -3").sound().bank("mridangam")
  */
 export const drop = stepRegister('drop', function (i, pat) {
   if (!pat.hasSteps) {
@@ -2846,14 +2842,40 @@ export const drop = stepRegister('drop', function (i, pat) {
   return pat.take(Fraction(0).sub(pat._steps.sub(i)));
 });
 
+/**
+ * *Experimental*
+ *
+ * `repeat` is similar to `fast` in that it 'speeds up' the pattern, but it also increases the step count
+ * accordingly. So `stepcat("a b".repeat(2), "c d")` would be the same as `"a b a b c d"`, whereas
+ * `stepcat("a b".fast(2), "c d")` would be the same as `"[a b] [a b] c d"`.
+ * @example
+ * stepcat(
+ *   sound("bd bd - cp").repeat(2),
+ *   sound("bd - sd -")
+ * ).pace(8)
+ */
 export const repeat = stepRegister('repeat', function (factor, pat) {
   return pat.fast(factor).expand(factor);
 });
 
+/**
+ * *Experimental*
+ *
+ * Expands the step size of the pattern by the given factor.
+ * @example
+ * sound("tha dhi thom nam").bank("mridangam").expand("3 2 1 1 2 3").pace(8)
+ */
 export const expand = stepRegister('expand', function (factor, pat) {
   return pat.withSteps((t) => t.mul(Fraction(factor)));
 });
 
+/**
+ * *Experimental*
+ *
+ * Contracts the step size of the pattern by the given factor. See also `expand`.
+ * @example
+ * sound("tha dhi thom nam").bank("mridangam").contract("3 2 1 1 2 3").pace(8)
+ */
 export const contract = stepRegister('contract', function (factor, pat) {
   return pat.withSteps((t) => t.div(Fraction(factor)));
 });
@@ -2907,13 +2929,17 @@ export const shrinklist = (amount, pat) => pat.shrinklist(amount);
  * A positive number will progressively drop steps from the start of a pattern, and a negative number from the end.
  * @return {Pattern}
  * @example
- * "bd cp ht mt".shrink("1").sound()
- * // The same as "bd cp ht mt".drop("0 1 2 3").sound()
+ * "tha dhi thom nam".shrink("1").sound()
+ * .bank("mridangam")
  * @example
- * "bd cp ht mt".shrink("-1").sound()
- * // The same as "bd cp ht mt".drop("0 -1 -2 -3").sound()
+ * "tha dhi thom nam".shrink("-1").sound()
+ * .bank("mridangam")
  * @example
- * "bd cp ht mt".grow("1 -1").sound()
+ * "tha dhi thom nam".shrink("1 -1").sound().bank("mridangam").pace(4)
+ * @example
+ * note("0 1 2 3 4 5 6 7".scale("C:ritusen")).sound("folkharp")
+   .shrink("1 -1").pace(8)
+
  */
 
 export const shrink = register(
@@ -2942,11 +2968,16 @@ export const shrink = register(
  * A positive number will progressively grow steps from the start of a pattern, and a negative number from the end.
  * @return {Pattern}
  * @example
- * "bd cp ht mt".grow("1").sound()
- * // The same as "bd cp ht mt".take("1 2 3 4")
+ * "tha dhi thom nam".grow("1").sound()
+ * .bank("mridangam")
  * @example
- * "bd cp ht mt".grow("-1").sound()
- * // The same as "bd cp ht mt".take("-1 -2 -3 -4")
+ * "tha dhi thom nam".grow("-1").sound()
+ * .bank("mridangam")
+ * @example
+ * "tha dhi thom nam".grow("1 -1").sound().bank("mridangam").pace(4)
+ * @example
+ * note("0 1 2 3 4 5 6 7".scale("C:ritusen")).sound("folkharp")
+   .grow("1 -1").pace(8)
  */
 
 export const grow = register(
diff --git a/packages/repl/prebake.mjs b/packages/repl/prebake.mjs
index 9642cdd6..dd0023fb 100644
--- a/packages/repl/prebake.mjs
+++ b/packages/repl/prebake.mjs
@@ -38,6 +38,7 @@ export async function prebake() {
     samples(`${ds}/Dirt-Samples.json`),
     samples(`${ds}/EmuSP12.json`),
     samples(`${ds}/vcsl.json`),
+    samples(`${ds}/mridangam.json`),
   ]);
 
   aliasBank(`${ts}/tidal-drum-machines-alias.json`);
diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index 3cd86382..3678968b 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -1881,6 +1881,66 @@ exports[`runs examples > example "compressor" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "contract" example index 0 1`] = `
+[
+  "[ 0/1 → 1/24 | s:tha bank:mridangam ]",
+  "[ 1/24 → 1/12 | s:dhi bank:mridangam ]",
+  "[ 1/12 → 1/8 | s:thom bank:mridangam ]",
+  "[ 1/8 → 1/6 | s:nam bank:mridangam ]",
+  "[ 1/6 → 11/48 | s:tha bank:mridangam ]",
+  "[ 11/48 → 7/24 | s:dhi bank:mridangam ]",
+  "[ 7/24 → 17/48 | s:thom bank:mridangam ]",
+  "[ 17/48 → 5/12 | s:nam bank:mridangam ]",
+  "[ 5/12 → 13/24 | s:tha bank:mridangam ]",
+  "[ 13/24 → 2/3 | s:dhi bank:mridangam ]",
+  "[ 2/3 → 19/24 | s:thom bank:mridangam ]",
+  "[ 19/24 → 11/12 | s:nam bank:mridangam ]",
+  "[ 11/12 → 25/24 | s:tha bank:mridangam ]",
+  "[ 25/24 → 7/6 | s:dhi bank:mridangam ]",
+  "[ 7/6 → 31/24 | s:thom bank:mridangam ]",
+  "[ 31/24 → 17/12 | s:nam bank:mridangam ]",
+  "[ 17/12 → 71/48 | s:tha bank:mridangam ]",
+  "[ 71/48 → 37/24 | s:dhi bank:mridangam ]",
+  "[ 37/24 → 77/48 | s:thom bank:mridangam ]",
+  "[ 77/48 → 5/3 | s:nam bank:mridangam ]",
+  "[ 5/3 → 41/24 | s:tha bank:mridangam ]",
+  "[ 41/24 → 7/4 | s:dhi bank:mridangam ]",
+  "[ 7/4 → 43/24 | s:thom bank:mridangam ]",
+  "[ 43/24 → 11/6 | s:nam bank:mridangam ]",
+  "[ 11/6 → 15/8 | s:tha bank:mridangam ]",
+  "[ 15/8 → 23/12 | s:dhi bank:mridangam ]",
+  "[ 23/12 → 47/24 | s:thom bank:mridangam ]",
+  "[ 47/24 → 2/1 | s:nam bank:mridangam ]",
+  "[ 2/1 → 33/16 | s:tha bank:mridangam ]",
+  "[ 33/16 → 17/8 | s:dhi bank:mridangam ]",
+  "[ 17/8 → 35/16 | s:thom bank:mridangam ]",
+  "[ 35/16 → 9/4 | s:nam bank:mridangam ]",
+  "[ 9/4 → 19/8 | s:tha bank:mridangam ]",
+  "[ 19/8 → 5/2 | s:dhi bank:mridangam ]",
+  "[ 5/2 → 21/8 | s:thom bank:mridangam ]",
+  "[ 21/8 → 11/4 | s:nam bank:mridangam ]",
+  "[ 11/4 → 23/8 | s:tha bank:mridangam ]",
+  "[ 23/8 → 3/1 | s:dhi bank:mridangam ]",
+  "[ 3/1 → 25/8 | s:thom bank:mridangam ]",
+  "[ 25/8 → 13/4 | s:nam bank:mridangam ]",
+  "[ 13/4 → 53/16 | s:tha bank:mridangam ]",
+  "[ 53/16 → 27/8 | s:dhi bank:mridangam ]",
+  "[ 27/8 → 55/16 | s:thom bank:mridangam ]",
+  "[ 55/16 → 7/2 | s:nam bank:mridangam ]",
+  "[ 7/2 → 85/24 | s:tha bank:mridangam ]",
+  "[ 85/24 → 43/12 | s:dhi bank:mridangam ]",
+  "[ 43/12 → 29/8 | s:thom bank:mridangam ]",
+  "[ 29/8 → 11/3 | s:nam bank:mridangam ]",
+  "[ 11/3 → 89/24 | s:tha bank:mridangam ]",
+  "[ 89/24 → 15/4 | s:dhi bank:mridangam ]",
+  "[ 15/4 → 91/24 | s:thom bank:mridangam ]",
+  "[ 91/24 → 23/6 | s:nam bank:mridangam ]",
+  "[ 23/6 → 187/48 | s:tha bank:mridangam ]",
+  "[ 187/48 → 95/24 | s:dhi bank:mridangam ]",
+  "[ (95/24 → 4/1) ⇝ 193/48 | s:thom bank:mridangam ]",
+]
+`;
+
 exports[`runs examples > example "cosine" example index 0 1`] = `
 [
   "[ 0/1 → 1/16 | note:Eb4 ]",
@@ -2523,93 +2583,125 @@ exports[`runs examples > example "drive" example index 0 1`] = `
 
 exports[`runs examples > example "drop" example index 0 1`] = `
 [
-  "[ 0/1 → 1/3 | s:cp ]",
-  "[ 1/3 → 2/3 | s:ht ]",
-  "[ 2/3 → 1/1 | s:mt ]",
-  "[ 1/1 → 4/3 | s:cp ]",
-  "[ 4/3 → 5/3 | s:ht ]",
-  "[ 5/3 → 2/1 | s:mt ]",
-  "[ 2/1 → 7/3 | s:cp ]",
-  "[ 7/3 → 8/3 | s:ht ]",
-  "[ 8/3 → 3/1 | s:mt ]",
-  "[ 3/1 → 10/3 | s:cp ]",
-  "[ 10/3 → 11/3 | s:ht ]",
-  "[ 11/3 → 4/1 | s:mt ]",
+  "[ 0/1 → 1/3 | s:dhi bank:mridangam ]",
+  "[ 1/3 → 2/3 | s:thom bank:mridangam ]",
+  "[ 2/3 → 1/1 | s:nam bank:mridangam ]",
+  "[ 1/1 → 4/3 | s:dhi bank:mridangam ]",
+  "[ 4/3 → 5/3 | s:thom bank:mridangam ]",
+  "[ 5/3 → 2/1 | s:nam bank:mridangam ]",
+  "[ 2/1 → 7/3 | s:dhi bank:mridangam ]",
+  "[ 7/3 → 8/3 | s:thom bank:mridangam ]",
+  "[ 8/3 → 3/1 | s:nam bank:mridangam ]",
+  "[ 3/1 → 10/3 | s:dhi bank:mridangam ]",
+  "[ 10/3 → 11/3 | s:thom bank:mridangam ]",
+  "[ 11/3 → 4/1 | s:nam bank:mridangam ]",
 ]
 `;
 
 exports[`runs examples > example "drop" example index 1 1`] = `
 [
-  "[ 0/1 → 1/3 | s:bd ]",
-  "[ 1/3 → 2/3 | s:cp ]",
-  "[ 2/3 → 1/1 | s:ht ]",
-  "[ 1/1 → 4/3 | s:bd ]",
-  "[ 4/3 → 5/3 | s:cp ]",
-  "[ 5/3 → 2/1 | s:ht ]",
-  "[ 2/1 → 7/3 | s:bd ]",
-  "[ 7/3 → 8/3 | s:cp ]",
-  "[ 8/3 → 3/1 | s:ht ]",
-  "[ 3/1 → 10/3 | s:bd ]",
-  "[ 10/3 → 11/3 | s:cp ]",
-  "[ 11/3 → 4/1 | s:ht ]",
+  "[ 0/1 → 1/3 | s:tha bank:mridangam ]",
+  "[ 1/3 → 2/3 | s:dhi bank:mridangam ]",
+  "[ 2/3 → 1/1 | s:thom bank:mridangam ]",
+  "[ 1/1 → 4/3 | s:tha bank:mridangam ]",
+  "[ 4/3 → 5/3 | s:dhi bank:mridangam ]",
+  "[ 5/3 → 2/1 | s:thom bank:mridangam ]",
+  "[ 2/1 → 7/3 | s:tha bank:mridangam ]",
+  "[ 7/3 → 8/3 | s:dhi bank:mridangam ]",
+  "[ 8/3 → 3/1 | s:thom bank:mridangam ]",
+  "[ 3/1 → 10/3 | s:tha bank:mridangam ]",
+  "[ 10/3 → 11/3 | s:dhi bank:mridangam ]",
+  "[ 11/3 → 4/1 | s:thom bank:mridangam ]",
 ]
 `;
 
 exports[`runs examples > example "drop" example index 2 1`] = `
 [
-  "[ 0/1 → 1/6 | s:cp ]",
-  "[ 1/6 → 1/3 | s:ht ]",
-  "[ 1/3 → 1/2 | s:mt ]",
-  "[ 1/2 → 2/3 | s:ht ]",
-  "[ 2/3 → 5/6 | s:mt ]",
-  "[ 5/6 → 1/1 | s:mt ]",
-  "[ 1/1 → 7/6 | s:cp ]",
-  "[ 7/6 → 4/3 | s:ht ]",
-  "[ 4/3 → 3/2 | s:mt ]",
-  "[ 3/2 → 5/3 | s:ht ]",
-  "[ 5/3 → 11/6 | s:mt ]",
-  "[ 11/6 → 2/1 | s:mt ]",
-  "[ 2/1 → 13/6 | s:cp ]",
-  "[ 13/6 → 7/3 | s:ht ]",
-  "[ 7/3 → 5/2 | s:mt ]",
-  "[ 5/2 → 8/3 | s:ht ]",
-  "[ 8/3 → 17/6 | s:mt ]",
-  "[ 17/6 → 3/1 | s:mt ]",
-  "[ 3/1 → 19/6 | s:cp ]",
-  "[ 19/6 → 10/3 | s:ht ]",
-  "[ 10/3 → 7/2 | s:mt ]",
-  "[ 7/2 → 11/3 | s:ht ]",
-  "[ 11/3 → 23/6 | s:mt ]",
-  "[ 23/6 → 4/1 | s:mt ]",
+  "[ 0/1 → 1/10 | s:tha bank:mridangam ]",
+  "[ 1/10 → 1/5 | s:dhi bank:mridangam ]",
+  "[ 1/5 → 3/10 | s:thom bank:mridangam ]",
+  "[ 3/10 → 2/5 | s:nam bank:mridangam ]",
+  "[ 2/5 → 1/2 | s:dhi bank:mridangam ]",
+  "[ 1/2 → 3/5 | s:thom bank:mridangam ]",
+  "[ 3/5 → 7/10 | s:nam bank:mridangam ]",
+  "[ 7/10 → 4/5 | s:thom bank:mridangam ]",
+  "[ 4/5 → 9/10 | s:nam bank:mridangam ]",
+  "[ 9/10 → 1/1 | s:nam bank:mridangam ]",
+  "[ 1/1 → 11/10 | s:tha bank:mridangam ]",
+  "[ 11/10 → 6/5 | s:dhi bank:mridangam ]",
+  "[ 6/5 → 13/10 | s:thom bank:mridangam ]",
+  "[ 13/10 → 7/5 | s:nam bank:mridangam ]",
+  "[ 7/5 → 3/2 | s:dhi bank:mridangam ]",
+  "[ 3/2 → 8/5 | s:thom bank:mridangam ]",
+  "[ 8/5 → 17/10 | s:nam bank:mridangam ]",
+  "[ 17/10 → 9/5 | s:thom bank:mridangam ]",
+  "[ 9/5 → 19/10 | s:nam bank:mridangam ]",
+  "[ 19/10 → 2/1 | s:nam bank:mridangam ]",
+  "[ 2/1 → 21/10 | s:tha bank:mridangam ]",
+  "[ 21/10 → 11/5 | s:dhi bank:mridangam ]",
+  "[ 11/5 → 23/10 | s:thom bank:mridangam ]",
+  "[ 23/10 → 12/5 | s:nam bank:mridangam ]",
+  "[ 12/5 → 5/2 | s:dhi bank:mridangam ]",
+  "[ 5/2 → 13/5 | s:thom bank:mridangam ]",
+  "[ 13/5 → 27/10 | s:nam bank:mridangam ]",
+  "[ 27/10 → 14/5 | s:thom bank:mridangam ]",
+  "[ 14/5 → 29/10 | s:nam bank:mridangam ]",
+  "[ 29/10 → 3/1 | s:nam bank:mridangam ]",
+  "[ 3/1 → 31/10 | s:tha bank:mridangam ]",
+  "[ 31/10 → 16/5 | s:dhi bank:mridangam ]",
+  "[ 16/5 → 33/10 | s:thom bank:mridangam ]",
+  "[ 33/10 → 17/5 | s:nam bank:mridangam ]",
+  "[ 17/5 → 7/2 | s:dhi bank:mridangam ]",
+  "[ 7/2 → 18/5 | s:thom bank:mridangam ]",
+  "[ 18/5 → 37/10 | s:nam bank:mridangam ]",
+  "[ 37/10 → 19/5 | s:thom bank:mridangam ]",
+  "[ 19/5 → 39/10 | s:nam bank:mridangam ]",
+  "[ 39/10 → 4/1 | s:nam bank:mridangam ]",
 ]
 `;
 
 exports[`runs examples > example "drop" example index 3 1`] = `
 [
-  "[ 0/1 → 1/6 | s:bd ]",
-  "[ 1/6 → 1/3 | s:cp ]",
-  "[ 1/3 → 1/2 | s:ht ]",
-  "[ 1/2 → 2/3 | s:bd ]",
-  "[ 2/3 → 5/6 | s:cp ]",
-  "[ 5/6 → 1/1 | s:bd ]",
-  "[ 1/1 → 7/6 | s:bd ]",
-  "[ 7/6 → 4/3 | s:cp ]",
-  "[ 4/3 → 3/2 | s:ht ]",
-  "[ 3/2 → 5/3 | s:bd ]",
-  "[ 5/3 → 11/6 | s:cp ]",
-  "[ 11/6 → 2/1 | s:bd ]",
-  "[ 2/1 → 13/6 | s:bd ]",
-  "[ 13/6 → 7/3 | s:cp ]",
-  "[ 7/3 → 5/2 | s:ht ]",
-  "[ 5/2 → 8/3 | s:bd ]",
-  "[ 8/3 → 17/6 | s:cp ]",
-  "[ 17/6 → 3/1 | s:bd ]",
-  "[ 3/1 → 19/6 | s:bd ]",
-  "[ 19/6 → 10/3 | s:cp ]",
-  "[ 10/3 → 7/2 | s:ht ]",
-  "[ 7/2 → 11/3 | s:bd ]",
-  "[ 11/3 → 23/6 | s:cp ]",
-  "[ 23/6 → 4/1 | s:bd ]",
+  "[ 0/1 → 1/10 | s:tha bank:mridangam ]",
+  "[ 1/10 → 1/5 | s:dhi bank:mridangam ]",
+  "[ 1/5 → 3/10 | s:thom bank:mridangam ]",
+  "[ 3/10 → 2/5 | s:nam bank:mridangam ]",
+  "[ 2/5 → 1/2 | s:tha bank:mridangam ]",
+  "[ 1/2 → 3/5 | s:dhi bank:mridangam ]",
+  "[ 3/5 → 7/10 | s:thom bank:mridangam ]",
+  "[ 7/10 → 4/5 | s:tha bank:mridangam ]",
+  "[ 4/5 → 9/10 | s:dhi bank:mridangam ]",
+  "[ 9/10 → 1/1 | s:tha bank:mridangam ]",
+  "[ 1/1 → 11/10 | s:tha bank:mridangam ]",
+  "[ 11/10 → 6/5 | s:dhi bank:mridangam ]",
+  "[ 6/5 → 13/10 | s:thom bank:mridangam ]",
+  "[ 13/10 → 7/5 | s:nam bank:mridangam ]",
+  "[ 7/5 → 3/2 | s:tha bank:mridangam ]",
+  "[ 3/2 → 8/5 | s:dhi bank:mridangam ]",
+  "[ 8/5 → 17/10 | s:thom bank:mridangam ]",
+  "[ 17/10 → 9/5 | s:tha bank:mridangam ]",
+  "[ 9/5 → 19/10 | s:dhi bank:mridangam ]",
+  "[ 19/10 → 2/1 | s:tha bank:mridangam ]",
+  "[ 2/1 → 21/10 | s:tha bank:mridangam ]",
+  "[ 21/10 → 11/5 | s:dhi bank:mridangam ]",
+  "[ 11/5 → 23/10 | s:thom bank:mridangam ]",
+  "[ 23/10 → 12/5 | s:nam bank:mridangam ]",
+  "[ 12/5 → 5/2 | s:tha bank:mridangam ]",
+  "[ 5/2 → 13/5 | s:dhi bank:mridangam ]",
+  "[ 13/5 → 27/10 | s:thom bank:mridangam ]",
+  "[ 27/10 → 14/5 | s:tha bank:mridangam ]",
+  "[ 14/5 → 29/10 | s:dhi bank:mridangam ]",
+  "[ 29/10 → 3/1 | s:tha bank:mridangam ]",
+  "[ 3/1 → 31/10 | s:tha bank:mridangam ]",
+  "[ 31/10 → 16/5 | s:dhi bank:mridangam ]",
+  "[ 16/5 → 33/10 | s:thom bank:mridangam ]",
+  "[ 33/10 → 17/5 | s:nam bank:mridangam ]",
+  "[ 17/5 → 7/2 | s:tha bank:mridangam ]",
+  "[ 7/2 → 18/5 | s:dhi bank:mridangam ]",
+  "[ 18/5 → 37/10 | s:thom bank:mridangam ]",
+  "[ 37/10 → 19/5 | s:tha bank:mridangam ]",
+  "[ 19/5 → 39/10 | s:dhi bank:mridangam ]",
+  "[ 39/10 → 4/1 | s:tha bank:mridangam ]",
 ]
 `;
 
@@ -2909,6 +3001,29 @@ exports[`runs examples > example "every" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "expand" example index 0 1`] = `
+[
+  "[ 0/1 → 3/8 | s:tha bank:mridangam ]",
+  "[ 3/8 → 3/4 | s:dhi bank:mridangam ]",
+  "[ 3/4 → 9/8 | s:thom bank:mridangam ]",
+  "[ 9/8 → 3/2 | s:nam bank:mridangam ]",
+  "[ 3/2 → 7/4 | s:tha bank:mridangam ]",
+  "[ 7/4 → 2/1 | s:dhi bank:mridangam ]",
+  "[ 2/1 → 9/4 | s:thom bank:mridangam ]",
+  "[ 9/4 → 5/2 | s:nam bank:mridangam ]",
+  "[ 5/2 → 21/8 | s:tha bank:mridangam ]",
+  "[ 21/8 → 11/4 | s:dhi bank:mridangam ]",
+  "[ 11/4 → 23/8 | s:thom bank:mridangam ]",
+  "[ 23/8 → 3/1 | s:nam bank:mridangam ]",
+  "[ 3/1 → 25/8 | s:tha bank:mridangam ]",
+  "[ 25/8 → 13/4 | s:dhi bank:mridangam ]",
+  "[ 13/4 → 27/8 | s:thom bank:mridangam ]",
+  "[ 27/8 → 7/2 | s:nam bank:mridangam ]",
+  "[ 7/2 → 15/4 | s:tha bank:mridangam ]",
+  "[ 15/4 → 4/1 | s:dhi bank:mridangam ]",
+]
+`;
+
 exports[`runs examples > example "fanchor" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | note:f s:sawtooth cutoff:1000 lpenv:8 fanchor:0 ]",
@@ -3536,91 +3651,149 @@ exports[`runs examples > example "gap" example index 0 1`] = `[]`;
 
 exports[`runs examples > example "grow" example index 0 1`] = `
 [
-  "[ 0/1 → 1/10 | s:bd ]",
-  "[ 1/10 → 1/5 | s:bd ]",
-  "[ 1/5 → 3/10 | s:cp ]",
-  "[ 3/10 → 2/5 | s:bd ]",
-  "[ 2/5 → 1/2 | s:cp ]",
-  "[ 1/2 → 3/5 | s:ht ]",
-  "[ 3/5 → 7/10 | s:bd ]",
-  "[ 7/10 → 4/5 | s:cp ]",
-  "[ 4/5 → 9/10 | s:ht ]",
-  "[ 9/10 → 1/1 | s:mt ]",
-  "[ 1/1 → 11/10 | s:bd ]",
-  "[ 11/10 → 6/5 | s:bd ]",
-  "[ 6/5 → 13/10 | s:cp ]",
-  "[ 13/10 → 7/5 | s:bd ]",
-  "[ 7/5 → 3/2 | s:cp ]",
-  "[ 3/2 → 8/5 | s:ht ]",
-  "[ 8/5 → 17/10 | s:bd ]",
-  "[ 17/10 → 9/5 | s:cp ]",
-  "[ 9/5 → 19/10 | s:ht ]",
-  "[ 19/10 → 2/1 | s:mt ]",
-  "[ 2/1 → 21/10 | s:bd ]",
-  "[ 21/10 → 11/5 | s:bd ]",
-  "[ 11/5 → 23/10 | s:cp ]",
-  "[ 23/10 → 12/5 | s:bd ]",
-  "[ 12/5 → 5/2 | s:cp ]",
-  "[ 5/2 → 13/5 | s:ht ]",
-  "[ 13/5 → 27/10 | s:bd ]",
-  "[ 27/10 → 14/5 | s:cp ]",
-  "[ 14/5 → 29/10 | s:ht ]",
-  "[ 29/10 → 3/1 | s:mt ]",
-  "[ 3/1 → 31/10 | s:bd ]",
-  "[ 31/10 → 16/5 | s:bd ]",
-  "[ 16/5 → 33/10 | s:cp ]",
-  "[ 33/10 → 17/5 | s:bd ]",
-  "[ 17/5 → 7/2 | s:cp ]",
-  "[ 7/2 → 18/5 | s:ht ]",
-  "[ 18/5 → 37/10 | s:bd ]",
-  "[ 37/10 → 19/5 | s:cp ]",
-  "[ 19/5 → 39/10 | s:ht ]",
-  "[ 39/10 → 4/1 | s:mt ]",
+  "[ 0/1 → 1/10 | s:tha bank:mridangam ]",
+  "[ 1/10 → 1/5 | s:tha bank:mridangam ]",
+  "[ 1/5 → 3/10 | s:dhi bank:mridangam ]",
+  "[ 3/10 → 2/5 | s:tha bank:mridangam ]",
+  "[ 2/5 → 1/2 | s:dhi bank:mridangam ]",
+  "[ 1/2 → 3/5 | s:thom bank:mridangam ]",
+  "[ 3/5 → 7/10 | s:tha bank:mridangam ]",
+  "[ 7/10 → 4/5 | s:dhi bank:mridangam ]",
+  "[ 4/5 → 9/10 | s:thom bank:mridangam ]",
+  "[ 9/10 → 1/1 | s:nam bank:mridangam ]",
+  "[ 1/1 → 11/10 | s:tha bank:mridangam ]",
+  "[ 11/10 → 6/5 | s:tha bank:mridangam ]",
+  "[ 6/5 → 13/10 | s:dhi bank:mridangam ]",
+  "[ 13/10 → 7/5 | s:tha bank:mridangam ]",
+  "[ 7/5 → 3/2 | s:dhi bank:mridangam ]",
+  "[ 3/2 → 8/5 | s:thom bank:mridangam ]",
+  "[ 8/5 → 17/10 | s:tha bank:mridangam ]",
+  "[ 17/10 → 9/5 | s:dhi bank:mridangam ]",
+  "[ 9/5 → 19/10 | s:thom bank:mridangam ]",
+  "[ 19/10 → 2/1 | s:nam bank:mridangam ]",
+  "[ 2/1 → 21/10 | s:tha bank:mridangam ]",
+  "[ 21/10 → 11/5 | s:tha bank:mridangam ]",
+  "[ 11/5 → 23/10 | s:dhi bank:mridangam ]",
+  "[ 23/10 → 12/5 | s:tha bank:mridangam ]",
+  "[ 12/5 → 5/2 | s:dhi bank:mridangam ]",
+  "[ 5/2 → 13/5 | s:thom bank:mridangam ]",
+  "[ 13/5 → 27/10 | s:tha bank:mridangam ]",
+  "[ 27/10 → 14/5 | s:dhi bank:mridangam ]",
+  "[ 14/5 → 29/10 | s:thom bank:mridangam ]",
+  "[ 29/10 → 3/1 | s:nam bank:mridangam ]",
+  "[ 3/1 → 31/10 | s:tha bank:mridangam ]",
+  "[ 31/10 → 16/5 | s:tha bank:mridangam ]",
+  "[ 16/5 → 33/10 | s:dhi bank:mridangam ]",
+  "[ 33/10 → 17/5 | s:tha bank:mridangam ]",
+  "[ 17/5 → 7/2 | s:dhi bank:mridangam ]",
+  "[ 7/2 → 18/5 | s:thom bank:mridangam ]",
+  "[ 18/5 → 37/10 | s:tha bank:mridangam ]",
+  "[ 37/10 → 19/5 | s:dhi bank:mridangam ]",
+  "[ 19/5 → 39/10 | s:thom bank:mridangam ]",
+  "[ 39/10 → 4/1 | s:nam bank:mridangam ]",
 ]
 `;
 
 exports[`runs examples > example "grow" example index 1 1`] = `
 [
-  "[ 0/1 → 1/10 | s:mt ]",
-  "[ 1/10 → 1/5 | s:ht ]",
-  "[ 1/5 → 3/10 | s:mt ]",
-  "[ 3/10 → 2/5 | s:cp ]",
-  "[ 2/5 → 1/2 | s:ht ]",
-  "[ 1/2 → 3/5 | s:mt ]",
-  "[ 3/5 → 7/10 | s:bd ]",
-  "[ 7/10 → 4/5 | s:cp ]",
-  "[ 4/5 → 9/10 | s:ht ]",
-  "[ 9/10 → 1/1 | s:mt ]",
-  "[ 1/1 → 11/10 | s:mt ]",
-  "[ 11/10 → 6/5 | s:ht ]",
-  "[ 6/5 → 13/10 | s:mt ]",
-  "[ 13/10 → 7/5 | s:cp ]",
-  "[ 7/5 → 3/2 | s:ht ]",
-  "[ 3/2 → 8/5 | s:mt ]",
-  "[ 8/5 → 17/10 | s:bd ]",
-  "[ 17/10 → 9/5 | s:cp ]",
-  "[ 9/5 → 19/10 | s:ht ]",
-  "[ 19/10 → 2/1 | s:mt ]",
-  "[ 2/1 → 21/10 | s:mt ]",
-  "[ 21/10 → 11/5 | s:ht ]",
-  "[ 11/5 → 23/10 | s:mt ]",
-  "[ 23/10 → 12/5 | s:cp ]",
-  "[ 12/5 → 5/2 | s:ht ]",
-  "[ 5/2 → 13/5 | s:mt ]",
-  "[ 13/5 → 27/10 | s:bd ]",
-  "[ 27/10 → 14/5 | s:cp ]",
-  "[ 14/5 → 29/10 | s:ht ]",
-  "[ 29/10 → 3/1 | s:mt ]",
-  "[ 3/1 → 31/10 | s:mt ]",
-  "[ 31/10 → 16/5 | s:ht ]",
-  "[ 16/5 → 33/10 | s:mt ]",
-  "[ 33/10 → 17/5 | s:cp ]",
-  "[ 17/5 → 7/2 | s:ht ]",
-  "[ 7/2 → 18/5 | s:mt ]",
-  "[ 18/5 → 37/10 | s:bd ]",
-  "[ 37/10 → 19/5 | s:cp ]",
-  "[ 19/5 → 39/10 | s:ht ]",
-  "[ 39/10 → 4/1 | s:mt ]",
+  "[ 0/1 → 1/10 | s:nam bank:mridangam ]",
+  "[ 1/10 → 1/5 | s:thom bank:mridangam ]",
+  "[ 1/5 → 3/10 | s:nam bank:mridangam ]",
+  "[ 3/10 → 2/5 | s:dhi bank:mridangam ]",
+  "[ 2/5 → 1/2 | s:thom bank:mridangam ]",
+  "[ 1/2 → 3/5 | s:nam bank:mridangam ]",
+  "[ 3/5 → 7/10 | s:tha bank:mridangam ]",
+  "[ 7/10 → 4/5 | s:dhi bank:mridangam ]",
+  "[ 4/5 → 9/10 | s:thom bank:mridangam ]",
+  "[ 9/10 → 1/1 | s:nam bank:mridangam ]",
+  "[ 1/1 → 11/10 | s:nam bank:mridangam ]",
+  "[ 11/10 → 6/5 | s:thom bank:mridangam ]",
+  "[ 6/5 → 13/10 | s:nam bank:mridangam ]",
+  "[ 13/10 → 7/5 | s:dhi bank:mridangam ]",
+  "[ 7/5 → 3/2 | s:thom bank:mridangam ]",
+  "[ 3/2 → 8/5 | s:nam bank:mridangam ]",
+  "[ 8/5 → 17/10 | s:tha bank:mridangam ]",
+  "[ 17/10 → 9/5 | s:dhi bank:mridangam ]",
+  "[ 9/5 → 19/10 | s:thom bank:mridangam ]",
+  "[ 19/10 → 2/1 | s:nam bank:mridangam ]",
+  "[ 2/1 → 21/10 | s:nam bank:mridangam ]",
+  "[ 21/10 → 11/5 | s:thom bank:mridangam ]",
+  "[ 11/5 → 23/10 | s:nam bank:mridangam ]",
+  "[ 23/10 → 12/5 | s:dhi bank:mridangam ]",
+  "[ 12/5 → 5/2 | s:thom bank:mridangam ]",
+  "[ 5/2 → 13/5 | s:nam bank:mridangam ]",
+  "[ 13/5 → 27/10 | s:tha bank:mridangam ]",
+  "[ 27/10 → 14/5 | s:dhi bank:mridangam ]",
+  "[ 14/5 → 29/10 | s:thom bank:mridangam ]",
+  "[ 29/10 → 3/1 | s:nam bank:mridangam ]",
+  "[ 3/1 → 31/10 | s:nam bank:mridangam ]",
+  "[ 31/10 → 16/5 | s:thom bank:mridangam ]",
+  "[ 16/5 → 33/10 | s:nam bank:mridangam ]",
+  "[ 33/10 → 17/5 | s:dhi bank:mridangam ]",
+  "[ 17/5 → 7/2 | s:thom bank:mridangam ]",
+  "[ 7/2 → 18/5 | s:nam bank:mridangam ]",
+  "[ 18/5 → 37/10 | s:tha bank:mridangam ]",
+  "[ 37/10 → 19/5 | s:dhi bank:mridangam ]",
+  "[ 19/5 → 39/10 | s:thom bank:mridangam ]",
+  "[ 39/10 → 4/1 | s:nam bank:mridangam ]",
+]
+`;
+
+exports[`runs examples > example "grow" example index 2 1`] = `
+[
+  "[ 0/1 → 1/4 | s:tha bank:mridangam ]",
+  "[ 1/4 → 1/2 | s:tha bank:mridangam ]",
+  "[ 1/2 → 3/4 | s:dhi bank:mridangam ]",
+  "[ 3/4 → 1/1 | s:tha bank:mridangam ]",
+  "[ 1/1 → 5/4 | s:dhi bank:mridangam ]",
+  "[ 5/4 → 3/2 | s:thom bank:mridangam ]",
+  "[ 3/2 → 7/4 | s:tha bank:mridangam ]",
+  "[ 7/4 → 2/1 | s:dhi bank:mridangam ]",
+  "[ 2/1 → 9/4 | s:thom bank:mridangam ]",
+  "[ 9/4 → 5/2 | s:nam bank:mridangam ]",
+  "[ 5/2 → 11/4 | s:nam bank:mridangam ]",
+  "[ 11/4 → 3/1 | s:thom bank:mridangam ]",
+  "[ 3/1 → 13/4 | s:nam bank:mridangam ]",
+  "[ 13/4 → 7/2 | s:dhi bank:mridangam ]",
+  "[ 7/2 → 15/4 | s:thom bank:mridangam ]",
+  "[ 15/4 → 4/1 | s:nam bank:mridangam ]",
+]
+`;
+
+exports[`runs examples > example "grow" example index 3 1`] = `
+[
+  "[ 0/1 → 1/8 | note:C3 s:folkharp ]",
+  "[ 1/8 → 1/4 | note:C3 s:folkharp ]",
+  "[ 1/4 → 3/8 | note:D3 s:folkharp ]",
+  "[ 3/8 → 1/2 | note:C3 s:folkharp ]",
+  "[ 1/2 → 5/8 | note:D3 s:folkharp ]",
+  "[ 5/8 → 3/4 | note:F3 s:folkharp ]",
+  "[ 3/4 → 7/8 | note:C3 s:folkharp ]",
+  "[ 7/8 → 1/1 | note:D3 s:folkharp ]",
+  "[ 1/1 → 9/8 | note:F3 s:folkharp ]",
+  "[ 9/8 → 5/4 | note:G3 s:folkharp ]",
+  "[ 5/4 → 11/8 | note:C3 s:folkharp ]",
+  "[ 11/8 → 3/2 | note:D3 s:folkharp ]",
+  "[ 3/2 → 13/8 | note:F3 s:folkharp ]",
+  "[ 13/8 → 7/4 | note:G3 s:folkharp ]",
+  "[ 7/4 → 15/8 | note:A3 s:folkharp ]",
+  "[ 15/8 → 2/1 | note:C3 s:folkharp ]",
+  "[ 2/1 → 17/8 | note:D3 s:folkharp ]",
+  "[ 17/8 → 9/4 | note:F3 s:folkharp ]",
+  "[ 9/4 → 19/8 | note:G3 s:folkharp ]",
+  "[ 19/8 → 5/2 | note:A3 s:folkharp ]",
+  "[ 5/2 → 21/8 | note:C4 s:folkharp ]",
+  "[ 21/8 → 11/4 | note:C3 s:folkharp ]",
+  "[ 11/4 → 23/8 | note:D3 s:folkharp ]",
+  "[ 23/8 → 3/1 | note:F3 s:folkharp ]",
+  "[ 3/1 → 25/8 | note:G3 s:folkharp ]",
+  "[ 25/8 → 13/4 | note:A3 s:folkharp ]",
+  "[ 13/4 → 27/8 | note:C4 s:folkharp ]",
+  "[ 27/8 → 7/2 | note:D4 s:folkharp ]",
+  "[ 7/2 → 29/8 | note:C3 s:folkharp ]",
+  "[ 29/8 → 15/4 | note:D3 s:folkharp ]",
+  "[ 15/4 → 31/8 | note:F3 s:folkharp ]",
+  "[ 31/8 → 4/1 | note:G3 s:folkharp ]",
 ]
 `;
 
@@ -6322,6 +6495,33 @@ exports[`runs examples > example "release" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "repeat" example index 0 1`] = `
+[
+  "[ 0/1 → 1/8 | s:bd ]",
+  "[ 1/8 → 1/4 | s:bd ]",
+  "[ 3/8 → 1/2 | s:cp ]",
+  "[ 1/2 → 5/8 | s:bd ]",
+  "[ 5/8 → 3/4 | s:bd ]",
+  "[ 7/8 → 1/1 | s:cp ]",
+  "[ 1/1 → 9/8 | s:bd ]",
+  "[ 5/4 → 11/8 | s:sd ]",
+  "[ 3/2 → 13/8 | s:bd ]",
+  "[ 13/8 → 7/4 | s:bd ]",
+  "[ 15/8 → 2/1 | s:cp ]",
+  "[ 2/1 → 17/8 | s:bd ]",
+  "[ 17/8 → 9/4 | s:bd ]",
+  "[ 19/8 → 5/2 | s:cp ]",
+  "[ 5/2 → 21/8 | s:bd ]",
+  "[ 11/4 → 23/8 | s:sd ]",
+  "[ 3/1 → 25/8 | s:bd ]",
+  "[ 25/8 → 13/4 | s:bd ]",
+  "[ 27/8 → 7/2 | s:cp ]",
+  "[ 7/2 → 29/8 | s:bd ]",
+  "[ 29/8 → 15/4 | s:bd ]",
+  "[ 31/8 → 4/1 | s:cp ]",
+]
+`;
+
 exports[`runs examples > example "repeatCycles" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:42 s:gm_acoustic_guitar_nylon ]",
@@ -7380,176 +7580,149 @@ exports[`runs examples > example "shape" example index 0 1`] = `
 
 exports[`runs examples > example "shrink" example index 0 1`] = `
 [
-  "[ 0/1 → 1/10 | s:bd ]",
-  "[ 1/10 → 1/5 | s:cp ]",
-  "[ 1/5 → 3/10 | s:ht ]",
-  "[ 3/10 → 2/5 | s:mt ]",
-  "[ 2/5 → 1/2 | s:cp ]",
-  "[ 1/2 → 3/5 | s:ht ]",
-  "[ 3/5 → 7/10 | s:mt ]",
-  "[ 7/10 → 4/5 | s:ht ]",
-  "[ 4/5 → 9/10 | s:mt ]",
-  "[ 9/10 → 1/1 | s:mt ]",
-  "[ 1/1 → 11/10 | s:bd ]",
-  "[ 11/10 → 6/5 | s:cp ]",
-  "[ 6/5 → 13/10 | s:ht ]",
-  "[ 13/10 → 7/5 | s:mt ]",
-  "[ 7/5 → 3/2 | s:cp ]",
-  "[ 3/2 → 8/5 | s:ht ]",
-  "[ 8/5 → 17/10 | s:mt ]",
-  "[ 17/10 → 9/5 | s:ht ]",
-  "[ 9/5 → 19/10 | s:mt ]",
-  "[ 19/10 → 2/1 | s:mt ]",
-  "[ 2/1 → 21/10 | s:bd ]",
-  "[ 21/10 → 11/5 | s:cp ]",
-  "[ 11/5 → 23/10 | s:ht ]",
-  "[ 23/10 → 12/5 | s:mt ]",
-  "[ 12/5 → 5/2 | s:cp ]",
-  "[ 5/2 → 13/5 | s:ht ]",
-  "[ 13/5 → 27/10 | s:mt ]",
-  "[ 27/10 → 14/5 | s:ht ]",
-  "[ 14/5 → 29/10 | s:mt ]",
-  "[ 29/10 → 3/1 | s:mt ]",
-  "[ 3/1 → 31/10 | s:bd ]",
-  "[ 31/10 → 16/5 | s:cp ]",
-  "[ 16/5 → 33/10 | s:ht ]",
-  "[ 33/10 → 17/5 | s:mt ]",
-  "[ 17/5 → 7/2 | s:cp ]",
-  "[ 7/2 → 18/5 | s:ht ]",
-  "[ 18/5 → 37/10 | s:mt ]",
-  "[ 37/10 → 19/5 | s:ht ]",
-  "[ 19/5 → 39/10 | s:mt ]",
-  "[ 39/10 → 4/1 | s:mt ]",
+  "[ 0/1 → 1/10 | s:tha bank:mridangam ]",
+  "[ 1/10 → 1/5 | s:dhi bank:mridangam ]",
+  "[ 1/5 → 3/10 | s:thom bank:mridangam ]",
+  "[ 3/10 → 2/5 | s:nam bank:mridangam ]",
+  "[ 2/5 → 1/2 | s:dhi bank:mridangam ]",
+  "[ 1/2 → 3/5 | s:thom bank:mridangam ]",
+  "[ 3/5 → 7/10 | s:nam bank:mridangam ]",
+  "[ 7/10 → 4/5 | s:thom bank:mridangam ]",
+  "[ 4/5 → 9/10 | s:nam bank:mridangam ]",
+  "[ 9/10 → 1/1 | s:nam bank:mridangam ]",
+  "[ 1/1 → 11/10 | s:tha bank:mridangam ]",
+  "[ 11/10 → 6/5 | s:dhi bank:mridangam ]",
+  "[ 6/5 → 13/10 | s:thom bank:mridangam ]",
+  "[ 13/10 → 7/5 | s:nam bank:mridangam ]",
+  "[ 7/5 → 3/2 | s:dhi bank:mridangam ]",
+  "[ 3/2 → 8/5 | s:thom bank:mridangam ]",
+  "[ 8/5 → 17/10 | s:nam bank:mridangam ]",
+  "[ 17/10 → 9/5 | s:thom bank:mridangam ]",
+  "[ 9/5 → 19/10 | s:nam bank:mridangam ]",
+  "[ 19/10 → 2/1 | s:nam bank:mridangam ]",
+  "[ 2/1 → 21/10 | s:tha bank:mridangam ]",
+  "[ 21/10 → 11/5 | s:dhi bank:mridangam ]",
+  "[ 11/5 → 23/10 | s:thom bank:mridangam ]",
+  "[ 23/10 → 12/5 | s:nam bank:mridangam ]",
+  "[ 12/5 → 5/2 | s:dhi bank:mridangam ]",
+  "[ 5/2 → 13/5 | s:thom bank:mridangam ]",
+  "[ 13/5 → 27/10 | s:nam bank:mridangam ]",
+  "[ 27/10 → 14/5 | s:thom bank:mridangam ]",
+  "[ 14/5 → 29/10 | s:nam bank:mridangam ]",
+  "[ 29/10 → 3/1 | s:nam bank:mridangam ]",
+  "[ 3/1 → 31/10 | s:tha bank:mridangam ]",
+  "[ 31/10 → 16/5 | s:dhi bank:mridangam ]",
+  "[ 16/5 → 33/10 | s:thom bank:mridangam ]",
+  "[ 33/10 → 17/5 | s:nam bank:mridangam ]",
+  "[ 17/5 → 7/2 | s:dhi bank:mridangam ]",
+  "[ 7/2 → 18/5 | s:thom bank:mridangam ]",
+  "[ 18/5 → 37/10 | s:nam bank:mridangam ]",
+  "[ 37/10 → 19/5 | s:thom bank:mridangam ]",
+  "[ 19/5 → 39/10 | s:nam bank:mridangam ]",
+  "[ 39/10 → 4/1 | s:nam bank:mridangam ]",
 ]
 `;
 
 exports[`runs examples > example "shrink" example index 1 1`] = `
 [
-  "[ 0/1 → 1/10 | s:bd ]",
-  "[ 1/10 → 1/5 | s:cp ]",
-  "[ 1/5 → 3/10 | s:ht ]",
-  "[ 3/10 → 2/5 | s:mt ]",
-  "[ 2/5 → 1/2 | s:bd ]",
-  "[ 1/2 → 3/5 | s:cp ]",
-  "[ 3/5 → 7/10 | s:ht ]",
-  "[ 7/10 → 4/5 | s:bd ]",
-  "[ 4/5 → 9/10 | s:cp ]",
-  "[ 9/10 → 1/1 | s:bd ]",
-  "[ 1/1 → 11/10 | s:bd ]",
-  "[ 11/10 → 6/5 | s:cp ]",
-  "[ 6/5 → 13/10 | s:ht ]",
-  "[ 13/10 → 7/5 | s:mt ]",
-  "[ 7/5 → 3/2 | s:bd ]",
-  "[ 3/2 → 8/5 | s:cp ]",
-  "[ 8/5 → 17/10 | s:ht ]",
-  "[ 17/10 → 9/5 | s:bd ]",
-  "[ 9/5 → 19/10 | s:cp ]",
-  "[ 19/10 → 2/1 | s:bd ]",
-  "[ 2/1 → 21/10 | s:bd ]",
-  "[ 21/10 → 11/5 | s:cp ]",
-  "[ 11/5 → 23/10 | s:ht ]",
-  "[ 23/10 → 12/5 | s:mt ]",
-  "[ 12/5 → 5/2 | s:bd ]",
-  "[ 5/2 → 13/5 | s:cp ]",
-  "[ 13/5 → 27/10 | s:ht ]",
-  "[ 27/10 → 14/5 | s:bd ]",
-  "[ 14/5 → 29/10 | s:cp ]",
-  "[ 29/10 → 3/1 | s:bd ]",
-  "[ 3/1 → 31/10 | s:bd ]",
-  "[ 31/10 → 16/5 | s:cp ]",
-  "[ 16/5 → 33/10 | s:ht ]",
-  "[ 33/10 → 17/5 | s:mt ]",
-  "[ 17/5 → 7/2 | s:bd ]",
-  "[ 7/2 → 18/5 | s:cp ]",
-  "[ 18/5 → 37/10 | s:ht ]",
-  "[ 37/10 → 19/5 | s:bd ]",
-  "[ 19/5 → 39/10 | s:cp ]",
-  "[ 39/10 → 4/1 | s:bd ]",
+  "[ 0/1 → 1/10 | s:tha bank:mridangam ]",
+  "[ 1/10 → 1/5 | s:dhi bank:mridangam ]",
+  "[ 1/5 → 3/10 | s:thom bank:mridangam ]",
+  "[ 3/10 → 2/5 | s:nam bank:mridangam ]",
+  "[ 2/5 → 1/2 | s:tha bank:mridangam ]",
+  "[ 1/2 → 3/5 | s:dhi bank:mridangam ]",
+  "[ 3/5 → 7/10 | s:thom bank:mridangam ]",
+  "[ 7/10 → 4/5 | s:tha bank:mridangam ]",
+  "[ 4/5 → 9/10 | s:dhi bank:mridangam ]",
+  "[ 9/10 → 1/1 | s:tha bank:mridangam ]",
+  "[ 1/1 → 11/10 | s:tha bank:mridangam ]",
+  "[ 11/10 → 6/5 | s:dhi bank:mridangam ]",
+  "[ 6/5 → 13/10 | s:thom bank:mridangam ]",
+  "[ 13/10 → 7/5 | s:nam bank:mridangam ]",
+  "[ 7/5 → 3/2 | s:tha bank:mridangam ]",
+  "[ 3/2 → 8/5 | s:dhi bank:mridangam ]",
+  "[ 8/5 → 17/10 | s:thom bank:mridangam ]",
+  "[ 17/10 → 9/5 | s:tha bank:mridangam ]",
+  "[ 9/5 → 19/10 | s:dhi bank:mridangam ]",
+  "[ 19/10 → 2/1 | s:tha bank:mridangam ]",
+  "[ 2/1 → 21/10 | s:tha bank:mridangam ]",
+  "[ 21/10 → 11/5 | s:dhi bank:mridangam ]",
+  "[ 11/5 → 23/10 | s:thom bank:mridangam ]",
+  "[ 23/10 → 12/5 | s:nam bank:mridangam ]",
+  "[ 12/5 → 5/2 | s:tha bank:mridangam ]",
+  "[ 5/2 → 13/5 | s:dhi bank:mridangam ]",
+  "[ 13/5 → 27/10 | s:thom bank:mridangam ]",
+  "[ 27/10 → 14/5 | s:tha bank:mridangam ]",
+  "[ 14/5 → 29/10 | s:dhi bank:mridangam ]",
+  "[ 29/10 → 3/1 | s:tha bank:mridangam ]",
+  "[ 3/1 → 31/10 | s:tha bank:mridangam ]",
+  "[ 31/10 → 16/5 | s:dhi bank:mridangam ]",
+  "[ 16/5 → 33/10 | s:thom bank:mridangam ]",
+  "[ 33/10 → 17/5 | s:nam bank:mridangam ]",
+  "[ 17/5 → 7/2 | s:tha bank:mridangam ]",
+  "[ 7/2 → 18/5 | s:dhi bank:mridangam ]",
+  "[ 18/5 → 37/10 | s:thom bank:mridangam ]",
+  "[ 37/10 → 19/5 | s:tha bank:mridangam ]",
+  "[ 19/5 → 39/10 | s:dhi bank:mridangam ]",
+  "[ 39/10 → 4/1 | s:tha bank:mridangam ]",
 ]
 `;
 
 exports[`runs examples > example "shrink" example index 2 1`] = `
 [
-  "[ 0/1 → 1/20 | s:bd ]",
-  "[ 1/20 → 1/10 | s:bd ]",
-  "[ 1/10 → 3/20 | s:cp ]",
-  "[ 3/20 → 1/5 | s:bd ]",
-  "[ 1/5 → 1/4 | s:cp ]",
-  "[ 1/4 → 3/10 | s:ht ]",
-  "[ 3/10 → 7/20 | s:bd ]",
-  "[ 7/20 → 2/5 | s:cp ]",
-  "[ 2/5 → 9/20 | s:ht ]",
-  "[ 9/20 → 1/2 | s:mt ]",
-  "[ 1/2 → 11/20 | s:mt ]",
-  "[ 11/20 → 3/5 | s:ht ]",
-  "[ 3/5 → 13/20 | s:mt ]",
-  "[ 13/20 → 7/10 | s:cp ]",
-  "[ 7/10 → 3/4 | s:ht ]",
-  "[ 3/4 → 4/5 | s:mt ]",
-  "[ 4/5 → 17/20 | s:bd ]",
-  "[ 17/20 → 9/10 | s:cp ]",
-  "[ 9/10 → 19/20 | s:ht ]",
-  "[ 19/20 → 1/1 | s:mt ]",
-  "[ 1/1 → 21/20 | s:bd ]",
-  "[ 21/20 → 11/10 | s:bd ]",
-  "[ 11/10 → 23/20 | s:cp ]",
-  "[ 23/20 → 6/5 | s:bd ]",
-  "[ 6/5 → 5/4 | s:cp ]",
-  "[ 5/4 → 13/10 | s:ht ]",
-  "[ 13/10 → 27/20 | s:bd ]",
-  "[ 27/20 → 7/5 | s:cp ]",
-  "[ 7/5 → 29/20 | s:ht ]",
-  "[ 29/20 → 3/2 | s:mt ]",
-  "[ 3/2 → 31/20 | s:mt ]",
-  "[ 31/20 → 8/5 | s:ht ]",
-  "[ 8/5 → 33/20 | s:mt ]",
-  "[ 33/20 → 17/10 | s:cp ]",
-  "[ 17/10 → 7/4 | s:ht ]",
-  "[ 7/4 → 9/5 | s:mt ]",
-  "[ 9/5 → 37/20 | s:bd ]",
-  "[ 37/20 → 19/10 | s:cp ]",
-  "[ 19/10 → 39/20 | s:ht ]",
-  "[ 39/20 → 2/1 | s:mt ]",
-  "[ 2/1 → 41/20 | s:bd ]",
-  "[ 41/20 → 21/10 | s:bd ]",
-  "[ 21/10 → 43/20 | s:cp ]",
-  "[ 43/20 → 11/5 | s:bd ]",
-  "[ 11/5 → 9/4 | s:cp ]",
-  "[ 9/4 → 23/10 | s:ht ]",
-  "[ 23/10 → 47/20 | s:bd ]",
-  "[ 47/20 → 12/5 | s:cp ]",
-  "[ 12/5 → 49/20 | s:ht ]",
-  "[ 49/20 → 5/2 | s:mt ]",
-  "[ 5/2 → 51/20 | s:mt ]",
-  "[ 51/20 → 13/5 | s:ht ]",
-  "[ 13/5 → 53/20 | s:mt ]",
-  "[ 53/20 → 27/10 | s:cp ]",
-  "[ 27/10 → 11/4 | s:ht ]",
-  "[ 11/4 → 14/5 | s:mt ]",
-  "[ 14/5 → 57/20 | s:bd ]",
-  "[ 57/20 → 29/10 | s:cp ]",
-  "[ 29/10 → 59/20 | s:ht ]",
-  "[ 59/20 → 3/1 | s:mt ]",
-  "[ 3/1 → 61/20 | s:bd ]",
-  "[ 61/20 → 31/10 | s:bd ]",
-  "[ 31/10 → 63/20 | s:cp ]",
-  "[ 63/20 → 16/5 | s:bd ]",
-  "[ 16/5 → 13/4 | s:cp ]",
-  "[ 13/4 → 33/10 | s:ht ]",
-  "[ 33/10 → 67/20 | s:bd ]",
-  "[ 67/20 → 17/5 | s:cp ]",
-  "[ 17/5 → 69/20 | s:ht ]",
-  "[ 69/20 → 7/2 | s:mt ]",
-  "[ 7/2 → 71/20 | s:mt ]",
-  "[ 71/20 → 18/5 | s:ht ]",
-  "[ 18/5 → 73/20 | s:mt ]",
-  "[ 73/20 → 37/10 | s:cp ]",
-  "[ 37/10 → 15/4 | s:ht ]",
-  "[ 15/4 → 19/5 | s:mt ]",
-  "[ 19/5 → 77/20 | s:bd ]",
-  "[ 77/20 → 39/10 | s:cp ]",
-  "[ 39/10 → 79/20 | s:ht ]",
-  "[ 79/20 → 4/1 | s:mt ]",
+  "[ 0/1 → 1/4 | s:tha bank:mridangam ]",
+  "[ 1/4 → 1/2 | s:dhi bank:mridangam ]",
+  "[ 1/2 → 3/4 | s:thom bank:mridangam ]",
+  "[ 3/4 → 1/1 | s:nam bank:mridangam ]",
+  "[ 1/1 → 5/4 | s:dhi bank:mridangam ]",
+  "[ 5/4 → 3/2 | s:thom bank:mridangam ]",
+  "[ 3/2 → 7/4 | s:nam bank:mridangam ]",
+  "[ 7/4 → 2/1 | s:thom bank:mridangam ]",
+  "[ 2/1 → 9/4 | s:nam bank:mridangam ]",
+  "[ 9/4 → 5/2 | s:nam bank:mridangam ]",
+  "[ 5/2 → 11/4 | s:tha bank:mridangam ]",
+  "[ 11/4 → 3/1 | s:dhi bank:mridangam ]",
+  "[ 3/1 → 13/4 | s:thom bank:mridangam ]",
+  "[ 13/4 → 7/2 | s:nam bank:mridangam ]",
+  "[ 7/2 → 15/4 | s:tha bank:mridangam ]",
+  "[ 15/4 → 4/1 | s:dhi bank:mridangam ]",
+]
+`;
+
+exports[`runs examples > example "shrink" example index 3 1`] = `
+[
+  "[ 0/1 → 1/8 | note:C3 s:folkharp ]",
+  "[ 1/8 → 1/4 | note:D3 s:folkharp ]",
+  "[ 1/4 → 3/8 | note:F3 s:folkharp ]",
+  "[ 3/8 → 1/2 | note:G3 s:folkharp ]",
+  "[ 1/2 → 5/8 | note:A3 s:folkharp ]",
+  "[ 5/8 → 3/4 | note:C4 s:folkharp ]",
+  "[ 3/4 → 7/8 | note:D4 s:folkharp ]",
+  "[ 7/8 → 1/1 | note:F4 s:folkharp ]",
+  "[ 1/1 → 9/8 | note:D3 s:folkharp ]",
+  "[ 9/8 → 5/4 | note:F3 s:folkharp ]",
+  "[ 5/4 → 11/8 | note:G3 s:folkharp ]",
+  "[ 11/8 → 3/2 | note:A3 s:folkharp ]",
+  "[ 3/2 → 13/8 | note:C4 s:folkharp ]",
+  "[ 13/8 → 7/4 | note:D4 s:folkharp ]",
+  "[ 7/4 → 15/8 | note:F4 s:folkharp ]",
+  "[ 15/8 → 2/1 | note:F3 s:folkharp ]",
+  "[ 2/1 → 17/8 | note:G3 s:folkharp ]",
+  "[ 17/8 → 9/4 | note:A3 s:folkharp ]",
+  "[ 9/4 → 19/8 | note:C4 s:folkharp ]",
+  "[ 19/8 → 5/2 | note:D4 s:folkharp ]",
+  "[ 5/2 → 21/8 | note:F4 s:folkharp ]",
+  "[ 21/8 → 11/4 | note:G3 s:folkharp ]",
+  "[ 11/4 → 23/8 | note:A3 s:folkharp ]",
+  "[ 23/8 → 3/1 | note:C4 s:folkharp ]",
+  "[ 3/1 → 25/8 | note:D4 s:folkharp ]",
+  "[ 25/8 → 13/4 | note:F4 s:folkharp ]",
+  "[ 13/4 → 27/8 | note:A3 s:folkharp ]",
+  "[ 27/8 → 7/2 | note:C4 s:folkharp ]",
+  "[ 7/2 → 29/8 | note:D4 s:folkharp ]",
+  "[ 29/8 → 15/4 | note:F4 s:folkharp ]",
+  "[ 15/4 → 31/8 | note:C4 s:folkharp ]",
+  "[ 31/8 → 4/1 | note:D4 s:folkharp ]",
 ]
 `;
 
diff --git a/website/public/mridangam.json b/website/public/mridangam.json
new file mode 100644
index 00000000..63e095b9
--- /dev/null
+++ b/website/public/mridangam.json
@@ -0,0 +1,160 @@
+{
+  "_base": "https://raw.githubusercontent.com/yaxu/mrid/main/",
+  "mridangam_gumki": [
+    "norm_sounds/gumki/gumki2-3.wav",
+    "norm_sounds/gumki/gumki2-7.wav",
+    "norm_sounds/gumki/gumki2-6.wav",
+    "norm_sounds/gumki/gumki2-5.wav",
+    "norm_sounds/gumki/gumki-4.wav",
+    "norm_sounds/gumki/gumki-2.wav",
+    "norm_sounds/gumki/gumki2-4.wav",
+    "norm_sounds/gumki/gumki-5.wav",
+    "norm_sounds/gumki/gumki2-8.wav",
+    "norm_sounds/gumki/gumki-6.wav",
+    "norm_sounds/gumki/gumki-1.wav",
+    "norm_sounds/gumki/gumki2-2.wav",
+    "norm_sounds/gumki/gumki-3.wav",
+    "norm_sounds/gumki/gumki2-1.wav"
+  ],
+  "mridangam_ka": [
+    "norm_sounds/ka/ka2-4.wav",
+    "norm_sounds/ka/ka2-2.wav",
+    "norm_sounds/ka/ka2-1.wav",
+    "norm_sounds/ka/ka-2.wav",
+    "norm_sounds/ka/ka-5.wav",
+    "norm_sounds/ka/ka-7.wav",
+    "norm_sounds/ka/ka-6.wav",
+    "norm_sounds/ka/ka2-5.wav",
+    "norm_sounds/ka/ka-1.wav",
+    "norm_sounds/ka/ka-4.wav",
+    "norm_sounds/ka/ka2-3.wav",
+    "norm_sounds/ka/ka-3.wav"
+  ],
+  "mridangam_nam": [
+    "norm_sounds/nam/nam2-1.wav",
+    "norm_sounds/nam/nam2-3.wav",
+    "norm_sounds/nam/nam-3.wav",
+    "norm_sounds/nam/nam-2.wav",
+    "norm_sounds/nam/nam2-5.wav",
+    "norm_sounds/nam/nam2-2.wav",
+    "norm_sounds/nam/nam2-4.wav",
+    "norm_sounds/nam/nam-1.wav"
+  ],
+  "mridangam_ta": [
+    "norm_sounds/ta/ta-3.wav",
+    "norm_sounds/ta/ta2-2.wav",
+    "norm_sounds/ta/ta-2.wav",
+    "norm_sounds/ta/ta2-3.wav",
+    "norm_sounds/ta/ta2-6.wav",
+    "norm_sounds/ta/ta2-4.wav",
+    "norm_sounds/ta/ta2-1.wav",
+    "norm_sounds/ta/ta2-5.wav",
+    "norm_sounds/ta/ta-1.wav"
+  ],
+  "mridangam_ki": [
+    "norm_sounds/ki/ki2-3.wav",
+    "norm_sounds/ki/ki2-1.wav",
+    "norm_sounds/ki/ki-2.wav",
+    "norm_sounds/ki/ki-1.wav",
+    "norm_sounds/ki/ki2-4.wav",
+    "norm_sounds/ki/ki2-2.wav",
+    "norm_sounds/ki/ki-3.wav"
+  ],
+  "mridangam_dhin": [
+    "norm_sounds/dhin/dhin2-3.wav",
+    "norm_sounds/dhin/dhin-2.wav",
+    "norm_sounds/dhin/dhin2-5.wav",
+    "norm_sounds/dhin/dhin-3.wav",
+    "norm_sounds/dhin/dhin2-4.wav",
+    "norm_sounds/dhin/dhin2-2.wav",
+    "norm_sounds/dhin/dhin-1.wav",
+    "norm_sounds/dhin/dhin2-1.wav"
+  ],
+  "mridangam_na": [
+    "norm_sounds/na/na-6.wav",
+    "norm_sounds/na/na2-5.wav",
+    "norm_sounds/na/na-3.wav",
+    "norm_sounds/na/na2-2.wav",
+    "norm_sounds/na/na-7.wav",
+    "norm_sounds/na/na2-1.wav",
+    "norm_sounds/na/na2-3.wav",
+    "norm_sounds/na/na-2.wav",
+    "norm_sounds/na/na-4.wav",
+    "norm_sounds/na/na-5.wav",
+    "norm_sounds/na/na-1.wav",
+    "norm_sounds/na/na2-4.wav"
+  ],
+  "mridangam_chaapu": [
+    "norm_sounds/c/chaapu-3.wav",
+    "norm_sounds/c/chaapu2-9.wav",
+    "norm_sounds/c/chaapu2-4.wav",
+    "norm_sounds/c/chaapu2-3.wav",
+    "norm_sounds/c/chaapu2-6.wav",
+    "norm_sounds/c/chaapu-1.wav",
+    "norm_sounds/c/chaapu2-8.wav",
+    "norm_sounds/c/chaapu2-1.wav",
+    "norm_sounds/c/chaapu2-2.wav",
+    "norm_sounds/c/chaapu2-5.wav",
+    "norm_sounds/c/chaapu-4.wav",
+    "norm_sounds/c/chaapu2-7.wav",
+    "norm_sounds/c/chaapu-2.wav"
+  ],
+  "mridangam_dhum": [
+    "norm_sounds/dhum/dhum-1.wav",
+    "norm_sounds/dhum/dhum2-3.wav",
+    "norm_sounds/dhum/dhum2-1.wav",
+    "norm_sounds/dhum/dhum-2.wav",
+    "norm_sounds/dhum/dhum2-2.wav",
+    "norm_sounds/dhum/dhum-3.wav",
+    "norm_sounds/dhum/dhum2-4.wav"
+  ],
+  "mridangam_ardha": [
+    "norm_sounds/ac/ardha-chaapu2-3.wav",
+    "norm_sounds/ac/ardha-chaapu2-14.wav",
+    "norm_sounds/ac/ardha-chaapu2-2.wav",
+    "norm_sounds/ac/ardha-chaapu2-10.wav",
+    "norm_sounds/ac/ardha-chaapu-5.wav",
+    "norm_sounds/ac/ardha-chaapu2-6.wav",
+    "norm_sounds/ac/ardha-chaapu-3.wav",
+    "norm_sounds/ac/ardha-chaapu2-4.wav",
+    "norm_sounds/ac/ardha-chaapu-2.wav",
+    "norm_sounds/ac/ardha-chaapu2-12.wav",
+    "norm_sounds/ac/ardha-chaapu2-5.wav",
+    "norm_sounds/ac/ardha-chaapu-6.wav",
+    "norm_sounds/ac/ardha-chaapu2-9.wav",
+    "norm_sounds/ac/ardha-chaapu2-13.wav",
+    "norm_sounds/ac/ardha-chaapu2-1.wav",
+    "norm_sounds/ac/ardha-chaapu-4.wav",
+    "norm_sounds/ac/ardha-chaapu2-11.wav",
+    "norm_sounds/ac/ardha-chaapu2-7.wav",
+    "norm_sounds/ac/ardha-chaapu2-8.wav",
+    "norm_sounds/ac/ardha-chaapu-1.wav"
+  ],
+  "mridangam_thom": [
+    "norm_sounds/thom/thom2-3.wav",
+    "norm_sounds/thom/thom-2.wav",
+    "norm_sounds/thom/thom-3.wav",
+    "norm_sounds/thom/thom-1.wav",
+    "norm_sounds/thom/thom2-4.wav",
+    "norm_sounds/thom/thom2-2.wav",
+    "norm_sounds/thom/thom2-1.wav"
+  ],
+  "mridangam_dhi": [
+    "norm_sounds/dhi/dhi-3.wav",
+    "norm_sounds/dhi/dhi2-4.wav",
+    "norm_sounds/dhi/dhi2-1.wav",
+    "norm_sounds/dhi/dhi2-3.wav",
+    "norm_sounds/dhi/dhi-1.wav",
+    "norm_sounds/dhi/dhi2-2.wav",
+    "norm_sounds/dhi/dhi-2.wav"
+  ],
+  "mridangam_tha": [
+    "norm_sounds/tha/tha2-3.wav",
+    "norm_sounds/tha/tha2-2.wav",
+    "norm_sounds/tha/tha2-4.wav",
+    "norm_sounds/tha/tha-1.wav",
+    "norm_sounds/tha/tha-3.wav",
+    "norm_sounds/tha/tha2-1.wav",
+    "norm_sounds/tha/tha-2.wav"
+  ]
+}
diff --git a/website/src/pages/learn/stepwise.mdx b/website/src/pages/learn/stepwise.mdx
index f5ba5ec0..56b21161 100644
--- a/website/src/pages/learn/stepwise.mdx
+++ b/website/src/pages/learn/stepwise.mdx
@@ -76,8 +76,6 @@ This results in a dense pattern, because the different expanded versions are squ
 
 
 
-## Deprecated aliases
-
 Earlier versions of many of these functions had `s_` prefixes, and the `pace` function was previously known as `steps`. These still exist as aliases, but may have changed behaviour and will soon be removed. Please update your patterns!
 
 ## Stepwise functions
diff --git a/website/src/repl/prebake.mjs b/website/src/repl/prebake.mjs
index b0833bd5..8ecfef3a 100644
--- a/website/src/repl/prebake.mjs
+++ b/website/src/repl/prebake.mjs
@@ -29,6 +29,7 @@ export async function prebake() {
       tag: 'drum-machines',
     }),
     samples(`${baseNoTrailing}/EmuSP12.json`, undefined, { prebake: true, tag: 'drum-machines' }),
+    samples(`${baseNoTrailing}/mridangam.json`, undefined, { prebake: true, tag: 'drum-machines' }),
     samples(
       {
         casio: ['casio/high.wav', 'casio/low.wav', 'casio/noise.wav'],

From 4636d824fa2d49aeb8c065c6650d973409957580 Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Mon, 3 Feb 2025 08:40:39 +0800
Subject: [PATCH 470/805] remove experimental code

---
 packages/midi/device/gakken_nsx-39.mjs | 269 -------------------------
 packages/midi/gm.mjs                   | 130 ------------
 packages/midi/index.mjs                |   2 +-
 3 files changed, 1 insertion(+), 400 deletions(-)
 delete mode 100644 packages/midi/device/gakken_nsx-39.mjs
 delete mode 100644 packages/midi/gm.mjs

diff --git a/packages/midi/device/gakken_nsx-39.mjs b/packages/midi/device/gakken_nsx-39.mjs
deleted file mode 100644
index b7c1b321..00000000
--- a/packages/midi/device/gakken_nsx-39.mjs
+++ /dev/null
@@ -1,269 +0,0 @@
-export const miku = {
-  あ: '0x79:0x09:0x11:0x0A:0x00:0x00',
-  い: '0x79:0x09:0x11:0x0A:0x00:0x01',
-  う: '0x79:0x09:0x11:0x0A:0x00:0x02',
-  え: '0x79:0x09:0x11:0x0A:0x00:0x03',
-  お: '0x79:0x09:0x11:0x0A:0x00:0x04',
-  か: '0x79:0x09:0x11:0x0A:0x00:0x05',
-  き: '0x79:0x09:0x11:0x0A:0x00:0x06',
-  く: '0x79:0x09:0x11:0x0A:0x00:0x07',
-  け: '0x79:0x09:0x11:0x0A:0x00:0x08',
-  こ: '0x79:0x09:0x11:0x0A:0x00:0x09',
-  が: '0x79:0x09:0x11:0x0A:0x00:0x0a',
-  ぎ: '0x79:0x09:0x11:0x0A:0x00:0x0b',
-  ぐ: '0x79:0x09:0x11:0x0A:0x00:0x0c',
-  げ: '0x79:0x09:0x11:0x0A:0x00:0x0d',
-  ご: '0x79:0x09:0x11:0x0A:0x00:0x0e',
-  きゃ: '0x79:0x09:0x11:0x0A:0x00:0x0f',
-  きゅ: '0x79:0x09:0x11:0x0A:0x00:0x10',
-  きょ: '0x79:0x09:0x11:0x0A:0x00:0x11',
-  ぎゃ: '0x79:0x09:0x11:0x0A:0x00:0x12',
-  ぎゅ: '0x79:0x09:0x11:0x0A:0x00:0x13',
-  ぎょ: '0x79:0x09:0x11:0x0A:0x00:0x14',
-  さ: '0x79:0x09:0x11:0x0A:0x00:0x15',
-  すぃ: '0x79:0x09:0x11:0x0A:0x00:0x16',
-  す: '0x79:0x09:0x11:0x0A:0x00:0x17',
-  せ: '0x79:0x09:0x11:0x0A:0x00:0x18',
-  そ: '0x79:0x09:0x11:0x0A:0x00:0x19',
-  ざ: '0x79:0x09:0x11:0x0A:0x00:0x1a',
-  づぁ: '0x79:0x09:0x11:0x0A:0x00:0x1a',
-  ずぃ: '0x79:0x09:0x11:0x0A:0x00:0x1b',
-  づぃ: '0x79:0x09:0x11:0x0A:0x00:0x1b',
-  ず: '0x79:0x09:0x11:0x0A:0x00:0x1c',
-  づ: '0x79:0x09:0x11:0x0A:0x00:0x1c',
-  ぜ: '0x79:0x09:0x11:0x0A:0x00:0x1d',
-  づぇ: '0x79:0x09:0x11:0x0A:0x00:0x1d',
-  ぞ: '0x79:0x09:0x11:0x0A:0x00:0x1e',
-  づぉ: '0x79:0x09:0x11:0x0A:0x00:0x1e',
-  しゃ: '0x79:0x09:0x11:0x0A:0x00:0x1f',
-  し: '0x79:0x09:0x11:0x0A:0x00:0x20',
-  しゅ: '0x79:0x09:0x11:0x0A:0x00:0x21',
-  しぇ: '0x79:0x09:0x11:0x0A:0x00:0x22',
-  しょ: '0x79:0x09:0x11:0x0A:0x00:0x23',
-  じゃ: '0x79:0x09:0x11:0x0A:0x00:0x24',
-  じ: '0x79:0x09:0x11:0x0A:0x00:0x25',
-  じゅ: '0x79:0x09:0x11:0x0A:0x00:0x26',
-  じぇ: '0x79:0x09:0x11:0x0A:0x00:0x27',
-  じょ: '0x79:0x09:0x11:0x0A:0x00:0x28',
-  た: '0x79:0x09:0x11:0x0A:0x00:0x29',
-  てぃ: '0x79:0x09:0x11:0x0A:0x00:0x2a',
-  とぅ: '0x79:0x09:0x11:0x0A:0x00:0x2b',
-  て: '0x79:0x09:0x11:0x0A:0x00:0x2c',
-  と: '0x79:0x09:0x11:0x0A:0x00:0x2d',
-  だ: '0x79:0x09:0x11:0x0A:0x00:0x2e',
-  でぃ: '0x79:0x09:0x11:0x0A:0x00:0x2f',
-  どぅ: '0x79:0x09:0x11:0x0A:0x00:0x30',
-  で: '0x79:0x09:0x11:0x0A:0x00:0x31',
-  ど: '0x79:0x09:0x11:0x0A:0x00:0x32',
-  てゅ: '0x79:0x09:0x11:0x0A:0x00:0x33',
-  でゅ: '0x79:0x09:0x11:0x0A:0x00:0x34',
-  ちゃ: '0x79:0x09:0x11:0x0A:0x00:0x35',
-  ち: '0x79:0x09:0x11:0x0A:0x00:0x36',
-  ちゅ: '0x79:0x09:0x11:0x0A:0x00:0x37',
-  ちぇ: '0x79:0x09:0x11:0x0A:0x00:0x38',
-  ちょ: '0x79:0x09:0x11:0x0A:0x00:0x39',
-  つぁ: '0x79:0x09:0x11:0x0A:0x00:0x3a',
-  つぃ: '0x79:0x09:0x11:0x0A:0x00:0x3b',
-  つ: '0x79:0x09:0x11:0x0A:0x00:0x3c',
-  つぇ: '0x79:0x09:0x11:0x0A:0x00:0x3d',
-  つぉ: '0x79:0x09:0x11:0x0A:0x00:0x3e',
-  な: '0x79:0x09:0x11:0x0A:0x00:0x3f',
-  に: '0x79:0x09:0x11:0x0A:0x00:0x40',
-  ぬ: '0x79:0x09:0x11:0x0A:0x00:0x41',
-  ね: '0x79:0x09:0x11:0x0A:0x00:0x42',
-  の: '0x79:0x09:0x11:0x0A:0x00:0x43',
-  にゃ: '0x79:0x09:0x11:0x0A:0x00:0x44',
-  にゅ: '0x79:0x09:0x11:0x0A:0x00:0x45',
-  にょ: '0x79:0x09:0x11:0x0A:0x00:0x46',
-  は: '0x79:0x09:0x11:0x0A:0x00:0x47',
-  ひ: '0x79:0x09:0x11:0x0A:0x00:0x48',
-  ふ: '0x79:0x09:0x11:0x0A:0x00:0x49',
-  へ: '0x79:0x09:0x11:0x0A:0x00:0x4a',
-  ほ: '0x79:0x09:0x11:0x0A:0x00:0x4b',
-  ば: '0x79:0x09:0x11:0x0A:0x00:0x4c',
-  び: '0x79:0x09:0x11:0x0A:0x00:0x4d',
-  ぶ: '0x79:0x09:0x11:0x0A:0x00:0x4e',
-  べ: '0x79:0x09:0x11:0x0A:0x00:0x4f',
-  ぼ: '0x79:0x09:0x11:0x0A:0x00:0x50',
-  ぱ: '0x79:0x09:0x11:0x0A:0x00:0x51',
-  ぴ: '0x79:0x09:0x11:0x0A:0x00:0x52',
-  ぷ: '0x79:0x09:0x11:0x0A:0x00:0x53',
-  ぺ: '0x79:0x09:0x11:0x0A:0x00:0x54',
-  ぽ: '0x79:0x09:0x11:0x0A:0x00:0x55',
-  ひゃ: '0x79:0x09:0x11:0x0A:0x00:0x56',
-  ひゅ: '0x79:0x09:0x11:0x0A:0x00:0x57',
-  ひょ: '0x79:0x09:0x11:0x0A:0x00:0x58',
-  びゃ: '0x79:0x09:0x11:0x0A:0x00:0x59',
-  びゅ: '0x79:0x09:0x11:0x0A:0x00:0x5a',
-  びょ: '0x79:0x09:0x11:0x0A:0x00:0x5b',
-  ぴゃ: '0x79:0x09:0x11:0x0A:0x00:0x5c',
-  ぴゅ: '0x79:0x09:0x11:0x0A:0x00:0x5d',
-  ぴょ: '0x79:0x09:0x11:0x0A:0x00:0x5e',
-  ふぁ: '0x79:0x09:0x11:0x0A:0x00:0x5f',
-  ふぃ: '0x79:0x09:0x11:0x0A:0x00:0x60',
-  ふゅ: '0x79:0x09:0x11:0x0A:0x00:0x61',
-  ふぇ: '0x79:0x09:0x11:0x0A:0x00:0x62',
-  ふぉ: '0x79:0x09:0x11:0x0A:0x00:0x63',
-  ま: '0x79:0x09:0x11:0x0A:0x00:0x64',
-  み: '0x79:0x09:0x11:0x0A:0x00:0x65',
-  む: '0x79:0x09:0x11:0x0A:0x00:0x66',
-  め: '0x79:0x09:0x11:0x0A:0x00:0x67',
-  も: '0x79:0x09:0x11:0x0A:0x00:0x68',
-  みゃ: '0x79:0x09:0x11:0x0A:0x00:0x69',
-  みゅ: '0x79:0x09:0x11:0x0A:0x00:0x6a',
-  みょ: '0x79:0x09:0x11:0x0A:0x00:0x6b',
-  や: '0x79:0x09:0x11:0x0A:0x00:0x6c',
-  ゆ: '0x79:0x09:0x11:0x0A:0x00:0x6d',
-  よ: '0x79:0x09:0x11:0x0A:0x00:0x6e',
-  ら: '0x79:0x09:0x11:0x0A:0x00:0x6f',
-  り: '0x79:0x09:0x11:0x0A:0x00:0x70',
-  る: '0x79:0x09:0x11:0x0A:0x00:0x71',
-  れ: '0x79:0x09:0x11:0x0A:0x00:0x72',
-  ろ: '0x79:0x09:0x11:0x0A:0x00:0x73',
-  りゃ: '0x79:0x09:0x11:0x0A:0x00:0x74',
-  りゅ: '0x79:0x09:0x11:0x0A:0x00:0x75',
-  りょ: '0x79:0x09:0x11:0x0A:0x00:0x76',
-  わ: '0x79:0x09:0x11:0x0A:0x00:0x77',
-  うぃ: '0x79:0x09:0x11:0x0A:0x00:0x78',
-  うぇ: '0x79:0x09:0x11:0x0A:0x00:0x79',
-  うぉ: '0x79:0x09:0x11:0x0A:0x00:0x7a',
-  ん: '0x79:0x09:0x11:0x0A:0x00:0x7b',
-  ん1: '0x79:0x09:0x11:0x0A:0x00:0x7c',
-  ん2: '0x79:0x09:0x11:0x0A:0x00:0x7d',
-  ん3: '0x79:0x09:0x11:0x0A:0x00:0x7e',
-  ん4: '0x79:0x09:0x11:0x0A:0x00:0x7f',
-
-  a: '0x79:0x09:0x11:0x0A:0x00:0x00',
-  i: '0x79:0x09:0x11:0x0A:0x00:0x01',
-  u: '0x79:0x09:0x11:0x0A:0x00:0x02',
-  e: '0x79:0x09:0x11:0x0A:0x00:0x03',
-  o: '0x79:0x09:0x11:0x0A:0x00:0x04',
-  ka: '0x79:0x09:0x11:0x0A:0x00:0x05',
-  ki: '0x79:0x09:0x11:0x0A:0x00:0x06',
-  ku: '0x79:0x09:0x11:0x0A:0x00:0x07',
-  ke: '0x79:0x09:0x11:0x0A:0x00:0x08',
-  ko: '0x79:0x09:0x11:0x0A:0x00:0x09',
-  ga: '0x79:0x09:0x11:0x0A:0x00:0x0a',
-  gi: '0x79:0x09:0x11:0x0A:0x00:0x0b',
-  gu: '0x79:0x09:0x11:0x0A:0x00:0x0c',
-  ge: '0x79:0x09:0x11:0x0A:0x00:0x0d',
-  go: '0x79:0x09:0x11:0x0A:0x00:0x0e',
-  kya: '0x79:0x09:0x11:0x0A:0x00:0x0f',
-  kyu: '0x79:0x09:0x11:0x0A:0x00:0x10',
-  kyo: '0x79:0x09:0x11:0x0A:0x00:0x11',
-  gya: '0x79:0x09:0x11:0x0A:0x00:0x12',
-  gyu: '0x79:0x09:0x11:0x0A:0x00:0x13',
-  gyo: '0x79:0x09:0x11:0x0A:0x00:0x14',
-  sa: '0x79:0x09:0x11:0x0A:0x00:0x15',
-  swi: '0x79:0x09:0x11:0x0A:0x00:0x16',
-  su: '0x79:0x09:0x11:0x0A:0x00:0x17',
-  se: '0x79:0x09:0x11:0x0A:0x00:0x18',
-  so: '0x79:0x09:0x11:0x0A:0x00:0x19',
-  za: '0x79:0x09:0x11:0x0A:0x00:0x1a',
-  zwi: '0x79:0x09:0x11:0x0A:0x00:0x1b',
-  zu: '0x79:0x09:0x11:0x0A:0x00:0x1c',
-  ze: '0x79:0x09:0x11:0x0A:0x00:0x1d',
-  zo: '0x79:0x09:0x11:0x0A:0x00:0x1e',
-  sha: '0x79:0x09:0x11:0x0A:0x00:0x1f',
-  shi: '0x79:0x09:0x11:0x0A:0x00:0x20',
-  shu: '0x79:0x09:0x11:0x0A:0x00:0x21',
-  she: '0x79:0x09:0x11:0x0A:0x00:0x22',
-  sho: '0x79:0x09:0x11:0x0A:0x00:0x23',
-  ja: '0x79:0x09:0x11:0x0A:0x00:0x24',
-  dza: '0x79:0x09:0x11:0x0A:0x00:0x24',
-  ji: '0x79:0x09:0x11:0x0A:0x00:0x25',
-  dzi: '0x79:0x09:0x11:0x0A:0x00:0x25',
-  ju: '0x79:0x09:0x11:0x0A:0x00:0x26',
-  dzu: '0x79:0x09:0x11:0x0A:0x00:0x26',
-  je: '0x79:0x09:0x11:0x0A:0x00:0x27',
-  dze: '0x79:0x09:0x11:0x0A:0x00:0x27',
-  jo: '0x79:0x09:0x11:0x0A:0x00:0x28',
-  dzo: '0x79:0x09:0x11:0x0A:0x00:0x28',
-  ta: '0x79:0x09:0x11:0x0A:0x00:0x29',
-  ti: '0x79:0x09:0x11:0x0A:0x00:0x2a',
-  tu: '0x79:0x09:0x11:0x0A:0x00:0x2b',
-  te: '0x79:0x09:0x11:0x0A:0x00:0x2c',
-  to: '0x79:0x09:0x11:0x0A:0x00:0x2d',
-  da: '0x79:0x09:0x11:0x0A:0x00:0x2e',
-  di: '0x79:0x09:0x11:0x0A:0x00:0x2f',
-  du: '0x79:0x09:0x11:0x0A:0x00:0x30',
-  de: '0x79:0x09:0x11:0x0A:0x00:0x31',
-  do: '0x79:0x09:0x11:0x0A:0x00:0x32',
-  tyu: '0x79:0x09:0x11:0x0A:0x00:0x33',
-  dyu: '0x79:0x09:0x11:0x0A:0x00:0x34',
-  cha: '0x79:0x09:0x11:0x0A:0x00:0x35',
-  chi: '0x79:0x09:0x11:0x0A:0x00:0x36',
-  chu: '0x79:0x09:0x11:0x0A:0x00:0x37',
-  che: '0x79:0x09:0x11:0x0A:0x00:0x38',
-  cho: '0x79:0x09:0x11:0x0A:0x00:0x39',
-  tsa: '0x79:0x09:0x11:0x0A:0x00:0x3a',
-  tsi: '0x79:0x09:0x11:0x0A:0x00:0x3b',
-  tsu: '0x79:0x09:0x11:0x0A:0x00:0x3c',
-  tse: '0x79:0x09:0x11:0x0A:0x00:0x3d',
-  tso: '0x79:0x09:0x11:0x0A:0x00:0x3e',
-  na: '0x79:0x09:0x11:0x0A:0x00:0x3f',
-  ni: '0x79:0x09:0x11:0x0A:0x00:0x40',
-  nu: '0x79:0x09:0x11:0x0A:0x00:0x41',
-  ne: '0x79:0x09:0x11:0x0A:0x00:0x42',
-  no: '0x79:0x09:0x11:0x0A:0x00:0x43',
-  nya: '0x79:0x09:0x11:0x0A:0x00:0x44',
-  nyu: '0x79:0x09:0x11:0x0A:0x00:0x45',
-  nyo: '0x79:0x09:0x11:0x0A:0x00:0x46',
-  ha: '0x79:0x09:0x11:0x0A:0x00:0x47',
-  hi: '0x79:0x09:0x11:0x0A:0x00:0x48',
-  fu: '0x79:0x09:0x11:0x0A:0x00:0x49',
-  he: '0x79:0x09:0x11:0x0A:0x00:0x4a',
-  ho: '0x79:0x09:0x11:0x0A:0x00:0x4b',
-  ba: '0x79:0x09:0x11:0x0A:0x00:0x4c',
-  bi: '0x79:0x09:0x11:0x0A:0x00:0x4d',
-  bu: '0x79:0x09:0x11:0x0A:0x00:0x4e',
-  be: '0x79:0x09:0x11:0x0A:0x00:0x4f',
-  bo: '0x79:0x09:0x11:0x0A:0x00:0x50',
-  pa: '0x79:0x09:0x11:0x0A:0x00:0x51',
-  pi: '0x79:0x09:0x11:0x0A:0x00:0x52',
-  pu: '0x79:0x09:0x11:0x0A:0x00:0x53',
-  pe: '0x79:0x09:0x11:0x0A:0x00:0x54',
-  po: '0x79:0x09:0x11:0x0A:0x00:0x55',
-  hya: '0x79:0x09:0x11:0x0A:0x00:0x56',
-  hyu: '0x79:0x09:0x11:0x0A:0x00:0x57',
-  hyo: '0x79:0x09:0x11:0x0A:0x00:0x58',
-  bya: '0x79:0x09:0x11:0x0A:0x00:0x59',
-  byu: '0x79:0x09:0x11:0x0A:0x00:0x5a',
-  byo: '0x79:0x09:0x11:0x0A:0x00:0x5b',
-  pya: '0x79:0x09:0x11:0x0A:0x00:0x5c',
-  pyu: '0x79:0x09:0x11:0x0A:0x00:0x5d',
-  pyo: '0x79:0x09:0x11:0x0A:0x00:0x5e',
-  fa: '0x79:0x09:0x11:0x0A:0x00:0x5f',
-  fi: '0x79:0x09:0x11:0x0A:0x00:0x60',
-  fyu: '0x79:0x09:0x11:0x0A:0x00:0x61',
-  fe: '0x79:0x09:0x11:0x0A:0x00:0x62',
-  fo: '0x79:0x09:0x11:0x0A:0x00:0x63',
-  ma: '0x79:0x09:0x11:0x0A:0x00:0x64',
-  mi: '0x79:0x09:0x11:0x0A:0x00:0x65',
-  mu: '0x79:0x09:0x11:0x0A:0x00:0x66',
-  me: '0x79:0x09:0x11:0x0A:0x00:0x67',
-  mo: '0x79:0x09:0x11:0x0A:0x00:0x68',
-  mya: '0x79:0x09:0x11:0x0A:0x00:0x69',
-  myu: '0x79:0x09:0x11:0x0A:0x00:0x6a',
-  myo: '0x79:0x09:0x11:0x0A:0x00:0x6b',
-  ya: '0x79:0x09:0x11:0x0A:0x00:0x6c',
-  yu: '0x79:0x09:0x11:0x0A:0x00:0x6d',
-  yo: '0x79:0x09:0x11:0x0A:0x00:0x6e',
-  ra: '0x79:0x09:0x11:0x0A:0x00:0x6f',
-  ri: '0x79:0x09:0x11:0x0A:0x00:0x70',
-  ru: '0x79:0x09:0x11:0x0A:0x00:0x71',
-  re: '0x79:0x09:0x11:0x0A:0x00:0x72',
-  ro: '0x79:0x09:0x11:0x0A:0x00:0x73',
-  rya: '0x79:0x09:0x11:0x0A:0x00:0x74',
-  ryu: '0x79:0x09:0x11:0x0A:0x00:0x75',
-  ryo: '0x79:0x09:0x11:0x0A:0x00:0x76',
-  wa: '0x79:0x09:0x11:0x0A:0x00:0x77',
-  wi: '0x79:0x09:0x11:0x0A:0x00:0x78',
-  we: '0x79:0x09:0x11:0x0A:0x00:0x79',
-  wo: '0x79:0x09:0x11:0x0A:0x00:0x7a',
-  n: '0x79:0x09:0x11:0x0A:0x00:0x7b',
-  n1: '0x79:0x09:0x11:0x0A:0x00:0x7c',
-  n2: '0x79:0x09:0x11:0x0A:0x00:0x7d',
-  n3: '0x79:0x09:0x11:0x0A:0x00:0x7e',
-  n4: '0x79:0x09:0x11:0x0A:0x00:0x7f',
-};
diff --git a/packages/midi/gm.mjs b/packages/midi/gm.mjs
deleted file mode 100644
index 6ba23737..00000000
--- a/packages/midi/gm.mjs
+++ /dev/null
@@ -1,130 +0,0 @@
-export const gm = {
-  piano: 0,
-  bright_acoustic_piano: 1,
-  electric_grand_piano: 2,
-  honky_tonk_piano: 3,
-  epiano1: 4,
-  epiano2: 5,
-  harpsichord: 6,
-  clavinet: 7,
-  celesta: 8,
-  glockenspiel: 9,
-  music_box: 10,
-  vibraphone: 11,
-  marimba: 12,
-  xylophone: 13,
-  tubular_bells: 14,
-  dulcimer: 15,
-  drawbar_organ: 16,
-  percussive_organ: 17,
-  rock_organ: 18,
-  church_organ: 19,
-  reed_organ: 20,
-  accordion: 21,
-  harmonica: 22,
-  bandoneon: 23,
-  acoustic_guitar_nylon: 24,
-  acoustic_guitar_steel: 25,
-  electric_guitar_jazz: 26,
-  electric_guitar_clean: 27,
-  electric_guitar_muted: 28,
-  overdriven_guitar: 29,
-  distortion_guitar: 30,
-  guitar_harmonics: 31,
-  acoustic_bass: 32,
-  electric_bass_finger: 33,
-  electric_bass_pick: 34,
-  fretless_bass: 35,
-  slap_bass_1: 36,
-  slap_bass_2: 37,
-  synth_bass_1: 38,
-  synth_bass_2: 39,
-  violin: 40,
-  viola: 41,
-  cello: 42,
-  contrabass: 43,
-  tremolo_strings: 44,
-  pizzicato_strings: 45,
-  orchestral_harp: 46,
-  timpani: 47,
-  string_ensemble_1: 48,
-  string_ensemble_2: 49,
-  synth_strings_1: 50,
-  synth_strings_2: 51,
-  choir_aahs: 52,
-  voice_oohs: 53,
-  synth_choir: 54,
-  orchestra_hit: 55,
-  trumpet: 56,
-  trombone: 57,
-  tuba: 58,
-  muted_trumpet: 59,
-  french_horn: 60,
-  brass_section: 61,
-  synth_brass_1: 62,
-  synth_brass_2: 63,
-  soprano_sax: 64,
-  alto_sax: 65,
-  tenor_sax: 66,
-  baritone_sax: 67,
-  oboe: 68,
-  english_horn: 69,
-  bassoon: 70,
-  clarinet: 71,
-  piccolo: 72,
-  flute: 73,
-  recorder: 74,
-  pan_flute: 75,
-  blown_bottle: 76,
-  shakuhachi: 77,
-  whistle: 78,
-  ocarina: 79,
-  lead_1_square: 80,
-  lead_2_sawtooth: 81,
-  lead_3_calliope: 82,
-  lead_4_chiff: 83,
-  lead_5_charang: 84,
-  lead_6_voice: 85,
-  lead_7_fifths: 86,
-  lead_8_bass_lead: 87,
-  pad_1_new_age: 88,
-  pad_2_warm: 89,
-  pad_3_polysynth: 90,
-  pad_4_choir: 91,
-  pad_5_bowed: 92,
-  pad_6_metallic: 93,
-  pad_7_halo: 94,
-  pad_8_sweep: 95,
-  fx_1_rain: 96,
-  fx_2_soundtrack: 97,
-  fx_3_crystal: 98,
-  fx_4_atmosphere: 99,
-  fx_5_brightness: 100,
-  fx_6_goblins: 101,
-  fx_7_echoes: 102,
-  fx_8_sci_fi: 103,
-  sitar: 104,
-  banjo: 105,
-  shamisen: 106,
-  koto: 107,
-  kalimba: 108,
-  bagpipe: 109,
-  fiddle: 110,
-  shanai: 111,
-  tinkle_bell: 112,
-  agogo: 113,
-  steel_drums: 114,
-  woodblock: 115,
-  taiko_drum: 116,
-  melodic_tom: 117,
-  synth_drum: 118,
-  reverse_cymbal: 119,
-  guitar_fret_noise: 120,
-  breath_noise: 121,
-  seashore: 122,
-  bird_tweet: 123,
-  telephone: 124,
-  helicopter: 125,
-  applause: 126,
-  gunshot: 127,
-};
diff --git a/packages/midi/index.mjs b/packages/midi/index.mjs
index 2a226a53..63efd4cf 100644
--- a/packages/midi/index.mjs
+++ b/packages/midi/index.mjs
@@ -1,4 +1,4 @@
 import './midi.mjs';
 
 export * from './midi.mjs';
-export * from './gm.mjs';
+

From ed7dc4ef6ec3e197c29599d325fac665332fd23a Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Tue, 4 Feb 2025 02:49:47 +0800
Subject: [PATCH 471/805] codeformat

---
 packages/midi/index.mjs | 1 -
 1 file changed, 1 deletion(-)

diff --git a/packages/midi/index.mjs b/packages/midi/index.mjs
index 63efd4cf..399227f7 100644
--- a/packages/midi/index.mjs
+++ b/packages/midi/index.mjs
@@ -1,4 +1,3 @@
 import './midi.mjs';
 
 export * from './midi.mjs';
-

From c810a02a79627e5caf6e83ebefcb183872b689d1 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Mon, 3 Feb 2025 21:55:57 +0100
Subject: [PATCH 472/805] - add defaultmidimap function - add midisounds
 function - add midiport control

---
 packages/core/controls.mjs |  1 +
 packages/midi/midi.mjs     | 66 +++++++++++++++++++++++++++++++-------
 2 files changed, 56 insertions(+), 11 deletions(-)

diff --git a/packages/core/controls.mjs b/packages/core/controls.mjs
index daf13328..1f2d3e70 100644
--- a/packages/core/controls.mjs
+++ b/packages/core/controls.mjs
@@ -1515,6 +1515,7 @@ export const { hbrick } = registerControl('hbrick');
 export const { lbrick } = registerControl('lbrick');
 export const { midichan } = registerControl('midichan');
 export const { midimap } = registerControl('midimap');
+export const { midiport } = registerControl('midiport');
 export const { control } = registerControl('control');
 export const { ccn } = registerControl('ccn');
 export const { ccv } = registerControl('ccv');
diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index ddea2ff1..b7650c3b 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -90,7 +90,7 @@ if (typeof window !== 'undefined') {
 }
 
 // registry for midi mappings, converting control names to cc messages
-export const midiMappings = new Map();
+export const midicontrolMap = new Map();
 
 // takes midimap and converts each control key to the main control name
 function unifyMapping(mapping) {
@@ -103,10 +103,6 @@ function unifyMapping(mapping) {
     }),
   );
 }
-// adds a midimap to the registry
-export function addMidimap(name, mapping) {
-  midiMappings.set(name, unifyMapping(mapping));
-}
 
 function githubPath(base, subpath = '') {
   if (!base.startsWith('github:')) {
@@ -121,6 +117,11 @@ function githubPath(base, subpath = '') {
   return `https://raw.githubusercontent.com/${path}/${subpath}`;
 }
 
+// configures the default midimap, which is used when no "midimap" port is set
+export function defaultmidimap(mapping) {
+  midicontrolMap.set('default', unifyMapping(mapping));
+}
+
 let loadCache = {};
 // adds multiple midimaps to the registry
 export async function midimaps(map) {
@@ -134,10 +135,34 @@ export async function midimaps(map) {
     map = await loadCache[map];
   }
   if (typeof map === 'object') {
-    Object.entries(map).forEach(([name, mapping]) => addMidimap(name, mapping));
+    Object.entries(map).forEach(([name, mapping]) => midicontrolMap.set(name, unifyMapping(mapping)));
   }
 }
 
+// registry for midi sounds, converting sound names to controls
+export const midisoundMap = new Map();
+// adds multiple midimaps to the registry
+export async function midisounds(map) {
+  if (typeof map === 'object') {
+    Object.entries(map).forEach(([name, mapping]) => midisoundMap.set(name, mapping));
+  }
+}
+
+function applyMidisounds(hapValue) {
+  const { s } = hapValue;
+  if (!midisoundMap.has(s)) {
+    return;
+  }
+  let controls = midisoundMap.get(hapValue.s);
+  if (Array.isArray(controls)) {
+    controls = controls[hapValue.n || 0];
+  }
+  if (typeof controls === 'string') {
+    controls = { note: controls };
+  }
+  Object.assign(hapValue, controls);
+}
+
 // normalizes the given value from the given range and exponent
 function normalize(value = 0, min = 0, max = 1, exp = 1) {
   if (min === max) {
@@ -197,20 +222,39 @@ Pattern.prototype.midi = function (output) {
       console.log('not enabled');
       return;
     }
-    const device = getDevice(output, WebMidi.outputs);
     hap.ensureObjectValue();
     //magic number to get audio engine to line up, can probably be calculated somehow
     const latencyMs = 34;
     // passing a string with a +num into the webmidi api adds an offset to the current time https://webmidijs.org/api/classes/Output
     const timeOffsetString = `+${getEventOffsetMs(targetTime, currentTime) + latencyMs}`;
+    // convert s to midisounds preset (if set)
+    applyMidisounds(hap.value);
+
     // destructure value
-    let { note, nrpnn, nrpv, ccn, ccv, midichan = 1, midicmd, gain = 1, velocity = 0.9, midimap } = hap.value;
+    let {
+      note,
+      ccn,
+      ccv,
+      midichan = 1,
+      midicmd,
+      gain = 1,
+      velocity = 0.9,
+      midimap = 'default',
+      midiport = output,
+    } = hap.value;
+
+    const device = getDevice(midiport, WebMidi.outputs);
+    if (!device) {
+      logger(
+        `[midi] midiport "${midiport}" not found! available: ${WebMidi.outputs.map((output) => `'${output.name}'`).join(', ')}`,
+      );
+      return;
+    }
 
     velocity = gain * velocity;
-
     // if midimap is set, send a cc messages from defined controls
-    if (!!midimap && midiMappings.has(midimap)) {
-      const ccs = mapCC(midiMappings.get(midimap), hap.value);
+    if (midicontrolMap.has(midimap)) {
+      const ccs = mapCC(midicontrolMap.get(midimap), hap.value);
       ccs.forEach(({ ccn, ccv }) => sendCC(ccn, ccv, device, midichan, timeOffsetString));
     }
 

From e99f229b573a1e963fd2716ebaae6d9c21e58e5e Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Mon, 3 Feb 2025 22:37:59 +0100
Subject: [PATCH 473/805] doc: defaultmidimap + midimaps

---
 packages/midi/midi.mjs                   | 27 ++++++++++++++++++++++--
 website/src/pages/learn/input-output.mdx | 10 +++++++++
 2 files changed, 35 insertions(+), 2 deletions(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index b7650c3b..fe0829c9 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -117,13 +117,36 @@ function githubPath(base, subpath = '') {
   return `https://raw.githubusercontent.com/${path}/${subpath}`;
 }
 
-// configures the default midimap, which is used when no "midimap" port is set
+/**
+ * configures the default midimap, which is used when no "midimap" port is set
+ * @example
+ * defaultmidimap({ lpf: 74 })
+ * $: note("c a f e").midi();
+ * $: lpf(sine.slow(4).segment(16)).midi();
+ */
 export function defaultmidimap(mapping) {
   midicontrolMap.set('default', unifyMapping(mapping));
 }
 
 let loadCache = {};
-// adds multiple midimaps to the registry
+
+/**
+ * Adds midimaps to the registry. Inside each midimap, control names (e.g. lpf) are mapped to cc numbers.
+ * @example
+ * midimaps({ mymap: { lpf: 74 } })
+ * $: note("c a f e")
+ * .lpf(sine.slow(4))
+ * .midimap('mymap')
+ * .midi()
+ * @example
+ * midimaps({ mymap: {
+ *   lpf: { ccn: 74, min: 0, max: 20000, exp: 0.5 }
+ * }})
+ * $: note("c a f e")
+ * .lpf(sine.slow(2).range(400,2000))
+ * .midimap('mymap')
+ * .midi()
+ */
 export async function midimaps(map) {
   if (typeof map === 'string') {
     if (map.startsWith('github:')) {
diff --git a/website/src/pages/learn/input-output.mdx b/website/src/pages/learn/input-output.mdx
index 14e46ba7..cec06a34 100644
--- a/website/src/pages/learn/input-output.mdx
+++ b/website/src/pages/learn/input-output.mdx
@@ -46,6 +46,16 @@ But you can also control cc messages separately like this:
 $: ccv(sine.segment(16).slow(4)).ccn(74).midi()`}
 />
 
+Instead of setting `ccn` and `ccv` directly, you can also create mappings with `midimaps`:
+
+## midimaps
+
+
+
+## defaultmidimap
+
+
+
 # OSC/SuperDirt/StrudelDirt
 
 In TidalCycles, sound is usually generated using [SuperDirt](https://github.com/musikinformatik/SuperDirt/), which runs inside SuperCollider. Strudel also supports using SuperDirt, although it requires installing some additional software.

From dc8becc610560ca8fa40ca0d8751e67521319244 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Mon, 3 Feb 2025 22:44:56 +0100
Subject: [PATCH 474/805] chore: delete old files

---
 .eslintignore | 26 --------------------------
 1 file changed, 26 deletions(-)
 delete mode 100644 .eslintignore

diff --git a/.eslintignore b/.eslintignore
deleted file mode 100644
index cbfa8917..00000000
--- a/.eslintignore
+++ /dev/null
@@ -1,26 +0,0 @@
-krill-parser.js
-krill.pegjs
-.eslintrc.json
-server.js
-tidal-sniffer.js
-*.jsx
-tunejs.js
-out/**
-postcss.config.js
-postcss.config.cjs
-tailwind.config.js
-tailwind.config.cjs
-vite.config.js
-/**/dist/**/*
-!**/*.mjs
-**/*.tsx
-**/*.ts
-**/*.json
-**/dev-dist
-**/dist
-/src-tauri/target/**/*
-reverbGen.mjs
-hydra.mjs
-jsdoc-synonyms.js
-packages/hs2js/src/hs2js.mjs
-samples
\ No newline at end of file

From 88fb0b3b75224acfe629bf494e802d110aff9385 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Mon, 3 Feb 2025 22:45:19 +0100
Subject: [PATCH 475/805] fix: pnpm check

---
 packages/midi/midi.mjs | 2 +-
 test/examples.test.mjs | 2 ++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index fe0829c9..2979684a 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -133,7 +133,7 @@ let loadCache = {};
 /**
  * Adds midimaps to the registry. Inside each midimap, control names (e.g. lpf) are mapped to cc numbers.
  * @example
- * midimaps({ mymap: { lpf: 74 } })
+ * midimaps({ mymap: { lpf: 74 } })
  * $: note("c a f e")
  * .lpf(sine.slow(4))
  * .midimap('mymap')
diff --git a/test/examples.test.mjs b/test/examples.test.mjs
index 997c1cf3..896a02f8 100644
--- a/test/examples.test.mjs
+++ b/test/examples.test.mjs
@@ -18,6 +18,8 @@ const skippedExamples = [
   'accelerationZ',
   'accelerationY',
   'accelerationX',
+  'defaultmidimap',
+  'midimaps',
 ];
 
 describe('runs examples', () => {

From 848edb1f693e3df76a61cafe582745f3c59e6bb2 Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Mon, 3 Feb 2025 22:56:51 +0100
Subject: [PATCH 476/805] doc: midisounds

---
 packages/midi/midi.mjs                   | 12 +++++++++++-
 test/examples.test.mjs                   |  1 +
 website/src/pages/learn/input-output.mdx |  4 ++++
 3 files changed, 16 insertions(+), 1 deletion(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 2979684a..70df93e8 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -164,7 +164,17 @@ export async function midimaps(map) {
 
 // registry for midi sounds, converting sound names to controls
 export const midisoundMap = new Map();
-// adds multiple midimaps to the registry
+
+/**
+ * Maps a sound name to a set of controls:
+ * @example
+ * midisounds({ bd: { note: 'c2' } })
+ * $: s("bd").midi()
+ * @example
+ * // notes can be set directly to simplify typical midi drum kit mappings
+ * midisounds({ bd: 'c2', rim: 'c#2' })
+ * $: s("bd rim").midi()
+ **/
 export async function midisounds(map) {
   if (typeof map === 'object') {
     Object.entries(map).forEach(([name, mapping]) => midisoundMap.set(name, mapping));
diff --git a/test/examples.test.mjs b/test/examples.test.mjs
index 896a02f8..ccce6c2a 100644
--- a/test/examples.test.mjs
+++ b/test/examples.test.mjs
@@ -20,6 +20,7 @@ const skippedExamples = [
   'accelerationX',
   'defaultmidimap',
   'midimaps',
+  'midisounds',
 ];
 
 describe('runs examples', () => {
diff --git a/website/src/pages/learn/input-output.mdx b/website/src/pages/learn/input-output.mdx
index cec06a34..666a39f7 100644
--- a/website/src/pages/learn/input-output.mdx
+++ b/website/src/pages/learn/input-output.mdx
@@ -56,6 +56,10 @@ Instead of setting `ccn` and `ccv` directly, you can also create mappings with `
 
 
 
+## midisounds
+
+
+
 # OSC/SuperDirt/StrudelDirt
 
 In TidalCycles, sound is usually generated using [SuperDirt](https://github.com/musikinformatik/SuperDirt/), which runs inside SuperCollider. Strudel also supports using SuperDirt, although it requires installing some additional software.

From 52d1443cf8d467b44c24259bd1193f038a8a42c0 Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Wed, 5 Feb 2025 07:41:24 +0800
Subject: [PATCH 477/805] Add midicmd JSdoc

---
 packages/core/controls.mjs                |   8 +
 test/__snapshots__/examples.test.mjs.snap | 199 ++++++++++++++++++++++
 2 files changed, 207 insertions(+)

diff --git a/packages/core/controls.mjs b/packages/core/controls.mjs
index 1b4feb60..37f37c98 100644
--- a/packages/core/controls.mjs
+++ b/packages/core/controls.mjs
@@ -1617,6 +1617,14 @@ export const ar = register('ar', (t, pat) => {
  */
 export const { midichan } = registerControl('midichan');
 
+/**
+ * MIDI command: Sends a MIDI command message.
+ *
+ * @name midicmd
+ * @param {number | Pattern} command MIDI command
+ * @example
+ * midicmd("clock*48,/2").midi()
+ */
 export const { midicmd } = registerControl('midicmd');
 
 /**
diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index 9382bce7..4cdafb78 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -4696,6 +4696,205 @@ exports[`runs examples > example "midichan" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "midicmd" example index 0 1`] = `
+[
+  "[ 0/1 → 1/48 | midicmd:clock ]",
+  "[ 0/1 → 2/1 | midicmd:start ]",
+  "[ 1/48 → 1/24 | midicmd:clock ]",
+  "[ 1/24 → 1/16 | midicmd:clock ]",
+  "[ 1/16 → 1/12 | midicmd:clock ]",
+  "[ 1/12 → 5/48 | midicmd:clock ]",
+  "[ 5/48 → 1/8 | midicmd:clock ]",
+  "[ 1/8 → 7/48 | midicmd:clock ]",
+  "[ 7/48 → 1/6 | midicmd:clock ]",
+  "[ 1/6 → 3/16 | midicmd:clock ]",
+  "[ 3/16 → 5/24 | midicmd:clock ]",
+  "[ 5/24 → 11/48 | midicmd:clock ]",
+  "[ 11/48 → 1/4 | midicmd:clock ]",
+  "[ 1/4 → 13/48 | midicmd:clock ]",
+  "[ 13/48 → 7/24 | midicmd:clock ]",
+  "[ 7/24 → 5/16 | midicmd:clock ]",
+  "[ 5/16 → 1/3 | midicmd:clock ]",
+  "[ 1/3 → 17/48 | midicmd:clock ]",
+  "[ 17/48 → 3/8 | midicmd:clock ]",
+  "[ 3/8 → 19/48 | midicmd:clock ]",
+  "[ 19/48 → 5/12 | midicmd:clock ]",
+  "[ 5/12 → 7/16 | midicmd:clock ]",
+  "[ 7/16 → 11/24 | midicmd:clock ]",
+  "[ 11/24 → 23/48 | midicmd:clock ]",
+  "[ 23/48 → 1/2 | midicmd:clock ]",
+  "[ 1/2 → 25/48 | midicmd:clock ]",
+  "[ 25/48 → 13/24 | midicmd:clock ]",
+  "[ 13/24 → 9/16 | midicmd:clock ]",
+  "[ 9/16 → 7/12 | midicmd:clock ]",
+  "[ 7/12 → 29/48 | midicmd:clock ]",
+  "[ 29/48 → 5/8 | midicmd:clock ]",
+  "[ 5/8 → 31/48 | midicmd:clock ]",
+  "[ 31/48 → 2/3 | midicmd:clock ]",
+  "[ 2/3 → 11/16 | midicmd:clock ]",
+  "[ 11/16 → 17/24 | midicmd:clock ]",
+  "[ 17/24 → 35/48 | midicmd:clock ]",
+  "[ 35/48 → 3/4 | midicmd:clock ]",
+  "[ 3/4 → 37/48 | midicmd:clock ]",
+  "[ 37/48 → 19/24 | midicmd:clock ]",
+  "[ 19/24 → 13/16 | midicmd:clock ]",
+  "[ 13/16 → 5/6 | midicmd:clock ]",
+  "[ 5/6 → 41/48 | midicmd:clock ]",
+  "[ 41/48 → 7/8 | midicmd:clock ]",
+  "[ 7/8 → 43/48 | midicmd:clock ]",
+  "[ 43/48 → 11/12 | midicmd:clock ]",
+  "[ 11/12 → 15/16 | midicmd:clock ]",
+  "[ 15/16 → 23/24 | midicmd:clock ]",
+  "[ 23/24 → 47/48 | midicmd:clock ]",
+  "[ 47/48 → 1/1 | midicmd:clock ]",
+  "[ 1/1 → 49/48 | midicmd:clock ]",
+  "[ 49/48 → 25/24 | midicmd:clock ]",
+  "[ 25/24 → 17/16 | midicmd:clock ]",
+  "[ 17/16 → 13/12 | midicmd:clock ]",
+  "[ 13/12 → 53/48 | midicmd:clock ]",
+  "[ 53/48 → 9/8 | midicmd:clock ]",
+  "[ 9/8 → 55/48 | midicmd:clock ]",
+  "[ 55/48 → 7/6 | midicmd:clock ]",
+  "[ 7/6 → 19/16 | midicmd:clock ]",
+  "[ 19/16 → 29/24 | midicmd:clock ]",
+  "[ 29/24 → 59/48 | midicmd:clock ]",
+  "[ 59/48 → 5/4 | midicmd:clock ]",
+  "[ 5/4 → 61/48 | midicmd:clock ]",
+  "[ 61/48 → 31/24 | midicmd:clock ]",
+  "[ 31/24 → 21/16 | midicmd:clock ]",
+  "[ 21/16 → 4/3 | midicmd:clock ]",
+  "[ 4/3 → 65/48 | midicmd:clock ]",
+  "[ 65/48 → 11/8 | midicmd:clock ]",
+  "[ 11/8 → 67/48 | midicmd:clock ]",
+  "[ 67/48 → 17/12 | midicmd:clock ]",
+  "[ 17/12 → 23/16 | midicmd:clock ]",
+  "[ 23/16 → 35/24 | midicmd:clock ]",
+  "[ 35/24 → 71/48 | midicmd:clock ]",
+  "[ 71/48 → 3/2 | midicmd:clock ]",
+  "[ 3/2 → 73/48 | midicmd:clock ]",
+  "[ 73/48 → 37/24 | midicmd:clock ]",
+  "[ 37/24 → 25/16 | midicmd:clock ]",
+  "[ 25/16 → 19/12 | midicmd:clock ]",
+  "[ 19/12 → 77/48 | midicmd:clock ]",
+  "[ 77/48 → 13/8 | midicmd:clock ]",
+  "[ 13/8 → 79/48 | midicmd:clock ]",
+  "[ 79/48 → 5/3 | midicmd:clock ]",
+  "[ 5/3 → 27/16 | midicmd:clock ]",
+  "[ 27/16 → 41/24 | midicmd:clock ]",
+  "[ 41/24 → 83/48 | midicmd:clock ]",
+  "[ 83/48 → 7/4 | midicmd:clock ]",
+  "[ 7/4 → 85/48 | midicmd:clock ]",
+  "[ 85/48 → 43/24 | midicmd:clock ]",
+  "[ 43/24 → 29/16 | midicmd:clock ]",
+  "[ 29/16 → 11/6 | midicmd:clock ]",
+  "[ 11/6 → 89/48 | midicmd:clock ]",
+  "[ 89/48 → 15/8 | midicmd:clock ]",
+  "[ 15/8 → 91/48 | midicmd:clock ]",
+  "[ 91/48 → 23/12 | midicmd:clock ]",
+  "[ 23/12 → 31/16 | midicmd:clock ]",
+  "[ 31/16 → 47/24 | midicmd:clock ]",
+  "[ 47/24 → 95/48 | midicmd:clock ]",
+  "[ 95/48 → 2/1 | midicmd:clock ]",
+  "[ 2/1 → 97/48 | midicmd:clock ]",
+  "[ 2/1 → 4/1 | midicmd:stop ]",
+  "[ 97/48 → 49/24 | midicmd:clock ]",
+  "[ 49/24 → 33/16 | midicmd:clock ]",
+  "[ 33/16 → 25/12 | midicmd:clock ]",
+  "[ 25/12 → 101/48 | midicmd:clock ]",
+  "[ 101/48 → 17/8 | midicmd:clock ]",
+  "[ 17/8 → 103/48 | midicmd:clock ]",
+  "[ 103/48 → 13/6 | midicmd:clock ]",
+  "[ 13/6 → 35/16 | midicmd:clock ]",
+  "[ 35/16 → 53/24 | midicmd:clock ]",
+  "[ 53/24 → 107/48 | midicmd:clock ]",
+  "[ 107/48 → 9/4 | midicmd:clock ]",
+  "[ 9/4 → 109/48 | midicmd:clock ]",
+  "[ 109/48 → 55/24 | midicmd:clock ]",
+  "[ 55/24 → 37/16 | midicmd:clock ]",
+  "[ 37/16 → 7/3 | midicmd:clock ]",
+  "[ 7/3 → 113/48 | midicmd:clock ]",
+  "[ 113/48 → 19/8 | midicmd:clock ]",
+  "[ 19/8 → 115/48 | midicmd:clock ]",
+  "[ 115/48 → 29/12 | midicmd:clock ]",
+  "[ 29/12 → 39/16 | midicmd:clock ]",
+  "[ 39/16 → 59/24 | midicmd:clock ]",
+  "[ 59/24 → 119/48 | midicmd:clock ]",
+  "[ 119/48 → 5/2 | midicmd:clock ]",
+  "[ 5/2 → 121/48 | midicmd:clock ]",
+  "[ 121/48 → 61/24 | midicmd:clock ]",
+  "[ 61/24 → 41/16 | midicmd:clock ]",
+  "[ 41/16 → 31/12 | midicmd:clock ]",
+  "[ 31/12 → 125/48 | midicmd:clock ]",
+  "[ 125/48 → 21/8 | midicmd:clock ]",
+  "[ 21/8 → 127/48 | midicmd:clock ]",
+  "[ 127/48 → 8/3 | midicmd:clock ]",
+  "[ 8/3 → 43/16 | midicmd:clock ]",
+  "[ 43/16 → 65/24 | midicmd:clock ]",
+  "[ 65/24 → 131/48 | midicmd:clock ]",
+  "[ 131/48 → 11/4 | midicmd:clock ]",
+  "[ 11/4 → 133/48 | midicmd:clock ]",
+  "[ 133/48 → 67/24 | midicmd:clock ]",
+  "[ 67/24 → 45/16 | midicmd:clock ]",
+  "[ 45/16 → 17/6 | midicmd:clock ]",
+  "[ 17/6 → 137/48 | midicmd:clock ]",
+  "[ 137/48 → 23/8 | midicmd:clock ]",
+  "[ 23/8 → 139/48 | midicmd:clock ]",
+  "[ 139/48 → 35/12 | midicmd:clock ]",
+  "[ 35/12 → 47/16 | midicmd:clock ]",
+  "[ 47/16 → 71/24 | midicmd:clock ]",
+  "[ 71/24 → 143/48 | midicmd:clock ]",
+  "[ 143/48 → 3/1 | midicmd:clock ]",
+  "[ 3/1 → 145/48 | midicmd:clock ]",
+  "[ 145/48 → 73/24 | midicmd:clock ]",
+  "[ 73/24 → 49/16 | midicmd:clock ]",
+  "[ 49/16 → 37/12 | midicmd:clock ]",
+  "[ 37/12 → 149/48 | midicmd:clock ]",
+  "[ 149/48 → 25/8 | midicmd:clock ]",
+  "[ 25/8 → 151/48 | midicmd:clock ]",
+  "[ 151/48 → 19/6 | midicmd:clock ]",
+  "[ 19/6 → 51/16 | midicmd:clock ]",
+  "[ 51/16 → 77/24 | midicmd:clock ]",
+  "[ 77/24 → 155/48 | midicmd:clock ]",
+  "[ 155/48 → 13/4 | midicmd:clock ]",
+  "[ 13/4 → 157/48 | midicmd:clock ]",
+  "[ 157/48 → 79/24 | midicmd:clock ]",
+  "[ 79/24 → 53/16 | midicmd:clock ]",
+  "[ 53/16 → 10/3 | midicmd:clock ]",
+  "[ 10/3 → 161/48 | midicmd:clock ]",
+  "[ 161/48 → 27/8 | midicmd:clock ]",
+  "[ 27/8 → 163/48 | midicmd:clock ]",
+  "[ 163/48 → 41/12 | midicmd:clock ]",
+  "[ 41/12 → 55/16 | midicmd:clock ]",
+  "[ 55/16 → 83/24 | midicmd:clock ]",
+  "[ 83/24 → 167/48 | midicmd:clock ]",
+  "[ 167/48 → 7/2 | midicmd:clock ]",
+  "[ 7/2 → 169/48 | midicmd:clock ]",
+  "[ 169/48 → 85/24 | midicmd:clock ]",
+  "[ 85/24 → 57/16 | midicmd:clock ]",
+  "[ 57/16 → 43/12 | midicmd:clock ]",
+  "[ 43/12 → 173/48 | midicmd:clock ]",
+  "[ 173/48 → 29/8 | midicmd:clock ]",
+  "[ 29/8 → 175/48 | midicmd:clock ]",
+  "[ 175/48 → 11/3 | midicmd:clock ]",
+  "[ 11/3 → 59/16 | midicmd:clock ]",
+  "[ 59/16 → 89/24 | midicmd:clock ]",
+  "[ 89/24 → 179/48 | midicmd:clock ]",
+  "[ 179/48 → 15/4 | midicmd:clock ]",
+  "[ 15/4 → 181/48 | midicmd:clock ]",
+  "[ 181/48 → 91/24 | midicmd:clock ]",
+  "[ 91/24 → 61/16 | midicmd:clock ]",
+  "[ 61/16 → 23/6 | midicmd:clock ]",
+  "[ 23/6 → 185/48 | midicmd:clock ]",
+  "[ 185/48 → 31/8 | midicmd:clock ]",
+  "[ 31/8 → 187/48 | midicmd:clock ]",
+  "[ 187/48 → 47/12 | midicmd:clock ]",
+  "[ 47/12 → 63/16 | midicmd:clock ]",
+  "[ 63/16 → 95/24 | midicmd:clock ]",
+  "[ 95/24 → 191/48 | midicmd:clock ]",
+  "[ 191/48 → 4/1 | midicmd:clock ]",
+]
+`;
+
 exports[`runs examples > example "midin" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:c cutoff:0 resonance:0 s:sawtooth ]",

From 20dcae68c14e8737a6d333309baffb9702b118db Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Wed, 5 Feb 2025 07:42:06 +0800
Subject: [PATCH 478/805] add sysex handler to midicmd

---
 packages/midi/midi.mjs | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index aee54202..2c46d61c 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -311,6 +311,21 @@ Pattern.prototype.midi = function (output) {
           }
           device.sendControlChange(midicmd[0], midicmd[1], midichan, { time: timeOffsetString });
         }
+      } else if (midicmd[0] === 'sysex') {
+        if (midicmd.length === 3) {
+          const [_, id, data] = midicmd;
+          if (Array.isArray(id)) {
+            if (!id.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
+              throw new Error('all sysex id bytes must be integers between 0 and 255');
+            }
+          } else if (!Number.isInteger(id) || id < 0 || id > 255) {
+            throw new Error('sysex id must be a number between 0 and 255 or an array of such integers');
+          }
+          if (!Array.isArray(data) || !data.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
+            throw new Error('sysex data must be an array of integers between 0 and 255');
+          }
+          device.sendSysex(id, data, { time: timeOffsetString });
+        }
       }
     }
   });

From 9b279ff671cc0ee342324680b130006837921a52 Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Wed, 5 Feb 2025 08:11:39 +0800
Subject: [PATCH 479/805] update 'midicmd' in README.md

---
 packages/midi/README.md | 17 +++++++++++++++++
 1 file changed, 17 insertions(+)

diff --git a/packages/midi/README.md b/packages/midi/README.md
index 524baa17..faf9993f 100644
--- a/packages/midi/README.md
+++ b/packages/midi/README.md
@@ -75,6 +75,23 @@ stack(
 )
 ```
 
+`midicmd` also supports sending control change, program change and sysex messages.
+
+- `cc` - sends MIDI control change messages.
+- `progNum` - sends MIDI program change messages.
+- `sysex` - sends MIDI system exclusive messages.
+
+```javascript
+stack(
+  // "cc:ccn:ccv"
+  midicmd("cc:74:1").midi('IAC Driver'),
+  // "progNum:progNum"
+  midicmd("progNum:1").midi('IAC Driver'),
+  // "sysex:[sysexid]:[sysexdata]"
+  midicmd("sysex:[0x43]:[0x79:0x09:0x11:0x0A:0x00:0x00]").midi('IAC Driver')
+)
+```
+
 ### control, ccn && ccv
 
 `control` sends MIDI control change messages to your MIDI device.

From 54c54543062941f65a41bbba0605bb7732e82065 Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Wed, 5 Feb 2025 08:17:42 +0800
Subject: [PATCH 480/805] edit README.md

---
 packages/midi/README.md | 134 ++++++++++++++++++++--------------------
 1 file changed, 67 insertions(+), 67 deletions(-)

diff --git a/packages/midi/README.md b/packages/midi/README.md
index faf9993f..cefe40ab 100644
--- a/packages/midi/README.md
+++ b/packages/midi/README.md
@@ -26,11 +26,11 @@ OUTPUT:
 - `sysex` - Sends MIDI System Exclusive messages (id: number 0-127 or array of bytes 0-127, data: array of bytes 0-127)
 - `sysexid` - Sets MIDI System Exclusive ID (number 0-127 or array of bytes 0-127)
 - `sysexdata` - Sets MIDI System Exclusive data (array of bytes 0-127)
-- `nrpnn` - Sets MIDI NRPN non-registered parameter number (array of bytes 0-127)
-- `nrpv` - Sets MIDI NRPN non-registered parameter value (0-127)
-- `midicmd` - Sends MIDI system real-time messages to control timing and transport on MIDI devices.
 - `midibend` - Sets MIDI pitch bend (-1 - 1)
 - `miditouch` - Sets MIDI key after touch (0-1)
+- `midicmd` - Sends MIDI system real-time messages to control timing and transport on MIDI devices.
+- `nrpnn` - Sets MIDI NRPN non-registered parameter number (array of bytes 0-127)
+- `nrpv` - Sets MIDI NRPN non-registered parameter value (0-127)
 
 
 INPUT:
@@ -56,6 +56,70 @@ In the console, you will see a log of the available MIDI devices as soon as you
 
 Selects the MIDI channel to use. If not used, `.midi` will use channel 1 by default.
 
+### control, ccn && ccv
+
+`control` sends MIDI control change messages to your MIDI device.
+
+- `ccn` sets the cc number. Depends on your synths midi mapping
+- `ccv` sets the cc value. normalized from 0 to 1.
+
+```javascript
+$: note("c a f e").control([74, sine.slow(4)]).midi()
+$: note("c a f e").ccn(74).ccv(sine.slow(4)).midi()
+```
+
+In the above snippet, `ccn` is set to 74, which is the filter cutoff for many synths. `ccv` is controlled by a saw pattern.
+Having everything in one pattern, the `ccv` pattern will be aligned to the note pattern, because the structure comes from the left by default.
+But you can also control cc messages separately like this:
+
+```javascript
+$: note("c a f e").midi()
+$: ccv(sine.segment(16).slow(4)).ccn(74).midi()
+```
+
+### progNum (Program Change)
+
+`progNum` control sends MIDI program change messages to switch between different presets/patches on your MIDI device.
+Program change values should be numbers between 0 and 127.
+
+```javascript
+// Play notes while changing programs
+note("c3 e3 g3").progNum("<0 1 2>").midi()
+```
+
+Program change messages are useful for switching between different instrument sounds or presets during a performance. 
+The exact sound that each program number maps to depends on your MIDI device's configuration.
+
+## sysex,  sysexid && sysexdata (System Exclusive Message)
+
+`sysex`, `sysexid` and `sysexdata` control sends MIDI System Exclusive (SysEx) messages to your MIDI device. 
+sysEx messages are device-specific commands that allow deeper control over synthesizer parameters. 
+The value should be an array of numbers between 0-255 representing the SysEx data bytes.
+
+```javascript
+// Send a simple SysEx message
+let id = 0x43; //Yamaha
+//let id = "0x00:0x20:0x32"; //Behringer ID can be an array of numbers
+let data = "0x79:0x09:0x11:0x0A:0x00:0x00"; // Set NSX-39 voice to say "Aa"
+$: note("c d e f e d c").sysex(id, data).midi();
+$: note("c d e f e d c").sysexid(id).sysexdata(data).midi();
+```
+
+The exact format of SysEx messages depends on your MIDI device's specification.
+Consult your device's MIDI implementation guide for details on supported SysEx messages.
+
+### midibend && miditouch
+
+`midibend` sets MIDI pitch bend (-1 - 1)
+`miditouch` sets MIDI key after touch (0-1)
+
+```javascript
+
+$: note("c d e f e d c").midibend(sine.slow(4).range(-0.4,0.4)).midi();
+$: note("c d e f e d c").miditouch(sine.slow(4).range(0,1)).midi();
+
+```
+
 ### midicmd
 
 `midicmd` sends MIDI system real-time messages to control timing and transport on MIDI devices.
@@ -90,68 +154,4 @@ stack(
   // "sysex:[sysexid]:[sysexdata]"
   midicmd("sysex:[0x43]:[0x79:0x09:0x11:0x0A:0x00:0x00]").midi('IAC Driver')
 )
-```
-
-### control, ccn && ccv
-
-`control` sends MIDI control change messages to your MIDI device.
-
-- `ccn` sets the cc number. Depends on your synths midi mapping
-- `ccv` sets the cc value. normalized from 0 to 1.
-
-```javascript
-$: note("c a f e").control([74, sine.slow(4)]).midi()
-$: note("c a f e").ccn(74).ccv(sine.slow(4)).midi()
-```
-
-In the above snippet, `ccn` is set to 74, which is the filter cutoff for many synths. `ccv` is controlled by a saw pattern.
-Having everything in one pattern, the `ccv` pattern will be aligned to the note pattern, because the structure comes from the left by default.
-But you can also control cc messages separately like this:
-
-```javascript
-$: note("c a f e").midi()
-$: ccv(sine.segment(16).slow(4)).ccn(74).midi()
-```
-
-### progNum (Program Change)
-
-`progNum` control sends MIDI program change messages to switch between different presets/patches on your MIDI device.
-Program change values should be numbers between 0 and 127.
-
-```javascript
-// Play notes while changing programs
-note("c3 e3 g3").pc("<0 1 2>").midi()
-```
-
-Program change messages are useful for switching between different instrument sounds or presets during a performance. 
-The exact sound that each program number maps to depends on your MIDI device's configuration.
-
-## sysex,  sysexid && sysexdata (System Exclusive Message)
-
-`sysex`, `sysexid` and `sysexdata` control sends MIDI System Exclusive (SysEx) messages to your MIDI device. 
-sysEx messages are device-specific commands that allow deeper control over synthesizer parameters. 
-The value should be an array of numbers between 0-255 representing the SysEx data bytes.
-
-```javascript
-// Send a simple SysEx message
-let id = 0x43; //Yamaha
-//let id = "0x00:0x20:0x32"; //Behringer ID can be an array of numbers
-let data = "0x79:0x09:0x11:0x0A:0x00:0x00"; // Set NSX-39 voice to say "Aa"
-$: note("c d e f e d c").sysex(id, data).midi();
-$: note("c d e f e d c").sysexid(id).sysexdata(data).midi();
-```
-
-The exact format of SysEx messages depends on your MIDI device's specification.
-Consult your device's MIDI implementation guide for details on supported SysEx messages.
-
-### midibend && miditouch
-
-`midibend` sets MIDI pitch bend (-1 - 1)
-`miditouch` sets MIDI key after touch (0-1)
-
-```javascript
-
-$: note("c d e f e d c").midibend(sine.slow(4).range(-0.4,0.4)).midi();
-$: note("c d e f e d c").miditouch(sine.slow(4).range(0,1)).midi();
-
 ```
\ No newline at end of file

From 49e9b84962e3c64fa8ef5748ad17d76f9dcedd70 Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Wed, 5 Feb 2025 15:10:53 +0000
Subject: [PATCH 481/805] [breaking change] Sample signals from query onset,
 rather than midpoint (#1278)

This changes almost everything involving signals, including all use of random numbers.
---
 packages/core/signal.mjs                  |     4 +-
 packages/core/test/pattern.test.mjs       |    16 +-
 test/__snapshots__/examples.test.mjs.snap |  2202 ++--
 test/__snapshots__/tunes.test.mjs.snap    | 10686 ++++++++++----------
 4 files changed, 6446 insertions(+), 6462 deletions(-)

diff --git a/packages/core/signal.mjs b/packages/core/signal.mjs
index 319ab1cc..ade43e32 100644
--- a/packages/core/signal.mjs
+++ b/packages/core/signal.mjs
@@ -16,7 +16,7 @@ export function steady(value) {
 }
 
 export const signal = (func) => {
-  const query = (state) => [new Hap(undefined, state.span, func(state.span.midpoint()))];
+  const query = (state) => [new Hap(undefined, state.span, func(state.span.begin))];
   return new Pattern(query);
 };
 
@@ -158,7 +158,7 @@ const timeToRands = (t, n) => timeToRandsPrime(timeToIntSeed(t), n);
  * n(run(4)).scale("C4:pentatonic")
  * // n("0 1 2 3").scale("C4:pentatonic")
  */
-export const run = (n) => saw.range(0, n).floor().segment(n);
+export const run = (n) => saw.range(0, n).round().segment(n);
 
 /**
  * Creates a pattern from a binary number.
diff --git a/packages/core/test/pattern.test.mjs b/packages/core/test/pattern.test.mjs
index 1a7a203d..0696f0e5 100644
--- a/packages/core/test/pattern.test.mjs
+++ b/packages/core/test/pattern.test.mjs
@@ -736,21 +736,15 @@ describe('Pattern', () => {
   describe('signal()', () => {
     it('Can make saw/saw2', () => {
       expect(saw.struct(true, true, true, true).firstCycle()).toStrictEqual(
-        sequence(1 / 8, 3 / 8, 5 / 8, 7 / 8).firstCycle(),
+        sequence(0, 1 / 4, 1 / 2, 3 / 4).firstCycle(),
       );
 
-      expect(saw2.struct(true, true, true, true).firstCycle()).toStrictEqual(
-        sequence(-3 / 4, -1 / 4, 1 / 4, 3 / 4).firstCycle(),
-      );
+      expect(saw2.struct(true, true, true, true).firstCycle()).toStrictEqual(sequence(-1, -0.5, 0, 0.5).firstCycle());
     });
     it('Can make isaw/isaw2', () => {
-      expect(isaw.struct(true, true, true, true).firstCycle()).toStrictEqual(
-        sequence(7 / 8, 5 / 8, 3 / 8, 1 / 8).firstCycle(),
-      );
+      expect(isaw.struct(true, true, true, true).firstCycle()).toStrictEqual(sequence(1, 0.75, 0.5, 0.25).firstCycle());
 
-      expect(isaw2.struct(true, true, true, true).firstCycle()).toStrictEqual(
-        sequence(3 / 4, 1 / 4, -1 / 4, -3 / 4).firstCycle(),
-      );
+      expect(isaw2.struct(true, true, true, true).firstCycle()).toStrictEqual(sequence(1, 0.5, 0, -0.5).firstCycle());
     });
   });
   describe('_setContext()', () => {
@@ -888,7 +882,7 @@ describe('Pattern', () => {
           .squeezeJoin()
           .queryArc(3, 4)
           .map((x) => x.value),
-      ).toStrictEqual([Fraction(3.5)]);
+      ).toStrictEqual([Fraction(3)]);
     });
   });
   describe('ply', () => {
diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index 3678968b..05a97f14 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -686,8 +686,8 @@ exports[`runs examples > example "almostAlways" example index 0 1`] = `
   "[ 13/8 → 7/4 | s:hh speed:0.5 ]",
   "[ 7/4 → 15/8 | s:hh speed:0.5 ]",
   "[ 15/8 → 2/1 | s:hh speed:0.5 ]",
-  "[ 2/1 → 17/8 | s:hh speed:0.5 ]",
-  "[ 17/8 → 9/4 | s:hh speed:0.5 ]",
+  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 17/8 → 9/4 | s:hh ]",
   "[ 9/4 → 19/8 | s:hh speed:0.5 ]",
   "[ 19/8 → 5/2 | s:hh speed:0.5 ]",
   "[ 5/2 → 21/8 | s:hh speed:0.5 ]",
@@ -695,8 +695,8 @@ exports[`runs examples > example "almostAlways" example index 0 1`] = `
   "[ 11/4 → 23/8 | s:hh speed:0.5 ]",
   "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
   "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
-  "[ 25/8 → 13/4 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh speed:0.5 ]",
+  "[ 25/8 → 13/4 | s:hh speed:0.5 ]",
+  "[ 13/4 → 27/8 | s:hh ]",
   "[ 27/8 → 7/2 | s:hh speed:0.5 ]",
   "[ 7/2 → 29/8 | s:hh speed:0.5 ]",
   "[ 29/8 → 15/4 | s:hh ]",
@@ -707,7 +707,7 @@ exports[`runs examples > example "almostAlways" example index 0 1`] = `
 
 exports[`runs examples > example "almostNever" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh ]",
+  "[ 0/1 → 1/8 | s:hh speed:0.5 ]",
   "[ 1/8 → 1/4 | s:hh ]",
   "[ 1/4 → 3/8 | s:hh ]",
   "[ 3/8 → 1/2 | s:hh ]",
@@ -716,22 +716,22 @@ exports[`runs examples > example "almostNever" example index 0 1`] = `
   "[ 3/4 → 7/8 | s:hh ]",
   "[ 7/8 → 1/1 | s:hh ]",
   "[ 1/1 → 9/8 | s:hh ]",
-  "[ 9/8 → 5/4 | s:hh speed:0.5 ]",
-  "[ 5/4 → 11/8 | s:hh speed:0.5 ]",
+  "[ 9/8 → 5/4 | s:hh ]",
+  "[ 5/4 → 11/8 | s:hh ]",
   "[ 11/8 → 3/2 | s:hh ]",
   "[ 3/2 → 13/8 | s:hh ]",
   "[ 13/8 → 7/4 | s:hh ]",
   "[ 7/4 → 15/8 | s:hh ]",
   "[ 15/8 → 2/1 | s:hh ]",
   "[ 2/1 → 17/8 | s:hh ]",
-  "[ 17/8 → 9/4 | s:hh speed:0.5 ]",
+  "[ 17/8 → 9/4 | s:hh ]",
   "[ 9/4 → 19/8 | s:hh ]",
   "[ 19/8 → 5/2 | s:hh ]",
   "[ 5/2 → 21/8 | s:hh ]",
   "[ 21/8 → 11/4 | s:hh ]",
   "[ 11/4 → 23/8 | s:hh ]",
-  "[ 23/8 → 3/1 | s:hh ]",
-  "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
+  "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
+  "[ 3/1 → 25/8 | s:hh ]",
   "[ 25/8 → 13/4 | s:hh ]",
   "[ 13/4 → 27/8 | s:hh ]",
   "[ 27/8 → 7/2 | s:hh ]",
@@ -1395,71 +1395,71 @@ exports[`runs examples > example "bpsustain" example index 0 1`] = `
 
 exports[`runs examples > example "brand" example index 0 1`] = `
 [
-  "[ 0/1 → 1/10 | s:hh pan:false ]",
-  "[ 1/10 → 1/5 | s:hh pan:false ]",
-  "[ 1/5 → 3/10 | s:hh pan:true ]",
-  "[ 3/10 → 2/5 | s:hh pan:true ]",
+  "[ 0/1 → 1/10 | s:hh pan:true ]",
+  "[ 1/10 → 1/5 | s:hh pan:true ]",
+  "[ 1/5 → 3/10 | s:hh pan:false ]",
+  "[ 3/10 → 2/5 | s:hh pan:false ]",
   "[ 2/5 → 1/2 | s:hh pan:false ]",
   "[ 1/2 → 3/5 | s:hh pan:true ]",
   "[ 3/5 → 7/10 | s:hh pan:false ]",
-  "[ 7/10 → 4/5 | s:hh pan:true ]",
-  "[ 4/5 → 9/10 | s:hh pan:false ]",
-  "[ 9/10 → 1/1 | s:hh pan:true ]",
-  "[ 1/1 → 11/10 | s:hh pan:true ]",
+  "[ 7/10 → 4/5 | s:hh pan:false ]",
+  "[ 4/5 → 9/10 | s:hh pan:true ]",
+  "[ 9/10 → 1/1 | s:hh pan:false ]",
+  "[ 1/1 → 11/10 | s:hh pan:false ]",
   "[ 11/10 → 6/5 | s:hh pan:false ]",
-  "[ 6/5 → 13/10 | s:hh pan:false ]",
-  "[ 13/10 → 7/5 | s:hh pan:false ]",
+  "[ 6/5 → 13/10 | s:hh pan:true ]",
+  "[ 13/10 → 7/5 | s:hh pan:true ]",
   "[ 7/5 → 3/2 | s:hh pan:true ]",
-  "[ 3/2 → 8/5 | s:hh pan:true ]",
+  "[ 3/2 → 8/5 | s:hh pan:false ]",
   "[ 8/5 → 17/10 | s:hh pan:true ]",
   "[ 17/10 → 9/5 | s:hh pan:true ]",
   "[ 9/5 → 19/10 | s:hh pan:true ]",
-  "[ 19/10 → 2/1 | s:hh pan:false ]",
+  "[ 19/10 → 2/1 | s:hh pan:true ]",
   "[ 2/1 → 21/10 | s:hh pan:false ]",
-  "[ 21/10 → 11/5 | s:hh pan:false ]",
-  "[ 11/5 → 23/10 | s:hh pan:true ]",
+  "[ 21/10 → 11/5 | s:hh pan:true ]",
+  "[ 11/5 → 23/10 | s:hh pan:false ]",
   "[ 23/10 → 12/5 | s:hh pan:false ]",
   "[ 12/5 → 5/2 | s:hh pan:false ]",
-  "[ 5/2 → 13/5 | s:hh pan:false ]",
-  "[ 13/5 → 27/10 | s:hh pan:false ]",
-  "[ 27/10 → 14/5 | s:hh pan:false ]",
-  "[ 14/5 → 29/10 | s:hh pan:true ]",
+  "[ 5/2 → 13/5 | s:hh pan:true ]",
+  "[ 13/5 → 27/10 | s:hh pan:true ]",
+  "[ 27/10 → 14/5 | s:hh pan:true ]",
+  "[ 14/5 → 29/10 | s:hh pan:false ]",
   "[ 29/10 → 3/1 | s:hh pan:true ]",
   "[ 3/1 → 31/10 | s:hh pan:true ]",
   "[ 31/10 → 16/5 | s:hh pan:true ]",
-  "[ 16/5 → 33/10 | s:hh pan:false ]",
+  "[ 16/5 → 33/10 | s:hh pan:true ]",
   "[ 33/10 → 17/5 | s:hh pan:false ]",
   "[ 17/5 → 7/2 | s:hh pan:false ]",
   "[ 7/2 → 18/5 | s:hh pan:true ]",
-  "[ 18/5 → 37/10 | s:hh pan:true ]",
+  "[ 18/5 → 37/10 | s:hh pan:false ]",
   "[ 37/10 → 19/5 | s:hh pan:false ]",
-  "[ 19/5 → 39/10 | s:hh pan:false ]",
+  "[ 19/5 → 39/10 | s:hh pan:true ]",
   "[ 39/10 → 4/1 | s:hh pan:true ]",
 ]
 `;
 
 exports[`runs examples > example "brandBy" example index 0 1`] = `
 [
-  "[ 0/1 → 1/10 | s:hh pan:false ]",
-  "[ 1/10 → 1/5 | s:hh pan:false ]",
+  "[ 0/1 → 1/10 | s:hh pan:true ]",
+  "[ 1/10 → 1/5 | s:hh pan:true ]",
   "[ 1/5 → 3/10 | s:hh pan:false ]",
   "[ 3/10 → 2/5 | s:hh pan:false ]",
   "[ 2/5 → 1/2 | s:hh pan:false ]",
   "[ 1/2 → 3/5 | s:hh pan:false ]",
   "[ 3/5 → 7/10 | s:hh pan:false ]",
-  "[ 7/10 → 4/5 | s:hh pan:true ]",
+  "[ 7/10 → 4/5 | s:hh pan:false ]",
   "[ 4/5 → 9/10 | s:hh pan:false ]",
-  "[ 9/10 → 1/1 | s:hh pan:true ]",
-  "[ 1/1 → 11/10 | s:hh pan:true ]",
+  "[ 9/10 → 1/1 | s:hh pan:false ]",
+  "[ 1/1 → 11/10 | s:hh pan:false ]",
   "[ 11/10 → 6/5 | s:hh pan:false ]",
   "[ 6/5 → 13/10 | s:hh pan:false ]",
   "[ 13/10 → 7/5 | s:hh pan:false ]",
   "[ 7/5 → 3/2 | s:hh pan:false ]",
-  "[ 3/2 → 8/5 | s:hh pan:true ]",
-  "[ 8/5 → 17/10 | s:hh pan:true ]",
+  "[ 3/2 → 8/5 | s:hh pan:false ]",
+  "[ 8/5 → 17/10 | s:hh pan:false ]",
   "[ 17/10 → 9/5 | s:hh pan:false ]",
   "[ 9/5 → 19/10 | s:hh pan:false ]",
-  "[ 19/10 → 2/1 | s:hh pan:false ]",
+  "[ 19/10 → 2/1 | s:hh pan:true ]",
   "[ 2/1 → 21/10 | s:hh pan:false ]",
   "[ 21/10 → 11/5 | s:hh pan:false ]",
   "[ 11/5 → 23/10 | s:hh pan:false ]",
@@ -1472,14 +1472,14 @@ exports[`runs examples > example "brandBy" example index 0 1`] = `
   "[ 29/10 → 3/1 | s:hh pan:false ]",
   "[ 3/1 → 31/10 | s:hh pan:false ]",
   "[ 31/10 → 16/5 | s:hh pan:true ]",
-  "[ 16/5 → 33/10 | s:hh pan:false ]",
+  "[ 16/5 → 33/10 | s:hh pan:true ]",
   "[ 33/10 → 17/5 | s:hh pan:false ]",
   "[ 17/5 → 7/2 | s:hh pan:false ]",
   "[ 7/2 → 18/5 | s:hh pan:false ]",
   "[ 18/5 → 37/10 | s:hh pan:false ]",
   "[ 37/10 → 19/5 | s:hh pan:false ]",
-  "[ 19/5 → 39/10 | s:hh pan:false ]",
-  "[ 39/10 → 4/1 | s:hh pan:true ]",
+  "[ 19/5 → 39/10 | s:hh pan:true ]",
+  "[ 39/10 → 4/1 | s:hh pan:false ]",
 ]
 `;
 
@@ -1566,21 +1566,21 @@ exports[`runs examples > example "choose" example index 0 1`] = `
 [
   "[ 0/1 → 1/5 | note:c2 s:sine ]",
   "[ 1/5 → 2/5 | note:g2 s:bd n:6 ]",
-  "[ 2/5 → 3/5 | note:g2 s:sine ]",
-  "[ 3/5 → 4/5 | note:d2 s:triangle ]",
-  "[ 4/5 → 1/1 | note:f1 s:bd n:6 ]",
-  "[ 1/1 → 6/5 | note:c2 s:bd n:6 ]",
+  "[ 2/5 → 3/5 | note:g2 s:triangle ]",
+  "[ 3/5 → 4/5 | note:d2 s:bd n:6 ]",
+  "[ 4/5 → 1/1 | note:f1 s:sine ]",
+  "[ 1/1 → 6/5 | note:c2 s:triangle ]",
   "[ 6/5 → 7/5 | note:g2 s:triangle ]",
-  "[ 7/5 → 8/5 | note:g2 s:triangle ]",
-  "[ 8/5 → 9/5 | note:d2 s:sine ]",
+  "[ 7/5 → 8/5 | note:g2 s:sine ]",
+  "[ 8/5 → 9/5 | note:d2 s:triangle ]",
   "[ 9/5 → 2/1 | note:f1 s:sine ]",
-  "[ 2/1 → 11/5 | note:c2 s:triangle ]",
+  "[ 2/1 → 11/5 | note:c2 s:bd n:6 ]",
   "[ 11/5 → 12/5 | note:g2 s:bd n:6 ]",
-  "[ 12/5 → 13/5 | note:g2 s:triangle ]",
+  "[ 12/5 → 13/5 | note:g2 s:bd n:6 ]",
   "[ 13/5 → 14/5 | note:d2 s:sine ]",
   "[ 14/5 → 3/1 | note:f1 s:triangle ]",
   "[ 3/1 → 16/5 | note:c2 s:sine ]",
-  "[ 16/5 → 17/5 | note:g2 s:bd n:6 ]",
+  "[ 16/5 → 17/5 | note:g2 s:sine ]",
   "[ 17/5 → 18/5 | note:g2 s:triangle ]",
   "[ 18/5 → 19/5 | note:d2 s:triangle ]",
   "[ 19/5 → 4/1 | note:f1 s:sine ]",
@@ -1591,36 +1591,36 @@ exports[`runs examples > example "chooseCycles" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | s:bd ]",
   "[ 1/8 → 1/4 | s:hh ]",
-  "[ 1/4 → 3/8 | s:hh ]",
-  "[ 3/8 → 1/2 | s:hh ]",
+  "[ 1/4 → 3/8 | s:sd ]",
+  "[ 3/8 → 1/2 | s:bd ]",
   "[ 1/2 → 5/8 | s:bd ]",
   "[ 5/8 → 3/4 | s:bd ]",
-  "[ 3/4 → 7/8 | s:sd ]",
-  "[ 7/8 → 1/1 | s:hh ]",
-  "[ 1/1 → 9/8 | s:hh ]",
+  "[ 3/4 → 7/8 | s:hh ]",
+  "[ 7/8 → 1/1 | s:bd ]",
+  "[ 1/1 → 9/8 | s:sd ]",
   "[ 9/8 → 5/4 | s:hh ]",
-  "[ 5/4 → 11/8 | s:hh ]",
-  "[ 11/8 → 3/2 | s:sd ]",
-  "[ 3/2 → 13/8 | s:hh ]",
-  "[ 13/8 → 7/4 | s:hh ]",
-  "[ 7/4 → 15/8 | s:sd ]",
+  "[ 5/4 → 11/8 | s:bd ]",
+  "[ 11/8 → 3/2 | s:hh ]",
+  "[ 3/2 → 13/8 | s:bd ]",
+  "[ 13/8 → 7/4 | s:sd ]",
+  "[ 7/4 → 15/8 | s:hh ]",
   "[ 15/8 → 2/1 | s:bd ]",
-  "[ 2/1 → 17/8 | s:hh ]",
-  "[ 17/8 → 9/4 | s:bd ]",
+  "[ 2/1 → 17/8 | s:bd ]",
+  "[ 17/8 → 9/4 | s:sd ]",
   "[ 9/4 → 19/8 | s:sd ]",
   "[ 19/8 → 5/2 | s:bd ]",
-  "[ 5/2 → 21/8 | s:bd ]",
-  "[ 21/8 → 11/4 | s:sd ]",
+  "[ 5/2 → 21/8 | s:hh ]",
+  "[ 21/8 → 11/4 | s:bd ]",
   "[ 11/4 → 23/8 | s:sd ]",
   "[ 23/8 → 3/1 | s:bd ]",
-  "[ 3/1 → 25/8 | s:bd ]",
+  "[ 3/1 → 25/8 | s:sd ]",
   "[ 25/8 → 13/4 | s:sd ]",
-  "[ 13/4 → 27/8 | s:hh ]",
-  "[ 27/8 → 7/2 | s:sd ]",
-  "[ 7/2 → 29/8 | s:hh ]",
-  "[ 29/8 → 15/4 | s:bd ]",
-  "[ 15/4 → 31/8 | s:sd ]",
-  "[ 31/8 → 4/1 | s:hh ]",
+  "[ 13/4 → 27/8 | s:bd ]",
+  "[ 27/8 → 7/2 | s:bd ]",
+  "[ 7/2 → 29/8 | s:bd ]",
+  "[ 29/8 → 15/4 | s:hh ]",
+  "[ 15/4 → 31/8 | s:hh ]",
+  "[ 31/8 → 4/1 | s:bd ]",
 ]
 `;
 
@@ -1628,59 +1628,59 @@ exports[`runs examples > example "chooseCycles" example index 1 1`] = `
 [
   "[ 0/1 → 1/8 | s:bd ]",
   "[ 1/8 → 1/4 | s:hh ]",
-  "[ 1/4 → 3/8 | s:hh ]",
-  "[ 3/8 → 1/2 | s:hh ]",
+  "[ 1/4 → 3/8 | s:sd ]",
+  "[ 3/8 → 1/2 | s:bd ]",
   "[ 1/2 → 5/8 | s:bd ]",
   "[ 5/8 → 3/4 | s:bd ]",
-  "[ 3/4 → 7/8 | s:sd ]",
-  "[ 7/8 → 1/1 | s:hh ]",
-  "[ 1/1 → 9/8 | s:hh ]",
+  "[ 3/4 → 7/8 | s:hh ]",
+  "[ 7/8 → 1/1 | s:bd ]",
+  "[ 1/1 → 9/8 | s:sd ]",
   "[ 9/8 → 5/4 | s:hh ]",
-  "[ 5/4 → 11/8 | s:hh ]",
-  "[ 11/8 → 3/2 | s:sd ]",
-  "[ 3/2 → 13/8 | s:hh ]",
-  "[ 13/8 → 7/4 | s:hh ]",
-  "[ 7/4 → 15/8 | s:sd ]",
+  "[ 5/4 → 11/8 | s:bd ]",
+  "[ 11/8 → 3/2 | s:hh ]",
+  "[ 3/2 → 13/8 | s:bd ]",
+  "[ 13/8 → 7/4 | s:sd ]",
+  "[ 7/4 → 15/8 | s:hh ]",
   "[ 15/8 → 2/1 | s:bd ]",
-  "[ 2/1 → 17/8 | s:hh ]",
-  "[ 17/8 → 9/4 | s:bd ]",
+  "[ 2/1 → 17/8 | s:bd ]",
+  "[ 17/8 → 9/4 | s:sd ]",
   "[ 9/4 → 19/8 | s:sd ]",
   "[ 19/8 → 5/2 | s:bd ]",
-  "[ 5/2 → 21/8 | s:bd ]",
-  "[ 21/8 → 11/4 | s:sd ]",
+  "[ 5/2 → 21/8 | s:hh ]",
+  "[ 21/8 → 11/4 | s:bd ]",
   "[ 11/4 → 23/8 | s:sd ]",
   "[ 23/8 → 3/1 | s:bd ]",
-  "[ 3/1 → 25/8 | s:bd ]",
+  "[ 3/1 → 25/8 | s:sd ]",
   "[ 25/8 → 13/4 | s:sd ]",
-  "[ 13/4 → 27/8 | s:hh ]",
-  "[ 27/8 → 7/2 | s:sd ]",
-  "[ 7/2 → 29/8 | s:hh ]",
-  "[ 29/8 → 15/4 | s:bd ]",
-  "[ 15/4 → 31/8 | s:sd ]",
-  "[ 31/8 → 4/1 | s:hh ]",
+  "[ 13/4 → 27/8 | s:bd ]",
+  "[ 27/8 → 7/2 | s:bd ]",
+  "[ 7/2 → 29/8 | s:bd ]",
+  "[ 29/8 → 15/4 | s:hh ]",
+  "[ 15/4 → 31/8 | s:hh ]",
+  "[ 31/8 → 4/1 | s:bd ]",
 ]
 `;
 
 exports[`runs examples > example "chooseWith" example index 0 1`] = `
 [
-  "[ 0/1 → 1/5 | note:c2 s:bd n:6 ]",
-  "[ 1/5 → 2/5 | note:g2 s:sawtooth ]",
-  "[ 2/5 → 3/5 | note:g2 s:triangle ]",
+  "[ 0/1 → 1/5 | note:c2 s:triangle ]",
+  "[ 1/5 → 2/5 | note:g2 s:bd n:6 ]",
+  "[ 2/5 → 3/5 | note:g2 s:sawtooth ]",
   "[ 3/5 → 4/5 | note:d2 s:bd n:6 ]",
   "[ 4/5 → 1/1 | note:f1 s:sawtooth ]",
-  "[ 1/1 → 6/5 | note:c2 s:bd n:6 ]",
-  "[ 6/5 → 7/5 | note:g2 s:sawtooth ]",
-  "[ 7/5 → 8/5 | note:g2 s:triangle ]",
+  "[ 1/1 → 6/5 | note:c2 s:triangle ]",
+  "[ 6/5 → 7/5 | note:g2 s:bd n:6 ]",
+  "[ 7/5 → 8/5 | note:g2 s:sawtooth ]",
   "[ 8/5 → 9/5 | note:d2 s:bd n:6 ]",
   "[ 9/5 → 2/1 | note:f1 s:sawtooth ]",
-  "[ 2/1 → 11/5 | note:c2 s:bd n:6 ]",
-  "[ 11/5 → 12/5 | note:g2 s:sawtooth ]",
-  "[ 12/5 → 13/5 | note:g2 s:triangle ]",
+  "[ 2/1 → 11/5 | note:c2 s:triangle ]",
+  "[ 11/5 → 12/5 | note:g2 s:bd n:6 ]",
+  "[ 12/5 → 13/5 | note:g2 s:sawtooth ]",
   "[ 13/5 → 14/5 | note:d2 s:bd n:6 ]",
   "[ 14/5 → 3/1 | note:f1 s:sawtooth ]",
-  "[ 3/1 → 16/5 | note:c2 s:bd n:6 ]",
-  "[ 16/5 → 17/5 | note:g2 s:sawtooth ]",
-  "[ 17/5 → 18/5 | note:g2 s:triangle ]",
+  "[ 3/1 → 16/5 | note:c2 s:triangle ]",
+  "[ 16/5 → 17/5 | note:g2 s:bd n:6 ]",
+  "[ 17/5 → 18/5 | note:g2 s:sawtooth ]",
   "[ 18/5 → 19/5 | note:d2 s:bd n:6 ]",
   "[ 19/5 → 4/1 | note:f1 s:sawtooth ]",
 ]
@@ -1943,133 +1943,133 @@ exports[`runs examples > example "contract" example index 0 1`] = `
 
 exports[`runs examples > example "cosine" example index 0 1`] = `
 [
-  "[ 0/1 → 1/16 | note:Eb4 ]",
+  "[ 0/1 → 1/16 | note:D4 ]",
   "[ 0/1 → 1/16 | note:D5 ]",
-  "[ 1/16 → 1/8 | note:Ab4 ]",
-  "[ 1/16 → 1/8 | note:C5 ]",
-  "[ 1/8 → 3/16 | note:C5 ]",
-  "[ 1/8 → 3/16 | note:Ab4 ]",
+  "[ 1/16 → 1/8 | note:G4 ]",
+  "[ 1/16 → 1/8 | note:D5 ]",
+  "[ 1/8 → 3/16 | note:Bb4 ]",
+  "[ 1/8 → 3/16 | note:Bb4 ]",
   "[ 3/16 → 1/4 | note:D5 ]",
-  "[ 3/16 → 1/4 | note:Eb4 ]",
+  "[ 3/16 → 1/4 | note:G4 ]",
   "[ 1/4 → 5/16 | note:D5 ]",
-  "[ 1/4 → 5/16 | note:C4 ]",
-  "[ 5/16 → 3/8 | note:C5 ]",
-  "[ 5/16 → 3/8 | note:G3 ]",
-  "[ 3/8 → 7/16 | note:Ab4 ]",
-  "[ 3/8 → 7/16 | note:Eb3 ]",
-  "[ 7/16 → 1/2 | note:Eb4 ]",
+  "[ 1/4 → 5/16 | note:D4 ]",
+  "[ 5/16 → 3/8 | note:D5 ]",
+  "[ 5/16 → 3/8 | note:Ab3 ]",
+  "[ 3/8 → 7/16 | note:Bb4 ]",
+  "[ 3/8 → 7/16 | note:F3 ]",
+  "[ 7/16 → 1/2 | note:G4 ]",
   "[ 7/16 → 1/2 | note:D3 ]",
-  "[ 1/2 → 9/16 | note:C4 ]",
-  "[ 1/2 → 9/16 | note:D3 ]",
-  "[ 9/16 → 5/8 | note:G3 ]",
-  "[ 9/16 → 5/8 | note:Eb3 ]",
-  "[ 5/8 → 11/16 | note:Eb3 ]",
-  "[ 5/8 → 11/16 | note:G3 ]",
+  "[ 1/2 → 9/16 | note:D4 ]",
+  "[ 1/2 → 9/16 | note:C3 ]",
+  "[ 9/16 → 5/8 | note:Ab3 ]",
+  "[ 9/16 → 5/8 | note:D3 ]",
+  "[ 5/8 → 11/16 | note:F3 ]",
+  "[ 5/8 → 11/16 | note:F3 ]",
   "[ 11/16 → 3/4 | note:D3 ]",
-  "[ 11/16 → 3/4 | note:C4 ]",
-  "[ 3/4 → 13/16 | note:D3 ]",
-  "[ 3/4 → 13/16 | note:Eb4 ]",
-  "[ 13/16 → 7/8 | note:Eb3 ]",
-  "[ 13/16 → 7/8 | note:Ab4 ]",
-  "[ 7/8 → 15/16 | note:G3 ]",
-  "[ 7/8 → 15/16 | note:C5 ]",
-  "[ 15/16 → 1/1 | note:C4 ]",
+  "[ 11/16 → 3/4 | note:Ab3 ]",
+  "[ 3/4 → 13/16 | note:C3 ]",
+  "[ 3/4 → 13/16 | note:D4 ]",
+  "[ 13/16 → 7/8 | note:D3 ]",
+  "[ 13/16 → 7/8 | note:G4 ]",
+  "[ 7/8 → 15/16 | note:F3 ]",
+  "[ 7/8 → 15/16 | note:Bb4 ]",
+  "[ 15/16 → 1/1 | note:Ab3 ]",
   "[ 15/16 → 1/1 | note:D5 ]",
-  "[ 1/1 → 17/16 | note:Eb4 ]",
+  "[ 1/1 → 17/16 | note:D4 ]",
   "[ 1/1 → 17/16 | note:D5 ]",
-  "[ 17/16 → 9/8 | note:Ab4 ]",
-  "[ 17/16 → 9/8 | note:C5 ]",
-  "[ 9/8 → 19/16 | note:C5 ]",
-  "[ 9/8 → 19/16 | note:Ab4 ]",
+  "[ 17/16 → 9/8 | note:G4 ]",
+  "[ 17/16 → 9/8 | note:D5 ]",
+  "[ 9/8 → 19/16 | note:Bb4 ]",
+  "[ 9/8 → 19/16 | note:Bb4 ]",
   "[ 19/16 → 5/4 | note:D5 ]",
-  "[ 19/16 → 5/4 | note:Eb4 ]",
+  "[ 19/16 → 5/4 | note:G4 ]",
   "[ 5/4 → 21/16 | note:D5 ]",
-  "[ 5/4 → 21/16 | note:C4 ]",
-  "[ 21/16 → 11/8 | note:C5 ]",
-  "[ 21/16 → 11/8 | note:G3 ]",
-  "[ 11/8 → 23/16 | note:Ab4 ]",
-  "[ 11/8 → 23/16 | note:Eb3 ]",
-  "[ 23/16 → 3/2 | note:Eb4 ]",
+  "[ 5/4 → 21/16 | note:D4 ]",
+  "[ 21/16 → 11/8 | note:D5 ]",
+  "[ 21/16 → 11/8 | note:Ab3 ]",
+  "[ 11/8 → 23/16 | note:Bb4 ]",
+  "[ 11/8 → 23/16 | note:F3 ]",
+  "[ 23/16 → 3/2 | note:G4 ]",
   "[ 23/16 → 3/2 | note:D3 ]",
-  "[ 3/2 → 25/16 | note:C4 ]",
-  "[ 3/2 → 25/16 | note:D3 ]",
-  "[ 25/16 → 13/8 | note:G3 ]",
-  "[ 25/16 → 13/8 | note:Eb3 ]",
-  "[ 13/8 → 27/16 | note:Eb3 ]",
-  "[ 13/8 → 27/16 | note:G3 ]",
+  "[ 3/2 → 25/16 | note:D4 ]",
+  "[ 3/2 → 25/16 | note:C3 ]",
+  "[ 25/16 → 13/8 | note:Ab3 ]",
+  "[ 25/16 → 13/8 | note:D3 ]",
+  "[ 13/8 → 27/16 | note:F3 ]",
+  "[ 13/8 → 27/16 | note:F3 ]",
   "[ 27/16 → 7/4 | note:D3 ]",
-  "[ 27/16 → 7/4 | note:C4 ]",
-  "[ 7/4 → 29/16 | note:D3 ]",
-  "[ 7/4 → 29/16 | note:Eb4 ]",
-  "[ 29/16 → 15/8 | note:Eb3 ]",
-  "[ 29/16 → 15/8 | note:Ab4 ]",
-  "[ 15/8 → 31/16 | note:G3 ]",
-  "[ 15/8 → 31/16 | note:C5 ]",
-  "[ 31/16 → 2/1 | note:C4 ]",
+  "[ 27/16 → 7/4 | note:Ab3 ]",
+  "[ 7/4 → 29/16 | note:C3 ]",
+  "[ 7/4 → 29/16 | note:D4 ]",
+  "[ 29/16 → 15/8 | note:D3 ]",
+  "[ 29/16 → 15/8 | note:G4 ]",
+  "[ 15/8 → 31/16 | note:F3 ]",
+  "[ 15/8 → 31/16 | note:Bb4 ]",
+  "[ 31/16 → 2/1 | note:Ab3 ]",
   "[ 31/16 → 2/1 | note:D5 ]",
-  "[ 2/1 → 33/16 | note:Eb4 ]",
+  "[ 2/1 → 33/16 | note:D4 ]",
   "[ 2/1 → 33/16 | note:D5 ]",
-  "[ 33/16 → 17/8 | note:Ab4 ]",
-  "[ 33/16 → 17/8 | note:C5 ]",
-  "[ 17/8 → 35/16 | note:C5 ]",
-  "[ 17/8 → 35/16 | note:Ab4 ]",
+  "[ 33/16 → 17/8 | note:G4 ]",
+  "[ 33/16 → 17/8 | note:D5 ]",
+  "[ 17/8 → 35/16 | note:Bb4 ]",
+  "[ 17/8 → 35/16 | note:Bb4 ]",
   "[ 35/16 → 9/4 | note:D5 ]",
-  "[ 35/16 → 9/4 | note:Eb4 ]",
+  "[ 35/16 → 9/4 | note:G4 ]",
   "[ 9/4 → 37/16 | note:D5 ]",
-  "[ 9/4 → 37/16 | note:C4 ]",
-  "[ 37/16 → 19/8 | note:C5 ]",
-  "[ 37/16 → 19/8 | note:G3 ]",
-  "[ 19/8 → 39/16 | note:Ab4 ]",
-  "[ 19/8 → 39/16 | note:Eb3 ]",
-  "[ 39/16 → 5/2 | note:Eb4 ]",
+  "[ 9/4 → 37/16 | note:D4 ]",
+  "[ 37/16 → 19/8 | note:D5 ]",
+  "[ 37/16 → 19/8 | note:Ab3 ]",
+  "[ 19/8 → 39/16 | note:Bb4 ]",
+  "[ 19/8 → 39/16 | note:F3 ]",
+  "[ 39/16 → 5/2 | note:G4 ]",
   "[ 39/16 → 5/2 | note:D3 ]",
-  "[ 5/2 → 41/16 | note:C4 ]",
-  "[ 5/2 → 41/16 | note:D3 ]",
-  "[ 41/16 → 21/8 | note:G3 ]",
-  "[ 41/16 → 21/8 | note:Eb3 ]",
-  "[ 21/8 → 43/16 | note:Eb3 ]",
-  "[ 21/8 → 43/16 | note:G3 ]",
+  "[ 5/2 → 41/16 | note:D4 ]",
+  "[ 5/2 → 41/16 | note:C3 ]",
+  "[ 41/16 → 21/8 | note:Ab3 ]",
+  "[ 41/16 → 21/8 | note:D3 ]",
+  "[ 21/8 → 43/16 | note:F3 ]",
+  "[ 21/8 → 43/16 | note:F3 ]",
   "[ 43/16 → 11/4 | note:D3 ]",
-  "[ 43/16 → 11/4 | note:C4 ]",
-  "[ 11/4 → 45/16 | note:D3 ]",
-  "[ 11/4 → 45/16 | note:Eb4 ]",
-  "[ 45/16 → 23/8 | note:Eb3 ]",
-  "[ 45/16 → 23/8 | note:Ab4 ]",
-  "[ 23/8 → 47/16 | note:G3 ]",
-  "[ 23/8 → 47/16 | note:C5 ]",
-  "[ 47/16 → 3/1 | note:C4 ]",
+  "[ 43/16 → 11/4 | note:Ab3 ]",
+  "[ 11/4 → 45/16 | note:C3 ]",
+  "[ 11/4 → 45/16 | note:D4 ]",
+  "[ 45/16 → 23/8 | note:D3 ]",
+  "[ 45/16 → 23/8 | note:G4 ]",
+  "[ 23/8 → 47/16 | note:F3 ]",
+  "[ 23/8 → 47/16 | note:Bb4 ]",
+  "[ 47/16 → 3/1 | note:Ab3 ]",
   "[ 47/16 → 3/1 | note:D5 ]",
-  "[ 3/1 → 49/16 | note:Eb4 ]",
+  "[ 3/1 → 49/16 | note:D4 ]",
   "[ 3/1 → 49/16 | note:D5 ]",
-  "[ 49/16 → 25/8 | note:Ab4 ]",
-  "[ 49/16 → 25/8 | note:C5 ]",
-  "[ 25/8 → 51/16 | note:C5 ]",
-  "[ 25/8 → 51/16 | note:Ab4 ]",
+  "[ 49/16 → 25/8 | note:G4 ]",
+  "[ 49/16 → 25/8 | note:D5 ]",
+  "[ 25/8 → 51/16 | note:Bb4 ]",
+  "[ 25/8 → 51/16 | note:Bb4 ]",
   "[ 51/16 → 13/4 | note:D5 ]",
-  "[ 51/16 → 13/4 | note:Eb4 ]",
+  "[ 51/16 → 13/4 | note:G4 ]",
   "[ 13/4 → 53/16 | note:D5 ]",
-  "[ 13/4 → 53/16 | note:C4 ]",
-  "[ 53/16 → 27/8 | note:C5 ]",
-  "[ 53/16 → 27/8 | note:G3 ]",
-  "[ 27/8 → 55/16 | note:Ab4 ]",
-  "[ 27/8 → 55/16 | note:Eb3 ]",
-  "[ 55/16 → 7/2 | note:Eb4 ]",
+  "[ 13/4 → 53/16 | note:D4 ]",
+  "[ 53/16 → 27/8 | note:D5 ]",
+  "[ 53/16 → 27/8 | note:Ab3 ]",
+  "[ 27/8 → 55/16 | note:Bb4 ]",
+  "[ 27/8 → 55/16 | note:F3 ]",
+  "[ 55/16 → 7/2 | note:G4 ]",
   "[ 55/16 → 7/2 | note:D3 ]",
-  "[ 7/2 → 57/16 | note:C4 ]",
-  "[ 7/2 → 57/16 | note:D3 ]",
-  "[ 57/16 → 29/8 | note:G3 ]",
-  "[ 57/16 → 29/8 | note:Eb3 ]",
-  "[ 29/8 → 59/16 | note:Eb3 ]",
-  "[ 29/8 → 59/16 | note:G3 ]",
+  "[ 7/2 → 57/16 | note:D4 ]",
+  "[ 7/2 → 57/16 | note:C3 ]",
+  "[ 57/16 → 29/8 | note:Ab3 ]",
+  "[ 57/16 → 29/8 | note:D3 ]",
+  "[ 29/8 → 59/16 | note:F3 ]",
+  "[ 29/8 → 59/16 | note:F3 ]",
   "[ 59/16 → 15/4 | note:D3 ]",
-  "[ 59/16 → 15/4 | note:C4 ]",
-  "[ 15/4 → 61/16 | note:D3 ]",
-  "[ 15/4 → 61/16 | note:Eb4 ]",
-  "[ 61/16 → 31/8 | note:Eb3 ]",
-  "[ 61/16 → 31/8 | note:Ab4 ]",
-  "[ 31/8 → 63/16 | note:G3 ]",
-  "[ 31/8 → 63/16 | note:C5 ]",
-  "[ 63/16 → 4/1 | note:C4 ]",
+  "[ 59/16 → 15/4 | note:Ab3 ]",
+  "[ 15/4 → 61/16 | note:C3 ]",
+  "[ 15/4 → 61/16 | note:D4 ]",
+  "[ 61/16 → 31/8 | note:D3 ]",
+  "[ 61/16 → 31/8 | note:G4 ]",
+  "[ 31/8 → 63/16 | note:F3 ]",
+  "[ 31/8 → 63/16 | note:Bb4 ]",
+  "[ 63/16 → 4/1 | note:Ab3 ]",
   "[ 63/16 → 4/1 | note:D5 ]",
 ]
 `;
@@ -2194,96 +2194,63 @@ exports[`runs examples > example "decay" example index 0 1`] = `
 
 exports[`runs examples > example "degrade" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh ]",
-  "[ 1/4 → 3/8 | s:hh ]",
-  "[ 3/4 → 7/8 | s:hh ]",
-  "[ 7/8 → 1/1 | s:hh ]",
+  "[ 1/8 → 1/4 | s:hh ]",
   "[ 1/1 → 9/8 | s:hh ]",
-  "[ 11/8 → 3/2 | s:hh ]",
+  "[ 9/8 → 5/4 | s:hh ]",
+  "[ 5/4 → 11/8 | s:hh ]",
+  "[ 3/2 → 13/8 | s:hh ]",
   "[ 15/8 → 2/1 | s:hh ]",
-  "[ 9/4 → 19/8 | s:hh ]",
-  "[ 5/2 → 21/8 | s:hh ]",
-  "[ 21/8 → 11/4 | s:hh ]",
+  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 17/8 → 9/4 | s:hh ]",
+  "[ 19/8 → 5/2 | s:hh ]",
   "[ 11/4 → 23/8 | s:hh ]",
-  "[ 25/8 → 13/4 | s:hh ]",
-  "[ 27/8 → 7/2 | s:hh ]",
-  "[ 7/2 → 29/8 | s:hh ]",
+  "[ 13/4 → 27/8 | s:hh ]",
   "[ 29/8 → 15/4 | s:hh ]",
+  "[ 15/4 → 31/8 | s:hh ]",
+  "[ 31/8 → 4/1 | s:hh ]",
 ]
 `;
 
 exports[`runs examples > example "degrade" example index 1 1`] = `
 [
   "[ 1/8 → 1/4 | s:hh ]",
+  "[ 1/4 → 3/8 | s:hh ]",
   "[ 3/4 → 7/8 | s:hh ]",
   "[ 1/1 → 9/8 | s:hh ]",
   "[ 9/8 → 5/4 | s:hh ]",
-  "[ 5/4 → 11/8 | s:hh ]",
-  "[ 11/8 → 3/2 | s:hh ]",
+  "[ 13/8 → 7/4 | s:hh ]",
   "[ 7/4 → 15/8 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 17/8 → 9/4 | s:hh ]",
   "[ 9/4 → 19/8 | s:hh ]",
-  "[ 21/8 → 11/4 | s:hh ]",
+  "[ 5/2 → 21/8 | s:hh ]",
   "[ 11/4 → 23/8 | s:hh ]",
+  "[ 3/1 → 25/8 | s:hh ]",
   "[ 25/8 → 13/4 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh ]",
-  "[ 27/8 → 7/2 | s:hh ]",
   "[ 15/4 → 31/8 | s:hh ]",
 ]
 `;
 
 exports[`runs examples > example "degradeBy" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh ]",
-  "[ 1/8 → 1/4 | s:hh ]",
-  "[ 1/4 → 3/8 | s:hh ]",
-  "[ 3/8 → 1/2 | s:hh ]",
-  "[ 5/8 → 3/4 | s:hh ]",
-  "[ 3/4 → 7/8 | s:hh ]",
-  "[ 7/8 → 1/1 | s:hh ]",
-  "[ 1/1 → 9/8 | s:hh ]",
-  "[ 11/8 → 3/2 | s:hh ]",
-  "[ 13/8 → 7/4 | s:hh ]",
-  "[ 7/4 → 15/8 | s:hh ]",
-  "[ 15/8 → 2/1 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh ]",
-  "[ 9/4 → 19/8 | s:hh ]",
-  "[ 5/2 → 21/8 | s:hh ]",
-  "[ 21/8 → 11/4 | s:hh ]",
-  "[ 11/4 → 23/8 | s:hh ]",
-  "[ 23/8 → 3/1 | s:hh ]",
-  "[ 25/8 → 13/4 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh ]",
-  "[ 27/8 → 7/2 | s:hh ]",
-  "[ 7/2 → 29/8 | s:hh ]",
-  "[ 29/8 → 15/4 | s:hh ]",
-  "[ 31/8 → 4/1 | s:hh ]",
-]
-`;
-
-exports[`runs examples > example "degradeBy" example index 1 1`] = `
-[
-  "[ 0/1 → 1/8 | s:hh ]",
   "[ 1/8 → 1/4 | s:hh ]",
   "[ 1/4 → 3/8 | s:hh ]",
   "[ 3/8 → 1/2 | s:hh ]",
   "[ 1/2 → 5/8 | s:hh ]",
-  "[ 5/8 → 3/4 | s:hh ]",
-  "[ 3/4 → 7/8 | s:hh ]",
   "[ 7/8 → 1/1 | s:hh ]",
   "[ 1/1 → 9/8 | s:hh ]",
   "[ 9/8 → 5/4 | s:hh ]",
   "[ 5/4 → 11/8 | s:hh ]",
-  "[ 11/8 → 3/2 | s:hh ]",
   "[ 3/2 → 13/8 | s:hh ]",
   "[ 13/8 → 7/4 | s:hh ]",
   "[ 7/4 → 15/8 | s:hh ]",
+  "[ 15/8 → 2/1 | s:hh ]",
   "[ 2/1 → 17/8 | s:hh ]",
   "[ 17/8 → 9/4 | s:hh ]",
   "[ 9/4 → 19/8 | s:hh ]",
-  "[ 21/8 → 11/4 | s:hh ]",
+  "[ 19/8 → 5/2 | s:hh ]",
+  "[ 5/2 → 21/8 | s:hh ]",
   "[ 11/4 → 23/8 | s:hh ]",
-  "[ 23/8 → 3/1 | s:hh ]",
+  "[ 3/1 → 25/8 | s:hh ]",
   "[ 25/8 → 13/4 | s:hh ]",
   "[ 13/4 → 27/8 | s:hh ]",
   "[ 27/8 → 7/2 | s:hh ]",
@@ -2294,6 +2261,34 @@ exports[`runs examples > example "degradeBy" example index 1 1`] = `
 ]
 `;
 
+exports[`runs examples > example "degradeBy" example index 1 1`] = `
+[
+  "[ 1/8 → 1/4 | s:hh ]",
+  "[ 1/4 → 3/8 | s:hh ]",
+  "[ 3/8 → 1/2 | s:hh ]",
+  "[ 3/4 → 7/8 | s:hh ]",
+  "[ 1/1 → 9/8 | s:hh ]",
+  "[ 9/8 → 5/4 | s:hh ]",
+  "[ 11/8 → 3/2 | s:hh ]",
+  "[ 13/8 → 7/4 | s:hh ]",
+  "[ 7/4 → 15/8 | s:hh ]",
+  "[ 15/8 → 2/1 | s:hh ]",
+  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 17/8 → 9/4 | s:hh ]",
+  "[ 9/4 → 19/8 | s:hh ]",
+  "[ 19/8 → 5/2 | s:hh ]",
+  "[ 5/2 → 21/8 | s:hh ]",
+  "[ 21/8 → 11/4 | s:hh ]",
+  "[ 11/4 → 23/8 | s:hh ]",
+  "[ 3/1 → 25/8 | s:hh ]",
+  "[ 25/8 → 13/4 | s:hh ]",
+  "[ 27/8 → 7/2 | s:hh ]",
+  "[ 7/2 → 29/8 | s:hh ]",
+  "[ 29/8 → 15/4 | s:hh ]",
+  "[ 15/4 → 31/8 | s:hh ]",
+]
+`;
+
 exports[`runs examples > example "delay" example index 0 1`] = `
 [
   "[ 0/1 → 1/2 | s:bd delay:0 ]",
@@ -4187,34 +4182,34 @@ exports[`runs examples > example "invert" example index 0 1`] = `
 
 exports[`runs examples > example "irand" example index 0 1`] = `
 [
-  "[ 0/1 → 1/4 | note:Ab3 ]",
-  "[ 1/4 → 3/8 | note:G3 ]",
-  "[ 3/8 → 1/2 | note:Eb3 ]",
-  "[ 1/2 → 3/4 | note:D3 ]",
-  "[ 3/4 → 5/6 | note:Ab3 ]",
-  "[ 5/6 → 11/12 | note:F3 ]",
-  "[ 11/12 → 1/1 | note:Ab3 ]",
-  "[ 1/1 → 5/4 | note:Ab3 ]",
-  "[ 5/4 → 11/8 | note:C3 ]",
-  "[ 11/8 → 3/2 | note:G3 ]",
-  "[ 3/2 → 7/4 | note:F3 ]",
-  "[ 7/4 → 11/6 | note:Ab3 ]",
-  "[ 11/6 → 23/12 | note:G3 ]",
-  "[ 23/12 → 2/1 | note:F3 ]",
+  "[ 0/1 → 1/4 | note:C3 ]",
+  "[ 1/4 → 3/8 | note:Eb3 ]",
+  "[ 3/8 → 1/2 | note:F3 ]",
+  "[ 1/2 → 3/4 | note:Eb3 ]",
+  "[ 3/4 → 5/6 | note:D3 ]",
+  "[ 5/6 → 11/12 | note:C3 ]",
+  "[ 11/12 → 1/1 | note:C4 ]",
+  "[ 1/1 → 5/4 | note:G3 ]",
+  "[ 5/4 → 11/8 | note:Ab3 ]",
+  "[ 11/8 → 3/2 | note:D3 ]",
+  "[ 3/2 → 7/4 | note:G3 ]",
+  "[ 7/4 → 11/6 | note:D3 ]",
+  "[ 11/6 → 23/12 | note:Bb3 ]",
+  "[ 23/12 → 2/1 | note:Eb3 ]",
   "[ 2/1 → 9/4 | note:C4 ]",
-  "[ 9/4 → 19/8 | note:Ab3 ]",
-  "[ 19/8 → 5/2 | note:D3 ]",
-  "[ 5/2 → 11/4 | note:D3 ]",
-  "[ 11/4 → 17/6 | note:C3 ]",
-  "[ 17/6 → 35/12 | note:C3 ]",
-  "[ 35/12 → 3/1 | note:G3 ]",
-  "[ 3/1 → 13/4 | note:Eb3 ]",
-  "[ 13/4 → 27/8 | note:Eb3 ]",
-  "[ 27/8 → 7/2 | note:Bb3 ]",
-  "[ 7/2 → 15/4 | note:C4 ]",
-  "[ 15/4 → 23/6 | note:D3 ]",
+  "[ 9/4 → 19/8 | note:Eb3 ]",
+  "[ 19/8 → 5/2 | note:Bb3 ]",
+  "[ 5/2 → 11/4 | note:F3 ]",
+  "[ 11/4 → 17/6 | note:Ab3 ]",
+  "[ 17/6 → 35/12 | note:D3 ]",
+  "[ 35/12 → 3/1 | note:F3 ]",
+  "[ 3/1 → 13/4 | note:D3 ]",
+  "[ 13/4 → 27/8 | note:C4 ]",
+  "[ 27/8 → 7/2 | note:F3 ]",
+  "[ 7/2 → 15/4 | note:F3 ]",
+  "[ 15/4 → 23/6 | note:Bb3 ]",
   "[ 23/6 → 47/12 | note:Ab3 ]",
-  "[ 47/12 → 4/1 | note:Eb3 ]",
+  "[ 47/12 → 4/1 | note:C3 ]",
 ]
 `;
 
@@ -5329,13 +5324,13 @@ exports[`runs examples > example "off" example index 0 1`] = `
 
 exports[`runs examples > example "often" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh ]",
+  "[ 0/1 → 1/8 | s:hh speed:0.5 ]",
   "[ 1/8 → 1/4 | s:hh speed:0.5 ]",
   "[ 1/4 → 3/8 | s:hh speed:0.5 ]",
   "[ 3/8 → 1/2 | s:hh speed:0.5 ]",
   "[ 1/2 → 5/8 | s:hh speed:0.5 ]",
   "[ 5/8 → 3/4 | s:hh speed:0.5 ]",
-  "[ 3/4 → 7/8 | s:hh ]",
+  "[ 3/4 → 7/8 | s:hh speed:0.5 ]",
   "[ 7/8 → 1/1 | s:hh speed:0.5 ]",
   "[ 1/1 → 9/8 | s:hh speed:0.5 ]",
   "[ 9/8 → 5/4 | s:hh speed:0.5 ]",
@@ -5344,22 +5339,22 @@ exports[`runs examples > example "often" example index 0 1`] = `
   "[ 3/2 → 13/8 | s:hh speed:0.5 ]",
   "[ 13/8 → 7/4 | s:hh speed:0.5 ]",
   "[ 7/4 → 15/8 | s:hh speed:0.5 ]",
-  "[ 15/8 → 2/1 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh speed:0.5 ]",
-  "[ 17/8 → 9/4 | s:hh speed:0.5 ]",
+  "[ 15/8 → 2/1 | s:hh speed:0.5 ]",
+  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 17/8 → 9/4 | s:hh ]",
   "[ 9/4 → 19/8 | s:hh speed:0.5 ]",
-  "[ 19/8 → 5/2 | s:hh speed:0.5 ]",
+  "[ 19/8 → 5/2 | s:hh ]",
   "[ 5/2 → 21/8 | s:hh speed:0.5 ]",
   "[ 21/8 → 11/4 | s:hh speed:0.5 ]",
-  "[ 11/4 → 23/8 | s:hh ]",
+  "[ 11/4 → 23/8 | s:hh speed:0.5 ]",
   "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
   "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
-  "[ 25/8 → 13/4 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh speed:0.5 ]",
-  "[ 27/8 → 7/2 | s:hh ]",
-  "[ 7/2 → 29/8 | s:hh ]",
+  "[ 25/8 → 13/4 | s:hh speed:0.5 ]",
+  "[ 13/4 → 27/8 | s:hh ]",
+  "[ 27/8 → 7/2 | s:hh speed:0.5 ]",
+  "[ 7/2 → 29/8 | s:hh speed:0.5 ]",
   "[ 29/8 → 15/4 | s:hh ]",
-  "[ 15/4 → 31/8 | s:hh speed:0.5 ]",
+  "[ 15/4 → 31/8 | s:hh ]",
   "[ 31/8 → 4/1 | s:hh speed:0.5 ]",
 ]
 `;
@@ -5477,34 +5472,34 @@ exports[`runs examples > example "pan" example index 0 1`] = `
 
 exports[`runs examples > example "pan" example index 1 1`] = `
 [
-  "[ 0/1 → 1/8 | s:bd pan:0.5975451610080641 ]",
-  "[ 1/8 → 1/4 | s:rim pan:0.7777851165098011 ]",
-  "[ 1/4 → 3/8 | s:sd pan:0.9157348061512727 ]",
-  "[ 3/8 → 1/2 | s:rim pan:0.9903926402016152 ]",
-  "[ 1/2 → 5/8 | s:bd pan:0.9903926402016152 ]",
-  "[ 3/4 → 7/8 | s:cp pan:0.7777851165098011 ]",
-  "[ 7/8 → 1/1 | s:rim pan:0.5975451610080643 ]",
-  "[ 1/1 → 9/8 | s:bd pan:0.4024548389919358 ]",
-  "[ 9/8 → 5/4 | s:rim pan:0.22221488349019902 ]",
-  "[ 5/4 → 11/8 | s:sd pan:0.08426519384872738 ]",
-  "[ 11/8 → 3/2 | s:rim pan:0.00960735979838484 ]",
-  "[ 3/2 → 13/8 | s:bd pan:0.009607359798384785 ]",
-  "[ 7/4 → 15/8 | s:cp pan:0.2222148834901989 ]",
-  "[ 15/8 → 2/1 | s:rim pan:0.4024548389919356 ]",
-  "[ 2/1 → 17/8 | s:bd pan:0.5975451610080641 ]",
-  "[ 17/8 → 9/4 | s:rim pan:0.7777851165098009 ]",
-  "[ 9/4 → 19/8 | s:sd pan:0.9157348061512727 ]",
-  "[ 19/8 → 5/2 | s:rim pan:0.9903926402016152 ]",
-  "[ 5/2 → 21/8 | s:bd pan:0.9903926402016153 ]",
-  "[ 11/4 → 23/8 | s:cp pan:0.7777851165098011 ]",
-  "[ 23/8 → 3/1 | s:rim pan:0.597545161008064 ]",
-  "[ 3/1 → 25/8 | s:bd pan:0.40245483899193635 ]",
-  "[ 25/8 → 13/4 | s:rim pan:0.22221488349019913 ]",
-  "[ 13/4 → 27/8 | s:sd pan:0.08426519384872744 ]",
-  "[ 27/8 → 7/2 | s:rim pan:0.00960735979838473 ]",
-  "[ 7/2 → 29/8 | s:bd pan:0.009607359798384674 ]",
-  "[ 15/4 → 31/8 | s:cp pan:0.2222148834901988 ]",
-  "[ 31/8 → 4/1 | s:rim pan:0.40245483899193596 ]",
+  "[ 0/1 → 1/8 | s:bd pan:0.5 ]",
+  "[ 1/8 → 1/4 | s:rim pan:0.6913417161825449 ]",
+  "[ 1/4 → 3/8 | s:sd pan:0.8535533905932737 ]",
+  "[ 3/8 → 1/2 | s:rim pan:0.9619397662556434 ]",
+  "[ 1/2 → 5/8 | s:bd pan:1 ]",
+  "[ 3/4 → 7/8 | s:cp pan:0.8535533905932737 ]",
+  "[ 7/8 → 1/1 | s:rim pan:0.6913417161825449 ]",
+  "[ 1/1 → 9/8 | s:bd pan:0.5000000000000001 ]",
+  "[ 9/8 → 5/4 | s:rim pan:0.3086582838174552 ]",
+  "[ 5/4 → 11/8 | s:sd pan:0.14644660940672627 ]",
+  "[ 11/8 → 3/2 | s:rim pan:0.03806023374435674 ]",
+  "[ 3/2 → 13/8 | s:bd pan:0 ]",
+  "[ 7/4 → 15/8 | s:cp pan:0.14644660940672616 ]",
+  "[ 15/8 → 2/1 | s:rim pan:0.3086582838174548 ]",
+  "[ 2/1 → 17/8 | s:bd pan:0.4999999999999999 ]",
+  "[ 17/8 → 9/4 | s:rim pan:0.691341716182545 ]",
+  "[ 9/4 → 19/8 | s:sd pan:0.8535533905932737 ]",
+  "[ 19/8 → 5/2 | s:rim pan:0.9619397662556433 ]",
+  "[ 5/2 → 21/8 | s:bd pan:1 ]",
+  "[ 11/4 → 23/8 | s:cp pan:0.8535533905932742 ]",
+  "[ 23/8 → 3/1 | s:rim pan:0.6913417161825453 ]",
+  "[ 3/1 → 25/8 | s:bd pan:0.5000000000000002 ]",
+  "[ 25/8 → 13/4 | s:rim pan:0.3086582838174551 ]",
+  "[ 13/4 → 27/8 | s:sd pan:0.14644660940672605 ]",
+  "[ 27/8 → 7/2 | s:rim pan:0.0380602337443568 ]",
+  "[ 7/2 → 29/8 | s:bd pan:0 ]",
+  "[ 15/4 → 31/8 | s:cp pan:0.14644660940672577 ]",
+  "[ 31/8 → 4/1 | s:rim pan:0.3086582838174547 ]",
 ]
 `;
 
@@ -5575,54 +5570,54 @@ exports[`runs examples > example "penv" example index 0 1`] = `
 
 exports[`runs examples > example "perlin" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh cutoff:508.6435442640109 ]",
-  "[ 0/1 → 1/4 | s:bd cutoff:562.5486401770559 ]",
-  "[ 1/8 → 1/4 | s:hh cutoff:690.0316279333581 ]",
-  "[ 1/4 → 3/8 | s:hh cutoff:1201.405408354283 ]",
-  "[ 1/4 → 1/2 | s:bd cutoff:1572.364329119182 ]",
-  "[ 3/8 → 1/2 | s:hh cutoff:1996.3885173346725 ]",
-  "[ 1/2 → 5/8 | s:hh cutoff:2900.177720919636 ]",
-  "[ 1/2 → 3/4 | s:bd cutoff:3324.2019091351267 ]",
-  "[ 5/8 → 3/4 | s:hh cutoff:3695.1608299000254 ]",
-  "[ 3/4 → 7/8 | s:hh cutoff:4206.53461032095 ]",
-  "[ 3/4 → 1/1 | s:bd cutoff:4334.017598077253 ]",
-  "[ 7/8 → 1/1 | s:hh cutoff:4387.922693990298 ]",
-  "[ 1/1 → 9/8 | s:hh cutoff:4403.886201269024 ]",
-  "[ 1/1 → 5/4 | s:bd cutoff:4449.536839055554 ]",
-  "[ 9/8 → 5/4 | s:hh cutoff:4557.49842597853 ]",
-  "[ 5/4 → 11/8 | s:hh cutoff:4990.565816512096 ]",
-  "[ 5/4 → 3/2 | s:bd cutoff:5304.71999875931 ]",
-  "[ 11/8 → 3/2 | s:hh cutoff:5663.813592807962 ]",
-  "[ 3/2 → 13/8 | s:hh cutoff:6429.206045402573 ]",
-  "[ 3/2 → 7/4 | s:bd cutoff:6788.299639451225 ]",
-  "[ 13/8 → 7/4 | s:hh cutoff:7102.453821698439 ]",
-  "[ 7/4 → 15/8 | s:hh cutoff:7535.521212232005 ]",
-  "[ 7/4 → 2/1 | s:bd cutoff:7643.482799154981 ]",
-  "[ 15/8 → 2/1 | s:hh cutoff:7689.133436941511 ]",
-  "[ 2/1 → 17/8 | s:hh cutoff:7684.104898681083 ]",
-  "[ 2/1 → 9/4 | s:bd cutoff:7607.093996059746 ]",
-  "[ 17/8 → 9/4 | s:hh cutoff:7424.966874501246 ]",
-  "[ 9/4 → 19/8 | s:hh cutoff:6694.398535088075 ]",
-  "[ 9/4 → 5/2 | s:bd cutoff:6164.432289046601 ]",
-  "[ 19/8 → 5/2 | s:hh cutoff:5558.654951771659 ]",
-  "[ 5/2 → 21/8 | s:hh cutoff:4267.466778026956 ]",
-  "[ 5/2 → 11/4 | s:bd cutoff:3661.6894407520135 ]",
-  "[ 21/8 → 11/4 | s:hh cutoff:3131.72319471054 ]",
-  "[ 11/4 → 23/8 | s:hh cutoff:2401.154855297369 ]",
-  "[ 11/4 → 3/1 | s:bd cutoff:2219.0277337388693 ]",
-  "[ 23/8 → 3/1 | s:hh cutoff:2142.016831117532 ]",
-  "[ 3/1 → 25/8 | s:hh cutoff:2127.4000061807656 ]",
-  "[ 3/1 → 13/4 | s:bd cutoff:2113.2537022102156 ]",
-  "[ 25/8 → 13/4 | s:hh cutoff:2079.7983662103743 ]",
-  "[ 13/4 → 27/8 | s:hh cutoff:1945.5986431995261 ]",
-  "[ 13/4 → 7/2 | s:bd cutoff:1848.2479648482126 ]",
-  "[ 27/8 → 7/2 | s:hh cutoff:1736.9713785485014 ]",
-  "[ 7/2 → 29/8 | s:hh cutoff:1499.7901513814345 ]",
-  "[ 7/2 → 15/4 | s:bd cutoff:1388.5135650817233 ]",
-  "[ 29/8 → 15/4 | s:hh cutoff:1291.1628867304098 ]",
-  "[ 15/4 → 31/8 | s:hh cutoff:1156.9631637195616 ]",
-  "[ 15/4 → 4/1 | s:bd cutoff:1123.5078277197204 ]",
-  "[ 31/8 → 4/1 | s:hh cutoff:1109.36152374917 ]",
+  "[ 0/1 → 1/8 | s:hh cutoff:500 ]",
+  "[ 0/1 → 1/4 | s:bd cutoff:500 ]",
+  "[ 1/8 → 1/4 | s:hh cutoff:562.5486401770559 ]",
+  "[ 1/4 → 3/8 | s:hh cutoff:903.3554895067937 ]",
+  "[ 1/4 → 1/2 | s:bd cutoff:903.3554895067937 ]",
+  "[ 3/8 → 1/2 | s:hh cutoff:1572.364329119182 ]",
+  "[ 1/2 → 5/8 | s:hh cutoff:2448.2831191271544 ]",
+  "[ 1/2 → 3/4 | s:bd cutoff:2448.2831191271544 ]",
+  "[ 5/8 → 3/4 | s:hh cutoff:3324.2019091351267 ]",
+  "[ 3/4 → 7/8 | s:hh cutoff:3993.210748747515 ]",
+  "[ 3/4 → 1/1 | s:bd cutoff:3993.210748747515 ]",
+  "[ 7/8 → 1/1 | s:hh cutoff:4334.017598077253 ]",
+  "[ 1/1 → 9/8 | s:hh cutoff:4396.566238254309 ]",
+  "[ 1/1 → 5/4 | s:bd cutoff:4396.566238254309 ]",
+  "[ 9/8 → 5/4 | s:hh cutoff:4449.536839055554 ]",
+  "[ 5/4 → 11/8 | s:hh cutoff:4738.156120227359 ]",
+  "[ 5/4 → 3/2 | s:bd cutoff:4738.156120227359 ]",
+  "[ 11/8 → 3/2 | s:hh cutoff:5304.71999875931 ]",
+  "[ 3/2 → 13/8 | s:hh cutoff:6046.5098191052675 ]",
+  "[ 3/2 → 7/4 | s:bd cutoff:6046.5098191052675 ]",
+  "[ 13/8 → 7/4 | s:hh cutoff:6788.299639451225 ]",
+  "[ 7/4 → 15/8 | s:hh cutoff:7354.863517983176 ]",
+  "[ 7/4 → 2/1 | s:bd cutoff:7354.863517983176 ]",
+  "[ 15/8 → 2/1 | s:hh cutoff:7643.482799154981 ]",
+  "[ 2/1 → 17/8 | s:hh cutoff:7696.453399956226 ]",
+  "[ 2/1 → 9/4 | s:bd cutoff:7696.453399956226 ]",
+  "[ 17/8 → 9/4 | s:hh cutoff:7607.093996059746 ]",
+  "[ 9/4 → 19/8 | s:hh cutoff:7120.204164182724 ]",
+  "[ 9/4 → 5/2 | s:bd cutoff:7120.204164182724 ]",
+  "[ 19/8 → 5/2 | s:hh cutoff:6164.432289046601 ]",
+  "[ 5/2 → 21/8 | s:hh cutoff:4913.0608648993075 ]",
+  "[ 5/2 → 11/4 | s:bd cutoff:4913.0608648993075 ]",
+  "[ 21/8 → 11/4 | s:hh cutoff:3661.6894407520135 ]",
+  "[ 11/4 → 23/8 | s:hh cutoff:2705.9175656158914 ]",
+  "[ 11/4 → 3/1 | s:bd cutoff:2705.9175656158914 ]",
+  "[ 23/8 → 3/1 | s:hh cutoff:2219.0277337388693 ]",
+  "[ 3/1 → 25/8 | s:hh cutoff:2129.6683298423886 ]",
+  "[ 3/1 → 13/4 | s:bd cutoff:2129.6683298423886 ]",
+  "[ 25/8 → 13/4 | s:hh cutoff:2113.2537022102156 ]",
+  "[ 13/4 → 27/8 | s:hh cutoff:2023.8158261763601 ]",
+  "[ 13/4 → 7/2 | s:bd cutoff:2023.8158261763601 ]",
+  "[ 27/8 → 7/2 | s:hh cutoff:1848.2479648482126 ]",
+  "[ 7/2 → 29/8 | s:hh cutoff:1618.380764964968 ]",
+  "[ 7/2 → 15/4 | s:bd cutoff:1618.380764964968 ]",
+  "[ 29/8 → 15/4 | s:hh cutoff:1388.5135650817233 ]",
+  "[ 15/4 → 31/8 | s:hh cutoff:1212.9457037535758 ]",
+  "[ 15/4 → 4/1 | s:bd cutoff:1212.9457037535758 ]",
+  "[ 31/8 → 4/1 | s:hh cutoff:1123.5078277197204 ]",
 ]
 `;
 
@@ -6210,249 +6205,249 @@ exports[`runs examples > example "queryArc" example index 0 1`] = `[]`;
 
 exports[`runs examples > example "rand" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh cutoff:6819.558387622237 ]",
-  "[ 0/1 → 1/4 | s:bd cutoff:5639.116775244474 ]",
-  "[ 1/8 → 1/4 | s:hh cutoff:2004.9930522218347 ]",
-  "[ 1/4 → 3/8 | s:hh cutoff:4756.746228784323 ]",
-  "[ 1/4 → 1/2 | s:bd cutoff:3510.4438681155443 ]",
-  "[ 3/8 → 1/2 | s:hh cutoff:2761.9159147143364 ]",
-  "[ 1/2 → 5/8 | s:hh cutoff:1729.9383850768209 ]",
-  "[ 1/2 → 3/4 | s:bd cutoff:1517.2690078616142 ]",
-  "[ 5/8 → 3/4 | s:hh cutoff:3566.087872721255 ]",
-  "[ 3/4 → 7/8 | s:hh cutoff:6137.170048430562 ]",
-  "[ 3/4 → 1/1 | s:bd cutoff:3482.2331061586738 ]",
-  "[ 7/8 → 1/1 | s:hh cutoff:5772.184181958437 ]",
-  "[ 1/1 → 9/8 | s:hh cutoff:4614.746660925448 ]",
-  "[ 1/1 → 5/4 | s:bd cutoff:5543.671359308064 ]",
-  "[ 9/8 → 5/4 | s:hh cutoff:1113.0998814478517 ]",
-  "[ 5/4 → 11/8 | s:hh cutoff:1107.8209029510617 ]",
-  "[ 5/4 → 3/2 | s:bd cutoff:1871.028139255941 ]",
-  "[ 11/8 → 3/2 | s:hh cutoff:4310.953143984079 ]",
-  "[ 3/2 → 13/8 | s:hh cutoff:1781.9574819877744 ]",
-  "[ 3/2 → 7/4 | s:bd cutoff:4225.660336203873 ]",
-  "[ 13/8 → 7/4 | s:hh cutoff:2719.179579988122 ]",
-  "[ 7/4 → 15/8 | s:hh cutoff:4021.807170473039 ]",
-  "[ 7/4 → 2/1 | s:bd cutoff:4959.178843535483 ]",
-  "[ 15/8 → 2/1 | s:hh cutoff:7004.444479942322 ]",
-  "[ 2/1 → 17/8 | s:hh cutoff:2993.588156066835 ]",
-  "[ 2/1 → 9/4 | s:bd cutoff:7275.427204556763 ]",
-  "[ 17/8 → 9/4 | s:hh cutoff:777.5058569386601 ]",
-  "[ 9/4 → 19/8 | s:hh cutoff:5487.157452851534 ]",
-  "[ 9/4 → 5/2 | s:bd cutoff:6773.7998040392995 ]",
-  "[ 19/8 → 5/2 | s:hh cutoff:1567.3565790057182 ]",
-  "[ 5/2 → 21/8 | s:hh cutoff:5051.505241543055 ]",
-  "[ 5/2 → 11/4 | s:bd cutoff:1701.4511320739985 ]",
-  "[ 21/8 → 11/4 | s:hh cutoff:4535.26512440294 ]",
-  "[ 11/4 → 23/8 | s:hh cutoff:7184.7053822129965 ]",
-  "[ 11/4 → 3/1 | s:bd cutoff:621.9062879681587 ]",
-  "[ 23/8 → 3/1 | s:hh cutoff:2622.942116111517 ]",
-  "[ 3/1 → 25/8 | s:hh cutoff:593.8915926963091 ]",
-  "[ 3/1 → 13/4 | s:bd cutoff:3074.329087510705 ]",
-  "[ 25/8 → 13/4 | s:hh cutoff:7293.169681914151 ]",
-  "[ 13/4 → 27/8 | s:hh cutoff:2926.4930188655853 ]",
-  "[ 13/4 → 7/2 | s:bd cutoff:3565.1885084807873 ]",
-  "[ 27/8 → 7/2 | s:hh cutoff:6317.582858726382 ]",
-  "[ 7/2 → 29/8 | s:hh cutoff:6600.099291652441 ]",
-  "[ 7/2 → 15/4 | s:bd cutoff:7543.614340946078 ]",
-  "[ 29/8 → 15/4 | s:hh cutoff:7798.531164415181 ]",
-  "[ 15/4 → 31/8 | s:hh cutoff:1256.6942740231752 ]",
-  "[ 15/4 → 4/1 | s:bd cutoff:6021.249040029943 ]",
-  "[ 31/8 → 4/1 | s:hh cutoff:2792.31677018106 ]",
+  "[ 0/1 → 1/8 | s:hh cutoff:500 ]",
+  "[ 0/1 → 1/4 | s:bd cutoff:500 ]",
+  "[ 1/8 → 1/4 | s:hh cutoff:5639.116775244474 ]",
+  "[ 1/4 → 3/8 | s:hh cutoff:3273.1976890936494 ]",
+  "[ 1/4 → 1/2 | s:bd cutoff:3273.1976890936494 ]",
+  "[ 3/8 → 1/2 | s:hh cutoff:3510.4438681155443 ]",
+  "[ 1/2 → 5/8 | s:hh cutoff:2453.604621812701 ]",
+  "[ 1/2 → 3/4 | s:bd cutoff:2453.604621812701 ]",
+  "[ 5/8 → 3/4 | s:hh cutoff:1517.2690078616142 ]",
+  "[ 3/4 → 7/8 | s:hh cutoff:1968.6986012384295 ]",
+  "[ 3/4 → 1/1 | s:bd cutoff:1968.6986012384295 ]",
+  "[ 7/8 → 1/1 | s:hh cutoff:3482.2331061586738 ]",
+  "[ 1/1 → 9/8 | s:hh cutoff:4396.566238254309 ]",
+  "[ 1/1 → 5/4 | s:bd cutoff:4396.566238254309 ]",
+  "[ 9/8 → 5/4 | s:hh cutoff:5543.671359308064 ]",
+  "[ 5/4 → 11/8 | s:hh cutoff:5965.461523272097 ]",
+  "[ 5/4 → 3/2 | s:bd cutoff:5965.461523272097 ]",
+  "[ 11/8 → 3/2 | s:hh cutoff:1871.028139255941 ]",
+  "[ 3/2 → 13/8 | s:hh cutoff:5063.060561195016 ]",
+  "[ 3/2 → 7/4 | s:bd cutoff:5063.060561195016 ]",
+  "[ 13/8 → 7/4 | s:hh cutoff:4225.660336203873 ]",
+  "[ 7/4 → 15/8 | s:hh cutoff:2035.5342207476497 ]",
+  "[ 7/4 → 2/1 | s:bd cutoff:2035.5342207476497 ]",
+  "[ 15/8 → 2/1 | s:hh cutoff:4959.178843535483 ]",
+  "[ 2/1 → 17/8 | s:hh cutoff:7696.453399956226 ]",
+  "[ 2/1 → 9/4 | s:bd cutoff:7696.453399956226 ]",
+  "[ 17/8 → 9/4 | s:hh cutoff:7275.427204556763 ]",
+  "[ 9/4 → 19/8 | s:hh cutoff:3091.1188358440995 ]",
+  "[ 9/4 → 5/2 | s:bd cutoff:3091.1188358440995 ]",
+  "[ 19/8 → 5/2 | s:hh cutoff:6773.7998040392995 ]",
+  "[ 5/2 → 21/8 | s:hh cutoff:3939.620556309819 ]",
+  "[ 5/2 → 11/4 | s:bd cutoff:3939.620556309819 ]",
+  "[ 21/8 → 11/4 | s:hh cutoff:1701.4511320739985 ]",
+  "[ 11/4 → 23/8 | s:hh cutoff:5249.245778657496 ]",
+  "[ 11/4 → 3/1 | s:bd cutoff:5249.245778657496 ]",
+  "[ 23/8 → 3/1 | s:hh cutoff:621.9062879681587 ]",
+  "[ 3/1 → 25/8 | s:hh cutoff:2129.6683298423886 ]",
+  "[ 3/1 → 13/4 | s:bd cutoff:2129.6683298423886 ]",
+  "[ 25/8 → 13/4 | s:hh cutoff:3074.329087510705 ]",
+  "[ 13/4 → 27/8 | s:hh cutoff:7942.738036625087 ]",
+  "[ 13/4 → 7/2 | s:bd cutoff:7942.738036625087 ]",
+  "[ 27/8 → 7/2 | s:hh cutoff:3565.1885084807873 ]",
+  "[ 7/2 → 29/8 | s:hh cutoff:3574.6161099523306 ]",
+  "[ 7/2 → 15/4 | s:bd cutoff:3574.6161099523306 ]",
+  "[ 29/8 → 15/4 | s:hh cutoff:7543.614340946078 ]",
+  "[ 15/4 → 31/8 | s:hh cutoff:6591.254916973412 ]",
+  "[ 15/4 → 4/1 | s:bd cutoff:6591.254916973412 ]",
+  "[ 31/8 → 4/1 | s:hh cutoff:6021.249040029943 ]",
 ]
 `;
 
 exports[`runs examples > example "range" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh cutoff:2919.6960066389074 ]",
-  "[ 0/1 → 1/4 | s:bd cutoff:3487.436867076458 ]",
-  "[ 1/8 → 1/4 | s:hh cutoff:3866.789181894752 ]",
-  "[ 1/4 → 3/8 | s:hh cutoff:3866.789181894752 ]",
-  "[ 1/4 → 1/2 | s:sd cutoff:3487.436867076458 ]",
-  "[ 3/8 → 1/2 | s:hh cutoff:2919.6960066389074 ]",
-  "[ 1/2 → 5/8 | s:hh cutoff:1580.3039933610933 ]",
-  "[ 1/2 → 3/4 | s:bd cutoff:1012.563132923542 ]",
-  "[ 5/8 → 3/4 | s:hh cutoff:633.2108181052486 ]",
-  "[ 3/4 → 7/8 | s:hh cutoff:633.2108181052483 ]",
-  "[ 3/4 → 1/1 | s:sd cutoff:1012.5631329235415 ]",
-  "[ 7/8 → 1/1 | s:hh cutoff:1580.303993361092 ]",
-  "[ 1/1 → 9/8 | s:hh cutoff:2919.6960066389074 ]",
-  "[ 1/1 → 5/4 | s:bd cutoff:3487.436867076458 ]",
-  "[ 9/8 → 5/4 | s:hh cutoff:3866.7891818947514 ]",
-  "[ 5/4 → 11/8 | s:hh cutoff:3866.789181894752 ]",
-  "[ 5/4 → 3/2 | s:sd cutoff:3487.4368670764597 ]",
-  "[ 11/8 → 3/2 | s:hh cutoff:2919.6960066389083 ]",
-  "[ 3/2 → 13/8 | s:hh cutoff:1580.3039933610928 ]",
-  "[ 3/2 → 7/4 | s:bd cutoff:1012.5631329235412 ]",
-  "[ 13/8 → 7/4 | s:hh cutoff:633.2108181052488 ]",
-  "[ 7/4 → 15/8 | s:hh cutoff:633.2108181052482 ]",
-  "[ 7/4 → 2/1 | s:sd cutoff:1012.5631329235401 ]",
-  "[ 15/8 → 2/1 | s:hh cutoff:1580.3039933610914 ]",
-  "[ 2/1 → 17/8 | s:hh cutoff:2919.696006638907 ]",
-  "[ 2/1 → 9/4 | s:bd cutoff:3487.436867076459 ]",
-  "[ 17/8 → 9/4 | s:hh cutoff:3866.7891818947514 ]",
-  "[ 9/4 → 19/8 | s:hh cutoff:3866.7891818947523 ]",
-  "[ 9/4 → 5/2 | s:sd cutoff:3487.43686707646 ]",
-  "[ 19/8 → 5/2 | s:hh cutoff:2919.696006638909 ]",
-  "[ 5/2 → 21/8 | s:hh cutoff:1580.303993361096 ]",
-  "[ 5/2 → 11/4 | s:bd cutoff:1012.5631329235415 ]",
-  "[ 21/8 → 11/4 | s:hh cutoff:633.210818105249 ]",
-  "[ 11/4 → 23/8 | s:hh cutoff:633.210818105248 ]",
-  "[ 11/4 → 3/1 | s:sd cutoff:1012.5631329235398 ]",
-  "[ 23/8 → 3/1 | s:hh cutoff:1580.303993361094 ]",
-  "[ 3/1 → 25/8 | s:hh cutoff:2919.696006638904 ]",
-  "[ 3/1 → 13/4 | s:bd cutoff:3487.4368670764584 ]",
-  "[ 25/8 → 13/4 | s:hh cutoff:3866.789181894751 ]",
-  "[ 13/4 → 27/8 | s:hh cutoff:3866.7891818947523 ]",
-  "[ 13/4 → 7/2 | s:sd cutoff:3487.43686707646 ]",
-  "[ 27/8 → 7/2 | s:hh cutoff:2919.6960066389065 ]",
-  "[ 7/2 → 29/8 | s:hh cutoff:1580.3039933610964 ]",
-  "[ 7/2 → 15/4 | s:bd cutoff:1012.5631329235417 ]",
-  "[ 29/8 → 15/4 | s:hh cutoff:633.210818105249 ]",
-  "[ 15/4 → 31/8 | s:hh cutoff:633.2108181052479 ]",
-  "[ 15/4 → 4/1 | s:sd cutoff:1012.5631329235396 ]",
-  "[ 31/8 → 4/1 | s:hh cutoff:1580.3039933610935 ]",
+  "[ 0/1 → 1/8 | s:hh cutoff:2250 ]",
+  "[ 0/1 → 1/4 | s:bd cutoff:2250 ]",
+  "[ 1/8 → 1/4 | s:hh cutoff:3487.436867076458 ]",
+  "[ 1/4 → 3/8 | s:hh cutoff:4000 ]",
+  "[ 1/4 → 1/2 | s:sd cutoff:4000 ]",
+  "[ 3/8 → 1/2 | s:hh cutoff:3487.436867076458 ]",
+  "[ 1/2 → 5/8 | s:hh cutoff:2250.0000000000005 ]",
+  "[ 1/2 → 3/4 | s:bd cutoff:2250.0000000000005 ]",
+  "[ 5/8 → 3/4 | s:hh cutoff:1012.563132923542 ]",
+  "[ 3/4 → 7/8 | s:hh cutoff:500 ]",
+  "[ 3/4 → 1/1 | s:sd cutoff:500 ]",
+  "[ 7/8 → 1/1 | s:hh cutoff:1012.5631329235415 ]",
+  "[ 1/1 → 9/8 | s:hh cutoff:2249.9999999999995 ]",
+  "[ 1/1 → 5/4 | s:bd cutoff:2249.9999999999995 ]",
+  "[ 9/8 → 5/4 | s:hh cutoff:3487.436867076458 ]",
+  "[ 5/4 → 11/8 | s:hh cutoff:4000 ]",
+  "[ 5/4 → 3/2 | s:sd cutoff:4000 ]",
+  "[ 11/8 → 3/2 | s:hh cutoff:3487.4368670764597 ]",
+  "[ 3/2 → 13/8 | s:hh cutoff:2250.000000000001 ]",
+  "[ 3/2 → 7/4 | s:bd cutoff:2250.000000000001 ]",
+  "[ 13/8 → 7/4 | s:hh cutoff:1012.5631329235412 ]",
+  "[ 7/4 → 15/8 | s:hh cutoff:500 ]",
+  "[ 7/4 → 2/1 | s:sd cutoff:500 ]",
+  "[ 15/8 → 2/1 | s:hh cutoff:1012.5631329235401 ]",
+  "[ 2/1 → 17/8 | s:hh cutoff:2249.999999999999 ]",
+  "[ 2/1 → 9/4 | s:bd cutoff:2249.999999999999 ]",
+  "[ 17/8 → 9/4 | s:hh cutoff:3487.436867076459 ]",
+  "[ 9/4 → 19/8 | s:hh cutoff:4000 ]",
+  "[ 9/4 → 5/2 | s:sd cutoff:4000 ]",
+  "[ 19/8 → 5/2 | s:hh cutoff:3487.43686707646 ]",
+  "[ 5/2 → 21/8 | s:hh cutoff:2250.000000000001 ]",
+  "[ 5/2 → 11/4 | s:bd cutoff:2250.000000000001 ]",
+  "[ 21/8 → 11/4 | s:hh cutoff:1012.5631329235415 ]",
+  "[ 11/4 → 23/8 | s:hh cutoff:500 ]",
+  "[ 11/4 → 3/1 | s:sd cutoff:500 ]",
+  "[ 23/8 → 3/1 | s:hh cutoff:1012.5631329235398 ]",
+  "[ 3/1 → 25/8 | s:hh cutoff:2249.9999999999986 ]",
+  "[ 3/1 → 13/4 | s:bd cutoff:2249.9999999999986 ]",
+  "[ 25/8 → 13/4 | s:hh cutoff:3487.4368670764584 ]",
+  "[ 13/4 → 27/8 | s:hh cutoff:4000 ]",
+  "[ 13/4 → 7/2 | s:sd cutoff:4000 ]",
+  "[ 27/8 → 7/2 | s:hh cutoff:3487.43686707646 ]",
+  "[ 7/2 → 29/8 | s:hh cutoff:2250.000000000002 ]",
+  "[ 7/2 → 15/4 | s:bd cutoff:2250.000000000002 ]",
+  "[ 29/8 → 15/4 | s:hh cutoff:1012.5631329235417 ]",
+  "[ 15/4 → 31/8 | s:hh cutoff:500 ]",
+  "[ 15/4 → 4/1 | s:sd cutoff:500 ]",
+  "[ 31/8 → 4/1 | s:hh cutoff:1012.5631329235396 ]",
 ]
 `;
 
 exports[`runs examples > example "range2" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh cutoff:2919.6960066389074 ]",
-  "[ 0/1 → 1/4 | s:bd cutoff:3487.436867076458 ]",
-  "[ 1/8 → 1/4 | s:hh cutoff:3866.789181894752 ]",
-  "[ 1/4 → 3/8 | s:hh cutoff:3866.789181894752 ]",
-  "[ 1/4 → 1/2 | s:sd cutoff:3487.436867076458 ]",
-  "[ 3/8 → 1/2 | s:hh cutoff:2919.6960066389074 ]",
-  "[ 1/2 → 5/8 | s:hh cutoff:1580.3039933610933 ]",
-  "[ 1/2 → 3/4 | s:bd cutoff:1012.563132923542 ]",
-  "[ 5/8 → 3/4 | s:hh cutoff:633.2108181052486 ]",
-  "[ 3/4 → 7/8 | s:hh cutoff:633.2108181052483 ]",
-  "[ 3/4 → 1/1 | s:sd cutoff:1012.5631329235415 ]",
-  "[ 7/8 → 1/1 | s:hh cutoff:1580.303993361092 ]",
-  "[ 1/1 → 9/8 | s:hh cutoff:2919.6960066389074 ]",
-  "[ 1/1 → 5/4 | s:bd cutoff:3487.436867076458 ]",
-  "[ 9/8 → 5/4 | s:hh cutoff:3866.7891818947514 ]",
-  "[ 5/4 → 11/8 | s:hh cutoff:3866.789181894752 ]",
-  "[ 5/4 → 3/2 | s:sd cutoff:3487.4368670764597 ]",
-  "[ 11/8 → 3/2 | s:hh cutoff:2919.6960066389083 ]",
-  "[ 3/2 → 13/8 | s:hh cutoff:1580.3039933610928 ]",
-  "[ 3/2 → 7/4 | s:bd cutoff:1012.5631329235412 ]",
-  "[ 13/8 → 7/4 | s:hh cutoff:633.2108181052488 ]",
-  "[ 7/4 → 15/8 | s:hh cutoff:633.2108181052482 ]",
-  "[ 7/4 → 2/1 | s:sd cutoff:1012.5631329235401 ]",
-  "[ 15/8 → 2/1 | s:hh cutoff:1580.3039933610914 ]",
-  "[ 2/1 → 17/8 | s:hh cutoff:2919.696006638907 ]",
-  "[ 2/1 → 9/4 | s:bd cutoff:3487.436867076459 ]",
-  "[ 17/8 → 9/4 | s:hh cutoff:3866.7891818947514 ]",
-  "[ 9/4 → 19/8 | s:hh cutoff:3866.7891818947523 ]",
-  "[ 9/4 → 5/2 | s:sd cutoff:3487.43686707646 ]",
-  "[ 19/8 → 5/2 | s:hh cutoff:2919.696006638909 ]",
-  "[ 5/2 → 21/8 | s:hh cutoff:1580.303993361096 ]",
-  "[ 5/2 → 11/4 | s:bd cutoff:1012.5631329235415 ]",
-  "[ 21/8 → 11/4 | s:hh cutoff:633.210818105249 ]",
-  "[ 11/4 → 23/8 | s:hh cutoff:633.210818105248 ]",
-  "[ 11/4 → 3/1 | s:sd cutoff:1012.5631329235398 ]",
-  "[ 23/8 → 3/1 | s:hh cutoff:1580.303993361094 ]",
-  "[ 3/1 → 25/8 | s:hh cutoff:2919.696006638904 ]",
-  "[ 3/1 → 13/4 | s:bd cutoff:3487.4368670764584 ]",
-  "[ 25/8 → 13/4 | s:hh cutoff:3866.789181894751 ]",
-  "[ 13/4 → 27/8 | s:hh cutoff:3866.7891818947523 ]",
-  "[ 13/4 → 7/2 | s:sd cutoff:3487.43686707646 ]",
-  "[ 27/8 → 7/2 | s:hh cutoff:2919.6960066389065 ]",
-  "[ 7/2 → 29/8 | s:hh cutoff:1580.3039933610964 ]",
-  "[ 7/2 → 15/4 | s:bd cutoff:1012.5631329235417 ]",
-  "[ 29/8 → 15/4 | s:hh cutoff:633.210818105249 ]",
-  "[ 15/4 → 31/8 | s:hh cutoff:633.2108181052479 ]",
-  "[ 15/4 → 4/1 | s:sd cutoff:1012.5631329235396 ]",
-  "[ 31/8 → 4/1 | s:hh cutoff:1580.3039933610935 ]",
+  "[ 0/1 → 1/8 | s:hh cutoff:2250 ]",
+  "[ 0/1 → 1/4 | s:bd cutoff:2250 ]",
+  "[ 1/8 → 1/4 | s:hh cutoff:3487.436867076458 ]",
+  "[ 1/4 → 3/8 | s:hh cutoff:4000 ]",
+  "[ 1/4 → 1/2 | s:sd cutoff:4000 ]",
+  "[ 3/8 → 1/2 | s:hh cutoff:3487.436867076458 ]",
+  "[ 1/2 → 5/8 | s:hh cutoff:2250.0000000000005 ]",
+  "[ 1/2 → 3/4 | s:bd cutoff:2250.0000000000005 ]",
+  "[ 5/8 → 3/4 | s:hh cutoff:1012.563132923542 ]",
+  "[ 3/4 → 7/8 | s:hh cutoff:500 ]",
+  "[ 3/4 → 1/1 | s:sd cutoff:500 ]",
+  "[ 7/8 → 1/1 | s:hh cutoff:1012.5631329235415 ]",
+  "[ 1/1 → 9/8 | s:hh cutoff:2249.9999999999995 ]",
+  "[ 1/1 → 5/4 | s:bd cutoff:2249.9999999999995 ]",
+  "[ 9/8 → 5/4 | s:hh cutoff:3487.436867076458 ]",
+  "[ 5/4 → 11/8 | s:hh cutoff:4000 ]",
+  "[ 5/4 → 3/2 | s:sd cutoff:4000 ]",
+  "[ 11/8 → 3/2 | s:hh cutoff:3487.4368670764597 ]",
+  "[ 3/2 → 13/8 | s:hh cutoff:2250.000000000001 ]",
+  "[ 3/2 → 7/4 | s:bd cutoff:2250.000000000001 ]",
+  "[ 13/8 → 7/4 | s:hh cutoff:1012.5631329235412 ]",
+  "[ 7/4 → 15/8 | s:hh cutoff:500 ]",
+  "[ 7/4 → 2/1 | s:sd cutoff:500 ]",
+  "[ 15/8 → 2/1 | s:hh cutoff:1012.5631329235401 ]",
+  "[ 2/1 → 17/8 | s:hh cutoff:2249.999999999999 ]",
+  "[ 2/1 → 9/4 | s:bd cutoff:2249.999999999999 ]",
+  "[ 17/8 → 9/4 | s:hh cutoff:3487.436867076459 ]",
+  "[ 9/4 → 19/8 | s:hh cutoff:4000 ]",
+  "[ 9/4 → 5/2 | s:sd cutoff:4000 ]",
+  "[ 19/8 → 5/2 | s:hh cutoff:3487.43686707646 ]",
+  "[ 5/2 → 21/8 | s:hh cutoff:2250.000000000001 ]",
+  "[ 5/2 → 11/4 | s:bd cutoff:2250.000000000001 ]",
+  "[ 21/8 → 11/4 | s:hh cutoff:1012.5631329235415 ]",
+  "[ 11/4 → 23/8 | s:hh cutoff:500 ]",
+  "[ 11/4 → 3/1 | s:sd cutoff:500 ]",
+  "[ 23/8 → 3/1 | s:hh cutoff:1012.5631329235398 ]",
+  "[ 3/1 → 25/8 | s:hh cutoff:2249.9999999999986 ]",
+  "[ 3/1 → 13/4 | s:bd cutoff:2249.9999999999986 ]",
+  "[ 25/8 → 13/4 | s:hh cutoff:3487.4368670764584 ]",
+  "[ 13/4 → 27/8 | s:hh cutoff:4000 ]",
+  "[ 13/4 → 7/2 | s:sd cutoff:4000 ]",
+  "[ 27/8 → 7/2 | s:hh cutoff:3487.43686707646 ]",
+  "[ 7/2 → 29/8 | s:hh cutoff:2250.000000000002 ]",
+  "[ 7/2 → 15/4 | s:bd cutoff:2250.000000000002 ]",
+  "[ 29/8 → 15/4 | s:hh cutoff:1012.5631329235417 ]",
+  "[ 15/4 → 31/8 | s:hh cutoff:500 ]",
+  "[ 15/4 → 4/1 | s:sd cutoff:500 ]",
+  "[ 31/8 → 4/1 | s:hh cutoff:1012.5631329235396 ]",
 ]
 `;
 
 exports[`runs examples > example "rangex" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh cutoff:2105.2990079237074 ]",
-  "[ 0/1 → 1/4 | s:bd cutoff:2949.8879833392693 ]",
-  "[ 1/8 → 1/4 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 1/4 → 3/8 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 1/4 → 1/2 | s:sd cutoff:2949.8879833392693 ]",
-  "[ 3/8 → 1/2 | s:hh cutoff:2105.2990079237074 ]",
-  "[ 1/2 → 5/8 | s:hh cutoff:949.9838229499019 ]",
-  "[ 1/2 → 3/4 | s:bd cutoff:677.9918462313955 ]",
-  "[ 5/8 → 3/4 | s:hh cutoff:541.1801022058963 ]",
-  "[ 3/4 → 7/8 | s:hh cutoff:541.1801022058963 ]",
-  "[ 3/4 → 1/1 | s:sd cutoff:677.9918462313955 ]",
-  "[ 7/8 → 1/1 | s:hh cutoff:949.9838229499011 ]",
-  "[ 1/1 → 9/8 | s:hh cutoff:2105.2990079237093 ]",
-  "[ 1/1 → 5/4 | s:bd cutoff:2949.8879833392693 ]",
-  "[ 9/8 → 5/4 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 5/4 → 11/8 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 5/4 → 3/2 | s:sd cutoff:2949.887983339272 ]",
-  "[ 11/8 → 3/2 | s:hh cutoff:2105.2990079237093 ]",
-  "[ 3/2 → 13/8 | s:hh cutoff:949.9838229499019 ]",
-  "[ 3/2 → 7/4 | s:bd cutoff:677.9918462313955 ]",
-  "[ 13/8 → 7/4 | s:hh cutoff:541.1801022058963 ]",
-  "[ 7/4 → 15/8 | s:hh cutoff:541.1801022058963 ]",
-  "[ 7/4 → 2/1 | s:sd cutoff:677.9918462313948 ]",
-  "[ 15/8 → 2/1 | s:hh cutoff:949.9838229499011 ]",
-  "[ 2/1 → 17/8 | s:hh cutoff:2105.2990079237074 ]",
-  "[ 2/1 → 9/4 | s:bd cutoff:2949.8879833392693 ]",
-  "[ 17/8 → 9/4 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 9/4 → 19/8 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 9/4 → 5/2 | s:sd cutoff:2949.887983339272 ]",
-  "[ 19/8 → 5/2 | s:hh cutoff:2105.2990079237093 ]",
-  "[ 5/2 → 21/8 | s:hh cutoff:949.9838229499036 ]",
-  "[ 5/2 → 11/4 | s:bd cutoff:677.9918462313955 ]",
-  "[ 21/8 → 11/4 | s:hh cutoff:541.1801022058963 ]",
-  "[ 11/4 → 23/8 | s:hh cutoff:541.1801022058963 ]",
-  "[ 11/4 → 3/1 | s:sd cutoff:677.9918462313948 ]",
-  "[ 23/8 → 3/1 | s:hh cutoff:949.9838229499028 ]",
-  "[ 3/1 → 25/8 | s:hh cutoff:2105.2990079237034 ]",
-  "[ 3/1 → 13/4 | s:bd cutoff:2949.8879833392693 ]",
-  "[ 25/8 → 13/4 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 13/4 → 27/8 | s:hh cutoff:3695.6273740439246 ]",
-  "[ 13/4 → 7/2 | s:sd cutoff:2949.887983339272 ]",
-  "[ 27/8 → 7/2 | s:hh cutoff:2105.2990079237074 ]",
-  "[ 7/2 → 29/8 | s:hh cutoff:949.9838229499036 ]",
-  "[ 7/2 → 15/4 | s:bd cutoff:677.9918462313955 ]",
-  "[ 29/8 → 15/4 | s:hh cutoff:541.1801022058963 ]",
-  "[ 15/4 → 31/8 | s:hh cutoff:541.1801022058959 ]",
-  "[ 15/4 → 4/1 | s:sd cutoff:677.9918462313948 ]",
-  "[ 31/8 → 4/1 | s:hh cutoff:949.9838229499019 ]",
+  "[ 0/1 → 1/8 | s:hh cutoff:1414.2135623730946 ]",
+  "[ 0/1 → 1/4 | s:bd cutoff:1414.2135623730946 ]",
+  "[ 1/8 → 1/4 | s:hh cutoff:2949.8879833392693 ]",
+  "[ 1/4 → 3/8 | s:hh cutoff:3999.9999999999995 ]",
+  "[ 1/4 → 1/2 | s:sd cutoff:3999.9999999999995 ]",
+  "[ 3/8 → 1/2 | s:hh cutoff:2949.8879833392693 ]",
+  "[ 1/2 → 5/8 | s:hh cutoff:1414.2135623730946 ]",
+  "[ 1/2 → 3/4 | s:bd cutoff:1414.2135623730946 ]",
+  "[ 5/8 → 3/4 | s:hh cutoff:677.9918462313955 ]",
+  "[ 3/4 → 7/8 | s:hh cutoff:499.99999999999983 ]",
+  "[ 3/4 → 1/1 | s:sd cutoff:499.99999999999983 ]",
+  "[ 7/8 → 1/1 | s:hh cutoff:677.9918462313955 ]",
+  "[ 1/1 → 9/8 | s:hh cutoff:1414.2135623730946 ]",
+  "[ 1/1 → 5/4 | s:bd cutoff:1414.2135623730946 ]",
+  "[ 9/8 → 5/4 | s:hh cutoff:2949.8879833392693 ]",
+  "[ 5/4 → 11/8 | s:hh cutoff:3999.9999999999995 ]",
+  "[ 5/4 → 3/2 | s:sd cutoff:3999.9999999999995 ]",
+  "[ 11/8 → 3/2 | s:hh cutoff:2949.887983339272 ]",
+  "[ 3/2 → 13/8 | s:hh cutoff:1414.213562373096 ]",
+  "[ 3/2 → 7/4 | s:bd cutoff:1414.213562373096 ]",
+  "[ 13/8 → 7/4 | s:hh cutoff:677.9918462313955 ]",
+  "[ 7/4 → 15/8 | s:hh cutoff:499.99999999999983 ]",
+  "[ 7/4 → 2/1 | s:sd cutoff:499.99999999999983 ]",
+  "[ 15/8 → 2/1 | s:hh cutoff:677.9918462313948 ]",
+  "[ 2/1 → 17/8 | s:hh cutoff:1414.2135623730935 ]",
+  "[ 2/1 → 9/4 | s:bd cutoff:1414.2135623730935 ]",
+  "[ 17/8 → 9/4 | s:hh cutoff:2949.8879833392693 ]",
+  "[ 9/4 → 19/8 | s:hh cutoff:3999.9999999999995 ]",
+  "[ 9/4 → 5/2 | s:sd cutoff:3999.9999999999995 ]",
+  "[ 19/8 → 5/2 | s:hh cutoff:2949.887983339272 ]",
+  "[ 5/2 → 21/8 | s:hh cutoff:1414.213562373096 ]",
+  "[ 5/2 → 11/4 | s:bd cutoff:1414.213562373096 ]",
+  "[ 21/8 → 11/4 | s:hh cutoff:677.9918462313955 ]",
+  "[ 11/4 → 23/8 | s:hh cutoff:499.99999999999983 ]",
+  "[ 11/4 → 3/1 | s:sd cutoff:499.99999999999983 ]",
+  "[ 23/8 → 3/1 | s:hh cutoff:677.9918462313948 ]",
+  "[ 3/1 → 25/8 | s:hh cutoff:1414.2135623730935 ]",
+  "[ 3/1 → 13/4 | s:bd cutoff:1414.2135623730935 ]",
+  "[ 25/8 → 13/4 | s:hh cutoff:2949.8879833392693 ]",
+  "[ 13/4 → 27/8 | s:hh cutoff:3999.9999999999995 ]",
+  "[ 13/4 → 7/2 | s:sd cutoff:3999.9999999999995 ]",
+  "[ 27/8 → 7/2 | s:hh cutoff:2949.887983339272 ]",
+  "[ 7/2 → 29/8 | s:hh cutoff:1414.213562373096 ]",
+  "[ 7/2 → 15/4 | s:bd cutoff:1414.213562373096 ]",
+  "[ 29/8 → 15/4 | s:hh cutoff:677.9918462313955 ]",
+  "[ 15/4 → 31/8 | s:hh cutoff:499.99999999999983 ]",
+  "[ 15/4 → 4/1 | s:sd cutoff:499.99999999999983 ]",
+  "[ 31/8 → 4/1 | s:hh cutoff:677.9918462313948 ]",
 ]
 `;
 
 exports[`runs examples > example "rarely" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh ]",
-  "[ 1/8 → 1/4 | s:hh speed:0.5 ]",
+  "[ 0/1 → 1/8 | s:hh speed:0.5 ]",
+  "[ 1/8 → 1/4 | s:hh ]",
   "[ 1/4 → 3/8 | s:hh ]",
   "[ 3/8 → 1/2 | s:hh ]",
-  "[ 1/2 → 5/8 | s:hh speed:0.5 ]",
-  "[ 5/8 → 3/4 | s:hh ]",
-  "[ 3/4 → 7/8 | s:hh ]",
+  "[ 1/2 → 5/8 | s:hh ]",
+  "[ 5/8 → 3/4 | s:hh speed:0.5 ]",
+  "[ 3/4 → 7/8 | s:hh speed:0.5 ]",
   "[ 7/8 → 1/1 | s:hh ]",
   "[ 1/1 → 9/8 | s:hh ]",
-  "[ 9/8 → 5/4 | s:hh speed:0.5 ]",
-  "[ 5/4 → 11/8 | s:hh speed:0.5 ]",
-  "[ 11/8 → 3/2 | s:hh ]",
-  "[ 3/2 → 13/8 | s:hh speed:0.5 ]",
+  "[ 9/8 → 5/4 | s:hh ]",
+  "[ 5/4 → 11/8 | s:hh ]",
+  "[ 11/8 → 3/2 | s:hh speed:0.5 ]",
+  "[ 3/2 → 13/8 | s:hh ]",
   "[ 13/8 → 7/4 | s:hh ]",
-  "[ 7/4 → 15/8 | s:hh ]",
+  "[ 7/4 → 15/8 | s:hh speed:0.5 ]",
   "[ 15/8 → 2/1 | s:hh ]",
   "[ 2/1 → 17/8 | s:hh ]",
-  "[ 17/8 → 9/4 | s:hh speed:0.5 ]",
+  "[ 17/8 → 9/4 | s:hh ]",
   "[ 9/4 → 19/8 | s:hh ]",
-  "[ 19/8 → 5/2 | s:hh speed:0.5 ]",
+  "[ 19/8 → 5/2 | s:hh ]",
   "[ 5/2 → 21/8 | s:hh ]",
-  "[ 21/8 → 11/4 | s:hh ]",
+  "[ 21/8 → 11/4 | s:hh speed:0.5 ]",
   "[ 11/4 → 23/8 | s:hh ]",
-  "[ 23/8 → 3/1 | s:hh ]",
+  "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
   "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
   "[ 25/8 → 13/4 | s:hh ]",
   "[ 13/4 → 27/8 | s:hh ]",
   "[ 27/8 → 7/2 | s:hh ]",
   "[ 7/2 → 29/8 | s:hh ]",
   "[ 29/8 → 15/4 | s:hh ]",
-  "[ 15/4 → 31/8 | s:hh speed:0.5 ]",
+  "[ 15/4 → 31/8 | s:hh ]",
   "[ 31/8 → 4/1 | s:hh ]",
 ]
 `;
@@ -6524,22 +6519,22 @@ exports[`runs examples > example "repeat" example index 0 1`] = `
 
 exports[`runs examples > example "repeatCycles" example index 0 1`] = `
 [
-  "[ 0/1 → 1/4 | note:42 s:gm_acoustic_guitar_nylon ]",
+  "[ 0/1 → 1/4 | note:34 s:gm_acoustic_guitar_nylon ]",
   "[ 1/4 → 1/2 | note:38 s:gm_acoustic_guitar_nylon ]",
-  "[ 1/2 → 3/4 | note:35 s:gm_acoustic_guitar_nylon ]",
-  "[ 3/4 → 1/1 | note:38 s:gm_acoustic_guitar_nylon ]",
-  "[ 1/1 → 5/4 | note:42 s:gm_acoustic_guitar_nylon ]",
+  "[ 1/2 → 3/4 | note:37 s:gm_acoustic_guitar_nylon ]",
+  "[ 3/4 → 1/1 | note:36 s:gm_acoustic_guitar_nylon ]",
+  "[ 1/1 → 5/4 | note:34 s:gm_acoustic_guitar_nylon ]",
   "[ 5/4 → 3/2 | note:38 s:gm_acoustic_guitar_nylon ]",
-  "[ 3/2 → 7/4 | note:35 s:gm_acoustic_guitar_nylon ]",
-  "[ 7/4 → 2/1 | note:38 s:gm_acoustic_guitar_nylon ]",
-  "[ 2/1 → 9/4 | note:42 s:gm_acoustic_guitar_nylon ]",
-  "[ 9/4 → 5/2 | note:36 s:gm_acoustic_guitar_nylon ]",
-  "[ 5/2 → 11/4 | note:39 s:gm_acoustic_guitar_nylon ]",
-  "[ 11/4 → 3/1 | note:41 s:gm_acoustic_guitar_nylon ]",
-  "[ 3/1 → 13/4 | note:42 s:gm_acoustic_guitar_nylon ]",
-  "[ 13/4 → 7/2 | note:36 s:gm_acoustic_guitar_nylon ]",
-  "[ 7/2 → 15/4 | note:39 s:gm_acoustic_guitar_nylon ]",
-  "[ 15/4 → 4/1 | note:41 s:gm_acoustic_guitar_nylon ]",
+  "[ 3/2 → 7/4 | note:37 s:gm_acoustic_guitar_nylon ]",
+  "[ 7/4 → 2/1 | note:36 s:gm_acoustic_guitar_nylon ]",
+  "[ 2/1 → 9/4 | note:40 s:gm_acoustic_guitar_nylon ]",
+  "[ 9/4 → 5/2 | note:42 s:gm_acoustic_guitar_nylon ]",
+  "[ 5/2 → 11/4 | note:41 s:gm_acoustic_guitar_nylon ]",
+  "[ 11/4 → 3/1 | note:36 s:gm_acoustic_guitar_nylon ]",
+  "[ 3/1 → 13/4 | note:40 s:gm_acoustic_guitar_nylon ]",
+  "[ 13/4 → 7/2 | note:42 s:gm_acoustic_guitar_nylon ]",
+  "[ 7/2 → 15/4 | note:41 s:gm_acoustic_guitar_nylon ]",
+  "[ 15/4 → 4/1 | note:36 s:gm_acoustic_guitar_nylon ]",
 ]
 `;
 
@@ -6681,22 +6676,22 @@ exports[`runs examples > example "ribbon" example index 0 1`] = `
 
 exports[`runs examples > example "ribbon" example index 1 1`] = `
 [
-  "[ 0/1 → 1/4 | note:C3 ]",
-  "[ 1/4 → 1/2 | note:G3 ]",
-  "[ 1/2 → 3/4 | note:Eb3 ]",
-  "[ 3/4 → 1/1 | note:Bb3 ]",
-  "[ 1/1 → 5/4 | note:C3 ]",
-  "[ 5/4 → 3/2 | note:D3 ]",
+  "[ 0/1 → 1/4 | note:G3 ]",
+  "[ 1/4 → 1/2 | note:C3 ]",
+  "[ 1/2 → 3/4 | note:D3 ]",
+  "[ 3/4 → 1/1 | note:F3 ]",
+  "[ 1/1 → 5/4 | note:Eb3 ]",
+  "[ 5/4 → 3/2 | note:Ab3 ]",
   "[ 3/2 → 7/4 | note:G3 ]",
-  "[ 7/4 → 2/1 | note:Eb3 ]",
-  "[ 2/1 → 9/4 | note:C3 ]",
-  "[ 9/4 → 5/2 | note:G3 ]",
-  "[ 5/2 → 11/4 | note:Eb3 ]",
-  "[ 11/4 → 3/1 | note:Bb3 ]",
-  "[ 3/1 → 13/4 | note:C3 ]",
-  "[ 13/4 → 7/2 | note:D3 ]",
+  "[ 7/4 → 2/1 | note:C4 ]",
+  "[ 2/1 → 9/4 | note:G3 ]",
+  "[ 9/4 → 5/2 | note:C3 ]",
+  "[ 5/2 → 11/4 | note:D3 ]",
+  "[ 11/4 → 3/1 | note:F3 ]",
+  "[ 3/1 → 13/4 | note:Eb3 ]",
+  "[ 13/4 → 7/2 | note:Ab3 ]",
   "[ 7/2 → 15/4 | note:G3 ]",
-  "[ 15/4 → 4/1 | note:Eb3 ]",
+  "[ 15/4 → 4/1 | note:C4 ]",
 ]
 `;
 
@@ -7079,91 +7074,91 @@ exports[`runs examples > example "samples" example index 3 1`] = `
 
 exports[`runs examples > example "saw" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | note:c3 clip:0.03125 ]",
-  "[ 1/8 → 1/4 | note:eb3 clip:0.09375 ]",
-  "[ 1/8 → 1/4 | note:g3 clip:0.09375 ]",
-  "[ 1/4 → 3/8 | note:g2 clip:0.15625 ]",
-  "[ 3/8 → 1/2 | note:g3 clip:0.21875 ]",
-  "[ 3/8 → 1/2 | note:bb3 clip:0.21875 ]",
-  "[ 1/2 → 5/8 | note:c3 clip:0.28125 ]",
-  "[ 5/8 → 3/4 | note:eb3 clip:0.34375 ]",
-  "[ 5/8 → 3/4 | note:g3 clip:0.34375 ]",
-  "[ 3/4 → 7/8 | note:g2 clip:0.40625 ]",
-  "[ 7/8 → 1/1 | note:g3 clip:0.46875 ]",
-  "[ 7/8 → 1/1 | note:bb3 clip:0.46875 ]",
-  "[ 1/1 → 9/8 | note:c3 clip:0.53125 ]",
-  "[ 9/8 → 5/4 | note:eb3 clip:0.59375 ]",
-  "[ 9/8 → 5/4 | note:g3 clip:0.59375 ]",
-  "[ 5/4 → 11/8 | note:g2 clip:0.65625 ]",
-  "[ 11/8 → 3/2 | note:g3 clip:0.71875 ]",
-  "[ 11/8 → 3/2 | note:bb3 clip:0.71875 ]",
-  "[ 3/2 → 13/8 | note:c3 clip:0.78125 ]",
-  "[ 13/8 → 7/4 | note:eb3 clip:0.84375 ]",
-  "[ 13/8 → 7/4 | note:g3 clip:0.84375 ]",
-  "[ 7/4 → 15/8 | note:g2 clip:0.90625 ]",
-  "[ 15/8 → 2/1 | note:g3 clip:0.96875 ]",
-  "[ 15/8 → 2/1 | note:bb3 clip:0.96875 ]",
-  "[ 2/1 → 17/8 | note:c3 clip:0.03125 ]",
-  "[ 17/8 → 9/4 | note:eb3 clip:0.09375 ]",
-  "[ 17/8 → 9/4 | note:g3 clip:0.09375 ]",
-  "[ 9/4 → 19/8 | note:g2 clip:0.15625 ]",
-  "[ 19/8 → 5/2 | note:g3 clip:0.21875 ]",
-  "[ 19/8 → 5/2 | note:bb3 clip:0.21875 ]",
-  "[ 5/2 → 21/8 | note:c3 clip:0.28125 ]",
-  "[ 21/8 → 11/4 | note:eb3 clip:0.34375 ]",
-  "[ 21/8 → 11/4 | note:g3 clip:0.34375 ]",
-  "[ 11/4 → 23/8 | note:g2 clip:0.40625 ]",
-  "[ 23/8 → 3/1 | note:g3 clip:0.46875 ]",
-  "[ 23/8 → 3/1 | note:bb3 clip:0.46875 ]",
-  "[ 3/1 → 25/8 | note:c3 clip:0.53125 ]",
-  "[ 25/8 → 13/4 | note:eb3 clip:0.59375 ]",
-  "[ 25/8 → 13/4 | note:g3 clip:0.59375 ]",
-  "[ 13/4 → 27/8 | note:g2 clip:0.65625 ]",
-  "[ 27/8 → 7/2 | note:g3 clip:0.71875 ]",
-  "[ 27/8 → 7/2 | note:bb3 clip:0.71875 ]",
-  "[ 7/2 → 29/8 | note:c3 clip:0.78125 ]",
-  "[ 29/8 → 15/4 | note:eb3 clip:0.84375 ]",
-  "[ 29/8 → 15/4 | note:g3 clip:0.84375 ]",
-  "[ 15/4 → 31/8 | note:g2 clip:0.90625 ]",
-  "[ 31/8 → 4/1 | note:g3 clip:0.96875 ]",
-  "[ 31/8 → 4/1 | note:bb3 clip:0.96875 ]",
+  "[ 0/1 → 1/8 | note:c3 clip:0 ]",
+  "[ 1/8 → 1/4 | note:eb3 clip:0.0625 ]",
+  "[ 1/8 → 1/4 | note:g3 clip:0.0625 ]",
+  "[ 1/4 → 3/8 | note:g2 clip:0.125 ]",
+  "[ 3/8 → 1/2 | note:g3 clip:0.1875 ]",
+  "[ 3/8 → 1/2 | note:bb3 clip:0.1875 ]",
+  "[ 1/2 → 5/8 | note:c3 clip:0.25 ]",
+  "[ 5/8 → 3/4 | note:eb3 clip:0.3125 ]",
+  "[ 5/8 → 3/4 | note:g3 clip:0.3125 ]",
+  "[ 3/4 → 7/8 | note:g2 clip:0.375 ]",
+  "[ 7/8 → 1/1 | note:g3 clip:0.4375 ]",
+  "[ 7/8 → 1/1 | note:bb3 clip:0.4375 ]",
+  "[ 1/1 → 9/8 | note:c3 clip:0.5 ]",
+  "[ 9/8 → 5/4 | note:eb3 clip:0.5625 ]",
+  "[ 9/8 → 5/4 | note:g3 clip:0.5625 ]",
+  "[ 5/4 → 11/8 | note:g2 clip:0.625 ]",
+  "[ 11/8 → 3/2 | note:g3 clip:0.6875 ]",
+  "[ 11/8 → 3/2 | note:bb3 clip:0.6875 ]",
+  "[ 3/2 → 13/8 | note:c3 clip:0.75 ]",
+  "[ 13/8 → 7/4 | note:eb3 clip:0.8125 ]",
+  "[ 13/8 → 7/4 | note:g3 clip:0.8125 ]",
+  "[ 7/4 → 15/8 | note:g2 clip:0.875 ]",
+  "[ 15/8 → 2/1 | note:g3 clip:0.9375 ]",
+  "[ 15/8 → 2/1 | note:bb3 clip:0.9375 ]",
+  "[ 2/1 → 17/8 | note:c3 clip:0 ]",
+  "[ 17/8 → 9/4 | note:eb3 clip:0.0625 ]",
+  "[ 17/8 → 9/4 | note:g3 clip:0.0625 ]",
+  "[ 9/4 → 19/8 | note:g2 clip:0.125 ]",
+  "[ 19/8 → 5/2 | note:g3 clip:0.1875 ]",
+  "[ 19/8 → 5/2 | note:bb3 clip:0.1875 ]",
+  "[ 5/2 → 21/8 | note:c3 clip:0.25 ]",
+  "[ 21/8 → 11/4 | note:eb3 clip:0.3125 ]",
+  "[ 21/8 → 11/4 | note:g3 clip:0.3125 ]",
+  "[ 11/4 → 23/8 | note:g2 clip:0.375 ]",
+  "[ 23/8 → 3/1 | note:g3 clip:0.4375 ]",
+  "[ 23/8 → 3/1 | note:bb3 clip:0.4375 ]",
+  "[ 3/1 → 25/8 | note:c3 clip:0.5 ]",
+  "[ 25/8 → 13/4 | note:eb3 clip:0.5625 ]",
+  "[ 25/8 → 13/4 | note:g3 clip:0.5625 ]",
+  "[ 13/4 → 27/8 | note:g2 clip:0.625 ]",
+  "[ 27/8 → 7/2 | note:g3 clip:0.6875 ]",
+  "[ 27/8 → 7/2 | note:bb3 clip:0.6875 ]",
+  "[ 7/2 → 29/8 | note:c3 clip:0.75 ]",
+  "[ 29/8 → 15/4 | note:eb3 clip:0.8125 ]",
+  "[ 29/8 → 15/4 | note:g3 clip:0.8125 ]",
+  "[ 15/4 → 31/8 | note:g2 clip:0.875 ]",
+  "[ 31/8 → 4/1 | note:g3 clip:0.9375 ]",
+  "[ 31/8 → 4/1 | note:bb3 clip:0.9375 ]",
 ]
 `;
 
 exports[`runs examples > example "saw" example index 1 1`] = `
 [
-  "[ 0/1 → 1/8 | note:D3 ]",
-  "[ 1/8 → 1/4 | note:E3 ]",
-  "[ 1/4 → 3/8 | note:F3 ]",
-  "[ 3/8 → 1/2 | note:G3 ]",
-  "[ 1/2 → 5/8 | note:A3 ]",
-  "[ 5/8 → 3/4 | note:B3 ]",
-  "[ 3/4 → 7/8 | note:C4 ]",
-  "[ 7/8 → 1/1 | note:D4 ]",
-  "[ 1/1 → 9/8 | note:D3 ]",
-  "[ 9/8 → 5/4 | note:E3 ]",
-  "[ 5/4 → 11/8 | note:F3 ]",
-  "[ 11/8 → 3/2 | note:G3 ]",
-  "[ 3/2 → 13/8 | note:A3 ]",
-  "[ 13/8 → 7/4 | note:B3 ]",
-  "[ 7/4 → 15/8 | note:C4 ]",
-  "[ 15/8 → 2/1 | note:D4 ]",
-  "[ 2/1 → 17/8 | note:D3 ]",
-  "[ 17/8 → 9/4 | note:E3 ]",
-  "[ 9/4 → 19/8 | note:F3 ]",
-  "[ 19/8 → 5/2 | note:G3 ]",
-  "[ 5/2 → 21/8 | note:A3 ]",
-  "[ 21/8 → 11/4 | note:B3 ]",
-  "[ 11/4 → 23/8 | note:C4 ]",
-  "[ 23/8 → 3/1 | note:D4 ]",
-  "[ 3/1 → 25/8 | note:D3 ]",
-  "[ 25/8 → 13/4 | note:E3 ]",
-  "[ 13/4 → 27/8 | note:F3 ]",
-  "[ 27/8 → 7/2 | note:G3 ]",
-  "[ 7/2 → 29/8 | note:A3 ]",
-  "[ 29/8 → 15/4 | note:B3 ]",
-  "[ 15/4 → 31/8 | note:C4 ]",
-  "[ 31/8 → 4/1 | note:D4 ]",
+  "[ 0/1 → 1/8 | note:C3 ]",
+  "[ 1/8 → 1/4 | note:D3 ]",
+  "[ 1/4 → 3/8 | note:E3 ]",
+  "[ 3/8 → 1/2 | note:F3 ]",
+  "[ 1/2 → 5/8 | note:G3 ]",
+  "[ 5/8 → 3/4 | note:A3 ]",
+  "[ 3/4 → 7/8 | note:B3 ]",
+  "[ 7/8 → 1/1 | note:C4 ]",
+  "[ 1/1 → 9/8 | note:C3 ]",
+  "[ 9/8 → 5/4 | note:D3 ]",
+  "[ 5/4 → 11/8 | note:E3 ]",
+  "[ 11/8 → 3/2 | note:F3 ]",
+  "[ 3/2 → 13/8 | note:G3 ]",
+  "[ 13/8 → 7/4 | note:A3 ]",
+  "[ 7/4 → 15/8 | note:B3 ]",
+  "[ 15/8 → 2/1 | note:C4 ]",
+  "[ 2/1 → 17/8 | note:C3 ]",
+  "[ 17/8 → 9/4 | note:D3 ]",
+  "[ 9/4 → 19/8 | note:E3 ]",
+  "[ 19/8 → 5/2 | note:F3 ]",
+  "[ 5/2 → 21/8 | note:G3 ]",
+  "[ 21/8 → 11/4 | note:A3 ]",
+  "[ 11/4 → 23/8 | note:B3 ]",
+  "[ 23/8 → 3/1 | note:C4 ]",
+  "[ 3/1 → 25/8 | note:C3 ]",
+  "[ 25/8 → 13/4 | note:D3 ]",
+  "[ 13/4 → 27/8 | note:E3 ]",
+  "[ 27/8 → 7/2 | note:F3 ]",
+  "[ 7/2 → 29/8 | note:G3 ]",
+  "[ 29/8 → 15/4 | note:A3 ]",
+  "[ 15/4 → 31/8 | note:B3 ]",
+  "[ 31/8 → 4/1 | note:C4 ]",
 ]
 `;
 
@@ -7227,38 +7222,38 @@ exports[`runs examples > example "scale" example index 1 1`] = `
 
 exports[`runs examples > example "scale" example index 2 1`] = `
 [
-  "[ 0/1 → 1/8 | note:D5 s:piano ]",
-  "[ 1/8 → 1/4 | note:G3 s:piano ]",
-  "[ 1/4 → 3/8 | note:F4 s:piano ]",
-  "[ 3/8 → 1/2 | note:A3 s:piano ]",
-  "[ 1/2 → 5/8 | note:F3 s:piano ]",
-  "[ 5/8 → 3/4 | note:C4 s:piano ]",
-  "[ 3/4 → 7/8 | note:C5 s:piano ]",
-  "[ 7/8 → 1/1 | note:A4 s:piano ]",
+  "[ 0/1 → 1/8 | note:C3 s:piano ]",
+  "[ 1/8 → 1/4 | note:A4 s:piano ]",
+  "[ 1/4 → 3/8 | note:C4 s:piano ]",
+  "[ 3/8 → 1/2 | note:C4 s:piano ]",
+  "[ 1/2 → 5/8 | note:A3 s:piano ]",
+  "[ 5/8 → 3/4 | note:F3 s:piano ]",
+  "[ 3/4 → 7/8 | note:G3 s:piano ]",
+  "[ 7/8 → 1/1 | note:C4 s:piano ]",
   "[ 1/1 → 9/8 | note:F4 s:piano ]",
-  "[ 9/8 → 5/4 | note:D3 s:piano ]",
-  "[ 5/4 → 11/8 | note:D3 s:piano ]",
-  "[ 11/8 → 3/2 | note:F4 s:piano ]",
-  "[ 3/2 → 13/8 | note:G3 s:piano ]",
-  "[ 13/8 → 7/4 | note:A3 s:piano ]",
-  "[ 7/4 → 15/8 | note:D4 s:piano ]",
-  "[ 15/8 → 2/1 | note:D5 s:piano ]",
-  "[ 2/1 → 17/8 | note:A3 s:piano ]",
-  "[ 17/8 → 9/4 | note:D3 s:piano ]",
-  "[ 9/4 → 19/8 | note:G4 s:piano ]",
-  "[ 19/8 → 5/2 | note:F3 s:piano ]",
-  "[ 5/2 → 21/8 | note:G4 s:piano ]",
-  "[ 21/8 → 11/4 | note:F4 s:piano ]",
-  "[ 11/4 → 23/8 | note:D5 s:piano ]",
-  "[ 23/8 → 3/1 | note:A3 s:piano ]",
-  "[ 3/1 → 25/8 | note:D3 s:piano ]",
-  "[ 25/8 → 13/4 | note:D5 s:piano ]",
-  "[ 13/4 → 27/8 | note:A3 s:piano ]",
-  "[ 27/8 → 7/2 | note:C5 s:piano ]",
-  "[ 7/2 → 29/8 | note:C5 s:piano ]",
+  "[ 9/8 → 5/4 | note:A4 s:piano ]",
+  "[ 5/4 → 11/8 | note:A4 s:piano ]",
+  "[ 11/8 → 3/2 | note:G3 s:piano ]",
+  "[ 3/2 → 13/8 | note:G4 s:piano ]",
+  "[ 13/8 → 7/4 | note:D4 s:piano ]",
+  "[ 7/4 → 15/8 | note:G3 s:piano ]",
+  "[ 15/8 → 2/1 | note:G4 s:piano ]",
+  "[ 2/1 → 17/8 | note:F5 s:piano ]",
+  "[ 17/8 → 9/4 | note:D5 s:piano ]",
+  "[ 9/4 → 19/8 | note:C4 s:piano ]",
+  "[ 19/8 → 5/2 | note:D5 s:piano ]",
+  "[ 5/2 → 21/8 | note:D4 s:piano ]",
+  "[ 21/8 → 11/4 | note:F3 s:piano ]",
+  "[ 11/4 → 23/8 | note:G4 s:piano ]",
+  "[ 23/8 → 3/1 | note:D3 s:piano ]",
+  "[ 3/1 → 25/8 | note:G3 s:piano ]",
+  "[ 25/8 → 13/4 | note:C4 s:piano ]",
+  "[ 13/4 → 27/8 | note:F5 s:piano ]",
+  "[ 27/8 → 7/2 | note:C4 s:piano ]",
+  "[ 7/2 → 29/8 | note:C4 s:piano ]",
   "[ 29/8 → 15/4 | note:F5 s:piano ]",
-  "[ 15/4 → 31/8 | note:F3 s:piano ]",
-  "[ 31/8 → 4/1 | note:A3 s:piano ]",
+  "[ 15/4 → 31/8 | note:C5 s:piano ]",
+  "[ 31/8 → 4/1 | note:A4 s:piano ]",
 ]
 `;
 
@@ -7296,22 +7291,22 @@ exports[`runs examples > example "scramble
 Slices a pattern into the given number of parts, then plays those parts at random. Similar to \`shuffle\`,
 but parts might be played more than once, or not at all, per cycle." example index 0 1`] = `
 [
-  "[ 0/1 → 1/4 | note:e s:piano ]",
+  "[ 0/1 → 1/4 | note:c s:piano ]",
   "[ 1/4 → 1/2 | note:d s:piano ]",
-  "[ 1/2 → 3/4 | note:c s:piano ]",
-  "[ 3/4 → 1/1 | note:d s:piano ]",
+  "[ 1/2 → 3/4 | note:d s:piano ]",
+  "[ 3/4 → 1/1 | note:c s:piano ]",
   "[ 1/1 → 5/4 | note:e s:piano ]",
-  "[ 5/4 → 3/2 | note:c s:piano ]",
-  "[ 3/2 → 7/4 | note:d s:piano ]",
-  "[ 7/4 → 2/1 | note:e s:piano ]",
+  "[ 5/4 → 3/2 | note:e s:piano ]",
+  "[ 3/2 → 7/4 | note:e s:piano ]",
+  "[ 7/4 → 2/1 | note:c s:piano ]",
   "[ 2/1 → 9/4 | note:f s:piano ]",
-  "[ 9/4 → 5/2 | note:f s:piano ]",
-  "[ 5/2 → 11/4 | note:c s:piano ]",
-  "[ 11/4 → 3/1 | note:c s:piano ]",
-  "[ 3/1 → 13/4 | note:d s:piano ]",
-  "[ 13/4 → 7/2 | note:d s:piano ]",
-  "[ 7/2 → 15/4 | note:f s:piano ]",
-  "[ 15/4 → 4/1 | note:e s:piano ]",
+  "[ 9/4 → 5/2 | note:d s:piano ]",
+  "[ 5/2 → 11/4 | note:d s:piano ]",
+  "[ 11/4 → 3/1 | note:e s:piano ]",
+  "[ 3/1 → 13/4 | note:c s:piano ]",
+  "[ 13/4 → 7/2 | note:f s:piano ]",
+  "[ 7/2 → 15/4 | note:d s:piano ]",
+  "[ 15/4 → 4/1 | note:f s:piano ]",
 ]
 `;
 
@@ -7319,127 +7314,127 @@ exports[`runs examples > example "scramble
 Slices a pattern into the given number of parts, then plays those parts at random. Similar to \`shuffle\`,
 but parts might be played more than once, or not at all, per cycle." example index 1 1`] = `
 [
-  "[ 0/1 → 1/8 | note:e s:piano ]",
+  "[ 0/1 → 1/8 | note:c s:piano ]",
   "[ 1/8 → 1/4 | note:d s:piano ]",
-  "[ 1/4 → 3/8 | note:c s:piano ]",
-  "[ 3/8 → 1/2 | note:d s:piano ]",
+  "[ 1/4 → 3/8 | note:d s:piano ]",
+  "[ 3/8 → 1/2 | note:c s:piano ]",
   "[ 1/2 → 1/1 | note:g s:piano ]",
   "[ 1/1 → 9/8 | note:e s:piano ]",
-  "[ 9/8 → 5/4 | note:c s:piano ]",
-  "[ 5/4 → 11/8 | note:d s:piano ]",
-  "[ 11/8 → 3/2 | note:e s:piano ]",
+  "[ 9/8 → 5/4 | note:e s:piano ]",
+  "[ 5/4 → 11/8 | note:e s:piano ]",
+  "[ 11/8 → 3/2 | note:c s:piano ]",
   "[ 3/2 → 2/1 | note:g s:piano ]",
   "[ 2/1 → 17/8 | note:f s:piano ]",
-  "[ 17/8 → 9/4 | note:f s:piano ]",
-  "[ 9/4 → 19/8 | note:c s:piano ]",
-  "[ 19/8 → 5/2 | note:c s:piano ]",
+  "[ 17/8 → 9/4 | note:d s:piano ]",
+  "[ 9/4 → 19/8 | note:d s:piano ]",
+  "[ 19/8 → 5/2 | note:e s:piano ]",
   "[ 5/2 → 3/1 | note:g s:piano ]",
-  "[ 3/1 → 25/8 | note:d s:piano ]",
-  "[ 25/8 → 13/4 | note:d s:piano ]",
-  "[ 13/4 → 27/8 | note:f s:piano ]",
-  "[ 27/8 → 7/2 | note:e s:piano ]",
+  "[ 3/1 → 25/8 | note:c s:piano ]",
+  "[ 25/8 → 13/4 | note:f s:piano ]",
+  "[ 13/4 → 27/8 | note:d s:piano ]",
+  "[ 27/8 → 7/2 | note:f s:piano ]",
   "[ 7/2 → 4/1 | note:g s:piano ]",
 ]
 `;
 
 exports[`runs examples > example "segment" example index 0 1`] = `
 [
-  "[ 0/1 → 1/24 | note:40.25 ]",
-  "[ 1/24 → 1/12 | note:40.75 ]",
-  "[ 1/12 → 1/8 | note:41.25 ]",
-  "[ 1/8 → 1/6 | note:41.75 ]",
-  "[ 1/6 → 5/24 | note:42.25 ]",
-  "[ 5/24 → 1/4 | note:42.75 ]",
-  "[ 1/4 → 7/24 | note:43.25 ]",
-  "[ 7/24 → 1/3 | note:43.75 ]",
-  "[ 1/3 → 3/8 | note:44.25 ]",
-  "[ 3/8 → 5/12 | note:44.75 ]",
-  "[ 5/12 → 11/24 | note:45.25 ]",
-  "[ 11/24 → 1/2 | note:45.75 ]",
-  "[ 1/2 → 13/24 | note:46.25 ]",
-  "[ 13/24 → 7/12 | note:46.75 ]",
-  "[ 7/12 → 5/8 | note:47.25 ]",
-  "[ 5/8 → 2/3 | note:47.75 ]",
-  "[ 2/3 → 17/24 | note:48.25 ]",
-  "[ 17/24 → 3/4 | note:48.75 ]",
-  "[ 3/4 → 19/24 | note:49.25 ]",
-  "[ 19/24 → 5/6 | note:49.75 ]",
-  "[ 5/6 → 7/8 | note:50.25 ]",
-  "[ 7/8 → 11/12 | note:50.75 ]",
-  "[ 11/12 → 23/24 | note:51.25 ]",
-  "[ 23/24 → 1/1 | note:51.75 ]",
-  "[ 1/1 → 25/24 | note:40.25 ]",
-  "[ 25/24 → 13/12 | note:40.75 ]",
-  "[ 13/12 → 9/8 | note:41.25 ]",
-  "[ 9/8 → 7/6 | note:41.75 ]",
-  "[ 7/6 → 29/24 | note:42.25 ]",
-  "[ 29/24 → 5/4 | note:42.75 ]",
-  "[ 5/4 → 31/24 | note:43.25 ]",
-  "[ 31/24 → 4/3 | note:43.75 ]",
-  "[ 4/3 → 11/8 | note:44.25 ]",
-  "[ 11/8 → 17/12 | note:44.75 ]",
-  "[ 17/12 → 35/24 | note:45.25 ]",
-  "[ 35/24 → 3/2 | note:45.75 ]",
-  "[ 3/2 → 37/24 | note:46.25 ]",
-  "[ 37/24 → 19/12 | note:46.75 ]",
-  "[ 19/12 → 13/8 | note:47.25 ]",
-  "[ 13/8 → 5/3 | note:47.75 ]",
-  "[ 5/3 → 41/24 | note:48.25 ]",
-  "[ 41/24 → 7/4 | note:48.75 ]",
-  "[ 7/4 → 43/24 | note:49.25 ]",
-  "[ 43/24 → 11/6 | note:49.75 ]",
-  "[ 11/6 → 15/8 | note:50.25 ]",
-  "[ 15/8 → 23/12 | note:50.75 ]",
-  "[ 23/12 → 47/24 | note:51.25 ]",
-  "[ 47/24 → 2/1 | note:51.75 ]",
-  "[ 2/1 → 49/24 | note:40.25 ]",
-  "[ 49/24 → 25/12 | note:40.75 ]",
-  "[ 25/12 → 17/8 | note:41.25 ]",
-  "[ 17/8 → 13/6 | note:41.75 ]",
-  "[ 13/6 → 53/24 | note:42.25 ]",
-  "[ 53/24 → 9/4 | note:42.75 ]",
-  "[ 9/4 → 55/24 | note:43.25 ]",
-  "[ 55/24 → 7/3 | note:43.75 ]",
-  "[ 7/3 → 19/8 | note:44.25 ]",
-  "[ 19/8 → 29/12 | note:44.75 ]",
-  "[ 29/12 → 59/24 | note:45.25 ]",
-  "[ 59/24 → 5/2 | note:45.75 ]",
-  "[ 5/2 → 61/24 | note:46.25 ]",
-  "[ 61/24 → 31/12 | note:46.75 ]",
-  "[ 31/12 → 21/8 | note:47.25 ]",
-  "[ 21/8 → 8/3 | note:47.75 ]",
-  "[ 8/3 → 65/24 | note:48.25 ]",
-  "[ 65/24 → 11/4 | note:48.75 ]",
-  "[ 11/4 → 67/24 | note:49.25 ]",
-  "[ 67/24 → 17/6 | note:49.75 ]",
-  "[ 17/6 → 23/8 | note:50.25 ]",
-  "[ 23/8 → 35/12 | note:50.75 ]",
-  "[ 35/12 → 71/24 | note:51.25 ]",
-  "[ 71/24 → 3/1 | note:51.75 ]",
-  "[ 3/1 → 73/24 | note:40.25 ]",
-  "[ 73/24 → 37/12 | note:40.75 ]",
-  "[ 37/12 → 25/8 | note:41.25 ]",
-  "[ 25/8 → 19/6 | note:41.75 ]",
-  "[ 19/6 → 77/24 | note:42.25 ]",
-  "[ 77/24 → 13/4 | note:42.75 ]",
-  "[ 13/4 → 79/24 | note:43.25 ]",
-  "[ 79/24 → 10/3 | note:43.75 ]",
-  "[ 10/3 → 27/8 | note:44.25 ]",
-  "[ 27/8 → 41/12 | note:44.75 ]",
-  "[ 41/12 → 83/24 | note:45.25 ]",
-  "[ 83/24 → 7/2 | note:45.75 ]",
-  "[ 7/2 → 85/24 | note:46.25 ]",
-  "[ 85/24 → 43/12 | note:46.75 ]",
-  "[ 43/12 → 29/8 | note:47.25 ]",
-  "[ 29/8 → 11/3 | note:47.75 ]",
-  "[ 11/3 → 89/24 | note:48.25 ]",
-  "[ 89/24 → 15/4 | note:48.75 ]",
-  "[ 15/4 → 91/24 | note:49.25 ]",
-  "[ 91/24 → 23/6 | note:49.75 ]",
-  "[ 23/6 → 31/8 | note:50.25 ]",
-  "[ 31/8 → 47/12 | note:50.75 ]",
-  "[ 47/12 → 95/24 | note:51.25 ]",
-  "[ 95/24 → 4/1 | note:51.75 ]",
+  "[ 0/1 → 1/24 | note:40 ]",
+  "[ 1/24 → 1/12 | note:40.5 ]",
+  "[ 1/12 → 1/8 | note:41 ]",
+  "[ 1/8 → 1/6 | note:41.5 ]",
+  "[ 1/6 → 5/24 | note:42 ]",
+  "[ 5/24 → 1/4 | note:42.5 ]",
+  "[ 1/4 → 7/24 | note:43 ]",
+  "[ 7/24 → 1/3 | note:43.5 ]",
+  "[ 1/3 → 3/8 | note:44 ]",
+  "[ 3/8 → 5/12 | note:44.5 ]",
+  "[ 5/12 → 11/24 | note:45 ]",
+  "[ 11/24 → 1/2 | note:45.5 ]",
+  "[ 1/2 → 13/24 | note:46 ]",
+  "[ 13/24 → 7/12 | note:46.5 ]",
+  "[ 7/12 → 5/8 | note:47 ]",
+  "[ 5/8 → 2/3 | note:47.5 ]",
+  "[ 2/3 → 17/24 | note:48 ]",
+  "[ 17/24 → 3/4 | note:48.5 ]",
+  "[ 3/4 → 19/24 | note:49 ]",
+  "[ 19/24 → 5/6 | note:49.5 ]",
+  "[ 5/6 → 7/8 | note:50 ]",
+  "[ 7/8 → 11/12 | note:50.5 ]",
+  "[ 11/12 → 23/24 | note:51 ]",
+  "[ 23/24 → 1/1 | note:51.5 ]",
+  "[ 1/1 → 25/24 | note:40 ]",
+  "[ 25/24 → 13/12 | note:40.5 ]",
+  "[ 13/12 → 9/8 | note:41 ]",
+  "[ 9/8 → 7/6 | note:41.5 ]",
+  "[ 7/6 → 29/24 | note:42 ]",
+  "[ 29/24 → 5/4 | note:42.5 ]",
+  "[ 5/4 → 31/24 | note:43 ]",
+  "[ 31/24 → 4/3 | note:43.5 ]",
+  "[ 4/3 → 11/8 | note:44 ]",
+  "[ 11/8 → 17/12 | note:44.5 ]",
+  "[ 17/12 → 35/24 | note:45 ]",
+  "[ 35/24 → 3/2 | note:45.5 ]",
+  "[ 3/2 → 37/24 | note:46 ]",
+  "[ 37/24 → 19/12 | note:46.5 ]",
+  "[ 19/12 → 13/8 | note:47 ]",
+  "[ 13/8 → 5/3 | note:47.5 ]",
+  "[ 5/3 → 41/24 | note:48 ]",
+  "[ 41/24 → 7/4 | note:48.5 ]",
+  "[ 7/4 → 43/24 | note:49 ]",
+  "[ 43/24 → 11/6 | note:49.5 ]",
+  "[ 11/6 → 15/8 | note:50 ]",
+  "[ 15/8 → 23/12 | note:50.5 ]",
+  "[ 23/12 → 47/24 | note:51 ]",
+  "[ 47/24 → 2/1 | note:51.5 ]",
+  "[ 2/1 → 49/24 | note:40 ]",
+  "[ 49/24 → 25/12 | note:40.5 ]",
+  "[ 25/12 → 17/8 | note:41 ]",
+  "[ 17/8 → 13/6 | note:41.5 ]",
+  "[ 13/6 → 53/24 | note:42 ]",
+  "[ 53/24 → 9/4 | note:42.5 ]",
+  "[ 9/4 → 55/24 | note:43 ]",
+  "[ 55/24 → 7/3 | note:43.5 ]",
+  "[ 7/3 → 19/8 | note:44 ]",
+  "[ 19/8 → 29/12 | note:44.5 ]",
+  "[ 29/12 → 59/24 | note:45 ]",
+  "[ 59/24 → 5/2 | note:45.5 ]",
+  "[ 5/2 → 61/24 | note:46 ]",
+  "[ 61/24 → 31/12 | note:46.5 ]",
+  "[ 31/12 → 21/8 | note:47 ]",
+  "[ 21/8 → 8/3 | note:47.5 ]",
+  "[ 8/3 → 65/24 | note:48 ]",
+  "[ 65/24 → 11/4 | note:48.5 ]",
+  "[ 11/4 → 67/24 | note:49 ]",
+  "[ 67/24 → 17/6 | note:49.5 ]",
+  "[ 17/6 → 23/8 | note:50 ]",
+  "[ 23/8 → 35/12 | note:50.5 ]",
+  "[ 35/12 → 71/24 | note:51 ]",
+  "[ 71/24 → 3/1 | note:51.5 ]",
+  "[ 3/1 → 73/24 | note:40 ]",
+  "[ 73/24 → 37/12 | note:40.5 ]",
+  "[ 37/12 → 25/8 | note:41 ]",
+  "[ 25/8 → 19/6 | note:41.5 ]",
+  "[ 19/6 → 77/24 | note:42 ]",
+  "[ 77/24 → 13/4 | note:42.5 ]",
+  "[ 13/4 → 79/24 | note:43 ]",
+  "[ 79/24 → 10/3 | note:43.5 ]",
+  "[ 10/3 → 27/8 | note:44 ]",
+  "[ 27/8 → 41/12 | note:44.5 ]",
+  "[ 41/12 → 83/24 | note:45 ]",
+  "[ 83/24 → 7/2 | note:45.5 ]",
+  "[ 7/2 → 85/24 | note:46 ]",
+  "[ 85/24 → 43/12 | note:46.5 ]",
+  "[ 43/12 → 29/8 | note:47 ]",
+  "[ 29/8 → 11/3 | note:47.5 ]",
+  "[ 11/3 → 89/24 | note:48 ]",
+  "[ 89/24 → 15/4 | note:48.5 ]",
+  "[ 15/4 → 91/24 | note:49 ]",
+  "[ 91/24 → 23/6 | note:49.5 ]",
+  "[ 23/6 → 31/8 | note:50 ]",
+  "[ 31/8 → 47/12 | note:50.5 ]",
+  "[ 47/12 → 95/24 | note:51 ]",
+  "[ 95/24 → 4/1 | note:51.5 ]",
 ]
 `;
 
@@ -7780,70 +7775,70 @@ exports[`runs examples > example "silence" example index 0 1`] = `[]`;
 
 exports[`runs examples > example "sine" example index 0 1`] = `
 [
-  "[ 0/1 → 1/16 | note:Eb4 ]",
-  "[ 1/16 → 1/8 | note:Ab4 ]",
-  "[ 1/8 → 3/16 | note:C5 ]",
+  "[ 0/1 → 1/16 | note:D4 ]",
+  "[ 1/16 → 1/8 | note:G4 ]",
+  "[ 1/8 → 3/16 | note:Bb4 ]",
   "[ 3/16 → 1/4 | note:D5 ]",
   "[ 1/4 → 5/16 | note:D5 ]",
-  "[ 5/16 → 3/8 | note:C5 ]",
-  "[ 3/8 → 7/16 | note:Ab4 ]",
-  "[ 7/16 → 1/2 | note:Eb4 ]",
-  "[ 1/2 → 9/16 | note:C4 ]",
-  "[ 9/16 → 5/8 | note:G3 ]",
-  "[ 5/8 → 11/16 | note:Eb3 ]",
+  "[ 5/16 → 3/8 | note:D5 ]",
+  "[ 3/8 → 7/16 | note:Bb4 ]",
+  "[ 7/16 → 1/2 | note:G4 ]",
+  "[ 1/2 → 9/16 | note:D4 ]",
+  "[ 9/16 → 5/8 | note:Ab3 ]",
+  "[ 5/8 → 11/16 | note:F3 ]",
   "[ 11/16 → 3/4 | note:D3 ]",
-  "[ 3/4 → 13/16 | note:D3 ]",
-  "[ 13/16 → 7/8 | note:Eb3 ]",
-  "[ 7/8 → 15/16 | note:G3 ]",
-  "[ 15/16 → 1/1 | note:C4 ]",
-  "[ 1/1 → 17/16 | note:Eb4 ]",
-  "[ 17/16 → 9/8 | note:Ab4 ]",
-  "[ 9/8 → 19/16 | note:C5 ]",
+  "[ 3/4 → 13/16 | note:C3 ]",
+  "[ 13/16 → 7/8 | note:D3 ]",
+  "[ 7/8 → 15/16 | note:F3 ]",
+  "[ 15/16 → 1/1 | note:Ab3 ]",
+  "[ 1/1 → 17/16 | note:D4 ]",
+  "[ 17/16 → 9/8 | note:G4 ]",
+  "[ 9/8 → 19/16 | note:Bb4 ]",
   "[ 19/16 → 5/4 | note:D5 ]",
   "[ 5/4 → 21/16 | note:D5 ]",
-  "[ 21/16 → 11/8 | note:C5 ]",
-  "[ 11/8 → 23/16 | note:Ab4 ]",
-  "[ 23/16 → 3/2 | note:Eb4 ]",
-  "[ 3/2 → 25/16 | note:C4 ]",
-  "[ 25/16 → 13/8 | note:G3 ]",
-  "[ 13/8 → 27/16 | note:Eb3 ]",
+  "[ 21/16 → 11/8 | note:D5 ]",
+  "[ 11/8 → 23/16 | note:Bb4 ]",
+  "[ 23/16 → 3/2 | note:G4 ]",
+  "[ 3/2 → 25/16 | note:D4 ]",
+  "[ 25/16 → 13/8 | note:Ab3 ]",
+  "[ 13/8 → 27/16 | note:F3 ]",
   "[ 27/16 → 7/4 | note:D3 ]",
-  "[ 7/4 → 29/16 | note:D3 ]",
-  "[ 29/16 → 15/8 | note:Eb3 ]",
-  "[ 15/8 → 31/16 | note:G3 ]",
-  "[ 31/16 → 2/1 | note:C4 ]",
-  "[ 2/1 → 33/16 | note:Eb4 ]",
-  "[ 33/16 → 17/8 | note:Ab4 ]",
-  "[ 17/8 → 35/16 | note:C5 ]",
+  "[ 7/4 → 29/16 | note:C3 ]",
+  "[ 29/16 → 15/8 | note:D3 ]",
+  "[ 15/8 → 31/16 | note:F3 ]",
+  "[ 31/16 → 2/1 | note:Ab3 ]",
+  "[ 2/1 → 33/16 | note:D4 ]",
+  "[ 33/16 → 17/8 | note:G4 ]",
+  "[ 17/8 → 35/16 | note:Bb4 ]",
   "[ 35/16 → 9/4 | note:D5 ]",
   "[ 9/4 → 37/16 | note:D5 ]",
-  "[ 37/16 → 19/8 | note:C5 ]",
-  "[ 19/8 → 39/16 | note:Ab4 ]",
-  "[ 39/16 → 5/2 | note:Eb4 ]",
-  "[ 5/2 → 41/16 | note:C4 ]",
-  "[ 41/16 → 21/8 | note:G3 ]",
-  "[ 21/8 → 43/16 | note:Eb3 ]",
+  "[ 37/16 → 19/8 | note:D5 ]",
+  "[ 19/8 → 39/16 | note:Bb4 ]",
+  "[ 39/16 → 5/2 | note:G4 ]",
+  "[ 5/2 → 41/16 | note:D4 ]",
+  "[ 41/16 → 21/8 | note:Ab3 ]",
+  "[ 21/8 → 43/16 | note:F3 ]",
   "[ 43/16 → 11/4 | note:D3 ]",
-  "[ 11/4 → 45/16 | note:D3 ]",
-  "[ 45/16 → 23/8 | note:Eb3 ]",
-  "[ 23/8 → 47/16 | note:G3 ]",
-  "[ 47/16 → 3/1 | note:C4 ]",
-  "[ 3/1 → 49/16 | note:Eb4 ]",
-  "[ 49/16 → 25/8 | note:Ab4 ]",
-  "[ 25/8 → 51/16 | note:C5 ]",
+  "[ 11/4 → 45/16 | note:C3 ]",
+  "[ 45/16 → 23/8 | note:D3 ]",
+  "[ 23/8 → 47/16 | note:F3 ]",
+  "[ 47/16 → 3/1 | note:Ab3 ]",
+  "[ 3/1 → 49/16 | note:D4 ]",
+  "[ 49/16 → 25/8 | note:G4 ]",
+  "[ 25/8 → 51/16 | note:Bb4 ]",
   "[ 51/16 → 13/4 | note:D5 ]",
   "[ 13/4 → 53/16 | note:D5 ]",
-  "[ 53/16 → 27/8 | note:C5 ]",
-  "[ 27/8 → 55/16 | note:Ab4 ]",
-  "[ 55/16 → 7/2 | note:Eb4 ]",
-  "[ 7/2 → 57/16 | note:C4 ]",
-  "[ 57/16 → 29/8 | note:G3 ]",
-  "[ 29/8 → 59/16 | note:Eb3 ]",
+  "[ 53/16 → 27/8 | note:D5 ]",
+  "[ 27/8 → 55/16 | note:Bb4 ]",
+  "[ 55/16 → 7/2 | note:G4 ]",
+  "[ 7/2 → 57/16 | note:D4 ]",
+  "[ 57/16 → 29/8 | note:Ab3 ]",
+  "[ 29/8 → 59/16 | note:F3 ]",
   "[ 59/16 → 15/4 | note:D3 ]",
-  "[ 15/4 → 61/16 | note:D3 ]",
-  "[ 61/16 → 31/8 | note:Eb3 ]",
-  "[ 31/8 → 63/16 | note:G3 ]",
-  "[ 63/16 → 4/1 | note:C4 ]",
+  "[ 15/4 → 61/16 | note:C3 ]",
+  "[ 61/16 → 31/8 | note:D3 ]",
+  "[ 31/8 → 63/16 | note:F3 ]",
+  "[ 63/16 → 4/1 | note:Ab3 ]",
 ]
 `;
 
@@ -7967,15 +7962,15 @@ exports[`runs examples > example "someCycles" example index 0 1`] = `
   "[ 13/8 → 7/4 | s:hh ]",
   "[ 7/4 → 15/8 | s:hh ]",
   "[ 15/8 → 2/1 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh speed:0.5 ]",
-  "[ 2/1 → 3/1 | s:bd speed:0.5 ]",
-  "[ 17/8 → 9/4 | s:hh speed:0.5 ]",
-  "[ 9/4 → 19/8 | s:hh speed:0.5 ]",
-  "[ 19/8 → 5/2 | s:hh speed:0.5 ]",
-  "[ 5/2 → 21/8 | s:hh speed:0.5 ]",
-  "[ 21/8 → 11/4 | s:hh speed:0.5 ]",
-  "[ 11/4 → 23/8 | s:hh speed:0.5 ]",
-  "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
+  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 2/1 → 3/1 | s:bd ]",
+  "[ 17/8 → 9/4 | s:hh ]",
+  "[ 9/4 → 19/8 | s:hh ]",
+  "[ 19/8 → 5/2 | s:hh ]",
+  "[ 5/2 → 21/8 | s:hh ]",
+  "[ 21/8 → 11/4 | s:hh ]",
+  "[ 11/4 → 23/8 | s:hh ]",
+  "[ 23/8 → 3/1 | s:hh ]",
   "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
   "[ 3/1 → 4/1 | s:bd speed:0.5 ]",
   "[ 25/8 → 13/4 | s:hh speed:0.5 ]",
@@ -8017,89 +8012,89 @@ exports[`runs examples > example "someCyclesBy" example index 0 1`] = `
   "[ 21/8 → 11/4 | s:hh ]",
   "[ 11/4 → 23/8 | s:hh ]",
   "[ 23/8 → 3/1 | s:hh ]",
-  "[ 3/1 → 25/8 | s:hh ]",
-  "[ 3/1 → 4/1 | s:bd ]",
-  "[ 25/8 → 13/4 | s:hh ]",
+  "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
+  "[ 3/1 → 4/1 | s:bd speed:0.5 ]",
+  "[ 25/8 → 13/4 | s:hh speed:0.5 ]",
+  "[ 13/4 → 27/8 | s:hh speed:0.5 ]",
+  "[ 27/8 → 7/2 | s:hh speed:0.5 ]",
+  "[ 7/2 → 29/8 | s:hh speed:0.5 ]",
+  "[ 29/8 → 15/4 | s:hh speed:0.5 ]",
+  "[ 15/4 → 31/8 | s:hh speed:0.5 ]",
+  "[ 31/8 → 4/1 | s:hh speed:0.5 ]",
+]
+`;
+
+exports[`runs examples > example "sometimes" example index 0 1`] = `
+[
+  "[ 0/1 → 1/8 | s:hh speed:0.5 ]",
+  "[ 1/8 → 1/4 | s:hh ]",
+  "[ 1/4 → 3/8 | s:hh speed:0.5 ]",
+  "[ 3/8 → 1/2 | s:hh speed:0.5 ]",
+  "[ 1/2 → 5/8 | s:hh speed:0.5 ]",
+  "[ 5/8 → 3/4 | s:hh speed:0.5 ]",
+  "[ 3/4 → 7/8 | s:hh speed:0.5 ]",
+  "[ 7/8 → 1/1 | s:hh speed:0.5 ]",
+  "[ 1/1 → 9/8 | s:hh ]",
+  "[ 9/8 → 5/4 | s:hh ]",
+  "[ 5/4 → 11/8 | s:hh ]",
+  "[ 11/8 → 3/2 | s:hh speed:0.5 ]",
+  "[ 3/2 → 13/8 | s:hh ]",
+  "[ 13/8 → 7/4 | s:hh speed:0.5 ]",
+  "[ 7/4 → 15/8 | s:hh speed:0.5 ]",
+  "[ 15/8 → 2/1 | s:hh ]",
+  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 17/8 → 9/4 | s:hh ]",
+  "[ 9/4 → 19/8 | s:hh speed:0.5 ]",
+  "[ 19/8 → 5/2 | s:hh ]",
+  "[ 5/2 → 21/8 | s:hh speed:0.5 ]",
+  "[ 21/8 → 11/4 | s:hh speed:0.5 ]",
+  "[ 11/4 → 23/8 | s:hh ]",
+  "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
+  "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
+  "[ 25/8 → 13/4 | s:hh speed:0.5 ]",
   "[ 13/4 → 27/8 | s:hh ]",
-  "[ 27/8 → 7/2 | s:hh ]",
-  "[ 7/2 → 29/8 | s:hh ]",
+  "[ 27/8 → 7/2 | s:hh speed:0.5 ]",
+  "[ 7/2 → 29/8 | s:hh speed:0.5 ]",
   "[ 29/8 → 15/4 | s:hh ]",
   "[ 15/4 → 31/8 | s:hh ]",
   "[ 31/8 → 4/1 | s:hh ]",
 ]
 `;
 
-exports[`runs examples > example "sometimes" example index 0 1`] = `
-[
-  "[ 0/1 → 1/8 | s:hh ]",
-  "[ 1/8 → 1/4 | s:hh speed:0.5 ]",
-  "[ 1/4 → 3/8 | s:hh ]",
-  "[ 3/8 → 1/2 | s:hh speed:0.5 ]",
-  "[ 1/2 → 5/8 | s:hh speed:0.5 ]",
-  "[ 5/8 → 3/4 | s:hh speed:0.5 ]",
-  "[ 3/4 → 7/8 | s:hh ]",
-  "[ 7/8 → 1/1 | s:hh ]",
-  "[ 1/1 → 9/8 | s:hh ]",
-  "[ 9/8 → 5/4 | s:hh speed:0.5 ]",
-  "[ 5/4 → 11/8 | s:hh speed:0.5 ]",
-  "[ 11/8 → 3/2 | s:hh ]",
-  "[ 3/2 → 13/8 | s:hh speed:0.5 ]",
-  "[ 13/8 → 7/4 | s:hh speed:0.5 ]",
-  "[ 7/4 → 15/8 | s:hh speed:0.5 ]",
-  "[ 15/8 → 2/1 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh speed:0.5 ]",
-  "[ 17/8 → 9/4 | s:hh speed:0.5 ]",
-  "[ 9/4 → 19/8 | s:hh ]",
-  "[ 19/8 → 5/2 | s:hh speed:0.5 ]",
-  "[ 5/2 → 21/8 | s:hh ]",
-  "[ 21/8 → 11/4 | s:hh ]",
-  "[ 11/4 → 23/8 | s:hh ]",
-  "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
-  "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
-  "[ 25/8 → 13/4 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh speed:0.5 ]",
-  "[ 27/8 → 7/2 | s:hh ]",
-  "[ 7/2 → 29/8 | s:hh ]",
-  "[ 29/8 → 15/4 | s:hh ]",
-  "[ 15/4 → 31/8 | s:hh speed:0.5 ]",
-  "[ 31/8 → 4/1 | s:hh speed:0.5 ]",
-]
-`;
-
 exports[`runs examples > example "sometimesBy" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | s:hh ]",
-  "[ 1/8 → 1/4 | s:hh speed:0.5 ]",
-  "[ 1/4 → 3/8 | s:hh ]",
-  "[ 3/8 → 1/2 | s:hh speed:0.5 ]",
+  "[ 0/1 → 1/8 | s:hh speed:0.5 ]",
+  "[ 1/8 → 1/4 | s:hh ]",
+  "[ 1/4 → 3/8 | s:hh speed:0.5 ]",
+  "[ 3/8 → 1/2 | s:hh ]",
   "[ 1/2 → 5/8 | s:hh speed:0.5 ]",
-  "[ 5/8 → 3/4 | s:hh ]",
-  "[ 3/4 → 7/8 | s:hh ]",
-  "[ 7/8 → 1/1 | s:hh ]",
+  "[ 5/8 → 3/4 | s:hh speed:0.5 ]",
+  "[ 3/4 → 7/8 | s:hh speed:0.5 ]",
+  "[ 7/8 → 1/1 | s:hh speed:0.5 ]",
   "[ 1/1 → 9/8 | s:hh ]",
-  "[ 9/8 → 5/4 | s:hh speed:0.5 ]",
-  "[ 5/4 → 11/8 | s:hh speed:0.5 ]",
-  "[ 11/8 → 3/2 | s:hh ]",
-  "[ 3/2 → 13/8 | s:hh speed:0.5 ]",
-  "[ 13/8 → 7/4 | s:hh speed:0.5 ]",
-  "[ 7/4 → 15/8 | s:hh ]",
+  "[ 9/8 → 5/4 | s:hh ]",
+  "[ 5/4 → 11/8 | s:hh ]",
+  "[ 11/8 → 3/2 | s:hh speed:0.5 ]",
+  "[ 3/2 → 13/8 | s:hh ]",
+  "[ 13/8 → 7/4 | s:hh ]",
+  "[ 7/4 → 15/8 | s:hh speed:0.5 ]",
   "[ 15/8 → 2/1 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh speed:0.5 ]",
-  "[ 17/8 → 9/4 | s:hh speed:0.5 ]",
-  "[ 9/4 → 19/8 | s:hh ]",
-  "[ 19/8 → 5/2 | s:hh speed:0.5 ]",
+  "[ 2/1 → 17/8 | s:hh ]",
+  "[ 17/8 → 9/4 | s:hh ]",
+  "[ 9/4 → 19/8 | s:hh speed:0.5 ]",
+  "[ 19/8 → 5/2 | s:hh ]",
   "[ 5/2 → 21/8 | s:hh ]",
-  "[ 21/8 → 11/4 | s:hh ]",
+  "[ 21/8 → 11/4 | s:hh speed:0.5 ]",
   "[ 11/4 → 23/8 | s:hh ]",
   "[ 23/8 → 3/1 | s:hh speed:0.5 ]",
   "[ 3/1 → 25/8 | s:hh speed:0.5 ]",
-  "[ 25/8 → 13/4 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh speed:0.5 ]",
+  "[ 25/8 → 13/4 | s:hh speed:0.5 ]",
+  "[ 13/4 → 27/8 | s:hh ]",
   "[ 27/8 → 7/2 | s:hh ]",
   "[ 7/2 → 29/8 | s:hh ]",
   "[ 29/8 → 15/4 | s:hh ]",
-  "[ 15/4 → 31/8 | s:hh speed:0.5 ]",
-  "[ 31/8 → 4/1 | s:hh speed:0.5 ]",
+  "[ 15/4 → 31/8 | s:hh ]",
+  "[ 31/8 → 4/1 | s:hh ]",
 ]
 `;
 
@@ -9005,109 +9000,111 @@ exports[`runs examples > example "transpose" example index 1 1`] = `
 exports[`runs examples > example "tri" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | note:C4 ]",
-  "[ 1/8 → 1/4 | note:Ab3 ]",
-  "[ 1/4 → 3/8 | note:F3 ]",
-  "[ 3/8 → 1/2 | note:D3 ]",
-  "[ 1/2 → 5/8 | note:D3 ]",
-  "[ 5/8 → 3/4 | note:F3 ]",
-  "[ 3/4 → 7/8 | note:Ab3 ]",
-  "[ 7/8 → 1/1 | note:C4 ]",
+  "[ 1/8 → 1/4 | note:Bb3 ]",
+  "[ 1/4 → 3/8 | note:G3 ]",
+  "[ 3/8 → 1/2 | note:Eb3 ]",
+  "[ 1/2 → 5/8 | note:C3 ]",
+  "[ 5/8 → 3/4 | note:Eb3 ]",
+  "[ 3/4 → 7/8 | note:G3 ]",
+  "[ 7/8 → 1/1 | note:Bb3 ]",
   "[ 1/1 → 9/8 | note:C4 ]",
-  "[ 9/8 → 5/4 | note:Ab3 ]",
-  "[ 5/4 → 11/8 | note:F3 ]",
-  "[ 11/8 → 3/2 | note:D3 ]",
-  "[ 3/2 → 13/8 | note:D3 ]",
-  "[ 13/8 → 7/4 | note:F3 ]",
-  "[ 7/4 → 15/8 | note:Ab3 ]",
-  "[ 15/8 → 2/1 | note:C4 ]",
+  "[ 9/8 → 5/4 | note:Bb3 ]",
+  "[ 5/4 → 11/8 | note:G3 ]",
+  "[ 11/8 → 3/2 | note:Eb3 ]",
+  "[ 3/2 → 13/8 | note:C3 ]",
+  "[ 13/8 → 7/4 | note:Eb3 ]",
+  "[ 7/4 → 15/8 | note:G3 ]",
+  "[ 15/8 → 2/1 | note:Bb3 ]",
   "[ 2/1 → 17/8 | note:C4 ]",
-  "[ 17/8 → 9/4 | note:Ab3 ]",
-  "[ 9/4 → 19/8 | note:F3 ]",
-  "[ 19/8 → 5/2 | note:D3 ]",
-  "[ 5/2 → 21/8 | note:D3 ]",
-  "[ 21/8 → 11/4 | note:F3 ]",
-  "[ 11/4 → 23/8 | note:Ab3 ]",
-  "[ 23/8 → 3/1 | note:C4 ]",
+  "[ 17/8 → 9/4 | note:Bb3 ]",
+  "[ 9/4 → 19/8 | note:G3 ]",
+  "[ 19/8 → 5/2 | note:Eb3 ]",
+  "[ 5/2 → 21/8 | note:C3 ]",
+  "[ 21/8 → 11/4 | note:Eb3 ]",
+  "[ 11/4 → 23/8 | note:G3 ]",
+  "[ 23/8 → 3/1 | note:Bb3 ]",
   "[ 3/1 → 25/8 | note:C4 ]",
-  "[ 25/8 → 13/4 | note:Ab3 ]",
-  "[ 13/4 → 27/8 | note:F3 ]",
-  "[ 27/8 → 7/2 | note:D3 ]",
-  "[ 7/2 → 29/8 | note:D3 ]",
-  "[ 29/8 → 15/4 | note:F3 ]",
-  "[ 15/4 → 31/8 | note:Ab3 ]",
-  "[ 31/8 → 4/1 | note:C4 ]",
+  "[ 25/8 → 13/4 | note:Bb3 ]",
+  "[ 13/4 → 27/8 | note:G3 ]",
+  "[ 27/8 → 7/2 | note:Eb3 ]",
+  "[ 7/2 → 29/8 | note:C3 ]",
+  "[ 29/8 → 15/4 | note:Eb3 ]",
+  "[ 15/4 → 31/8 | note:G3 ]",
+  "[ 31/8 → 4/1 | note:Bb3 ]",
 ]
 `;
 
 exports[`runs examples > example "undegrade" example index 0 1`] = `
 [
-  "[ 1/8 → 1/4 | s:hh ]",
+  "[ 0/1 → 1/8 | s:hh ]",
+  "[ 1/4 → 3/8 | s:hh ]",
   "[ 3/8 → 1/2 | s:hh ]",
   "[ 1/2 → 5/8 | s:hh ]",
   "[ 5/8 → 3/4 | s:hh ]",
-  "[ 9/8 → 5/4 | s:hh ]",
-  "[ 5/4 → 11/8 | s:hh ]",
-  "[ 3/2 → 13/8 | s:hh ]",
+  "[ 3/4 → 7/8 | s:hh ]",
+  "[ 7/8 → 1/1 | s:hh ]",
+  "[ 11/8 → 3/2 | s:hh ]",
   "[ 13/8 → 7/4 | s:hh ]",
   "[ 7/4 → 15/8 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh ]",
-  "[ 17/8 → 9/4 | s:hh ]",
-  "[ 19/8 → 5/2 | s:hh ]",
+  "[ 9/4 → 19/8 | s:hh ]",
+  "[ 5/2 → 21/8 | s:hh ]",
+  "[ 21/8 → 11/4 | s:hh ]",
   "[ 23/8 → 3/1 | s:hh ]",
   "[ 3/1 → 25/8 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh ]",
-  "[ 15/4 → 31/8 | s:hh ]",
-  "[ 31/8 → 4/1 | s:hh ]",
+  "[ 25/8 → 13/4 | s:hh ]",
+  "[ 27/8 → 7/2 | s:hh ]",
+  "[ 7/2 → 29/8 | s:hh ]",
 ]
 `;
 
 exports[`runs examples > example "undegrade" example index 1 1`] = `
 [
-  "[ 0/1 → 1/10 | s:hh pan:0 ]",
-  "[ 1/10 → 1/5 | s:hh pan:0 ]",
-  "[ 1/5 → 3/10 | s:hh pan:1 ]",
-  "[ 3/10 → 2/5 | s:hh pan:1 ]",
+  "[ 0/1 → 1/10 | s:hh pan:1 ]",
+  "[ 1/10 → 1/5 | s:hh pan:1 ]",
+  "[ 1/5 → 3/10 | s:hh pan:0 ]",
+  "[ 3/10 → 2/5 | s:hh pan:0 ]",
   "[ 2/5 → 1/2 | s:hh pan:0 ]",
   "[ 1/2 → 3/5 | s:hh pan:1 ]",
   "[ 3/5 → 7/10 | s:hh pan:0 ]",
-  "[ 7/10 → 4/5 | s:hh pan:1 ]",
-  "[ 4/5 → 9/10 | s:hh pan:0 ]",
-  "[ 9/10 → 1/1 | s:hh pan:1 ]",
-  "[ 1/1 → 11/10 | s:hh pan:1 ]",
+  "[ 7/10 → 4/5 | s:hh pan:0 ]",
+  "[ 4/5 → 9/10 | s:hh pan:1 ]",
+  "[ 9/10 → 1/1 | s:hh pan:0 ]",
+  "[ 1/1 → 11/10 | s:hh pan:0 ]",
   "[ 11/10 → 6/5 | s:hh pan:0 ]",
-  "[ 6/5 → 13/10 | s:hh pan:0 ]",
-  "[ 13/10 → 7/5 | s:hh pan:0 ]",
+  "[ 6/5 → 13/10 | s:hh pan:1 ]",
+  "[ 13/10 → 7/5 | s:hh pan:1 ]",
   "[ 7/5 → 3/2 | s:hh pan:1 ]",
-  "[ 3/2 → 8/5 | s:hh pan:1 ]",
+  "[ 3/2 → 8/5 | s:hh pan:0 ]",
   "[ 8/5 → 17/10 | s:hh pan:1 ]",
   "[ 17/10 → 9/5 | s:hh pan:1 ]",
   "[ 9/5 → 19/10 | s:hh pan:1 ]",
-  "[ 19/10 → 2/1 | s:hh pan:0 ]",
+  "[ 19/10 → 2/1 | s:hh pan:1 ]",
   "[ 2/1 → 21/10 | s:hh pan:0 ]",
-  "[ 21/10 → 11/5 | s:hh pan:0 ]",
-  "[ 11/5 → 23/10 | s:hh pan:1 ]",
+  "[ 21/10 → 11/5 | s:hh pan:1 ]",
+  "[ 11/5 → 23/10 | s:hh pan:0 ]",
   "[ 23/10 → 12/5 | s:hh pan:0 ]",
   "[ 12/5 → 5/2 | s:hh pan:0 ]",
-  "[ 5/2 → 13/5 | s:hh pan:0 ]",
-  "[ 13/5 → 27/10 | s:hh pan:0 ]",
-  "[ 27/10 → 14/5 | s:hh pan:0 ]",
-  "[ 14/5 → 29/10 | s:hh pan:1 ]",
+  "[ 5/2 → 13/5 | s:hh pan:1 ]",
+  "[ 13/5 → 27/10 | s:hh pan:1 ]",
+  "[ 27/10 → 14/5 | s:hh pan:1 ]",
+  "[ 14/5 → 29/10 | s:hh pan:0 ]",
   "[ 29/10 → 3/1 | s:hh pan:1 ]",
   "[ 3/1 → 31/10 | s:hh pan:1 ]",
   "[ 31/10 → 16/5 | s:hh pan:1 ]",
-  "[ 16/5 → 33/10 | s:hh pan:0 ]",
+  "[ 16/5 → 33/10 | s:hh pan:1 ]",
   "[ 33/10 → 17/5 | s:hh pan:0 ]",
   "[ 17/5 → 7/2 | s:hh pan:0 ]",
   "[ 7/2 → 18/5 | s:hh pan:1 ]",
-  "[ 18/5 → 37/10 | s:hh pan:1 ]",
+  "[ 18/5 → 37/10 | s:hh pan:0 ]",
   "[ 37/10 → 19/5 | s:hh pan:0 ]",
-  "[ 19/5 → 39/10 | s:hh pan:0 ]",
+  "[ 19/5 → 39/10 | s:hh pan:1 ]",
   "[ 39/10 → 4/1 | s:hh pan:1 ]",
 ]
 `;
 
 exports[`runs examples > example "undegradeBy" example index 0 1`] = `
 [
+  "[ 0/1 → 1/8 | s:hh ]",
   "[ 1/8 → 1/4 | s:hh ]",
   "[ 1/4 → 3/8 | s:hh ]",
   "[ 3/8 → 1/2 | s:hh ]",
@@ -9122,43 +9119,42 @@ exports[`runs examples > example "undegradeBy" example index 0 1`] = `
   "[ 3/2 → 13/8 | s:hh ]",
   "[ 13/8 → 7/4 | s:hh ]",
   "[ 7/4 → 15/8 | s:hh ]",
-  "[ 2/1 → 17/8 | s:hh ]",
-  "[ 17/8 → 9/4 | s:hh ]",
+  "[ 15/8 → 2/1 | s:hh ]",
   "[ 9/4 → 19/8 | s:hh ]",
-  "[ 19/8 → 5/2 | s:hh ]",
   "[ 5/2 → 21/8 | s:hh ]",
   "[ 21/8 → 11/4 | s:hh ]",
+  "[ 11/4 → 23/8 | s:hh ]",
   "[ 23/8 → 3/1 | s:hh ]",
   "[ 3/1 → 25/8 | s:hh ]",
-  "[ 13/4 → 27/8 | s:hh ]",
+  "[ 25/8 → 13/4 | s:hh ]",
   "[ 27/8 → 7/2 | s:hh ]",
-  "[ 15/4 → 31/8 | s:hh ]",
+  "[ 7/2 → 29/8 | s:hh ]",
   "[ 31/8 → 4/1 | s:hh ]",
 ]
 `;
 
 exports[`runs examples > example "undegradeBy" example index 1 1`] = `
 [
-  "[ 0/1 → 1/10 | s:hh pan:0 ]",
-  "[ 1/10 → 1/5 | s:hh pan:0 ]",
+  "[ 0/1 → 1/10 | s:hh pan:1 ]",
+  "[ 1/10 → 1/5 | s:hh pan:1 ]",
   "[ 1/5 → 3/10 | s:hh pan:0 ]",
   "[ 3/10 → 2/5 | s:hh pan:0 ]",
   "[ 2/5 → 1/2 | s:hh pan:0 ]",
   "[ 1/2 → 3/5 | s:hh pan:0 ]",
   "[ 3/5 → 7/10 | s:hh pan:0 ]",
-  "[ 7/10 → 4/5 | s:hh pan:1 ]",
+  "[ 7/10 → 4/5 | s:hh pan:0 ]",
   "[ 4/5 → 9/10 | s:hh pan:0 ]",
-  "[ 9/10 → 1/1 | s:hh pan:1 ]",
-  "[ 1/1 → 11/10 | s:hh pan:1 ]",
+  "[ 9/10 → 1/1 | s:hh pan:0 ]",
+  "[ 1/1 → 11/10 | s:hh pan:0 ]",
   "[ 11/10 → 6/5 | s:hh pan:0 ]",
   "[ 6/5 → 13/10 | s:hh pan:0 ]",
   "[ 13/10 → 7/5 | s:hh pan:0 ]",
   "[ 7/5 → 3/2 | s:hh pan:0 ]",
-  "[ 3/2 → 8/5 | s:hh pan:1 ]",
-  "[ 8/5 → 17/10 | s:hh pan:1 ]",
+  "[ 3/2 → 8/5 | s:hh pan:0 ]",
+  "[ 8/5 → 17/10 | s:hh pan:0 ]",
   "[ 17/10 → 9/5 | s:hh pan:0 ]",
   "[ 9/5 → 19/10 | s:hh pan:0 ]",
-  "[ 19/10 → 2/1 | s:hh pan:0 ]",
+  "[ 19/10 → 2/1 | s:hh pan:1 ]",
   "[ 2/1 → 21/10 | s:hh pan:0 ]",
   "[ 21/10 → 11/5 | s:hh pan:0 ]",
   "[ 11/5 → 23/10 | s:hh pan:0 ]",
@@ -9171,14 +9167,14 @@ exports[`runs examples > example "undegradeBy" example index 1 1`] = `
   "[ 29/10 → 3/1 | s:hh pan:0 ]",
   "[ 3/1 → 31/10 | s:hh pan:0 ]",
   "[ 31/10 → 16/5 | s:hh pan:1 ]",
-  "[ 16/5 → 33/10 | s:hh pan:0 ]",
+  "[ 16/5 → 33/10 | s:hh pan:1 ]",
   "[ 33/10 → 17/5 | s:hh pan:0 ]",
   "[ 17/5 → 7/2 | s:hh pan:0 ]",
   "[ 7/2 → 18/5 | s:hh pan:0 ]",
   "[ 18/5 → 37/10 | s:hh pan:0 ]",
   "[ 37/10 → 19/5 | s:hh pan:0 ]",
-  "[ 19/5 → 39/10 | s:hh pan:0 ]",
-  "[ 39/10 → 4/1 | s:hh pan:1 ]",
+  "[ 19/5 → 39/10 | s:hh pan:1 ]",
+  "[ 39/10 → 4/1 | s:hh pan:0 ]",
 ]
 `;
 
@@ -9414,56 +9410,56 @@ exports[`runs examples > example "vowel" example index 0 1`] = `
 
 exports[`runs examples > example "vowel" example index 1 1`] = `
 [
-  "[ 0/1 → 1/8 | s:bd vowel:e ]",
-  "[ 1/8 → 1/4 | s:sd vowel:e ]",
-  "[ 1/4 → 3/8 | s:mt vowel:e ]",
-  "[ 3/8 → 1/2 | s:ht vowel:e ]",
-  "[ 1/2 → 5/8 | s:bd vowel:e ]",
-  "[ 11/16 → 3/4 | s:cp vowel:e ]",
-  "[ 3/4 → 7/8 | s:ht vowel:e ]",
-  "[ 7/8 → 1/1 | s:lt vowel:e ]",
-  "[ 1/1 → 9/8 | s:bd vowel:o ]",
-  "[ 9/8 → 5/4 | s:sd vowel:o ]",
-  "[ 5/4 → 11/8 | s:mt vowel:o ]",
-  "[ 11/8 → 3/2 | s:ht vowel:o ]",
-  "[ 3/2 → 13/8 | s:bd vowel:o ]",
-  "[ 27/16 → 7/4 | s:cp vowel:o ]",
-  "[ 7/4 → 15/8 | s:ht vowel:o ]",
-  "[ 15/8 → 2/1 | s:lt vowel:o ]",
-  "[ 2/1 → 17/8 | s:bd vowel:i ]",
-  "[ 17/8 → 9/4 | s:sd vowel:i ]",
-  "[ 9/4 → 19/8 | s:mt vowel:i ]",
-  "[ 19/8 → 5/2 | s:ht vowel:i ]",
-  "[ 5/2 → 21/8 | s:bd vowel:i ]",
-  "[ 43/16 → 11/4 | s:cp vowel:i ]",
-  "[ 11/4 → 23/8 | s:ht vowel:i ]",
-  "[ 23/8 → 3/1 | s:lt vowel:i ]",
-  "[ 3/1 → 25/8 | s:bd vowel:i ]",
-  "[ 25/8 → 13/4 | s:sd vowel:i ]",
-  "[ 13/4 → 27/8 | s:mt vowel:i ]",
-  "[ 27/8 → 7/2 | s:ht vowel:i ]",
-  "[ 7/2 → 29/8 | s:bd vowel:i ]",
-  "[ 59/16 → 15/4 | s:cp vowel:i ]",
-  "[ 15/4 → 31/8 | s:ht vowel:i ]",
-  "[ 31/8 → 4/1 | s:lt vowel:i ]",
+  "[ 0/1 → 1/8 | s:bd vowel:a ]",
+  "[ 1/8 → 1/4 | s:sd vowel:a ]",
+  "[ 1/4 → 3/8 | s:mt vowel:a ]",
+  "[ 3/8 → 1/2 | s:ht vowel:a ]",
+  "[ 1/2 → 5/8 | s:bd vowel:a ]",
+  "[ 11/16 → 3/4 | s:cp vowel:a ]",
+  "[ 3/4 → 7/8 | s:ht vowel:a ]",
+  "[ 7/8 → 1/1 | s:lt vowel:a ]",
+  "[ 1/1 → 9/8 | s:bd vowel:i ]",
+  "[ 9/8 → 5/4 | s:sd vowel:i ]",
+  "[ 5/4 → 11/8 | s:mt vowel:i ]",
+  "[ 11/8 → 3/2 | s:ht vowel:i ]",
+  "[ 3/2 → 13/8 | s:bd vowel:i ]",
+  "[ 27/16 → 7/4 | s:cp vowel:i ]",
+  "[ 7/4 → 15/8 | s:ht vowel:i ]",
+  "[ 15/8 → 2/1 | s:lt vowel:i ]",
+  "[ 2/1 → 17/8 | s:bd vowel:u ]",
+  "[ 17/8 → 9/4 | s:sd vowel:u ]",
+  "[ 9/4 → 19/8 | s:mt vowel:u ]",
+  "[ 19/8 → 5/2 | s:ht vowel:u ]",
+  "[ 5/2 → 21/8 | s:bd vowel:u ]",
+  "[ 43/16 → 11/4 | s:cp vowel:u ]",
+  "[ 11/4 → 23/8 | s:ht vowel:u ]",
+  "[ 23/8 → 3/1 | s:lt vowel:u ]",
+  "[ 3/1 → 25/8 | s:bd vowel:e ]",
+  "[ 25/8 → 13/4 | s:sd vowel:e ]",
+  "[ 13/4 → 27/8 | s:mt vowel:e ]",
+  "[ 27/8 → 7/2 | s:ht vowel:e ]",
+  "[ 7/2 → 29/8 | s:bd vowel:e ]",
+  "[ 59/16 → 15/4 | s:cp vowel:e ]",
+  "[ 15/4 → 31/8 | s:ht vowel:e ]",
+  "[ 31/8 → 4/1 | s:lt vowel:e ]",
 ]
 `;
 
 exports[`runs examples > example "wchoose" example index 0 1`] = `
 [
   "[ 0/1 → 1/5 | note:c2 s:sine ]",
-  "[ 1/5 → 2/5 | note:g2 s:triangle ]",
+  "[ 1/5 → 2/5 | note:g2 s:sine ]",
   "[ 2/5 → 3/5 | note:g2 s:sine ]",
   "[ 3/5 → 4/5 | note:d2 s:sine ]",
-  "[ 4/5 → 1/1 | note:f1 s:triangle ]",
-  "[ 1/1 → 6/5 | note:c2 s:triangle ]",
+  "[ 4/5 → 1/1 | note:f1 s:sine ]",
+  "[ 1/1 → 6/5 | note:c2 s:sine ]",
   "[ 6/5 → 7/5 | note:g2 s:sine ]",
   "[ 7/5 → 8/5 | note:g2 s:sine ]",
   "[ 8/5 → 9/5 | note:d2 s:sine ]",
   "[ 9/5 → 2/1 | note:f1 s:sine ]",
-  "[ 2/1 → 11/5 | note:c2 s:sine ]",
+  "[ 2/1 → 11/5 | note:c2 s:bd n:6 ]",
   "[ 11/5 → 12/5 | note:g2 s:sine ]",
-  "[ 12/5 → 13/5 | note:g2 s:sine ]",
+  "[ 12/5 → 13/5 | note:g2 s:bd n:6 ]",
   "[ 13/5 → 14/5 | note:d2 s:sine ]",
   "[ 14/5 → 3/1 | note:f1 s:sine ]",
   "[ 3/1 → 16/5 | note:c2 s:sine ]",
@@ -9478,18 +9474,18 @@ exports[`runs examples > example "wchooseCycles" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | s:bd ]",
   "[ 1/8 → 1/4 | s:bd ]",
-  "[ 1/4 → 3/8 | s:bd ]",
+  "[ 1/4 → 3/8 | s:sd ]",
   "[ 3/8 → 1/2 | s:bd ]",
   "[ 1/2 → 5/8 | s:bd ]",
   "[ 5/8 → 3/4 | s:bd ]",
-  "[ 3/4 → 7/8 | s:sd ]",
+  "[ 3/4 → 7/8 | s:bd ]",
   "[ 7/8 → 1/1 | s:bd ]",
-  "[ 1/1 → 9/8 | s:bd ]",
+  "[ 1/1 → 9/8 | s:hh ]",
   "[ 9/8 → 5/4 | s:bd ]",
   "[ 5/4 → 11/8 | s:bd ]",
-  "[ 11/8 → 3/2 | s:sd ]",
+  "[ 11/8 → 3/2 | s:bd ]",
   "[ 3/2 → 13/8 | s:bd ]",
-  "[ 13/8 → 7/4 | s:bd ]",
+  "[ 13/8 → 7/4 | s:sd ]",
   "[ 7/4 → 15/8 | s:bd ]",
   "[ 15/8 → 2/1 | s:bd ]",
   "[ 2/1 → 17/8 | s:bd ]",
@@ -9498,7 +9494,7 @@ exports[`runs examples > example "wchooseCycles" example index 0 1`] = `
   "[ 19/8 → 5/2 | s:bd ]",
   "[ 5/2 → 21/8 | s:bd ]",
   "[ 21/8 → 11/4 | s:bd ]",
-  "[ 11/4 → 23/8 | s:hh ]",
+  "[ 11/4 → 23/8 | s:sd ]",
   "[ 23/8 → 3/1 | s:bd ]",
   "[ 3/1 → 25/8 | s:bd ]",
   "[ 25/8 → 13/4 | s:bd ]",
@@ -9516,12 +9512,12 @@ exports[`runs examples > example "wchooseCycles" example index 1 1`] = `
   "[ 0/1 → 1/12 | s:bd ]",
   "[ 1/12 → 1/6 | s:bd ]",
   "[ 1/6 → 1/4 | s:bd ]",
-  "[ 1/4 → 1/3 | s:hh ]",
-  "[ 1/3 → 5/12 | s:hh ]",
-  "[ 5/12 → 1/2 | s:hh ]",
-  "[ 1/2 → 7/12 | s:bd ]",
-  "[ 7/12 → 2/3 | s:bd ]",
-  "[ 2/3 → 3/4 | s:bd ]",
+  "[ 1/4 → 1/3 | s:bd ]",
+  "[ 1/3 → 5/12 | s:bd ]",
+  "[ 5/12 → 1/2 | s:bd ]",
+  "[ 1/2 → 7/12 | s:sd ]",
+  "[ 7/12 → 2/3 | s:sd ]",
+  "[ 2/3 → 3/4 | s:sd ]",
   "[ 3/4 → 5/6 | s:bd ]",
   "[ 5/6 → 11/12 | s:bd ]",
   "[ 11/12 → 1/1 | s:bd ]",
@@ -9531,9 +9527,9 @@ exports[`runs examples > example "wchooseCycles" example index 1 1`] = `
   "[ 5/4 → 4/3 | s:bd ]",
   "[ 4/3 → 17/12 | s:bd ]",
   "[ 17/12 → 3/2 | s:bd ]",
-  "[ 3/2 → 19/12 | s:sd ]",
-  "[ 19/12 → 5/3 | s:sd ]",
-  "[ 5/3 → 7/4 | s:sd ]",
+  "[ 3/2 → 19/12 | s:hh ]",
+  "[ 19/12 → 5/3 | s:hh ]",
+  "[ 5/3 → 7/4 | s:hh ]",
   "[ 7/4 → 11/6 | s:bd ]",
   "[ 11/6 → 23/12 | s:bd ]",
   "[ 23/12 → 2/1 | s:bd ]",
@@ -9543,18 +9539,18 @@ exports[`runs examples > example "wchooseCycles" example index 1 1`] = `
   "[ 9/4 → 7/3 | s:hh ]",
   "[ 7/3 → 29/12 | s:hh ]",
   "[ 29/12 → 5/2 | s:hh ]",
-  "[ 5/2 → 31/12 | s:hh ]",
-  "[ 31/12 → 8/3 | s:hh ]",
-  "[ 8/3 → 11/4 | s:hh ]",
-  "[ 11/4 → 17/6 | s:sd ]",
-  "[ 17/6 → 35/12 | s:sd ]",
-  "[ 35/12 → 3/1 | s:sd ]",
+  "[ 5/2 → 31/12 | s:bd ]",
+  "[ 31/12 → 8/3 | s:bd ]",
+  "[ 8/3 → 11/4 | s:bd ]",
+  "[ 11/4 → 17/6 | s:bd ]",
+  "[ 17/6 → 35/12 | s:bd ]",
+  "[ 35/12 → 3/1 | s:bd ]",
   "[ 3/1 → 37/12 | s:bd ]",
   "[ 37/12 → 19/6 | s:bd ]",
   "[ 19/6 → 13/4 | s:bd ]",
-  "[ 13/4 → 10/3 | s:bd ]",
-  "[ 10/3 → 41/12 | s:bd ]",
-  "[ 41/12 → 7/2 | s:bd ]",
+  "[ 13/4 → 10/3 | s:sd ]",
+  "[ 10/3 → 41/12 | s:sd ]",
+  "[ 41/12 → 7/2 | s:sd ]",
   "[ 7/2 → 43/12 | s:hh ]",
   "[ 43/12 → 11/3 | s:hh ]",
   "[ 11/3 → 15/4 | s:hh ]",
diff --git a/test/__snapshots__/tunes.test.mjs.snap b/test/__snapshots__/tunes.test.mjs.snap
index f851077a..06267b8f 100644
--- a/test/__snapshots__/tunes.test.mjs.snap
+++ b/test/__snapshots__/tunes.test.mjs.snap
@@ -3,60 +3,58 @@
 exports[`renders tunes > tune: amensister 1`] = `
 [
   "[ 0/1 → 1/16 | s:breath room:1 shape:0.6 begin:0.9375 end:1 ]",
-  "[ 0/1 → 1/8 | note:Eb1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.0066107586751 ]",
-  "[ 0/1 → 1/8 | note:F1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.0066107586751 ]",
-  "[ 0/1 → 1/4 | n:0 s:amencutup room:0.5 ]",
+  "[ 0/1 → 1/8 | n:0 speed:2 delay:0.5 s:amencutup room:0.5 ]",
   "[ 1/16 → 1/8 | s:breath room:1 shape:0.6 begin:0.875 end:0.9375 ]",
   "[ 1/8 → 3/16 | s:breath room:1 shape:0.6 begin:0.8125 end:0.875 ]",
-  "[ 1/8 → 1/4 | note:45 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.174310575404 ]",
-  "[ 1/8 → 1/4 | note:45 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.174310575404 ]",
+  "[ 1/8 → 1/4 | n:0 s:amencutup room:0.5 ]",
+  "[ 1/8 → 1/4 | note:G1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.0522648640107 ]",
+  "[ 1/8 → 1/4 | note:G1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.0522648640107 ]",
   "[ 3/16 → 1/4 | s:breath room:1 shape:0.6 begin:0.75 end:0.8125 ]",
   "[ 1/4 → 5/16 | s:breath room:1 shape:0.6 begin:0.6875 end:0.75 ]",
-  "[ 1/4 → 3/8 | n:1 speed:2 delay:0.5 s:amencutup room:0.5 ]",
-  "[ 1/4 → 3/8 | note:A1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.7878869297153 ]",
-  "[ 1/4 → 3/8 | note:A1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.7878869297153 ]",
+  "[ 1/4 → 3/8 | note:A1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.4082736884894 ]",
+  "[ 1/4 → 3/8 | note:A1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:300.4082736884894 ]",
+  "[ 1/4 → 1/2 | n:1 s:amencutup room:0.5 ]",
   "[ 5/16 → 3/8 | s:breath room:1 shape:0.6 begin:0.625 end:0.6875 ]",
   "[ 3/8 → 7/16 | s:breath room:1 shape:0.6 begin:0.5625 end:0.625 ]",
-  "[ 3/8 → 1/2 | n:1 s:amencutup room:0.5 ]",
-  "[ 3/8 → 1/2 | note:F1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:302.11020572391345 ]",
-  "[ 3/8 → 1/2 | note:F1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:302.11020572391345 ]",
+  "[ 3/8 → 1/2 | note:G1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:301.345119350921 ]",
+  "[ 3/8 → 1/2 | note:G1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:301.345119350921 ]",
   "[ 7/16 → 1/2 | s:breath room:1 shape:0.6 begin:0.5 end:0.5625 ]",
   "[ 1/2 → 9/16 | s:breath room:1 shape:0.6 begin:0.4375 end:0.5 ]",
-  "[ 1/2 → 3/4 | n:2 s:amencutup room:0.5 ]",
+  "[ 1/2 → 5/8 | n:2 delay:0.5 s:amencutup room:0.5 ]",
   "[ 9/16 → 5/8 | s:breath room:1 shape:0.6 begin:0.375 end:0.4375 ]",
   "[ 5/8 → 11/16 | s:breath room:1 shape:0.6 begin:0.3125 end:0.375 ]",
+  "[ 5/8 → 3/4 | n:2 s:amencutup room:0.5 ]",
   "[ 11/16 → 3/4 | s:breath room:1 shape:0.6 begin:0.25 end:0.3125 ]",
   "[ 3/4 → 13/16 | s:breath room:1 shape:0.6 begin:0.1875 end:0.25 ]",
   "[ 3/4 → 7/8 | n:3 s:amencutup room:0.5 ]",
-  "[ 3/4 → 7/8 | note:Bb0 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:312.54769231985796 ]",
-  "[ 3/4 → 7/8 | note:Bb0 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:312.54769231985796 ]",
+  "[ 3/4 → 7/8 | note:34 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:309.9939679933326 ]",
+  "[ 3/4 → 7/8 | note:34 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:309.9939679933326 ]",
   "[ 13/16 → 7/8 | s:breath room:1 shape:0.6 begin:0.125 end:0.1875 ]",
   "[ 7/8 → 15/16 | s:breath room:1 shape:0.6 begin:0.0625 end:0.125 ]",
-  "[ 7/8 → 1/1 | n:3 s:amencutup room:0.5 ]",
-  "[ 7/8 → 1/1 | note:D1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:318.7927796831686 ]",
-  "[ 7/8 → 1/1 | note:D1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:318.7927796831686 ]",
+  "[ 7/8 → 1/1 | n:3 delay:0.5 s:amencutup room:0.5 ]",
+  "[ 7/8 → 1/1 | note:C1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:315.47482330436543 ]",
+  "[ 7/8 → 1/1 | note:C1 s:sawtooth gain:0.4 decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 resonance:10 cutoff:315.47482330436543 ]",
   "[ 15/16 → 1/1 | s:breath room:1 shape:0.6 begin:0 end:0.0625 ]",
 ]
 `;
 
 exports[`renders tunes > tune: arpoon 1`] = `
 [
-  "[ (0/1 → 1/4) ⇝ 1/3 | note:55.000070545713186 clip:2 cutoff:501.2345499807435 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.48882285676537807 s:piano ]",
-  "[ (0/1 → 1/4) ⇝ 1/3 | note:64.00007054571319 clip:2 cutoff:501.2345499807435 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.48882285676537807 s:piano ]",
+  "[ (0/1 → 1/4) ⇝ 1/3 | note:55 clip:2 cutoff:500 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.44999999999999996 s:piano ]",
+  "[ (0/1 → 1/4) ⇝ 1/3 | note:64 clip:2 cutoff:500 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.44999999999999996 s:piano ]",
   "[ 0/1 → 1/2 | s:bd bank:RolandTR909 gain:0.5 ]",
   "[ 0/1 → 1/1 | note:33 s:sawtooth cutoff:180 lpattack:0.1 lpenv:2 ]",
   "[ 0/1 → 1/1 | note:33.12 s:sawtooth cutoff:180 lpattack:0.1 lpenv:2 ]",
-  "[ 0/1 ⇜ (1/4 → 1/3) | note:55.000070545713186 clip:2 cutoff:501.2345499807435 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.48882285676537807 s:piano ]",
-  "[ 0/1 ⇜ (1/4 → 1/3) | note:64.00007054571319 clip:2 cutoff:501.2345499807435 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.48882285676537807 s:piano ]",
-  "[ (1/3 → 1/2) ⇝ 2/3 | note:60.00166796373806 clip:2 cutoff:529.1893654159594 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5560660171779821 s:piano ]",
-  "[ 1/3 ⇜ (1/2 → 2/3) | note:60.00166796373806 clip:2 cutoff:529.1893654159594 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5560660171779821 s:piano ]",
+  "[ 0/1 ⇜ (1/4 → 1/3) | note:55 clip:2 cutoff:500 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.44999999999999996 s:piano ]",
+  "[ 0/1 ⇜ (1/4 → 1/3) | note:64 clip:2 cutoff:500 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.44999999999999996 s:piano ]",
+  "[ (1/3 → 1/2) ⇝ 2/3 | note:60.00052866221468 clip:2 cutoff:509.2515887569149 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5249999999999999 s:piano ]",
+  "[ 1/3 ⇜ (1/2 → 2/3) | note:60.00052866221468 clip:2 cutoff:509.2515887569149 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5249999999999999 s:piano ]",
   "[ 1/2 → 2/3 | s:hh bank:RolandTR909 gain:0.5 ]",
   "[ 1/2 → 1/1 | s:bd bank:RolandTR909 gain:0.5 ]",
-  "[ (2/3 → 3/4) ⇝ 1/1 | note:59.00670419166647 clip:2 cutoff:617.3233541633349 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5948888739433602 s:piano ]",
-  "[ (2/3 → 3/4) ⇝ 1/1 | note:64.00670419166647 clip:2 cutoff:617.3233541633349 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5948888739433602 s:piano ]",
-  "[ 2/3 ⇜ (3/4 → 1/1) | note:59.00670419166647 clip:2 cutoff:617.3233541633349 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5948888739433602 s:piano ]",
-  "[ 2/3 ⇜ (3/4 → 1/1) | note:64.00670419166647 clip:2 cutoff:617.3233541633349 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5948888739433602 s:piano ]",
-  "[ 5/6 → 1/1 | s:hh bank:RolandTR909 gain:0.5 ]",
+  "[ (2/3 → 3/4) ⇝ 1/1 | note:59.003688107962134 clip:2 cutoff:564.5418893373399 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5799038105676657 s:piano ]",
+  "[ (2/3 → 3/4) ⇝ 1/1 | note:64.00368810796213 clip:2 cutoff:564.5418893373399 resonance:12 gain:0.5 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5799038105676657 s:piano ]",
+  "[ 2/3 ⇜ (3/4 → 1/1) | note:59.003688107962134 clip:2 cutoff:564.5418893373399 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5799038105676657 s:piano ]",
+  "[ 2/3 ⇜ (3/4 → 1/1) | note:64.00368810796213 clip:2 cutoff:564.5418893373399 resonance:12 gain:0.8 decay:0.16 sustain:0.5 delay:0.2 room:0.5 pan:0.5799038105676657 s:piano ]",
 ]
 `;
 
@@ -259,63 +257,64 @@ exports[`renders tunes > tune: barryHarris 1`] = `
 
 exports[`renders tunes > tune: bassFuge 1`] = `
 [
-  "[ 0/1 → 1/8 | note:A2 s:flbass n:0 gain:0.3 cutoff:2206.5338497506646 resonance:10 clip:1 ]",
-  "[ -7/4 ⇜ (0/1 → 1/4) | note:C4 s:flbass n:0 gain:0.3 cutoff:915.3693764684064 resonance:10 clip:1 ]",
-  "[ -7/4 ⇜ (0/1 → 1/4) | note:E4 s:flbass n:0 gain:0.3 cutoff:915.3693764684064 resonance:10 clip:1 ]",
-  "[ -3/2 ⇜ (0/1 → 1/4) ⇝ 1/2 | gain:0.3 note:A4 s:flbass n:0 cutoff:1275.6208956766397 resonance:10 clip:1 ]",
-  "[ -3/2 ⇜ (0/1 → 1/4) ⇝ 1/2 | gain:0.3 note:C5 s:flbass n:0 cutoff:1275.6208956766397 resonance:10 clip:1 ]",
-  "[ -5/4 ⇜ (0/1 → 1/4) ⇝ 3/4 | gain:0.15 note:A4 s:flbass n:0 cutoff:1677.2102254830027 resonance:10 clip:1 ]",
-  "[ -5/4 ⇜ (0/1 → 1/4) ⇝ 3/4 | gain:0.15 note:C5 s:flbass n:0 cutoff:1677.2102254830027 resonance:10 clip:1 ]",
-  "[ 0/1 → 1/4 | note:A3 s:flbass n:0 gain:0.3 cutoff:2312.732504596285 resonance:10 clip:1 ]",
-  "[ -1/1 ⇜ (0/1 → 1/2) ⇝ 1/1 | gain:0.075 note:A4 s:flbass n:0 cutoff:2100 resonance:10 clip:1 ]",
-  "[ -1/1 ⇜ (0/1 → 1/2) ⇝ 1/1 | gain:0.075 note:C5 s:flbass n:0 cutoff:2100 resonance:10 clip:1 ]",
+  "[ 0/1 → 1/8 | note:A2 s:flbass n:0 gain:0.3 cutoff:2100 resonance:10 clip:1 ]",
+  "[ -7/4 ⇜ (0/1 → 1/4) | note:C4 s:flbass n:0 gain:0.3 cutoff:200 resonance:10 clip:1 ]",
+  "[ -7/4 ⇜ (0/1 → 1/4) | note:E4 s:flbass n:0 gain:0.3 cutoff:200 resonance:10 clip:1 ]",
+  "[ -3/2 ⇜ (0/1 → 1/4) ⇝ 1/2 | gain:0.3 note:A4 s:flbass n:0 cutoff:247.63696685453513 resonance:10 clip:1 ]",
+  "[ -3/2 ⇜ (0/1 → 1/4) ⇝ 1/2 | gain:0.3 note:C5 s:flbass n:0 cutoff:247.63696685453513 resonance:10 clip:1 ]",
+  "[ -5/4 ⇜ (0/1 → 1/4) ⇝ 3/4 | gain:0.15 note:A4 s:flbass n:0 cutoff:388.1591509854036 resonance:10 clip:1 ]",
+  "[ -5/4 ⇜ (0/1 → 1/4) ⇝ 3/4 | gain:0.15 note:C5 s:flbass n:0 cutoff:388.1591509854036 resonance:10 clip:1 ]",
+  "[ 0/1 → 1/4 | note:A3 s:flbass n:0 gain:0.3 cutoff:2100 resonance:10 clip:1 ]",
+  "[ -1/1 ⇜ (0/1 → 1/2) ⇝ 1/1 | gain:0.075 note:A4 s:flbass n:0 cutoff:614.5201833107434 resonance:10 clip:1 ]",
+  "[ -1/1 ⇜ (0/1 → 1/2) ⇝ 1/1 | gain:0.075 note:C5 s:flbass n:0 cutoff:614.5201833107434 resonance:10 clip:1 ]",
   "[ 0/1 → 1/2 | s:bd n:1 ]",
-  "[ -3/4 ⇜ (0/1 → 3/4) ⇝ 5/4 | gain:0.0375 note:A4 s:flbass n:0 cutoff:2522.789774516997 resonance:10 clip:1 ]",
-  "[ -3/4 ⇜ (0/1 → 3/4) ⇝ 5/4 | gain:0.0375 note:C5 s:flbass n:0 cutoff:2522.789774516997 resonance:10 clip:1 ]",
-  "[ -3/2 ⇜ (1/4 → 1/2) | gain:0.3 note:A4 s:flbass n:0 cutoff:1275.6208956766397 resonance:10 clip:1 ]",
-  "[ -3/2 ⇜ (1/4 → 1/2) | gain:0.3 note:C5 s:flbass n:0 cutoff:1275.6208956766397 resonance:10 clip:1 ]",
-  "[ -5/4 ⇜ (1/4 → 1/2) ⇝ 3/4 | gain:0.15 note:A4 s:flbass n:0 cutoff:1677.2102254830027 resonance:10 clip:1 ]",
-  "[ -5/4 ⇜ (1/4 → 1/2) ⇝ 3/4 | gain:0.15 note:C5 s:flbass n:0 cutoff:1677.2102254830027 resonance:10 clip:1 ]",
-  "[ 1/4 → 1/2 | note:C4 s:flbass n:0 gain:0.3 cutoff:2727.5302177148174 resonance:10 clip:1 ]",
-  "[ 1/4 → 1/2 | note:E4 s:flbass n:0 gain:0.3 cutoff:2727.5302177148174 resonance:10 clip:1 ]",
+  "[ -3/4 ⇜ (0/1 → 3/4) ⇝ 5/4 | gain:0.0375 note:A4 s:flbass n:0 cutoff:915.3693764684064 resonance:10 clip:1 ]",
+  "[ -3/4 ⇜ (0/1 → 3/4) ⇝ 5/4 | gain:0.0375 note:C5 s:flbass n:0 cutoff:915.3693764684064 resonance:10 clip:1 ]",
+  "[ -3/2 ⇜ (1/4 → 1/2) | gain:0.3 note:A4 s:flbass n:0 cutoff:247.63696685453513 resonance:10 clip:1 ]",
+  "[ -3/2 ⇜ (1/4 → 1/2) | gain:0.3 note:C5 s:flbass n:0 cutoff:247.63696685453513 resonance:10 clip:1 ]",
+  "[ -5/4 ⇜ (1/4 → 1/2) ⇝ 3/4 | gain:0.15 note:A4 s:flbass n:0 cutoff:388.1591509854036 resonance:10 clip:1 ]",
+  "[ -5/4 ⇜ (1/4 → 1/2) ⇝ 3/4 | gain:0.15 note:C5 s:flbass n:0 cutoff:388.1591509854036 resonance:10 clip:1 ]",
+  "[ 1/4 → 1/2 | note:C4 s:flbass n:0 gain:0.3 cutoff:2522.789774516997 resonance:10 clip:1 ]",
+  "[ 1/4 → 1/2 | note:E4 s:flbass n:0 gain:0.3 cutoff:2522.789774516997 resonance:10 clip:1 ]",
   "[ 1/4 → 1/2 | s:hh n:0 ]",
-  "[ 3/8 → 1/2 | note:A2 s:flbass n:0 gain:0.3 cutoff:2827.098521493671 resonance:10 clip:1 ]",
-  "[ -5/4 ⇜ (1/2 → 3/4) | gain:0.15 note:A4 s:flbass n:0 cutoff:1677.2102254830027 resonance:10 clip:1 ]",
-  "[ -5/4 ⇜ (1/2 → 3/4) | gain:0.15 note:C5 s:flbass n:0 cutoff:1677.2102254830027 resonance:10 clip:1 ]",
-  "[ -1/1 ⇜ (1/2 → 3/4) ⇝ 1/1 | gain:0.075 note:A4 s:flbass n:0 cutoff:2100 resonance:10 clip:1 ]",
-  "[ -1/1 ⇜ (1/2 → 3/4) ⇝ 1/1 | gain:0.075 note:C5 s:flbass n:0 cutoff:2100 resonance:10 clip:1 ]",
-  "[ 1/2 → 3/4 | gain:0.3 note:A4 s:flbass n:0 cutoff:3110.8609453791396 resonance:10 clip:1 ]",
-  "[ 1/2 → 3/4 | gain:0.3 note:C5 s:flbass n:0 cutoff:3110.8609453791396 resonance:10 clip:1 ]",
+  "[ 3/8 → 1/2 | note:A2 s:flbass n:0 gain:0.3 cutoff:2727.5302177148174 resonance:10 clip:1 ]",
+  "[ -5/4 ⇜ (1/2 → 3/4) | gain:0.15 note:A4 s:flbass n:0 cutoff:388.1591509854036 resonance:10 clip:1 ]",
+  "[ -5/4 ⇜ (1/2 → 3/4) | gain:0.15 note:C5 s:flbass n:0 cutoff:388.1591509854036 resonance:10 clip:1 ]",
+  "[ -1/1 ⇜ (1/2 → 3/4) ⇝ 1/1 | gain:0.075 note:A4 s:flbass n:0 cutoff:614.5201833107434 resonance:10 clip:1 ]",
+  "[ -1/1 ⇜ (1/2 → 3/4) ⇝ 1/1 | gain:0.075 note:C5 s:flbass n:0 cutoff:614.5201833107434 resonance:10 clip:1 ]",
+  "[ 1/2 → 3/4 | gain:0.3 note:A4 s:flbass n:0 cutoff:2924.3791043233605 resonance:10 clip:1 ]",
+  "[ 1/2 → 3/4 | gain:0.3 note:C5 s:flbass n:0 cutoff:2924.3791043233605 resonance:10 clip:1 ]",
   "[ 1/2 → 1/1 | s:bd n:1 ]",
   "[ 1/2 → 1/1 | s:sd n:0 ]",
-  "[ 3/4 → 7/8 | note:A2 s:flbass n:0 gain:0.3 cutoff:3366.0584981088073 resonance:10 clip:1 ]",
-  "[ -1/1 ⇜ (3/4 → 1/1) | gain:0.075 note:A4 s:flbass n:0 cutoff:2100 resonance:10 clip:1 ]",
-  "[ -1/1 ⇜ (3/4 → 1/1) | gain:0.075 note:C5 s:flbass n:0 cutoff:2100 resonance:10 clip:1 ]",
-  "[ -3/4 ⇜ (3/4 → 1/1) ⇝ 5/4 | gain:0.0375 note:A4 s:flbass n:0 cutoff:2522.789774516997 resonance:10 clip:1 ]",
-  "[ -3/4 ⇜ (3/4 → 1/1) ⇝ 5/4 | gain:0.0375 note:C5 s:flbass n:0 cutoff:2522.789774516997 resonance:10 clip:1 ]",
-  "[ 3/4 → 1/1 | note:A3 s:flbass n:0 gain:0.3 cutoff:3443.5028842544402 resonance:10 clip:1 ]",
-  "[ 3/4 → 1/1 | gain:0.15 note:A4 s:flbass n:0 cutoff:3443.5028842544402 resonance:10 clip:1 ]",
-  "[ 3/4 → 1/1 | gain:0.15 note:C5 s:flbass n:0 cutoff:3443.5028842544402 resonance:10 clip:1 ]",
+  "[ 3/4 → 7/8 | note:A2 s:flbass n:0 gain:0.3 cutoff:3284.6306235315933 resonance:10 clip:1 ]",
+  "[ -1/1 ⇜ (3/4 → 1/1) | gain:0.075 note:A4 s:flbass n:0 cutoff:614.5201833107434 resonance:10 clip:1 ]",
+  "[ -1/1 ⇜ (3/4 → 1/1) | gain:0.075 note:C5 s:flbass n:0 cutoff:614.5201833107434 resonance:10 clip:1 ]",
+  "[ -3/4 ⇜ (3/4 → 1/1) ⇝ 5/4 | gain:0.0375 note:A4 s:flbass n:0 cutoff:915.3693764684064 resonance:10 clip:1 ]",
+  "[ -3/4 ⇜ (3/4 → 1/1) ⇝ 5/4 | gain:0.0375 note:C5 s:flbass n:0 cutoff:915.3693764684064 resonance:10 clip:1 ]",
+  "[ 3/4 → 1/1 | note:A3 s:flbass n:0 gain:0.3 cutoff:3284.6306235315933 resonance:10 clip:1 ]",
+  "[ 3/4 → 1/1 | gain:0.15 note:A4 s:flbass n:0 cutoff:3284.6306235315933 resonance:10 clip:1 ]",
+  "[ 3/4 → 1/1 | gain:0.15 note:C5 s:flbass n:0 cutoff:3284.6306235315933 resonance:10 clip:1 ]",
   "[ 3/4 → 1/1 | s:hh n:0 ]",
 ]
 `;
 
 exports[`renders tunes > tune: belldub 1`] = `
 [
-  "[ 0/1 → 5/16 | s:mt gain:0.5 room:0.5 ]",
+  "[ 0/1 → 5/16 | s:mt gain:0.5 room:0.5 speed:0.5 ]",
   "[ 0/1 → 5/8 | note:G1 s:sawtooth cutoff:200 resonance:20 gain:0.15 shape:0.6 release:0.05 ]",
   "[ 0/1 → 5/8 | note:31.02 s:sawtooth cutoff:200 resonance:20 gain:0.15 shape:0.6 release:0.05 ]",
   "[ (0/1 → 1/1) ⇝ 5/1 | s:misc n:2 speed:1 delay:0.5 delaytime:0.3333333333333333 gain:0.4 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | s:hh room:0 end:0.04483079938329212 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:58 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:58.1 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:62 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:62.1 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:65 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:65.1 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:69 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (5/8 → 1/1) ⇝ 5/4 | note:69.1 s:sawtooth gain:0.8 cutoff:400.16785462816676 decay:0.05380063255866716 sustain:0 delay:0.9 room:1 ]",
-  "[ (15/16 → 1/1) ⇝ 5/4 | s:lt gain:0.5 room:0.5 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | s:hh room:0 end:0.028173022316468635 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:58 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:58.1 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:62 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:62.1 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:65 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:65.1 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:69 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:69.1 s:sawtooth gain:0.8 cutoff:400.0503291283066 decay:0.05125097280354112 sustain:0 delay:0.9 room:1 ]",
+  "[ (5/8 → 1/1) ⇝ 5/4 | note:F4 s:bell begin:0.05 delay:0.2 gain:0.4 ]",
+  "[ (15/16 → 1/1) ⇝ 5/4 | s:lt gain:0.5 room:0.5 speed:0.5 ]",
 ]
 `;
 
@@ -1132,8 +1131,6 @@ exports[`renders tunes > tune: delay 1`] = `
 exports[`renders tunes > tune: dinofunk 1`] = `
 [
   "[ 0/1 → 1/4 | s:hh ]",
-  "[ 0/1 → 1/4 | note:Ab4 s:sawtooth cutoff:1239.2541394619345 gain:0.8 decay:0.05125097280354112 sustain:0 delay:0.2561353071307281 room:1 ]",
-  "[ 0/1 → 1/4 | note:68.1 s:sawtooth cutoff:1239.2541394619345 gain:0.8 decay:0.05125097280354112 sustain:0 delay:0.2561353071307281 room:1 ]",
   "[ 0/1 → 1/2 | s:bd ]",
   "[ (0/1 → 1/1) ⇝ 8/1 | s:bass speed:0.0625 unit:c clip:1 ]",
   "[ (0/1 → 1/1) ⇝ 8/1 | note:b4 s:dino delay:0.8 room:0.5 ]",
@@ -1142,8 +1139,6 @@ exports[`renders tunes > tune: dinofunk 1`] = `
   "[ 1/4 → 1/2 | note:Bb3 ]",
   "[ 1/4 → 1/2 | note:B3 ]",
   "[ 1/4 → 1/2 | note:Eb4 ]",
-  "[ 1/4 → 1/2 | note:83 s:sawtooth cutoff:1317.3843795642892 gain:0.8 decay:0.07144728658238364 sustain:0 delay:0.26839114089991684 room:1 ]",
-  "[ 1/4 → 1/2 | note:83.1 s:sawtooth cutoff:1317.3843795642892 gain:0.8 decay:0.07144728658238364 sustain:0 delay:0.26839114089991684 room:1 ]",
   "[ 1/2 → 3/4 | s:hh ]",
   "[ 1/2 → 1/1 | s:bd ]",
   "[ 1/2 → 1/1 | s:sd ]",
@@ -1546,5378 +1541,5376 @@ exports[`renders tunes > tune: echoPiano 1`] = `
 
 exports[`renders tunes > tune: festivalOfFingers 1`] = `
 [
-  "[ (0/1 → 1/64) ⇝ 1/4 | note:C2 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 0/1 ⇜ (1/64 → 1/32) ⇝ 1/4 | note:C2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 0/1 ⇜ (1/32 → 3/64) ⇝ 1/4 | note:C2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (1/28 → 3/64) ⇝ 2/7 | note:70 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (1/28 → 3/64) ⇝ 2/7 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (1/28 → 3/64) ⇝ 2/7 | note:76 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (1/28 → 3/64) ⇝ 2/7 | note:80 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 0/1 ⇜ (3/64 → 1/16) ⇝ 1/4 | note:C2 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:70 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:75 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:76 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:80 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 0/1 ⇜ (1/16 → 5/64) ⇝ 1/4 | note:C2 gain:0.3634633135269821 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:70 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:75 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:76 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:80 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 0/1 ⇜ (5/64 → 3/32) ⇝ 1/4 | note:C2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:70 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:75 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:76 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:80 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 0/1 ⇜ (3/32 → 7/64) ⇝ 1/4 | note:C2 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:70 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:75 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:76 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:80 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 0/1 ⇜ (7/64 → 1/8) ⇝ 1/4 | note:C2 gain:0.36346331352698197 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:70 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:75 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:76 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:80 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 0/1 ⇜ (1/8 → 9/64) ⇝ 1/4 | note:C2 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:70 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:75 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:76 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:80 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (1/8 → 9/64) ⇝ 1/4 | note:C4 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (1/8 → 9/64) ⇝ 1/4 | note:Eb4 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 0/1 ⇜ (9/64 → 5/32) ⇝ 1/4 | note:C2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:70 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:76 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:80 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/8 ⇜ (9/64 → 5/32) ⇝ 1/4 | note:C4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/8 ⇜ (9/64 → 5/32) ⇝ 1/4 | note:Eb4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 0/1 ⇜ (5/32 → 11/64) ⇝ 1/4 | note:C2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:70 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:76 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:80 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/8 ⇜ (5/32 → 11/64) ⇝ 1/4 | note:C4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/8 ⇜ (5/32 → 11/64) ⇝ 1/4 | note:Eb4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 0/1 ⇜ (11/64 → 3/16) ⇝ 1/4 | note:C2 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:70 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:75 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:76 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:80 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/8 ⇜ (11/64 → 3/16) ⇝ 1/4 | note:C4 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/8 ⇜ (11/64 → 3/16) ⇝ 1/4 | note:Eb4 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 0/1 ⇜ (3/16 → 13/64) ⇝ 1/4 | note:C2 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:70 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:75 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:76 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:80 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/8 ⇜ (3/16 → 13/64) ⇝ 1/4 | note:C4 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/8 ⇜ (3/16 → 13/64) ⇝ 1/4 | note:Eb4 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 0/1 ⇜ (13/64 → 7/32) ⇝ 1/4 | note:C2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:70 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:75 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:76 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:80 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/8 ⇜ (13/64 → 7/32) ⇝ 1/4 | note:C4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/8 ⇜ (13/64 → 7/32) ⇝ 1/4 | note:Eb4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 0/1 ⇜ (7/32 → 15/64) ⇝ 1/4 | note:C2 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:70 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:75 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:76 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:80 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/8 ⇜ (7/32 → 15/64) ⇝ 1/4 | note:C4 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/8 ⇜ (7/32 → 15/64) ⇝ 1/4 | note:Eb4 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 0/1 ⇜ (15/64 → 1/4) | note:C2 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:70 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:75 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:76 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:80 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/8 ⇜ (15/64 → 1/4) | note:C4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/8 ⇜ (15/64 → 1/4) | note:Eb4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:70 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:75 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:76 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:80 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:70 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:76 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:80 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 1/28 ⇜ (9/32 → 2/7) | note:70 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/28 ⇜ (9/32 → 2/7) | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 1/28 ⇜ (9/32 → 2/7) | note:76 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/28 ⇜ (9/32 → 2/7) | note:80 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (1/2 → 33/64) ⇝ 5/8 | note:G4 gain:0.5165366864730175 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (1/2 → 33/64) ⇝ 5/8 | note:Bb4 gain:0.5165366864730175 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (1/2 → 33/64) ⇝ 3/4 | note:Bb3 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (1/2 → 33/64) ⇝ 3/4 | note:D4 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (1/2 → 33/64) ⇝ 3/4 | note:Eb4 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (1/2 → 33/64) ⇝ 3/4 | note:G4 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (1/2 → 33/64) ⇝ 3/4 | note:C2 gain:0.5165366864730175 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 5/8 | note:G4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 5/8 | note:Bb4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:Bb3 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:D4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:Eb4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:G4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:C2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 5/8 | note:G4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 5/8 | note:Bb4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:Bb3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:D4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:Eb4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:G4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 5/8 | note:G4 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 5/8 | note:Bb4 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:Bb3 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:D4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:Eb4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:G4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:C2 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 5/8 | note:G4 gain:0.36346331352698247 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 5/8 | note:Bb4 gain:0.36346331352698247 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:Bb3 gain:0.18173165676349123 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:D4 gain:0.18173165676349123 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:Eb4 gain:0.18173165676349123 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:G4 gain:0.18173165676349123 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:C2 gain:0.36346331352698247 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 5/8 | note:G4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 5/8 | note:Bb4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:Bb3 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:D4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:Eb4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:G4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:C2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 5/8 | note:G4 gain:0.25522409349774255 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 5/8 | note:Bb4 gain:0.25522409349774255 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:Bb3 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:D4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:Eb4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:G4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:C2 gain:0.25522409349774255 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (39/64 → 5/8) | note:G4 gain:0.3634633135269821 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (39/64 → 5/8) | note:Bb4 gain:0.3634633135269821 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:Bb3 gain:0.18173165676349104 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:D4 gain:0.18173165676349104 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:Eb4 gain:0.18173165676349104 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:G4 gain:0.18173165676349104 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:C2 gain:0.3634633135269821 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:Bb3 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:D4 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:Eb4 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:G4 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:C2 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:Bb3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:D4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:Eb4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:G4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:Bb3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:D4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:Eb4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:G4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:Bb3 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:D4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:Eb4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:G4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:C2 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:Bb3 gain:0.18173165676349096 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:D4 gain:0.18173165676349096 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:Eb4 gain:0.18173165676349096 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:G4 gain:0.18173165676349096 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:C2 gain:0.3634633135269819 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:Bb3 gain:0.1276120467488714 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:D4 gain:0.1276120467488714 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:Eb4 gain:0.1276120467488714 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:G4 gain:0.1276120467488714 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:C2 gain:0.2552240934977428 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:Bb3 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:D4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:Eb4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:G4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:C2 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/2 ⇜ (47/64 → 3/4) | note:Bb3 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 1/2 ⇜ (47/64 → 3/4) | note:D4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (47/64 → 3/4) | note:Eb4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/2 ⇜ (47/64 → 3/4) | note:G4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (47/64 → 3/4) | note:C2 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (3/4 → 49/64) ⇝ 7/8 | note:C4 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (3/4 → 49/64) ⇝ 7/8 | note:Eb4 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 3/4 ⇜ (49/64 → 25/32) ⇝ 7/8 | note:C4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 3/4 ⇜ (49/64 → 25/32) ⇝ 7/8 | note:Eb4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 3/4 ⇜ (25/32 → 51/64) ⇝ 7/8 | note:C4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 3/4 ⇜ (25/32 → 51/64) ⇝ 7/8 | note:Eb4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (11/14 → 51/64) ⇝ 29/28 | note:70 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (11/14 → 51/64) ⇝ 29/28 | note:74 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (11/14 → 51/64) ⇝ 29/28 | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (11/14 → 51/64) ⇝ 29/28 | note:79 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/4 ⇜ (51/64 → 13/16) ⇝ 7/8 | note:C4 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 3/4 ⇜ (51/64 → 13/16) ⇝ 7/8 | note:Eb4 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:70 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:74 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:75 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:79 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/4 ⇜ (13/16 → 53/64) ⇝ 7/8 | note:C4 gain:0.36346331352698197 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 3/4 ⇜ (13/16 → 53/64) ⇝ 7/8 | note:Eb4 gain:0.36346331352698197 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:70 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:74 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:75 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:79 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/4 ⇜ (53/64 → 27/32) ⇝ 7/8 | note:C4 gain:0.25522409349774283 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 3/4 ⇜ (53/64 → 27/32) ⇝ 7/8 | note:Eb4 gain:0.25522409349774283 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:70 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:74 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:75 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:79 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/4 ⇜ (27/32 → 55/64) ⇝ 7/8 | note:C4 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 3/4 ⇜ (27/32 → 55/64) ⇝ 7/8 | note:Eb4 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:70 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:74 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:75 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:79 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/4 ⇜ (55/64 → 7/8) | note:C4 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 3/4 ⇜ (55/64 → 7/8) | note:Eb4 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:70 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:74 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:75 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:79 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:70 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:74 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:75 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:79 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:70 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:74 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:79 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:70 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:74 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:79 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:70 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:74 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:75 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:79 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:70 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:74 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:75 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:79 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:70 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:74 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:75 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:79 gain:0.025522409349774285 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:70 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:74 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:75 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:79 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:70 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:74 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:75 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:79 gain:0.0363463313526982 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:70 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:74 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:75 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:79 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (1/1 → 65/64) ⇝ 5/4 | note:C2 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:70 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:74 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:79 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 1/1 ⇜ (65/64 → 33/32) ⇝ 5/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 11/14 ⇜ (33/32 → 29/28) | note:70 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 11/14 ⇜ (33/32 → 29/28) | note:74 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/14 ⇜ (33/32 → 29/28) | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/14 ⇜ (33/32 → 29/28) | note:79 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 1/1 ⇜ (33/32 → 67/64) ⇝ 5/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/1 ⇜ (67/64 → 17/16) ⇝ 5/4 | note:C2 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/1 ⇜ (17/16 → 69/64) ⇝ 5/4 | note:C2 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/1 ⇜ (69/64 → 35/32) ⇝ 5/4 | note:C2 gain:0.25522409349774283 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/1 ⇜ (35/32 → 71/64) ⇝ 5/4 | note:C2 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/1 ⇜ (71/64 → 9/8) ⇝ 5/4 | note:C2 gain:0.3634633135269819 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 1/1 ⇜ (9/8 → 73/64) ⇝ 5/4 | note:C2 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (9/8 → 73/64) ⇝ 5/4 | note:C4 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (9/8 → 73/64) ⇝ 5/4 | note:Eb4 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/1 ⇜ (73/64 → 37/32) ⇝ 5/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/8 ⇜ (73/64 → 37/32) ⇝ 5/4 | note:C4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/8 ⇜ (73/64 → 37/32) ⇝ 5/4 | note:Eb4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/1 ⇜ (37/32 → 75/64) ⇝ 5/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/8 ⇜ (37/32 → 75/64) ⇝ 5/4 | note:C4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/8 ⇜ (37/32 → 75/64) ⇝ 5/4 | note:Eb4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/1 ⇜ (75/64 → 19/16) ⇝ 5/4 | note:C2 gain:0.5165366864730189 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/8 ⇜ (75/64 → 19/16) ⇝ 5/4 | note:C4 gain:0.5165366864730189 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/8 ⇜ (75/64 → 19/16) ⇝ 5/4 | note:Eb4 gain:0.5165366864730189 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/1 ⇜ (19/16 → 77/64) ⇝ 5/4 | note:C2 gain:0.3634633135269821 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/8 ⇜ (19/16 → 77/64) ⇝ 5/4 | note:C4 gain:0.3634633135269821 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/8 ⇜ (19/16 → 77/64) ⇝ 5/4 | note:Eb4 gain:0.3634633135269821 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/1 ⇜ (77/64 → 39/32) ⇝ 5/4 | note:C2 gain:0.2552240934977429 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/8 ⇜ (77/64 → 39/32) ⇝ 5/4 | note:C4 gain:0.2552240934977429 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/8 ⇜ (77/64 → 39/32) ⇝ 5/4 | note:Eb4 gain:0.2552240934977429 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/1 ⇜ (39/32 → 79/64) ⇝ 5/4 | note:C2 gain:0.2552240934977422 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/8 ⇜ (39/32 → 79/64) ⇝ 5/4 | note:C4 gain:0.2552240934977422 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/8 ⇜ (39/32 → 79/64) ⇝ 5/4 | note:Eb4 gain:0.2552240934977422 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 1/1 ⇜ (79/64 → 5/4) | note:C2 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/8 ⇜ (79/64 → 5/4) | note:C4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/8 ⇜ (79/64 → 5/4) | note:Eb4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (5/4 → 81/64) ⇝ 3/2 | note:Bb3 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (5/4 → 81/64) ⇝ 3/2 | note:D4 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (5/4 → 81/64) ⇝ 3/2 | note:Eb4 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (5/4 → 81/64) ⇝ 3/2 | note:G4 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:Bb3 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:D4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:Eb4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:G4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:Bb3 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:D4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:Eb4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:G4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:Bb3 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:D4 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:Eb4 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:G4 gain:0.25826834323650877 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:Bb3 gain:0.18173165676349107 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:D4 gain:0.18173165676349107 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:Eb4 gain:0.18173165676349107 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:G4 gain:0.18173165676349107 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:Bb3 gain:0.12761204674887144 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:D4 gain:0.12761204674887144 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:Eb4 gain:0.12761204674887144 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:G4 gain:0.12761204674887144 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:Bb3 gain:0.1276120467488711 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:D4 gain:0.1276120467488711 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:Eb4 gain:0.1276120467488711 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:G4 gain:0.1276120467488711 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:Bb3 gain:0.18173165676349023 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:D4 gain:0.18173165676349023 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:Eb4 gain:0.18173165676349023 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:G4 gain:0.18173165676349023 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:Bb3 gain:0.25826834323650927 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:D4 gain:0.25826834323650927 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:Eb4 gain:0.25826834323650927 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:G4 gain:0.25826834323650927 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:Bb3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:D4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:Eb4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:G4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:Bb3 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:D4 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:Eb4 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:G4 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:Bb3 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:D4 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:Eb4 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:G4 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:Bb3 gain:0.18173165676349173 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:D4 gain:0.18173165676349173 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:Eb4 gain:0.18173165676349173 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:G4 gain:0.18173165676349173 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:Bb3 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:D4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:Eb4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:G4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:Bb3 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:D4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:Eb4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:G4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/4 ⇜ (95/64 → 3/2) | note:Bb3 gain:0.1817316567634909 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 5/4 ⇜ (95/64 → 3/2) | note:D4 gain:0.1817316567634909 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 5/4 ⇜ (95/64 → 3/2) | note:Eb4 gain:0.1817316567634909 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/4 ⇜ (95/64 → 3/2) | note:G4 gain:0.1817316567634909 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (3/2 → 97/64) ⇝ 13/8 | note:G4 gain:0.5165366864730172 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (3/2 → 97/64) ⇝ 13/8 | note:Bb4 gain:0.5165366864730172 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (3/2 → 97/64) ⇝ 7/4 | note:C2 gain:0.5165366864730172 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 3/2 ⇜ (97/64 → 49/32) ⇝ 13/8 | note:G4 gain:0.6247759065022569 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/2 ⇜ (97/64 → 49/32) ⇝ 13/8 | note:Bb4 gain:0.6247759065022569 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 3/2 ⇜ (97/64 → 49/32) ⇝ 7/4 | note:C2 gain:0.6247759065022569 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 3/2 ⇜ (49/32 → 99/64) ⇝ 13/8 | note:G4 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/2 ⇜ (49/32 → 99/64) ⇝ 13/8 | note:Bb4 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 3/2 ⇜ (49/32 → 99/64) ⇝ 7/4 | note:C2 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (43/28 → 99/64) ⇝ 25/14 | note:70 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (43/28 → 99/64) ⇝ 25/14 | note:74 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (43/28 → 99/64) ⇝ 25/14 | note:75 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (43/28 → 99/64) ⇝ 25/14 | note:79 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (99/64 → 25/16) ⇝ 13/8 | note:G4 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/2 ⇜ (99/64 → 25/16) ⇝ 13/8 | note:Bb4 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 3/2 ⇜ (99/64 → 25/16) ⇝ 7/4 | note:C2 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:70 gain:0.05165366864730177 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:74 gain:0.05165366864730177 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:75 gain:0.05165366864730177 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:79 gain:0.05165366864730177 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (25/16 → 101/64) ⇝ 13/8 | note:G4 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/2 ⇜ (25/16 → 101/64) ⇝ 13/8 | note:Bb4 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 3/2 ⇜ (25/16 → 101/64) ⇝ 7/4 | note:C2 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:70 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:74 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:75 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:79 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (101/64 → 51/32) ⇝ 13/8 | note:G4 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/2 ⇜ (101/64 → 51/32) ⇝ 13/8 | note:Bb4 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 3/2 ⇜ (101/64 → 51/32) ⇝ 7/4 | note:C2 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:70 gain:0.025522409349774296 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:74 gain:0.025522409349774296 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:75 gain:0.025522409349774296 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:79 gain:0.025522409349774296 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (51/32 → 103/64) ⇝ 13/8 | note:G4 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/2 ⇜ (51/32 → 103/64) ⇝ 13/8 | note:Bb4 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 3/2 ⇜ (51/32 → 103/64) ⇝ 7/4 | note:C2 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:70 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:74 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:75 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:79 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (103/64 → 13/8) | note:G4 gain:0.3634633135269804 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/2 ⇜ (103/64 → 13/8) | note:Bb4 gain:0.3634633135269804 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 3/2 ⇜ (103/64 → 13/8) ⇝ 7/4 | note:C2 gain:0.3634633135269804 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:70 gain:0.03634633135269804 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:74 gain:0.03634633135269804 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:75 gain:0.03634633135269804 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:79 gain:0.03634633135269804 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (13/8 → 105/64) ⇝ 7/4 | note:C2 gain:0.5165366864730185 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:70 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:74 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:75 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:79 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (105/64 → 53/32) ⇝ 7/4 | note:C2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:70 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:74 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:79 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (53/32 → 107/64) ⇝ 7/4 | note:C2 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:70 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:74 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:75 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:79 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (107/64 → 27/16) ⇝ 7/4 | note:C2 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:70 gain:0.05165366864730191 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:74 gain:0.05165366864730191 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:75 gain:0.05165366864730191 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:79 gain:0.05165366864730191 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (27/16 → 109/64) ⇝ 7/4 | note:C2 gain:0.3634633135269836 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:70 gain:0.03634633135269836 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:74 gain:0.03634633135269836 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:75 gain:0.03634633135269836 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:79 gain:0.03634633135269836 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (109/64 → 55/32) ⇝ 7/4 | note:C2 gain:0.2552240934977424 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:70 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:74 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:75 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:79 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (55/32 → 111/64) ⇝ 7/4 | note:C2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:70 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:74 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:75 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:79 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (111/64 → 7/4) | note:C2 gain:0.3634633135269817 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:70 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:74 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:75 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:79 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:70 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:74 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:75 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:79 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (7/4 → 113/64) ⇝ 15/8 | note:G4 gain:0.5165366864730171 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (7/4 → 113/64) ⇝ 15/8 | note:Bb4 gain:0.5165366864730171 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (7/4 → 113/64) ⇝ 2/1 | note:Bb3 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (7/4 → 113/64) ⇝ 2/1 | note:D4 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (7/4 → 113/64) ⇝ 2/1 | note:Eb4 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (7/4 → 113/64) ⇝ 2/1 | note:G4 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:70 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:74 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:75 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:79 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 15/8 | note:G4 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 15/8 | note:Bb4 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:Bb3 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:D4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:Eb4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:G4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 43/28 ⇜ (57/32 → 25/14) | note:70 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 43/28 ⇜ (57/32 → 25/14) | note:74 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 43/28 ⇜ (57/32 → 25/14) | note:75 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/28 ⇜ (57/32 → 25/14) | note:79 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 15/8 | note:G4 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 15/8 | note:Bb4 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:Bb3 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:D4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:Eb4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:G4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 15/8 | note:G4 gain:0.5165366864730178 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 15/8 | note:Bb4 gain:0.5165366864730178 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:Bb3 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:D4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:Eb4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:G4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 15/8 | note:G4 gain:0.3634633135269823 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 15/8 | note:Bb4 gain:0.3634633135269823 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:Bb3 gain:0.18173165676349115 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:D4 gain:0.18173165676349115 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:Eb4 gain:0.18173165676349115 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:G4 gain:0.18173165676349115 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 15/8 | note:G4 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 15/8 | note:Bb4 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:Bb3 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:D4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:Eb4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:G4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 15/8 | note:G4 gain:0.2552240934977421 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 15/8 | note:Bb4 gain:0.2552240934977421 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:Bb3 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:D4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:Eb4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:G4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (119/64 → 15/8) | note:G4 gain:0.3634633135269803 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (119/64 → 15/8) | note:Bb4 gain:0.3634633135269803 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:Bb3 gain:0.18173165676349015 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:D4 gain:0.18173165676349015 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:Eb4 gain:0.18173165676349015 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:G4 gain:0.18173165676349015 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:Bb3 gain:0.25826834323650916 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:D4 gain:0.25826834323650916 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:Eb4 gain:0.25826834323650916 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:G4 gain:0.25826834323650916 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:Bb3 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:D4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:Eb4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:G4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:Bb3 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:D4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:Eb4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:G4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:Bb3 gain:0.25826834323650955 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:D4 gain:0.25826834323650955 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:Eb4 gain:0.25826834323650955 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:G4 gain:0.25826834323650955 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:Bb3 gain:0.18173165676349182 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:D4 gain:0.18173165676349182 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:Eb4 gain:0.18173165676349182 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:G4 gain:0.18173165676349182 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:Bb3 gain:0.12761204674887122 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:D4 gain:0.12761204674887122 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:Eb4 gain:0.12761204674887122 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:G4 gain:0.12761204674887122 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:Bb3 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:D4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:Eb4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:G4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 7/4 ⇜ (127/64 → 2/1) | note:Bb3 gain:0.1817316567634908 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 7/4 ⇜ (127/64 → 2/1) | note:D4 gain:0.1817316567634908 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 7/4 ⇜ (127/64 → 2/1) | note:Eb4 gain:0.1817316567634908 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 7/4 ⇜ (127/64 → 2/1) | note:G4 gain:0.1817316567634908 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (2/1 → 129/64) ⇝ 9/4 | note:F2 gain:0.516536686473017 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 2/1 ⇜ (129/64 → 65/32) ⇝ 9/4 | note:F2 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 2/1 ⇜ (65/32 → 131/64) ⇝ 9/4 | note:F2 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (57/28 → 131/64) ⇝ 16/7 | note:70 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (57/28 → 131/64) ⇝ 16/7 | note:74 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (57/28 → 131/64) ⇝ 16/7 | note:75 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (57/28 → 131/64) ⇝ 16/7 | note:79 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 2/1 ⇜ (131/64 → 33/16) ⇝ 9/4 | note:F2 gain:0.5165366864730178 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:70 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:74 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:75 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:79 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 2/1 ⇜ (33/16 → 133/64) ⇝ 9/4 | note:F2 gain:0.3634633135269824 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:70 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:74 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:75 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:79 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 2/1 ⇜ (133/64 → 67/32) ⇝ 9/4 | note:F2 gain:0.255224093497743 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:70 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:74 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:75 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:79 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 2/1 ⇜ (67/32 → 135/64) ⇝ 9/4 | note:F2 gain:0.2552240934977421 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:70 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:74 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:75 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:79 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 2/1 ⇜ (135/64 → 17/8) ⇝ 9/4 | note:F2 gain:0.36346331352698025 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:70 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:74 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:75 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:79 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 2/1 ⇜ (17/8 → 137/64) ⇝ 9/4 | note:F2 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:70 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:74 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:75 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:79 gain:0.05165366864730182 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (17/8 → 137/64) ⇝ 9/4 | note:F4 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (17/8 → 137/64) ⇝ 9/4 | note:Ab4 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 2/1 ⇜ (137/64 → 69/32) ⇝ 9/4 | note:F2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:70 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:74 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:79 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 17/8 ⇜ (137/64 → 69/32) ⇝ 9/4 | note:F4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/8 ⇜ (137/64 → 69/32) ⇝ 9/4 | note:Ab4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 2/1 ⇜ (69/32 → 139/64) ⇝ 9/4 | note:F2 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:70 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:74 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:75 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:79 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 17/8 ⇜ (69/32 → 139/64) ⇝ 9/4 | note:F4 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/8 ⇜ (69/32 → 139/64) ⇝ 9/4 | note:Ab4 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 2/1 ⇜ (139/64 → 35/16) ⇝ 9/4 | note:F2 gain:0.5165366864730192 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:70 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:74 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:75 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:79 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 17/8 ⇜ (139/64 → 35/16) ⇝ 9/4 | note:F4 gain:0.5165366864730192 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/8 ⇜ (139/64 → 35/16) ⇝ 9/4 | note:Ab4 gain:0.5165366864730192 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 2/1 ⇜ (35/16 → 141/64) ⇝ 9/4 | note:F2 gain:0.36346331352698374 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:70 gain:0.03634633135269837 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:74 gain:0.03634633135269837 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:75 gain:0.03634633135269837 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:79 gain:0.03634633135269837 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 17/8 ⇜ (35/16 → 141/64) ⇝ 9/4 | note:F4 gain:0.36346331352698374 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/8 ⇜ (35/16 → 141/64) ⇝ 9/4 | note:Ab4 gain:0.36346331352698374 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 2/1 ⇜ (141/64 → 71/32) ⇝ 9/4 | note:F2 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:70 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:74 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:75 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:79 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 17/8 ⇜ (141/64 → 71/32) ⇝ 9/4 | note:F4 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/8 ⇜ (141/64 → 71/32) ⇝ 9/4 | note:Ab4 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 2/1 ⇜ (71/32 → 143/64) ⇝ 9/4 | note:F2 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:70 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:74 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:75 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:79 gain:0.025522409349774268 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 17/8 ⇜ (71/32 → 143/64) ⇝ 9/4 | note:F4 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/8 ⇜ (71/32 → 143/64) ⇝ 9/4 | note:Ab4 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 2/1 ⇜ (143/64 → 9/4) | note:F2 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:70 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:74 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:75 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:79 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 17/8 ⇜ (143/64 → 9/4) | note:F4 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/8 ⇜ (143/64 → 9/4) | note:Ab4 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:70 gain:0.05165366864730169 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:74 gain:0.05165366864730169 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:75 gain:0.05165366864730169 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:79 gain:0.05165366864730169 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:70 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:74 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:75 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:79 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 57/28 ⇜ (73/32 → 16/7) | note:70 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 57/28 ⇜ (73/32 → 16/7) | note:74 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 57/28 ⇜ (73/32 → 16/7) | note:75 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 57/28 ⇜ (73/32 → 16/7) | note:79 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (5/2 → 161/64) ⇝ 21/8 | note:C5 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (5/2 → 161/64) ⇝ 21/8 | note:Eb5 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (5/2 → 161/64) ⇝ 11/4 | note:Eb4 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (5/2 → 161/64) ⇝ 11/4 | note:G4 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (5/2 → 161/64) ⇝ 11/4 | note:Ab4 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (5/2 → 161/64) ⇝ 11/4 | note:C5 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (5/2 → 161/64) ⇝ 11/4 | note:F2 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 21/8 | note:C5 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 21/8 | note:Eb5 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:Eb4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:G4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:Ab4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:C5 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:F2 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 21/8 | note:C5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 21/8 | note:Eb5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:Eb4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:G4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:Ab4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:C5 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:F2 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 21/8 | note:C5 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 21/8 | note:Eb5 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:Eb4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:G4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:Ab4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:C5 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:F2 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 21/8 | note:C5 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 21/8 | note:Eb5 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:Eb4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:G4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:Ab4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:C5 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:F2 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 21/8 | note:C5 gain:0.2552240934977431 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 21/8 | note:Eb5 gain:0.2552240934977431 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:Eb4 gain:0.12761204674887155 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:G4 gain:0.12761204674887155 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:Ab4 gain:0.12761204674887155 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:C5 gain:0.12761204674887155 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:F2 gain:0.2552240934977431 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 21/8 | note:C5 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 21/8 | note:Eb5 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:Eb4 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:G4 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:Ab4 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:C5 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:F2 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (167/64 → 21/8) | note:C5 gain:0.36346331352698 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (167/64 → 21/8) | note:Eb5 gain:0.36346331352698 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:Eb4 gain:0.18173165676349 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:G4 gain:0.18173165676349 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:Ab4 gain:0.18173165676349 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:C5 gain:0.18173165676349 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:F2 gain:0.36346331352698 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:Eb4 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:G4 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:Ab4 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:C5 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:F2 gain:0.5165366864730155 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:Eb4 gain:0.31238795325112806 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:G4 gain:0.31238795325112806 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:Ab4 gain:0.31238795325112806 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:C5 gain:0.31238795325112806 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:F2 gain:0.6247759065022561 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:Eb4 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:G4 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:Ab4 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:C5 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:F2 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:Eb4 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:G4 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:Ab4 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:C5 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:F2 gain:0.5165366864730168 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:Eb4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:G4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:Ab4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:C5 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:F2 gain:0.36346331352698136 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:Eb4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:G4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:Ab4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:C5 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:F2 gain:0.25522409349774255 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:Eb4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:G4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:Ab4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:C5 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:F2 gain:0.25522409349774255 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/2 ⇜ (175/64 → 11/4) | note:Eb4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (175/64 → 11/4) | note:G4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (175/64 → 11/4) | note:Ab4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 5/2 ⇜ (175/64 → 11/4) | note:C5 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/2 ⇜ (175/64 → 11/4) | note:F2 gain:0.36346331352698136 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (11/4 → 177/64) ⇝ 23/8 | note:F4 gain:0.5165366864730168 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (11/4 → 177/64) ⇝ 23/8 | note:Ab4 gain:0.5165366864730168 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 11/4 ⇜ (177/64 → 89/32) ⇝ 23/8 | note:F4 gain:0.6247759065022567 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 11/4 ⇜ (177/64 → 89/32) ⇝ 23/8 | note:Ab4 gain:0.6247759065022567 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 11/4 ⇜ (89/32 → 179/64) ⇝ 23/8 | note:F4 gain:0.6247759065022583 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 11/4 ⇜ (89/32 → 179/64) ⇝ 23/8 | note:Ab4 gain:0.6247759065022583 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (39/14 → 179/64) ⇝ 85/28 | note:75 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (39/14 → 179/64) ⇝ 85/28 | note:79 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (39/14 → 179/64) ⇝ 85/28 | note:80 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (39/14 → 179/64) ⇝ 85/28 | note:84 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 11/4 ⇜ (179/64 → 45/16) ⇝ 23/8 | note:F4 gain:0.5165366864730206 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 11/4 ⇜ (179/64 → 45/16) ⇝ 23/8 | note:Ab4 gain:0.5165366864730206 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:75 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:79 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:80 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:84 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 11/4 ⇜ (45/16 → 181/64) ⇝ 23/8 | note:F4 gain:0.3634633135269853 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 11/4 ⇜ (45/16 → 181/64) ⇝ 23/8 | note:Ab4 gain:0.3634633135269853 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:75 gain:0.03634633135269853 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:79 gain:0.03634633135269853 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:80 gain:0.03634633135269853 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:84 gain:0.03634633135269853 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 11/4 ⇜ (181/64 → 91/32) ⇝ 23/8 | note:F4 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 11/4 ⇜ (181/64 → 91/32) ⇝ 23/8 | note:Ab4 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:75 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:79 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:80 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:84 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 11/4 ⇜ (91/32 → 183/64) ⇝ 23/8 | note:F4 gain:0.2552240934977431 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 11/4 ⇜ (91/32 → 183/64) ⇝ 23/8 | note:Ab4 gain:0.2552240934977431 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:75 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:79 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:80 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:84 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 11/4 ⇜ (183/64 → 23/8) | note:F4 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 11/4 ⇜ (183/64 → 23/8) | note:Ab4 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:75 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:79 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:80 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:84 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:75 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:79 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:80 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:84 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:75 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:79 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:80 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:84 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:75 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:79 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:80 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:84 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:75 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:79 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:80 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:84 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:75 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:79 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:80 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:84 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:75 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:79 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:80 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:84 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:75 gain:0.02552240934977414 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:79 gain:0.02552240934977414 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:80 gain:0.02552240934977414 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:84 gain:0.02552240934977414 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:75 gain:0.03634633135269786 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:79 gain:0.03634633135269786 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:80 gain:0.03634633135269786 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:84 gain:0.03634633135269786 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:75 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:79 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:80 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:84 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (3/1 → 193/64) ⇝ 13/4 | note:F2 gain:0.5165366864730192 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:75 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:79 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:80 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:84 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 3/1 ⇜ (193/64 → 97/32) ⇝ 13/4 | note:F2 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 39/14 ⇜ (97/32 → 85/28) | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 39/14 ⇜ (97/32 → 85/28) | note:79 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/14 ⇜ (97/32 → 85/28) | note:80 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 39/14 ⇜ (97/32 → 85/28) | note:84 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 3/1 ⇜ (97/32 → 195/64) ⇝ 13/4 | note:F2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 3/1 ⇜ (195/64 → 49/16) ⇝ 13/4 | note:F2 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 3/1 ⇜ (49/16 → 197/64) ⇝ 13/4 | note:F2 gain:0.36346331352698275 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 3/1 ⇜ (197/64 → 99/32) ⇝ 13/4 | note:F2 gain:0.25522409349774317 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 3/1 ⇜ (99/32 → 199/64) ⇝ 13/4 | note:F2 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 3/1 ⇜ (199/64 → 25/8) ⇝ 13/4 | note:F2 gain:0.36346331352697986 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 3/1 ⇜ (25/8 → 201/64) ⇝ 13/4 | note:F2 gain:0.5165366864730153 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (25/8 → 201/64) ⇝ 13/4 | note:F4 gain:0.5165366864730153 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (25/8 → 201/64) ⇝ 13/4 | note:Ab4 gain:0.5165366864730153 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 3/1 ⇜ (201/64 → 101/32) ⇝ 13/4 | note:F2 gain:0.624775906502256 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 25/8 ⇜ (201/64 → 101/32) ⇝ 13/4 | note:F4 gain:0.624775906502256 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/8 ⇜ (201/64 → 101/32) ⇝ 13/4 | note:Ab4 gain:0.624775906502256 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 3/1 ⇜ (101/32 → 203/64) ⇝ 13/4 | note:F2 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 25/8 ⇜ (101/32 → 203/64) ⇝ 13/4 | note:F4 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/8 ⇜ (101/32 → 203/64) ⇝ 13/4 | note:Ab4 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 3/1 ⇜ (203/64 → 51/16) ⇝ 13/4 | note:F2 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 25/8 ⇜ (203/64 → 51/16) ⇝ 13/4 | note:F4 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/8 ⇜ (203/64 → 51/16) ⇝ 13/4 | note:Ab4 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 3/1 ⇜ (51/16 → 205/64) ⇝ 13/4 | note:F2 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 25/8 ⇜ (51/16 → 205/64) ⇝ 13/4 | note:F4 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/8 ⇜ (51/16 → 205/64) ⇝ 13/4 | note:Ab4 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 3/1 ⇜ (205/64 → 103/32) ⇝ 13/4 | note:F2 gain:0.2552240934977426 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 25/8 ⇜ (205/64 → 103/32) ⇝ 13/4 | note:F4 gain:0.2552240934977426 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/8 ⇜ (205/64 → 103/32) ⇝ 13/4 | note:Ab4 gain:0.2552240934977426 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 3/1 ⇜ (103/32 → 207/64) ⇝ 13/4 | note:F2 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 25/8 ⇜ (103/32 → 207/64) ⇝ 13/4 | note:F4 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/8 ⇜ (103/32 → 207/64) ⇝ 13/4 | note:Ab4 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 3/1 ⇜ (207/64 → 13/4) | note:F2 gain:0.36346331352698114 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 25/8 ⇜ (207/64 → 13/4) | note:F4 gain:0.36346331352698114 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/8 ⇜ (207/64 → 13/4) | note:Ab4 gain:0.36346331352698114 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (13/4 → 209/64) ⇝ 7/2 | note:Eb4 gain:0.25826834323650827 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (13/4 → 209/64) ⇝ 7/2 | note:G4 gain:0.25826834323650827 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (13/4 → 209/64) ⇝ 7/2 | note:Ab4 gain:0.25826834323650827 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (13/4 → 209/64) ⇝ 7/2 | note:C5 gain:0.25826834323650827 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:Eb4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:G4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:Ab4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:C5 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:Eb4 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:G4 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:Ab4 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:C5 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:Eb4 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:G4 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:Ab4 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:C5 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:Eb4 gain:0.18173165676349273 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:G4 gain:0.18173165676349273 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:Ab4 gain:0.18173165676349273 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:C5 gain:0.18173165676349273 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:Eb4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:G4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:Ab4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:C5 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:Eb4 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:G4 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:Ab4 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:C5 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:Eb4 gain:0.1817316567634912 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:G4 gain:0.1817316567634912 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:Ab4 gain:0.1817316567634912 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:C5 gain:0.1817316567634912 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:Eb4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:G4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:Ab4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:C5 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:Eb4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:G4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:Ab4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:C5 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:Eb4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:G4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:Ab4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:C5 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:Eb4 gain:0.25826834323650977 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:G4 gain:0.25826834323650977 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:Ab4 gain:0.25826834323650977 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:C5 gain:0.25826834323650977 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:Eb4 gain:0.18173165676349212 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:G4 gain:0.18173165676349212 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:Ab4 gain:0.18173165676349212 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:C5 gain:0.18173165676349212 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:Eb4 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:G4 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:Ab4 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:C5 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:Eb4 gain:0.12761204674887067 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:G4 gain:0.12761204674887067 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:Ab4 gain:0.12761204674887067 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:C5 gain:0.12761204674887067 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/4 ⇜ (223/64 → 7/2) | note:Eb4 gain:0.1817316567634892 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/4 ⇜ (223/64 → 7/2) | note:G4 gain:0.1817316567634892 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 13/4 ⇜ (223/64 → 7/2) | note:Ab4 gain:0.1817316567634892 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/4 ⇜ (223/64 → 7/2) | note:C5 gain:0.1817316567634892 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (7/2 → 225/64) ⇝ 29/8 | note:C5 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (7/2 → 225/64) ⇝ 29/8 | note:Eb5 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (7/2 → 225/64) ⇝ 15/4 | note:F2 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 7/2 ⇜ (225/64 → 113/32) ⇝ 29/8 | note:C5 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (225/64 → 113/32) ⇝ 29/8 | note:Eb5 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/2 ⇜ (225/64 → 113/32) ⇝ 15/4 | note:F2 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 7/2 ⇜ (113/32 → 227/64) ⇝ 29/8 | note:C5 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (113/32 → 227/64) ⇝ 29/8 | note:Eb5 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/2 ⇜ (113/32 → 227/64) ⇝ 15/4 | note:F2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (99/28 → 227/64) ⇝ 53/14 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (99/28 → 227/64) ⇝ 53/14 | note:79 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (99/28 → 227/64) ⇝ 53/14 | note:80 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (99/28 → 227/64) ⇝ 53/14 | note:84 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (227/64 → 57/16) ⇝ 29/8 | note:C5 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (227/64 → 57/16) ⇝ 29/8 | note:Eb5 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/2 ⇜ (227/64 → 57/16) ⇝ 15/4 | note:F2 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:75 gain:0.05165366864730184 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:79 gain:0.05165366864730184 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:80 gain:0.05165366864730184 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:84 gain:0.05165366864730184 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (57/16 → 229/64) ⇝ 29/8 | note:C5 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (57/16 → 229/64) ⇝ 29/8 | note:Eb5 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/2 ⇜ (57/16 → 229/64) ⇝ 15/4 | note:F2 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:75 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:79 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:80 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:84 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (229/64 → 115/32) ⇝ 29/8 | note:C5 gain:0.2552240934977432 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (229/64 → 115/32) ⇝ 29/8 | note:Eb5 gain:0.2552240934977432 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/2 ⇜ (229/64 → 115/32) ⇝ 15/4 | note:F2 gain:0.2552240934977432 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:75 gain:0.025522409349774323 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:79 gain:0.025522409349774323 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:80 gain:0.025522409349774323 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:84 gain:0.025522409349774323 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (115/32 → 231/64) ⇝ 29/8 | note:C5 gain:0.25522409349774183 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (115/32 → 231/64) ⇝ 29/8 | note:Eb5 gain:0.25522409349774183 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/2 ⇜ (115/32 → 231/64) ⇝ 15/4 | note:F2 gain:0.25522409349774183 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:75 gain:0.025522409349774185 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:79 gain:0.025522409349774185 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:80 gain:0.025522409349774185 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:84 gain:0.025522409349774185 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (231/64 → 29/8) | note:C5 gain:0.3634633135269797 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (231/64 → 29/8) | note:Eb5 gain:0.3634633135269797 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/2 ⇜ (231/64 → 29/8) ⇝ 15/4 | note:F2 gain:0.3634633135269797 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:75 gain:0.03634633135269797 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:79 gain:0.03634633135269797 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:80 gain:0.03634633135269797 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:84 gain:0.03634633135269797 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (29/8 → 233/64) ⇝ 15/4 | note:F2 gain:0.5165366864730151 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:75 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:79 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:80 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:84 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (233/64 → 117/32) ⇝ 15/4 | note:F2 gain:0.624775906502256 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:75 gain:0.0624775906502256 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:79 gain:0.0624775906502256 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:80 gain:0.0624775906502256 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:84 gain:0.0624775906502256 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (117/32 → 235/64) ⇝ 15/4 | note:F2 gain:0.624775906502259 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:75 gain:0.0624775906502259 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:79 gain:0.0624775906502259 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:80 gain:0.0624775906502259 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:84 gain:0.0624775906502259 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (235/64 → 59/16) ⇝ 15/4 | note:F2 gain:0.5165366864730171 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:75 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:79 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:80 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:84 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (59/16 → 237/64) ⇝ 15/4 | note:F2 gain:0.3634633135269817 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:75 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:79 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:80 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:84 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (237/64 → 119/32) ⇝ 15/4 | note:F2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:75 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:79 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:80 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:84 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (119/32 → 239/64) ⇝ 15/4 | note:F2 gain:0.2552240934977424 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:75 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:79 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:80 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:84 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (239/64 → 15/4) | note:F2 gain:0.3634633135269809 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:75 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:79 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:80 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:84 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:75 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:79 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:80 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:84 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (15/4 → 241/64) ⇝ 31/8 | note:C5 gain:0.5165366864730164 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (15/4 → 241/64) ⇝ 31/8 | note:Eb5 gain:0.5165366864730164 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (15/4 → 241/64) ⇝ 4/1 | note:Eb4 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (15/4 → 241/64) ⇝ 4/1 | note:G4 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (15/4 → 241/64) ⇝ 4/1 | note:Ab4 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (15/4 → 241/64) ⇝ 4/1 | note:C5 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:75 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:79 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:80 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:84 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 31/8 | note:C5 gain:0.6247759065022566 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 31/8 | note:Eb5 gain:0.6247759065022566 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:Eb4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:G4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:Ab4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:C5 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 99/28 ⇜ (121/32 → 53/14) | note:75 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 99/28 ⇜ (121/32 → 53/14) | note:79 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 99/28 ⇜ (121/32 → 53/14) | note:80 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 99/28 ⇜ (121/32 → 53/14) | note:84 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 31/8 | note:C5 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 31/8 | note:Eb5 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:Eb4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:G4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:Ab4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:C5 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 31/8 | note:C5 gain:0.516536686473021 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 31/8 | note:Eb5 gain:0.516536686473021 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:Eb4 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:G4 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:Ab4 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:C5 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 31/8 | note:C5 gain:0.36346331352698563 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 31/8 | note:Eb5 gain:0.36346331352698563 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:Eb4 gain:0.18173165676349282 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:G4 gain:0.18173165676349282 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:Ab4 gain:0.18173165676349282 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:C5 gain:0.18173165676349282 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 31/8 | note:C5 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 31/8 | note:Eb5 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:Eb4 gain:0.12761204674887108 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:G4 gain:0.12761204674887108 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:Ab4 gain:0.12761204674887108 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:C5 gain:0.12761204674887108 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 31/8 | note:C5 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 31/8 | note:Eb5 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:Eb4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:G4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:Ab4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:C5 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (247/64 → 31/8) | note:C5 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (247/64 → 31/8) | note:Eb5 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:Eb4 gain:0.18173165676349112 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:G4 gain:0.18173165676349112 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:Ab4 gain:0.18173165676349112 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:C5 gain:0.18173165676349112 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:Eb4 gain:0.2582683432365088 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:G4 gain:0.2582683432365088 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:Ab4 gain:0.2582683432365088 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:C5 gain:0.2582683432365088 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:Eb4 gain:0.3123879532511285 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:G4 gain:0.3123879532511285 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:Ab4 gain:0.3123879532511285 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:C5 gain:0.3123879532511285 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:Eb4 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:G4 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:Ab4 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:C5 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:Eb4 gain:0.2582683432365099 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:G4 gain:0.2582683432365099 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:Ab4 gain:0.2582683432365099 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:C5 gain:0.2582683432365099 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:Eb4 gain:0.1817316567634922 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:G4 gain:0.1817316567634922 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:Ab4 gain:0.1817316567634922 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:C5 gain:0.1817316567634922 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:Eb4 gain:0.12761204674887192 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:G4 gain:0.12761204674887192 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:Ab4 gain:0.12761204674887192 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:C5 gain:0.12761204674887192 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:Eb4 gain:0.12761204674887064 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:G4 gain:0.12761204674887064 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:Ab4 gain:0.12761204674887064 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:C5 gain:0.12761204674887064 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/4 ⇜ (255/64 → 4/1) | note:Eb4 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 15/4 ⇜ (255/64 → 4/1) | note:G4 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 15/4 ⇜ (255/64 → 4/1) | note:Ab4 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 15/4 ⇜ (255/64 → 4/1) | note:C5 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (4/1 → 257/64) ⇝ 17/4 | note:G2 gain:0.5165366864730189 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 4/1 ⇜ (257/64 → 129/32) ⇝ 17/4 | note:G2 gain:0.6247759065022576 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 4/1 ⇜ (129/32 → 259/64) ⇝ 17/4 | note:G2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (113/28 → 259/64) ⇝ 30/7 | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (113/28 → 259/64) ⇝ 30/7 | note:79 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (113/28 → 259/64) ⇝ 30/7 | note:80 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (113/28 → 259/64) ⇝ 30/7 | note:84 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 4/1 ⇜ (259/64 → 65/16) ⇝ 17/4 | note:G2 gain:0.5165366864730185 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:75 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:79 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:80 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:84 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 4/1 ⇜ (65/16 → 261/64) ⇝ 17/4 | note:G2 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:75 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:79 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:80 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:84 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 4/1 ⇜ (261/64 → 131/32) ⇝ 17/4 | note:G2 gain:0.2552240934977433 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:75 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:79 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:80 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:84 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 4/1 ⇜ (131/32 → 263/64) ⇝ 17/4 | note:G2 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:75 gain:0.025522409349774178 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:79 gain:0.025522409349774178 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:80 gain:0.025522409349774178 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:84 gain:0.025522409349774178 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 4/1 ⇜ (263/64 → 33/8) ⇝ 17/4 | note:G2 gain:0.3634633135269795 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:75 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:79 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:80 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:84 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 4/1 ⇜ (33/8 → 265/64) ⇝ 17/4 | note:G2 gain:0.516536686473015 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:75 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:79 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:80 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:84 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (33/8 → 265/64) ⇝ 17/4 | note:G4 gain:0.516536686473015 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (33/8 → 265/64) ⇝ 17/4 | note:Bb4 gain:0.516536686473015 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 4/1 ⇜ (265/64 → 133/32) ⇝ 17/4 | note:G2 gain:0.6247759065022559 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:75 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:79 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:80 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:84 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 33/8 ⇜ (265/64 → 133/32) ⇝ 17/4 | note:G4 gain:0.6247759065022559 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 33/8 ⇜ (265/64 → 133/32) ⇝ 17/4 | note:Bb4 gain:0.6247759065022559 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 4/1 ⇜ (133/32 → 267/64) ⇝ 17/4 | note:G2 gain:0.6247759065022591 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:75 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:79 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:80 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:84 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 33/8 ⇜ (133/32 → 267/64) ⇝ 17/4 | note:G4 gain:0.6247759065022591 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 33/8 ⇜ (133/32 → 267/64) ⇝ 17/4 | note:Bb4 gain:0.6247759065022591 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 4/1 ⇜ (267/64 → 67/16) ⇝ 17/4 | note:G2 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:75 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:79 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:80 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:84 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 33/8 ⇜ (267/64 → 67/16) ⇝ 17/4 | note:G4 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 33/8 ⇜ (267/64 → 67/16) ⇝ 17/4 | note:Bb4 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 4/1 ⇜ (67/16 → 269/64) ⇝ 17/4 | note:G2 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:75 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:79 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:80 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:84 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 33/8 ⇜ (67/16 → 269/64) ⇝ 17/4 | note:G4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 33/8 ⇜ (67/16 → 269/64) ⇝ 17/4 | note:Bb4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 4/1 ⇜ (269/64 → 135/32) ⇝ 17/4 | note:G2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:75 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:79 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:80 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:84 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 33/8 ⇜ (269/64 → 135/32) ⇝ 17/4 | note:G4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 33/8 ⇜ (269/64 → 135/32) ⇝ 17/4 | note:Bb4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 4/1 ⇜ (135/32 → 271/64) ⇝ 17/4 | note:G2 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:75 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:79 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:80 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:84 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 33/8 ⇜ (135/32 → 271/64) ⇝ 17/4 | note:G4 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 33/8 ⇜ (135/32 → 271/64) ⇝ 17/4 | note:Bb4 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 4/1 ⇜ (271/64 → 17/4) | note:G2 gain:0.36346331352698075 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:75 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:79 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:80 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:84 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 33/8 ⇜ (271/64 → 17/4) | note:G4 gain:0.36346331352698075 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 33/8 ⇜ (271/64 → 17/4) | note:Bb4 gain:0.36346331352698075 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:75 gain:0.05165366864730162 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:79 gain:0.05165366864730162 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:80 gain:0.05165366864730162 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:84 gain:0.05165366864730162 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:75 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:79 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:80 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:84 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 113/28 ⇜ (137/32 → 30/7) | note:75 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 113/28 ⇜ (137/32 → 30/7) | note:79 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 113/28 ⇜ (137/32 → 30/7) | note:80 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 113/28 ⇜ (137/32 → 30/7) | note:84 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (9/2 → 289/64) ⇝ 37/8 | note:D5 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (9/2 → 289/64) ⇝ 37/8 | note:F5 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (9/2 → 289/64) ⇝ 19/4 | note:B3 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (9/2 → 289/64) ⇝ 19/4 | note:E4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (9/2 → 289/64) ⇝ 19/4 | note:F4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (9/2 → 289/64) ⇝ 19/4 | note:A4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (9/2 → 289/64) ⇝ 19/4 | note:G2 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 37/8 | note:D5 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 37/8 | note:F5 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:B3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:E4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:F4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:A4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:G2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 37/8 | note:D5 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 37/8 | note:F5 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:B3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:E4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:F4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:A4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:G2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 37/8 | note:D5 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 37/8 | note:F5 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:B3 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:E4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:F4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:A4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:G2 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 37/8 | note:D5 gain:0.3634633135269833 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 37/8 | note:F5 gain:0.3634633135269833 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:B3 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:E4 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:F4 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:A4 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:G2 gain:0.3634633135269833 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 37/8 | note:D5 gain:0.2552240934977434 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 37/8 | note:F5 gain:0.2552240934977434 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:B3 gain:0.1276120467488717 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:E4 gain:0.1276120467488717 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:F4 gain:0.1276120467488717 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:A4 gain:0.1276120467488717 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:G2 gain:0.2552240934977434 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 37/8 | note:D5 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 37/8 | note:F5 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:B3 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:E4 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:F4 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:A4 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:G2 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (295/64 → 37/8) | note:D5 gain:0.36346331352697936 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (295/64 → 37/8) | note:F5 gain:0.36346331352697936 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:B3 gain:0.18173165676348968 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:E4 gain:0.18173165676348968 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:F4 gain:0.18173165676348968 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:A4 gain:0.18173165676348968 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:G2 gain:0.36346331352697936 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:B3 gain:0.2582683432365074 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:E4 gain:0.2582683432365074 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:F4 gain:0.2582683432365074 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:A4 gain:0.2582683432365074 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:G2 gain:0.5165366864730148 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:B3 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:E4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:F4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:A4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:G2 gain:0.6247759065022559 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:B3 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:E4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:F4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:A4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:G2 gain:0.6247759065022591 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:B3 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:E4 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:F4 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:A4 gain:0.2582683432365087 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:G2 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:B3 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:E4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:F4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:A4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:G2 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:B3 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:E4 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:F4 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:A4 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:G2 gain:0.25522409349774283 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:B3 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:E4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:F4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:A4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:G2 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/2 ⇜ (303/64 → 19/4) | note:B3 gain:0.1817316567634903 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 9/2 ⇜ (303/64 → 19/4) | note:E4 gain:0.1817316567634903 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 9/2 ⇜ (303/64 → 19/4) | note:F4 gain:0.1817316567634903 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (303/64 → 19/4) | note:A4 gain:0.1817316567634903 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (303/64 → 19/4) | note:G2 gain:0.3634633135269806 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (19/4 → 305/64) ⇝ 39/8 | note:G4 gain:0.516536686473016 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (19/4 → 305/64) ⇝ 39/8 | note:Bb4 gain:0.516536686473016 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 19/4 ⇜ (305/64 → 153/32) ⇝ 39/8 | note:G4 gain:0.6247759065022565 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/4 ⇜ (305/64 → 153/32) ⇝ 39/8 | note:Bb4 gain:0.6247759065022565 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 19/4 ⇜ (153/32 → 307/64) ⇝ 39/8 | note:G4 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/4 ⇜ (153/32 → 307/64) ⇝ 39/8 | note:Bb4 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (67/14 → 307/64) ⇝ 141/28 | note:71 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (67/14 → 307/64) ⇝ 141/28 | note:76 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (67/14 → 307/64) ⇝ 141/28 | note:77 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (67/14 → 307/64) ⇝ 141/28 | note:81 gain:0.06247759065022586 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 19/4 ⇜ (307/64 → 77/16) ⇝ 39/8 | note:G4 gain:0.5165366864730214 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/4 ⇜ (307/64 → 77/16) ⇝ 39/8 | note:Bb4 gain:0.5165366864730214 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:71 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:76 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:77 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:81 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 19/4 ⇜ (77/16 → 309/64) ⇝ 39/8 | note:G4 gain:0.363463313526986 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/4 ⇜ (77/16 → 309/64) ⇝ 39/8 | note:Bb4 gain:0.363463313526986 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:71 gain:0.0363463313526986 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:76 gain:0.0363463313526986 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:77 gain:0.0363463313526986 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:81 gain:0.0363463313526986 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 19/4 ⇜ (309/64 → 155/32) ⇝ 39/8 | note:G4 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/4 ⇜ (309/64 → 155/32) ⇝ 39/8 | note:Bb4 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:71 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:76 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:77 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:81 gain:0.02552240934977423 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 19/4 ⇜ (155/32 → 311/64) ⇝ 39/8 | note:G4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/4 ⇜ (155/32 → 311/64) ⇝ 39/8 | note:Bb4 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:71 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:76 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:77 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:81 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 19/4 ⇜ (311/64 → 39/8) | note:G4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/4 ⇜ (311/64 → 39/8) | note:Bb4 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:71 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:76 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:77 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:81 gain:0.036346331352698186 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:71 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:76 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:77 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:81 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:71 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:76 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:77 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:81 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:71 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:76 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:77 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:81 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:71 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:76 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:77 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:81 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:71 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:76 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:77 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:81 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:71 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:76 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:77 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:81 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:71 gain:0.02552240934977412 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:76 gain:0.02552240934977412 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:77 gain:0.02552240934977412 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:81 gain:0.02552240934977412 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:71 gain:0.03634633135269779 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:76 gain:0.03634633135269779 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:77 gain:0.03634633135269779 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:81 gain:0.03634633135269779 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:71 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:76 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:77 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:81 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (5/1 → 321/64) ⇝ 21/4 | note:G2 gain:0.5165366864730185 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:71 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:76 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:77 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:81 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 5/1 ⇜ (321/64 → 161/32) ⇝ 21/4 | note:G2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 67/14 ⇜ (161/32 → 141/28) | note:71 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 67/14 ⇜ (161/32 → 141/28) | note:76 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 67/14 ⇜ (161/32 → 141/28) | note:77 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 67/14 ⇜ (161/32 → 141/28) | note:81 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 5/1 ⇜ (161/32 → 323/64) ⇝ 21/4 | note:G2 gain:0.6247759065022576 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 5/1 ⇜ (323/64 → 81/16) ⇝ 21/4 | note:G2 gain:0.5165366864730189 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 5/1 ⇜ (81/16 → 325/64) ⇝ 21/4 | note:G2 gain:0.36346331352698347 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 5/1 ⇜ (325/64 → 163/32) ⇝ 21/4 | note:G2 gain:0.25522409349774344 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 5/1 ⇜ (163/32 → 327/64) ⇝ 21/4 | note:G2 gain:0.25522409349774383 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 5/1 ⇜ (327/64 → 41/8) ⇝ 21/4 | note:G2 gain:0.36346331352697914 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 5/1 ⇜ (41/8 → 329/64) ⇝ 21/4 | note:G2 gain:0.5165366864730198 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (41/8 → 329/64) ⇝ 21/4 | note:G4 gain:0.5165366864730198 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (41/8 → 329/64) ⇝ 21/4 | note:Bb4 gain:0.5165366864730198 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 ⇜ (329/64 → 165/32) ⇝ 21/4 | note:G2 gain:0.6247759065022557 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 41/8 ⇜ (329/64 → 165/32) ⇝ 21/4 | note:G4 gain:0.6247759065022557 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 41/8 ⇜ (329/64 → 165/32) ⇝ 21/4 | note:Bb4 gain:0.6247759065022557 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 ⇜ (165/32 → 331/64) ⇝ 21/4 | note:G2 gain:0.624775906502257 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 41/8 ⇜ (165/32 → 331/64) ⇝ 21/4 | note:G4 gain:0.624775906502257 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 41/8 ⇜ (165/32 → 331/64) ⇝ 21/4 | note:Bb4 gain:0.624775906502257 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 ⇜ (331/64 → 83/16) ⇝ 21/4 | note:G2 gain:0.5165366864730229 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 41/8 ⇜ (331/64 → 83/16) ⇝ 21/4 | note:G4 gain:0.5165366864730229 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 41/8 ⇜ (331/64 → 83/16) ⇝ 21/4 | note:Bb4 gain:0.5165366864730229 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 ⇜ (83/16 → 333/64) ⇝ 21/4 | note:G2 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 41/8 ⇜ (83/16 → 333/64) ⇝ 21/4 | note:G4 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 41/8 ⇜ (83/16 → 333/64) ⇝ 21/4 | note:Bb4 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 ⇜ (333/64 → 167/32) ⇝ 21/4 | note:G2 gain:0.2552240934977451 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 41/8 ⇜ (333/64 → 167/32) ⇝ 21/4 | note:G4 gain:0.2552240934977451 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 41/8 ⇜ (333/64 → 167/32) ⇝ 21/4 | note:Bb4 gain:0.2552240934977451 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 ⇜ (167/32 → 335/64) ⇝ 21/4 | note:G2 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 41/8 ⇜ (167/32 → 335/64) ⇝ 21/4 | note:G4 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 41/8 ⇜ (167/32 → 335/64) ⇝ 21/4 | note:Bb4 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 ⇜ (335/64 → 21/4) | note:G2 gain:0.36346331352697514 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 41/8 ⇜ (335/64 → 21/4) | note:G4 gain:0.36346331352697514 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 41/8 ⇜ (335/64 → 21/4) | note:Bb4 gain:0.36346331352697514 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (21/4 → 337/64) ⇝ 11/2 | note:B3 gain:0.25826834323650794 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (21/4 → 337/64) ⇝ 11/2 | note:E4 gain:0.25826834323650794 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (21/4 → 337/64) ⇝ 11/2 | note:F4 gain:0.25826834323650794 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (21/4 → 337/64) ⇝ 11/2 | note:A4 gain:0.25826834323650794 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:B3 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:E4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:F4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:A4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:B3 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:E4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:F4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:A4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:B3 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:E4 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:F4 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:A4 gain:0.2582683432365082 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:B3 gain:0.18173165676349312 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:E4 gain:0.18173165676349312 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:F4 gain:0.18173165676349312 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:A4 gain:0.18173165676349312 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:B3 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:E4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:F4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:A4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:B3 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:E4 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:F4 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:A4 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:B3 gain:0.18173165676349085 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:E4 gain:0.18173165676349085 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:F4 gain:0.18173165676349085 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:A4 gain:0.18173165676349085 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:B3 gain:0.2582683432365059 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:E4 gain:0.2582683432365059 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:F4 gain:0.2582683432365059 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:A4 gain:0.2582683432365059 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:B3 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:E4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:F4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:A4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:B3 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:E4 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:F4 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:A4 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:B3 gain:0.25826834323651016 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:E4 gain:0.25826834323651016 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:F4 gain:0.25826834323651016 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:A4 gain:0.25826834323651016 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:B3 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:E4 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:F4 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:A4 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:B3 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:E4 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:F4 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:A4 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:B3 gain:0.1276120467488716 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:E4 gain:0.1276120467488716 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:F4 gain:0.1276120467488716 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:A4 gain:0.1276120467488716 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 21/4 ⇜ (351/64 → 11/2) | note:B3 gain:0.18173165676348885 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 21/4 ⇜ (351/64 → 11/2) | note:E4 gain:0.18173165676348885 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 21/4 ⇜ (351/64 → 11/2) | note:F4 gain:0.18173165676348885 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/4 ⇜ (351/64 → 11/2) | note:A4 gain:0.18173165676348885 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (11/2 → 353/64) ⇝ 45/8 | note:D5 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (11/2 → 353/64) ⇝ 45/8 | note:F5 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (11/2 → 353/64) ⇝ 23/4 | note:G2 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 11/2 ⇜ (353/64 → 177/32) ⇝ 45/8 | note:D5 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/2 ⇜ (353/64 → 177/32) ⇝ 45/8 | note:F5 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (353/64 → 177/32) ⇝ 23/4 | note:G2 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 11/2 ⇜ (177/32 → 355/64) ⇝ 45/8 | note:D5 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/2 ⇜ (177/32 → 355/64) ⇝ 45/8 | note:F5 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (177/32 → 355/64) ⇝ 23/4 | note:G2 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (155/28 → 355/64) ⇝ 81/14 | note:71 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (155/28 → 355/64) ⇝ 81/14 | note:76 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (155/28 → 355/64) ⇝ 81/14 | note:77 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (155/28 → 355/64) ⇝ 81/14 | note:81 gain:0.06247759065022577 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (355/64 → 89/16) ⇝ 45/8 | note:D5 gain:0.5165366864730244 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/2 ⇜ (355/64 → 89/16) ⇝ 45/8 | note:F5 gain:0.5165366864730244 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (355/64 → 89/16) ⇝ 23/4 | note:G2 gain:0.5165366864730244 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:71 gain:0.05165366864730245 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:76 gain:0.05165366864730245 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:77 gain:0.05165366864730245 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:81 gain:0.05165366864730245 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (89/16 → 357/64) ⇝ 45/8 | note:D5 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/2 ⇜ (89/16 → 357/64) ⇝ 45/8 | note:F5 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (89/16 → 357/64) ⇝ 23/4 | note:G2 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:71 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:76 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:77 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:81 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (357/64 → 179/32) ⇝ 45/8 | note:D5 gain:0.25522409349774133 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/2 ⇜ (357/64 → 179/32) ⇝ 45/8 | note:F5 gain:0.25522409349774133 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (357/64 → 179/32) ⇝ 23/4 | note:G2 gain:0.25522409349774133 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:71 gain:0.025522409349774136 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:76 gain:0.025522409349774136 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:77 gain:0.025522409349774136 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:81 gain:0.025522409349774136 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (179/32 → 359/64) ⇝ 45/8 | note:D5 gain:0.2552240934977416 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/2 ⇜ (179/32 → 359/64) ⇝ 45/8 | note:F5 gain:0.2552240934977416 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (179/32 → 359/64) ⇝ 23/4 | note:G2 gain:0.2552240934977416 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:71 gain:0.025522409349774164 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:76 gain:0.025522409349774164 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:77 gain:0.025522409349774164 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:81 gain:0.025522409349774164 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (359/64 → 45/8) | note:D5 gain:0.36346331352698424 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 11/2 ⇜ (359/64 → 45/8) | note:F5 gain:0.36346331352698424 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (359/64 → 45/8) ⇝ 23/4 | note:G2 gain:0.36346331352698424 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:71 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:76 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:77 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:81 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (45/8 → 361/64) ⇝ 23/4 | note:G2 gain:0.5165366864730144 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:71 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:76 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:77 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:81 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (361/64 → 181/32) ⇝ 23/4 | note:G2 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:71 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:76 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:77 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:81 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (181/32 → 363/64) ⇝ 23/4 | note:G2 gain:0.6247759065022592 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:71 gain:0.06247759065022593 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:76 gain:0.06247759065022593 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:77 gain:0.06247759065022593 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:81 gain:0.06247759065022593 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (363/64 → 91/16) ⇝ 23/4 | note:G2 gain:0.5165366864730178 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:71 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:76 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:77 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:81 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (91/16 → 365/64) ⇝ 23/4 | note:G2 gain:0.36346331352698763 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:71 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:76 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:77 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:81 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (365/64 → 183/32) ⇝ 23/4 | note:G2 gain:0.255224093497743 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:71 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:76 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:77 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:81 gain:0.025522409349774303 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (183/32 → 367/64) ⇝ 23/4 | note:G2 gain:0.2552240934977399 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:71 gain:0.02552240934977399 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:76 gain:0.02552240934977399 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:77 gain:0.02552240934977399 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:81 gain:0.02552240934977399 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 11/2 ⇜ (367/64 → 23/4) | note:G2 gain:0.36346331352698025 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:71 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:76 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:77 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:81 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:71 gain:0.05165366864730209 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:76 gain:0.05165366864730209 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:77 gain:0.05165366864730209 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:81 gain:0.05165366864730209 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (23/4 → 369/64) ⇝ 47/8 | note:D5 gain:0.5165366864730209 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (23/4 → 369/64) ⇝ 47/8 | note:F5 gain:0.5165366864730209 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (23/4 → 369/64) ⇝ 6/1 | note:B3 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (23/4 → 369/64) ⇝ 6/1 | note:E4 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (23/4 → 369/64) ⇝ 6/1 | note:F4 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (23/4 → 369/64) ⇝ 6/1 | note:A4 gain:0.25826834323651043 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:71 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:76 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:77 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:81 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 47/8 | note:D5 gain:0.6247759065022562 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 47/8 | note:F5 gain:0.6247759065022562 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:B3 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:E4 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:F4 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:A4 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 155/28 ⇜ (185/32 → 81/14) | note:71 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 155/28 ⇜ (185/32 → 81/14) | note:76 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 155/28 ⇜ (185/32 → 81/14) | note:77 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 155/28 ⇜ (185/32 → 81/14) | note:81 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 47/8 | note:D5 gain:0.6247759065022566 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 47/8 | note:F5 gain:0.6247759065022566 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:B3 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:E4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:F4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:A4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 47/8 | note:D5 gain:0.5165366864730218 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 47/8 | note:F5 gain:0.5165366864730218 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:B3 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:E4 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:F4 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:A4 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 47/8 | note:D5 gain:0.36346331352698114 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 47/8 | note:F5 gain:0.36346331352698114 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:B3 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:E4 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:F4 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:A4 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 47/8 | note:D5 gain:0.25522409349774466 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 47/8 | note:F5 gain:0.25522409349774466 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:B3 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:E4 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:F4 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:A4 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 47/8 | note:D5 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 47/8 | note:F5 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:B3 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:E4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:F4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:A4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (375/64 → 47/8) | note:D5 gain:0.36346331352697625 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 23/4 ⇜ (375/64 → 47/8) | note:F5 gain:0.36346331352697625 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:B3 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:E4 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:F4 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:A4 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:B3 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:E4 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:F4 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:A4 gain:0.25826834323650844 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:B3 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:E4 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:F4 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:A4 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:B3 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:E4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:F4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:A4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:B3 gain:0.25826834323650766 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:E4 gain:0.25826834323650766 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:F4 gain:0.25826834323650766 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:A4 gain:0.25826834323650766 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:B3 gain:0.18173165676349257 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:E4 gain:0.18173165676349257 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:F4 gain:0.18173165676349257 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:A4 gain:0.18173165676349257 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:B3 gain:0.12761204674887097 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:E4 gain:0.12761204674887097 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:F4 gain:0.12761204674887097 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:A4 gain:0.12761204674887097 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:B3 gain:0.12761204674887047 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:E4 gain:0.12761204674887047 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:F4 gain:0.12761204674887047 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:A4 gain:0.12761204674887047 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 23/4 ⇜ (383/64 → 6/1) | note:B3 gain:0.18173165676349137 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 23/4 ⇜ (383/64 → 6/1) | note:E4 gain:0.18173165676349137 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 23/4 ⇜ (383/64 → 6/1) | note:F4 gain:0.18173165676349137 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 23/4 ⇜ (383/64 → 6/1) | note:A4 gain:0.18173165676349137 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (6/1 → 385/64) ⇝ 25/4 | note:F#2 gain:0.5165366864730129 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 6/1 ⇜ (385/64 → 193/32) ⇝ 25/4 | note:F#2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 6/1 ⇜ (193/32 → 387/64) ⇝ 25/4 | note:F#2 gain:0.62477590650226 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (169/28 → 387/64) ⇝ 44/7 | note:71 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (169/28 → 387/64) ⇝ 44/7 | note:76 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (169/28 → 387/64) ⇝ 44/7 | note:77 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (169/28 → 387/64) ⇝ 44/7 | note:81 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 6/1 ⇜ (387/64 → 97/16) ⇝ 25/4 | note:F#2 gain:0.5165366864730192 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:71 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:76 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:77 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:81 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 6/1 ⇜ (97/16 → 389/64) ⇝ 25/4 | note:F#2 gain:0.36346331352698913 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:71 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:76 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:77 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:81 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 6/1 ⇜ (389/64 → 195/32) ⇝ 25/4 | note:F#2 gain:0.2552240934977436 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:71 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:76 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:77 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:81 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 6/1 ⇜ (195/32 → 391/64) ⇝ 25/4 | note:F#2 gain:0.25522409349774366 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:71 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:76 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:77 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:81 gain:0.02552240934977437 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 6/1 ⇜ (391/64 → 49/8) ⇝ 25/4 | note:F#2 gain:0.36346331352697875 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:71 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:76 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:77 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:81 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 6/1 ⇜ (49/8 → 393/64) ⇝ 25/4 | note:F#2 gain:0.5165366864730194 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:71 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:76 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:77 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:81 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (49/8 → 393/64) ⇝ 25/4 | note:F#4 gain:0.5165366864730194 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ (49/8 → 393/64) ⇝ 25/4 | note:A#4 gain:0.5165366864730194 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 6/1 ⇜ (393/64 → 197/32) ⇝ 25/4 | note:F#2 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:71 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:76 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:77 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:81 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 49/8 ⇜ (393/64 → 197/32) ⇝ 25/4 | note:F#4 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 49/8 ⇜ (393/64 → 197/32) ⇝ 25/4 | note:A#4 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 6/1 ⇜ (197/32 → 395/64) ⇝ 25/4 | note:F#2 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:71 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:76 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:77 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:81 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 49/8 ⇜ (197/32 → 395/64) ⇝ 25/4 | note:F#4 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 49/8 ⇜ (197/32 → 395/64) ⇝ 25/4 | note:A#4 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 6/1 ⇜ (395/64 → 99/16) ⇝ 25/4 | note:F#2 gain:0.5165366864730233 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:71 gain:0.05165366864730234 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:76 gain:0.05165366864730234 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:77 gain:0.05165366864730234 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:81 gain:0.05165366864730234 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 49/8 ⇜ (395/64 → 99/16) ⇝ 25/4 | note:F#4 gain:0.5165366864730233 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 49/8 ⇜ (395/64 → 99/16) ⇝ 25/4 | note:A#4 gain:0.5165366864730233 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 6/1 ⇜ (99/16 → 397/64) ⇝ 25/4 | note:F#2 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:71 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:76 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:77 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:81 gain:0.03634633135269826 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 49/8 ⇜ (99/16 → 397/64) ⇝ 25/4 | note:F#4 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 49/8 ⇜ (99/16 → 397/64) ⇝ 25/4 | note:A#4 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 6/1 ⇜ (397/64 → 199/32) ⇝ 25/4 | note:F#2 gain:0.2552240934977452 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:71 gain:0.025522409349774525 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:76 gain:0.025522409349774525 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:77 gain:0.025522409349774525 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:81 gain:0.025522409349774525 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 49/8 ⇜ (397/64 → 199/32) ⇝ 25/4 | note:F#4 gain:0.2552240934977452 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 49/8 ⇜ (397/64 → 199/32) ⇝ 25/4 | note:A#4 gain:0.2552240934977452 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 6/1 ⇜ (199/32 → 399/64) ⇝ 25/4 | note:F#2 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:71 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:76 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:77 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:81 gain:0.025522409349774206 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 49/8 ⇜ (199/32 → 399/64) ⇝ 25/4 | note:F#4 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 49/8 ⇜ (199/32 → 399/64) ⇝ 25/4 | note:A#4 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 6/1 ⇜ (399/64 → 25/4) | note:F#2 gain:0.3634633135269748 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:71 gain:0.036346331352697485 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:76 gain:0.036346331352697485 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:77 gain:0.036346331352697485 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:81 gain:0.036346331352697485 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 49/8 ⇜ (399/64 → 25/4) | note:F#4 gain:0.3634633135269748 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 49/8 ⇜ (399/64 → 25/4) | note:A#4 gain:0.3634633135269748 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:71 gain:0.05165366864730156 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:76 gain:0.05165366864730156 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:77 gain:0.05165366864730156 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:81 gain:0.05165366864730156 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:71 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:76 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:77 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:81 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 169/28 ⇜ (201/32 → 44/7) | note:71 gain:0.062477590650225893 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 169/28 ⇜ (201/32 → 44/7) | note:76 gain:0.062477590650225893 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 169/28 ⇜ (201/32 → 44/7) | note:77 gain:0.062477590650225893 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 169/28 ⇜ (201/32 → 44/7) | note:81 gain:0.062477590650225893 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (13/2 → 417/64) ⇝ 53/8 | note:C#5 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (13/2 → 417/64) ⇝ 53/8 | note:E5 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (13/2 → 417/64) ⇝ 27/4 | note:Bb3 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (13/2 → 417/64) ⇝ 27/4 | note:Eb4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (13/2 → 417/64) ⇝ 27/4 | note:E4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (13/2 → 417/64) ⇝ 27/4 | note:Ab4 gain:0.258268343236509 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (13/2 → 417/64) ⇝ 27/4 | note:F#2 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 53/8 | note:C#5 gain:0.624775906502255 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 53/8 | note:E5 gain:0.624775906502255 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:Bb3 gain:0.3123879532511275 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:Eb4 gain:0.3123879532511275 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:E4 gain:0.3123879532511275 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:Ab4 gain:0.3123879532511275 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:F#2 gain:0.624775906502255 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 53/8 | note:C#5 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 53/8 | note:E5 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:Bb3 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:Eb4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:E4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:Ab4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:F#2 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 53/8 | note:C#5 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 53/8 | note:E5 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:Bb3 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:Eb4 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:E4 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:Ab4 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:F#2 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 53/8 | note:C#5 gain:0.363463313526984 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 53/8 | note:E5 gain:0.363463313526984 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:Bb3 gain:0.181731656763492 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:Eb4 gain:0.181731656763492 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:E4 gain:0.181731656763492 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:Ab4 gain:0.181731656763492 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:F#2 gain:0.363463313526984 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 53/8 | note:C#5 gain:0.2552240934977415 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 53/8 | note:E5 gain:0.2552240934977415 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:Bb3 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:Eb4 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:E4 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:Ab4 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:F#2 gain:0.2552240934977415 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 53/8 | note:C#5 gain:0.2552240934977414 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 53/8 | note:E5 gain:0.2552240934977414 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:Bb3 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:Eb4 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:E4 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:Ab4 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:F#2 gain:0.2552240934977414 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (423/64 → 53/8) | note:C#5 gain:0.3634633135269838 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 13/2 ⇜ (423/64 → 53/8) | note:E5 gain:0.3634633135269838 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:Bb3 gain:0.1817316567634919 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:Eb4 gain:0.1817316567634919 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:E4 gain:0.1817316567634919 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:Ab4 gain:0.1817316567634919 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:F#2 gain:0.3634633135269838 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:Bb3 gain:0.25826834323650705 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:Eb4 gain:0.25826834323650705 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:E4 gain:0.25826834323650705 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:Ab4 gain:0.25826834323650705 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:F#2 gain:0.5165366864730141 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:Bb3 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:Eb4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:E4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:Ab4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:F#2 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:Bb3 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:Eb4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:E4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:Ab4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:F#2 gain:0.6247759065022594 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:Bb3 gain:0.2582683432365091 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:Eb4 gain:0.2582683432365091 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:E4 gain:0.2582683432365091 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:Ab4 gain:0.2582683432365091 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:F#2 gain:0.5165366864730182 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:Bb3 gain:0.181731656763494 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:Eb4 gain:0.181731656763494 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:E4 gain:0.181731656763494 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:Ab4 gain:0.181731656763494 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:F#2 gain:0.363463313526988 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:Bb3 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:Eb4 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:E4 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:Ab4 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:F#2 gain:0.25522409349774317 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:Bb3 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:Eb4 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:E4 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:Ab4 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:F#2 gain:0.2552240934977398 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 13/2 ⇜ (431/64 → 27/4) | note:Bb3 gain:0.18173165676348993 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 13/2 ⇜ (431/64 → 27/4) | note:Eb4 gain:0.18173165676348993 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (431/64 → 27/4) | note:E4 gain:0.18173165676348993 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 13/2 ⇜ (431/64 → 27/4) | note:Ab4 gain:0.18173165676348993 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 13/2 ⇜ (431/64 → 27/4) | note:F#2 gain:0.36346331352697986 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (27/4 → 433/64) ⇝ 55/8 | note:F#4 gain:0.5165366864730204 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ (27/4 → 433/64) ⇝ 55/8 | note:A#4 gain:0.5165366864730204 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 27/4 ⇜ (433/64 → 217/32) ⇝ 55/8 | note:F#4 gain:0.624775906502256 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 27/4 ⇜ (433/64 → 217/32) ⇝ 55/8 | note:A#4 gain:0.624775906502256 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 27/4 ⇜ (217/32 → 435/64) ⇝ 55/8 | note:F#4 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 27/4 ⇜ (217/32 → 435/64) ⇝ 55/8 | note:A#4 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (95/14 → 435/64) ⇝ 197/28 | note:70 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (95/14 → 435/64) ⇝ 197/28 | note:75 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (95/14 → 435/64) ⇝ 197/28 | note:76 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (95/14 → 435/64) ⇝ 197/28 | note:80 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 27/4 ⇜ (435/64 → 109/16) ⇝ 55/8 | note:F#4 gain:0.5165366864730222 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 27/4 ⇜ (435/64 → 109/16) ⇝ 55/8 | note:A#4 gain:0.5165366864730222 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:70 gain:0.051653668647302226 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:75 gain:0.051653668647302226 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:76 gain:0.051653668647302226 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:80 gain:0.051653668647302226 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 27/4 ⇜ (109/16 → 437/64) ⇝ 55/8 | note:F#4 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 27/4 ⇜ (109/16 → 437/64) ⇝ 55/8 | note:A#4 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:70 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:75 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:76 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:80 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 27/4 ⇜ (437/64 → 219/32) ⇝ 55/8 | note:F#4 gain:0.2552240934977448 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 27/4 ⇜ (437/64 → 219/32) ⇝ 55/8 | note:A#4 gain:0.2552240934977448 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:70 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:75 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:76 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:80 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 27/4 ⇜ (219/32 → 439/64) ⇝ 55/8 | note:F#4 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 27/4 ⇜ (219/32 → 439/64) ⇝ 55/8 | note:A#4 gain:0.2552240934977425 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:70 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:75 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:76 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:80 gain:0.02552240934977425 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 27/4 ⇜ (439/64 → 55/8) | note:F#4 gain:0.36346331352697586 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 27/4 ⇜ (439/64 → 55/8) | note:A#4 gain:0.36346331352697586 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:70 gain:0.03634633135269759 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:75 gain:0.03634633135269759 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:76 gain:0.03634633135269759 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:80 gain:0.03634633135269759 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:70 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:75 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:76 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:80 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:70 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:75 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:76 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:80 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:70 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:75 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:76 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:80 gain:0.06247759065022584 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:70 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:75 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:76 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:80 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:70 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:75 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:76 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:80 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:70 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:75 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:76 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:80 gain:0.025522409349774212 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:70 gain:0.02552240934977408 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:75 gain:0.02552240934977408 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:76 gain:0.02552240934977408 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:80 gain:0.02552240934977408 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:70 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:75 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:76 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:80 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:70 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:75 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:76 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:80 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (7/1 → 449/64) ⇝ 29/4 | note:F#2 gain:0.5165366864730125 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:70 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:75 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:76 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:80 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 7/1 ⇜ (449/64 → 225/32) ⇝ 29/4 | note:F#2 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 95/14 ⇜ (225/32 → 197/28) | note:70 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 95/14 ⇜ (225/32 → 197/28) | note:75 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 95/14 ⇜ (225/32 → 197/28) | note:76 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 95/14 ⇜ (225/32 → 197/28) | note:80 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 7/1 ⇜ (225/32 → 451/64) ⇝ 29/4 | note:F#2 gain:0.62477590650226 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 7/1 ⇜ (451/64 → 113/16) ⇝ 29/4 | note:F#2 gain:0.5165366864730195 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 7/1 ⇜ (113/16 → 453/64) ⇝ 29/4 | note:F#2 gain:0.36346331352698946 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 7/1 ⇜ (453/64 → 227/32) ⇝ 29/4 | note:F#2 gain:0.2552240934977437 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 7/1 ⇜ (227/32 → 455/64) ⇝ 29/4 | note:F#2 gain:0.25522409349774355 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 7/1 ⇜ (455/64 → 57/8) ⇝ 29/4 | note:F#2 gain:0.3634633135269784 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 7/1 ⇜ (57/8 → 457/64) ⇝ 29/4 | note:F#2 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (57/8 → 457/64) ⇝ 29/4 | note:F#4 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ (57/8 → 457/64) ⇝ 29/4 | note:A#4 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/1 ⇜ (457/64 → 229/32) ⇝ 29/4 | note:F#2 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 57/8 ⇜ (457/64 → 229/32) ⇝ 29/4 | note:F#4 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 57/8 ⇜ (457/64 → 229/32) ⇝ 29/4 | note:A#4 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/1 ⇜ (229/32 → 459/64) ⇝ 29/4 | note:F#2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 57/8 ⇜ (229/32 → 459/64) ⇝ 29/4 | note:F#4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 57/8 ⇜ (229/32 → 459/64) ⇝ 29/4 | note:A#4 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/1 ⇜ (459/64 → 115/16) ⇝ 29/4 | note:F#2 gain:0.5165366864730236 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 57/8 ⇜ (459/64 → 115/16) ⇝ 29/4 | note:F#4 gain:0.5165366864730236 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 57/8 ⇜ (459/64 → 115/16) ⇝ 29/4 | note:A#4 gain:0.5165366864730236 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/1 ⇜ (115/16 → 461/64) ⇝ 29/4 | note:F#2 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 57/8 ⇜ (115/16 → 461/64) ⇝ 29/4 | note:F#4 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 57/8 ⇜ (115/16 → 461/64) ⇝ 29/4 | note:A#4 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/1 ⇜ (461/64 → 231/32) ⇝ 29/4 | note:F#2 gain:0.2552240934977454 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 57/8 ⇜ (461/64 → 231/32) ⇝ 29/4 | note:F#4 gain:0.2552240934977454 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 57/8 ⇜ (461/64 → 231/32) ⇝ 29/4 | note:A#4 gain:0.2552240934977454 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/1 ⇜ (231/32 → 463/64) ⇝ 29/4 | note:F#2 gain:0.25522409349774183 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 57/8 ⇜ (231/32 → 463/64) ⇝ 29/4 | note:F#4 gain:0.25522409349774183 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 57/8 ⇜ (231/32 → 463/64) ⇝ 29/4 | note:A#4 gain:0.25522409349774183 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/1 ⇜ (463/64 → 29/4) | note:F#2 gain:0.3634633135269744 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 57/8 ⇜ (463/64 → 29/4) | note:F#4 gain:0.3634633135269744 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 57/8 ⇜ (463/64 → 29/4) | note:A#4 gain:0.3634633135269744 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (29/4 → 465/64) ⇝ 15/2 | note:Bb3 gain:0.25826834323650755 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (29/4 → 465/64) ⇝ 15/2 | note:Eb4 gain:0.25826834323650755 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (29/4 → 465/64) ⇝ 15/2 | note:E4 gain:0.25826834323650755 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (29/4 → 465/64) ⇝ 15/2 | note:Ab4 gain:0.25826834323650755 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:Bb3 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:Eb4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:E4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:Ab4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:Bb3 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:Eb4 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:E4 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:Ab4 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:Bb3 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:Eb4 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:E4 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:Ab4 gain:0.25826834323650855 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:Bb3 gain:0.18173165676349345 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:Eb4 gain:0.18173165676349345 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:E4 gain:0.18173165676349345 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:Ab4 gain:0.18173165676349345 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:Bb3 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:Eb4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:E4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:Ab4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:Bb3 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:Eb4 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:E4 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:Ab4 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:Bb3 gain:0.18173165676349046 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:Eb4 gain:0.18173165676349046 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:E4 gain:0.18173165676349046 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:Ab4 gain:0.18173165676349046 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:Bb3 gain:0.25826834323650555 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:Eb4 gain:0.25826834323650555 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:E4 gain:0.25826834323650555 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:Ab4 gain:0.25826834323650555 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:Bb3 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:Eb4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:E4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:Ab4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:Bb3 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:Eb4 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:E4 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:Ab4 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:Bb3 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:Eb4 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:E4 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:Ab4 gain:0.2582683432365105 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:Bb3 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:Eb4 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:E4 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:Ab4 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:Bb3 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:Eb4 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:E4 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:Ab4 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:Bb3 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:Eb4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:E4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:Ab4 gain:0.12761204674887147 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/4 ⇜ (479/64 → 15/2) | note:Bb3 gain:0.18173165676348849 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/4 ⇜ (479/64 → 15/2) | note:Eb4 gain:0.18173165676348849 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/4 ⇜ (479/64 → 15/2) | note:E4 gain:0.18173165676348849 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/4 ⇜ (479/64 → 15/2) | note:Ab4 gain:0.18173165676348849 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (15/2 → 481/64) ⇝ 61/8 | note:C#5 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (15/2 → 481/64) ⇝ 61/8 | note:E5 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (15/2 → 481/64) ⇝ 31/4 | note:F#2 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/2 ⇜ (481/64 → 241/32) ⇝ 61/8 | note:C#5 gain:0.6247759065022548 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 15/2 ⇜ (481/64 → 241/32) ⇝ 61/8 | note:E5 gain:0.6247759065022548 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/2 ⇜ (481/64 → 241/32) ⇝ 31/4 | note:F#2 gain:0.6247759065022548 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/2 ⇜ (241/32 → 483/64) ⇝ 61/8 | note:C#5 gain:0.624775906502258 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 15/2 ⇜ (241/32 → 483/64) ⇝ 61/8 | note:E5 gain:0.624775906502258 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/2 ⇜ (241/32 → 483/64) ⇝ 31/4 | note:F#2 gain:0.624775906502258 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (211/28 → 483/64) ⇝ 109/14 | note:70 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (211/28 → 483/64) ⇝ 109/14 | note:75 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (211/28 → 483/64) ⇝ 109/14 | note:76 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (211/28 → 483/64) ⇝ 109/14 | note:80 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (483/64 → 121/16) ⇝ 61/8 | note:C#5 gain:0.5165366864730251 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 15/2 ⇜ (483/64 → 121/16) ⇝ 61/8 | note:E5 gain:0.5165366864730251 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/2 ⇜ (483/64 → 121/16) ⇝ 31/4 | note:F#2 gain:0.5165366864730251 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:70 gain:0.05165366864730251 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:75 gain:0.05165366864730251 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:76 gain:0.05165366864730251 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:80 gain:0.05165366864730251 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (121/16 → 485/64) ⇝ 61/8 | note:C#5 gain:0.3634633135269844 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 15/2 ⇜ (121/16 → 485/64) ⇝ 61/8 | note:E5 gain:0.3634633135269844 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/2 ⇜ (121/16 → 485/64) ⇝ 31/4 | note:F#2 gain:0.3634633135269844 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:70 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:75 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:76 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:80 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (485/64 → 243/32) ⇝ 61/8 | note:C#5 gain:0.25522409349774167 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 15/2 ⇜ (485/64 → 243/32) ⇝ 61/8 | note:E5 gain:0.25522409349774167 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/2 ⇜ (485/64 → 243/32) ⇝ 31/4 | note:F#2 gain:0.25522409349774167 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:70 gain:0.025522409349774167 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:75 gain:0.025522409349774167 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:76 gain:0.025522409349774167 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:80 gain:0.025522409349774167 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (243/32 → 487/64) ⇝ 61/8 | note:C#5 gain:0.2552240934977413 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 15/2 ⇜ (243/32 → 487/64) ⇝ 61/8 | note:E5 gain:0.2552240934977413 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/2 ⇜ (243/32 → 487/64) ⇝ 31/4 | note:F#2 gain:0.2552240934977413 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:70 gain:0.02552240934977413 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:75 gain:0.02552240934977413 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:76 gain:0.02552240934977413 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:80 gain:0.02552240934977413 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (487/64 → 61/8) | note:C#5 gain:0.36346331352698347 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 15/2 ⇜ (487/64 → 61/8) | note:E5 gain:0.36346331352698347 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/2 ⇜ (487/64 → 61/8) ⇝ 31/4 | note:F#2 gain:0.36346331352698347 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:70 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:75 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:76 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:80 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (61/8 → 489/64) ⇝ 31/4 | note:F#2 gain:0.5165366864730137 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:70 gain:0.051653668647301365 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:75 gain:0.051653668647301365 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:76 gain:0.051653668647301365 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:80 gain:0.051653668647301365 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (489/64 → 245/32) ⇝ 31/4 | note:F#2 gain:0.6247759065022576 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:70 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:75 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:76 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:80 gain:0.06247759065022576 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (245/32 → 491/64) ⇝ 31/4 | note:F#2 gain:0.6247759065022596 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:70 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:75 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:76 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:80 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (491/64 → 123/16) ⇝ 31/4 | note:F#2 gain:0.5165366864730185 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:70 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:75 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:76 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:80 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (123/16 → 493/64) ⇝ 31/4 | note:F#2 gain:0.36346331352698835 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:70 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:75 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:76 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:80 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (493/64 → 247/32) ⇝ 31/4 | note:F#2 gain:0.2552240934977433 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:70 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:75 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:76 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:80 gain:0.02552240934977433 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (247/32 → 495/64) ⇝ 31/4 | note:F#2 gain:0.2552240934977396 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:70 gain:0.025522409349773963 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:75 gain:0.025522409349773963 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:76 gain:0.025522409349773963 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:80 gain:0.025522409349773963 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/2 ⇜ (495/64 → 31/4) | note:F#2 gain:0.3634633135269795 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:70 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:75 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:76 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:80 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:70 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:75 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:76 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:80 gain:0.05165366864730201 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (31/4 → 497/64) ⇝ 63/8 | note:C#5 gain:0.5165366864730201 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (31/4 → 497/64) ⇝ 63/8 | note:E5 gain:0.5165366864730201 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (31/4 → 497/64) ⇝ 8/1 | note:Bb3 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (31/4 → 497/64) ⇝ 8/1 | note:Eb4 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (31/4 → 497/64) ⇝ 8/1 | note:E4 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (31/4 → 497/64) ⇝ 8/1 | note:Ab4 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:70 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:75 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:76 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:80 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 63/8 | note:C#5 gain:0.6247759065022559 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 63/8 | note:E5 gain:0.6247759065022559 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:Bb3 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:Eb4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:E4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:Ab4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 211/28 ⇜ (249/32 → 109/14) | note:70 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 211/28 ⇜ (249/32 → 109/14) | note:75 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 211/28 ⇜ (249/32 → 109/14) | note:76 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 211/28 ⇜ (249/32 → 109/14) | note:80 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 63/8 | note:C#5 gain:0.6247759065022569 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 63/8 | note:E5 gain:0.6247759065022569 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:Bb3 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:Eb4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:E4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:Ab4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 63/8 | note:C#5 gain:0.5165366864730225 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 63/8 | note:E5 gain:0.5165366864730225 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:Bb3 gain:0.25826834323651127 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:Eb4 gain:0.25826834323651127 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:E4 gain:0.25826834323651127 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:Ab4 gain:0.25826834323651127 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 63/8 | note:C#5 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 63/8 | note:E5 gain:0.36346331352698186 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:Bb3 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:Eb4 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:E4 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:Ab4 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 63/8 | note:C#5 gain:0.25522409349774494 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 63/8 | note:E5 gain:0.25522409349774494 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:Bb3 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:Eb4 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:E4 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:Ab4 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 63/8 | note:C#5 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 63/8 | note:E5 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:Bb3 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:Eb4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:E4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:Ab4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (503/64 → 63/8) | note:C#5 gain:0.36346331352697553 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/4 ⇜ (503/64 → 63/8) | note:E5 gain:0.36346331352697553 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:Bb3 gain:0.18173165676348776 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:Eb4 gain:0.18173165676348776 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:E4 gain:0.18173165676348776 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:Ab4 gain:0.18173165676348776 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:Bb3 gain:0.2582683432365081 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:Eb4 gain:0.2582683432365081 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:E4 gain:0.2582683432365081 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:Ab4 gain:0.2582683432365081 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:Bb3 gain:0.3123879532511271 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:Eb4 gain:0.3123879532511271 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:E4 gain:0.3123879532511271 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:Ab4 gain:0.3123879532511271 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:Bb3 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:Eb4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:E4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:Ab4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:Bb3 gain:0.258268343236508 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:Eb4 gain:0.258268343236508 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:E4 gain:0.258268343236508 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:Ab4 gain:0.258268343236508 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:Bb3 gain:0.18173165676349293 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:Eb4 gain:0.18173165676349293 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:E4 gain:0.18173165676349293 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:Ab4 gain:0.18173165676349293 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:Bb3 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:Eb4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:E4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:Ab4 gain:0.12761204674887114 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:Bb3 gain:0.12761204674887036 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:Eb4 gain:0.12761204674887036 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:E4 gain:0.12761204674887036 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:Ab4 gain:0.12761204674887036 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 31/4 ⇜ (511/64 → 8/1) | note:Bb3 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 31/4 ⇜ (511/64 → 8/1) | note:Eb4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 31/4 ⇜ (511/64 → 8/1) | note:E4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 31/4 ⇜ (511/64 → 8/1) | note:Ab4 gain:0.181731656763491 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (8/1 → 513/64) ⇝ 33/4 | note:C2 gain:0.5165366864730122 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 8/1 ⇜ (513/64 → 257/32) ⇝ 33/4 | note:C2 gain:0.6247759065022569 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 8/1 ⇜ (257/32 → 515/64) ⇝ 33/4 | note:C2 gain:0.6247759065022601 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (225/28 → 515/64) ⇝ 58/7 | note:70 gain:0.06247759065022601 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (225/28 → 515/64) ⇝ 58/7 | note:75 gain:0.06247759065022601 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (225/28 → 515/64) ⇝ 58/7 | note:76 gain:0.06247759065022601 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (225/28 → 515/64) ⇝ 58/7 | note:80 gain:0.06247759065022601 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 8/1 ⇜ (515/64 → 129/16) ⇝ 33/4 | note:C2 gain:0.51653668647302 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:70 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:75 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:76 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:80 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 8/1 ⇜ (129/16 → 517/64) ⇝ 33/4 | note:C2 gain:0.3634633135269898 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:70 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:75 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:76 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:80 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 8/1 ⇜ (517/64 → 259/32) ⇝ 33/4 | note:C2 gain:0.2552240934977439 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:70 gain:0.02552240934977439 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:75 gain:0.02552240934977439 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:76 gain:0.02552240934977439 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:80 gain:0.02552240934977439 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 8/1 ⇜ (259/32 → 519/64) ⇝ 33/4 | note:C2 gain:0.2552240934977434 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:70 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:75 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:76 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:80 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 8/1 ⇜ (519/64 → 65/8) ⇝ 33/4 | note:C2 gain:0.363463313526978 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:70 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:75 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:76 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:80 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 8/1 ⇜ (65/8 → 521/64) ⇝ 33/4 | note:C2 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:70 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:75 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:76 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:80 gain:0.051653668647301865 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (65/8 → 521/64) ⇝ 33/4 | note:C4 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (65/8 → 521/64) ⇝ 33/4 | note:G4 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (65/8 → 521/64) ⇝ 33/4 | note:Bb4 gain:0.5165366864730186 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 8/1 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:C2 gain:0.6247759065022553 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:70 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:75 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:76 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:80 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 65/8 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:C4 gain:0.6247759065022553 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 65/8 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:G4 gain:0.6247759065022553 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 65/8 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:Bb4 gain:0.6247759065022553 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 8/1 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:70 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:76 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:80 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 65/8 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:C4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 65/8 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:G4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 65/8 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:Bb4 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 8/1 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:C2 gain:0.516536686473024 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:70 gain:0.0516536686473024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:75 gain:0.0516536686473024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:76 gain:0.0516536686473024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:80 gain:0.0516536686473024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 65/8 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:C4 gain:0.516536686473024 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 65/8 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:G4 gain:0.516536686473024 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 65/8 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:Bb4 gain:0.516536686473024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 8/1 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:C2 gain:0.3634633135269833 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:70 gain:0.03634633135269833 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:75 gain:0.03634633135269833 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:76 gain:0.03634633135269833 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:80 gain:0.03634633135269833 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 65/8 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:C4 gain:0.3634633135269833 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 65/8 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:G4 gain:0.3634633135269833 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 65/8 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:Bb4 gain:0.3634633135269833 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 8/1 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:C2 gain:0.25522409349774555 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:70 gain:0.025522409349774556 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:75 gain:0.025522409349774556 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:76 gain:0.025522409349774556 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:80 gain:0.025522409349774556 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 65/8 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:C4 gain:0.25522409349774555 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 65/8 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:G4 gain:0.25522409349774555 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 65/8 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:Bb4 gain:0.25522409349774555 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 8/1 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:C2 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:70 gain:0.025522409349774174 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:75 gain:0.025522409349774174 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:76 gain:0.025522409349774174 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:80 gain:0.025522409349774174 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 65/8 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:C4 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 65/8 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:G4 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 65/8 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:Bb4 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 8/1 ⇜ (527/64 → 33/4) | note:C2 gain:0.36346331352697403 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:70 gain:0.0363463313526974 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:75 gain:0.0363463313526974 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:76 gain:0.0363463313526974 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:80 gain:0.0363463313526974 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 65/8 ⇜ (527/64 → 33/4) | note:C4 gain:0.36346331352697403 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 65/8 ⇜ (527/64 → 33/4) | note:G4 gain:0.36346331352697403 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 65/8 ⇜ (527/64 → 33/4) | note:Bb4 gain:0.36346331352697403 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:70 gain:0.051653668647301476 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:75 gain:0.051653668647301476 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:76 gain:0.051653668647301476 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:80 gain:0.051653668647301476 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:70 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:75 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:76 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:80 gain:0.0624775906502258 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 225/28 ⇜ (265/32 → 58/7) | note:70 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 225/28 ⇜ (265/32 → 58/7) | note:75 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 225/28 ⇜ (265/32 → 58/7) | note:76 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 225/28 ⇜ (265/32 → 58/7) | note:80 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (17/2 → 545/64) ⇝ 69/8 | note:G4 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (17/2 → 545/64) ⇝ 69/8 | note:D5 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (17/2 → 545/64) ⇝ 69/8 | note:F5 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (17/2 → 545/64) ⇝ 35/4 | note:Bb3 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (17/2 → 545/64) ⇝ 35/4 | note:D4 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (17/2 → 545/64) ⇝ 35/4 | note:Eb4 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (17/2 → 545/64) ⇝ 35/4 | note:G4 gain:0.25826834323650866 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (17/2 → 545/64) ⇝ 35/4 | note:C2 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 69/8 | note:G4 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 69/8 | note:D5 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 69/8 | note:F5 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:Bb3 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:D4 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:Eb4 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:G4 gain:0.31238795325112734 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:C2 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 69/8 | note:G4 gain:0.6247759065022581 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 69/8 | note:D5 gain:0.6247759065022581 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 69/8 | note:F5 gain:0.6247759065022581 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:Bb3 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:D4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:Eb4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:G4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:C2 gain:0.6247759065022581 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 69/8 | note:G4 gain:0.5165366864730254 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 69/8 | note:D5 gain:0.5165366864730254 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 69/8 | note:F5 gain:0.5165366864730254 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:Bb3 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:D4 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:Eb4 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:G4 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:C2 gain:0.5165366864730254 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 69/8 | note:G4 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 69/8 | note:D5 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 69/8 | note:F5 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:Bb3 gain:0.18173165676349237 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:D4 gain:0.18173165676349237 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:Eb4 gain:0.18173165676349237 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:G4 gain:0.18173165676349237 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:C2 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 69/8 | note:G4 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 69/8 | note:D5 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 69/8 | note:F5 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:Bb3 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:D4 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:Eb4 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:G4 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:C2 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 69/8 | note:G4 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 69/8 | note:D5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 69/8 | note:F5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:Bb3 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:D4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:Eb4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:G4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:C2 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) | note:G4 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) | note:D5 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) | note:F5 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:Bb3 gain:0.18173165676349157 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:D4 gain:0.18173165676349157 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:Eb4 gain:0.18173165676349157 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:G4 gain:0.18173165676349157 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:C2 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:Bb3 gain:0.25826834323650666 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:D4 gain:0.25826834323650666 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:Eb4 gain:0.25826834323650666 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:G4 gain:0.25826834323650666 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:C2 gain:0.5165366864730133 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:Bb3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:D4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:Eb4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:G4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:C2 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:Bb3 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:D4 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:Eb4 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:G4 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:C2 gain:0.6247759065022598 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:Bb3 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:D4 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:Eb4 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:G4 gain:0.25826834323650943 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:C2 gain:0.5165366864730189 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:Bb3 gain:0.18173165676349437 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:D4 gain:0.18173165676349437 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:Eb4 gain:0.18173165676349437 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:G4 gain:0.18173165676349437 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:C2 gain:0.36346331352698874 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:Bb3 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:D4 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:Eb4 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:G4 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:C2 gain:0.25522409349774344 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:Bb3 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:D4 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:Eb4 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:G4 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:C2 gain:0.25522409349773945 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 17/2 ⇜ (559/64 → 35/4) | note:Bb3 gain:0.18173165676348957 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 17/2 ⇜ (559/64 → 35/4) | note:D4 gain:0.18173165676348957 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (559/64 → 35/4) | note:Eb4 gain:0.18173165676348957 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 17/2 ⇜ (559/64 → 35/4) | note:G4 gain:0.18173165676348957 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (559/64 → 35/4) | note:C2 gain:0.36346331352697914 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (35/4 → 561/64) ⇝ 71/8 | note:C4 gain:0.5165366864730198 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (35/4 → 561/64) ⇝ 71/8 | note:G4 gain:0.5165366864730198 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (35/4 → 561/64) ⇝ 71/8 | note:Bb4 gain:0.5165366864730198 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 35/4 ⇜ (561/64 → 281/32) ⇝ 71/8 | note:C4 gain:0.6247759065022557 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 35/4 ⇜ (561/64 → 281/32) ⇝ 71/8 | note:G4 gain:0.6247759065022557 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 35/4 ⇜ (561/64 → 281/32) ⇝ 71/8 | note:Bb4 gain:0.6247759065022557 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 35/4 ⇜ (281/32 → 563/64) ⇝ 71/8 | note:C4 gain:0.624775906502257 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 35/4 ⇜ (281/32 → 563/64) ⇝ 71/8 | note:G4 gain:0.624775906502257 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 35/4 ⇜ (281/32 → 563/64) ⇝ 71/8 | note:Bb4 gain:0.624775906502257 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (123/14 → 563/64) ⇝ 253/28 | note:70 gain:0.062477590650225706 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (123/14 → 563/64) ⇝ 253/28 | note:74 gain:0.062477590650225706 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (123/14 → 563/64) ⇝ 253/28 | note:75 gain:0.062477590650225706 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (123/14 → 563/64) ⇝ 253/28 | note:79 gain:0.062477590650225706 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 35/4 ⇜ (563/64 → 141/16) ⇝ 71/8 | note:C4 gain:0.5165366864730229 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 35/4 ⇜ (563/64 → 141/16) ⇝ 71/8 | note:G4 gain:0.5165366864730229 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 35/4 ⇜ (563/64 → 141/16) ⇝ 71/8 | note:Bb4 gain:0.5165366864730229 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:70 gain:0.05165366864730229 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:74 gain:0.05165366864730229 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:75 gain:0.05165366864730229 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:79 gain:0.05165366864730229 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 35/4 ⇜ (141/16 → 565/64) ⇝ 71/8 | note:C4 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 35/4 ⇜ (141/16 → 565/64) ⇝ 71/8 | note:G4 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 35/4 ⇜ (141/16 → 565/64) ⇝ 71/8 | note:Bb4 gain:0.36346331352698225 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:70 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:74 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:75 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:79 gain:0.03634633135269823 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 35/4 ⇜ (565/64 → 283/32) ⇝ 71/8 | note:C4 gain:0.2552240934977451 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 35/4 ⇜ (565/64 → 283/32) ⇝ 71/8 | note:G4 gain:0.2552240934977451 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 35/4 ⇜ (565/64 → 283/32) ⇝ 71/8 | note:Bb4 gain:0.2552240934977451 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:70 gain:0.02552240934977451 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:74 gain:0.02552240934977451 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:75 gain:0.02552240934977451 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:79 gain:0.02552240934977451 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 35/4 ⇜ (283/32 → 567/64) ⇝ 71/8 | note:C4 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 35/4 ⇜ (283/32 → 567/64) ⇝ 71/8 | note:G4 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 35/4 ⇜ (283/32 → 567/64) ⇝ 71/8 | note:Bb4 gain:0.25522409349774217 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:70 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:74 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:75 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:79 gain:0.02552240934977422 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 35/4 ⇜ (567/64 → 71/8) | note:C4 gain:0.36346331352697514 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 35/4 ⇜ (567/64 → 71/8) | note:G4 gain:0.36346331352697514 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 35/4 ⇜ (567/64 → 71/8) | note:Bb4 gain:0.36346331352697514 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:70 gain:0.03634633135269751 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:74 gain:0.03634633135269751 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:75 gain:0.03634633135269751 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:79 gain:0.03634633135269751 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:70 gain:0.05165366864730159 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:74 gain:0.05165366864730159 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:75 gain:0.05165366864730159 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:79 gain:0.05165366864730159 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:70 gain:0.062477590650225415 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:74 gain:0.062477590650225415 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:75 gain:0.062477590650225415 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:79 gain:0.062477590650225415 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:70 gain:0.06247759065022587 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:74 gain:0.06247759065022587 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:75 gain:0.06247759065022587 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:79 gain:0.06247759065022587 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:70 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:74 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:75 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:79 gain:0.05165366864730164 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:70 gain:0.03634633135269862 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:74 gain:0.03634633135269862 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:75 gain:0.03634633135269862 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:79 gain:0.03634633135269862 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:70 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:74 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:75 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:79 gain:0.02552240934977424 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:70 gain:0.025522409349774053 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:74 gain:0.025522409349774053 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:75 gain:0.025522409349774053 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:79 gain:0.025522409349774053 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:70 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:74 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:75 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:79 gain:0.03634633135269817 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:70 gain:0.05165366864730118 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:74 gain:0.05165366864730118 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:75 gain:0.05165366864730118 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:79 gain:0.05165366864730118 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (9/1 → 577/64) ⇝ 37/4 | note:C2 gain:0.5165366864730118 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:70 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:74 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:75 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:79 gain:0.06247759065022568 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 9/1 ⇜ (577/64 → 289/32) ⇝ 37/4 | note:C2 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 123/14 ⇜ (289/32 → 253/28) | note:70 gain:0.06247759065022604 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 123/14 ⇜ (289/32 → 253/28) | note:74 gain:0.06247759065022604 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 123/14 ⇜ (289/32 → 253/28) | note:75 gain:0.06247759065022604 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 123/14 ⇜ (289/32 → 253/28) | note:79 gain:0.06247759065022604 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 9/1 ⇜ (289/32 → 579/64) ⇝ 37/4 | note:C2 gain:0.6247759065022603 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/1 ⇜ (579/64 → 145/16) ⇝ 37/4 | note:C2 gain:0.5165366864730203 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/1 ⇜ (145/16 → 581/64) ⇝ 37/4 | note:C2 gain:0.3634633135269902 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/1 ⇜ (581/64 → 291/32) ⇝ 37/4 | note:C2 gain:0.25522409349774405 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/1 ⇜ (291/32 → 583/64) ⇝ 37/4 | note:C2 gain:0.2552240934977432 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/1 ⇜ (583/64 → 73/8) ⇝ 37/4 | note:C2 gain:0.3634633135269777 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 9/1 ⇜ (73/8 → 585/64) ⇝ 37/4 | note:C2 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (73/8 → 585/64) ⇝ 37/4 | note:C4 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (73/8 → 585/64) ⇝ 37/4 | note:G4 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (73/8 → 585/64) ⇝ 37/4 | note:Bb4 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 9/1 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:C2 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 73/8 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:C4 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 73/8 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:G4 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 73/8 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:Bb4 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 9/1 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:C2 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 73/8 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:C4 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 73/8 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:G4 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 73/8 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:Bb4 gain:0.6247759065022577 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 9/1 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:C2 gain:0.5165366864730244 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 73/8 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:C4 gain:0.5165366864730244 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 73/8 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:G4 gain:0.5165366864730244 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 73/8 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:Bb4 gain:0.5165366864730244 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 9/1 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:C2 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 73/8 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:C4 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 73/8 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:G4 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 73/8 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:Bb4 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 9/1 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:C2 gain:0.25522409349774566 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 73/8 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:C4 gain:0.25522409349774566 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 73/8 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:G4 gain:0.25522409349774566 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 73/8 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:Bb4 gain:0.25522409349774566 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 9/1 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:C2 gain:0.2552240934977416 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 73/8 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:C4 gain:0.2552240934977416 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 73/8 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:G4 gain:0.2552240934977416 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 73/8 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:Bb4 gain:0.2552240934977416 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 9/1 ⇜ (591/64 → 37/4) | note:C2 gain:0.3634633135269737 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 73/8 ⇜ (591/64 → 37/4) | note:C4 gain:0.3634633135269737 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 73/8 ⇜ (591/64 → 37/4) | note:G4 gain:0.3634633135269737 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 73/8 ⇜ (591/64 → 37/4) | note:Bb4 gain:0.3634633135269737 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (37/4 → 593/64) ⇝ 19/2 | note:Bb3 gain:0.2582683432365072 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (37/4 → 593/64) ⇝ 19/2 | note:D4 gain:0.2582683432365072 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (37/4 → 593/64) ⇝ 19/2 | note:Eb4 gain:0.2582683432365072 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (37/4 → 593/64) ⇝ 19/2 | note:G4 gain:0.2582683432365072 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:Bb3 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:D4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:Eb4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:G4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:Bb3 gain:0.3123879532511296 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:D4 gain:0.3123879532511296 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:Eb4 gain:0.3123879532511296 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:G4 gain:0.3123879532511296 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:Bb3 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:D4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:Eb4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:G4 gain:0.2582683432365089 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:Bb3 gain:0.18173165676349382 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:D4 gain:0.18173165676349382 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:Eb4 gain:0.18173165676349382 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:G4 gain:0.18173165676349382 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:Bb3 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:D4 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:Eb4 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:G4 gain:0.1276120467488715 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:Bb3 gain:0.12761204674886995 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:D4 gain:0.12761204674886995 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:Eb4 gain:0.12761204674886995 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:G4 gain:0.12761204674886995 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:Bb3 gain:0.18173165676349012 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:D4 gain:0.18173165676349012 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:Eb4 gain:0.18173165676349012 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:G4 gain:0.18173165676349012 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:Bb3 gain:0.25826834323650516 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:D4 gain:0.25826834323650516 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:Eb4 gain:0.25826834323650516 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:G4 gain:0.25826834323650516 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:Bb3 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:D4 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:Eb4 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:G4 gain:0.3123879532511281 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:Bb3 gain:0.31238795325113045 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:D4 gain:0.31238795325113045 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:Eb4 gain:0.31238795325113045 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:G4 gain:0.31238795325113045 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:Bb3 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:D4 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:Eb4 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:G4 gain:0.2582683432365109 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:Bb3 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:D4 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:Eb4 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:G4 gain:0.18173165676349057 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:Bb3 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:D4 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:Eb4 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:G4 gain:0.12761204674887233 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:Bb3 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:D4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:Eb4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:G4 gain:0.12761204674887133 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 37/4 ⇜ (607/64 → 19/2) | note:Bb3 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 37/4 ⇜ (607/64 → 19/2) | note:D4 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 37/4 ⇜ (607/64 → 19/2) | note:Eb4 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 37/4 ⇜ (607/64 → 19/2) | note:G4 gain:0.18173165676348813 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (19/2 → 609/64) ⇝ 77/8 | note:G4 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (19/2 → 609/64) ⇝ 77/8 | note:D5 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (19/2 → 609/64) ⇝ 77/8 | note:F5 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (19/2 → 609/64) ⇝ 39/4 | note:C2 gain:0.5165366864730169 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 77/8 | note:G4 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 77/8 | note:D5 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 77/8 | note:F5 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 39/4 | note:C2 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 77/8 | note:G4 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 77/8 | note:D5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 77/8 | note:F5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 39/4 | note:C2 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ (267/28 → 611/64) ⇝ 137/14 | note:70 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (267/28 → 611/64) ⇝ 137/14 | note:74 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (267/28 → 611/64) ⇝ 137/14 | note:75 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (267/28 → 611/64) ⇝ 137/14 | note:79 gain:0.062477590650225824 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 77/8 | note:G4 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 77/8 | note:D5 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 77/8 | note:F5 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 39/4 | note:C2 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:70 gain:0.05165366864730258 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:74 gain:0.05165366864730258 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:75 gain:0.05165366864730258 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:79 gain:0.05165366864730258 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 77/8 | note:G4 gain:0.36346331352698513 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 77/8 | note:D5 gain:0.36346331352698513 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 77/8 | note:F5 gain:0.36346331352698513 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 39/4 | note:C2 gain:0.36346331352698513 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:70 gain:0.03634633135269851 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:74 gain:0.03634633135269851 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:75 gain:0.03634633135269851 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:79 gain:0.03634633135269851 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 77/8 | note:G4 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 77/8 | note:D5 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 77/8 | note:F5 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 39/4 | note:C2 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:70 gain:0.025522409349774195 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:74 gain:0.025522409349774195 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:75 gain:0.025522409349774195 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:79 gain:0.025522409349774195 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 77/8 | note:G4 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 77/8 | note:D5 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 77/8 | note:F5 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 39/4 | note:C2 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:70 gain:0.025522409349774094 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:74 gain:0.025522409349774094 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:75 gain:0.025522409349774094 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:79 gain:0.025522409349774094 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (615/64 → 77/8) | note:G4 gain:0.36346331352698275 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 19/2 ⇜ (615/64 → 77/8) | note:D5 gain:0.36346331352698275 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 19/2 ⇜ (615/64 → 77/8) | note:F5 gain:0.36346331352698275 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (615/64 → 77/8) ⇝ 39/4 | note:C2 gain:0.36346331352698275 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:70 gain:0.036346331352698276 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:74 gain:0.036346331352698276 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:75 gain:0.036346331352698276 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:79 gain:0.036346331352698276 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (77/8 → 617/64) ⇝ 39/4 | note:C2 gain:0.5165366864730129 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:70 gain:0.05165366864730129 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:74 gain:0.05165366864730129 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:75 gain:0.05165366864730129 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:79 gain:0.05165366864730129 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (617/64 → 309/32) ⇝ 39/4 | note:C2 gain:0.6247759065022573 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:70 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:74 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:75 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:79 gain:0.062477590650225734 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (309/32 → 619/64) ⇝ 39/4 | note:C2 gain:0.62477590650226 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:70 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:74 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:75 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:79 gain:0.062477590650226004 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (619/64 → 155/16) ⇝ 39/4 | note:C2 gain:0.5165366864730192 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:70 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:74 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:75 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:79 gain:0.05165366864730192 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (155/16 → 621/64) ⇝ 39/4 | note:C2 gain:0.36346331352698913 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:70 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:74 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:75 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:79 gain:0.036346331352698914 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (621/64 → 311/32) ⇝ 39/4 | note:C2 gain:0.2552240934977436 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:70 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:74 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:75 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:79 gain:0.02552240934977436 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (311/32 → 623/64) ⇝ 39/4 | note:C2 gain:0.25522409349773933 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:70 gain:0.025522409349773935 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:74 gain:0.025522409349773935 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:75 gain:0.025522409349773935 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:79 gain:0.025522409349773935 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (623/64 → 39/4) | note:C2 gain:0.36346331352697875 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:70 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:74 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:75 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:79 gain:0.03634633135269787 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:70 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:74 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:75 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:79 gain:0.05165366864730195 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (39/4 → 625/64) ⇝ 79/8 | note:G4 gain:0.5165366864730194 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (39/4 → 625/64) ⇝ 79/8 | note:D5 gain:0.5165366864730194 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (39/4 → 625/64) ⇝ 79/8 | note:F5 gain:0.5165366864730194 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (39/4 → 625/64) ⇝ 10/1 | note:Bb3 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (39/4 → 625/64) ⇝ 10/1 | note:D4 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (39/4 → 625/64) ⇝ 10/1 | note:Eb4 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (39/4 → 625/64) ⇝ 10/1 | note:G4 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:70 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:74 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:75 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:79 gain:0.06247759065022556 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 79/8 | note:G4 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 79/8 | note:D5 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 79/8 | note:F5 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:Bb3 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:D4 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:Eb4 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:G4 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 267/28 ⇜ (313/32 → 137/14) | note:70 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 267/28 ⇜ (313/32 → 137/14) | note:74 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 267/28 ⇜ (313/32 → 137/14) | note:75 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 267/28 ⇜ (313/32 → 137/14) | note:79 gain:0.06247759065022571 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 79/8 | note:G4 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 79/8 | note:D5 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 79/8 | note:F5 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:Bb3 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:D4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:Eb4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:G4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 79/8 | note:G4 gain:0.5165366864730233 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 79/8 | note:D5 gain:0.5165366864730233 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 79/8 | note:F5 gain:0.5165366864730233 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:Bb3 gain:0.25826834323651165 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:D4 gain:0.25826834323651165 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:Eb4 gain:0.25826834323651165 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:G4 gain:0.25826834323651165 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 79/8 | note:G4 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 79/8 | note:D5 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 79/8 | note:F5 gain:0.3634633135269826 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:Bb3 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:D4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:Eb4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:G4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 79/8 | note:G4 gain:0.2552240934977452 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 79/8 | note:D5 gain:0.2552240934977452 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 79/8 | note:F5 gain:0.2552240934977452 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:Bb3 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:D4 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:Eb4 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:G4 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 79/8 | note:G4 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 79/8 | note:D5 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 79/8 | note:F5 gain:0.25522409349774206 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:Bb3 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:D4 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:Eb4 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:G4 gain:0.12761204674887103 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (631/64 → 79/8) | note:G4 gain:0.3634633135269748 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (631/64 → 79/8) | note:D5 gain:0.3634633135269748 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 39/4 ⇜ (631/64 → 79/8) | note:F5 gain:0.3634633135269748 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:Bb3 gain:0.1817316567634874 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:D4 gain:0.1817316567634874 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:Eb4 gain:0.1817316567634874 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:G4 gain:0.1817316567634874 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:Bb3 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:D4 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:Eb4 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:G4 gain:0.25826834323650777 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:Bb3 gain:0.31238795325112695 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:D4 gain:0.31238795325112695 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:Eb4 gain:0.31238795325112695 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:G4 gain:0.31238795325112695 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:Bb3 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:D4 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:Eb4 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:G4 gain:0.31238795325112945 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:Bb3 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:D4 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:Eb4 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:G4 gain:0.2582683432365084 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:Bb3 gain:0.1817316567634933 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:D4 gain:0.1817316567634933 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:Eb4 gain:0.1817316567634933 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:G4 gain:0.1817316567634933 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:Bb3 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:D4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:Eb4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:G4 gain:0.12761204674887128 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:Bb3 gain:0.12761204674887017 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:D4 gain:0.12761204674887017 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:Eb4 gain:0.12761204674887017 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:G4 gain:0.12761204674887017 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 39/4 ⇜ (639/64 → 10/1) | note:Bb3 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 39/4 ⇜ (639/64 → 10/1) | note:D4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 39/4 ⇜ (639/64 → 10/1) | note:Eb4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 39/4 ⇜ (639/64 → 10/1) | note:G4 gain:0.18173165676349068 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (10/1 → 641/64) ⇝ 41/4 | note:F2 gain:0.5165366864730114 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 10/1 ⇜ (641/64 → 321/32) ⇝ 41/4 | note:F2 gain:0.6247759065022567 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 10/1 ⇜ (321/32 → 643/64) ⇝ 41/4 | note:F2 gain:0.6247759065022604 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (281/28 → 643/64) ⇝ 72/7 | note:70 gain:0.062477590650226046 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (281/28 → 643/64) ⇝ 72/7 | note:74 gain:0.062477590650226046 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (281/28 → 643/64) ⇝ 72/7 | note:75 gain:0.062477590650226046 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (281/28 → 643/64) ⇝ 72/7 | note:79 gain:0.062477590650226046 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 10/1 ⇜ (643/64 → 161/16) ⇝ 41/4 | note:F2 gain:0.5165366864730206 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:70 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:74 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:75 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:79 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 10/1 ⇜ (161/16 → 645/64) ⇝ 41/4 | note:F2 gain:0.3634633135269906 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:70 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:74 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:75 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:79 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 10/1 ⇜ (645/64 → 323/32) ⇝ 41/4 | note:F2 gain:0.2552240934977442 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:70 gain:0.025522409349774424 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:74 gain:0.025522409349774424 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:75 gain:0.025522409349774424 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:79 gain:0.025522409349774424 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 10/1 ⇜ (323/32 → 647/64) ⇝ 41/4 | note:F2 gain:0.2552240934977431 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:70 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:74 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:75 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:79 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 10/1 ⇜ (647/64 → 81/8) ⇝ 41/4 | note:F2 gain:0.36346331352697736 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:70 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:74 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:75 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:79 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 10/1 ⇜ (81/8 → 649/64) ⇝ 41/4 | note:F2 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:70 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:74 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:75 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:79 gain:0.0516536686473018 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (81/8 → 649/64) ⇝ 41/4 | note:F4 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (81/8 → 649/64) ⇝ 41/4 | note:C5 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (81/8 → 649/64) ⇝ 41/4 | note:Eb5 gain:0.516536686473018 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 10/1 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:F2 gain:0.624775906502255 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:70 gain:0.062477590650225505 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:74 gain:0.062477590650225505 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:75 gain:0.062477590650225505 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:79 gain:0.062477590650225505 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 81/8 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:F4 gain:0.624775906502255 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 81/8 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:C5 gain:0.624775906502255 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 81/8 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:Eb5 gain:0.624775906502255 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 10/1 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:F2 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:70 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:74 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:75 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:79 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 81/8 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:F4 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 81/8 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:C5 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 81/8 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:Eb5 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 10/1 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:F2 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:70 gain:0.051653668647302475 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:74 gain:0.051653668647302475 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:75 gain:0.051653668647302475 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:79 gain:0.051653668647302475 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 81/8 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:F4 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 81/8 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:C5 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 81/8 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:Eb5 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 10/1 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:F2 gain:0.363463313526984 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:70 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:74 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:75 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:79 gain:0.0363463313526984 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 81/8 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:F4 gain:0.363463313526984 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 81/8 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:C5 gain:0.363463313526984 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 81/8 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:Eb5 gain:0.363463313526984 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 10/1 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:F2 gain:0.25522409349774583 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:70 gain:0.025522409349774584 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:74 gain:0.025522409349774584 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:75 gain:0.025522409349774584 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:79 gain:0.025522409349774584 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 81/8 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:F4 gain:0.25522409349774583 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 81/8 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:C5 gain:0.25522409349774583 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 81/8 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:Eb5 gain:0.25522409349774583 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 10/1 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:F2 gain:0.25522409349773706 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:70 gain:0.025522409349773706 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:74 gain:0.025522409349773706 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:75 gain:0.025522409349773706 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:79 gain:0.025522409349773706 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 81/8 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:F4 gain:0.25522409349773706 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 81/8 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:C5 gain:0.25522409349773706 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 81/8 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:Eb5 gain:0.25522409349773706 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 10/1 ⇜ (655/64 → 41/4) | note:F2 gain:0.3634633135269838 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:70 gain:0.03634633135269838 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:74 gain:0.03634633135269838 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:75 gain:0.03634633135269838 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:79 gain:0.03634633135269838 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 81/8 ⇜ (655/64 → 41/4) | note:F4 gain:0.3634633135269838 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 81/8 ⇜ (655/64 → 41/4) | note:C5 gain:0.3634633135269838 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 81/8 ⇜ (655/64 → 41/4) | note:Eb5 gain:0.3634633135269838 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:70 gain:0.051653668647301414 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:74 gain:0.051653668647301414 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:75 gain:0.051653668647301414 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:79 gain:0.051653668647301414 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:70 gain:0.06247759065022534 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:74 gain:0.06247759065022534 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:75 gain:0.06247759065022534 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:79 gain:0.06247759065022534 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 281/28 ⇜ (329/32 → 72/7) | note:70 gain:0.06247759065022551 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 281/28 ⇜ (329/32 → 72/7) | note:74 gain:0.06247759065022551 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 281/28 ⇜ (329/32 → 72/7) | note:75 gain:0.06247759065022551 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 281/28 ⇜ (329/32 → 72/7) | note:79 gain:0.06247759065022551 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (21/2 → 673/64) ⇝ 85/8 | note:C5 gain:0.5165366864730061 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (21/2 → 673/64) ⇝ 85/8 | note:G5 gain:0.5165366864730061 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (21/2 → 673/64) ⇝ 85/8 | note:Bb5 gain:0.5165366864730061 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ (21/2 → 673/64) ⇝ 43/4 | note:Eb4 gain:0.25826834323650305 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (21/2 → 673/64) ⇝ 43/4 | note:G4 gain:0.25826834323650305 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (21/2 → 673/64) ⇝ 43/4 | note:Ab4 gain:0.25826834323650305 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (21/2 → 673/64) ⇝ 43/4 | note:C5 gain:0.25826834323650305 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (21/2 → 673/64) ⇝ 43/4 | note:F2 gain:0.5165366864730061 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 85/8 | note:C5 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 85/8 | note:G5 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 85/8 | note:Bb5 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:Eb4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:G4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:Ab4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:C5 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:F2 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 85/8 | note:C5 gain:0.6247759065022583 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 85/8 | note:G5 gain:0.6247759065022583 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 85/8 | note:Bb5 gain:0.6247759065022583 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:Eb4 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:G4 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:Ab4 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:C5 gain:0.31238795325112917 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:F2 gain:0.6247759065022583 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 85/8 | note:C5 gain:0.5165366864730262 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 85/8 | note:G5 gain:0.5165366864730262 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 85/8 | note:Bb5 gain:0.5165366864730262 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:Eb4 gain:0.2582683432365131 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:G4 gain:0.2582683432365131 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:Ab4 gain:0.2582683432365131 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:C5 gain:0.2582683432365131 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:F2 gain:0.5165366864730262 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 85/8 | note:C5 gain:0.363463313526996 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 85/8 | note:G5 gain:0.363463313526996 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 85/8 | note:Bb5 gain:0.363463313526996 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:Eb4 gain:0.181731656763498 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:G4 gain:0.181731656763498 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:Ab4 gain:0.181731656763498 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:C5 gain:0.181731656763498 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:F2 gain:0.363463313526996 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 85/8 | note:C5 gain:0.2552240934977421 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 85/8 | note:G5 gain:0.2552240934977421 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 85/8 | note:Bb5 gain:0.2552240934977421 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:Eb4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:G4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:Ab4 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:C5 gain:0.12761204674887106 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:F2 gain:0.2552240934977421 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 85/8 | note:C5 gain:0.2552240934977408 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 85/8 | note:G5 gain:0.2552240934977408 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 85/8 | note:Bb5 gain:0.2552240934977408 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:Eb4 gain:0.1276120467488704 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:G4 gain:0.1276120467488704 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:Ab4 gain:0.1276120467488704 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:C5 gain:0.1276120467488704 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:F2 gain:0.2552240934977408 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) | note:C5 gain:0.3634633135269719 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) | note:G5 gain:0.3634633135269719 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) | note:Bb5 gain:0.3634633135269719 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:Eb4 gain:0.18173165676348596 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:G4 gain:0.18173165676348596 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:Ab4 gain:0.18173165676348596 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:C5 gain:0.18173165676348596 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:F2 gain:0.3634633135269719 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:Eb4 gain:0.25826834323651154 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:G4 gain:0.25826834323651154 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:Ab4 gain:0.25826834323651154 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:C5 gain:0.25826834323651154 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:F2 gain:0.5165366864730231 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:Eb4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:G4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:Ab4 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:C5 gain:0.31238795325112856 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:F2 gain:0.6247759065022571 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:Eb4 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:G4 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:Ab4 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:C5 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:F2 gain:0.62477590650226 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:Eb4 gain:0.25826834323651504 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:G4 gain:0.25826834323651504 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:Ab4 gain:0.25826834323651504 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:C5 gain:0.25826834323651504 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:F2 gain:0.5165366864730301 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:Eb4 gain:0.18173165676348946 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:G4 gain:0.18173165676348946 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:Ab4 gain:0.18173165676348946 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:C5 gain:0.18173165676348946 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:F2 gain:0.3634633135269789 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:Eb4 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:G4 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:Ab4 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:C5 gain:0.12761204674887186 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:F2 gain:0.2552240934977437 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:Eb4 gain:0.12761204674886958 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:G4 gain:0.12761204674886958 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:Ab4 gain:0.12761204674886958 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:C5 gain:0.12761204674886958 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:F2 gain:0.25522409349773917 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 21/2 ⇜ (687/64 → 43/4) | note:Eb4 gain:0.18173165676348396 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (687/64 → 43/4) | note:G4 gain:0.18173165676348396 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (687/64 → 43/4) | note:Ab4 gain:0.18173165676348396 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 21/2 ⇜ (687/64 → 43/4) | note:C5 gain:0.18173165676348396 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 21/2 ⇜ (687/64 → 43/4) | note:F2 gain:0.3634633135269679 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (43/4 → 689/64) ⇝ 87/8 | note:F4 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (43/4 → 689/64) ⇝ 87/8 | note:C5 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (43/4 → 689/64) ⇝ 87/8 | note:Eb5 gain:0.5165366864730191 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/4 ⇜ (689/64 → 345/32) ⇝ 87/8 | note:F4 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 43/4 ⇜ (689/64 → 345/32) ⇝ 87/8 | note:C5 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 43/4 ⇜ (689/64 → 345/32) ⇝ 87/8 | note:Eb5 gain:0.6247759065022556 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 43/4 ⇜ (345/32 → 691/64) ⇝ 87/8 | note:F4 gain:0.6247759065022618 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 43/4 ⇜ (345/32 → 691/64) ⇝ 87/8 | note:C5 gain:0.6247759065022618 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 43/4 ⇜ (345/32 → 691/64) ⇝ 87/8 | note:Eb5 gain:0.6247759065022618 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (151/14 → 691/64) ⇝ 309/28 | note:75 gain:0.06247759065022618 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (151/14 → 691/64) ⇝ 309/28 | note:79 gain:0.06247759065022618 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (151/14 → 691/64) ⇝ 309/28 | note:80 gain:0.06247759065022618 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (151/14 → 691/64) ⇝ 309/28 | note:84 gain:0.06247759065022618 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 43/4 ⇜ (691/64 → 173/16) ⇝ 87/8 | note:F4 gain:0.5165366864730131 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 43/4 ⇜ (691/64 → 173/16) ⇝ 87/8 | note:C5 gain:0.5165366864730131 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 43/4 ⇜ (691/64 → 173/16) ⇝ 87/8 | note:Eb5 gain:0.5165366864730131 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:75 gain:0.05165366864730131 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:79 gain:0.05165366864730131 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:80 gain:0.05165366864730131 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:84 gain:0.05165366864730131 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 43/4 ⇜ (173/16 → 693/64) ⇝ 87/8 | note:F4 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 43/4 ⇜ (173/16 → 693/64) ⇝ 87/8 | note:C5 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 43/4 ⇜ (173/16 → 693/64) ⇝ 87/8 | note:Eb5 gain:0.3634633135269829 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:75 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:79 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:80 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:84 gain:0.03634633135269829 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 43/4 ⇜ (693/64 → 347/32) ⇝ 87/8 | note:F4 gain:0.2552240934977454 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 43/4 ⇜ (693/64 → 347/32) ⇝ 87/8 | note:C5 gain:0.2552240934977454 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 43/4 ⇜ (693/64 → 347/32) ⇝ 87/8 | note:Eb5 gain:0.2552240934977454 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:75 gain:0.02552240934977454 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:79 gain:0.02552240934977454 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:80 gain:0.02552240934977454 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:84 gain:0.02552240934977454 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 43/4 ⇜ (347/32 → 695/64) ⇝ 87/8 | note:F4 gain:0.2552240934977375 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 43/4 ⇜ (347/32 → 695/64) ⇝ 87/8 | note:C5 gain:0.2552240934977375 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 43/4 ⇜ (347/32 → 695/64) ⇝ 87/8 | note:Eb5 gain:0.2552240934977375 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:75 gain:0.02552240934977375 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:79 gain:0.02552240934977375 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:80 gain:0.02552240934977375 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:84 gain:0.02552240934977375 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 43/4 ⇜ (695/64 → 87/8) | note:F4 gain:0.3634633135269849 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 43/4 ⇜ (695/64 → 87/8) | note:C5 gain:0.3634633135269849 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 43/4 ⇜ (695/64 → 87/8) | note:Eb5 gain:0.3634633135269849 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:75 gain:0.03634633135269849 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:79 gain:0.03634633135269849 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:80 gain:0.03634633135269849 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:84 gain:0.03634633135269849 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:75 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:79 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:80 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:84 gain:0.05165366864730151 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:75 gain:0.06247759065022538 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:79 gain:0.06247759065022538 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:80 gain:0.06247759065022538 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:84 gain:0.06247759065022538 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:75 gain:0.06247759065022634 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:79 gain:0.06247759065022634 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:80 gain:0.06247759065022634 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:84 gain:0.06247759065022634 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:75 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:79 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:80 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:84 gain:0.05165366864730171 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:75 gain:0.03634633135269869 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:79 gain:0.03634633135269869 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:80 gain:0.03634633135269869 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:84 gain:0.03634633135269869 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:75 gain:0.025522409349774705 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:79 gain:0.025522409349774705 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:80 gain:0.025522409349774705 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:84 gain:0.025522409349774705 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:75 gain:0.025522409349774455 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:79 gain:0.025522409349774455 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:80 gain:0.025522409349774455 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:84 gain:0.025522409349774455 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:75 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:79 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:80 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:84 gain:0.036346331352698096 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:75 gain:0.051653668647301115 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:79 gain:0.051653668647301115 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:80 gain:0.051653668647301115 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:84 gain:0.051653668647301115 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (11/1 → 705/64) ⇝ 45/4 | note:F2 gain:0.5165366864730111 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:75 gain:0.06247759065022521 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:79 gain:0.06247759065022521 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:80 gain:0.06247759065022521 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:84 gain:0.06247759065022521 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 11/1 ⇜ (705/64 → 353/32) ⇝ 45/4 | note:F2 gain:0.6247759065022521 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 151/14 ⇜ (353/32 → 309/28) | note:75 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 151/14 ⇜ (353/32 → 309/28) | note:79 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 151/14 ⇜ (353/32 → 309/28) | note:80 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 151/14 ⇜ (353/32 → 309/28) | note:84 gain:0.06247759065022562 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 11/1 ⇜ (353/32 → 707/64) ⇝ 45/4 | note:F2 gain:0.6247759065022562 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 11/1 ⇜ (707/64 → 177/16) ⇝ 45/4 | note:F2 gain:0.516536686473021 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 11/1 ⇜ (177/16 → 709/64) ⇝ 45/4 | note:F2 gain:0.3634633135269909 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 11/1 ⇜ (709/64 → 355/32) ⇝ 45/4 | note:F2 gain:0.25522409349774 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 11/1 ⇜ (355/32 → 711/64) ⇝ 45/4 | note:F2 gain:0.25522409349774294 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 11/1 ⇜ (711/64 → 89/8) ⇝ 45/4 | note:F2 gain:0.36346331352697697 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 11/1 ⇜ (89/8 → 713/64) ⇝ 45/4 | note:F2 gain:0.5165366864730071 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (89/8 → 713/64) ⇝ 45/4 | note:F4 gain:0.5165366864730071 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (89/8 → 713/64) ⇝ 45/4 | note:C5 gain:0.5165366864730071 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (89/8 → 713/64) ⇝ 45/4 | note:Eb5 gain:0.5165366864730071 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:F2 gain:0.6247759065022592 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 89/8 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:F4 gain:0.6247759065022592 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 89/8 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:C5 gain:0.6247759065022592 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 89/8 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:Eb5 gain:0.6247759065022592 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:F2 gain:0.624775906502258 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 89/8 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:F4 gain:0.624775906502258 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 89/8 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:C5 gain:0.624775906502258 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 89/8 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:Eb5 gain:0.624775906502258 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:F2 gain:0.5165366864730251 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 89/8 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:F4 gain:0.5165366864730251 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 89/8 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:C5 gain:0.5165366864730251 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 89/8 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:Eb5 gain:0.5165366864730251 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:F2 gain:0.3634633135269949 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 89/8 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:F4 gain:0.3634633135269949 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 89/8 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:C5 gain:0.3634633135269949 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 89/8 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:Eb5 gain:0.3634633135269949 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:F2 gain:0.25522409349774167 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 89/8 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:F4 gain:0.25522409349774167 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 89/8 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:C5 gain:0.25522409349774167 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 89/8 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:Eb5 gain:0.25522409349774167 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:F2 gain:0.2552240934977413 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 89/8 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:F4 gain:0.2552240934977413 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 89/8 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:C5 gain:0.2552240934977413 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 89/8 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:Eb5 gain:0.2552240934977413 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (719/64 → 45/4) | note:F2 gain:0.363463313526973 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 89/8 ⇜ (719/64 → 45/4) | note:F4 gain:0.363463313526973 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 89/8 ⇜ (719/64 → 45/4) | note:C5 gain:0.363463313526973 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 89/8 ⇜ (719/64 → 45/4) | note:Eb5 gain:0.363463313526973 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (45/4 → 721/64) ⇝ 23/2 | note:Eb4 gain:0.2582683432365121 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (45/4 → 721/64) ⇝ 23/2 | note:G4 gain:0.2582683432365121 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (45/4 → 721/64) ⇝ 23/2 | note:Ab4 gain:0.2582683432365121 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (45/4 → 721/64) ⇝ 23/2 | note:C5 gain:0.2582683432365121 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:Eb4 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:G4 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:Ab4 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:C5 gain:0.3123879532511288 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:Eb4 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:G4 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:Ab4 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:C5 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:Eb4 gain:0.2582683432365145 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:G4 gain:0.2582683432365145 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:Ab4 gain:0.2582683432365145 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:C5 gain:0.2582683432365145 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:Eb4 gain:0.18173165676348893 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:G4 gain:0.18173165676348893 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:Ab4 gain:0.18173165676348893 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:C5 gain:0.18173165676348893 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:Eb4 gain:0.12761204674887164 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:G4 gain:0.12761204674887164 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:Ab4 gain:0.12761204674887164 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:C5 gain:0.12761204674887164 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:Eb4 gain:0.1276120467488698 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:G4 gain:0.1276120467488698 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:Ab4 gain:0.1276120467488698 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:C5 gain:0.1276120467488698 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:Eb4 gain:0.1817316567634845 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:G4 gain:0.1817316567634845 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:Ab4 gain:0.1817316567634845 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:C5 gain:0.1817316567634845 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:Eb4 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:G4 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:Ab4 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:C5 gain:0.25826834323651005 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:Eb4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:G4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:Ab4 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:C5 gain:0.31238795325112795 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:Eb4 gain:0.3123879532511306 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:G4 gain:0.3123879532511306 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:Ab4 gain:0.3123879532511306 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:C5 gain:0.3123879532511306 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:Eb4 gain:0.258268343236506 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:G4 gain:0.258268343236506 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:Ab4 gain:0.258268343236506 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:C5 gain:0.258268343236506 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:Eb4 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:G4 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:Ab4 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:C5 gain:0.18173165676349093 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:Eb4 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:G4 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:Ab4 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:C5 gain:0.12761204674887247 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:Eb4 gain:0.12761204674886897 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:G4 gain:0.12761204674886897 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:Ab4 gain:0.12761204674886897 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:C5 gain:0.12761204674886897 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 45/4 ⇜ (735/64 → 23/2) | note:Eb4 gain:0.181731656763493 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 45/4 ⇜ (735/64 → 23/2) | note:G4 gain:0.181731656763493 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 45/4 ⇜ (735/64 → 23/2) | note:Ab4 gain:0.181731656763493 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 45/4 ⇜ (735/64 → 23/2) | note:C5 gain:0.181731656763493 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (23/2 → 737/64) ⇝ 93/8 | note:C5 gain:0.5165366864730162 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (23/2 → 737/64) ⇝ 93/8 | note:G5 gain:0.5165366864730162 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (23/2 → 737/64) ⇝ 93/8 | note:Bb5 gain:0.5165366864730162 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ (23/2 → 737/64) ⇝ 47/4 | note:F2 gain:0.5165366864730162 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 93/8 | note:C5 gain:0.6247759065022542 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 93/8 | note:G5 gain:0.6247759065022542 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 93/8 | note:Bb5 gain:0.6247759065022542 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 47/4 | note:F2 gain:0.6247759065022542 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 93/8 | note:C5 gain:0.6247759065022629 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 93/8 | note:G5 gain:0.6247759065022629 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 93/8 | note:Bb5 gain:0.6247759065022629 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 47/4 | note:F2 gain:0.6247759065022629 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ (323/28 → 739/64) ⇝ 165/14 | note:75 gain:0.06247759065022629 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (323/28 → 739/64) ⇝ 165/14 | note:79 gain:0.06247759065022629 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (323/28 → 739/64) ⇝ 165/14 | note:80 gain:0.06247759065022629 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (323/28 → 739/64) ⇝ 165/14 | note:84 gain:0.06247759065022629 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 93/8 | note:C5 gain:0.516536686473016 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 93/8 | note:G5 gain:0.516536686473016 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 93/8 | note:Bb5 gain:0.516536686473016 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 47/4 | note:F2 gain:0.516536686473016 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:75 gain:0.0516536686473016 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:79 gain:0.0516536686473016 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:80 gain:0.0516536686473016 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:84 gain:0.0516536686473016 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 93/8 | note:C5 gain:0.36346331352698585 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 93/8 | note:G5 gain:0.36346331352698585 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 93/8 | note:Bb5 gain:0.36346331352698585 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 47/4 | note:F2 gain:0.36346331352698585 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:75 gain:0.03634633135269859 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:79 gain:0.03634633135269859 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:80 gain:0.03634633135269859 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:84 gain:0.03634633135269859 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 93/8 | note:C5 gain:0.2552240934977466 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 93/8 | note:G5 gain:0.2552240934977466 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 93/8 | note:Bb5 gain:0.2552240934977466 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 47/4 | note:F2 gain:0.2552240934977466 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:75 gain:0.025522409349774663 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:79 gain:0.025522409349774663 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:80 gain:0.025522409349774663 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:84 gain:0.025522409349774663 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 93/8 | note:C5 gain:0.25522409349774505 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 93/8 | note:G5 gain:0.25522409349774505 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 93/8 | note:Bb5 gain:0.25522409349774505 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 47/4 | note:F2 gain:0.25522409349774505 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:75 gain:0.025522409349774507 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:79 gain:0.025522409349774507 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:80 gain:0.025522409349774507 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:84 gain:0.025522409349774507 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (743/64 → 93/8) | note:C5 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (743/64 → 93/8) | note:G5 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 23/2 ⇜ (743/64 → 93/8) | note:Bb5 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (743/64 → 93/8) ⇝ 47/4 | note:F2 gain:0.363463313526982 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:75 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:79 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:80 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:84 gain:0.036346331352698207 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (93/8 → 745/64) ⇝ 47/4 | note:F2 gain:0.5165366864730122 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:75 gain:0.051653668647301226 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:79 gain:0.051653668647301226 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:80 gain:0.051653668647301226 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:84 gain:0.051653668647301226 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (745/64 → 373/32) ⇝ 47/4 | note:F2 gain:0.6247759065022527 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:75 gain:0.06247759065022527 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:79 gain:0.06247759065022527 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:80 gain:0.06247759065022527 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:84 gain:0.06247759065022527 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (373/32 → 747/64) ⇝ 47/4 | note:F2 gain:0.6247759065022559 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:75 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:79 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:80 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:84 gain:0.062477590650225595 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (747/64 → 187/16) ⇝ 47/4 | note:F2 gain:0.51653668647302 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:75 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:79 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:80 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:84 gain:0.051653668647302 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (187/16 → 749/64) ⇝ 47/4 | note:F2 gain:0.3634633135269898 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:75 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:79 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:80 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:84 gain:0.036346331352698984 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (749/64 → 375/32) ⇝ 47/4 | note:F2 gain:0.2552240934977483 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:75 gain:0.02552240934977483 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:79 gain:0.02552240934977483 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:80 gain:0.02552240934977483 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:84 gain:0.02552240934977483 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (375/32 → 751/64) ⇝ 47/4 | note:F2 gain:0.2552240934977434 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:75 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:79 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:80 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:84 gain:0.02552240934977434 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (751/64 → 47/4) | note:F2 gain:0.363463313526978 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:75 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:79 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:80 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:84 gain:0.036346331352697804 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:75 gain:0.051653668647300824 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:79 gain:0.051653668647300824 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:80 gain:0.051653668647300824 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:84 gain:0.051653668647300824 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (47/4 → 753/64) ⇝ 95/8 | note:C5 gain:0.5165366864730082 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (47/4 → 753/64) ⇝ 95/8 | note:G5 gain:0.5165366864730082 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (47/4 → 753/64) ⇝ 95/8 | note:Bb5 gain:0.5165366864730082 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ (47/4 → 753/64) ⇝ 12/1 | note:Eb4 gain:0.2582683432365041 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (47/4 → 753/64) ⇝ 12/1 | note:G4 gain:0.2582683432365041 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (47/4 → 753/64) ⇝ 12/1 | note:Ab4 gain:0.2582683432365041 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (47/4 → 753/64) ⇝ 12/1 | note:C5 gain:0.2582683432365041 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:75 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:79 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:80 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:84 gain:0.062477590650225956 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 95/8 | note:C5 gain:0.6247759065022596 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 95/8 | note:G5 gain:0.6247759065022596 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 95/8 | note:Bb5 gain:0.6247759065022596 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:Eb4 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:G4 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:Ab4 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:C5 gain:0.3123879532511298 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 323/28 ⇜ (377/32 → 165/14) | note:75 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 323/28 ⇜ (377/32 → 165/14) | note:79 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 323/28 ⇜ (377/32 → 165/14) | note:80 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 323/28 ⇜ (377/32 → 165/14) | note:84 gain:0.06247759065022575 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 95/8 | note:C5 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 95/8 | note:G5 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 95/8 | note:Bb5 gain:0.6247759065022574 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:Eb4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:G4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:Ab4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:C5 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 95/8 | note:C5 gain:0.516536686473024 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 95/8 | note:G5 gain:0.516536686473024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 95/8 | note:Bb5 gain:0.516536686473024 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:Eb4 gain:0.258268343236512 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:G4 gain:0.258268343236512 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:Ab4 gain:0.258268343236512 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:C5 gain:0.258268343236512 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 95/8 | note:C5 gain:0.3634633135269938 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 95/8 | note:G5 gain:0.3634633135269938 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 95/8 | note:Bb5 gain:0.3634633135269938 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:Eb4 gain:0.1817316567634969 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:G4 gain:0.1817316567634969 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:Ab4 gain:0.1817316567634969 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:C5 gain:0.1817316567634969 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 95/8 | note:C5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 95/8 | note:G5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 95/8 | note:Bb5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:Eb4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:G4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:Ab4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:C5 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 95/8 | note:C5 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 95/8 | note:G5 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 95/8 | note:Bb5 gain:0.2552240934977417 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:Eb4 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:G4 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:Ab4 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:C5 gain:0.12761204674887086 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (759/64 → 95/8) | note:C5 gain:0.36346331352697403 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (759/64 → 95/8) | note:G5 gain:0.36346331352697403 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 47/4 ⇜ (759/64 → 95/8) | note:Bb5 gain:0.36346331352697403 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:Eb4 gain:0.18173165676348702 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:G4 gain:0.18173165676348702 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:Ab4 gain:0.18173165676348702 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:C5 gain:0.18173165676348702 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:Eb4 gain:0.2582683432365021 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:G4 gain:0.2582683432365021 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:Ab4 gain:0.2582683432365021 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:C5 gain:0.2582683432365021 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:Eb4 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:G4 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:Ab4 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:C5 gain:0.312387953251129 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:Eb4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:G4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:Ab4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:C5 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:Eb4 gain:0.258268343236514 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:G4 gain:0.258268343236514 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:Ab4 gain:0.258268343236514 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:C5 gain:0.258268343236514 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:Eb4 gain:0.1817316567634884 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:G4 gain:0.1817316567634884 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:Ab4 gain:0.1817316567634884 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:C5 gain:0.1817316567634884 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:Eb4 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:G4 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:Ab4 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:C5 gain:0.12761204674887142 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:Eb4 gain:0.12761204674887003 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:G4 gain:0.12761204674887003 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:Ab4 gain:0.12761204674887003 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:C5 gain:0.12761204674887003 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 47/4 ⇜ (767/64 → 12/1) | note:Eb4 gain:0.18173165676348504 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 47/4 ⇜ (767/64 → 12/1) | note:G4 gain:0.18173165676348504 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 47/4 ⇜ (767/64 → 12/1) | note:Ab4 gain:0.18173165676348504 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 47/4 ⇜ (767/64 → 12/1) | note:C5 gain:0.18173165676348504 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (12/1 → 769/64) ⇝ 49/4 | note:G2 gain:0.5165366864730213 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 12/1 ⇜ (769/64 → 385/32) ⇝ 49/4 | note:G2 gain:0.6247759065022565 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 12/1 ⇜ (385/32 → 771/64) ⇝ 49/4 | note:G2 gain:0.6247759065022609 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (337/28 → 771/64) ⇝ 86/7 | note:75 gain:0.062477590650226095 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (337/28 → 771/64) ⇝ 86/7 | note:79 gain:0.062477590650226095 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (337/28 → 771/64) ⇝ 86/7 | note:80 gain:0.062477590650226095 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (337/28 → 771/64) ⇝ 86/7 | note:84 gain:0.062477590650226095 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 12/1 ⇜ (771/64 → 193/16) ⇝ 49/4 | note:G2 gain:0.516536686473032 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:75 gain:0.0516536686473032 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:79 gain:0.0516536686473032 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:80 gain:0.0516536686473032 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:84 gain:0.0516536686473032 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 12/1 ⇜ (193/16 → 773/64) ⇝ 49/4 | note:G2 gain:0.36346331352698075 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:75 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:79 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:80 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:84 gain:0.036346331352698075 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 12/1 ⇜ (773/64 → 387/32) ⇝ 49/4 | note:G2 gain:0.2552240934977445 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:75 gain:0.025522409349774452 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:79 gain:0.025522409349774452 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:80 gain:0.025522409349774452 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:84 gain:0.025522409349774452 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 12/1 ⇜ (387/32 → 775/64) ⇝ 49/4 | note:G2 gain:0.2552240934977384 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:75 gain:0.02552240934977384 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:79 gain:0.02552240934977384 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:80 gain:0.02552240934977384 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:84 gain:0.02552240934977384 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 12/1 ⇜ (775/64 → 97/8) ⇝ 49/4 | note:G2 gain:0.36346331352698713 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:75 gain:0.03634633135269871 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:79 gain:0.03634633135269871 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:80 gain:0.03634633135269871 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:84 gain:0.03634633135269871 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 12/1 ⇜ (97/8 → 777/64) ⇝ 49/4 | note:G2 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:75 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:79 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:80 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:84 gain:0.05165366864730173 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (97/8 → 777/64) ⇝ 49/4 | note:G4 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (97/8 → 777/64) ⇝ 49/4 | note:D5 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (97/8 → 777/64) ⇝ 49/4 | note:F5 gain:0.5165366864730173 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 12/1 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:G2 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:75 gain:0.06247759065022547 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:79 gain:0.06247759065022547 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:80 gain:0.06247759065022547 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:84 gain:0.06247759065022547 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 97/8 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:G4 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 97/8 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:D5 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 97/8 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:F5 gain:0.6247759065022547 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 12/1 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:G2 gain:0.6247759065022624 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:75 gain:0.06247759065022625 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:79 gain:0.06247759065022625 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:80 gain:0.06247759065022625 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:84 gain:0.06247759065022625 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 97/8 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:G4 gain:0.6247759065022624 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 97/8 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:D5 gain:0.6247759065022624 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 97/8 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:F5 gain:0.6247759065022624 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 12/1 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:G2 gain:0.516536686473015 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:75 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:79 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:80 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:84 gain:0.051653668647301504 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 97/8 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:G4 gain:0.516536686473015 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 97/8 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:D5 gain:0.516536686473015 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 97/8 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:F5 gain:0.516536686473015 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 12/1 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:G2 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:75 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:79 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:80 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:84 gain:0.03634633135269848 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 97/8 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:G4 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 97/8 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:D5 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 97/8 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:F5 gain:0.36346331352698474 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 12/1 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:G2 gain:0.2552240934977461 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:75 gain:0.02552240934977461 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:79 gain:0.02552240934977461 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:80 gain:0.02552240934977461 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:84 gain:0.02552240934977461 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 97/8 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:G4 gain:0.2552240934977461 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 97/8 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:D5 gain:0.2552240934977461 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 97/8 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:F5 gain:0.2552240934977461 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 12/1 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:G2 gain:0.2552240934977368 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:75 gain:0.025522409349773678 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:79 gain:0.025522409349773678 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:80 gain:0.025522409349773678 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:84 gain:0.025522409349773678 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 97/8 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:G4 gain:0.2552240934977368 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 97/8 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:D5 gain:0.2552240934977368 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 97/8 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:F5 gain:0.2552240934977368 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 12/1 ⇜ (783/64 → 49/4) | note:G2 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:75 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:79 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:80 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:84 gain:0.03634633135269832 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 97/8 ⇜ (783/64 → 49/4) | note:G4 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 97/8 ⇜ (783/64 → 49/4) | note:D5 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 97/8 ⇜ (783/64 → 49/4) | note:F5 gain:0.36346331352698313 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:75 gain:0.05165366864730134 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:79 gain:0.05165366864730134 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:80 gain:0.05165366864730134 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:84 gain:0.05165366864730134 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:75 gain:0.062477590650225304 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:79 gain:0.062477590650225304 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:80 gain:0.062477590650225304 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:84 gain:0.062477590650225304 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 337/28 ⇜ (393/32 → 86/7) | note:75 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 337/28 ⇜ (393/32 → 86/7) | note:79 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 337/28 ⇜ (393/32 → 86/7) | note:80 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 337/28 ⇜ (393/32 → 86/7) | note:84 gain:0.06247759065022554 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (25/2 → 801/64) ⇝ 101/8 | note:D5 gain:0.5165366864730053 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (25/2 → 801/64) ⇝ 101/8 | note:A5 gain:0.5165366864730053 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (25/2 → 801/64) ⇝ 101/8 | note:C6 gain:0.5165366864730053 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (25/2 → 801/64) ⇝ 51/4 | note:B3 gain:0.25826834323650266 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (25/2 → 801/64) ⇝ 51/4 | note:E4 gain:0.25826834323650266 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (25/2 → 801/64) ⇝ 51/4 | note:F4 gain:0.25826834323650266 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (25/2 → 801/64) ⇝ 51/4 | note:A4 gain:0.25826834323650266 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (25/2 → 801/64) ⇝ 51/4 | note:G2 gain:0.5165366864730053 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 101/8 | note:D5 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 101/8 | note:A5 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 101/8 | note:C6 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:B3 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:E4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:F4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:A4 gain:0.3123879532511293 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:G2 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 101/8 | note:D5 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 101/8 | note:A5 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 101/8 | note:C6 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:B3 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:E4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:F4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:A4 gain:0.31238795325112934 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:G2 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 101/8 | note:D5 gain:0.5165366864730269 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 101/8 | note:A5 gain:0.5165366864730269 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 101/8 | note:C6 gain:0.5165366864730269 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:B3 gain:0.25826834323651343 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:E4 gain:0.25826834323651343 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:F4 gain:0.25826834323651343 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:A4 gain:0.25826834323651343 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:G2 gain:0.5165366864730269 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 101/8 | note:D5 gain:0.3634633135269967 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 101/8 | note:A5 gain:0.3634633135269967 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 101/8 | note:C6 gain:0.3634633135269967 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:B3 gain:0.18173165676349834 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:E4 gain:0.18173165676349834 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:F4 gain:0.18173165676349834 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:A4 gain:0.18173165676349834 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:G2 gain:0.3634633135269967 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 101/8 | note:D5 gain:0.2552240934977424 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 101/8 | note:A5 gain:0.2552240934977424 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 101/8 | note:C6 gain:0.2552240934977424 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:B3 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:E4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:F4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:A4 gain:0.1276120467488712 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:G2 gain:0.2552240934977424 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 101/8 | note:D5 gain:0.2552240934977405 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 101/8 | note:A5 gain:0.2552240934977405 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 101/8 | note:C6 gain:0.2552240934977405 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:B3 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:E4 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:F4 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:A4 gain:0.12761204674887025 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:G2 gain:0.2552240934977405 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) | note:D5 gain:0.36346331352697114 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) | note:A5 gain:0.36346331352697114 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) | note:C6 gain:0.36346331352697114 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:B3 gain:0.18173165676348557 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:E4 gain:0.18173165676348557 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:F4 gain:0.18173165676348557 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:A4 gain:0.18173165676348557 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:G2 gain:0.36346331352697114 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:B3 gain:0.25826834323651116 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:E4 gain:0.25826834323651116 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:F4 gain:0.25826834323651116 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:A4 gain:0.25826834323651116 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:G2 gain:0.5165366864730223 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:B3 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:E4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:F4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:A4 gain:0.3123879532511284 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:G2 gain:0.6247759065022568 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:B3 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:E4 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:F4 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:A4 gain:0.31238795325113017 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:G2 gain:0.6247759065022603 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:B3 gain:0.25826834323651543 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:E4 gain:0.25826834323651543 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:F4 gain:0.25826834323651543 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:A4 gain:0.25826834323651543 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:G2 gain:0.5165366864730309 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:B3 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:E4 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:F4 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:A4 gain:0.18173165676348985 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:G2 gain:0.3634633135269797 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:B3 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:E4 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:F4 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:A4 gain:0.12761204674887203 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:G2 gain:0.25522409349774405 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:B3 gain:0.12761204674886945 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:E4 gain:0.12761204674886945 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:F4 gain:0.12761204674886945 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:A4 gain:0.12761204674886945 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:G2 gain:0.2552240934977389 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 25/2 ⇜ (815/64 → 51/4) | note:B3 gain:0.1817316567634836 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 25/2 ⇜ (815/64 → 51/4) | note:E4 gain:0.1817316567634836 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 25/2 ⇜ (815/64 → 51/4) | note:F4 gain:0.1817316567634836 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (815/64 → 51/4) | note:A4 gain:0.1817316567634836 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (815/64 → 51/4) | note:G2 gain:0.3634633135269672 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (51/4 → 817/64) ⇝ 103/8 | note:G4 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (51/4 → 817/64) ⇝ 103/8 | note:D5 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (51/4 → 817/64) ⇝ 103/8 | note:F5 gain:0.5165366864730183 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 51/4 ⇜ (817/64 → 409/32) ⇝ 103/8 | note:G4 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 51/4 ⇜ (817/64 → 409/32) ⇝ 103/8 | note:D5 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 51/4 ⇜ (817/64 → 409/32) ⇝ 103/8 | note:F5 gain:0.6247759065022551 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 51/4 ⇜ (409/32 → 819/64) ⇝ 103/8 | note:G4 gain:0.6247759065022619 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 51/4 ⇜ (409/32 → 819/64) ⇝ 103/8 | note:D5 gain:0.6247759065022619 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 51/4 ⇜ (409/32 → 819/64) ⇝ 103/8 | note:F5 gain:0.6247759065022619 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (179/14 → 819/64) ⇝ 365/28 | note:71 gain:0.06247759065022619 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (179/14 → 819/64) ⇝ 365/28 | note:76 gain:0.06247759065022619 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (179/14 → 819/64) ⇝ 365/28 | note:77 gain:0.06247759065022619 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (179/14 → 819/64) ⇝ 365/28 | note:81 gain:0.06247759065022619 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 51/4 ⇜ (819/64 → 205/16) ⇝ 103/8 | note:G4 gain:0.5165366864730139 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 51/4 ⇜ (819/64 → 205/16) ⇝ 103/8 | note:D5 gain:0.5165366864730139 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 51/4 ⇜ (819/64 → 205/16) ⇝ 103/8 | note:F5 gain:0.5165366864730139 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:71 gain:0.05165366864730139 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:76 gain:0.05165366864730139 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:77 gain:0.05165366864730139 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:81 gain:0.05165366864730139 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 51/4 ⇜ (205/16 → 821/64) ⇝ 103/8 | note:G4 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 51/4 ⇜ (205/16 → 821/64) ⇝ 103/8 | note:D5 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 51/4 ⇜ (205/16 → 821/64) ⇝ 103/8 | note:F5 gain:0.36346331352698363 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:71 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:76 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:77 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:81 gain:0.036346331352698366 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 51/4 ⇜ (821/64 → 411/32) ⇝ 103/8 | note:G4 gain:0.25522409349774566 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 51/4 ⇜ (821/64 → 411/32) ⇝ 103/8 | note:D5 gain:0.25522409349774566 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 51/4 ⇜ (821/64 → 411/32) ⇝ 103/8 | note:F5 gain:0.25522409349774566 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:71 gain:0.025522409349774566 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:76 gain:0.025522409349774566 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:77 gain:0.025522409349774566 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:81 gain:0.025522409349774566 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 51/4 ⇜ (411/32 → 823/64) ⇝ 103/8 | note:G4 gain:0.2552240934977372 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 51/4 ⇜ (411/32 → 823/64) ⇝ 103/8 | note:D5 gain:0.2552240934977372 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 51/4 ⇜ (411/32 → 823/64) ⇝ 103/8 | note:F5 gain:0.2552240934977372 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:71 gain:0.025522409349773723 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:76 gain:0.025522409349773723 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:77 gain:0.025522409349773723 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:81 gain:0.025522409349773723 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 51/4 ⇜ (823/64 → 103/8) | note:G4 gain:0.36346331352698424 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 51/4 ⇜ (823/64 → 103/8) | note:D5 gain:0.36346331352698424 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 51/4 ⇜ (823/64 → 103/8) | note:F5 gain:0.36346331352698424 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:71 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:76 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:77 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:81 gain:0.03634633135269843 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:71 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:76 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:77 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:81 gain:0.05165366864730145 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:71 gain:0.06247759065022536 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:76 gain:0.06247759065022536 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:77 gain:0.06247759065022536 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:81 gain:0.06247759065022536 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:71 gain:0.06247759065022637 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:76 gain:0.06247759065022637 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:77 gain:0.06247759065022637 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:81 gain:0.06247759065022637 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:71 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:76 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:77 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:81 gain:0.05165366864730178 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:71 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:76 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:77 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:81 gain:0.03634633135269876 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:71 gain:0.02552240934977474 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:76 gain:0.02552240934977474 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:77 gain:0.02552240934977474 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:81 gain:0.02552240934977474 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:71 gain:0.025522409349774428 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:76 gain:0.025522409349774428 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:77 gain:0.025522409349774428 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:81 gain:0.025522409349774428 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:71 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:76 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:77 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:81 gain:0.036346331352698026 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:71 gain:0.05165366864730103 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:76 gain:0.05165366864730103 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:77 gain:0.05165366864730103 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:81 gain:0.05165366864730103 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (13/1 → 833/64) ⇝ 53/4 | note:G2 gain:0.5165366864730103 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:71 gain:0.06247759065022518 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:76 gain:0.06247759065022518 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:77 gain:0.06247759065022518 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:81 gain:0.06247759065022518 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 13/1 ⇜ (833/64 → 417/32) ⇝ 53/4 | note:G2 gain:0.6247759065022518 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 179/14 ⇜ (417/32 → 365/28) | note:71 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 179/14 ⇜ (417/32 → 365/28) | note:76 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 179/14 ⇜ (417/32 → 365/28) | note:77 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 179/14 ⇜ (417/32 → 365/28) | note:81 gain:0.06247759065022566 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 13/1 ⇜ (417/32 → 835/64) ⇝ 53/4 | note:G2 gain:0.6247759065022566 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 13/1 ⇜ (835/64 → 209/16) ⇝ 53/4 | note:G2 gain:0.5165366864730218 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 13/1 ⇜ (209/16 → 837/64) ⇝ 53/4 | note:G2 gain:0.3634633135269916 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 13/1 ⇜ (837/64 → 419/32) ⇝ 53/4 | note:G2 gain:0.2552240934977403 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 13/1 ⇜ (419/32 → 839/64) ⇝ 53/4 | note:G2 gain:0.25522409349774267 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 13/1 ⇜ (839/64 → 105/8) ⇝ 53/4 | note:G2 gain:0.36346331352697625 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 13/1 ⇜ (105/8 → 841/64) ⇝ 53/4 | note:G2 gain:0.5165366864730064 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (105/8 → 841/64) ⇝ 53/4 | note:G4 gain:0.5165366864730064 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (105/8 → 841/64) ⇝ 53/4 | note:D5 gain:0.5165366864730064 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (105/8 → 841/64) ⇝ 53/4 | note:F5 gain:0.5165366864730064 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:G2 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 105/8 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:G4 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 105/8 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:D5 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 105/8 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:F5 gain:0.6247759065022589 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:G2 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 105/8 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:G4 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 105/8 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:D5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 105/8 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:F5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:G2 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 105/8 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:G4 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 105/8 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:D5 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 105/8 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:F5 gain:0.5165366864730258 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:G2 gain:0.3634633135269956 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 105/8 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:G4 gain:0.3634633135269956 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 105/8 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:D5 gain:0.3634633135269956 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 105/8 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:F5 gain:0.3634633135269956 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:G2 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 105/8 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:G4 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 105/8 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:D5 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 105/8 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:F5 gain:0.25522409349774194 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:G2 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 105/8 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:G4 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 105/8 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:D5 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 105/8 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:F5 gain:0.25522409349774094 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (847/64 → 53/4) | note:G2 gain:0.36346331352697225 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 105/8 ⇜ (847/64 → 53/4) | note:G4 gain:0.36346331352697225 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 105/8 ⇜ (847/64 → 53/4) | note:D5 gain:0.36346331352697225 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 105/8 ⇜ (847/64 → 53/4) | note:F5 gain:0.36346331352697225 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (53/4 → 849/64) ⇝ 27/2 | note:B3 gain:0.25826834323651177 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (53/4 → 849/64) ⇝ 27/2 | note:E4 gain:0.25826834323651177 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (53/4 → 849/64) ⇝ 27/2 | note:F4 gain:0.25826834323651177 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (53/4 → 849/64) ⇝ 27/2 | note:A4 gain:0.25826834323651177 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:B3 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:E4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:F4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:A4 gain:0.31238795325112867 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:B3 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:E4 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:F4 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:A4 gain:0.31238795325113 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:B3 gain:0.2582683432365149 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:E4 gain:0.2582683432365149 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:F4 gain:0.2582683432365149 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:A4 gain:0.2582683432365149 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:B3 gain:0.1817316567634893 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:E4 gain:0.1817316567634893 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:F4 gain:0.1817316567634893 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:A4 gain:0.1817316567634893 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:B3 gain:0.1276120467488718 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:E4 gain:0.1276120467488718 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:F4 gain:0.1276120467488718 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:A4 gain:0.1276120467488718 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:B3 gain:0.12761204674886967 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:E4 gain:0.12761204674886967 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:F4 gain:0.12761204674886967 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:A4 gain:0.12761204674886967 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:B3 gain:0.18173165676348413 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:E4 gain:0.18173165676348413 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:F4 gain:0.18173165676348413 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:A4 gain:0.18173165676348413 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:B3 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:E4 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:F4 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:A4 gain:0.2582683432365097 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:B3 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:E4 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:F4 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:A4 gain:0.3123879532511278 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:B3 gain:0.3123879532511308 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:E4 gain:0.3123879532511308 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:F4 gain:0.3123879532511308 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:A4 gain:0.3123879532511308 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:B3 gain:0.2582683432365064 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:E4 gain:0.2582683432365064 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:F4 gain:0.2582683432365064 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:A4 gain:0.2582683432365064 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:B3 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:E4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:F4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:A4 gain:0.1817316567634913 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:B3 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:E4 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:F4 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:A4 gain:0.1276120467488726 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:B3 gain:0.12761204674886883 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:E4 gain:0.12761204674886883 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:F4 gain:0.12761204674886883 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:A4 gain:0.12761204674886883 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 53/4 ⇜ (863/64 → 27/2) | note:B3 gain:0.18173165676349265 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 53/4 ⇜ (863/64 → 27/2) | note:E4 gain:0.18173165676349265 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 53/4 ⇜ (863/64 → 27/2) | note:F4 gain:0.18173165676349265 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 53/4 ⇜ (863/64 → 27/2) | note:A4 gain:0.18173165676349265 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (27/2 → 865/64) ⇝ 109/8 | note:D5 gain:0.5165366864730155 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (27/2 → 865/64) ⇝ 109/8 | note:A5 gain:0.5165366864730155 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (27/2 → 865/64) ⇝ 109/8 | note:C6 gain:0.5165366864730155 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (27/2 → 865/64) ⇝ 55/4 | note:G2 gain:0.5165366864730155 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 109/8 | note:D5 gain:0.6247759065022539 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 109/8 | note:A5 gain:0.6247759065022539 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 109/8 | note:C6 gain:0.6247759065022539 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 55/4 | note:G2 gain:0.6247759065022539 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 109/8 | note:D5 gain:0.6247759065022631 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 109/8 | note:A5 gain:0.6247759065022631 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 109/8 | note:C6 gain:0.6247759065022631 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 55/4 | note:G2 gain:0.6247759065022631 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ (379/28 → 867/64) ⇝ 193/14 | note:71 gain:0.06247759065022632 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (379/28 → 867/64) ⇝ 193/14 | note:76 gain:0.06247759065022632 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (379/28 → 867/64) ⇝ 193/14 | note:77 gain:0.06247759065022632 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (379/28 → 867/64) ⇝ 193/14 | note:81 gain:0.06247759065022632 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 109/8 | note:D5 gain:0.5165366864730168 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 109/8 | note:A5 gain:0.5165366864730168 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 109/8 | note:C6 gain:0.5165366864730168 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 55/4 | note:G2 gain:0.5165366864730168 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:71 gain:0.05165366864730168 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:76 gain:0.05165366864730168 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:77 gain:0.05165366864730168 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:81 gain:0.05165366864730168 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 109/8 | note:D5 gain:0.3634633135269866 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 109/8 | note:A5 gain:0.3634633135269866 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 109/8 | note:C6 gain:0.3634633135269866 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 55/4 | note:G2 gain:0.3634633135269866 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:71 gain:0.03634633135269866 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:76 gain:0.03634633135269866 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:77 gain:0.03634633135269866 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:81 gain:0.03634633135269866 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 109/8 | note:D5 gain:0.25522409349774694 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 109/8 | note:A5 gain:0.25522409349774694 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 109/8 | note:C6 gain:0.25522409349774694 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 55/4 | note:G2 gain:0.25522409349774694 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:71 gain:0.025522409349774695 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:76 gain:0.025522409349774695 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:77 gain:0.025522409349774695 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:81 gain:0.025522409349774695 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 109/8 | note:D5 gain:0.2552240934977447 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 109/8 | note:A5 gain:0.2552240934977447 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 109/8 | note:C6 gain:0.2552240934977447 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 55/4 | note:G2 gain:0.2552240934977447 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:71 gain:0.025522409349774473 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:76 gain:0.025522409349774473 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:77 gain:0.025522409349774473 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:81 gain:0.025522409349774473 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (871/64 → 109/8) | note:D5 gain:0.36346331352698136 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 27/2 ⇜ (871/64 → 109/8) | note:A5 gain:0.36346331352698136 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (871/64 → 109/8) | note:C6 gain:0.36346331352698136 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 27/2 ⇜ (871/64 → 109/8) ⇝ 55/4 | note:G2 gain:0.36346331352698136 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:71 gain:0.03634633135269814 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:76 gain:0.03634633135269814 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:77 gain:0.03634633135269814 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:81 gain:0.03634633135269814 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (109/8 → 873/64) ⇝ 55/4 | note:G2 gain:0.5165366864730114 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:71 gain:0.05165366864730114 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:76 gain:0.05165366864730114 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:77 gain:0.05165366864730114 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:81 gain:0.05165366864730114 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (873/64 → 437/32) ⇝ 55/4 | note:G2 gain:0.6247759065022523 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:71 gain:0.062477590650225234 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:76 gain:0.062477590650225234 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:77 gain:0.062477590650225234 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:81 gain:0.062477590650225234 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (437/32 → 875/64) ⇝ 55/4 | note:G2 gain:0.6247759065022561 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:71 gain:0.062477590650225616 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:76 gain:0.062477590650225616 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:77 gain:0.062477590650225616 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:81 gain:0.062477590650225616 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (875/64 → 219/16) ⇝ 55/4 | note:G2 gain:0.5165366864730206 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:71 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:76 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:77 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:81 gain:0.051653668647302066 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (219/16 → 877/64) ⇝ 55/4 | note:G2 gain:0.3634633135269906 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:71 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:76 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:77 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:81 gain:0.03634633135269906 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (877/64 → 439/32) ⇝ 55/4 | note:G2 gain:0.2552240934977485 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:71 gain:0.02552240934977485 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:76 gain:0.02552240934977485 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:77 gain:0.02552240934977485 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:81 gain:0.02552240934977485 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (439/32 → 879/64) ⇝ 55/4 | note:G2 gain:0.2552240934977431 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:71 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:76 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:77 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:81 gain:0.025522409349774313 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 27/2 ⇜ (879/64 → 55/4) | note:G2 gain:0.36346331352697736 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:71 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:76 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:77 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:81 gain:0.036346331352697735 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:71 gain:0.051653668647300754 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:76 gain:0.051653668647300754 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:77 gain:0.051653668647300754 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:81 gain:0.051653668647300754 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (55/4 → 881/64) ⇝ 111/8 | note:D5 gain:0.5165366864730075 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (55/4 → 881/64) ⇝ 111/8 | note:A5 gain:0.5165366864730075 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (55/4 → 881/64) ⇝ 111/8 | note:C6 gain:0.5165366864730075 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (55/4 → 881/64) ⇝ 14/1 | note:B3 gain:0.2582683432365038 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (55/4 → 881/64) ⇝ 14/1 | note:E4 gain:0.2582683432365038 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (55/4 → 881/64) ⇝ 14/1 | note:F4 gain:0.2582683432365038 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (55/4 → 881/64) ⇝ 14/1 | note:A4 gain:0.2582683432365038 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:71 gain:0.06247759065022595 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:76 gain:0.06247759065022595 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:77 gain:0.06247759065022595 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:81 gain:0.06247759065022595 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 111/8 | note:D5 gain:0.6247759065022594 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 111/8 | note:A5 gain:0.6247759065022594 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 111/8 | note:C6 gain:0.6247759065022594 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:B3 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:E4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:F4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:A4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 379/28 ⇜ (441/32 → 193/14) | note:71 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 379/28 ⇜ (441/32 → 193/14) | note:76 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 379/28 ⇜ (441/32 → 193/14) | note:77 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 379/28 ⇜ (441/32 → 193/14) | note:81 gain:0.06247759065022578 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 111/8 | note:D5 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 111/8 | note:A5 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 111/8 | note:C6 gain:0.6247759065022578 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:B3 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:E4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:F4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:A4 gain:0.3123879532511289 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 111/8 | note:D5 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 111/8 | note:A5 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 111/8 | note:C6 gain:0.5165366864730248 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:B3 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:E4 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:F4 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:A4 gain:0.2582683432365124 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 111/8 | note:D5 gain:0.3634633135269945 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 111/8 | note:A5 gain:0.3634633135269945 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 111/8 | note:C6 gain:0.3634633135269945 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:B3 gain:0.18173165676349726 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:E4 gain:0.18173165676349726 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:F4 gain:0.18173165676349726 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:A4 gain:0.18173165676349726 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 111/8 | note:D5 gain:0.2552240934977415 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 111/8 | note:A5 gain:0.2552240934977415 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 111/8 | note:C6 gain:0.2552240934977415 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:B3 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:E4 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:F4 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:A4 gain:0.12761204674887075 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 111/8 | note:D5 gain:0.2552240934977414 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 111/8 | note:A5 gain:0.2552240934977414 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 111/8 | note:C6 gain:0.2552240934977414 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:B3 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:E4 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:F4 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:A4 gain:0.1276120467488707 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (887/64 → 111/8) | note:D5 gain:0.36346331352697336 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 55/4 ⇜ (887/64 → 111/8) | note:A5 gain:0.36346331352697336 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 55/4 ⇜ (887/64 → 111/8) | note:C6 gain:0.36346331352697336 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:B3 gain:0.18173165676348668 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:E4 gain:0.18173165676348668 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:F4 gain:0.18173165676348668 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:A4 gain:0.18173165676348668 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:B3 gain:0.2582683432365018 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:E4 gain:0.2582683432365018 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:F4 gain:0.2582683432365018 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:A4 gain:0.2582683432365018 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:B3 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:E4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:F4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:A4 gain:0.31238795325112884 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:B3 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:E4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:F4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:A4 gain:0.3123879532511297 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:B3 gain:0.2582683432365143 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:E4 gain:0.2582683432365143 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:F4 gain:0.2582683432365143 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:A4 gain:0.2582683432365143 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:B3 gain:0.18173165676348876 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:E4 gain:0.18173165676348876 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:F4 gain:0.18173165676348876 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:A4 gain:0.18173165676348876 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:B3 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:E4 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:F4 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:A4 gain:0.12761204674887158 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:B3 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:E4 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:F4 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:A4 gain:0.1276120467488699 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 55/4 ⇜ (895/64 → 14/1) | note:B3 gain:0.18173165676348468 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 55/4 ⇜ (895/64 → 14/1) | note:E4 gain:0.18173165676348468 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 55/4 ⇜ (895/64 → 14/1) | note:F4 gain:0.18173165676348468 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 55/4 ⇜ (895/64 → 14/1) | note:A4 gain:0.18173165676348468 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (14/1 → 897/64) ⇝ 57/4 | note:F#2 gain:0.5165366864730204 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 14/1 ⇜ (897/64 → 449/32) ⇝ 57/4 | note:F#2 gain:0.624775906502256 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 14/1 ⇜ (449/32 → 899/64) ⇝ 57/4 | note:F#2 gain:0.624775906502261 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (393/28 → 899/64) ⇝ 100/7 | note:71 gain:0.0624775906502261 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (393/28 → 899/64) ⇝ 100/7 | note:76 gain:0.0624775906502261 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (393/28 → 899/64) ⇝ 100/7 | note:77 gain:0.0624775906502261 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (393/28 → 899/64) ⇝ 100/7 | note:81 gain:0.0624775906502261 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 14/1 ⇜ (899/64 → 225/16) ⇝ 57/4 | note:F#2 gain:0.5165366864730327 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:71 gain:0.05165366864730328 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:76 gain:0.05165366864730328 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:77 gain:0.05165366864730328 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:81 gain:0.05165366864730328 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 14/1 ⇜ (225/16 → 901/64) ⇝ 57/4 | note:F#2 gain:0.3634633135269815 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:71 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:76 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:77 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:81 gain:0.03634633135269815 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 14/1 ⇜ (901/64 → 451/32) ⇝ 57/4 | note:F#2 gain:0.2552240934977448 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:71 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:76 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:77 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:81 gain:0.02552240934977448 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 14/1 ⇜ (451/32 → 903/64) ⇝ 57/4 | note:F#2 gain:0.2552240934977381 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:71 gain:0.025522409349773813 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:76 gain:0.025522409349773813 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:77 gain:0.025522409349773813 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:81 gain:0.025522409349773813 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 14/1 ⇜ (903/64 → 113/8) ⇝ 57/4 | note:F#2 gain:0.3634633135269864 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:71 gain:0.036346331352698644 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:76 gain:0.036346331352698644 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:77 gain:0.036346331352698644 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:81 gain:0.036346331352698644 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 14/1 ⇜ (113/8 → 905/64) ⇝ 57/4 | note:F#2 gain:0.5165366864730165 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:71 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:76 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:77 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:81 gain:0.051653668647301657 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (113/8 → 905/64) ⇝ 57/4 | note:F#4 gain:0.5165366864730165 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ (113/8 → 905/64) ⇝ 57/4 | note:C#5 gain:0.5165366864730165 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (113/8 → 905/64) ⇝ 57/4 | note:E5 gain:0.5165366864730165 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 14/1 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:F#2 gain:0.6247759065022545 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:71 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:76 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:77 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:81 gain:0.06247759065022545 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 113/8 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:F#4 gain:0.6247759065022545 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 113/8 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:C#5 gain:0.6247759065022545 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 113/8 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:E5 gain:0.6247759065022545 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 14/1 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:F#2 gain:0.6247759065022628 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:71 gain:0.06247759065022628 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:76 gain:0.06247759065022628 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:77 gain:0.06247759065022628 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:81 gain:0.06247759065022628 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 113/8 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:F#4 gain:0.6247759065022628 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 113/8 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:C#5 gain:0.6247759065022628 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 113/8 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:E5 gain:0.6247759065022628 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 14/1 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:F#2 gain:0.5165366864730156 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:71 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:76 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:77 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:81 gain:0.051653668647301566 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 113/8 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:F#4 gain:0.5165366864730156 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 113/8 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:C#5 gain:0.5165366864730156 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 113/8 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:E5 gain:0.5165366864730156 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 14/1 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:F#2 gain:0.36346331352698547 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:71 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:76 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:77 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:81 gain:0.03634633135269855 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 113/8 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:F#4 gain:0.36346331352698547 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 113/8 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:C#5 gain:0.36346331352698547 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 113/8 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:E5 gain:0.36346331352698547 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 14/1 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:F#2 gain:0.2552240934977465 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:71 gain:0.02552240934977465 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:76 gain:0.02552240934977465 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:77 gain:0.02552240934977465 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:81 gain:0.02552240934977465 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 113/8 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:F#4 gain:0.2552240934977465 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 113/8 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:C#5 gain:0.2552240934977465 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 113/8 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:E5 gain:0.2552240934977465 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 14/1 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:F#2 gain:0.2552240934977365 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:71 gain:0.02552240934977365 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:76 gain:0.02552240934977365 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:77 gain:0.02552240934977365 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:81 gain:0.02552240934977365 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 113/8 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:F#4 gain:0.2552240934977365 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 113/8 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:C#5 gain:0.2552240934977365 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 113/8 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:E5 gain:0.2552240934977365 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 14/1 ⇜ (911/64 → 57/4) | note:F#2 gain:0.3634633135269824 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:71 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:76 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:77 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:81 gain:0.03634633135269824 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 113/8 ⇜ (911/64 → 57/4) | note:F#4 gain:0.3634633135269824 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 113/8 ⇜ (911/64 → 57/4) | note:C#5 gain:0.3634633135269824 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 113/8 ⇜ (911/64 → 57/4) | note:E5 gain:0.3634633135269824 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:71 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:76 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:77 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:81 gain:0.051653668647301254 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:71 gain:0.06247759065022528 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:76 gain:0.06247759065022528 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:77 gain:0.06247759065022528 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:81 gain:0.06247759065022528 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ 393/28 ⇜ (457/32 → 100/7) | note:71 gain:0.06247759065022557 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 393/28 ⇜ (457/32 → 100/7) | note:76 gain:0.06247759065022557 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 393/28 ⇜ (457/32 → 100/7) | note:77 gain:0.06247759065022557 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 393/28 ⇜ (457/32 → 100/7) | note:81 gain:0.06247759065022557 clip:1 s:piano release:0.1 pan:0.625 ]",
-  "[ (29/2 → 929/64) ⇝ 117/8 | note:C#5 gain:0.5165366864730047 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (29/2 → 929/64) ⇝ 117/8 | note:G#5 gain:0.5165366864730047 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (29/2 → 929/64) ⇝ 117/8 | note:B5 gain:0.5165366864730047 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ (29/2 → 929/64) ⇝ 59/4 | note:Bb3 gain:0.25826834323650233 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (29/2 → 929/64) ⇝ 59/4 | note:Eb4 gain:0.25826834323650233 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (29/2 → 929/64) ⇝ 59/4 | note:E4 gain:0.25826834323650233 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (29/2 → 929/64) ⇝ 59/4 | note:Ab4 gain:0.25826834323650233 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (29/2 → 929/64) ⇝ 59/4 | note:F#2 gain:0.5165366864730047 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 117/8 | note:C#5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 117/8 | note:G#5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 117/8 | note:B5 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:Bb3 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:Eb4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:E4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:Ab4 gain:0.3123879532511291 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:F#2 gain:0.6247759065022582 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 117/8 | note:C#5 gain:0.624775906502259 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 117/8 | note:G#5 gain:0.624775906502259 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 117/8 | note:B5 gain:0.624775906502259 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:Bb3 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:Eb4 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:E4 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:Ab4 gain:0.3123879532511295 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:F#2 gain:0.624775906502259 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 117/8 | note:C#5 gain:0.5165366864730275 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 117/8 | note:G#5 gain:0.5165366864730275 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 117/8 | note:B5 gain:0.5165366864730275 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:Bb3 gain:0.25826834323651376 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:Eb4 gain:0.25826834323651376 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:E4 gain:0.25826834323651376 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:Ab4 gain:0.25826834323651376 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:F#2 gain:0.5165366864730275 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 117/8 | note:C#5 gain:0.3634633135269974 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 117/8 | note:G#5 gain:0.3634633135269974 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 117/8 | note:B5 gain:0.3634633135269974 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:Bb3 gain:0.1817316567634987 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:Eb4 gain:0.1817316567634987 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:E4 gain:0.1817316567634987 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:Ab4 gain:0.1817316567634987 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:F#2 gain:0.3634633135269974 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 117/8 | note:C#5 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 117/8 | note:G#5 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 117/8 | note:B5 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:Bb3 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:Eb4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:E4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:Ab4 gain:0.12761204674887136 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:F#2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 117/8 | note:C#5 gain:0.2552240934977402 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 117/8 | note:G#5 gain:0.2552240934977402 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 117/8 | note:B5 gain:0.2552240934977402 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:Bb3 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:Eb4 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:E4 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:Ab4 gain:0.1276120467488701 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:F#2 gain:0.2552240934977402 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) | note:C#5 gain:0.3634633135269705 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) | note:G#5 gain:0.3634633135269705 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) | note:B5 gain:0.3634633135269705 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:Bb3 gain:0.18173165676348524 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:Eb4 gain:0.18173165676348524 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:E4 gain:0.18173165676348524 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:Ab4 gain:0.18173165676348524 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:F#2 gain:0.3634633135269705 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:Bb3 gain:0.2582683432365108 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:Eb4 gain:0.2582683432365108 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:E4 gain:0.2582683432365108 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:Ab4 gain:0.2582683432365108 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:F#2 gain:0.5165366864730216 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:Bb3 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:Eb4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:E4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:Ab4 gain:0.3123879532511283 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:F#2 gain:0.6247759065022566 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:Bb3 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:Eb4 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:E4 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:Ab4 gain:0.31238795325113033 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:F#2 gain:0.6247759065022607 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:Bb3 gain:0.25826834323651576 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:Eb4 gain:0.25826834323651576 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:E4 gain:0.25826834323651576 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:Ab4 gain:0.25826834323651576 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:F#2 gain:0.5165366864730315 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:Bb3 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:Eb4 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:E4 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:Ab4 gain:0.1817316567634902 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:F#2 gain:0.3634633135269804 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:Bb3 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:Eb4 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:E4 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:Ab4 gain:0.12761204674887217 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:F#2 gain:0.25522409349774433 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:Bb3 gain:0.12761204674886928 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:Eb4 gain:0.12761204674886928 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:E4 gain:0.12761204674886928 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:Ab4 gain:0.12761204674886928 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:F#2 gain:0.25522409349773856 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 29/2 ⇜ (943/64 → 59/4) | note:Bb3 gain:0.18173165676348324 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 29/2 ⇜ (943/64 → 59/4) | note:Eb4 gain:0.18173165676348324 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (943/64 → 59/4) | note:E4 gain:0.18173165676348324 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 29/2 ⇜ (943/64 → 59/4) | note:Ab4 gain:0.18173165676348324 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 29/2 ⇜ (943/64 → 59/4) | note:F#2 gain:0.3634633135269665 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (59/4 → 945/64) ⇝ 119/8 | note:F#4 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ (59/4 → 945/64) ⇝ 119/8 | note:C#5 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (59/4 → 945/64) ⇝ 119/8 | note:E5 gain:0.5165366864730176 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 59/4 ⇜ (945/64 → 473/32) ⇝ 119/8 | note:F#4 gain:0.6247759065022548 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 59/4 ⇜ (945/64 → 473/32) ⇝ 119/8 | note:C#5 gain:0.6247759065022548 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 59/4 ⇜ (945/64 → 473/32) ⇝ 119/8 | note:E5 gain:0.6247759065022548 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 59/4 ⇜ (473/32 → 947/64) ⇝ 119/8 | note:F#4 gain:0.6247759065022622 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 59/4 ⇜ (473/32 → 947/64) ⇝ 119/8 | note:C#5 gain:0.6247759065022622 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 59/4 ⇜ (473/32 → 947/64) ⇝ 119/8 | note:E5 gain:0.6247759065022622 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (207/14 → 947/64) ⇝ 421/28 | note:70 gain:0.06247759065022623 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (207/14 → 947/64) ⇝ 421/28 | note:75 gain:0.06247759065022623 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (207/14 → 947/64) ⇝ 421/28 | note:76 gain:0.06247759065022623 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (207/14 → 947/64) ⇝ 421/28 | note:80 gain:0.06247759065022623 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 59/4 ⇜ (947/64 → 237/16) ⇝ 119/8 | note:F#4 gain:0.5165366864730147 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 59/4 ⇜ (947/64 → 237/16) ⇝ 119/8 | note:C#5 gain:0.5165366864730147 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 59/4 ⇜ (947/64 → 237/16) ⇝ 119/8 | note:E5 gain:0.5165366864730147 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:70 gain:0.05165366864730147 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:75 gain:0.05165366864730147 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:76 gain:0.05165366864730147 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:80 gain:0.05165366864730147 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 59/4 ⇜ (237/16 → 949/64) ⇝ 119/8 | note:F#4 gain:0.3634633135269844 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 59/4 ⇜ (237/16 → 949/64) ⇝ 119/8 | note:C#5 gain:0.3634633135269844 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 59/4 ⇜ (237/16 → 949/64) ⇝ 119/8 | note:E5 gain:0.3634633135269844 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:70 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:75 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:76 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:80 gain:0.03634633135269844 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 59/4 ⇜ (949/64 → 475/32) ⇝ 119/8 | note:F#4 gain:0.25522409349774605 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 59/4 ⇜ (949/64 → 475/32) ⇝ 119/8 | note:C#5 gain:0.25522409349774605 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 59/4 ⇜ (949/64 → 475/32) ⇝ 119/8 | note:E5 gain:0.25522409349774605 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:70 gain:0.025522409349774608 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:75 gain:0.025522409349774608 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:76 gain:0.025522409349774608 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:80 gain:0.025522409349774608 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 59/4 ⇜ (475/32 → 951/64) ⇝ 119/8 | note:F#4 gain:0.25522409349773695 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 59/4 ⇜ (475/32 → 951/64) ⇝ 119/8 | note:C#5 gain:0.25522409349773695 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 59/4 ⇜ (475/32 → 951/64) ⇝ 119/8 | note:E5 gain:0.25522409349773695 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:70 gain:0.025522409349773695 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:75 gain:0.025522409349773695 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:76 gain:0.025522409349773695 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:80 gain:0.025522409349773695 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 59/4 ⇜ (951/64 → 119/8) | note:F#4 gain:0.36346331352698347 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 59/4 ⇜ (951/64 → 119/8) | note:C#5 gain:0.36346331352698347 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 59/4 ⇜ (951/64 → 119/8) | note:E5 gain:0.36346331352698347 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:70 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:75 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:76 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:80 gain:0.036346331352698345 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:70 gain:0.05165366864730138 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:75 gain:0.05165366864730138 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:76 gain:0.05165366864730138 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:80 gain:0.05165366864730138 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:70 gain:0.062477590650225324 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:75 gain:0.062477590650225324 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:76 gain:0.062477590650225324 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:80 gain:0.062477590650225324 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:70 gain:0.06247759065022639 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:75 gain:0.06247759065022639 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:76 gain:0.06247759065022639 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:80 gain:0.06247759065022639 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:70 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:75 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:76 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:80 gain:0.05165366864730186 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:70 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:75 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:76 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:80 gain:0.03634633135269884 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:70 gain:0.02552240934977476 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:75 gain:0.02552240934977476 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:76 gain:0.02552240934977476 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:80 gain:0.02552240934977476 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:70 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:75 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:76 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:80 gain:0.0255224093497744 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:70 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:75 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:76 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:80 gain:0.03634633135269796 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:70 gain:0.05165366864730097 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:75 gain:0.05165366864730097 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:76 gain:0.05165366864730097 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:80 gain:0.05165366864730097 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (15/1 → 961/64) ⇝ 61/4 | note:F#2 gain:0.5165366864730097 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:70 gain:0.06247759065022516 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:75 gain:0.06247759065022516 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:76 gain:0.06247759065022516 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:80 gain:0.06247759065022516 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/1 ⇜ (961/64 → 481/32) ⇝ 61/4 | note:F#2 gain:0.6247759065022516 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 207/14 ⇜ (481/32 → 421/28) | note:70 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 207/14 ⇜ (481/32 → 421/28) | note:75 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 207/14 ⇜ (481/32 → 421/28) | note:76 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 207/14 ⇜ (481/32 → 421/28) | note:80 gain:0.06247759065022569 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 15/1 ⇜ (481/32 → 963/64) ⇝ 61/4 | note:F#2 gain:0.6247759065022569 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/1 ⇜ (963/64 → 241/16) ⇝ 61/4 | note:F#2 gain:0.5165366864730225 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/1 ⇜ (241/16 → 965/64) ⇝ 61/4 | note:F#2 gain:0.36346331352699235 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/1 ⇜ (965/64 → 483/32) ⇝ 61/4 | note:F#2 gain:0.2552240934977406 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/1 ⇜ (483/32 → 967/64) ⇝ 61/4 | note:F#2 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/1 ⇜ (967/64 → 121/8) ⇝ 61/4 | note:F#2 gain:0.36346331352697553 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 15/1 ⇜ (121/8 → 969/64) ⇝ 61/4 | note:F#2 gain:0.5165366864730058 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (121/8 → 969/64) ⇝ 61/4 | note:F#4 gain:0.5165366864730058 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ (121/8 → 969/64) ⇝ 61/4 | note:C#5 gain:0.5165366864730058 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (121/8 → 969/64) ⇝ 61/4 | note:E5 gain:0.5165366864730058 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/1 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:F#2 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 121/8 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:F#4 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 121/8 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:C#5 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 121/8 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:E5 gain:0.6247759065022587 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/1 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:F#2 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 121/8 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:F#4 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 121/8 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:C#5 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 121/8 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:E5 gain:0.6247759065022586 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/1 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:F#2 gain:0.5165366864730265 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 121/8 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:F#4 gain:0.5165366864730265 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 121/8 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:C#5 gain:0.5165366864730265 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 121/8 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:E5 gain:0.5165366864730265 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/1 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:F#2 gain:0.36346331352699635 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 121/8 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:F#4 gain:0.36346331352699635 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 121/8 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:C#5 gain:0.36346331352699635 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 121/8 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:E5 gain:0.36346331352699635 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/1 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:F#2 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 121/8 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:F#4 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 121/8 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:C#5 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 121/8 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:E5 gain:0.2552240934977423 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/1 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:F#2 gain:0.2552240934977407 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 121/8 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:F#4 gain:0.2552240934977407 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 121/8 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:C#5 gain:0.2552240934977407 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 121/8 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:E5 gain:0.2552240934977407 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 15/1 ⇜ (975/64 → 61/4) | note:F#2 gain:0.36346331352697153 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 121/8 ⇜ (975/64 → 61/4) | note:F#4 gain:0.36346331352697153 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
-  "[ 121/8 ⇜ (975/64 → 61/4) | note:C#5 gain:0.36346331352697153 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 121/8 ⇜ (975/64 → 61/4) | note:E5 gain:0.36346331352697153 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (61/4 → 977/64) ⇝ 31/2 | note:Bb3 gain:0.2582683432365113 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (61/4 → 977/64) ⇝ 31/2 | note:Eb4 gain:0.2582683432365113 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (61/4 → 977/64) ⇝ 31/2 | note:E4 gain:0.2582683432365113 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (61/4 → 977/64) ⇝ 31/2 | note:Ab4 gain:0.2582683432365113 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:Bb3 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:Eb4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:E4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:Ab4 gain:0.31238795325112845 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:Bb3 gain:0.31238795325113006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:Eb4 gain:0.31238795325113006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:E4 gain:0.31238795325113006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:Ab4 gain:0.31238795325113006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:Bb3 gain:0.2582683432365152 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:Eb4 gain:0.2582683432365152 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:E4 gain:0.2582683432365152 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:Ab4 gain:0.2582683432365152 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:Bb3 gain:0.18173165676348965 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:Eb4 gain:0.18173165676348965 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:E4 gain:0.18173165676348965 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:Ab4 gain:0.18173165676348965 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:Bb3 gain:0.12761204674887194 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:Eb4 gain:0.12761204674887194 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:E4 gain:0.12761204674887194 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:Ab4 gain:0.12761204674887194 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:Bb3 gain:0.1276120467488695 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:Eb4 gain:0.1276120467488695 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:E4 gain:0.1276120467488695 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:Ab4 gain:0.1276120467488695 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:Bb3 gain:0.1817316567634838 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:Eb4 gain:0.1817316567634838 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:E4 gain:0.1817316567634838 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:Ab4 gain:0.1817316567634838 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:Bb3 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:Eb4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:E4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:Ab4 gain:0.2582683432365093 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:Bb3 gain:0.31238795325112767 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:Eb4 gain:0.31238795325112767 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:E4 gain:0.31238795325112767 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:Ab4 gain:0.31238795325112767 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:Bb3 gain:0.31238795325113095 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:Eb4 gain:0.31238795325113095 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:E4 gain:0.31238795325113095 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:Ab4 gain:0.31238795325113095 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:Bb3 gain:0.2582683432365067 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:Eb4 gain:0.2582683432365067 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:E4 gain:0.2582683432365067 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:Ab4 gain:0.2582683432365067 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:Bb3 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:Eb4 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:E4 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:Ab4 gain:0.18173165676349165 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:Bb3 gain:0.12761204674887278 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:Eb4 gain:0.12761204674887278 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:E4 gain:0.12761204674887278 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:Ab4 gain:0.12761204674887278 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:Bb3 gain:0.1276120467488687 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:Eb4 gain:0.1276120467488687 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:E4 gain:0.1276120467488687 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:Ab4 gain:0.1276120467488687 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 61/4 ⇜ (991/64 → 31/2) | note:Bb3 gain:0.1817316567634923 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 61/4 ⇜ (991/64 → 31/2) | note:Eb4 gain:0.1817316567634923 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 61/4 ⇜ (991/64 → 31/2) | note:E4 gain:0.1817316567634923 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 61/4 ⇜ (991/64 → 31/2) | note:Ab4 gain:0.1817316567634923 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ (31/2 → 993/64) ⇝ 125/8 | note:C#5 gain:0.5165366864730148 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (31/2 → 993/64) ⇝ 125/8 | note:G#5 gain:0.5165366864730148 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (31/2 → 993/64) ⇝ 125/8 | note:B5 gain:0.5165366864730148 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ (31/2 → 993/64) ⇝ 63/4 | note:F#2 gain:0.5165366864730148 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 125/8 | note:C#5 gain:0.6247759065022538 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 125/8 | note:G#5 gain:0.6247759065022538 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 125/8 | note:B5 gain:0.6247759065022538 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 63/4 | note:F#2 gain:0.6247759065022538 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 125/8 | note:C#5 gain:0.6247759065022636 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 125/8 | note:G#5 gain:0.6247759065022636 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 125/8 | note:B5 gain:0.6247759065022636 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 63/4 | note:F#2 gain:0.6247759065022636 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ (435/28 → 995/64) ⇝ 221/14 | note:70 gain:0.06247759065022636 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ (435/28 → 995/64) ⇝ 221/14 | note:75 gain:0.06247759065022636 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (435/28 → 995/64) ⇝ 221/14 | note:76 gain:0.06247759065022636 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (435/28 → 995/64) ⇝ 221/14 | note:80 gain:0.06247759065022636 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 125/8 | note:C#5 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 125/8 | note:G#5 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 125/8 | note:B5 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 63/4 | note:F#2 gain:0.5165366864730174 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:70 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:75 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:76 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:80 gain:0.05165366864730175 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 125/8 | note:C#5 gain:0.3634633135269873 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 125/8 | note:G#5 gain:0.3634633135269873 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 125/8 | note:B5 gain:0.3634633135269873 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 63/4 | note:F#2 gain:0.3634633135269873 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:70 gain:0.036346331352698734 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:75 gain:0.036346331352698734 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:76 gain:0.036346331352698734 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:80 gain:0.036346331352698734 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 125/8 | note:C#5 gain:0.25522409349774716 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 125/8 | note:G#5 gain:0.25522409349774716 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 125/8 | note:B5 gain:0.25522409349774716 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 63/4 | note:F#2 gain:0.25522409349774716 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:70 gain:0.02552240934977472 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:75 gain:0.02552240934977472 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:76 gain:0.02552240934977472 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:80 gain:0.02552240934977472 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 125/8 | note:C#5 gain:0.25522409349774444 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 125/8 | note:G#5 gain:0.25522409349774444 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 125/8 | note:B5 gain:0.25522409349774444 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 63/4 | note:F#2 gain:0.25522409349774444 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:70 gain:0.025522409349774445 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:75 gain:0.025522409349774445 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:76 gain:0.025522409349774445 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:80 gain:0.025522409349774445 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (999/64 → 125/8) | note:C#5 gain:0.3634633135269806 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 31/2 ⇜ (999/64 → 125/8) | note:G#5 gain:0.3634633135269806 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (999/64 → 125/8) | note:B5 gain:0.3634633135269806 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 31/2 ⇜ (999/64 → 125/8) ⇝ 63/4 | note:F#2 gain:0.3634633135269806 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:70 gain:0.03634633135269806 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:75 gain:0.03634633135269806 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:76 gain:0.03634633135269806 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:80 gain:0.03634633135269806 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (125/8 → 1001/64) ⇝ 63/4 | note:F#2 gain:0.5165366864730107 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:70 gain:0.05165366864730107 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:75 gain:0.05165366864730107 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:76 gain:0.05165366864730107 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:80 gain:0.05165366864730107 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (1001/64 → 501/32) ⇝ 63/4 | note:F#2 gain:0.624775906502252 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:70 gain:0.062477590650225207 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:75 gain:0.062477590650225207 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:76 gain:0.062477590650225207 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:80 gain:0.062477590650225207 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (501/32 → 1003/64) ⇝ 63/4 | note:F#2 gain:0.6247759065022565 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:70 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:75 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:76 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:80 gain:0.06247759065022565 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (1003/64 → 251/16) ⇝ 63/4 | note:F#2 gain:0.5165366864730214 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:70 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:75 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:76 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:80 gain:0.05165366864730214 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (251/16 → 1005/64) ⇝ 63/4 | note:F#2 gain:0.3634633135269913 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:70 gain:0.03634633135269913 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:75 gain:0.03634633135269913 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:76 gain:0.03634633135269913 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:80 gain:0.03634633135269913 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (1005/64 → 503/32) ⇝ 63/4 | note:F#2 gain:0.2552240934977489 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:70 gain:0.02552240934977489 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:75 gain:0.02552240934977489 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:76 gain:0.02552240934977489 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:80 gain:0.02552240934977489 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (503/32 → 1007/64) ⇝ 63/4 | note:F#2 gain:0.2552240934977427 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:70 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:75 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:76 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:80 gain:0.025522409349774275 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 31/2 ⇜ (1007/64 → 63/4) | note:F#2 gain:0.36346331352697664 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
-  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:70 gain:0.036346331352697665 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:75 gain:0.036346331352697665 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:76 gain:0.036346331352697665 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:80 gain:0.036346331352697665 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:70 gain:0.05165366864730068 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:75 gain:0.05165366864730068 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:76 gain:0.05165366864730068 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:80 gain:0.05165366864730068 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (63/4 → 1009/64) ⇝ 127/8 | note:C#5 gain:0.5165366864730068 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ (63/4 → 1009/64) ⇝ 127/8 | note:G#5 gain:0.5165366864730068 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ (63/4 → 1009/64) ⇝ 127/8 | note:B5 gain:0.5165366864730068 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ (63/4 → 1009/64) ⇝ 16/1 | note:Bb3 gain:0.2582683432365034 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ (63/4 → 1009/64) ⇝ 16/1 | note:Eb4 gain:0.2582683432365034 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (63/4 → 1009/64) ⇝ 16/1 | note:E4 gain:0.2582683432365034 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ (63/4 → 1009/64) ⇝ 16/1 | note:Ab4 gain:0.2582683432365034 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:70 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:75 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:76 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:80 gain:0.062477590650225914 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 127/8 | note:C#5 gain:0.6247759065022591 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 127/8 | note:G#5 gain:0.6247759065022591 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 127/8 | note:B5 gain:0.6247759065022591 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:Bb3 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:Eb4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:E4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:Ab4 gain:0.31238795325112956 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 435/28 ⇜ (505/32 → 221/14) | note:70 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 435/28 ⇜ (505/32 → 221/14) | note:75 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 435/28 ⇜ (505/32 → 221/14) | note:76 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 435/28 ⇜ (505/32 → 221/14) | note:80 gain:0.06247759065022582 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 127/8 | note:C#5 gain:0.6247759065022581 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 127/8 | note:G#5 gain:0.6247759065022581 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 127/8 | note:B5 gain:0.6247759065022581 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:Bb3 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:Eb4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:E4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:Ab4 gain:0.31238795325112906 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 127/8 | note:C#5 gain:0.5165366864730254 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 127/8 | note:G#5 gain:0.5165366864730254 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 127/8 | note:B5 gain:0.5165366864730254 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:Bb3 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:Eb4 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:E4 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:Ab4 gain:0.2582683432365127 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 127/8 | note:C#5 gain:0.3634633135269953 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 127/8 | note:G#5 gain:0.3634633135269953 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 127/8 | note:B5 gain:0.3634633135269953 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:Bb3 gain:0.18173165676349765 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:Eb4 gain:0.18173165676349765 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:E4 gain:0.18173165676349765 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:Ab4 gain:0.18173165676349765 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 127/8 | note:C#5 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 127/8 | note:G#5 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 127/8 | note:B5 gain:0.2552240934977418 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:Bb3 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:Eb4 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:E4 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:Ab4 gain:0.1276120467488709 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 127/8 | note:C#5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 127/8 | note:G#5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 127/8 | note:B5 gain:0.25522409349774117 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:Bb3 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:Eb4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:E4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:Ab4 gain:0.12761204674887058 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (1015/64 → 127/8) | note:C#5 gain:0.36346331352697264 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
-  "[ 63/4 ⇜ (1015/64 → 127/8) | note:G#5 gain:0.36346331352697264 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
-  "[ 63/4 ⇜ (1015/64 → 127/8) | note:B5 gain:0.36346331352697264 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:Bb3 gain:0.18173165676348632 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:Eb4 gain:0.18173165676348632 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:E4 gain:0.18173165676348632 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:Ab4 gain:0.18173165676348632 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:Bb3 gain:0.2582683432365014 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:Eb4 gain:0.2582683432365014 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:E4 gain:0.2582683432365014 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:Ab4 gain:0.2582683432365014 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:Bb3 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:Eb4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:E4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:Ab4 gain:0.3123879532511287 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:Bb3 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:Eb4 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:E4 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:Ab4 gain:0.3123879532511299 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:Bb3 gain:0.25826834323651465 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:Eb4 gain:0.25826834323651465 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:E4 gain:0.25826834323651465 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:Ab4 gain:0.25826834323651465 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:Bb3 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:Eb4 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:E4 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:Ab4 gain:0.18173165676348912 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:Bb3 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:Eb4 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:E4 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:Ab4 gain:0.12761204674887172 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:Bb3 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:Eb4 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:E4 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:Ab4 gain:0.12761204674886972 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
-  "[ 63/4 ⇜ (1023/64 → 16/1) | note:Bb3 gain:0.18173165676348432 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 63/4 ⇜ (1023/64 → 16/1) | note:Eb4 gain:0.18173165676348432 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 63/4 ⇜ (1023/64 → 16/1) | note:E4 gain:0.18173165676348432 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 63/4 ⇜ (1023/64 → 16/1) | note:Ab4 gain:0.18173165676348432 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (0/1 → 1/64) ⇝ 1/4 | note:C2 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 0/1 ⇜ (1/64 → 1/32) ⇝ 1/4 | note:C2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 0/1 ⇜ (1/32 → 3/64) ⇝ 1/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (1/28 → 3/64) ⇝ 2/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (1/28 → 3/64) ⇝ 2/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (1/28 → 3/64) ⇝ 2/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (1/28 → 3/64) ⇝ 2/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 0/1 ⇜ (3/64 → 1/16) ⇝ 1/4 | note:C2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:70 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:75 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:76 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (3/64 → 1/16) ⇝ 2/7 | note:80 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 0/1 ⇜ (1/16 → 5/64) ⇝ 1/4 | note:C2 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:70 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:75 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:76 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (1/16 → 5/64) ⇝ 2/7 | note:80 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 0/1 ⇜ (5/64 → 3/32) ⇝ 1/4 | note:C2 gain:0.2985786437626905 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:70 gain:0.029857864376269052 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:75 gain:0.029857864376269052 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:76 gain:0.029857864376269052 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (5/64 → 3/32) ⇝ 2/7 | note:80 gain:0.029857864376269052 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 0/1 ⇜ (3/32 → 7/64) ⇝ 1/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (3/32 → 7/64) ⇝ 2/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 0/1 ⇜ (7/64 → 1/8) ⇝ 1/4 | note:C2 gain:0.29857864376269044 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:70 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:75 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:76 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (7/64 → 1/8) ⇝ 2/7 | note:80 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 0/1 ⇜ (1/8 → 9/64) ⇝ 1/4 | note:C2 gain:0.43999999999999995 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:70 gain:0.044 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:75 gain:0.044 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:76 gain:0.044 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (1/8 → 9/64) ⇝ 2/7 | note:80 gain:0.044 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (1/8 → 9/64) ⇝ 1/4 | note:C4 gain:0.43999999999999995 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (1/8 → 9/64) ⇝ 1/4 | note:Eb4 gain:0.43999999999999995 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 0/1 ⇜ (9/64 → 5/32) ⇝ 1/4 | note:C2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:70 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:75 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:76 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (9/64 → 5/32) ⇝ 2/7 | note:80 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/8 ⇜ (9/64 → 5/32) ⇝ 1/4 | note:C4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/8 ⇜ (9/64 → 5/32) ⇝ 1/4 | note:Eb4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 0/1 ⇜ (5/32 → 11/64) ⇝ 1/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (5/32 → 11/64) ⇝ 2/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/8 ⇜ (5/32 → 11/64) ⇝ 1/4 | note:C4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/8 ⇜ (5/32 → 11/64) ⇝ 1/4 | note:Eb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 0/1 ⇜ (11/64 → 3/16) ⇝ 1/4 | note:C2 gain:0.5814213562373096 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:70 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:75 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:76 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (11/64 → 3/16) ⇝ 2/7 | note:80 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/8 ⇜ (11/64 → 3/16) ⇝ 1/4 | note:C4 gain:0.5814213562373096 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/8 ⇜ (11/64 → 3/16) ⇝ 1/4 | note:Eb4 gain:0.5814213562373096 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 0/1 ⇜ (3/16 → 13/64) ⇝ 1/4 | note:C2 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:70 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:75 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:76 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (3/16 → 13/64) ⇝ 2/7 | note:80 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/8 ⇜ (3/16 → 13/64) ⇝ 1/4 | note:C4 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/8 ⇜ (3/16 → 13/64) ⇝ 1/4 | note:Eb4 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 0/1 ⇜ (13/64 → 7/32) ⇝ 1/4 | note:C2 gain:0.29857864376269044 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:70 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:75 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:76 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (13/64 → 7/32) ⇝ 2/7 | note:80 gain:0.029857864376269045 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/8 ⇜ (13/64 → 7/32) ⇝ 1/4 | note:C4 gain:0.29857864376269044 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/8 ⇜ (13/64 → 7/32) ⇝ 1/4 | note:Eb4 gain:0.29857864376269044 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 0/1 ⇜ (7/32 → 15/64) ⇝ 1/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (7/32 → 15/64) ⇝ 2/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/8 ⇜ (7/32 → 15/64) ⇝ 1/4 | note:C4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/8 ⇜ (7/32 → 15/64) ⇝ 1/4 | note:Eb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 0/1 ⇜ (15/64 → 1/4) | note:C2 gain:0.2985786437626903 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:70 gain:0.029857864376269028 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:75 gain:0.029857864376269028 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:76 gain:0.029857864376269028 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (15/64 → 1/4) ⇝ 2/7 | note:80 gain:0.029857864376269028 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/8 ⇜ (15/64 → 1/4) | note:C4 gain:0.2985786437626903 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/8 ⇜ (15/64 → 1/4) | note:Eb4 gain:0.2985786437626903 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:70 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:75 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:76 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (1/4 → 17/64) ⇝ 2/7 | note:80 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:70 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:75 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:76 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (17/64 → 9/32) ⇝ 2/7 | note:80 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 1/28 ⇜ (9/32 → 2/7) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/28 ⇜ (9/32 → 2/7) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 1/28 ⇜ (9/32 → 2/7) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/28 ⇜ (9/32 → 2/7) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (1/2 → 33/64) ⇝ 5/8 | note:G4 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (1/2 → 33/64) ⇝ 5/8 | note:Bb4 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (1/2 → 33/64) ⇝ 3/4 | note:Bb3 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (1/2 → 33/64) ⇝ 3/4 | note:D4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (1/2 → 33/64) ⇝ 3/4 | note:Eb4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (1/2 → 33/64) ⇝ 3/4 | note:G4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (1/2 → 33/64) ⇝ 3/4 | note:C2 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 5/8 | note:G4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 5/8 | note:Bb4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:Bb3 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:D4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:Eb4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:G4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (33/64 → 17/32) ⇝ 3/4 | note:C2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 5/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 5/8 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (17/32 → 35/64) ⇝ 3/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 5/8 | note:G4 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 5/8 | note:Bb4 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:Bb3 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:D4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:Eb4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:G4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (35/64 → 9/16) ⇝ 3/4 | note:C2 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 5/8 | note:G4 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 5/8 | note:Bb4 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:Bb3 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:D4 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:Eb4 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:G4 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (9/16 → 37/64) ⇝ 3/4 | note:C2 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 5/8 | note:G4 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 5/8 | note:Bb4 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:Bb3 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:D4 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:Eb4 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:G4 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (37/64 → 19/32) ⇝ 3/4 | note:C2 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 5/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 5/8 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (19/32 → 39/64) ⇝ 3/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (39/64 → 5/8) | note:G4 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (39/64 → 5/8) | note:Bb4 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:Bb3 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:D4 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:Eb4 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:G4 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (39/64 → 5/8) ⇝ 3/4 | note:C2 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:Bb3 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:D4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:Eb4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:G4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (5/8 → 41/64) ⇝ 3/4 | note:C2 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:Bb3 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:D4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:Eb4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:G4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (41/64 → 21/32) ⇝ 3/4 | note:C2 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (21/32 → 43/64) ⇝ 3/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:Bb3 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:D4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:Eb4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:G4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (43/64 → 11/16) ⇝ 3/4 | note:C2 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:Bb3 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:D4 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:Eb4 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:G4 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (11/16 → 45/64) ⇝ 3/4 | note:C2 gain:0.44000000000000095 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:Bb3 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:D4 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:Eb4 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:G4 gain:0.14928932188134528 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (45/64 → 23/32) ⇝ 3/4 | note:C2 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (23/32 → 47/64) ⇝ 3/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/2 ⇜ (47/64 → 3/4) | note:Bb3 gain:0.14928932188134533 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 1/2 ⇜ (47/64 → 3/4) | note:D4 gain:0.14928932188134533 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (47/64 → 3/4) | note:Eb4 gain:0.14928932188134533 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/2 ⇜ (47/64 → 3/4) | note:G4 gain:0.14928932188134533 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (47/64 → 3/4) | note:C2 gain:0.29857864376269067 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (3/4 → 49/64) ⇝ 7/8 | note:C4 gain:0.4399999999999997 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (3/4 → 49/64) ⇝ 7/8 | note:Eb4 gain:0.4399999999999997 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 3/4 ⇜ (49/64 → 25/32) ⇝ 7/8 | note:C4 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 3/4 ⇜ (49/64 → 25/32) ⇝ 7/8 | note:Eb4 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 3/4 ⇜ (25/32 → 51/64) ⇝ 7/8 | note:C4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 3/4 ⇜ (25/32 → 51/64) ⇝ 7/8 | note:Eb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (11/14 → 51/64) ⇝ 29/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (11/14 → 51/64) ⇝ 29/28 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (11/14 → 51/64) ⇝ 29/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (11/14 → 51/64) ⇝ 29/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/4 ⇜ (51/64 → 13/16) ⇝ 7/8 | note:C4 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 3/4 ⇜ (51/64 → 13/16) ⇝ 7/8 | note:Eb4 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:70 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:74 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:75 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (51/64 → 13/16) ⇝ 29/28 | note:79 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/4 ⇜ (13/16 → 53/64) ⇝ 7/8 | note:C4 gain:0.4399999999999996 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 3/4 ⇜ (13/16 → 53/64) ⇝ 7/8 | note:Eb4 gain:0.4399999999999996 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:70 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:74 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:75 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (13/16 → 53/64) ⇝ 29/28 | note:79 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/4 ⇜ (53/64 → 27/32) ⇝ 7/8 | note:C4 gain:0.2985786437626906 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 3/4 ⇜ (53/64 → 27/32) ⇝ 7/8 | note:Eb4 gain:0.2985786437626906 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:70 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:74 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:75 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (53/64 → 27/32) ⇝ 29/28 | note:79 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/4 ⇜ (27/32 → 55/64) ⇝ 7/8 | note:C4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 3/4 ⇜ (27/32 → 55/64) ⇝ 7/8 | note:Eb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (27/32 → 55/64) ⇝ 29/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/4 ⇜ (55/64 → 7/8) | note:C4 gain:0.29857864376269067 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 3/4 ⇜ (55/64 → 7/8) | note:Eb4 gain:0.29857864376269067 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:70 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:74 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:75 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (55/64 → 7/8) ⇝ 29/28 | note:79 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:70 gain:0.04399999999999998 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:74 gain:0.04399999999999998 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:75 gain:0.04399999999999998 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (7/8 → 57/64) ⇝ 29/28 | note:79 gain:0.04399999999999998 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:70 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:74 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:75 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (57/64 → 29/32) ⇝ 29/28 | note:79 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (29/32 → 59/64) ⇝ 29/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:70 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:74 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:75 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (59/64 → 15/16) ⇝ 29/28 | note:79 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:70 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:74 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:75 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (15/16 → 61/64) ⇝ 29/28 | note:79 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:70 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:74 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:75 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (61/64 → 31/32) ⇝ 29/28 | note:79 gain:0.02985786437626907 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (31/32 → 63/64) ⇝ 29/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:70 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:74 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:75 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (63/64 → 1/1) ⇝ 29/28 | note:79 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:70 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:74 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:75 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (1/1 → 65/64) ⇝ 29/28 | note:79 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (1/1 → 65/64) ⇝ 5/4 | note:C2 gain:0.4399999999999996 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:70 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:74 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:75 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (65/64 → 33/32) ⇝ 29/28 | note:79 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 1/1 ⇜ (65/64 → 33/32) ⇝ 5/4 | note:C2 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 11/14 ⇜ (33/32 → 29/28) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 11/14 ⇜ (33/32 → 29/28) | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/14 ⇜ (33/32 → 29/28) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/14 ⇜ (33/32 → 29/28) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 1/1 ⇜ (33/32 → 67/64) ⇝ 5/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/1 ⇜ (67/64 → 17/16) ⇝ 5/4 | note:C2 gain:0.58142135623731 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/1 ⇜ (17/16 → 69/64) ⇝ 5/4 | note:C2 gain:0.4399999999999997 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/1 ⇜ (69/64 → 35/32) ⇝ 5/4 | note:C2 gain:0.29857864376269067 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/1 ⇜ (35/32 → 71/64) ⇝ 5/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/1 ⇜ (71/64 → 9/8) ⇝ 5/4 | note:C2 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 1/1 ⇜ (9/8 → 73/64) ⇝ 5/4 | note:C2 gain:0.4399999999999995 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (9/8 → 73/64) ⇝ 5/4 | note:C4 gain:0.4399999999999995 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (9/8 → 73/64) ⇝ 5/4 | note:Eb4 gain:0.4399999999999995 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/1 ⇜ (73/64 → 37/32) ⇝ 5/4 | note:C2 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/8 ⇜ (73/64 → 37/32) ⇝ 5/4 | note:C4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/8 ⇜ (73/64 → 37/32) ⇝ 5/4 | note:Eb4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/1 ⇜ (37/32 → 75/64) ⇝ 5/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/8 ⇜ (37/32 → 75/64) ⇝ 5/4 | note:C4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/8 ⇜ (37/32 → 75/64) ⇝ 5/4 | note:Eb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/1 ⇜ (75/64 → 19/16) ⇝ 5/4 | note:C2 gain:0.58142135623731 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/8 ⇜ (75/64 → 19/16) ⇝ 5/4 | note:C4 gain:0.58142135623731 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/8 ⇜ (75/64 → 19/16) ⇝ 5/4 | note:Eb4 gain:0.58142135623731 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/1 ⇜ (19/16 → 77/64) ⇝ 5/4 | note:C2 gain:0.4400000000000011 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/8 ⇜ (19/16 → 77/64) ⇝ 5/4 | note:C4 gain:0.4400000000000011 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/8 ⇜ (19/16 → 77/64) ⇝ 5/4 | note:Eb4 gain:0.4400000000000011 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/1 ⇜ (77/64 → 39/32) ⇝ 5/4 | note:C2 gain:0.2985786437626907 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/8 ⇜ (77/64 → 39/32) ⇝ 5/4 | note:C4 gain:0.2985786437626907 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/8 ⇜ (77/64 → 39/32) ⇝ 5/4 | note:Eb4 gain:0.2985786437626907 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/1 ⇜ (39/32 → 79/64) ⇝ 5/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/8 ⇜ (39/32 → 79/64) ⇝ 5/4 | note:C4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/8 ⇜ (39/32 → 79/64) ⇝ 5/4 | note:Eb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 1/1 ⇜ (79/64 → 5/4) | note:C2 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/8 ⇜ (79/64 → 5/4) | note:C4 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/8 ⇜ (79/64 → 5/4) | note:Eb4 gain:0.29857864376269055 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (5/4 → 81/64) ⇝ 3/2 | note:Bb3 gain:0.21999999999999975 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (5/4 → 81/64) ⇝ 3/2 | note:D4 gain:0.21999999999999975 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (5/4 → 81/64) ⇝ 3/2 | note:Eb4 gain:0.21999999999999975 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (5/4 → 81/64) ⇝ 3/2 | note:G4 gain:0.21999999999999975 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:Bb3 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:D4 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:Eb4 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (81/64 → 41/32) ⇝ 3/2 | note:G4 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (41/32 → 83/64) ⇝ 3/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:Bb3 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:D4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:Eb4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (83/64 → 21/16) ⇝ 3/2 | note:G4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:Bb3 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:D4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:Eb4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (21/16 → 85/64) ⇝ 3/2 | note:G4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:Bb3 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:D4 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:Eb4 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (85/64 → 43/32) ⇝ 3/2 | note:G4 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (43/32 → 87/64) ⇝ 3/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:Bb3 gain:0.14928932188134475 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:D4 gain:0.14928932188134475 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:Eb4 gain:0.14928932188134475 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (87/64 → 11/8) ⇝ 3/2 | note:G4 gain:0.14928932188134475 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:Bb3 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:D4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:Eb4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (11/8 → 89/64) ⇝ 3/2 | note:G4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:Bb3 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:D4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:Eb4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (89/64 → 45/32) ⇝ 3/2 | note:G4 gain:0.2907106781186549 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (45/32 → 91/64) ⇝ 3/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:Bb3 gain:0.290710678118655 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:D4 gain:0.290710678118655 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:Eb4 gain:0.290710678118655 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (91/64 → 23/16) ⇝ 3/2 | note:G4 gain:0.290710678118655 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:Bb3 gain:0.22000000000000064 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:D4 gain:0.22000000000000064 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:Eb4 gain:0.22000000000000064 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (23/16 → 93/64) ⇝ 3/2 | note:G4 gain:0.22000000000000064 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:Bb3 gain:0.1492893218813459 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:D4 gain:0.1492893218813459 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:Eb4 gain:0.1492893218813459 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (93/64 → 47/32) ⇝ 3/2 | note:G4 gain:0.1492893218813459 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (47/32 → 95/64) ⇝ 3/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/4 ⇜ (95/64 → 3/2) | note:Bb3 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/4 ⇜ (95/64 → 3/2) | note:D4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 5/4 ⇜ (95/64 → 3/2) | note:Eb4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/4 ⇜ (95/64 → 3/2) | note:G4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (3/2 → 97/64) ⇝ 13/8 | note:G4 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (3/2 → 97/64) ⇝ 13/8 | note:Bb4 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (3/2 → 97/64) ⇝ 7/4 | note:C2 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 3/2 ⇜ (97/64 → 49/32) ⇝ 13/8 | note:G4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/2 ⇜ (97/64 → 49/32) ⇝ 13/8 | note:Bb4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 3/2 ⇜ (97/64 → 49/32) ⇝ 7/4 | note:C2 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 3/2 ⇜ (49/32 → 99/64) ⇝ 13/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/2 ⇜ (49/32 → 99/64) ⇝ 13/8 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 3/2 ⇜ (49/32 → 99/64) ⇝ 7/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (43/28 → 99/64) ⇝ 25/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (43/28 → 99/64) ⇝ 25/14 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (43/28 → 99/64) ⇝ 25/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (43/28 → 99/64) ⇝ 25/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (99/64 → 25/16) ⇝ 13/8 | note:G4 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/2 ⇜ (99/64 → 25/16) ⇝ 13/8 | note:Bb4 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 3/2 ⇜ (99/64 → 25/16) ⇝ 7/4 | note:C2 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:70 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:74 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:75 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (99/64 → 25/16) ⇝ 25/14 | note:79 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (25/16 → 101/64) ⇝ 13/8 | note:G4 gain:0.4399999999999999 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/2 ⇜ (25/16 → 101/64) ⇝ 13/8 | note:Bb4 gain:0.4399999999999999 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 3/2 ⇜ (25/16 → 101/64) ⇝ 7/4 | note:C2 gain:0.4399999999999999 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:70 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:74 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:75 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (25/16 → 101/64) ⇝ 25/14 | note:79 gain:0.04399999999999999 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (101/64 → 51/32) ⇝ 13/8 | note:G4 gain:0.29857864376269083 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/2 ⇜ (101/64 → 51/32) ⇝ 13/8 | note:Bb4 gain:0.29857864376269083 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 3/2 ⇜ (101/64 → 51/32) ⇝ 7/4 | note:C2 gain:0.29857864376269083 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:70 gain:0.029857864376269083 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:74 gain:0.029857864376269083 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:75 gain:0.029857864376269083 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (101/64 → 51/32) ⇝ 25/14 | note:79 gain:0.029857864376269083 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (51/32 → 103/64) ⇝ 13/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/2 ⇜ (51/32 → 103/64) ⇝ 13/8 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 3/2 ⇜ (51/32 → 103/64) ⇝ 7/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (51/32 → 103/64) ⇝ 25/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (103/64 → 13/8) | note:G4 gain:0.2985786437626894 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/2 ⇜ (103/64 → 13/8) | note:Bb4 gain:0.2985786437626894 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 3/2 ⇜ (103/64 → 13/8) ⇝ 7/4 | note:C2 gain:0.2985786437626894 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:70 gain:0.02985786437626894 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:74 gain:0.02985786437626894 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:75 gain:0.02985786437626894 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (103/64 → 13/8) ⇝ 25/14 | note:79 gain:0.02985786437626894 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (13/8 → 105/64) ⇝ 7/4 | note:C2 gain:0.4400000000000008 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:70 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:74 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:75 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (13/8 → 105/64) ⇝ 25/14 | note:79 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (105/64 → 53/32) ⇝ 7/4 | note:C2 gain:0.5814213562373096 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:70 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:74 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:75 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (105/64 → 53/32) ⇝ 25/14 | note:79 gain:0.05814213562373097 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (53/32 → 107/64) ⇝ 7/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (53/32 → 107/64) ⇝ 25/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (107/64 → 27/16) ⇝ 7/4 | note:C2 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:70 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:74 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:75 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (107/64 → 27/16) ⇝ 25/14 | note:79 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (27/16 → 109/64) ⇝ 7/4 | note:C2 gain:0.4400000000000014 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:70 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:74 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:75 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (27/16 → 109/64) ⇝ 25/14 | note:79 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (109/64 → 55/32) ⇝ 7/4 | note:C2 gain:0.29857864376269183 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:70 gain:0.029857864376269184 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:74 gain:0.029857864376269184 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:75 gain:0.029857864376269184 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (109/64 → 55/32) ⇝ 25/14 | note:79 gain:0.029857864376269184 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (55/32 → 111/64) ⇝ 7/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (55/32 → 111/64) ⇝ 25/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (111/64 → 7/4) | note:C2 gain:0.2985786437626904 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:70 gain:0.02985786437626904 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:74 gain:0.02985786437626904 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:75 gain:0.02985786437626904 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (111/64 → 7/4) ⇝ 25/14 | note:79 gain:0.02985786437626904 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:70 gain:0.043999999999999935 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:74 gain:0.043999999999999935 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:75 gain:0.043999999999999935 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (7/4 → 113/64) ⇝ 25/14 | note:79 gain:0.043999999999999935 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (7/4 → 113/64) ⇝ 15/8 | note:G4 gain:0.43999999999999934 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (7/4 → 113/64) ⇝ 15/8 | note:Bb4 gain:0.43999999999999934 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (7/4 → 113/64) ⇝ 2/1 | note:Bb3 gain:0.21999999999999967 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (7/4 → 113/64) ⇝ 2/1 | note:D4 gain:0.21999999999999967 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (7/4 → 113/64) ⇝ 2/1 | note:Eb4 gain:0.21999999999999967 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (7/4 → 113/64) ⇝ 2/1 | note:G4 gain:0.21999999999999967 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:70 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:74 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:75 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (113/64 → 57/32) ⇝ 25/14 | note:79 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 15/8 | note:G4 gain:0.5814213562373086 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 15/8 | note:Bb4 gain:0.5814213562373086 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:Bb3 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:D4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:Eb4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (113/64 → 57/32) ⇝ 2/1 | note:G4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 43/28 ⇜ (57/32 → 25/14) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 43/28 ⇜ (57/32 → 25/14) | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 43/28 ⇜ (57/32 → 25/14) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/28 ⇜ (57/32 → 25/14) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 15/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 15/8 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (57/32 → 115/64) ⇝ 2/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 15/8 | note:G4 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 15/8 | note:Bb4 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:Bb3 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:D4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:Eb4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (115/64 → 29/16) ⇝ 2/1 | note:G4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 15/8 | note:G4 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 15/8 | note:Bb4 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:Bb3 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:D4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:Eb4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (29/16 → 117/64) ⇝ 2/1 | note:G4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 15/8 | note:G4 gain:0.2985786437626909 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 15/8 | note:Bb4 gain:0.2985786437626909 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:Bb3 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:D4 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:Eb4 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (117/64 → 59/32) ⇝ 2/1 | note:G4 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 15/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 15/8 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (59/32 → 119/64) ⇝ 2/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (119/64 → 15/8) | note:G4 gain:0.29857864376268933 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (119/64 → 15/8) | note:Bb4 gain:0.29857864376268933 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:Bb3 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:D4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:Eb4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (119/64 → 15/8) ⇝ 2/1 | note:G4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:Bb3 gain:0.21999999999999892 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:D4 gain:0.21999999999999892 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:Eb4 gain:0.21999999999999892 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (15/8 → 121/64) ⇝ 2/1 | note:G4 gain:0.21999999999999892 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:Bb3 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:D4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:Eb4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (121/64 → 61/32) ⇝ 2/1 | note:G4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (61/32 → 123/64) ⇝ 2/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:Bb3 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:D4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:Eb4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (123/64 → 31/16) ⇝ 2/1 | note:G4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:Bb3 gain:0.22000000000000075 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:D4 gain:0.22000000000000075 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:Eb4 gain:0.22000000000000075 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (31/16 → 125/64) ⇝ 2/1 | note:G4 gain:0.22000000000000075 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:Bb3 gain:0.14928932188134594 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:D4 gain:0.14928932188134594 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:Eb4 gain:0.14928932188134594 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (125/64 → 63/32) ⇝ 2/1 | note:G4 gain:0.14928932188134594 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (63/32 → 127/64) ⇝ 2/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/4 ⇜ (127/64 → 2/1) | note:Bb3 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 7/4 ⇜ (127/64 → 2/1) | note:D4 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 7/4 ⇜ (127/64 → 2/1) | note:Eb4 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 7/4 ⇜ (127/64 → 2/1) | note:G4 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (2/1 → 129/64) ⇝ 9/4 | note:F2 gain:0.4399999999999993 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 2/1 ⇜ (129/64 → 65/32) ⇝ 9/4 | note:F2 gain:0.5814213562373086 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 2/1 ⇜ (65/32 → 131/64) ⇝ 9/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (57/28 → 131/64) ⇝ 16/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (57/28 → 131/64) ⇝ 16/7 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (57/28 → 131/64) ⇝ 16/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (57/28 → 131/64) ⇝ 16/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 2/1 ⇜ (131/64 → 33/16) ⇝ 9/4 | note:F2 gain:0.5814213562373092 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:70 gain:0.05814213562373092 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:74 gain:0.05814213562373092 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:75 gain:0.05814213562373092 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (131/64 → 33/16) ⇝ 16/7 | note:79 gain:0.05814213562373092 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 2/1 ⇜ (33/16 → 133/64) ⇝ 9/4 | note:F2 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:70 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:74 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:75 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (33/16 → 133/64) ⇝ 16/7 | note:79 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 2/1 ⇜ (133/64 → 67/32) ⇝ 9/4 | note:F2 gain:0.2985786437626909 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:70 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:74 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:75 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (133/64 → 67/32) ⇝ 16/7 | note:79 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 2/1 ⇜ (67/32 → 135/64) ⇝ 9/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (67/32 → 135/64) ⇝ 16/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 2/1 ⇜ (135/64 → 17/8) ⇝ 9/4 | note:F2 gain:0.29857864376268933 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:70 gain:0.029857864376268934 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:74 gain:0.029857864376268934 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:75 gain:0.029857864376268934 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (135/64 → 17/8) ⇝ 16/7 | note:79 gain:0.029857864376268934 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 2/1 ⇜ (17/8 → 137/64) ⇝ 9/4 | note:F2 gain:0.4400000000000006 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:70 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:74 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:75 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (17/8 → 137/64) ⇝ 16/7 | note:79 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (17/8 → 137/64) ⇝ 9/4 | note:F4 gain:0.4400000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (17/8 → 137/64) ⇝ 9/4 | note:Ab4 gain:0.4400000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 2/1 ⇜ (137/64 → 69/32) ⇝ 9/4 | note:F2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:70 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:74 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:75 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (137/64 → 69/32) ⇝ 16/7 | note:79 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 17/8 ⇜ (137/64 → 69/32) ⇝ 9/4 | note:F4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/8 ⇜ (137/64 → 69/32) ⇝ 9/4 | note:Ab4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 2/1 ⇜ (69/32 → 139/64) ⇝ 9/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (69/32 → 139/64) ⇝ 16/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 17/8 ⇜ (69/32 → 139/64) ⇝ 9/4 | note:F4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/8 ⇜ (69/32 → 139/64) ⇝ 9/4 | note:Ab4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 2/1 ⇜ (139/64 → 35/16) ⇝ 9/4 | note:F2 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:70 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:74 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:75 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (139/64 → 35/16) ⇝ 16/7 | note:79 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 17/8 ⇜ (139/64 → 35/16) ⇝ 9/4 | note:F4 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/8 ⇜ (139/64 → 35/16) ⇝ 9/4 | note:Ab4 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 2/1 ⇜ (35/16 → 141/64) ⇝ 9/4 | note:F2 gain:0.44000000000000156 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:70 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:74 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:75 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (35/16 → 141/64) ⇝ 16/7 | note:79 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 17/8 ⇜ (35/16 → 141/64) ⇝ 9/4 | note:F4 gain:0.44000000000000156 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/8 ⇜ (35/16 → 141/64) ⇝ 9/4 | note:Ab4 gain:0.44000000000000156 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 2/1 ⇜ (141/64 → 71/32) ⇝ 9/4 | note:F2 gain:0.298578643762692 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:70 gain:0.0298578643762692 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:74 gain:0.0298578643762692 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:75 gain:0.0298578643762692 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (141/64 → 71/32) ⇝ 16/7 | note:79 gain:0.0298578643762692 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 17/8 ⇜ (141/64 → 71/32) ⇝ 9/4 | note:F4 gain:0.298578643762692 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/8 ⇜ (141/64 → 71/32) ⇝ 9/4 | note:Ab4 gain:0.298578643762692 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 2/1 ⇜ (71/32 → 143/64) ⇝ 9/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (71/32 → 143/64) ⇝ 16/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 17/8 ⇜ (71/32 → 143/64) ⇝ 9/4 | note:F4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/8 ⇜ (71/32 → 143/64) ⇝ 9/4 | note:Ab4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 2/1 ⇜ (143/64 → 9/4) | note:F2 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:70 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:74 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:75 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (143/64 → 9/4) ⇝ 16/7 | note:79 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 17/8 ⇜ (143/64 → 9/4) | note:F4 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/8 ⇜ (143/64 → 9/4) | note:Ab4 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:70 gain:0.04399999999999992 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:74 gain:0.04399999999999992 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:75 gain:0.04399999999999992 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (9/4 → 145/64) ⇝ 16/7 | note:79 gain:0.04399999999999992 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:70 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:74 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:75 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (145/64 → 73/32) ⇝ 16/7 | note:79 gain:0.05814213562373086 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 57/28 ⇜ (73/32 → 16/7) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 57/28 ⇜ (73/32 → 16/7) | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 57/28 ⇜ (73/32 → 16/7) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 57/28 ⇜ (73/32 → 16/7) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (5/2 → 161/64) ⇝ 21/8 | note:C5 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (5/2 → 161/64) ⇝ 21/8 | note:Eb5 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (5/2 → 161/64) ⇝ 11/4 | note:Eb4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (5/2 → 161/64) ⇝ 11/4 | note:G4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (5/2 → 161/64) ⇝ 11/4 | note:Ab4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (5/2 → 161/64) ⇝ 11/4 | note:C5 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (5/2 → 161/64) ⇝ 11/4 | note:F2 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 21/8 | note:C5 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 21/8 | note:Eb5 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:Eb4 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:G4 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:Ab4 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:C5 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (161/64 → 81/32) ⇝ 11/4 | note:F2 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 21/8 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 21/8 | note:Eb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (81/32 → 163/64) ⇝ 11/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 21/8 | note:C5 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 21/8 | note:Eb5 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:Eb4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:G4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:Ab4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:C5 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (163/64 → 41/16) ⇝ 11/4 | note:F2 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 21/8 | note:C5 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 21/8 | note:Eb5 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:Eb4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:G4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:Ab4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:C5 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (41/16 → 165/64) ⇝ 11/4 | note:F2 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 21/8 | note:C5 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 21/8 | note:Eb5 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:Eb4 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:G4 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:Ab4 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:C5 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (165/64 → 83/32) ⇝ 11/4 | note:F2 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 21/8 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 21/8 | note:Eb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (83/32 → 167/64) ⇝ 11/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (167/64 → 21/8) | note:C5 gain:0.29857864376269116 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (167/64 → 21/8) | note:Eb5 gain:0.29857864376269116 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:Eb4 gain:0.14928932188134558 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:G4 gain:0.14928932188134558 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:Ab4 gain:0.14928932188134558 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:C5 gain:0.14928932188134558 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (167/64 → 21/8) ⇝ 11/4 | note:F2 gain:0.29857864376269116 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:Eb4 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:G4 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:Ab4 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:C5 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (21/8 → 169/64) ⇝ 11/4 | note:F2 gain:0.4400000000000004 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:Eb4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:G4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:Ab4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:C5 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (169/64 → 85/32) ⇝ 11/4 | note:F2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (85/32 → 171/64) ⇝ 11/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:Eb4 gain:0.2907106781186552 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:G4 gain:0.2907106781186552 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:Ab4 gain:0.2907106781186552 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:C5 gain:0.2907106781186552 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (171/64 → 43/16) ⇝ 11/4 | note:F2 gain:0.5814213562373104 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:Eb4 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:G4 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:Ab4 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:C5 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (43/16 → 173/64) ⇝ 11/4 | note:F2 gain:0.44000000000000183 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:Eb4 gain:0.14928932188134608 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:G4 gain:0.14928932188134608 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:Ab4 gain:0.14928932188134608 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:C5 gain:0.14928932188134608 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (173/64 → 87/32) ⇝ 11/4 | note:F2 gain:0.29857864376269216 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (87/32 → 175/64) ⇝ 11/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/2 ⇜ (175/64 → 11/4) | note:Eb4 gain:0.14928932188134406 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (175/64 → 11/4) | note:G4 gain:0.14928932188134406 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (175/64 → 11/4) | note:Ab4 gain:0.14928932188134406 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 5/2 ⇜ (175/64 → 11/4) | note:C5 gain:0.14928932188134406 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/2 ⇜ (175/64 → 11/4) | note:F2 gain:0.2985786437626881 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (11/4 → 177/64) ⇝ 23/8 | note:F4 gain:0.43999999999999606 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (11/4 → 177/64) ⇝ 23/8 | note:Ab4 gain:0.43999999999999606 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 11/4 ⇜ (177/64 → 89/32) ⇝ 23/8 | note:F4 gain:0.5814213562373104 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 11/4 ⇜ (177/64 → 89/32) ⇝ 23/8 | note:Ab4 gain:0.5814213562373104 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 11/4 ⇜ (89/32 → 179/64) ⇝ 23/8 | note:F4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 11/4 ⇜ (89/32 → 179/64) ⇝ 23/8 | note:Ab4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (39/14 → 179/64) ⇝ 85/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (39/14 → 179/64) ⇝ 85/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (39/14 → 179/64) ⇝ 85/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (39/14 → 179/64) ⇝ 85/28 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 11/4 ⇜ (179/64 → 45/16) ⇝ 23/8 | note:F4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 11/4 ⇜ (179/64 → 45/16) ⇝ 23/8 | note:Ab4 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:75 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:79 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:80 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (179/64 → 45/16) ⇝ 85/28 | note:84 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 11/4 ⇜ (45/16 → 181/64) ⇝ 23/8 | note:F4 gain:0.4400000000000004 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 11/4 ⇜ (45/16 → 181/64) ⇝ 23/8 | note:Ab4 gain:0.4400000000000004 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:75 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:79 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:80 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (45/16 → 181/64) ⇝ 85/28 | note:84 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 11/4 ⇜ (181/64 → 91/32) ⇝ 23/8 | note:F4 gain:0.29857864376269116 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 11/4 ⇜ (181/64 → 91/32) ⇝ 23/8 | note:Ab4 gain:0.29857864376269116 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:75 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:79 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:80 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (181/64 → 91/32) ⇝ 85/28 | note:84 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 11/4 ⇜ (91/32 → 183/64) ⇝ 23/8 | note:F4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 11/4 ⇜ (91/32 → 183/64) ⇝ 23/8 | note:Ab4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (91/32 → 183/64) ⇝ 85/28 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 11/4 ⇜ (183/64 → 23/8) | note:F4 gain:0.2985786437626891 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 11/4 ⇜ (183/64 → 23/8) | note:Ab4 gain:0.2985786437626891 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:75 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:79 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:80 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (183/64 → 23/8) ⇝ 85/28 | note:84 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:75 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:79 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:80 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (23/8 → 185/64) ⇝ 85/28 | note:84 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:75 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:79 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:80 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (185/64 → 93/32) ⇝ 85/28 | note:84 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (93/32 → 187/64) ⇝ 85/28 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:75 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:79 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:80 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (187/64 → 47/16) ⇝ 85/28 | note:84 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:75 gain:0.0439999999999999 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:79 gain:0.0439999999999999 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:80 gain:0.0439999999999999 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (47/16 → 189/64) ⇝ 85/28 | note:84 gain:0.0439999999999999 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:75 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:79 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:80 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (189/64 → 95/32) ⇝ 85/28 | note:84 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (95/32 → 191/64) ⇝ 85/28 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:75 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:79 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:80 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (191/64 → 3/1) ⇝ 85/28 | note:84 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:75 gain:0.043999999999999886 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:79 gain:0.043999999999999886 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:80 gain:0.043999999999999886 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (3/1 → 193/64) ⇝ 85/28 | note:84 gain:0.043999999999999886 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (3/1 → 193/64) ⇝ 13/4 | note:F2 gain:0.43999999999999884 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:75 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:79 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:80 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (193/64 → 97/32) ⇝ 85/28 | note:84 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 3/1 ⇜ (193/64 → 97/32) ⇝ 13/4 | note:F2 gain:0.5814213562373083 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 39/14 ⇜ (97/32 → 85/28) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 39/14 ⇜ (97/32 → 85/28) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/14 ⇜ (97/32 → 85/28) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 39/14 ⇜ (97/32 → 85/28) | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 3/1 ⇜ (97/32 → 195/64) ⇝ 13/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 3/1 ⇜ (195/64 → 49/16) ⇝ 13/4 | note:F2 gain:0.5814213562373115 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 3/1 ⇜ (49/16 → 197/64) ⇝ 13/4 | note:F2 gain:0.44000000000000333 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 3/1 ⇜ (197/64 → 99/32) ⇝ 13/4 | note:F2 gain:0.2985786437626932 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 3/1 ⇜ (99/32 → 199/64) ⇝ 13/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 3/1 ⇜ (199/64 → 25/8) ⇝ 13/4 | note:F2 gain:0.298578643762691 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 3/1 ⇜ (25/8 → 201/64) ⇝ 13/4 | note:F2 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (25/8 → 201/64) ⇝ 13/4 | note:F4 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (25/8 → 201/64) ⇝ 13/4 | note:Ab4 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 3/1 ⇜ (201/64 → 101/32) ⇝ 13/4 | note:F2 gain:0.5814213562373093 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 25/8 ⇜ (201/64 → 101/32) ⇝ 13/4 | note:F4 gain:0.5814213562373093 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/8 ⇜ (201/64 → 101/32) ⇝ 13/4 | note:Ab4 gain:0.5814213562373093 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 3/1 ⇜ (101/32 → 203/64) ⇝ 13/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 25/8 ⇜ (101/32 → 203/64) ⇝ 13/4 | note:F4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/8 ⇜ (101/32 → 203/64) ⇝ 13/4 | note:Ab4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 3/1 ⇜ (203/64 → 51/16) ⇝ 13/4 | note:F2 gain:0.5814213562373105 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 25/8 ⇜ (203/64 → 51/16) ⇝ 13/4 | note:F4 gain:0.5814213562373105 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/8 ⇜ (203/64 → 51/16) ⇝ 13/4 | note:Ab4 gain:0.5814213562373105 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 3/1 ⇜ (51/16 → 205/64) ⇝ 13/4 | note:F2 gain:0.440000000000002 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 25/8 ⇜ (51/16 → 205/64) ⇝ 13/4 | note:F4 gain:0.440000000000002 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/8 ⇜ (51/16 → 205/64) ⇝ 13/4 | note:Ab4 gain:0.440000000000002 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 3/1 ⇜ (205/64 → 103/32) ⇝ 13/4 | note:F2 gain:0.2985786437626922 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 25/8 ⇜ (205/64 → 103/32) ⇝ 13/4 | note:F4 gain:0.2985786437626922 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/8 ⇜ (205/64 → 103/32) ⇝ 13/4 | note:Ab4 gain:0.2985786437626922 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 3/1 ⇜ (103/32 → 207/64) ⇝ 13/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 25/8 ⇜ (103/32 → 207/64) ⇝ 13/4 | note:F4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/8 ⇜ (103/32 → 207/64) ⇝ 13/4 | note:Ab4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 3/1 ⇜ (207/64 → 13/4) | note:F2 gain:0.298578643762688 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 25/8 ⇜ (207/64 → 13/4) | note:F4 gain:0.298578643762688 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/8 ⇜ (207/64 → 13/4) | note:Ab4 gain:0.298578643762688 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (13/4 → 209/64) ⇝ 7/2 | note:Eb4 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (13/4 → 209/64) ⇝ 7/2 | note:G4 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (13/4 → 209/64) ⇝ 7/2 | note:Ab4 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (13/4 → 209/64) ⇝ 7/2 | note:C5 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:Eb4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:G4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:Ab4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (209/64 → 105/32) ⇝ 7/2 | note:C5 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (105/32 → 211/64) ⇝ 7/2 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:Eb4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:G4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:Ab4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (211/64 → 53/16) ⇝ 7/2 | note:C5 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:Eb4 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:G4 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:Ab4 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (53/16 → 213/64) ⇝ 7/2 | note:C5 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:Eb4 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:G4 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:Ab4 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (213/64 → 107/32) ⇝ 7/2 | note:C5 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (107/32 → 215/64) ⇝ 7/2 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:Eb4 gain:0.14928932188134447 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:G4 gain:0.14928932188134447 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:Ab4 gain:0.14928932188134447 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (215/64 → 27/8) ⇝ 7/2 | note:C5 gain:0.14928932188134447 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:Eb4 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:G4 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:Ab4 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (27/8 → 217/64) ⇝ 7/2 | note:C5 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:Eb4 gain:0.2907106781186536 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:G4 gain:0.2907106781186536 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:Ab4 gain:0.2907106781186536 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (217/64 → 109/32) ⇝ 7/2 | note:C5 gain:0.2907106781186536 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (109/32 → 219/64) ⇝ 7/2 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:Eb4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:G4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:Ab4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (219/64 → 55/16) ⇝ 7/2 | note:C5 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:Eb4 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:G4 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:Ab4 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (55/16 → 221/64) ⇝ 7/2 | note:C5 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:Eb4 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:G4 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:Ab4 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (221/64 → 111/32) ⇝ 7/2 | note:C5 gain:0.14928932188134517 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (111/32 → 223/64) ⇝ 7/2 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/4 ⇜ (223/64 → 7/2) | note:Eb4 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/4 ⇜ (223/64 → 7/2) | note:G4 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 13/4 ⇜ (223/64 → 7/2) | note:Ab4 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/4 ⇜ (223/64 → 7/2) | note:C5 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (7/2 → 225/64) ⇝ 29/8 | note:C5 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (7/2 → 225/64) ⇝ 29/8 | note:Eb5 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (7/2 → 225/64) ⇝ 15/4 | note:F2 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 7/2 ⇜ (225/64 → 113/32) ⇝ 29/8 | note:C5 gain:0.5814213562373082 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (225/64 → 113/32) ⇝ 29/8 | note:Eb5 gain:0.5814213562373082 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/2 ⇜ (225/64 → 113/32) ⇝ 15/4 | note:F2 gain:0.5814213562373082 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 7/2 ⇜ (113/32 → 227/64) ⇝ 29/8 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (113/32 → 227/64) ⇝ 29/8 | note:Eb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/2 ⇜ (113/32 → 227/64) ⇝ 15/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (99/28 → 227/64) ⇝ 53/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (99/28 → 227/64) ⇝ 53/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (99/28 → 227/64) ⇝ 53/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (99/28 → 227/64) ⇝ 53/14 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (227/64 → 57/16) ⇝ 29/8 | note:C5 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (227/64 → 57/16) ⇝ 29/8 | note:Eb5 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/2 ⇜ (227/64 → 57/16) ⇝ 15/4 | note:F2 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:75 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:79 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:80 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (227/64 → 57/16) ⇝ 53/14 | note:84 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (57/16 → 229/64) ⇝ 29/8 | note:C5 gain:0.4400000000000035 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (57/16 → 229/64) ⇝ 29/8 | note:Eb5 gain:0.4400000000000035 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/2 ⇜ (57/16 → 229/64) ⇝ 15/4 | note:F2 gain:0.4400000000000035 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:75 gain:0.04400000000000035 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:79 gain:0.04400000000000035 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:80 gain:0.04400000000000035 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (57/16 → 229/64) ⇝ 53/14 | note:84 gain:0.04400000000000035 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (229/64 → 115/32) ⇝ 29/8 | note:C5 gain:0.2985786437626934 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (229/64 → 115/32) ⇝ 29/8 | note:Eb5 gain:0.2985786437626934 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/2 ⇜ (229/64 → 115/32) ⇝ 15/4 | note:F2 gain:0.2985786437626934 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:75 gain:0.02985786437626934 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:79 gain:0.02985786437626934 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:80 gain:0.02985786437626934 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (229/64 → 115/32) ⇝ 53/14 | note:84 gain:0.02985786437626934 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (115/32 → 231/64) ⇝ 29/8 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (115/32 → 231/64) ⇝ 29/8 | note:Eb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/2 ⇜ (115/32 → 231/64) ⇝ 15/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (115/32 → 231/64) ⇝ 53/14 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (231/64 → 29/8) | note:C5 gain:0.2985786437626909 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (231/64 → 29/8) | note:Eb5 gain:0.2985786437626909 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/2 ⇜ (231/64 → 29/8) ⇝ 15/4 | note:F2 gain:0.2985786437626909 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:75 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:79 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:80 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (231/64 → 29/8) ⇝ 53/14 | note:84 gain:0.02985786437626909 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (29/8 → 233/64) ⇝ 15/4 | note:F2 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:75 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:79 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:80 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (29/8 → 233/64) ⇝ 53/14 | note:84 gain:0.04400000000000001 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (233/64 → 117/32) ⇝ 15/4 | note:F2 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:75 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:79 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:80 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (233/64 → 117/32) ⇝ 53/14 | note:84 gain:0.05814213562373091 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (117/32 → 235/64) ⇝ 15/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (117/32 → 235/64) ⇝ 53/14 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (235/64 → 59/16) ⇝ 15/4 | note:F2 gain:0.5814213562373107 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:75 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:79 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:80 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (235/64 → 59/16) ⇝ 53/14 | note:84 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (59/16 → 237/64) ⇝ 15/4 | note:F2 gain:0.44000000000000217 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:75 gain:0.04400000000000022 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:79 gain:0.04400000000000022 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:80 gain:0.04400000000000022 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (59/16 → 237/64) ⇝ 53/14 | note:84 gain:0.04400000000000022 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (237/64 → 119/32) ⇝ 15/4 | note:F2 gain:0.29857864376269244 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:75 gain:0.029857864376269246 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:79 gain:0.029857864376269246 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:80 gain:0.029857864376269246 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (237/64 → 119/32) ⇝ 53/14 | note:84 gain:0.029857864376269246 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (119/32 → 239/64) ⇝ 15/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (119/32 → 239/64) ⇝ 53/14 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (239/64 → 15/4) | note:F2 gain:0.2985786437626878 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:75 gain:0.029857864376268778 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:79 gain:0.029857864376268778 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:80 gain:0.029857864376268778 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (239/64 → 15/4) ⇝ 53/14 | note:84 gain:0.029857864376268778 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:75 gain:0.043999999999999574 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:79 gain:0.043999999999999574 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:80 gain:0.043999999999999574 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (15/4 → 241/64) ⇝ 53/14 | note:84 gain:0.043999999999999574 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (15/4 → 241/64) ⇝ 31/8 | note:C5 gain:0.43999999999999573 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (15/4 → 241/64) ⇝ 31/8 | note:Eb5 gain:0.43999999999999573 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (15/4 → 241/64) ⇝ 4/1 | note:Eb4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (15/4 → 241/64) ⇝ 4/1 | note:G4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (15/4 → 241/64) ⇝ 4/1 | note:Ab4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (15/4 → 241/64) ⇝ 4/1 | note:C5 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:75 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:79 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:80 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (241/64 → 121/32) ⇝ 53/14 | note:84 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 31/8 | note:C5 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 31/8 | note:Eb5 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:Eb4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:G4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:Ab4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (241/64 → 121/32) ⇝ 4/1 | note:C5 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 99/28 ⇜ (121/32 → 53/14) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 99/28 ⇜ (121/32 → 53/14) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 99/28 ⇜ (121/32 → 53/14) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 99/28 ⇜ (121/32 → 53/14) | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 31/8 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 31/8 | note:Eb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (121/32 → 243/64) ⇝ 4/1 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 31/8 | note:C5 gain:0.5814213562373096 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 31/8 | note:Eb5 gain:0.5814213562373096 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:Eb4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:G4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:Ab4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (243/64 → 61/16) ⇝ 4/1 | note:C5 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 31/8 | note:C5 gain:0.4400000000000008 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 31/8 | note:Eb5 gain:0.4400000000000008 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:Eb4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:G4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:Ab4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (61/16 → 245/64) ⇝ 4/1 | note:C5 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 31/8 | note:C5 gain:0.29857864376269144 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 31/8 | note:Eb5 gain:0.29857864376269144 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:Eb4 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:G4 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:Ab4 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (245/64 → 123/32) ⇝ 4/1 | note:C5 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 31/8 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 31/8 | note:Eb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (123/32 → 247/64) ⇝ 4/1 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (247/64 → 31/8) | note:C5 gain:0.2985786437626888 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (247/64 → 31/8) | note:Eb5 gain:0.2985786437626888 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:Eb4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:G4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:Ab4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (247/64 → 31/8) ⇝ 4/1 | note:C5 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:Eb4 gain:0.21999999999999853 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:G4 gain:0.21999999999999853 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:Ab4 gain:0.21999999999999853 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (31/8 → 249/64) ⇝ 4/1 | note:C5 gain:0.21999999999999853 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:Eb4 gain:0.29071067811865353 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:G4 gain:0.29071067811865353 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:Ab4 gain:0.29071067811865353 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (249/64 → 125/32) ⇝ 4/1 | note:C5 gain:0.29071067811865353 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (125/32 → 251/64) ⇝ 4/1 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:Eb4 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:G4 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:Ab4 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (251/64 → 63/16) ⇝ 4/1 | note:C5 gain:0.29071067811865436 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:Eb4 gain:0.21999999999999972 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:G4 gain:0.21999999999999972 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:Ab4 gain:0.21999999999999972 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (63/16 → 253/64) ⇝ 4/1 | note:C5 gain:0.21999999999999972 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:Eb4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:G4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:Ab4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (253/64 → 127/32) ⇝ 4/1 | note:C5 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (127/32 → 255/64) ⇝ 4/1 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/4 ⇜ (255/64 → 4/1) | note:Eb4 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 15/4 ⇜ (255/64 → 4/1) | note:G4 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 15/4 ⇜ (255/64 → 4/1) | note:Ab4 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 15/4 ⇜ (255/64 → 4/1) | note:C5 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (4/1 → 257/64) ⇝ 17/4 | note:G2 gain:0.43999999999999845 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 4/1 ⇜ (257/64 → 129/32) ⇝ 17/4 | note:G2 gain:0.5814213562373081 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 4/1 ⇜ (129/32 → 259/64) ⇝ 17/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (113/28 → 259/64) ⇝ 30/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (113/28 → 259/64) ⇝ 30/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (113/28 → 259/64) ⇝ 30/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (113/28 → 259/64) ⇝ 30/7 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 4/1 ⇜ (259/64 → 65/16) ⇝ 17/4 | note:G2 gain:0.5814213562373117 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:75 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:79 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:80 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (259/64 → 65/16) ⇝ 30/7 | note:84 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 4/1 ⇜ (65/16 → 261/64) ⇝ 17/4 | note:G2 gain:0.4400000000000038 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:75 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:79 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:80 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (65/16 → 261/64) ⇝ 30/7 | note:84 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 4/1 ⇜ (261/64 → 131/32) ⇝ 17/4 | note:G2 gain:0.2985786437626935 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:75 gain:0.02985786437626935 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:79 gain:0.02985786437626935 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:80 gain:0.02985786437626935 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (261/64 → 131/32) ⇝ 30/7 | note:84 gain:0.02985786437626935 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 4/1 ⇜ (131/32 → 263/64) ⇝ 17/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (131/32 → 263/64) ⇝ 30/7 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 4/1 ⇜ (263/64 → 33/8) ⇝ 17/4 | note:G2 gain:0.2985786437626907 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:75 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:79 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:80 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (263/64 → 33/8) ⇝ 30/7 | note:84 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 4/1 ⇜ (33/8 → 265/64) ⇝ 17/4 | note:G2 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:75 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:79 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:80 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (33/8 → 265/64) ⇝ 30/7 | note:84 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (33/8 → 265/64) ⇝ 17/4 | note:G4 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (33/8 → 265/64) ⇝ 17/4 | note:Bb4 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 4/1 ⇜ (265/64 → 133/32) ⇝ 17/4 | note:G2 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:75 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:79 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:80 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (265/64 → 133/32) ⇝ 30/7 | note:84 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 33/8 ⇜ (265/64 → 133/32) ⇝ 17/4 | note:G4 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 33/8 ⇜ (265/64 → 133/32) ⇝ 17/4 | note:Bb4 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 4/1 ⇜ (133/32 → 267/64) ⇝ 17/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (133/32 → 267/64) ⇝ 30/7 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 33/8 ⇜ (133/32 → 267/64) ⇝ 17/4 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 33/8 ⇜ (133/32 → 267/64) ⇝ 17/4 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 4/1 ⇜ (267/64 → 67/16) ⇝ 17/4 | note:G2 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:75 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:79 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:80 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (267/64 → 67/16) ⇝ 30/7 | note:84 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 33/8 ⇜ (267/64 → 67/16) ⇝ 17/4 | note:G4 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 33/8 ⇜ (267/64 → 67/16) ⇝ 17/4 | note:Bb4 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 4/1 ⇜ (67/16 → 269/64) ⇝ 17/4 | note:G2 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:75 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:79 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:80 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (67/16 → 269/64) ⇝ 30/7 | note:84 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 33/8 ⇜ (67/16 → 269/64) ⇝ 17/4 | note:G4 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 33/8 ⇜ (67/16 → 269/64) ⇝ 17/4 | note:Bb4 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 4/1 ⇜ (269/64 → 135/32) ⇝ 17/4 | note:G2 gain:0.2985786437626925 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:75 gain:0.02985786437626925 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:79 gain:0.02985786437626925 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:80 gain:0.02985786437626925 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (269/64 → 135/32) ⇝ 30/7 | note:84 gain:0.02985786437626925 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 33/8 ⇜ (269/64 → 135/32) ⇝ 17/4 | note:G4 gain:0.2985786437626925 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 33/8 ⇜ (269/64 → 135/32) ⇝ 17/4 | note:Bb4 gain:0.2985786437626925 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 4/1 ⇜ (135/32 → 271/64) ⇝ 17/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (135/32 → 271/64) ⇝ 30/7 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 33/8 ⇜ (135/32 → 271/64) ⇝ 17/4 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 33/8 ⇜ (135/32 → 271/64) ⇝ 17/4 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 4/1 ⇜ (271/64 → 17/4) | note:G2 gain:0.2985786437626877 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:75 gain:0.029857864376268774 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:79 gain:0.029857864376268774 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:80 gain:0.029857864376268774 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (271/64 → 17/4) ⇝ 30/7 | note:84 gain:0.029857864376268774 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 33/8 ⇜ (271/64 → 17/4) | note:G4 gain:0.2985786437626877 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 33/8 ⇜ (271/64 → 17/4) | note:Bb4 gain:0.2985786437626877 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:75 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:79 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:80 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (17/4 → 273/64) ⇝ 30/7 | note:84 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:75 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:79 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:80 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (273/64 → 137/32) ⇝ 30/7 | note:84 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 113/28 ⇜ (137/32 → 30/7) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 113/28 ⇜ (137/32 → 30/7) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 113/28 ⇜ (137/32 → 30/7) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 113/28 ⇜ (137/32 → 30/7) | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (9/2 → 289/64) ⇝ 37/8 | note:D5 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (9/2 → 289/64) ⇝ 37/8 | note:F5 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (9/2 → 289/64) ⇝ 19/4 | note:B3 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (9/2 → 289/64) ⇝ 19/4 | note:E4 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (9/2 → 289/64) ⇝ 19/4 | note:F4 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (9/2 → 289/64) ⇝ 19/4 | note:A4 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (9/2 → 289/64) ⇝ 19/4 | note:G2 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 37/8 | note:D5 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 37/8 | note:F5 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:B3 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:E4 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:F4 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:A4 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (289/64 → 145/32) ⇝ 19/4 | note:G2 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 37/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 37/8 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (145/32 → 291/64) ⇝ 19/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 37/8 | note:D5 gain:0.581421356237312 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 37/8 | note:F5 gain:0.581421356237312 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:B3 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:E4 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:F4 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:A4 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (291/64 → 73/16) ⇝ 19/4 | note:G2 gain:0.581421356237312 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 37/8 | note:D5 gain:0.44000000000000394 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 37/8 | note:F5 gain:0.44000000000000394 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:B3 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:E4 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:F4 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:A4 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (73/16 → 293/64) ⇝ 19/4 | note:G2 gain:0.44000000000000394 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 37/8 | note:D5 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 37/8 | note:F5 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:B3 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:E4 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:F4 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:A4 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (293/64 → 147/32) ⇝ 19/4 | note:G2 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 37/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 37/8 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (147/32 → 295/64) ⇝ 19/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (295/64 → 37/8) | note:D5 gain:0.2985786437626906 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (295/64 → 37/8) | note:F5 gain:0.2985786437626906 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:B3 gain:0.1492893218813453 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:E4 gain:0.1492893218813453 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:F4 gain:0.1492893218813453 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:A4 gain:0.1492893218813453 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (295/64 → 37/8) ⇝ 19/4 | note:G2 gain:0.2985786437626906 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:B3 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:E4 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:F4 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:A4 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (37/8 → 297/64) ⇝ 19/4 | note:G2 gain:0.4399999999999996 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:B3 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:E4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:F4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:A4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (297/64 → 149/32) ⇝ 19/4 | note:G2 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (149/32 → 299/64) ⇝ 19/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:B3 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:E4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:F4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:A4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (299/64 → 75/16) ⇝ 19/4 | note:G2 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:B3 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:E4 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:F4 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:A4 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (75/16 → 301/64) ⇝ 19/4 | note:G2 gain:0.44000000000000256 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:B3 gain:0.14928932188134633 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:E4 gain:0.14928932188134633 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:F4 gain:0.14928932188134633 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:A4 gain:0.14928932188134633 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (301/64 → 151/32) ⇝ 19/4 | note:G2 gain:0.29857864376269266 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (151/32 → 303/64) ⇝ 19/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/2 ⇜ (303/64 → 19/4) | note:B3 gain:0.14928932188134378 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 9/2 ⇜ (303/64 → 19/4) | note:E4 gain:0.14928932188134378 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 9/2 ⇜ (303/64 → 19/4) | note:F4 gain:0.14928932188134378 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (303/64 → 19/4) | note:A4 gain:0.14928932188134378 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (303/64 → 19/4) | note:G2 gain:0.29857864376268756 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (19/4 → 305/64) ⇝ 39/8 | note:G4 gain:0.4399999999999953 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (19/4 → 305/64) ⇝ 39/8 | note:Bb4 gain:0.4399999999999953 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 19/4 ⇜ (305/64 → 153/32) ⇝ 39/8 | note:G4 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/4 ⇜ (305/64 → 153/32) ⇝ 39/8 | note:Bb4 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 19/4 ⇜ (153/32 → 307/64) ⇝ 39/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/4 ⇜ (153/32 → 307/64) ⇝ 39/8 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (67/14 → 307/64) ⇝ 141/28 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (67/14 → 307/64) ⇝ 141/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (67/14 → 307/64) ⇝ 141/28 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (67/14 → 307/64) ⇝ 141/28 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 19/4 ⇜ (307/64 → 77/16) ⇝ 39/8 | note:G4 gain:0.58142135623731 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/4 ⇜ (307/64 → 77/16) ⇝ 39/8 | note:Bb4 gain:0.58142135623731 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:71 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:76 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:77 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (307/64 → 77/16) ⇝ 141/28 | note:81 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 19/4 ⇜ (77/16 → 309/64) ⇝ 39/8 | note:G4 gain:0.4400000000000011 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/4 ⇜ (77/16 → 309/64) ⇝ 39/8 | note:Bb4 gain:0.4400000000000011 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:71 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:76 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:77 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (77/16 → 309/64) ⇝ 141/28 | note:81 gain:0.044000000000000115 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 19/4 ⇜ (309/64 → 155/32) ⇝ 39/8 | note:G4 gain:0.2985786437626917 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/4 ⇜ (309/64 → 155/32) ⇝ 39/8 | note:Bb4 gain:0.2985786437626917 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:71 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:76 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:77 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (309/64 → 155/32) ⇝ 141/28 | note:81 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 19/4 ⇜ (155/32 → 311/64) ⇝ 39/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/4 ⇜ (155/32 → 311/64) ⇝ 39/8 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (155/32 → 311/64) ⇝ 141/28 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 19/4 ⇜ (311/64 → 39/8) | note:G4 gain:0.2985786437626885 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/4 ⇜ (311/64 → 39/8) | note:Bb4 gain:0.2985786437626885 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:71 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:76 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:77 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (311/64 → 39/8) ⇝ 141/28 | note:81 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:71 gain:0.04399999999999967 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:76 gain:0.04399999999999967 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:77 gain:0.04399999999999967 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (39/8 → 313/64) ⇝ 141/28 | note:81 gain:0.04399999999999967 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:71 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:76 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:77 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (313/64 → 157/32) ⇝ 141/28 | note:81 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (157/32 → 315/64) ⇝ 141/28 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:71 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:76 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:77 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (315/64 → 79/16) ⇝ 141/28 | note:81 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:71 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:76 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:77 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (79/16 → 317/64) ⇝ 141/28 | note:81 gain:0.043999999999999984 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:71 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:76 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:77 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (317/64 → 159/32) ⇝ 141/28 | note:81 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (159/32 → 319/64) ⇝ 141/28 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:71 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:76 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:77 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (319/64 → 5/1) ⇝ 141/28 | note:81 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:71 gain:0.04399999999999982 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:76 gain:0.04399999999999982 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:77 gain:0.04399999999999982 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (5/1 → 321/64) ⇝ 141/28 | note:81 gain:0.04399999999999982 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (5/1 → 321/64) ⇝ 21/4 | note:G2 gain:0.4399999999999981 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:71 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:76 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:77 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (321/64 → 161/32) ⇝ 141/28 | note:81 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 5/1 ⇜ (321/64 → 161/32) ⇝ 21/4 | note:G2 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 67/14 ⇜ (161/32 → 141/28) | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 67/14 ⇜ (161/32 → 141/28) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 67/14 ⇜ (161/32 → 141/28) | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 67/14 ⇜ (161/32 → 141/28) | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 5/1 ⇜ (161/32 → 323/64) ⇝ 21/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 5/1 ⇜ (323/64 → 81/16) ⇝ 21/4 | note:G2 gain:0.5814213562373121 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 5/1 ⇜ (81/16 → 325/64) ⇝ 21/4 | note:G2 gain:0.44000000000000417 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 5/1 ⇜ (325/64 → 163/32) ⇝ 21/4 | note:G2 gain:0.2985786437626938 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 5/1 ⇜ (163/32 → 327/64) ⇝ 21/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 5/1 ⇜ (327/64 → 41/8) ⇝ 21/4 | note:G2 gain:0.29857864376269044 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 5/1 ⇜ (41/8 → 329/64) ⇝ 21/4 | note:G2 gain:0.43999999999999373 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (41/8 → 329/64) ⇝ 21/4 | note:G4 gain:0.43999999999999373 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (41/8 → 329/64) ⇝ 21/4 | note:Bb4 gain:0.43999999999999373 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 ⇜ (329/64 → 165/32) ⇝ 21/4 | note:G2 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 41/8 ⇜ (329/64 → 165/32) ⇝ 21/4 | note:G4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 41/8 ⇜ (329/64 → 165/32) ⇝ 21/4 | note:Bb4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 ⇜ (165/32 → 331/64) ⇝ 21/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 41/8 ⇜ (165/32 → 331/64) ⇝ 21/4 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 41/8 ⇜ (165/32 → 331/64) ⇝ 21/4 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 ⇜ (331/64 → 83/16) ⇝ 21/4 | note:G2 gain:0.5814213562373111 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 41/8 ⇜ (331/64 → 83/16) ⇝ 21/4 | note:G4 gain:0.5814213562373111 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 41/8 ⇜ (331/64 → 83/16) ⇝ 21/4 | note:Bb4 gain:0.5814213562373111 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 ⇜ (83/16 → 333/64) ⇝ 21/4 | note:G2 gain:0.43999999999999706 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 41/8 ⇜ (83/16 → 333/64) ⇝ 21/4 | note:G4 gain:0.43999999999999706 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 41/8 ⇜ (83/16 → 333/64) ⇝ 21/4 | note:Bb4 gain:0.43999999999999706 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 ⇜ (333/64 → 167/32) ⇝ 21/4 | note:G2 gain:0.29857864376269283 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 41/8 ⇜ (333/64 → 167/32) ⇝ 21/4 | note:G4 gain:0.29857864376269283 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 41/8 ⇜ (333/64 → 167/32) ⇝ 21/4 | note:Bb4 gain:0.29857864376269283 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 ⇜ (167/32 → 335/64) ⇝ 21/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 41/8 ⇜ (167/32 → 335/64) ⇝ 21/4 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 41/8 ⇜ (167/32 → 335/64) ⇝ 21/4 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 ⇜ (335/64 → 21/4) | note:G2 gain:0.2985786437626874 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 41/8 ⇜ (335/64 → 21/4) | note:G4 gain:0.2985786437626874 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 41/8 ⇜ (335/64 → 21/4) | note:Bb4 gain:0.2985786437626874 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (21/4 → 337/64) ⇝ 11/2 | note:B3 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (21/4 → 337/64) ⇝ 11/2 | note:E4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (21/4 → 337/64) ⇝ 11/2 | note:F4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (21/4 → 337/64) ⇝ 11/2 | note:A4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:B3 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:E4 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:F4 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (337/64 → 169/32) ⇝ 11/2 | note:A4 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (169/32 → 339/64) ⇝ 11/2 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:B3 gain:0.29071067811865703 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:E4 gain:0.29071067811865703 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:F4 gain:0.29071067811865703 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (339/64 → 85/16) ⇝ 11/2 | note:A4 gain:0.29071067811865703 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:B3 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:E4 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:F4 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (85/16 → 341/64) ⇝ 11/2 | note:A4 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:B3 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:E4 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:F4 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (341/64 → 171/32) ⇝ 11/2 | note:A4 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (171/32 → 343/64) ⇝ 11/2 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:B3 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:E4 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:F4 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (343/64 → 43/8) ⇝ 11/2 | note:A4 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:B3 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:E4 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:F4 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (43/8 → 345/64) ⇝ 11/2 | note:A4 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:B3 gain:0.29071067811865536 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:E4 gain:0.29071067811865536 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:F4 gain:0.29071067811865536 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (345/64 → 173/32) ⇝ 11/2 | note:A4 gain:0.29071067811865536 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (173/32 → 347/64) ⇝ 11/2 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:B3 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:E4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:F4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (347/64 → 87/16) ⇝ 11/2 | note:A4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:B3 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:E4 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:F4 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (87/16 → 349/64) ⇝ 11/2 | note:A4 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:B3 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:E4 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:F4 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (349/64 → 175/32) ⇝ 11/2 | note:A4 gain:0.14928932188134544 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (175/32 → 351/64) ⇝ 11/2 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 21/4 ⇜ (351/64 → 11/2) | note:B3 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 21/4 ⇜ (351/64 → 11/2) | note:E4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 21/4 ⇜ (351/64 → 11/2) | note:F4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/4 ⇜ (351/64 → 11/2) | note:A4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (11/2 → 353/64) ⇝ 45/8 | note:D5 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (11/2 → 353/64) ⇝ 45/8 | note:F5 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (11/2 → 353/64) ⇝ 23/4 | note:G2 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 11/2 ⇜ (353/64 → 177/32) ⇝ 45/8 | note:D5 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/2 ⇜ (353/64 → 177/32) ⇝ 45/8 | note:F5 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (353/64 → 177/32) ⇝ 23/4 | note:G2 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 11/2 ⇜ (177/32 → 355/64) ⇝ 45/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/2 ⇜ (177/32 → 355/64) ⇝ 45/8 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (177/32 → 355/64) ⇝ 23/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (155/28 → 355/64) ⇝ 81/14 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (155/28 → 355/64) ⇝ 81/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (155/28 → 355/64) ⇝ 81/14 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (155/28 → 355/64) ⇝ 81/14 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (355/64 → 89/16) ⇝ 45/8 | note:D5 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/2 ⇜ (355/64 → 89/16) ⇝ 45/8 | note:F5 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (355/64 → 89/16) ⇝ 23/4 | note:G2 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:71 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:76 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:77 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (355/64 → 89/16) ⇝ 81/14 | note:81 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (89/16 → 357/64) ⇝ 45/8 | note:D5 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/2 ⇜ (89/16 → 357/64) ⇝ 45/8 | note:F5 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (89/16 → 357/64) ⇝ 23/4 | note:G2 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:71 gain:0.043999999999999866 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:76 gain:0.043999999999999866 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:77 gain:0.043999999999999866 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (89/16 → 357/64) ⇝ 81/14 | note:81 gain:0.043999999999999866 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (357/64 → 179/32) ⇝ 45/8 | note:D5 gain:0.29857864376269394 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/2 ⇜ (357/64 → 179/32) ⇝ 45/8 | note:F5 gain:0.29857864376269394 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (357/64 → 179/32) ⇝ 23/4 | note:G2 gain:0.29857864376269394 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:71 gain:0.029857864376269395 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:76 gain:0.029857864376269395 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:77 gain:0.029857864376269395 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (357/64 → 179/32) ⇝ 81/14 | note:81 gain:0.029857864376269395 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (179/32 → 359/64) ⇝ 45/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/2 ⇜ (179/32 → 359/64) ⇝ 45/8 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (179/32 → 359/64) ⇝ 23/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (179/32 → 359/64) ⇝ 81/14 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (359/64 → 45/8) | note:D5 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 11/2 ⇜ (359/64 → 45/8) | note:F5 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (359/64 → 45/8) ⇝ 23/4 | note:G2 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:71 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:76 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:77 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (359/64 → 45/8) ⇝ 81/14 | note:81 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (45/8 → 361/64) ⇝ 23/4 | note:G2 gain:0.4399999999999993 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:71 gain:0.04399999999999993 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:76 gain:0.04399999999999993 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:77 gain:0.04399999999999993 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (45/8 → 361/64) ⇝ 81/14 | note:81 gain:0.04399999999999993 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (361/64 → 181/32) ⇝ 23/4 | note:G2 gain:0.5814213562373046 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:71 gain:0.05814213562373047 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:76 gain:0.05814213562373047 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:77 gain:0.05814213562373047 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (361/64 → 181/32) ⇝ 81/14 | note:81 gain:0.05814213562373047 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (181/32 → 363/64) ⇝ 23/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (181/32 → 363/64) ⇝ 81/14 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (363/64 → 91/16) ⇝ 23/4 | note:G2 gain:0.5814213562373072 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:71 gain:0.05814213562373072 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:76 gain:0.05814213562373072 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:77 gain:0.05814213562373072 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (363/64 → 91/16) ⇝ 81/14 | note:81 gain:0.05814213562373072 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (91/16 → 365/64) ⇝ 23/4 | note:G2 gain:0.4400000000000029 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:71 gain:0.04400000000000029 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:76 gain:0.04400000000000029 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:77 gain:0.04400000000000029 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (91/16 → 365/64) ⇝ 81/14 | note:81 gain:0.04400000000000029 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (365/64 → 183/32) ⇝ 23/4 | note:G2 gain:0.29857864376268894 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:71 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:76 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:77 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (365/64 → 183/32) ⇝ 81/14 | note:81 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (183/32 → 367/64) ⇝ 23/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (183/32 → 367/64) ⇝ 81/14 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 11/2 ⇜ (367/64 → 23/4) | note:G2 gain:0.2985786437626913 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:71 gain:0.02985786437626913 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:76 gain:0.02985786437626913 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:77 gain:0.02985786437626913 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (367/64 → 23/4) ⇝ 81/14 | note:81 gain:0.02985786437626913 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:71 gain:0.04399999999999949 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:76 gain:0.04399999999999949 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:77 gain:0.04399999999999949 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (23/4 → 369/64) ⇝ 81/14 | note:81 gain:0.04399999999999949 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (23/4 → 369/64) ⇝ 47/8 | note:D5 gain:0.4399999999999949 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (23/4 → 369/64) ⇝ 47/8 | note:F5 gain:0.4399999999999949 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (23/4 → 369/64) ⇝ 6/1 | note:B3 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (23/4 → 369/64) ⇝ 6/1 | note:E4 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (23/4 → 369/64) ⇝ 6/1 | note:F4 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (23/4 → 369/64) ⇝ 6/1 | note:A4 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:71 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:76 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:77 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (369/64 → 185/32) ⇝ 81/14 | note:81 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 47/8 | note:D5 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 47/8 | note:F5 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:B3 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:E4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:F4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (369/64 → 185/32) ⇝ 6/1 | note:A4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 155/28 ⇜ (185/32 → 81/14) | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 155/28 ⇜ (185/32 → 81/14) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 155/28 ⇜ (185/32 → 81/14) | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 155/28 ⇜ (185/32 → 81/14) | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 47/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 47/8 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (185/32 → 371/64) ⇝ 6/1 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 47/8 | note:D5 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 47/8 | note:F5 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:B3 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:E4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:F4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (371/64 → 93/16) ⇝ 6/1 | note:A4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 47/8 | note:D5 gain:0.4400000000000073 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 47/8 | note:F5 gain:0.4400000000000073 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:B3 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:E4 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:F4 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (93/16 → 373/64) ⇝ 6/1 | note:A4 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 47/8 | note:D5 gain:0.298578643762692 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 47/8 | note:F5 gain:0.298578643762692 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:B3 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:E4 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:F4 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (373/64 → 187/32) ⇝ 6/1 | note:A4 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 47/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 47/8 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (187/32 → 375/64) ⇝ 6/1 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (375/64 → 47/8) | note:D5 gain:0.2985786437626882 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 23/4 ⇜ (375/64 → 47/8) | note:F5 gain:0.2985786437626882 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:B3 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:E4 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:F4 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (375/64 → 47/8) ⇝ 6/1 | note:A4 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:B3 gain:0.220000000000001 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:E4 gain:0.220000000000001 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:F4 gain:0.220000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (47/8 → 377/64) ⇝ 6/1 | note:A4 gain:0.220000000000001 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:B3 gain:0.2907106781186532 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:E4 gain:0.2907106781186532 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:F4 gain:0.2907106781186532 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (377/64 → 189/32) ⇝ 6/1 | note:A4 gain:0.2907106781186532 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (189/32 → 379/64) ⇝ 6/1 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:B3 gain:0.2907106781186567 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:E4 gain:0.2907106781186567 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:F4 gain:0.2907106781186567 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (379/64 → 95/16) ⇝ 6/1 | note:A4 gain:0.2907106781186567 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:B3 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:E4 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:F4 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (95/16 → 381/64) ⇝ 6/1 | note:A4 gain:0.2200000000000001 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:B3 gain:0.14928932188134753 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:E4 gain:0.14928932188134753 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:F4 gain:0.14928932188134753 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (381/64 → 191/32) ⇝ 6/1 | note:A4 gain:0.14928932188134753 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (191/32 → 383/64) ⇝ 6/1 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 23/4 ⇜ (383/64 → 6/1) | note:B3 gain:0.1492893218813426 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 23/4 ⇜ (383/64 → 6/1) | note:E4 gain:0.1492893218813426 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 23/4 ⇜ (383/64 → 6/1) | note:F4 gain:0.1492893218813426 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 23/4 ⇜ (383/64 → 6/1) | note:A4 gain:0.1492893218813426 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (6/1 → 385/64) ⇝ 25/4 | note:F#2 gain:0.43999999999999767 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 6/1 ⇜ (385/64 → 193/32) ⇝ 25/4 | note:F#2 gain:0.5814213562373115 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 6/1 ⇜ (193/32 → 387/64) ⇝ 25/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (169/28 → 387/64) ⇝ 44/7 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (169/28 → 387/64) ⇝ 44/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (169/28 → 387/64) ⇝ 44/7 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (169/28 → 387/64) ⇝ 44/7 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 6/1 ⇜ (387/64 → 97/16) ⇝ 25/4 | note:F#2 gain:0.5814213562373083 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:71 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:76 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:77 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (387/64 → 97/16) ⇝ 44/7 | note:81 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 6/1 ⇜ (97/16 → 389/64) ⇝ 25/4 | note:F#2 gain:0.4400000000000045 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:71 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:76 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:77 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (97/16 → 389/64) ⇝ 44/7 | note:81 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 6/1 ⇜ (389/64 → 195/32) ⇝ 25/4 | note:F#2 gain:0.29857864376269 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:71 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:76 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:77 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (389/64 → 195/32) ⇝ 44/7 | note:81 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 6/1 ⇜ (195/32 → 391/64) ⇝ 25/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (195/32 → 391/64) ⇝ 44/7 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 6/1 ⇜ (391/64 → 49/8) ⇝ 25/4 | note:F#2 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:71 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:76 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:77 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (391/64 → 49/8) ⇝ 44/7 | note:81 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 6/1 ⇜ (49/8 → 393/64) ⇝ 25/4 | note:F#2 gain:0.4399999999999933 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:71 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:76 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:77 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (49/8 → 393/64) ⇝ 44/7 | note:81 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (49/8 → 393/64) ⇝ 25/4 | note:F#4 gain:0.4399999999999933 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ (49/8 → 393/64) ⇝ 25/4 | note:A#4 gain:0.4399999999999933 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 6/1 ⇜ (393/64 → 197/32) ⇝ 25/4 | note:F#2 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:71 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:76 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:77 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (393/64 → 197/32) ⇝ 44/7 | note:81 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 49/8 ⇜ (393/64 → 197/32) ⇝ 25/4 | note:F#4 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 49/8 ⇜ (393/64 → 197/32) ⇝ 25/4 | note:A#4 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 6/1 ⇜ (197/32 → 395/64) ⇝ 25/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (197/32 → 395/64) ⇝ 44/7 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 49/8 ⇜ (197/32 → 395/64) ⇝ 25/4 | note:F#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 49/8 ⇜ (197/32 → 395/64) ⇝ 25/4 | note:A#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 6/1 ⇜ (395/64 → 99/16) ⇝ 25/4 | note:F#2 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:71 gain:0.05814213562373114 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:76 gain:0.05814213562373114 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:77 gain:0.05814213562373114 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (395/64 → 99/16) ⇝ 44/7 | note:81 gain:0.05814213562373114 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 49/8 ⇜ (395/64 → 99/16) ⇝ 25/4 | note:F#4 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 49/8 ⇜ (395/64 → 99/16) ⇝ 25/4 | note:A#4 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 6/1 ⇜ (99/16 → 397/64) ⇝ 25/4 | note:F#2 gain:0.4399999999999975 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:71 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:76 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:77 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (99/16 → 397/64) ⇝ 44/7 | note:81 gain:0.043999999999999755 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 49/8 ⇜ (99/16 → 397/64) ⇝ 25/4 | note:F#4 gain:0.4399999999999975 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 49/8 ⇜ (99/16 → 397/64) ⇝ 25/4 | note:A#4 gain:0.4399999999999975 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 6/1 ⇜ (397/64 → 199/32) ⇝ 25/4 | note:F#2 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:71 gain:0.029857864376269312 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:76 gain:0.029857864376269312 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:77 gain:0.029857864376269312 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (397/64 → 199/32) ⇝ 44/7 | note:81 gain:0.029857864376269312 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 49/8 ⇜ (397/64 → 199/32) ⇝ 25/4 | note:F#4 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 49/8 ⇜ (397/64 → 199/32) ⇝ 25/4 | note:A#4 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 6/1 ⇜ (199/32 → 399/64) ⇝ 25/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (199/32 → 399/64) ⇝ 44/7 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 49/8 ⇜ (199/32 → 399/64) ⇝ 25/4 | note:F#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 49/8 ⇜ (199/32 → 399/64) ⇝ 25/4 | note:A#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 6/1 ⇜ (399/64 → 25/4) | note:F#2 gain:0.2985786437626871 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:71 gain:0.029857864376268712 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:76 gain:0.029857864376268712 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:77 gain:0.029857864376268712 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (399/64 → 25/4) ⇝ 44/7 | note:81 gain:0.029857864376268712 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 49/8 ⇜ (399/64 → 25/4) | note:F#4 gain:0.2985786437626871 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 49/8 ⇜ (399/64 → 25/4) | note:A#4 gain:0.2985786437626871 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:71 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:76 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:77 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (25/4 → 401/64) ⇝ 44/7 | note:81 gain:0.04400000000000004 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:71 gain:0.058142135623730544 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:76 gain:0.058142135623730544 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:77 gain:0.058142135623730544 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (401/64 → 201/32) ⇝ 44/7 | note:81 gain:0.058142135623730544 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 169/28 ⇜ (201/32 → 44/7) | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 169/28 ⇜ (201/32 → 44/7) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 169/28 ⇜ (201/32 → 44/7) | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 169/28 ⇜ (201/32 → 44/7) | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (13/2 → 417/64) ⇝ 53/8 | note:C#5 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (13/2 → 417/64) ⇝ 53/8 | note:E5 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (13/2 → 417/64) ⇝ 27/4 | note:Bb3 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (13/2 → 417/64) ⇝ 27/4 | note:Eb4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (13/2 → 417/64) ⇝ 27/4 | note:E4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (13/2 → 417/64) ⇝ 27/4 | note:Ab4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (13/2 → 417/64) ⇝ 27/4 | note:F#2 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 53/8 | note:C#5 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 53/8 | note:E5 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:Bb3 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:Eb4 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:E4 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:Ab4 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (417/64 → 209/32) ⇝ 27/4 | note:F#2 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 53/8 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 53/8 | note:E5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (209/32 → 419/64) ⇝ 27/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 53/8 | note:C#5 gain:0.5814213562373125 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 53/8 | note:E5 gain:0.5814213562373125 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:Bb3 gain:0.29071067811865625 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:Eb4 gain:0.29071067811865625 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:E4 gain:0.29071067811865625 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:Ab4 gain:0.29071067811865625 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (419/64 → 105/16) ⇝ 27/4 | note:F#2 gain:0.5814213562373125 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 53/8 | note:C#5 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 53/8 | note:E5 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:Bb3 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:Eb4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:E4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:Ab4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (105/16 → 421/64) ⇝ 27/4 | note:F#2 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 53/8 | note:C#5 gain:0.2985786437626942 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 53/8 | note:E5 gain:0.2985786437626942 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:Bb3 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:Eb4 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:E4 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:Ab4 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (421/64 → 211/32) ⇝ 27/4 | note:F#2 gain:0.2985786437626942 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 53/8 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 53/8 | note:E5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (211/32 → 423/64) ⇝ 27/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (423/64 → 53/8) | note:C#5 gain:0.298578643762686 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 13/2 ⇜ (423/64 → 53/8) | note:E5 gain:0.298578643762686 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:Bb3 gain:0.149289321881343 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:Eb4 gain:0.149289321881343 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:E4 gain:0.149289321881343 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:Ab4 gain:0.149289321881343 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (423/64 → 53/8) ⇝ 27/4 | note:F#2 gain:0.298578643762686 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:Bb3 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:Eb4 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:E4 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:Ab4 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (53/8 → 425/64) ⇝ 27/4 | note:F#2 gain:0.43999999999999884 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:Bb3 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:Eb4 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:E4 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:Ab4 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (425/64 → 213/32) ⇝ 27/4 | note:F#2 gain:0.5814213562373043 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (213/32 → 427/64) ⇝ 27/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:Bb3 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:Eb4 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:E4 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:Ab4 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (427/64 → 107/16) ⇝ 27/4 | note:F#2 gain:0.5814213562373075 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:Bb3 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:Eb4 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:E4 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:Ab4 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (107/16 → 429/64) ⇝ 27/4 | note:F#2 gain:0.44000000000000333 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:Bb3 gain:0.1492893218813446 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:Eb4 gain:0.1492893218813446 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:E4 gain:0.1492893218813446 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:Ab4 gain:0.1492893218813446 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (429/64 → 215/32) ⇝ 27/4 | note:F#2 gain:0.2985786437626892 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (215/32 → 431/64) ⇝ 27/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 13/2 ⇜ (431/64 → 27/4) | note:Bb3 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 13/2 ⇜ (431/64 → 27/4) | note:Eb4 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (431/64 → 27/4) | note:E4 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 13/2 ⇜ (431/64 → 27/4) | note:Ab4 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 13/2 ⇜ (431/64 → 27/4) | note:F#2 gain:0.298578643762691 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (27/4 → 433/64) ⇝ 55/8 | note:F#4 gain:0.43999999999999456 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ (27/4 → 433/64) ⇝ 55/8 | note:A#4 gain:0.43999999999999456 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 27/4 ⇜ (433/64 → 217/32) ⇝ 55/8 | note:F#4 gain:0.5814213562373093 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 27/4 ⇜ (433/64 → 217/32) ⇝ 55/8 | note:A#4 gain:0.5814213562373093 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 27/4 ⇜ (217/32 → 435/64) ⇝ 55/8 | note:F#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 27/4 ⇜ (217/32 → 435/64) ⇝ 55/8 | note:A#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (95/14 → 435/64) ⇝ 197/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (95/14 → 435/64) ⇝ 197/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (95/14 → 435/64) ⇝ 197/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (95/14 → 435/64) ⇝ 197/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 27/4 ⇜ (435/64 → 109/16) ⇝ 55/8 | note:F#4 gain:0.5814213562373105 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 27/4 ⇜ (435/64 → 109/16) ⇝ 55/8 | note:A#4 gain:0.5814213562373105 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:70 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:75 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:76 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (435/64 → 109/16) ⇝ 197/28 | note:80 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 27/4 ⇜ (109/16 → 437/64) ⇝ 55/8 | note:F#4 gain:0.4400000000000077 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 27/4 ⇜ (109/16 → 437/64) ⇝ 55/8 | note:A#4 gain:0.4400000000000077 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:70 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:75 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:76 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (109/16 → 437/64) ⇝ 197/28 | note:80 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 27/4 ⇜ (437/64 → 219/32) ⇝ 55/8 | note:F#4 gain:0.2985786437626922 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 27/4 ⇜ (437/64 → 219/32) ⇝ 55/8 | note:A#4 gain:0.2985786437626922 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:70 gain:0.029857864376269222 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:75 gain:0.029857864376269222 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:76 gain:0.029857864376269222 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (437/64 → 219/32) ⇝ 197/28 | note:80 gain:0.029857864376269222 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 27/4 ⇜ (219/32 → 439/64) ⇝ 55/8 | note:F#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 27/4 ⇜ (219/32 → 439/64) ⇝ 55/8 | note:A#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (219/32 → 439/64) ⇝ 197/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 27/4 ⇜ (439/64 → 55/8) | note:F#4 gain:0.298578643762688 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 27/4 ⇜ (439/64 → 55/8) | note:A#4 gain:0.298578643762688 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:70 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:75 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:76 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (439/64 → 55/8) ⇝ 197/28 | note:80 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:70 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:75 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:76 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (55/8 → 441/64) ⇝ 197/28 | note:80 gain:0.04400000000000016 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:70 gain:0.058142135623730634 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:75 gain:0.058142135623730634 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:76 gain:0.058142135623730634 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (441/64 → 221/32) ⇝ 197/28 | note:80 gain:0.058142135623730634 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (221/32 → 443/64) ⇝ 197/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:70 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:75 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:76 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (443/64 → 111/16) ⇝ 197/28 | note:80 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:70 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:75 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:76 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (111/16 → 445/64) ⇝ 197/28 | note:80 gain:0.04400000000000007 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:70 gain:0.029857864376269534 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:75 gain:0.029857864376269534 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:76 gain:0.029857864376269534 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (445/64 → 223/32) ⇝ 197/28 | note:80 gain:0.029857864376269534 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (223/32 → 447/64) ⇝ 197/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:70 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:75 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:76 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (447/64 → 7/1) ⇝ 197/28 | note:80 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:70 gain:0.04399999999999973 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:75 gain:0.04399999999999973 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:76 gain:0.04399999999999973 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (7/1 → 449/64) ⇝ 197/28 | note:80 gain:0.04399999999999973 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (7/1 → 449/64) ⇝ 29/4 | note:F#2 gain:0.4399999999999972 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:70 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:75 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:76 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (449/64 → 225/32) ⇝ 197/28 | note:80 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 7/1 ⇜ (449/64 → 225/32) ⇝ 29/4 | note:F#2 gain:0.5814213562373113 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 95/14 ⇜ (225/32 → 197/28) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 95/14 ⇜ (225/32 → 197/28) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 95/14 ⇜ (225/32 → 197/28) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 95/14 ⇜ (225/32 → 197/28) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 7/1 ⇜ (225/32 → 451/64) ⇝ 29/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 7/1 ⇜ (451/64 → 113/16) ⇝ 29/4 | note:F#2 gain:0.5814213562373086 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 7/1 ⇜ (113/16 → 453/64) ⇝ 29/4 | note:F#2 gain:0.44000000000000483 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 7/1 ⇜ (453/64 → 227/32) ⇝ 29/4 | note:F#2 gain:0.29857864376269033 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 7/1 ⇜ (227/32 → 455/64) ⇝ 29/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 7/1 ⇜ (455/64 → 57/8) ⇝ 29/4 | note:F#2 gain:0.29857864376268994 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 7/1 ⇜ (57/8 → 457/64) ⇝ 29/4 | note:F#2 gain:0.43999999999999295 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (57/8 → 457/64) ⇝ 29/4 | note:F#4 gain:0.43999999999999295 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ (57/8 → 457/64) ⇝ 29/4 | note:A#4 gain:0.43999999999999295 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/1 ⇜ (457/64 → 229/32) ⇝ 29/4 | note:F#2 gain:0.5814213562373082 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 57/8 ⇜ (457/64 → 229/32) ⇝ 29/4 | note:F#4 gain:0.5814213562373082 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 57/8 ⇜ (457/64 → 229/32) ⇝ 29/4 | note:A#4 gain:0.5814213562373082 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/1 ⇜ (229/32 → 459/64) ⇝ 29/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 57/8 ⇜ (229/32 → 459/64) ⇝ 29/4 | note:F#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 57/8 ⇜ (229/32 → 459/64) ⇝ 29/4 | note:A#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/1 ⇜ (459/64 → 115/16) ⇝ 29/4 | note:F#2 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 57/8 ⇜ (459/64 → 115/16) ⇝ 29/4 | note:F#4 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 57/8 ⇜ (459/64 → 115/16) ⇝ 29/4 | note:A#4 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/1 ⇜ (115/16 → 461/64) ⇝ 29/4 | note:F#2 gain:0.43999999999999784 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 57/8 ⇜ (115/16 → 461/64) ⇝ 29/4 | note:F#4 gain:0.43999999999999784 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 57/8 ⇜ (115/16 → 461/64) ⇝ 29/4 | note:A#4 gain:0.43999999999999784 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/1 ⇜ (461/64 → 231/32) ⇝ 29/4 | note:F#2 gain:0.2985786437626934 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 57/8 ⇜ (461/64 → 231/32) ⇝ 29/4 | note:F#4 gain:0.2985786437626934 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 57/8 ⇜ (461/64 → 231/32) ⇝ 29/4 | note:A#4 gain:0.2985786437626934 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/1 ⇜ (231/32 → 463/64) ⇝ 29/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 57/8 ⇜ (231/32 → 463/64) ⇝ 29/4 | note:F#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 57/8 ⇜ (231/32 → 463/64) ⇝ 29/4 | note:A#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/1 ⇜ (463/64 → 29/4) | note:F#2 gain:0.2985786437626869 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 57/8 ⇜ (463/64 → 29/4) | note:F#4 gain:0.2985786437626869 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 57/8 ⇜ (463/64 → 29/4) | note:A#4 gain:0.2985786437626869 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (29/4 → 465/64) ⇝ 15/2 | note:Bb3 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (29/4 → 465/64) ⇝ 15/2 | note:Eb4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (29/4 → 465/64) ⇝ 15/2 | note:E4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (29/4 → 465/64) ⇝ 15/2 | note:Ab4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:Bb3 gain:0.2907106781186526 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:Eb4 gain:0.2907106781186526 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:E4 gain:0.2907106781186526 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (465/64 → 233/32) ⇝ 15/2 | note:Ab4 gain:0.2907106781186526 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (233/32 → 467/64) ⇝ 15/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:Bb3 gain:0.2907106781186573 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:Eb4 gain:0.2907106781186573 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:E4 gain:0.2907106781186573 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (467/64 → 117/16) ⇝ 15/2 | note:Ab4 gain:0.2907106781186573 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:Bb3 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:Eb4 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:E4 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (117/16 → 469/64) ⇝ 15/2 | note:Ab4 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:Bb3 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:Eb4 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:E4 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (469/64 → 235/32) ⇝ 15/2 | note:Ab4 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (235/32 → 471/64) ⇝ 15/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:Bb3 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:Eb4 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:E4 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (471/64 → 59/8) ⇝ 15/2 | note:Ab4 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:Bb3 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:Eb4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:E4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (59/8 → 473/64) ⇝ 15/2 | note:Ab4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:Bb3 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:Eb4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:E4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (473/64 → 237/32) ⇝ 15/2 | note:Ab4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (237/32 → 475/64) ⇝ 15/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:Bb3 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:Eb4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:E4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (475/64 → 119/16) ⇝ 15/2 | note:Ab4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:Bb3 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:Eb4 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:E4 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (119/16 → 477/64) ⇝ 15/2 | note:Ab4 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:Bb3 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:Eb4 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:E4 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (477/64 → 239/32) ⇝ 15/2 | note:Ab4 gain:0.14928932188134572 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (239/32 → 479/64) ⇝ 15/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/4 ⇜ (479/64 → 15/2) | note:Bb3 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/4 ⇜ (479/64 → 15/2) | note:Eb4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/4 ⇜ (479/64 → 15/2) | note:E4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/4 ⇜ (479/64 → 15/2) | note:Ab4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (15/2 → 481/64) ⇝ 61/8 | note:C#5 gain:0.43999999999999134 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (15/2 → 481/64) ⇝ 61/8 | note:E5 gain:0.43999999999999134 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (15/2 → 481/64) ⇝ 31/4 | note:F#2 gain:0.43999999999999134 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/2 ⇜ (481/64 → 241/32) ⇝ 61/8 | note:C#5 gain:0.5814213562373071 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 15/2 ⇜ (481/64 → 241/32) ⇝ 61/8 | note:E5 gain:0.5814213562373071 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/2 ⇜ (481/64 → 241/32) ⇝ 31/4 | note:F#2 gain:0.5814213562373071 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/2 ⇜ (241/32 → 483/64) ⇝ 61/8 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 15/2 ⇜ (241/32 → 483/64) ⇝ 61/8 | note:E5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/2 ⇜ (241/32 → 483/64) ⇝ 31/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (211/28 → 483/64) ⇝ 109/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (211/28 → 483/64) ⇝ 109/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (211/28 → 483/64) ⇝ 109/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (211/28 → 483/64) ⇝ 109/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (483/64 → 121/16) ⇝ 61/8 | note:C#5 gain:0.5814213562373127 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 15/2 ⇜ (483/64 → 121/16) ⇝ 61/8 | note:E5 gain:0.5814213562373127 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/2 ⇜ (483/64 → 121/16) ⇝ 31/4 | note:F#2 gain:0.5814213562373127 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:70 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:75 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:76 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (483/64 → 121/16) ⇝ 109/14 | note:80 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (121/16 → 485/64) ⇝ 61/8 | note:C#5 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 15/2 ⇜ (121/16 → 485/64) ⇝ 61/8 | note:E5 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/2 ⇜ (121/16 → 485/64) ⇝ 31/4 | note:F#2 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:70 gain:0.04399999999999995 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:75 gain:0.04399999999999995 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:76 gain:0.04399999999999995 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (121/16 → 485/64) ⇝ 109/14 | note:80 gain:0.04399999999999995 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (485/64 → 243/32) ⇝ 61/8 | note:C#5 gain:0.29857864376269444 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 15/2 ⇜ (485/64 → 243/32) ⇝ 61/8 | note:E5 gain:0.29857864376269444 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/2 ⇜ (485/64 → 243/32) ⇝ 31/4 | note:F#2 gain:0.29857864376269444 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:70 gain:0.029857864376269444 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:75 gain:0.029857864376269444 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:76 gain:0.029857864376269444 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (485/64 → 243/32) ⇝ 109/14 | note:80 gain:0.029857864376269444 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (243/32 → 487/64) ⇝ 61/8 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 15/2 ⇜ (243/32 → 487/64) ⇝ 61/8 | note:E5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/2 ⇜ (243/32 → 487/64) ⇝ 31/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (243/32 → 487/64) ⇝ 109/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (487/64 → 61/8) | note:C#5 gain:0.2985786437626858 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 15/2 ⇜ (487/64 → 61/8) | note:E5 gain:0.2985786437626858 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/2 ⇜ (487/64 → 61/8) ⇝ 31/4 | note:F#2 gain:0.2985786437626858 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:70 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:75 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:76 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (487/64 → 61/8) ⇝ 109/14 | note:80 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (61/8 → 489/64) ⇝ 31/4 | note:F#2 gain:0.43999999999999845 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:70 gain:0.043999999999999845 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:75 gain:0.043999999999999845 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:76 gain:0.043999999999999845 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (61/8 → 489/64) ⇝ 109/14 | note:80 gain:0.043999999999999845 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (489/64 → 245/32) ⇝ 31/4 | note:F#2 gain:0.581421356237304 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:70 gain:0.0581421356237304 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:75 gain:0.0581421356237304 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:76 gain:0.0581421356237304 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (489/64 → 245/32) ⇝ 109/14 | note:80 gain:0.0581421356237304 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (245/32 → 491/64) ⇝ 31/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (245/32 → 491/64) ⇝ 109/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (491/64 → 123/16) ⇝ 31/4 | note:F#2 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:70 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:75 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:76 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (491/64 → 123/16) ⇝ 109/14 | note:80 gain:0.05814213562373077 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (123/16 → 493/64) ⇝ 31/4 | note:F#2 gain:0.4400000000000038 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:70 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:75 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:76 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (123/16 → 493/64) ⇝ 109/14 | note:80 gain:0.04400000000000038 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (493/64 → 247/32) ⇝ 31/4 | note:F#2 gain:0.2985786437626895 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:70 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:75 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:76 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (493/64 → 247/32) ⇝ 109/14 | note:80 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (247/32 → 495/64) ⇝ 31/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (247/32 → 495/64) ⇝ 109/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/2 ⇜ (495/64 → 31/4) | note:F#2 gain:0.2985786437626907 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:70 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:75 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:76 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (495/64 → 31/4) ⇝ 109/14 | note:80 gain:0.029857864376269073 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:70 gain:0.043999999999999415 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:75 gain:0.043999999999999415 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:76 gain:0.043999999999999415 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (31/4 → 497/64) ⇝ 109/14 | note:80 gain:0.043999999999999415 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (31/4 → 497/64) ⇝ 63/8 | note:C#5 gain:0.4399999999999941 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (31/4 → 497/64) ⇝ 63/8 | note:E5 gain:0.4399999999999941 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (31/4 → 497/64) ⇝ 8/1 | note:Bb3 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (31/4 → 497/64) ⇝ 8/1 | note:Eb4 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (31/4 → 497/64) ⇝ 8/1 | note:E4 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (31/4 → 497/64) ⇝ 8/1 | note:Ab4 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:70 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:75 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:76 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (497/64 → 249/32) ⇝ 109/14 | note:80 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 63/8 | note:C#5 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 63/8 | note:E5 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:Bb3 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:Eb4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:E4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (497/64 → 249/32) ⇝ 8/1 | note:Ab4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 211/28 ⇜ (249/32 → 109/14) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 211/28 ⇜ (249/32 → 109/14) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 211/28 ⇜ (249/32 → 109/14) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 211/28 ⇜ (249/32 → 109/14) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 63/8 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 63/8 | note:E5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (249/32 → 499/64) ⇝ 8/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 63/8 | note:C#5 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 63/8 | note:E5 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:Bb3 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:Eb4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:E4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (499/64 → 125/16) ⇝ 8/1 | note:Ab4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 63/8 | note:C#5 gain:0.44000000000000805 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 63/8 | note:E5 gain:0.44000000000000805 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:Bb3 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:Eb4 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:E4 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (125/16 → 501/64) ⇝ 8/1 | note:Ab4 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 63/8 | note:C#5 gain:0.2985786437626925 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 63/8 | note:E5 gain:0.2985786437626925 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:Bb3 gain:0.14928932188134625 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:Eb4 gain:0.14928932188134625 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:E4 gain:0.14928932188134625 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (501/64 → 251/32) ⇝ 8/1 | note:Ab4 gain:0.14928932188134625 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 63/8 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 63/8 | note:E5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (251/32 → 503/64) ⇝ 8/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (503/64 → 63/8) | note:C#5 gain:0.2985786437626877 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/4 ⇜ (503/64 → 63/8) | note:E5 gain:0.2985786437626877 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:Bb3 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:Eb4 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:E4 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (503/64 → 63/8) ⇝ 8/1 | note:Ab4 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:Bb3 gain:0.2200000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:Eb4 gain:0.2200000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:E4 gain:0.2200000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (63/8 → 505/64) ⇝ 8/1 | note:Ab4 gain:0.2200000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:Bb3 gain:0.290710678118653 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:Eb4 gain:0.290710678118653 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:E4 gain:0.290710678118653 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (505/64 → 253/32) ⇝ 8/1 | note:Ab4 gain:0.290710678118653 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (253/32 → 507/64) ⇝ 8/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:Bb3 gain:0.290710678118657 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:Eb4 gain:0.290710678118657 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:E4 gain:0.290710678118657 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (507/64 → 127/16) ⇝ 8/1 | note:Ab4 gain:0.290710678118657 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:Bb3 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:Eb4 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:E4 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (127/16 → 509/64) ⇝ 8/1 | note:Ab4 gain:0.22000000000000047 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:Bb3 gain:0.1492893218813478 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:Eb4 gain:0.1492893218813478 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:E4 gain:0.1492893218813478 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (509/64 → 255/32) ⇝ 8/1 | note:Ab4 gain:0.1492893218813478 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (255/32 → 511/64) ⇝ 8/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 31/4 ⇜ (511/64 → 8/1) | note:Bb3 gain:0.14928932188134234 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 31/4 ⇜ (511/64 → 8/1) | note:Eb4 gain:0.14928932188134234 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 31/4 ⇜ (511/64 → 8/1) | note:E4 gain:0.14928932188134234 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 31/4 ⇜ (511/64 → 8/1) | note:Ab4 gain:0.14928932188134234 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (8/1 → 513/64) ⇝ 33/4 | note:C2 gain:0.43999999999999684 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 8/1 ⇜ (513/64 → 257/32) ⇝ 33/4 | note:C2 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 8/1 ⇜ (257/32 → 515/64) ⇝ 33/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (225/28 → 515/64) ⇝ 58/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (225/28 → 515/64) ⇝ 58/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (225/28 → 515/64) ⇝ 58/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (225/28 → 515/64) ⇝ 58/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 8/1 ⇜ (515/64 → 129/16) ⇝ 33/4 | note:C2 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:70 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:75 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:76 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (515/64 → 129/16) ⇝ 58/7 | note:80 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 8/1 ⇜ (129/16 → 517/64) ⇝ 33/4 | note:C2 gain:0.4400000000000053 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:70 gain:0.04400000000000053 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:75 gain:0.04400000000000053 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:76 gain:0.04400000000000053 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (129/16 → 517/64) ⇝ 58/7 | note:80 gain:0.04400000000000053 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 8/1 ⇜ (517/64 → 259/32) ⇝ 33/4 | note:C2 gain:0.2985786437626906 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:70 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:75 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:76 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (517/64 → 259/32) ⇝ 58/7 | note:80 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 8/1 ⇜ (259/32 → 519/64) ⇝ 33/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (259/32 → 519/64) ⇝ 58/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 8/1 ⇜ (519/64 → 65/8) ⇝ 33/4 | note:C2 gain:0.2985786437626896 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:70 gain:0.029857864376268962 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:75 gain:0.029857864376268962 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:76 gain:0.029857864376268962 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (519/64 → 65/8) ⇝ 58/7 | note:80 gain:0.029857864376268962 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 8/1 ⇜ (65/8 → 521/64) ⇝ 33/4 | note:C2 gain:0.4399999999999926 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:70 gain:0.04399999999999926 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:75 gain:0.04399999999999926 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:76 gain:0.04399999999999926 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (65/8 → 521/64) ⇝ 58/7 | note:80 gain:0.04399999999999926 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (65/8 → 521/64) ⇝ 33/4 | note:C4 gain:0.4399999999999926 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (65/8 → 521/64) ⇝ 33/4 | note:G4 gain:0.4399999999999926 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (65/8 → 521/64) ⇝ 33/4 | note:Bb4 gain:0.4399999999999926 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 8/1 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:C2 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:70 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:75 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:76 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (521/64 → 261/32) ⇝ 58/7 | note:80 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 65/8 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:C4 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 65/8 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:G4 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 65/8 ⇜ (521/64 → 261/32) ⇝ 33/4 | note:Bb4 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 8/1 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (261/32 → 523/64) ⇝ 58/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 65/8 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:C4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 65/8 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 65/8 ⇜ (261/32 → 523/64) ⇝ 33/4 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 8/1 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:C2 gain:0.581421356237312 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:70 gain:0.058142135623731196 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:75 gain:0.058142135623731196 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:76 gain:0.058142135623731196 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (523/64 → 131/16) ⇝ 58/7 | note:80 gain:0.058142135623731196 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 65/8 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:C4 gain:0.581421356237312 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 65/8 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:G4 gain:0.581421356237312 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 65/8 ⇜ (523/64 → 131/16) ⇝ 33/4 | note:Bb4 gain:0.581421356237312 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 8/1 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:C2 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:70 gain:0.04399999999999983 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:75 gain:0.04399999999999983 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:76 gain:0.04399999999999983 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (131/16 → 525/64) ⇝ 58/7 | note:80 gain:0.04399999999999983 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 65/8 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:C4 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 65/8 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:G4 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 65/8 ⇜ (131/16 → 525/64) ⇝ 33/4 | note:Bb4 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 8/1 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:C2 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:70 gain:0.029857864376269368 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:75 gain:0.029857864376269368 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:76 gain:0.029857864376269368 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (525/64 → 263/32) ⇝ 58/7 | note:80 gain:0.029857864376269368 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 65/8 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:C4 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 65/8 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:G4 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 65/8 ⇜ (525/64 → 263/32) ⇝ 33/4 | note:Bb4 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 8/1 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (263/32 → 527/64) ⇝ 58/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 65/8 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:C4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 65/8 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 65/8 ⇜ (263/32 → 527/64) ⇝ 33/4 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 8/1 ⇜ (527/64 → 33/4) | note:C2 gain:0.29857864376268656 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:70 gain:0.029857864376268656 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:75 gain:0.029857864376268656 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:76 gain:0.029857864376268656 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (527/64 → 33/4) ⇝ 58/7 | note:80 gain:0.029857864376268656 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 65/8 ⇜ (527/64 → 33/4) | note:C4 gain:0.29857864376268656 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 65/8 ⇜ (527/64 → 33/4) | note:G4 gain:0.29857864376268656 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 65/8 ⇜ (527/64 → 33/4) | note:Bb4 gain:0.29857864376268656 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:70 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:75 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:76 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (33/4 → 529/64) ⇝ 58/7 | note:80 gain:0.04399999999999996 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:70 gain:0.05814213562373049 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:75 gain:0.05814213562373049 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:76 gain:0.05814213562373049 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (529/64 → 265/32) ⇝ 58/7 | note:80 gain:0.05814213562373049 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 225/28 ⇜ (265/32 → 58/7) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 225/28 ⇜ (265/32 → 58/7) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 225/28 ⇜ (265/32 → 58/7) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 225/28 ⇜ (265/32 → 58/7) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (17/2 → 545/64) ⇝ 69/8 | note:G4 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (17/2 → 545/64) ⇝ 69/8 | note:D5 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (17/2 → 545/64) ⇝ 69/8 | note:F5 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (17/2 → 545/64) ⇝ 35/4 | note:Bb3 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (17/2 → 545/64) ⇝ 35/4 | note:D4 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (17/2 → 545/64) ⇝ 35/4 | note:Eb4 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (17/2 → 545/64) ⇝ 35/4 | note:G4 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (17/2 → 545/64) ⇝ 35/4 | note:C2 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 69/8 | note:G4 gain:0.5814213562373068 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 69/8 | note:D5 gain:0.5814213562373068 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 69/8 | note:F5 gain:0.5814213562373068 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:Bb3 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:D4 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:Eb4 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:G4 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (545/64 → 273/32) ⇝ 35/4 | note:C2 gain:0.5814213562373068 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 69/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 69/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 69/8 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (273/32 → 547/64) ⇝ 35/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 69/8 | note:G4 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 69/8 | note:D5 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 69/8 | note:F5 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:Bb3 gain:0.29071067811865653 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:D4 gain:0.29071067811865653 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:Eb4 gain:0.29071067811865653 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:G4 gain:0.29071067811865653 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (547/64 → 137/16) ⇝ 35/4 | note:C2 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 69/8 | note:G4 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 69/8 | note:D5 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 69/8 | note:F5 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:Bb3 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:D4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:Eb4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:G4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (137/16 → 549/64) ⇝ 35/4 | note:C2 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 69/8 | note:G4 gain:0.2985786437626947 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 69/8 | note:D5 gain:0.2985786437626947 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 69/8 | note:F5 gain:0.2985786437626947 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:Bb3 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:D4 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:Eb4 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:G4 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (549/64 → 275/32) ⇝ 35/4 | note:C2 gain:0.2985786437626947 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 69/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 69/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 69/8 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (275/32 → 551/64) ⇝ 35/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) | note:G4 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) | note:D5 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) | note:F5 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:Bb3 gain:0.14928932188134275 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:D4 gain:0.14928932188134275 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:Eb4 gain:0.14928932188134275 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:G4 gain:0.14928932188134275 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (551/64 → 69/8) ⇝ 35/4 | note:C2 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:Bb3 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:D4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:Eb4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:G4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (69/8 → 553/64) ⇝ 35/4 | note:C2 gain:0.4399999999999981 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:Bb3 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:D4 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:Eb4 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:G4 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (553/64 → 277/32) ⇝ 35/4 | note:C2 gain:0.5814213562373037 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (277/32 → 555/64) ⇝ 35/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:Bb3 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:D4 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:Eb4 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:G4 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (555/64 → 139/16) ⇝ 35/4 | note:C2 gain:0.5814213562373081 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:Bb3 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:D4 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:Eb4 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:G4 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (139/16 → 557/64) ⇝ 35/4 | note:C2 gain:0.44000000000000417 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:Bb3 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:D4 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:Eb4 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:G4 gain:0.1492893218813449 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (557/64 → 279/32) ⇝ 35/4 | note:C2 gain:0.2985786437626898 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (279/32 → 559/64) ⇝ 35/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 17/2 ⇜ (559/64 → 35/4) | note:Bb3 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 17/2 ⇜ (559/64 → 35/4) | note:D4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (559/64 → 35/4) | note:Eb4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 17/2 ⇜ (559/64 → 35/4) | note:G4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (559/64 → 35/4) | note:C2 gain:0.29857864376269044 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (35/4 → 561/64) ⇝ 71/8 | note:C4 gain:0.43999999999999373 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (35/4 → 561/64) ⇝ 71/8 | note:G4 gain:0.43999999999999373 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (35/4 → 561/64) ⇝ 71/8 | note:Bb4 gain:0.43999999999999373 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 35/4 ⇜ (561/64 → 281/32) ⇝ 71/8 | note:C4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/4 ⇜ (561/64 → 281/32) ⇝ 71/8 | note:G4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 35/4 ⇜ (561/64 → 281/32) ⇝ 71/8 | note:Bb4 gain:0.5814213562373087 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 35/4 ⇜ (281/32 → 563/64) ⇝ 71/8 | note:C4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/4 ⇜ (281/32 → 563/64) ⇝ 71/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 35/4 ⇜ (281/32 → 563/64) ⇝ 71/8 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (123/14 → 563/64) ⇝ 253/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (123/14 → 563/64) ⇝ 253/28 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (123/14 → 563/64) ⇝ 253/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (123/14 → 563/64) ⇝ 253/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 35/4 ⇜ (563/64 → 141/16) ⇝ 71/8 | note:C4 gain:0.5814213562373111 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/4 ⇜ (563/64 → 141/16) ⇝ 71/8 | note:G4 gain:0.5814213562373111 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 35/4 ⇜ (563/64 → 141/16) ⇝ 71/8 | note:Bb4 gain:0.5814213562373111 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:70 gain:0.058142135623731106 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:74 gain:0.058142135623731106 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:75 gain:0.058142135623731106 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (563/64 → 141/16) ⇝ 253/28 | note:79 gain:0.058142135623731106 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 35/4 ⇜ (141/16 → 565/64) ⇝ 71/8 | note:C4 gain:0.4400000000000084 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/4 ⇜ (141/16 → 565/64) ⇝ 71/8 | note:G4 gain:0.4400000000000084 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 35/4 ⇜ (141/16 → 565/64) ⇝ 71/8 | note:Bb4 gain:0.4400000000000084 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:70 gain:0.044000000000000844 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:74 gain:0.044000000000000844 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:75 gain:0.044000000000000844 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (141/16 → 565/64) ⇝ 253/28 | note:79 gain:0.044000000000000844 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 35/4 ⇜ (565/64 → 283/32) ⇝ 71/8 | note:C4 gain:0.29857864376269283 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/4 ⇜ (565/64 → 283/32) ⇝ 71/8 | note:G4 gain:0.29857864376269283 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 35/4 ⇜ (565/64 → 283/32) ⇝ 71/8 | note:Bb4 gain:0.29857864376269283 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:70 gain:0.029857864376269284 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:74 gain:0.029857864376269284 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:75 gain:0.029857864376269284 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (565/64 → 283/32) ⇝ 253/28 | note:79 gain:0.029857864376269284 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 35/4 ⇜ (283/32 → 567/64) ⇝ 71/8 | note:C4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/4 ⇜ (283/32 → 567/64) ⇝ 71/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 35/4 ⇜ (283/32 → 567/64) ⇝ 71/8 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (283/32 → 567/64) ⇝ 253/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 35/4 ⇜ (567/64 → 71/8) | note:C4 gain:0.2985786437626874 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/4 ⇜ (567/64 → 71/8) | note:G4 gain:0.2985786437626874 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 35/4 ⇜ (567/64 → 71/8) | note:Bb4 gain:0.2985786437626874 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:70 gain:0.02985786437626874 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:74 gain:0.02985786437626874 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:75 gain:0.02985786437626874 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (567/64 → 71/8) ⇝ 253/28 | note:79 gain:0.02985786437626874 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:70 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:74 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:75 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (71/8 → 569/64) ⇝ 253/28 | note:79 gain:0.04400000000000008 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:70 gain:0.05814213562373058 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:74 gain:0.05814213562373058 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:75 gain:0.05814213562373058 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (569/64 → 285/32) ⇝ 253/28 | note:79 gain:0.05814213562373058 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (285/32 → 571/64) ⇝ 253/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:70 gain:0.05814213562373141 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:74 gain:0.05814213562373141 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:75 gain:0.05814213562373141 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (571/64 → 143/16) ⇝ 253/28 | note:79 gain:0.05814213562373141 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:70 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:74 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:75 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (143/16 → 573/64) ⇝ 253/28 | note:79 gain:0.04400000000000014 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:70 gain:0.02985786437626959 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:74 gain:0.02985786437626959 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:75 gain:0.02985786437626959 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (573/64 → 287/32) ⇝ 253/28 | note:79 gain:0.02985786437626959 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (287/32 → 575/64) ⇝ 253/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:70 gain:0.029857864376268434 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:74 gain:0.029857864376268434 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:75 gain:0.029857864376268434 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (575/64 → 9/1) ⇝ 253/28 | note:79 gain:0.029857864376268434 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:70 gain:0.04399999999999965 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:74 gain:0.04399999999999965 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:75 gain:0.04399999999999965 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (9/1 → 577/64) ⇝ 253/28 | note:79 gain:0.04399999999999965 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (9/1 → 577/64) ⇝ 37/4 | note:C2 gain:0.4399999999999965 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:70 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:74 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:75 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (577/64 → 289/32) ⇝ 253/28 | note:79 gain:0.05814213562373108 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 9/1 ⇜ (577/64 → 289/32) ⇝ 37/4 | note:C2 gain:0.5814213562373107 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 123/14 ⇜ (289/32 → 253/28) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 123/14 ⇜ (289/32 → 253/28) | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 123/14 ⇜ (289/32 → 253/28) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 123/14 ⇜ (289/32 → 253/28) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 9/1 ⇜ (289/32 → 579/64) ⇝ 37/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/1 ⇜ (579/64 → 145/16) ⇝ 37/4 | note:C2 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/1 ⇜ (145/16 → 581/64) ⇝ 37/4 | note:C2 gain:0.4400000000000057 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/1 ⇜ (581/64 → 291/32) ⇝ 37/4 | note:C2 gain:0.2985786437626909 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/1 ⇜ (291/32 → 583/64) ⇝ 37/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/1 ⇜ (583/64 → 73/8) ⇝ 37/4 | note:C2 gain:0.29857864376268933 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 9/1 ⇜ (73/8 → 585/64) ⇝ 37/4 | note:C2 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (73/8 → 585/64) ⇝ 37/4 | note:C4 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (73/8 → 585/64) ⇝ 37/4 | note:G4 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (73/8 → 585/64) ⇝ 37/4 | note:Bb4 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 9/1 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:C2 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 73/8 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:C4 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 73/8 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:G4 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 73/8 ⇜ (585/64 → 293/32) ⇝ 37/4 | note:Bb4 gain:0.5814213562373077 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 9/1 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 73/8 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:C4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 73/8 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 73/8 ⇜ (293/32 → 587/64) ⇝ 37/4 | note:Bb4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 9/1 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:C2 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 73/8 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:C4 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 73/8 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:G4 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 73/8 ⇜ (587/64 → 147/16) ⇝ 37/4 | note:Bb4 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 9/1 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:C2 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 73/8 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:C4 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 73/8 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:G4 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 73/8 ⇜ (147/16 → 589/64) ⇝ 37/4 | note:Bb4 gain:0.4399999999999986 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 9/1 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:C2 gain:0.29857864376269394 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 73/8 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:C4 gain:0.29857864376269394 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 73/8 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:G4 gain:0.29857864376269394 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 73/8 ⇜ (589/64 → 295/32) ⇝ 37/4 | note:Bb4 gain:0.29857864376269394 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 9/1 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 73/8 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:C4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 73/8 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 73/8 ⇜ (295/32 → 591/64) ⇝ 37/4 | note:Bb4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 9/1 ⇜ (591/64 → 37/4) | note:C2 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 73/8 ⇜ (591/64 → 37/4) | note:C4 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 73/8 ⇜ (591/64 → 37/4) | note:G4 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 73/8 ⇜ (591/64 → 37/4) | note:Bb4 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (37/4 → 593/64) ⇝ 19/2 | note:Bb3 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (37/4 → 593/64) ⇝ 19/2 | note:D4 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (37/4 → 593/64) ⇝ 19/2 | note:Eb4 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (37/4 → 593/64) ⇝ 19/2 | note:G4 gain:0.21999999999999964 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:Bb3 gain:0.2907106781186523 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:D4 gain:0.2907106781186523 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:Eb4 gain:0.2907106781186523 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (593/64 → 297/32) ⇝ 19/2 | note:G4 gain:0.2907106781186523 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (297/32 → 595/64) ⇝ 19/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:Bb3 gain:0.29071067811865764 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:D4 gain:0.29071067811865764 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:Eb4 gain:0.29071067811865764 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (595/64 → 149/16) ⇝ 19/2 | note:G4 gain:0.29071067811865764 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:Bb3 gain:0.22000000000000144 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:D4 gain:0.22000000000000144 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:Eb4 gain:0.22000000000000144 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (149/16 → 597/64) ⇝ 19/2 | note:G4 gain:0.22000000000000144 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:Bb3 gain:0.14928932188134847 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:D4 gain:0.14928932188134847 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:Eb4 gain:0.14928932188134847 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (597/64 → 299/32) ⇝ 19/2 | note:G4 gain:0.14928932188134847 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (299/32 → 599/64) ⇝ 19/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:Bb3 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:D4 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:Eb4 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (599/64 → 75/8) ⇝ 19/2 | note:G4 gain:0.14928932188134564 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:Bb3 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:D4 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:Eb4 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (75/8 → 601/64) ⇝ 19/2 | note:G4 gain:0.21999999999999745 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:Bb3 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:D4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:Eb4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (601/64 → 301/32) ⇝ 19/2 | note:G4 gain:0.29071067811865475 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (301/32 → 603/64) ⇝ 19/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:Bb3 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:D4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:Eb4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (603/64 → 151/16) ⇝ 19/2 | note:G4 gain:0.2907106781186551 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:Bb3 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:D4 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:Eb4 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (151/16 → 605/64) ⇝ 19/2 | note:G4 gain:0.22000000000000364 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:Bb3 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:D4 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:Eb4 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (605/64 → 303/32) ⇝ 19/2 | note:G4 gain:0.149289321881346 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (303/32 → 607/64) ⇝ 19/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 37/4 ⇜ (607/64 → 19/2) | note:Bb3 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 37/4 ⇜ (607/64 → 19/2) | note:D4 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 37/4 ⇜ (607/64 → 19/2) | note:Eb4 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 37/4 ⇜ (607/64 → 19/2) | note:G4 gain:0.1492893218813441 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (19/2 → 609/64) ⇝ 77/8 | note:G4 gain:0.4399999999999906 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (19/2 → 609/64) ⇝ 77/8 | note:D5 gain:0.4399999999999906 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (19/2 → 609/64) ⇝ 77/8 | note:F5 gain:0.4399999999999906 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (19/2 → 609/64) ⇝ 39/4 | note:C2 gain:0.4399999999999906 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 77/8 | note:G4 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 77/8 | note:D5 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 77/8 | note:F5 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (609/64 → 305/32) ⇝ 39/4 | note:C2 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 77/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 77/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 77/8 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (305/32 → 611/64) ⇝ 39/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (267/28 → 611/64) ⇝ 137/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (267/28 → 611/64) ⇝ 137/14 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (267/28 → 611/64) ⇝ 137/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (267/28 → 611/64) ⇝ 137/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 77/8 | note:G4 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 77/8 | note:D5 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 77/8 | note:F5 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (611/64 → 153/16) ⇝ 39/4 | note:C2 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:70 gain:0.05814213562373134 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:74 gain:0.05814213562373134 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:75 gain:0.05814213562373134 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (611/64 → 153/16) ⇝ 137/14 | note:79 gain:0.05814213562373134 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 77/8 | note:G4 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 77/8 | note:D5 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 77/8 | note:F5 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (153/16 → 613/64) ⇝ 39/4 | note:C2 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:70 gain:0.044000000000000025 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:74 gain:0.044000000000000025 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:75 gain:0.044000000000000025 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (153/16 → 613/64) ⇝ 137/14 | note:79 gain:0.044000000000000025 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 77/8 | note:G4 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 77/8 | note:D5 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 77/8 | note:F5 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (613/64 → 307/32) ⇝ 39/4 | note:C2 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:70 gain:0.029857864376269506 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:74 gain:0.029857864376269506 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:75 gain:0.029857864376269506 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (613/64 → 307/32) ⇝ 137/14 | note:79 gain:0.029857864376269506 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 77/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 77/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 77/8 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (307/32 → 615/64) ⇝ 39/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (307/32 → 615/64) ⇝ 137/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (615/64 → 77/8) | note:G4 gain:0.2985786437626852 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 19/2 ⇜ (615/64 → 77/8) | note:D5 gain:0.2985786437626852 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 19/2 ⇜ (615/64 → 77/8) | note:F5 gain:0.2985786437626852 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (615/64 → 77/8) ⇝ 39/4 | note:C2 gain:0.2985786437626852 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:70 gain:0.029857864376268525 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:74 gain:0.029857864376268525 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:75 gain:0.029857864376268525 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (615/64 → 77/8) ⇝ 137/14 | note:79 gain:0.029857864376268525 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (77/8 → 617/64) ⇝ 39/4 | note:C2 gain:0.43999999999999767 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:70 gain:0.04399999999999977 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:74 gain:0.04399999999999977 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:75 gain:0.04399999999999977 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (77/8 → 617/64) ⇝ 137/14 | note:79 gain:0.04399999999999977 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (617/64 → 309/32) ⇝ 39/4 | note:C2 gain:0.5814213562373034 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:70 gain:0.05814213562373034 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:74 gain:0.05814213562373034 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:75 gain:0.05814213562373034 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (617/64 → 309/32) ⇝ 137/14 | note:79 gain:0.05814213562373034 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (309/32 → 619/64) ⇝ 39/4 | note:C2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (309/32 → 619/64) ⇝ 137/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (619/64 → 155/16) ⇝ 39/4 | note:C2 gain:0.5814213562373083 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:70 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:74 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:75 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (619/64 → 155/16) ⇝ 137/14 | note:79 gain:0.05814213562373083 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (155/16 → 621/64) ⇝ 39/4 | note:C2 gain:0.4400000000000045 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:70 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:74 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:75 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (155/16 → 621/64) ⇝ 137/14 | note:79 gain:0.044000000000000455 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (621/64 → 311/32) ⇝ 39/4 | note:C2 gain:0.29857864376269 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:70 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:74 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:75 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (621/64 → 311/32) ⇝ 137/14 | note:79 gain:0.029857864376269 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (311/32 → 623/64) ⇝ 39/4 | note:C2 gain:0.24 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (311/32 → 623/64) ⇝ 137/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (623/64 → 39/4) | note:C2 gain:0.2985786437626902 clip:1 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:70 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:74 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:75 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (623/64 → 39/4) ⇝ 137/14 | note:79 gain:0.029857864376269024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:70 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:74 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:75 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (39/4 → 625/64) ⇝ 137/14 | note:79 gain:0.04399999999999933 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (39/4 → 625/64) ⇝ 79/8 | note:G4 gain:0.4399999999999933 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (39/4 → 625/64) ⇝ 79/8 | note:D5 gain:0.4399999999999933 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (39/4 → 625/64) ⇝ 79/8 | note:F5 gain:0.4399999999999933 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (39/4 → 625/64) ⇝ 10/1 | note:Bb3 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (39/4 → 625/64) ⇝ 10/1 | note:D4 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (39/4 → 625/64) ⇝ 10/1 | note:Eb4 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (39/4 → 625/64) ⇝ 10/1 | note:G4 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:70 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:74 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:75 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (625/64 → 313/32) ⇝ 137/14 | note:79 gain:0.05814213562373084 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 79/8 | note:G4 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 79/8 | note:D5 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 79/8 | note:F5 gain:0.5814213562373084 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:Bb3 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:D4 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:Eb4 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (625/64 → 313/32) ⇝ 10/1 | note:G4 gain:0.2907106781186542 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 267/28 ⇜ (313/32 → 137/14) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 267/28 ⇜ (313/32 → 137/14) | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 267/28 ⇜ (313/32 → 137/14) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 267/28 ⇜ (313/32 → 137/14) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 79/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 79/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 79/8 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (313/32 → 627/64) ⇝ 10/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 79/8 | note:G4 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 79/8 | note:D5 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 79/8 | note:F5 gain:0.5814213562373114 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:Bb3 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:D4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:Eb4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (627/64 → 157/16) ⇝ 10/1 | note:G4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 79/8 | note:G4 gain:0.44000000000000883 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 79/8 | note:D5 gain:0.44000000000000883 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 79/8 | note:F5 gain:0.44000000000000883 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:Bb3 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:D4 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:Eb4 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (157/16 → 629/64) ⇝ 10/1 | note:G4 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 79/8 | note:G4 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 79/8 | note:D5 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 79/8 | note:F5 gain:0.2985786437626931 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:Bb3 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:D4 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:Eb4 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (629/64 → 315/32) ⇝ 10/1 | note:G4 gain:0.14928932188134655 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 79/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 79/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 79/8 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (315/32 → 631/64) ⇝ 10/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (631/64 → 79/8) | note:G4 gain:0.2985786437626871 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (631/64 → 79/8) | note:D5 gain:0.2985786437626871 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 39/4 ⇜ (631/64 → 79/8) | note:F5 gain:0.2985786437626871 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:Bb3 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:D4 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:Eb4 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (631/64 → 79/8) ⇝ 10/1 | note:G4 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:Bb3 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:D4 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:Eb4 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (79/8 → 633/64) ⇝ 10/1 | note:G4 gain:0.2200000000000002 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:Bb3 gain:0.2907106781186527 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:D4 gain:0.2907106781186527 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:Eb4 gain:0.2907106781186527 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (633/64 → 317/32) ⇝ 10/1 | note:G4 gain:0.2907106781186527 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:D4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (317/32 → 635/64) ⇝ 10/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:Bb3 gain:0.2907106781186572 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:D4 gain:0.2907106781186572 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:Eb4 gain:0.2907106781186572 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (635/64 → 159/16) ⇝ 10/1 | note:G4 gain:0.2907106781186572 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:Bb3 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:D4 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:Eb4 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (159/16 → 637/64) ⇝ 10/1 | note:G4 gain:0.22000000000000092 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:Bb3 gain:0.14928932188134808 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:D4 gain:0.14928932188134808 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:Eb4 gain:0.14928932188134808 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (637/64 → 319/32) ⇝ 10/1 | note:G4 gain:0.14928932188134808 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:D4 gain:0.12 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (319/32 → 639/64) ⇝ 10/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 39/4 ⇜ (639/64 → 10/1) | note:Bb3 gain:0.14928932188134203 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 39/4 ⇜ (639/64 → 10/1) | note:D4 gain:0.14928932188134203 clip:1 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 39/4 ⇜ (639/64 → 10/1) | note:Eb4 gain:0.14928932188134203 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 39/4 ⇜ (639/64 → 10/1) | note:G4 gain:0.14928932188134203 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (10/1 → 641/64) ⇝ 41/4 | note:F2 gain:0.43999999999999617 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 10/1 ⇜ (641/64 → 321/32) ⇝ 41/4 | note:F2 gain:0.5814213562373104 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 10/1 ⇜ (321/32 → 643/64) ⇝ 41/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (281/28 → 643/64) ⇝ 72/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (281/28 → 643/64) ⇝ 72/7 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (281/28 → 643/64) ⇝ 72/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (281/28 → 643/64) ⇝ 72/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 10/1 ⇜ (643/64 → 161/16) ⇝ 41/4 | note:F2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:70 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:74 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:75 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (643/64 → 161/16) ⇝ 72/7 | note:79 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 10/1 ⇜ (161/16 → 645/64) ⇝ 41/4 | note:F2 gain:0.4400000000000061 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:70 gain:0.044000000000000615 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:74 gain:0.044000000000000615 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:75 gain:0.044000000000000615 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (161/16 → 645/64) ⇝ 72/7 | note:79 gain:0.044000000000000615 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 10/1 ⇜ (645/64 → 323/32) ⇝ 41/4 | note:F2 gain:0.29857864376269116 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:70 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:74 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:75 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (645/64 → 323/32) ⇝ 72/7 | note:79 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 10/1 ⇜ (323/32 → 647/64) ⇝ 41/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (323/32 → 647/64) ⇝ 72/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 10/1 ⇜ (647/64 → 81/8) ⇝ 41/4 | note:F2 gain:0.2985786437626891 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:70 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:74 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:75 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (647/64 → 81/8) ⇝ 72/7 | note:79 gain:0.029857864376268913 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 10/1 ⇜ (81/8 → 649/64) ⇝ 41/4 | note:F2 gain:0.4399999999999918 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:70 gain:0.04399999999999918 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:74 gain:0.04399999999999918 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:75 gain:0.04399999999999918 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (81/8 → 649/64) ⇝ 72/7 | note:79 gain:0.04399999999999918 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (81/8 → 649/64) ⇝ 41/4 | note:F4 gain:0.4399999999999918 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (81/8 → 649/64) ⇝ 41/4 | note:C5 gain:0.4399999999999918 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (81/8 → 649/64) ⇝ 41/4 | note:Eb5 gain:0.4399999999999918 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 10/1 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:F2 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:70 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:74 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:75 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (649/64 → 325/32) ⇝ 72/7 | note:79 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 81/8 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:F4 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 81/8 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:C5 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 81/8 ⇜ (649/64 → 325/32) ⇝ 41/4 | note:Eb5 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 10/1 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (325/32 → 651/64) ⇝ 72/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 81/8 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:F4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 81/8 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 81/8 ⇜ (325/32 → 651/64) ⇝ 41/4 | note:Eb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 10/1 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:F2 gain:0.5814213562373125 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:70 gain:0.05814213562373125 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:74 gain:0.05814213562373125 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:75 gain:0.05814213562373125 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (651/64 → 163/16) ⇝ 72/7 | note:79 gain:0.05814213562373125 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 81/8 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:F4 gain:0.5814213562373125 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 81/8 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:C5 gain:0.5814213562373125 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 81/8 ⇜ (651/64 → 163/16) ⇝ 41/4 | note:Eb5 gain:0.5814213562373125 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 10/1 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:F2 gain:0.4400000000000104 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:70 gain:0.04400000000000104 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:74 gain:0.04400000000000104 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:75 gain:0.04400000000000104 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (163/16 → 653/64) ⇝ 72/7 | note:79 gain:0.04400000000000104 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 81/8 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:F4 gain:0.4400000000000104 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 81/8 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:C5 gain:0.4400000000000104 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 81/8 ⇜ (163/16 → 653/64) ⇝ 41/4 | note:Eb5 gain:0.4400000000000104 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 10/1 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:F2 gain:0.29857864376268617 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:70 gain:0.02985786437626862 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:74 gain:0.02985786437626862 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:75 gain:0.02985786437626862 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (653/64 → 327/32) ⇝ 72/7 | note:79 gain:0.02985786437626862 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 81/8 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:F4 gain:0.29857864376268617 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 81/8 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:C5 gain:0.29857864376268617 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 81/8 ⇜ (653/64 → 327/32) ⇝ 41/4 | note:Eb5 gain:0.29857864376268617 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 10/1 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:74 gain:0.024 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (327/32 → 655/64) ⇝ 72/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 81/8 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:F4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 81/8 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 81/8 ⇜ (327/32 → 655/64) ⇝ 41/4 | note:Eb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 10/1 ⇜ (655/64 → 41/4) | note:F2 gain:0.298578643762686 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:70 gain:0.0298578643762686 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:74 gain:0.0298578643762686 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:75 gain:0.0298578643762686 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (655/64 → 41/4) ⇝ 72/7 | note:79 gain:0.0298578643762686 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 81/8 ⇜ (655/64 → 41/4) | note:F4 gain:0.298578643762686 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 81/8 ⇜ (655/64 → 41/4) | note:C5 gain:0.298578643762686 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 81/8 ⇜ (655/64 → 41/4) | note:Eb5 gain:0.298578643762686 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:70 gain:0.04399999999999875 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:74 gain:0.04399999999999875 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:75 gain:0.04399999999999875 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (41/4 → 657/64) ⇝ 72/7 | note:79 gain:0.04399999999999875 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:70 gain:0.05814213562373123 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:74 gain:0.05814213562373123 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:75 gain:0.05814213562373123 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (657/64 → 329/32) ⇝ 72/7 | note:79 gain:0.05814213562373123 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 281/28 ⇜ (329/32 → 72/7) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 281/28 ⇜ (329/32 → 72/7) | note:74 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 281/28 ⇜ (329/32 → 72/7) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 281/28 ⇜ (329/32 → 72/7) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (21/2 → 673/64) ⇝ 85/8 | note:C5 gain:0.44000000000000156 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (21/2 → 673/64) ⇝ 85/8 | note:G5 gain:0.44000000000000156 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (21/2 → 673/64) ⇝ 85/8 | note:Bb5 gain:0.44000000000000156 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ (21/2 → 673/64) ⇝ 43/4 | note:Eb4 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (21/2 → 673/64) ⇝ 43/4 | note:G4 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (21/2 → 673/64) ⇝ 43/4 | note:Ab4 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (21/2 → 673/64) ⇝ 43/4 | note:C5 gain:0.22000000000000078 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (21/2 → 673/64) ⇝ 43/4 | note:F2 gain:0.44000000000000156 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 85/8 | note:C5 gain:0.5814213562373063 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 85/8 | note:G5 gain:0.5814213562373063 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 85/8 | note:Bb5 gain:0.5814213562373063 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:Eb4 gain:0.29071067811865314 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:G4 gain:0.29071067811865314 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:Ab4 gain:0.29071067811865314 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:C5 gain:0.29071067811865314 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (673/64 → 337/32) ⇝ 43/4 | note:F2 gain:0.5814213562373063 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 85/8 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 85/8 | note:G5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 85/8 | note:Bb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (337/32 → 675/64) ⇝ 43/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 85/8 | note:C5 gain:0.5814213562373055 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 85/8 | note:G5 gain:0.5814213562373055 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 85/8 | note:Bb5 gain:0.5814213562373055 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:Eb4 gain:0.29071067811865275 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:G4 gain:0.29071067811865275 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:Ab4 gain:0.29071067811865275 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:C5 gain:0.29071067811865275 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (675/64 → 169/16) ⇝ 43/4 | note:F2 gain:0.5814213562373055 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 85/8 | note:C5 gain:0.4400000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 85/8 | note:G5 gain:0.4400000000000006 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 85/8 | note:Bb5 gain:0.4400000000000006 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:Eb4 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:G4 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:Ab4 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:C5 gain:0.2200000000000003 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (169/16 → 677/64) ⇝ 43/4 | note:F2 gain:0.4400000000000006 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 85/8 | note:C5 gain:0.29857864376269533 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 85/8 | note:G5 gain:0.29857864376269533 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 85/8 | note:Bb5 gain:0.29857864376269533 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:Eb4 gain:0.14928932188134766 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:G4 gain:0.14928932188134766 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:Ab4 gain:0.14928932188134766 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:C5 gain:0.14928932188134766 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (677/64 → 339/32) ⇝ 43/4 | note:F2 gain:0.29857864376269533 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 85/8 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 85/8 | note:G5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 85/8 | note:Bb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (339/32 → 679/64) ⇝ 43/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) | note:C5 gain:0.29857864376269294 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) | note:G5 gain:0.29857864376269294 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) | note:Bb5 gain:0.29857864376269294 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:Eb4 gain:0.14928932188134647 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:G4 gain:0.14928932188134647 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:Ab4 gain:0.14928932188134647 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:C5 gain:0.14928932188134647 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (679/64 → 85/8) ⇝ 43/4 | note:F2 gain:0.29857864376269294 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:Eb4 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:G4 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:Ab4 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:C5 gain:0.2199999999999986 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (85/8 → 681/64) ⇝ 43/4 | note:F2 gain:0.4399999999999972 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:Eb4 gain:0.29071067811865164 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:G4 gain:0.29071067811865164 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:Ab4 gain:0.29071067811865164 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:C5 gain:0.29071067811865164 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (681/64 → 341/32) ⇝ 43/4 | note:F2 gain:0.5814213562373033 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (341/32 → 683/64) ⇝ 43/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:Eb4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:G4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:Ab4 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:C5 gain:0.2907106781186543 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (683/64 → 171/16) ⇝ 43/4 | note:F2 gain:0.5814213562373086 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:Eb4 gain:0.22000000000000242 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:G4 gain:0.22000000000000242 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:Ab4 gain:0.22000000000000242 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:C5 gain:0.22000000000000242 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (171/16 → 685/64) ⇝ 43/4 | note:F2 gain:0.44000000000000483 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:Eb4 gain:0.1492893218813492 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:G4 gain:0.1492893218813492 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:Ab4 gain:0.1492893218813492 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:C5 gain:0.1492893218813492 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (685/64 → 343/32) ⇝ 43/4 | note:F2 gain:0.2985786437626984 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (343/32 → 687/64) ⇝ 43/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 21/2 ⇜ (687/64 → 43/4) | note:Eb4 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (687/64 → 43/4) | note:G4 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (687/64 → 43/4) | note:Ab4 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 21/2 ⇜ (687/64 → 43/4) | note:C5 gain:0.14928932188134497 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 21/2 ⇜ (687/64 → 43/4) | note:F2 gain:0.29857864376268994 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (43/4 → 689/64) ⇝ 87/8 | note:F4 gain:0.43999999999999295 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (43/4 → 689/64) ⇝ 87/8 | note:C5 gain:0.43999999999999295 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (43/4 → 689/64) ⇝ 87/8 | note:Eb5 gain:0.43999999999999295 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/4 ⇜ (689/64 → 345/32) ⇝ 87/8 | note:F4 gain:0.5814213562373002 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/4 ⇜ (689/64 → 345/32) ⇝ 87/8 | note:C5 gain:0.5814213562373002 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 43/4 ⇜ (689/64 → 345/32) ⇝ 87/8 | note:Eb5 gain:0.5814213562373002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 43/4 ⇜ (345/32 → 691/64) ⇝ 87/8 | note:F4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/4 ⇜ (345/32 → 691/64) ⇝ 87/8 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 43/4 ⇜ (345/32 → 691/64) ⇝ 87/8 | note:Eb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (151/14 → 691/64) ⇝ 309/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (151/14 → 691/64) ⇝ 309/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (151/14 → 691/64) ⇝ 309/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (151/14 → 691/64) ⇝ 309/28 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 43/4 ⇜ (691/64 → 173/16) ⇝ 87/8 | note:F4 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/4 ⇜ (691/64 → 173/16) ⇝ 87/8 | note:C5 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 43/4 ⇜ (691/64 → 173/16) ⇝ 87/8 | note:Eb5 gain:0.5814213562373116 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:75 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:79 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:80 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (691/64 → 173/16) ⇝ 309/28 | note:84 gain:0.05814213562373116 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 43/4 ⇜ (173/16 → 693/64) ⇝ 87/8 | note:F4 gain:0.4400000000000092 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/4 ⇜ (173/16 → 693/64) ⇝ 87/8 | note:C5 gain:0.4400000000000092 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 43/4 ⇜ (173/16 → 693/64) ⇝ 87/8 | note:Eb5 gain:0.4400000000000092 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:75 gain:0.04400000000000093 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:79 gain:0.04400000000000093 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:80 gain:0.04400000000000093 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (173/16 → 693/64) ⇝ 309/28 | note:84 gain:0.04400000000000093 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 43/4 ⇜ (693/64 → 347/32) ⇝ 87/8 | note:F4 gain:0.2985786437627014 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/4 ⇜ (693/64 → 347/32) ⇝ 87/8 | note:C5 gain:0.2985786437627014 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 43/4 ⇜ (693/64 → 347/32) ⇝ 87/8 | note:Eb5 gain:0.2985786437627014 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:75 gain:0.029857864376270138 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:79 gain:0.029857864376270138 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:80 gain:0.029857864376270138 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (693/64 → 347/32) ⇝ 309/28 | note:84 gain:0.029857864376270138 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 43/4 ⇜ (347/32 → 695/64) ⇝ 87/8 | note:F4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/4 ⇜ (347/32 → 695/64) ⇝ 87/8 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 43/4 ⇜ (347/32 → 695/64) ⇝ 87/8 | note:Eb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (347/32 → 695/64) ⇝ 309/28 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 43/4 ⇜ (695/64 → 87/8) | note:F4 gain:0.2985786437626869 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/4 ⇜ (695/64 → 87/8) | note:C5 gain:0.2985786437626869 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 43/4 ⇜ (695/64 → 87/8) | note:Eb5 gain:0.2985786437626869 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:75 gain:0.02985786437626869 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:79 gain:0.02985786437626869 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:80 gain:0.02985786437626869 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (695/64 → 87/8) ⇝ 309/28 | note:84 gain:0.02985786437626869 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:75 gain:0.04399999999999887 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:79 gain:0.04399999999999887 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:80 gain:0.04399999999999887 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (87/8 → 697/64) ⇝ 309/28 | note:84 gain:0.04399999999999887 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:75 gain:0.05814213562373132 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:79 gain:0.05814213562373132 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:80 gain:0.05814213562373132 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (697/64 → 349/32) ⇝ 309/28 | note:84 gain:0.05814213562373132 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (349/32 → 699/64) ⇝ 309/28 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:75 gain:0.05814213562373147 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:79 gain:0.05814213562373147 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:80 gain:0.05814213562373147 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (699/64 → 175/16) ⇝ 309/28 | note:84 gain:0.05814213562373147 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:75 gain:0.04400000000000136 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:79 gain:0.04400000000000136 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:80 gain:0.04400000000000136 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (175/16 → 701/64) ⇝ 309/28 | note:84 gain:0.04400000000000136 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:75 gain:0.02985786437626884 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:79 gain:0.02985786437626884 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:80 gain:0.02985786437626884 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (701/64 → 351/32) ⇝ 309/28 | note:84 gain:0.02985786437626884 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (351/32 → 703/64) ⇝ 309/28 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:75 gain:0.02985786437626838 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:79 gain:0.02985786437626838 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:80 gain:0.02985786437626838 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (703/64 → 11/1) ⇝ 309/28 | note:84 gain:0.02985786437626838 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:75 gain:0.043999999999998436 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:79 gain:0.043999999999998436 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:80 gain:0.043999999999998436 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (11/1 → 705/64) ⇝ 309/28 | note:84 gain:0.043999999999998436 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (11/1 → 705/64) ⇝ 45/4 | note:F2 gain:0.43999999999998435 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:75 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:79 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:80 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (705/64 → 353/32) ⇝ 309/28 | note:84 gain:0.05814213562373102 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 11/1 ⇜ (705/64 → 353/32) ⇝ 45/4 | note:F2 gain:0.5814213562373102 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 151/14 ⇜ (353/32 → 309/28) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 151/14 ⇜ (353/32 → 309/28) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 151/14 ⇜ (353/32 → 309/28) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 151/14 ⇜ (353/32 → 309/28) | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 11/1 ⇜ (353/32 → 707/64) ⇝ 45/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 11/1 ⇜ (707/64 → 177/16) ⇝ 45/4 | note:F2 gain:0.5814213562373177 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 11/1 ⇜ (177/16 → 709/64) ⇝ 45/4 | note:F2 gain:0.43999999999999506 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 11/1 ⇜ (709/64 → 355/32) ⇝ 45/4 | note:F2 gain:0.29857864376269144 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 11/1 ⇜ (355/32 → 711/64) ⇝ 45/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 11/1 ⇜ (711/64 → 89/8) ⇝ 45/4 | note:F2 gain:0.2985786437626808 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 11/1 ⇜ (89/8 → 713/64) ⇝ 45/4 | note:F2 gain:0.4400000000000027 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (89/8 → 713/64) ⇝ 45/4 | note:F4 gain:0.4400000000000027 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (89/8 → 713/64) ⇝ 45/4 | note:C5 gain:0.4400000000000027 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (89/8 → 713/64) ⇝ 45/4 | note:Eb5 gain:0.4400000000000027 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:F2 gain:0.5814213562373071 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 89/8 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:F4 gain:0.5814213562373071 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 89/8 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:C5 gain:0.5814213562373071 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 89/8 ⇜ (713/64 → 357/32) ⇝ 45/4 | note:Eb5 gain:0.5814213562373071 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 89/8 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:F4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 89/8 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 89/8 ⇜ (357/32 → 715/64) ⇝ 45/4 | note:Eb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:F2 gain:0.5814213562373046 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 89/8 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:F4 gain:0.5814213562373046 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 89/8 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:C5 gain:0.5814213562373046 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 89/8 ⇜ (715/64 → 179/16) ⇝ 45/4 | note:Eb5 gain:0.5814213562373046 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:F2 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 89/8 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:F4 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 89/8 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:C5 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 89/8 ⇜ (179/16 → 717/64) ⇝ 45/4 | note:Eb5 gain:0.43999999999999945 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:F2 gain:0.29857864376269444 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 89/8 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:F4 gain:0.29857864376269444 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 89/8 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:C5 gain:0.29857864376269444 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 89/8 ⇜ (717/64 → 359/32) ⇝ 45/4 | note:Eb5 gain:0.29857864376269444 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 89/8 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:F4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 89/8 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 89/8 ⇜ (359/32 → 719/64) ⇝ 45/4 | note:Eb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (719/64 → 45/4) | note:F2 gain:0.2985786437626938 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 89/8 ⇜ (719/64 → 45/4) | note:F4 gain:0.2985786437626938 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 89/8 ⇜ (719/64 → 45/4) | note:C5 gain:0.2985786437626938 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 89/8 ⇜ (719/64 → 45/4) | note:Eb5 gain:0.2985786437626938 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (45/4 → 721/64) ⇝ 23/2 | note:Eb4 gain:0.21999999999999922 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (45/4 → 721/64) ⇝ 23/2 | note:G4 gain:0.21999999999999922 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (45/4 → 721/64) ⇝ 23/2 | note:Ab4 gain:0.21999999999999922 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (45/4 → 721/64) ⇝ 23/2 | note:C5 gain:0.21999999999999922 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:Eb4 gain:0.290710678118652 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:G4 gain:0.290710678118652 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:Ab4 gain:0.290710678118652 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (721/64 → 361/32) ⇝ 23/2 | note:C5 gain:0.290710678118652 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (361/32 → 723/64) ⇝ 23/2 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:Eb4 gain:0.29071067811865386 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:G4 gain:0.29071067811865386 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:Ab4 gain:0.29071067811865386 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (723/64 → 181/16) ⇝ 23/2 | note:C5 gain:0.29071067811865386 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:Eb4 gain:0.2200000000000019 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:G4 gain:0.2200000000000019 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:Ab4 gain:0.2200000000000019 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (181/16 → 725/64) ⇝ 23/2 | note:C5 gain:0.2200000000000019 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:Eb4 gain:0.14928932188134877 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:G4 gain:0.14928932188134877 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:Ab4 gain:0.14928932188134877 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (725/64 → 363/32) ⇝ 23/2 | note:C5 gain:0.14928932188134877 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (363/32 → 727/64) ⇝ 23/2 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:Eb4 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:G4 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:Ab4 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (727/64 → 91/8) ⇝ 23/2 | note:C5 gain:0.14928932188134536 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:Eb4 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:G4 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:Ab4 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (91/8 → 729/64) ⇝ 23/2 | note:C5 gain:0.21999999999999706 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:Eb4 gain:0.2907106781186505 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:G4 gain:0.2907106781186505 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:Ab4 gain:0.2907106781186505 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (729/64 → 365/32) ⇝ 23/2 | note:C5 gain:0.2907106781186505 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (365/32 → 731/64) ⇝ 23/2 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:Eb4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:G4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:Ab4 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (731/64 → 183/16) ⇝ 23/2 | note:C5 gain:0.2907106781186554 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:Eb4 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:G4 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:Ab4 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (183/16 → 733/64) ⇝ 23/2 | note:C5 gain:0.22000000000000403 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:Eb4 gain:0.1492893218813503 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:G4 gain:0.1492893218813503 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:Ab4 gain:0.1492893218813503 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (733/64 → 367/32) ⇝ 23/2 | note:C5 gain:0.1492893218813503 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (367/32 → 735/64) ⇝ 23/2 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 45/4 ⇜ (735/64 → 23/2) | note:Eb4 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 45/4 ⇜ (735/64 → 23/2) | note:G4 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 45/4 ⇜ (735/64 → 23/2) | note:Ab4 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 45/4 ⇜ (735/64 → 23/2) | note:C5 gain:0.14928932188134386 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (23/2 → 737/64) ⇝ 93/8 | note:C5 gain:0.43999999999998984 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (23/2 → 737/64) ⇝ 93/8 | note:G5 gain:0.43999999999998984 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (23/2 → 737/64) ⇝ 93/8 | note:Bb5 gain:0.43999999999998984 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ (23/2 → 737/64) ⇝ 47/4 | note:F2 gain:0.43999999999998984 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 93/8 | note:C5 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 93/8 | note:G5 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 93/8 | note:Bb5 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (737/64 → 369/32) ⇝ 47/4 | note:F2 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 93/8 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 93/8 | note:G5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 93/8 | note:Bb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (369/32 → 739/64) ⇝ 47/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (323/28 → 739/64) ⇝ 165/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (323/28 → 739/64) ⇝ 165/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (323/28 → 739/64) ⇝ 165/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (323/28 → 739/64) ⇝ 165/14 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 93/8 | note:C5 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 93/8 | note:G5 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 93/8 | note:Bb5 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (739/64 → 185/16) ⇝ 47/4 | note:F2 gain:0.581421356237314 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:75 gain:0.0581421356237314 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:79 gain:0.0581421356237314 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:80 gain:0.0581421356237314 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (739/64 → 185/16) ⇝ 165/14 | note:84 gain:0.0581421356237314 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 93/8 | note:C5 gain:0.4400000000000123 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 93/8 | note:G5 gain:0.4400000000000123 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 93/8 | note:Bb5 gain:0.4400000000000123 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (185/16 → 741/64) ⇝ 47/4 | note:F2 gain:0.4400000000000123 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:75 gain:0.04400000000000123 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:79 gain:0.04400000000000123 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:80 gain:0.04400000000000123 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (185/16 → 741/64) ⇝ 165/14 | note:84 gain:0.04400000000000123 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 93/8 | note:C5 gain:0.29857864376268756 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 93/8 | note:G5 gain:0.29857864376268756 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 93/8 | note:Bb5 gain:0.29857864376268756 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (741/64 → 371/32) ⇝ 47/4 | note:F2 gain:0.29857864376268756 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:75 gain:0.029857864376268757 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:79 gain:0.029857864376268757 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:80 gain:0.029857864376268757 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (741/64 → 371/32) ⇝ 165/14 | note:84 gain:0.029857864376268757 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 93/8 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 93/8 | note:G5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 93/8 | note:Bb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (371/32 → 743/64) ⇝ 47/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (371/32 → 743/64) ⇝ 165/14 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (743/64 → 93/8) | note:C5 gain:0.29857864376268467 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (743/64 → 93/8) | note:G5 gain:0.29857864376268467 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 23/2 ⇜ (743/64 → 93/8) | note:Bb5 gain:0.29857864376268467 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (743/64 → 93/8) ⇝ 47/4 | note:F2 gain:0.29857864376268467 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:75 gain:0.02985786437626847 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:79 gain:0.02985786437626847 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:80 gain:0.02985786437626847 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (743/64 → 93/8) ⇝ 165/14 | note:84 gain:0.02985786437626847 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (93/8 → 745/64) ⇝ 47/4 | note:F2 gain:0.4399999999999855 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:75 gain:0.043999999999998554 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:79 gain:0.043999999999998554 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:80 gain:0.043999999999998554 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (93/8 → 745/64) ⇝ 165/14 | note:84 gain:0.043999999999998554 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (745/64 → 373/32) ⇝ 47/4 | note:F2 gain:0.5814213562373108 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:75 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:79 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:80 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (745/64 → 373/32) ⇝ 165/14 | note:84 gain:0.058142135623731085 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (373/32 → 747/64) ⇝ 47/4 | note:F2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (373/32 → 747/64) ⇝ 165/14 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (747/64 → 187/16) ⇝ 47/4 | note:F2 gain:0.5814213562373169 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:75 gain:0.058142135623731696 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:79 gain:0.058142135623731696 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:80 gain:0.058142135623731696 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (747/64 → 187/16) ⇝ 165/14 | note:84 gain:0.058142135623731696 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (187/16 → 749/64) ⇝ 47/4 | note:F2 gain:0.43999999999999395 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:75 gain:0.0439999999999994 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:79 gain:0.0439999999999994 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:80 gain:0.0439999999999994 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (187/16 → 749/64) ⇝ 165/14 | note:84 gain:0.0439999999999994 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (749/64 → 375/32) ⇝ 47/4 | note:F2 gain:0.2985786437626906 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:75 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:79 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:80 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (749/64 → 375/32) ⇝ 165/14 | note:84 gain:0.029857864376269062 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (375/32 → 751/64) ⇝ 47/4 | note:F2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (375/32 → 751/64) ⇝ 165/14 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (751/64 → 47/4) | note:F2 gain:0.29857864376268156 clip:1 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:75 gain:0.029857864376268157 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:79 gain:0.029857864376268157 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:80 gain:0.029857864376268157 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (751/64 → 47/4) ⇝ 165/14 | note:84 gain:0.029857864376268157 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:75 gain:0.0440000000000004 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:79 gain:0.0440000000000004 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:80 gain:0.0440000000000004 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (47/4 → 753/64) ⇝ 165/14 | note:84 gain:0.0440000000000004 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (47/4 → 753/64) ⇝ 95/8 | note:C5 gain:0.44000000000000394 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (47/4 → 753/64) ⇝ 95/8 | note:G5 gain:0.44000000000000394 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (47/4 → 753/64) ⇝ 95/8 | note:Bb5 gain:0.44000000000000394 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ (47/4 → 753/64) ⇝ 12/1 | note:Eb4 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (47/4 → 753/64) ⇝ 12/1 | note:G4 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (47/4 → 753/64) ⇝ 12/1 | note:Ab4 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (47/4 → 753/64) ⇝ 12/1 | note:C5 gain:0.22000000000000197 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:75 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:79 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:80 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (753/64 → 377/32) ⇝ 165/14 | note:84 gain:0.05814213562373079 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 95/8 | note:C5 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 95/8 | note:G5 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 95/8 | note:Bb5 gain:0.5814213562373078 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:Eb4 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:G4 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:Ab4 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (753/64 → 377/32) ⇝ 12/1 | note:C5 gain:0.2907106781186539 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 323/28 ⇜ (377/32 → 165/14) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 323/28 ⇜ (377/32 → 165/14) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 323/28 ⇜ (377/32 → 165/14) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 323/28 ⇜ (377/32 → 165/14) | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 95/8 | note:C5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 95/8 | note:G5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 95/8 | note:Bb5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (377/32 → 755/64) ⇝ 12/1 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 95/8 | note:C5 gain:0.5814213562373199 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 95/8 | note:G5 gain:0.5814213562373199 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 95/8 | note:Bb5 gain:0.5814213562373199 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:Eb4 gain:0.29071067811865997 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:G4 gain:0.29071067811865997 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:Ab4 gain:0.29071067811865997 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (755/64 → 189/16) ⇝ 12/1 | note:C5 gain:0.29071067811865997 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 95/8 | note:C5 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 95/8 | note:G5 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 95/8 | note:Bb5 gain:0.4399999999999983 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:Eb4 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:G4 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:Ab4 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (189/16 → 757/64) ⇝ 12/1 | note:C5 gain:0.21999999999999914 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 95/8 | note:C5 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 95/8 | note:G5 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 95/8 | note:Bb5 gain:0.29857864376269366 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:Eb4 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:G4 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:Ab4 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (757/64 → 379/32) ⇝ 12/1 | note:C5 gain:0.14928932188134683 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 95/8 | note:C5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 95/8 | note:G5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 95/8 | note:Bb5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (379/32 → 759/64) ⇝ 12/1 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (759/64 → 95/8) | note:C5 gain:0.29857864376269466 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (759/64 → 95/8) | note:G5 gain:0.29857864376269466 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 47/4 ⇜ (759/64 → 95/8) | note:Bb5 gain:0.29857864376269466 clip:1 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:Eb4 gain:0.14928932188134733 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:G4 gain:0.14928932188134733 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:Ab4 gain:0.14928932188134733 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (759/64 → 95/8) ⇝ 12/1 | note:C5 gain:0.14928932188134733 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:Eb4 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:G4 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:Ab4 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (95/8 → 761/64) ⇝ 12/1 | note:C5 gain:0.2199999999999998 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:Eb4 gain:0.2907106781186524 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:G4 gain:0.2907106781186524 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:Ab4 gain:0.2907106781186524 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (761/64 → 381/32) ⇝ 12/1 | note:C5 gain:0.2907106781186524 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:G4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (381/32 → 763/64) ⇝ 12/1 | note:C5 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:Eb4 gain:0.2907106781186535 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:G4 gain:0.2907106781186535 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:Ab4 gain:0.2907106781186535 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (763/64 → 191/16) ⇝ 12/1 | note:C5 gain:0.2907106781186535 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:Eb4 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:G4 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:Ab4 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (191/16 → 765/64) ⇝ 12/1 | note:C5 gain:0.22000000000000128 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:Eb4 gain:0.14928932188134833 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:G4 gain:0.14928932188134833 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:Ab4 gain:0.14928932188134833 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (765/64 → 383/32) ⇝ 12/1 | note:C5 gain:0.14928932188134833 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:G4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (383/32 → 767/64) ⇝ 12/1 | note:C5 gain:0.12 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 47/4 ⇜ (767/64 → 12/1) | note:Eb4 gain:0.14928932188134578 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 47/4 ⇜ (767/64 → 12/1) | note:G4 gain:0.14928932188134578 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 47/4 ⇜ (767/64 → 12/1) | note:Ab4 gain:0.14928932188134578 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 47/4 ⇜ (767/64 → 12/1) | note:C5 gain:0.14928932188134578 clip:1 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (12/1 → 769/64) ⇝ 49/4 | note:G2 gain:0.4399999999999953 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 12/1 ⇜ (769/64 → 385/32) ⇝ 49/4 | note:G2 gain:0.5814213562373018 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 12/1 ⇜ (385/32 → 771/64) ⇝ 49/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (337/28 → 771/64) ⇝ 86/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (337/28 → 771/64) ⇝ 86/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (337/28 → 771/64) ⇝ 86/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (337/28 → 771/64) ⇝ 86/7 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 12/1 ⇜ (771/64 → 193/16) ⇝ 49/4 | note:G2 gain:0.58142135623731 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:75 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:79 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:80 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (771/64 → 193/16) ⇝ 86/7 | note:84 gain:0.058142135623730995 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 12/1 ⇜ (193/16 → 773/64) ⇝ 49/4 | note:G2 gain:0.44000000000000683 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:75 gain:0.044000000000000684 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:79 gain:0.044000000000000684 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:80 gain:0.044000000000000684 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (193/16 → 773/64) ⇝ 86/7 | note:84 gain:0.044000000000000684 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 12/1 ⇜ (773/64 → 387/32) ⇝ 49/4 | note:G2 gain:0.29857864376269977 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:75 gain:0.02985786437626998 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:79 gain:0.02985786437626998 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:80 gain:0.02985786437626998 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (773/64 → 387/32) ⇝ 86/7 | note:84 gain:0.02985786437626998 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 12/1 ⇜ (387/32 → 775/64) ⇝ 49/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (387/32 → 775/64) ⇝ 86/7 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 12/1 ⇜ (775/64 → 97/8) ⇝ 49/4 | note:G2 gain:0.2985786437626885 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:75 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:79 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:80 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (775/64 → 97/8) ⇝ 86/7 | note:84 gain:0.02985786437626885 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 12/1 ⇜ (97/8 → 777/64) ⇝ 49/4 | note:G2 gain:0.439999999999991 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:75 gain:0.0439999999999991 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:79 gain:0.0439999999999991 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:80 gain:0.0439999999999991 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (97/8 → 777/64) ⇝ 86/7 | note:84 gain:0.0439999999999991 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (97/8 → 777/64) ⇝ 49/4 | note:G4 gain:0.439999999999991 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (97/8 → 777/64) ⇝ 49/4 | note:D5 gain:0.439999999999991 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (97/8 → 777/64) ⇝ 49/4 | note:F5 gain:0.439999999999991 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 12/1 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:G2 gain:0.5814213562372988 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:75 gain:0.058142135623729885 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:79 gain:0.058142135623729885 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:80 gain:0.058142135623729885 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (777/64 → 389/32) ⇝ 86/7 | note:84 gain:0.058142135623729885 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 97/8 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:G4 gain:0.5814213562372988 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 97/8 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:D5 gain:0.5814213562372988 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 97/8 ⇜ (777/64 → 389/32) ⇝ 49/4 | note:F5 gain:0.5814213562372988 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 12/1 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (389/32 → 779/64) ⇝ 86/7 | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 97/8 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 97/8 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 97/8 ⇜ (389/32 → 779/64) ⇝ 49/4 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 12/1 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:G2 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:75 gain:0.05814213562373131 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:79 gain:0.05814213562373131 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:80 gain:0.05814213562373131 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (779/64 → 195/16) ⇝ 86/7 | note:84 gain:0.05814213562373131 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 97/8 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:G4 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 97/8 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:D5 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 97/8 ⇜ (779/64 → 195/16) ⇝ 49/4 | note:F5 gain:0.5814213562373131 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 12/1 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:G2 gain:0.44000000000001127 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:75 gain:0.04400000000000113 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:79 gain:0.04400000000000113 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:80 gain:0.04400000000000113 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (195/16 → 781/64) ⇝ 86/7 | note:84 gain:0.04400000000000113 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 97/8 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:G4 gain:0.44000000000001127 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 97/8 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:D5 gain:0.44000000000001127 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 97/8 ⇜ (195/16 → 781/64) ⇝ 49/4 | note:F5 gain:0.44000000000001127 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 12/1 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:G2 gain:0.2985786437626867 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:75 gain:0.029857864376268674 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:79 gain:0.029857864376268674 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:80 gain:0.029857864376268674 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (781/64 → 391/32) ⇝ 86/7 | note:84 gain:0.029857864376268674 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 97/8 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:G4 gain:0.2985786437626867 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 97/8 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:D5 gain:0.2985786437626867 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 97/8 ⇜ (781/64 → 391/32) ⇝ 49/4 | note:F5 gain:0.2985786437626867 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 12/1 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:79 gain:0.024 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (391/32 → 783/64) ⇝ 86/7 | note:84 gain:0.024 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 97/8 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 97/8 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 97/8 ⇜ (391/32 → 783/64) ⇝ 49/4 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 12/1 ⇜ (783/64 → 49/4) | note:G2 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:75 gain:0.029857864376268552 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:79 gain:0.029857864376268552 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:80 gain:0.029857864376268552 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (783/64 → 49/4) ⇝ 86/7 | note:84 gain:0.029857864376268552 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 97/8 ⇜ (783/64 → 49/4) | note:G4 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 97/8 ⇜ (783/64 → 49/4) | note:D5 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 97/8 ⇜ (783/64 → 49/4) | note:F5 gain:0.2985786437626855 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:75 gain:0.04399999999999868 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:79 gain:0.04399999999999868 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:80 gain:0.04399999999999868 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (49/4 → 785/64) ⇝ 86/7 | note:84 gain:0.04399999999999868 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:75 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:79 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:80 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (785/64 → 393/32) ⇝ 86/7 | note:84 gain:0.058142135623731175 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 337/28 ⇜ (393/32 → 86/7) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 337/28 ⇜ (393/32 → 86/7) | note:79 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 337/28 ⇜ (393/32 → 86/7) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 337/28 ⇜ (393/32 → 86/7) | note:84 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (25/2 → 801/64) ⇝ 101/8 | note:D5 gain:0.4400000000000008 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (25/2 → 801/64) ⇝ 101/8 | note:A5 gain:0.4400000000000008 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (25/2 → 801/64) ⇝ 101/8 | note:C6 gain:0.4400000000000008 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (25/2 → 801/64) ⇝ 51/4 | note:B3 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (25/2 → 801/64) ⇝ 51/4 | note:E4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (25/2 → 801/64) ⇝ 51/4 | note:F4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (25/2 → 801/64) ⇝ 51/4 | note:A4 gain:0.2200000000000004 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (25/2 → 801/64) ⇝ 51/4 | note:G2 gain:0.4400000000000008 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 101/8 | note:D5 gain:0.5814213562373057 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 101/8 | note:A5 gain:0.5814213562373057 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 101/8 | note:C6 gain:0.5814213562373057 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:B3 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:E4 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:F4 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:A4 gain:0.29071067811865287 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (801/64 → 401/32) ⇝ 51/4 | note:G2 gain:0.5814213562373057 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 101/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 101/8 | note:A5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 101/8 | note:C6 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (401/32 → 803/64) ⇝ 51/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 101/8 | note:D5 gain:0.5814213562373061 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 101/8 | note:A5 gain:0.5814213562373061 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 101/8 | note:C6 gain:0.5814213562373061 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:B3 gain:0.29071067811865303 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:E4 gain:0.29071067811865303 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:F4 gain:0.29071067811865303 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:A4 gain:0.29071067811865303 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (803/64 → 201/16) ⇝ 51/4 | note:G2 gain:0.5814213562373061 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 101/8 | note:D5 gain:0.4400000000000014 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 101/8 | note:A5 gain:0.4400000000000014 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 101/8 | note:C6 gain:0.4400000000000014 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:B3 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:E4 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:F4 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:A4 gain:0.2200000000000007 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (201/16 → 805/64) ⇝ 51/4 | note:G2 gain:0.4400000000000014 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 101/8 | note:D5 gain:0.2985786437626959 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 101/8 | note:A5 gain:0.2985786437626959 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 101/8 | note:C6 gain:0.2985786437626959 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:B3 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:E4 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:F4 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:A4 gain:0.14928932188134794 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (805/64 → 403/32) ⇝ 51/4 | note:G2 gain:0.2985786437626959 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 101/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 101/8 | note:A5 gain:0.24 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 101/8 | note:C6 gain:0.24 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (403/32 → 807/64) ⇝ 51/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) | note:D5 gain:0.29857864376269244 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) | note:A5 gain:0.29857864376269244 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) | note:C6 gain:0.29857864376269244 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:B3 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:E4 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:F4 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:A4 gain:0.14928932188134622 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (807/64 → 101/8) ⇝ 51/4 | note:G2 gain:0.29857864376269244 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:B3 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:E4 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:F4 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:A4 gain:0.21999999999999825 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (101/8 → 809/64) ⇝ 51/4 | note:G2 gain:0.4399999999999965 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:B3 gain:0.2907106781186513 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:E4 gain:0.2907106781186513 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:F4 gain:0.2907106781186513 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:A4 gain:0.2907106781186513 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (809/64 → 405/32) ⇝ 51/4 | note:G2 gain:0.5814213562373026 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (405/32 → 811/64) ⇝ 51/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:B3 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:E4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:F4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:A4 gain:0.29071067811865453 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (811/64 → 203/16) ⇝ 51/4 | note:G2 gain:0.5814213562373091 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:B3 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:E4 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:F4 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:A4 gain:0.22000000000000286 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (203/16 → 813/64) ⇝ 51/4 | note:G2 gain:0.4400000000000057 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:B3 gain:0.14928932188134944 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:E4 gain:0.14928932188134944 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:F4 gain:0.14928932188134944 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:A4 gain:0.14928932188134944 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (813/64 → 407/32) ⇝ 51/4 | note:G2 gain:0.2985786437626989 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (407/32 → 815/64) ⇝ 51/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 25/2 ⇜ (815/64 → 51/4) | note:B3 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 25/2 ⇜ (815/64 → 51/4) | note:E4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 25/2 ⇜ (815/64 → 51/4) | note:F4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (815/64 → 51/4) | note:A4 gain:0.14928932188134467 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (815/64 → 51/4) | note:G2 gain:0.29857864376268933 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (51/4 → 817/64) ⇝ 103/8 | note:G4 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (51/4 → 817/64) ⇝ 103/8 | note:D5 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (51/4 → 817/64) ⇝ 103/8 | note:F5 gain:0.4399999999999922 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 51/4 ⇜ (817/64 → 409/32) ⇝ 103/8 | note:G4 gain:0.5814213562372995 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 51/4 ⇜ (817/64 → 409/32) ⇝ 103/8 | note:D5 gain:0.5814213562372995 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 51/4 ⇜ (817/64 → 409/32) ⇝ 103/8 | note:F5 gain:0.5814213562372995 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 51/4 ⇜ (409/32 → 819/64) ⇝ 103/8 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 51/4 ⇜ (409/32 → 819/64) ⇝ 103/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 51/4 ⇜ (409/32 → 819/64) ⇝ 103/8 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (179/14 → 819/64) ⇝ 365/28 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (179/14 → 819/64) ⇝ 365/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (179/14 → 819/64) ⇝ 365/28 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (179/14 → 819/64) ⇝ 365/28 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 51/4 ⇜ (819/64 → 205/16) ⇝ 103/8 | note:G4 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 51/4 ⇜ (819/64 → 205/16) ⇝ 103/8 | note:D5 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 51/4 ⇜ (819/64 → 205/16) ⇝ 103/8 | note:F5 gain:0.5814213562373122 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:71 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:76 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:77 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (819/64 → 205/16) ⇝ 365/28 | note:81 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 51/4 ⇜ (205/16 → 821/64) ⇝ 103/8 | note:G4 gain:0.44000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 51/4 ⇜ (205/16 → 821/64) ⇝ 103/8 | note:D5 gain:0.44000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 51/4 ⇜ (205/16 → 821/64) ⇝ 103/8 | note:F5 gain:0.44000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:71 gain:0.044000000000001004 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:76 gain:0.044000000000001004 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:77 gain:0.044000000000001004 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (205/16 → 821/64) ⇝ 365/28 | note:81 gain:0.044000000000001004 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 51/4 ⇜ (821/64 → 411/32) ⇝ 103/8 | note:G4 gain:0.298578643762702 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 51/4 ⇜ (821/64 → 411/32) ⇝ 103/8 | note:D5 gain:0.298578643762702 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 51/4 ⇜ (821/64 → 411/32) ⇝ 103/8 | note:F5 gain:0.298578643762702 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:71 gain:0.0298578643762702 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:76 gain:0.0298578643762702 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:77 gain:0.0298578643762702 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (821/64 → 411/32) ⇝ 365/28 | note:81 gain:0.0298578643762702 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 51/4 ⇜ (411/32 → 823/64) ⇝ 103/8 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 51/4 ⇜ (411/32 → 823/64) ⇝ 103/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 51/4 ⇜ (411/32 → 823/64) ⇝ 103/8 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (411/32 → 823/64) ⇝ 365/28 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 51/4 ⇜ (823/64 → 103/8) | note:G4 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 51/4 ⇜ (823/64 → 103/8) | note:D5 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 51/4 ⇜ (823/64 → 103/8) | note:F5 gain:0.2985786437626863 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:71 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:76 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:77 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (823/64 → 103/8) ⇝ 365/28 | note:81 gain:0.02985786437626863 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:71 gain:0.04399999999999879 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:76 gain:0.04399999999999879 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:77 gain:0.04399999999999879 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (103/8 → 825/64) ⇝ 365/28 | note:81 gain:0.04399999999999879 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:71 gain:0.058142135623731266 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:76 gain:0.058142135623731266 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:77 gain:0.058142135623731266 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (825/64 → 413/32) ⇝ 365/28 | note:81 gain:0.058142135623731266 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (413/32 → 827/64) ⇝ 365/28 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:71 gain:0.05814213562373153 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:76 gain:0.05814213562373153 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:77 gain:0.05814213562373153 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (827/64 → 207/16) ⇝ 365/28 | note:81 gain:0.05814213562373153 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:71 gain:0.04400000000000143 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:76 gain:0.04400000000000143 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:77 gain:0.04400000000000143 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (207/16 → 829/64) ⇝ 365/28 | note:81 gain:0.04400000000000143 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:71 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:76 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:77 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (829/64 → 415/32) ⇝ 365/28 | note:81 gain:0.029857864376268896 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (415/32 → 831/64) ⇝ 365/28 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:71 gain:0.02985786437626833 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:76 gain:0.02985786437626833 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:77 gain:0.02985786437626833 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (831/64 → 13/1) ⇝ 365/28 | note:81 gain:0.02985786437626833 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:71 gain:0.04400000000000063 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:76 gain:0.04400000000000063 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:77 gain:0.04400000000000063 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (13/1 → 833/64) ⇝ 365/28 | note:81 gain:0.04400000000000063 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (13/1 → 833/64) ⇝ 53/4 | note:G2 gain:0.4400000000000063 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:71 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:76 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:77 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (833/64 → 417/32) ⇝ 365/28 | note:81 gain:0.05814213562373095 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 13/1 ⇜ (833/64 → 417/32) ⇝ 53/4 | note:G2 gain:0.5814213562373095 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 179/14 ⇜ (417/32 → 365/28) | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 179/14 ⇜ (417/32 → 365/28) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 179/14 ⇜ (417/32 → 365/28) | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 179/14 ⇜ (417/32 → 365/28) | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 13/1 ⇜ (417/32 → 835/64) ⇝ 53/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 13/1 ⇜ (835/64 → 209/16) ⇝ 53/4 | note:G2 gain:0.5814213562373184 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 13/1 ⇜ (209/16 → 837/64) ⇝ 53/4 | note:G2 gain:0.4399999999999959 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 13/1 ⇜ (837/64 → 419/32) ⇝ 53/4 | note:G2 gain:0.298578643762692 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 13/1 ⇜ (419/32 → 839/64) ⇝ 53/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 13/1 ⇜ (839/64 → 105/8) ⇝ 53/4 | note:G2 gain:0.29857864376268023 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 13/1 ⇜ (105/8 → 841/64) ⇝ 53/4 | note:G2 gain:0.440000000000002 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (105/8 → 841/64) ⇝ 53/4 | note:G4 gain:0.440000000000002 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (105/8 → 841/64) ⇝ 53/4 | note:D5 gain:0.440000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (105/8 → 841/64) ⇝ 53/4 | note:F5 gain:0.440000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:G2 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 105/8 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:G4 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 105/8 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:D5 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 105/8 ⇜ (841/64 → 421/32) ⇝ 53/4 | note:F5 gain:0.5814213562373064 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 105/8 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:G4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 105/8 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 105/8 ⇜ (421/32 → 843/64) ⇝ 53/4 | note:F5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:G2 gain:0.5814213562373052 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 105/8 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:G4 gain:0.5814213562373052 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 105/8 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:D5 gain:0.5814213562373052 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 105/8 ⇜ (843/64 → 211/16) ⇝ 53/4 | note:F5 gain:0.5814213562373052 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:G2 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 105/8 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:G4 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 105/8 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:D5 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 105/8 ⇜ (211/16 → 845/64) ⇝ 53/4 | note:F5 gain:0.4400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:G2 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 105/8 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:G4 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 105/8 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:D5 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 105/8 ⇜ (845/64 → 423/32) ⇝ 53/4 | note:F5 gain:0.29857864376269505 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 105/8 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:G4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 105/8 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 105/8 ⇜ (423/32 → 847/64) ⇝ 53/4 | note:F5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (847/64 → 53/4) | note:G2 gain:0.2985786437626932 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 105/8 ⇜ (847/64 → 53/4) | note:G4 gain:0.2985786437626932 clip:1 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 105/8 ⇜ (847/64 → 53/4) | note:D5 gain:0.2985786437626932 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 105/8 ⇜ (847/64 → 53/4) | note:F5 gain:0.2985786437626932 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (53/4 → 849/64) ⇝ 27/2 | note:B3 gain:0.21999999999999884 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (53/4 → 849/64) ⇝ 27/2 | note:E4 gain:0.21999999999999884 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (53/4 → 849/64) ⇝ 27/2 | note:F4 gain:0.21999999999999884 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (53/4 → 849/64) ⇝ 27/2 | note:A4 gain:0.21999999999999884 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:B3 gain:0.2907106781186517 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:E4 gain:0.2907106781186517 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:F4 gain:0.2907106781186517 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (849/64 → 425/32) ⇝ 27/2 | note:A4 gain:0.2907106781186517 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (425/32 → 851/64) ⇝ 27/2 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:B3 gain:0.29071067811865414 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:E4 gain:0.29071067811865414 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:F4 gain:0.29071067811865414 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (851/64 → 213/16) ⇝ 27/2 | note:A4 gain:0.29071067811865414 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:B3 gain:0.22000000000000225 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:E4 gain:0.22000000000000225 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:F4 gain:0.22000000000000225 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (213/16 → 853/64) ⇝ 27/2 | note:A4 gain:0.22000000000000225 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:B3 gain:0.14928932188134905 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:E4 gain:0.14928932188134905 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:F4 gain:0.14928932188134905 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (853/64 → 427/32) ⇝ 27/2 | note:A4 gain:0.14928932188134905 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (427/32 → 855/64) ⇝ 27/2 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:B3 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:E4 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:F4 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (855/64 → 107/8) ⇝ 27/2 | note:A4 gain:0.1492893218813451 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:B3 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:E4 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:F4 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (107/8 → 857/64) ⇝ 27/2 | note:A4 gain:0.21999999999999664 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:B3 gain:0.2907106781186502 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:E4 gain:0.2907106781186502 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:F4 gain:0.2907106781186502 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (857/64 → 429/32) ⇝ 27/2 | note:A4 gain:0.2907106781186502 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (429/32 → 859/64) ⇝ 27/2 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:B3 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:E4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:F4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (859/64 → 215/16) ⇝ 27/2 | note:A4 gain:0.2907106781186557 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:B3 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:E4 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:F4 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (215/16 → 861/64) ⇝ 27/2 | note:A4 gain:0.22000000000000441 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:B3 gain:0.14928932188135055 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:E4 gain:0.14928932188135055 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:F4 gain:0.14928932188135055 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (861/64 → 431/32) ⇝ 27/2 | note:A4 gain:0.14928932188135055 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (431/32 → 863/64) ⇝ 27/2 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 53/4 ⇜ (863/64 → 27/2) | note:B3 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 53/4 ⇜ (863/64 → 27/2) | note:E4 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 53/4 ⇜ (863/64 → 27/2) | note:F4 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 53/4 ⇜ (863/64 → 27/2) | note:A4 gain:0.14928932188134356 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (27/2 → 865/64) ⇝ 109/8 | note:D5 gain:0.43999999999998907 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (27/2 → 865/64) ⇝ 109/8 | note:A5 gain:0.43999999999998907 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (27/2 → 865/64) ⇝ 109/8 | note:C6 gain:0.43999999999998907 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (27/2 → 865/64) ⇝ 55/4 | note:G2 gain:0.43999999999998907 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 109/8 | note:D5 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 109/8 | note:A5 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 109/8 | note:C6 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 27/2 ⇜ (865/64 → 433/32) ⇝ 55/4 | note:G2 gain:0.5814213562373134 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 109/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 109/8 | note:A5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 109/8 | note:C6 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 27/2 ⇜ (433/32 → 867/64) ⇝ 55/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (379/28 → 867/64) ⇝ 193/14 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (379/28 → 867/64) ⇝ 193/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (379/28 → 867/64) ⇝ 193/14 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (379/28 → 867/64) ⇝ 193/14 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 109/8 | note:D5 gain:0.5814213562373144 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 109/8 | note:A5 gain:0.5814213562373144 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 109/8 | note:C6 gain:0.5814213562373144 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 27/2 ⇜ (867/64 → 217/16) ⇝ 55/4 | note:G2 gain:0.5814213562373144 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:71 gain:0.05814213562373144 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:76 gain:0.05814213562373144 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:77 gain:0.05814213562373144 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (867/64 → 217/16) ⇝ 193/14 | note:81 gain:0.05814213562373144 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 109/8 | note:D5 gain:0.4400000000000132 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 109/8 | note:A5 gain:0.4400000000000132 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 109/8 | note:C6 gain:0.4400000000000132 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 27/2 ⇜ (217/16 → 869/64) ⇝ 55/4 | note:G2 gain:0.4400000000000132 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:71 gain:0.04400000000000132 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:76 gain:0.04400000000000132 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:77 gain:0.04400000000000132 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (217/16 → 869/64) ⇝ 193/14 | note:81 gain:0.04400000000000132 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 109/8 | note:D5 gain:0.2985786437626881 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 109/8 | note:A5 gain:0.2985786437626881 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 109/8 | note:C6 gain:0.2985786437626881 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 27/2 ⇜ (869/64 → 435/32) ⇝ 55/4 | note:G2 gain:0.2985786437626881 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:71 gain:0.029857864376268813 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:76 gain:0.029857864376268813 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:77 gain:0.029857864376268813 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (869/64 → 435/32) ⇝ 193/14 | note:81 gain:0.029857864376268813 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 109/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 109/8 | note:A5 gain:0.24 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 109/8 | note:C6 gain:0.24 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 27/2 ⇜ (435/32 → 871/64) ⇝ 55/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (435/32 → 871/64) ⇝ 193/14 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (871/64 → 109/8) | note:D5 gain:0.29857864376268406 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 27/2 ⇜ (871/64 → 109/8) | note:A5 gain:0.29857864376268406 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (871/64 → 109/8) | note:C6 gain:0.29857864376268406 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 27/2 ⇜ (871/64 → 109/8) ⇝ 55/4 | note:G2 gain:0.29857864376268406 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:71 gain:0.029857864376268407 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:76 gain:0.029857864376268407 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:77 gain:0.029857864376268407 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (871/64 → 109/8) ⇝ 193/14 | note:81 gain:0.029857864376268407 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (109/8 → 873/64) ⇝ 55/4 | note:G2 gain:0.4399999999999848 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:71 gain:0.043999999999998485 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:76 gain:0.043999999999998485 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:77 gain:0.043999999999998485 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (109/8 → 873/64) ⇝ 193/14 | note:81 gain:0.043999999999998485 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (873/64 → 437/32) ⇝ 55/4 | note:G2 gain:0.5814213562373104 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:71 gain:0.058142135623731044 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:76 gain:0.058142135623731044 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:77 gain:0.058142135623731044 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (873/64 → 437/32) ⇝ 193/14 | note:81 gain:0.058142135623731044 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (437/32 → 875/64) ⇝ 55/4 | note:G2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (437/32 → 875/64) ⇝ 193/14 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (875/64 → 219/16) ⇝ 55/4 | note:G2 gain:0.5814213562373175 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:71 gain:0.05814213562373175 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:76 gain:0.05814213562373175 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:77 gain:0.05814213562373175 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (875/64 → 219/16) ⇝ 193/14 | note:81 gain:0.05814213562373175 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (219/16 → 877/64) ⇝ 55/4 | note:G2 gain:0.43999999999999473 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:71 gain:0.04399999999999948 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:76 gain:0.04399999999999948 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:77 gain:0.04399999999999948 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (219/16 → 877/64) ⇝ 193/14 | note:81 gain:0.04399999999999948 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (877/64 → 439/32) ⇝ 55/4 | note:G2 gain:0.29857864376269116 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:71 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:76 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:77 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (877/64 → 439/32) ⇝ 193/14 | note:81 gain:0.029857864376269118 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (439/32 → 879/64) ⇝ 55/4 | note:G2 gain:0.24 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (439/32 → 879/64) ⇝ 193/14 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 27/2 ⇜ (879/64 → 55/4) | note:G2 gain:0.29857864376268106 clip:1 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:71 gain:0.02985786437626811 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:76 gain:0.02985786437626811 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:77 gain:0.02985786437626811 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (879/64 → 55/4) ⇝ 193/14 | note:81 gain:0.02985786437626811 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:71 gain:0.04400000000000032 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:76 gain:0.04400000000000032 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:77 gain:0.04400000000000032 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (55/4 → 881/64) ⇝ 193/14 | note:81 gain:0.04400000000000032 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (55/4 → 881/64) ⇝ 111/8 | note:D5 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (55/4 → 881/64) ⇝ 111/8 | note:A5 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (55/4 → 881/64) ⇝ 111/8 | note:C6 gain:0.44000000000000317 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (55/4 → 881/64) ⇝ 14/1 | note:B3 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (55/4 → 881/64) ⇝ 14/1 | note:E4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (55/4 → 881/64) ⇝ 14/1 | note:F4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (55/4 → 881/64) ⇝ 14/1 | note:A4 gain:0.22000000000000158 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:71 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:76 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:77 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (881/64 → 441/32) ⇝ 193/14 | note:81 gain:0.05814213562373073 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 111/8 | note:D5 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 111/8 | note:A5 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 111/8 | note:C6 gain:0.5814213562373073 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:B3 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:E4 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:F4 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (881/64 → 441/32) ⇝ 14/1 | note:A4 gain:0.29071067811865364 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 379/28 ⇜ (441/32 → 193/14) | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 379/28 ⇜ (441/32 → 193/14) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 379/28 ⇜ (441/32 → 193/14) | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 379/28 ⇜ (441/32 → 193/14) | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 111/8 | note:D5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 111/8 | note:A5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 111/8 | note:C6 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (441/32 → 883/64) ⇝ 14/1 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 111/8 | note:D5 gain:0.5814213562373205 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 111/8 | note:A5 gain:0.5814213562373205 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 111/8 | note:C6 gain:0.5814213562373205 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:B3 gain:0.29071067811866025 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:E4 gain:0.29071067811866025 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:F4 gain:0.29071067811866025 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (883/64 → 221/16) ⇝ 14/1 | note:A4 gain:0.29071067811866025 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 111/8 | note:D5 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 111/8 | note:A5 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 111/8 | note:C6 gain:0.439999999999999 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:B3 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:E4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:F4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (221/16 → 885/64) ⇝ 14/1 | note:A4 gain:0.2199999999999995 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 111/8 | note:D5 gain:0.2985786437626942 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 111/8 | note:A5 gain:0.2985786437626942 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 111/8 | note:C6 gain:0.2985786437626942 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:B3 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:E4 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:F4 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (885/64 → 443/32) ⇝ 14/1 | note:A4 gain:0.1492893218813471 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 111/8 | note:D5 gain:0.24 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 111/8 | note:A5 gain:0.24 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 111/8 | note:C6 gain:0.24 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (443/32 → 887/64) ⇝ 14/1 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (887/64 → 111/8) | note:D5 gain:0.29857864376269405 clip:1 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 55/4 ⇜ (887/64 → 111/8) | note:A5 gain:0.29857864376269405 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 55/4 ⇜ (887/64 → 111/8) | note:C6 gain:0.29857864376269405 clip:1 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:B3 gain:0.14928932188134703 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:E4 gain:0.14928932188134703 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:F4 gain:0.14928932188134703 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (887/64 → 111/8) ⇝ 14/1 | note:A4 gain:0.14928932188134703 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:B3 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:E4 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:F4 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (111/8 → 889/64) ⇝ 14/1 | note:A4 gain:0.21999999999999942 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:B3 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:E4 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:F4 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (889/64 → 445/32) ⇝ 14/1 | note:A4 gain:0.29071067811865214 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:B3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:F4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (445/32 → 891/64) ⇝ 14/1 | note:A4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:B3 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:E4 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:F4 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (891/64 → 223/16) ⇝ 14/1 | note:A4 gain:0.29071067811865375 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:B3 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:E4 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:F4 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (223/16 → 893/64) ⇝ 14/1 | note:A4 gain:0.22000000000000167 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:B3 gain:0.14928932188134864 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:E4 gain:0.14928932188134864 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:F4 gain:0.14928932188134864 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (893/64 → 447/32) ⇝ 14/1 | note:A4 gain:0.14928932188134864 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:B3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:F4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (447/32 → 895/64) ⇝ 14/1 | note:A4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 55/4 ⇜ (895/64 → 14/1) | note:B3 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 55/4 ⇜ (895/64 → 14/1) | note:E4 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 55/4 ⇜ (895/64 → 14/1) | note:F4 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 55/4 ⇜ (895/64 → 14/1) | note:A4 gain:0.1492893218813455 clip:1 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (14/1 → 897/64) ⇝ 57/4 | note:F#2 gain:0.43999999999999456 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 14/1 ⇜ (897/64 → 449/32) ⇝ 57/4 | note:F#2 gain:0.5814213562373013 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 14/1 ⇜ (449/32 → 899/64) ⇝ 57/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (393/28 → 899/64) ⇝ 100/7 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (393/28 → 899/64) ⇝ 100/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (393/28 → 899/64) ⇝ 100/7 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (393/28 → 899/64) ⇝ 100/7 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 14/1 ⇜ (899/64 → 225/16) ⇝ 57/4 | note:F#2 gain:0.5814213562373105 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:71 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:76 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:77 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (899/64 → 225/16) ⇝ 100/7 | note:81 gain:0.05814213562373105 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 14/1 ⇜ (225/16 → 901/64) ⇝ 57/4 | note:F#2 gain:0.4400000000000077 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:71 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:76 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:77 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (225/16 → 901/64) ⇝ 100/7 | note:81 gain:0.044000000000000775 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 14/1 ⇜ (901/64 → 451/32) ⇝ 57/4 | note:F#2 gain:0.2985786437627003 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:71 gain:0.029857864376270034 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:76 gain:0.029857864376270034 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:77 gain:0.029857864376270034 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (901/64 → 451/32) ⇝ 100/7 | note:81 gain:0.029857864376270034 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 14/1 ⇜ (451/32 → 903/64) ⇝ 57/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (451/32 → 903/64) ⇝ 100/7 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 14/1 ⇜ (903/64 → 113/8) ⇝ 57/4 | note:F#2 gain:0.298578643762688 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:71 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:76 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:77 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (903/64 → 113/8) ⇝ 100/7 | note:81 gain:0.029857864376268802 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 14/1 ⇜ (113/8 → 905/64) ⇝ 57/4 | note:F#2 gain:0.4399999999999902 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:71 gain:0.04399999999999902 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:76 gain:0.04399999999999902 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:77 gain:0.04399999999999902 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (113/8 → 905/64) ⇝ 100/7 | note:81 gain:0.04399999999999902 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (113/8 → 905/64) ⇝ 57/4 | note:F#4 gain:0.4399999999999902 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ (113/8 → 905/64) ⇝ 57/4 | note:C#5 gain:0.4399999999999902 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (113/8 → 905/64) ⇝ 57/4 | note:E5 gain:0.4399999999999902 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 14/1 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:F#2 gain:0.5814213562372982 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:71 gain:0.05814213562372982 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:76 gain:0.05814213562372982 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:77 gain:0.05814213562372982 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (905/64 → 453/32) ⇝ 100/7 | note:81 gain:0.05814213562372982 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 113/8 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:F#4 gain:0.5814213562372982 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 113/8 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:C#5 gain:0.5814213562372982 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 113/8 ⇜ (905/64 → 453/32) ⇝ 57/4 | note:E5 gain:0.5814213562372982 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 14/1 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (453/32 → 907/64) ⇝ 100/7 | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 113/8 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:F#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 113/8 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 113/8 ⇜ (453/32 → 907/64) ⇝ 57/4 | note:E5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 14/1 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:F#2 gain:0.5814213562373135 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:71 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:76 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:77 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (907/64 → 227/16) ⇝ 100/7 | note:81 gain:0.058142135623731356 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 113/8 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:F#4 gain:0.5814213562373135 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 113/8 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:C#5 gain:0.5814213562373135 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 113/8 ⇜ (907/64 → 227/16) ⇝ 57/4 | note:E5 gain:0.5814213562373135 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 14/1 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:F#2 gain:0.44000000000001194 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:71 gain:0.0440000000000012 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:76 gain:0.0440000000000012 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:77 gain:0.0440000000000012 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (227/16 → 909/64) ⇝ 100/7 | note:81 gain:0.0440000000000012 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 113/8 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:F#4 gain:0.44000000000001194 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 113/8 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:C#5 gain:0.44000000000001194 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 113/8 ⇜ (227/16 → 909/64) ⇝ 57/4 | note:E5 gain:0.44000000000001194 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 14/1 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:F#2 gain:0.2985786437626873 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:71 gain:0.02985786437626873 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:76 gain:0.02985786437626873 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:77 gain:0.02985786437626873 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (909/64 → 455/32) ⇝ 100/7 | note:81 gain:0.02985786437626873 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 113/8 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:F#4 gain:0.2985786437626873 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 113/8 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:C#5 gain:0.2985786437626873 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 113/8 ⇜ (909/64 → 455/32) ⇝ 57/4 | note:E5 gain:0.2985786437626873 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 14/1 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:71 gain:0.024 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:77 gain:0.024 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (455/32 → 911/64) ⇝ 100/7 | note:81 gain:0.024 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 113/8 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:F#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 113/8 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 113/8 ⇜ (455/32 → 911/64) ⇝ 57/4 | note:E5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 14/1 ⇜ (911/64 → 57/4) | note:F#2 gain:0.2985786437626849 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:71 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:76 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:77 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (911/64 → 57/4) ⇝ 100/7 | note:81 gain:0.02985786437626849 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 113/8 ⇜ (911/64 → 57/4) | note:F#4 gain:0.2985786437626849 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 113/8 ⇜ (911/64 → 57/4) | note:C#5 gain:0.2985786437626849 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 113/8 ⇜ (911/64 → 57/4) | note:E5 gain:0.2985786437626849 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:71 gain:0.043999999999998596 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:76 gain:0.043999999999998596 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:77 gain:0.043999999999998596 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (57/4 → 913/64) ⇝ 100/7 | note:81 gain:0.043999999999998596 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:71 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:76 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:77 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (913/64 → 457/32) ⇝ 100/7 | note:81 gain:0.058142135623731134 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ 393/28 ⇜ (457/32 → 100/7) | note:71 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 393/28 ⇜ (457/32 → 100/7) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 393/28 ⇜ (457/32 → 100/7) | note:77 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 393/28 ⇜ (457/32 → 100/7) | note:81 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.625 ]",
+  "[ (29/2 → 929/64) ⇝ 117/8 | note:C#5 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (29/2 → 929/64) ⇝ 117/8 | note:G#5 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (29/2 → 929/64) ⇝ 117/8 | note:B5 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ (29/2 → 929/64) ⇝ 59/4 | note:Bb3 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (29/2 → 929/64) ⇝ 59/4 | note:Eb4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (29/2 → 929/64) ⇝ 59/4 | note:E4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (29/2 → 929/64) ⇝ 59/4 | note:Ab4 gain:0.22000000000000003 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (29/2 → 929/64) ⇝ 59/4 | note:F#2 gain:0.44000000000000006 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 117/8 | note:C#5 gain:0.5814213562373051 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 117/8 | note:G#5 gain:0.5814213562373051 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 117/8 | note:B5 gain:0.5814213562373051 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:Bb3 gain:0.29071067811865253 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:Eb4 gain:0.29071067811865253 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:E4 gain:0.29071067811865253 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:Ab4 gain:0.29071067811865253 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (929/64 → 465/32) ⇝ 59/4 | note:F#2 gain:0.5814213562373051 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 117/8 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 117/8 | note:G#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 117/8 | note:B5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (465/32 → 931/64) ⇝ 59/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 117/8 | note:C#5 gain:0.5814213562373066 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 117/8 | note:G#5 gain:0.5814213562373066 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 117/8 | note:B5 gain:0.5814213562373066 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:Bb3 gain:0.2907106781186533 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:Eb4 gain:0.2907106781186533 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:E4 gain:0.2907106781186533 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:Ab4 gain:0.2907106781186533 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (931/64 → 233/16) ⇝ 59/4 | note:F#2 gain:0.5814213562373066 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 117/8 | note:C#5 gain:0.44000000000000217 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 117/8 | note:G#5 gain:0.44000000000000217 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 117/8 | note:B5 gain:0.44000000000000217 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:Bb3 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:Eb4 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:E4 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:Ab4 gain:0.22000000000000108 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (233/16 → 933/64) ⇝ 59/4 | note:F#2 gain:0.44000000000000217 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 117/8 | note:C#5 gain:0.29857864376269644 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 117/8 | note:G#5 gain:0.29857864376269644 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 117/8 | note:B5 gain:0.29857864376269644 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:Bb3 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:Eb4 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:E4 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:Ab4 gain:0.14928932188134822 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (933/64 → 467/32) ⇝ 59/4 | note:F#2 gain:0.29857864376269644 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 117/8 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 117/8 | note:G#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 117/8 | note:B5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (467/32 → 935/64) ⇝ 59/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) | note:C#5 gain:0.29857864376269183 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) | note:G#5 gain:0.29857864376269183 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) | note:B5 gain:0.29857864376269183 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:Bb3 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:Eb4 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:E4 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:Ab4 gain:0.14928932188134592 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (935/64 → 117/8) ⇝ 59/4 | note:F#2 gain:0.29857864376269183 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:Bb3 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:Eb4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:E4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:Ab4 gain:0.21999999999999786 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (117/8 → 937/64) ⇝ 59/4 | note:F#2 gain:0.43999999999999573 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:Bb3 gain:0.290710678118651 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:Eb4 gain:0.290710678118651 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:E4 gain:0.290710678118651 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:Ab4 gain:0.290710678118651 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (937/64 → 469/32) ⇝ 59/4 | note:F#2 gain:0.581421356237302 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (469/32 → 939/64) ⇝ 59/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:Bb3 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:Eb4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:E4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:Ab4 gain:0.2907106781186548 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (939/64 → 235/16) ⇝ 59/4 | note:F#2 gain:0.5814213562373096 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:Bb3 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:Eb4 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:E4 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:Ab4 gain:0.22000000000000322 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (235/16 → 941/64) ⇝ 59/4 | note:F#2 gain:0.44000000000000644 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:Bb3 gain:0.14928932188134972 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:Eb4 gain:0.14928932188134972 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:E4 gain:0.14928932188134972 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:Ab4 gain:0.14928932188134972 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (941/64 → 471/32) ⇝ 59/4 | note:F#2 gain:0.29857864376269944 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (471/32 → 943/64) ⇝ 59/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 29/2 ⇜ (943/64 → 59/4) | note:Bb3 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 29/2 ⇜ (943/64 → 59/4) | note:Eb4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (943/64 → 59/4) | note:E4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 29/2 ⇜ (943/64 → 59/4) | note:Ab4 gain:0.1492893218813444 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 29/2 ⇜ (943/64 → 59/4) | note:F#2 gain:0.2985786437626888 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (59/4 → 945/64) ⇝ 119/8 | note:F#4 gain:0.43999999999999134 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ (59/4 → 945/64) ⇝ 119/8 | note:C#5 gain:0.43999999999999134 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (59/4 → 945/64) ⇝ 119/8 | note:E5 gain:0.43999999999999134 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 59/4 ⇜ (945/64 → 473/32) ⇝ 119/8 | note:F#4 gain:0.581421356237299 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 59/4 ⇜ (945/64 → 473/32) ⇝ 119/8 | note:C#5 gain:0.581421356237299 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 59/4 ⇜ (945/64 → 473/32) ⇝ 119/8 | note:E5 gain:0.581421356237299 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 59/4 ⇜ (473/32 → 947/64) ⇝ 119/8 | note:F#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 59/4 ⇜ (473/32 → 947/64) ⇝ 119/8 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 59/4 ⇜ (473/32 → 947/64) ⇝ 119/8 | note:E5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (207/14 → 947/64) ⇝ 421/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (207/14 → 947/64) ⇝ 421/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (207/14 → 947/64) ⇝ 421/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (207/14 → 947/64) ⇝ 421/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 59/4 ⇜ (947/64 → 237/16) ⇝ 119/8 | note:F#4 gain:0.5814213562373127 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 59/4 ⇜ (947/64 → 237/16) ⇝ 119/8 | note:C#5 gain:0.5814213562373127 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 59/4 ⇜ (947/64 → 237/16) ⇝ 119/8 | note:E5 gain:0.5814213562373127 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:70 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:75 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:76 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (947/64 → 237/16) ⇝ 421/28 | note:80 gain:0.05814213562373127 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 59/4 ⇜ (237/16 → 949/64) ⇝ 119/8 | note:F#4 gain:0.4400000000000108 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 59/4 ⇜ (237/16 → 949/64) ⇝ 119/8 | note:C#5 gain:0.4400000000000108 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 59/4 ⇜ (237/16 → 949/64) ⇝ 119/8 | note:E5 gain:0.4400000000000108 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:70 gain:0.04400000000000109 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:75 gain:0.04400000000000109 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:76 gain:0.04400000000000109 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (237/16 → 949/64) ⇝ 421/28 | note:80 gain:0.04400000000000109 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 59/4 ⇜ (949/64 → 475/32) ⇝ 119/8 | note:F#4 gain:0.29857864376270254 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 59/4 ⇜ (949/64 → 475/32) ⇝ 119/8 | note:C#5 gain:0.29857864376270254 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 59/4 ⇜ (949/64 → 475/32) ⇝ 119/8 | note:E5 gain:0.29857864376270254 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:70 gain:0.029857864376270256 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:75 gain:0.029857864376270256 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:76 gain:0.029857864376270256 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (949/64 → 475/32) ⇝ 421/28 | note:80 gain:0.029857864376270256 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 59/4 ⇜ (475/32 → 951/64) ⇝ 119/8 | note:F#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 59/4 ⇜ (475/32 → 951/64) ⇝ 119/8 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 59/4 ⇜ (475/32 → 951/64) ⇝ 119/8 | note:E5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (475/32 → 951/64) ⇝ 421/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 59/4 ⇜ (951/64 → 119/8) | note:F#4 gain:0.2985786437626858 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 59/4 ⇜ (951/64 → 119/8) | note:C#5 gain:0.2985786437626858 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 59/4 ⇜ (951/64 → 119/8) | note:E5 gain:0.2985786437626858 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:70 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:75 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:76 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (951/64 → 119/8) ⇝ 421/28 | note:80 gain:0.02985786437626858 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:70 gain:0.04399999999999871 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:75 gain:0.04399999999999871 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:76 gain:0.04399999999999871 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (119/8 → 953/64) ⇝ 421/28 | note:80 gain:0.04399999999999871 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:70 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:75 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:76 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (953/64 → 477/32) ⇝ 421/28 | note:80 gain:0.05814213562373122 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (477/32 → 955/64) ⇝ 421/28 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:70 gain:0.058142135623731585 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:75 gain:0.058142135623731585 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:76 gain:0.058142135623731585 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (955/64 → 239/16) ⇝ 421/28 | note:80 gain:0.058142135623731585 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:70 gain:0.04400000000000152 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:75 gain:0.04400000000000152 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:76 gain:0.04400000000000152 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (239/16 → 957/64) ⇝ 421/28 | note:80 gain:0.04400000000000152 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:70 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:75 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:76 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (957/64 → 479/32) ⇝ 421/28 | note:80 gain:0.02985786437626895 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (479/32 → 959/64) ⇝ 421/28 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:70 gain:0.029857864376268268 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:75 gain:0.029857864376268268 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:76 gain:0.029857864376268268 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (959/64 → 15/1) ⇝ 421/28 | note:80 gain:0.029857864376268268 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:70 gain:0.04399999999999828 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:75 gain:0.04399999999999828 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:76 gain:0.04399999999999828 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (15/1 → 961/64) ⇝ 421/28 | note:80 gain:0.04399999999999828 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (15/1 → 961/64) ⇝ 61/4 | note:F#2 gain:0.43999999999998274 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:70 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:75 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:76 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (961/64 → 481/32) ⇝ 421/28 | note:80 gain:0.0581421356237309 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/1 ⇜ (961/64 → 481/32) ⇝ 61/4 | note:F#2 gain:0.581421356237309 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 207/14 ⇜ (481/32 → 421/28) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 207/14 ⇜ (481/32 → 421/28) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 207/14 ⇜ (481/32 → 421/28) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 207/14 ⇜ (481/32 → 421/28) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 15/1 ⇜ (481/32 → 963/64) ⇝ 61/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/1 ⇜ (963/64 → 241/16) ⇝ 61/4 | note:F#2 gain:0.5814213562373188 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/1 ⇜ (241/16 → 965/64) ⇝ 61/4 | note:F#2 gain:0.43999999999999667 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/1 ⇜ (965/64 → 483/32) ⇝ 61/4 | note:F#2 gain:0.2985786437626925 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/1 ⇜ (483/32 → 967/64) ⇝ 61/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/1 ⇜ (967/64 → 121/8) ⇝ 61/4 | note:F#2 gain:0.2985786437626796 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 15/1 ⇜ (121/8 → 969/64) ⇝ 61/4 | note:F#2 gain:0.4400000000000012 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (121/8 → 969/64) ⇝ 61/4 | note:F#4 gain:0.4400000000000012 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ (121/8 → 969/64) ⇝ 61/4 | note:C#5 gain:0.4400000000000012 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (121/8 → 969/64) ⇝ 61/4 | note:E5 gain:0.4400000000000012 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/1 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:F#2 gain:0.581421356237306 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 121/8 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:F#4 gain:0.581421356237306 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 121/8 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:C#5 gain:0.581421356237306 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 121/8 ⇜ (969/64 → 485/32) ⇝ 61/4 | note:E5 gain:0.581421356237306 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/1 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 121/8 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:F#4 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 121/8 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 121/8 ⇜ (485/32 → 971/64) ⇝ 61/4 | note:E5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/1 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:F#2 gain:0.5814213562373058 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 121/8 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:F#4 gain:0.5814213562373058 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 121/8 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:C#5 gain:0.5814213562373058 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 121/8 ⇜ (971/64 → 243/16) ⇝ 61/4 | note:E5 gain:0.5814213562373058 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/1 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:F#2 gain:0.44000000000000095 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 121/8 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:F#4 gain:0.44000000000000095 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 121/8 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:C#5 gain:0.44000000000000095 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 121/8 ⇜ (243/16 → 973/64) ⇝ 61/4 | note:E5 gain:0.44000000000000095 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/1 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:F#2 gain:0.2985786437626956 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 121/8 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:F#4 gain:0.2985786437626956 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 121/8 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:C#5 gain:0.2985786437626956 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 121/8 ⇜ (973/64 → 487/32) ⇝ 61/4 | note:E5 gain:0.2985786437626956 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/1 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 121/8 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:F#4 gain:0.24 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 121/8 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 121/8 ⇜ (487/32 → 975/64) ⇝ 61/4 | note:E5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 15/1 ⇜ (975/64 → 61/4) | note:F#2 gain:0.29857864376269266 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 121/8 ⇜ (975/64 → 61/4) | note:F#4 gain:0.29857864376269266 clip:1 s:piano release:0.1 pan:0.5555555555555556 ]",
+  "[ 121/8 ⇜ (975/64 → 61/4) | note:C#5 gain:0.29857864376269266 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 121/8 ⇜ (975/64 → 61/4) | note:E5 gain:0.29857864376269266 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (61/4 → 977/64) ⇝ 31/2 | note:Bb3 gain:0.21999999999999842 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (61/4 → 977/64) ⇝ 31/2 | note:Eb4 gain:0.21999999999999842 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (61/4 → 977/64) ⇝ 31/2 | note:E4 gain:0.21999999999999842 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (61/4 → 977/64) ⇝ 31/2 | note:Ab4 gain:0.21999999999999842 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:Bb3 gain:0.2907106781186514 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:Eb4 gain:0.2907106781186514 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:E4 gain:0.2907106781186514 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (977/64 → 489/32) ⇝ 31/2 | note:Ab4 gain:0.2907106781186514 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (489/32 → 979/64) ⇝ 31/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:Bb3 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:Eb4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:E4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (979/64 → 245/16) ⇝ 31/2 | note:Ab4 gain:0.2907106781186545 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:Bb3 gain:0.22000000000000264 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:Eb4 gain:0.22000000000000264 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:E4 gain:0.22000000000000264 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (245/16 → 981/64) ⇝ 31/2 | note:Ab4 gain:0.22000000000000264 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:Bb3 gain:0.14928932188134933 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:Eb4 gain:0.14928932188134933 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:E4 gain:0.14928932188134933 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (981/64 → 491/32) ⇝ 31/2 | note:Ab4 gain:0.14928932188134933 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (491/32 → 983/64) ⇝ 31/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:Bb3 gain:0.1492893218813448 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:Eb4 gain:0.1492893218813448 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:E4 gain:0.1492893218813448 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (983/64 → 123/8) ⇝ 31/2 | note:Ab4 gain:0.1492893218813448 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:Bb3 gain:0.2199999999999963 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:Eb4 gain:0.2199999999999963 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:E4 gain:0.2199999999999963 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (123/8 → 985/64) ⇝ 31/2 | note:Ab4 gain:0.2199999999999963 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:Bb3 gain:0.2907106781186499 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:Eb4 gain:0.2907106781186499 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:E4 gain:0.2907106781186499 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (985/64 → 493/32) ⇝ 31/2 | note:Ab4 gain:0.2907106781186499 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (493/32 → 987/64) ⇝ 31/2 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:Bb3 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:Eb4 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:E4 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (987/64 → 247/16) ⇝ 31/2 | note:Ab4 gain:0.290710678118656 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:Bb3 gain:0.22000000000000483 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:Eb4 gain:0.22000000000000483 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:E4 gain:0.22000000000000483 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (247/16 → 989/64) ⇝ 31/2 | note:Ab4 gain:0.22000000000000483 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:Bb3 gain:0.14928932188135083 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:Eb4 gain:0.14928932188135083 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:E4 gain:0.14928932188135083 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (989/64 → 495/32) ⇝ 31/2 | note:Ab4 gain:0.14928932188135083 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (495/32 → 991/64) ⇝ 31/2 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 61/4 ⇜ (991/64 → 31/2) | note:Bb3 gain:0.14928932188134328 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 61/4 ⇜ (991/64 → 31/2) | note:Eb4 gain:0.14928932188134328 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 61/4 ⇜ (991/64 → 31/2) | note:E4 gain:0.14928932188134328 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 61/4 ⇜ (991/64 → 31/2) | note:Ab4 gain:0.14928932188134328 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ (31/2 → 993/64) ⇝ 125/8 | note:C#5 gain:0.43999999999998823 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (31/2 → 993/64) ⇝ 125/8 | note:G#5 gain:0.43999999999998823 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (31/2 → 993/64) ⇝ 125/8 | note:B5 gain:0.43999999999998823 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ (31/2 → 993/64) ⇝ 63/4 | note:F#2 gain:0.43999999999998823 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 125/8 | note:C#5 gain:0.5814213562373128 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 125/8 | note:G#5 gain:0.5814213562373128 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 125/8 | note:B5 gain:0.5814213562373128 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 31/2 ⇜ (993/64 → 497/32) ⇝ 63/4 | note:F#2 gain:0.5814213562373128 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 125/8 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 125/8 | note:G#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 125/8 | note:B5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 31/2 ⇜ (497/32 → 995/64) ⇝ 63/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ (435/28 → 995/64) ⇝ 221/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (435/28 → 995/64) ⇝ 221/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (435/28 → 995/64) ⇝ 221/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (435/28 → 995/64) ⇝ 221/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 125/8 | note:C#5 gain:0.581421356237315 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 125/8 | note:G#5 gain:0.581421356237315 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 125/8 | note:B5 gain:0.581421356237315 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 31/2 ⇜ (995/64 → 249/16) ⇝ 63/4 | note:F#2 gain:0.581421356237315 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:70 gain:0.058142135623731495 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:75 gain:0.058142135623731495 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:76 gain:0.058142135623731495 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (995/64 → 249/16) ⇝ 221/14 | note:80 gain:0.058142135623731495 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 125/8 | note:C#5 gain:0.44000000000001394 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 125/8 | note:G#5 gain:0.44000000000001394 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 125/8 | note:B5 gain:0.44000000000001394 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 31/2 ⇜ (249/16 → 997/64) ⇝ 63/4 | note:F#2 gain:0.44000000000001394 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:70 gain:0.0440000000000014 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:75 gain:0.0440000000000014 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:76 gain:0.0440000000000014 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (249/16 → 997/64) ⇝ 221/14 | note:80 gain:0.0440000000000014 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 125/8 | note:C#5 gain:0.29857864376268867 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 125/8 | note:G#5 gain:0.29857864376268867 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 125/8 | note:B5 gain:0.29857864376268867 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 31/2 ⇜ (997/64 → 499/32) ⇝ 63/4 | note:F#2 gain:0.29857864376268867 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:70 gain:0.029857864376268868 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:75 gain:0.029857864376268868 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:76 gain:0.029857864376268868 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (997/64 → 499/32) ⇝ 221/14 | note:80 gain:0.029857864376268868 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 125/8 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 125/8 | note:G#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 125/8 | note:B5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 31/2 ⇜ (499/32 → 999/64) ⇝ 63/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (499/32 → 999/64) ⇝ 221/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (999/64 → 125/8) | note:C#5 gain:0.29857864376268356 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 31/2 ⇜ (999/64 → 125/8) | note:G#5 gain:0.29857864376268356 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (999/64 → 125/8) | note:B5 gain:0.29857864376268356 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 31/2 ⇜ (999/64 → 125/8) ⇝ 63/4 | note:F#2 gain:0.29857864376268356 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:70 gain:0.029857864376268358 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:75 gain:0.029857864376268358 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:76 gain:0.029857864376268358 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (999/64 → 125/8) ⇝ 221/14 | note:80 gain:0.029857864376268358 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (125/8 → 1001/64) ⇝ 63/4 | note:F#2 gain:0.4399999999999839 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:70 gain:0.043999999999998395 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:75 gain:0.043999999999998395 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:76 gain:0.043999999999998395 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (125/8 → 1001/64) ⇝ 221/14 | note:80 gain:0.043999999999998395 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (1001/64 → 501/32) ⇝ 63/4 | note:F#2 gain:0.5814213562373098 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:70 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:75 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:76 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (1001/64 → 501/32) ⇝ 221/14 | note:80 gain:0.05814213562373099 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (501/32 → 1003/64) ⇝ 63/4 | note:F#2 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (501/32 → 1003/64) ⇝ 221/14 | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (1003/64 → 251/16) ⇝ 63/4 | note:F#2 gain:0.5814213562373179 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:70 gain:0.0581421356237318 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:75 gain:0.0581421356237318 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:76 gain:0.0581421356237318 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (1003/64 → 251/16) ⇝ 221/14 | note:80 gain:0.0581421356237318 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (251/16 → 1005/64) ⇝ 63/4 | note:F#2 gain:0.4399999999999955 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:70 gain:0.04399999999999955 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:75 gain:0.04399999999999955 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:76 gain:0.04399999999999955 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (251/16 → 1005/64) ⇝ 221/14 | note:80 gain:0.04399999999999955 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (1005/64 → 503/32) ⇝ 63/4 | note:F#2 gain:0.2985786437626917 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:70 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:75 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:76 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (1005/64 → 503/32) ⇝ 221/14 | note:80 gain:0.029857864376269173 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (503/32 → 1007/64) ⇝ 63/4 | note:F#2 gain:0.24 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:70 gain:0.024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:75 gain:0.024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:76 gain:0.024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (503/32 → 1007/64) ⇝ 221/14 | note:80 gain:0.024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 31/2 ⇜ (1007/64 → 63/4) | note:F#2 gain:0.29857864376268045 clip:1 s:piano release:0.1 pan:0.4444444444444444 ]",
+  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:70 gain:0.029857864376268046 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:75 gain:0.029857864376268046 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:76 gain:0.029857864376268046 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (1007/64 → 63/4) ⇝ 221/14 | note:80 gain:0.029857864376268046 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:70 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:75 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:76 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (63/4 → 1009/64) ⇝ 221/14 | note:80 gain:0.04400000000000024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (63/4 → 1009/64) ⇝ 127/8 | note:C#5 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ (63/4 → 1009/64) ⇝ 127/8 | note:G#5 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ (63/4 → 1009/64) ⇝ 127/8 | note:B5 gain:0.4400000000000024 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ (63/4 → 1009/64) ⇝ 16/1 | note:Bb3 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ (63/4 → 1009/64) ⇝ 16/1 | note:Eb4 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (63/4 → 1009/64) ⇝ 16/1 | note:E4 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ (63/4 → 1009/64) ⇝ 16/1 | note:Ab4 gain:0.2200000000000012 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:70 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:75 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:76 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (1009/64 → 505/32) ⇝ 221/14 | note:80 gain:0.05814213562373069 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 127/8 | note:C#5 gain:0.5814213562373068 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 127/8 | note:G#5 gain:0.5814213562373068 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 127/8 | note:B5 gain:0.5814213562373068 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:Bb3 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:Eb4 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:E4 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1009/64 → 505/32) ⇝ 16/1 | note:Ab4 gain:0.2907106781186534 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 435/28 ⇜ (505/32 → 221/14) | note:70 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 435/28 ⇜ (505/32 → 221/14) | note:75 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 435/28 ⇜ (505/32 → 221/14) | note:76 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 435/28 ⇜ (505/32 → 221/14) | note:80 gain:0.06400000000000002 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 127/8 | note:C#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 127/8 | note:G#5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 127/8 | note:B5 gain:0.6400000000000001 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (505/32 → 1011/64) ⇝ 16/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 127/8 | note:C#5 gain:0.581421356237321 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 127/8 | note:G#5 gain:0.581421356237321 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 127/8 | note:B5 gain:0.581421356237321 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:Bb3 gain:0.2907106781186605 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:Eb4 gain:0.2907106781186605 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:E4 gain:0.2907106781186605 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1011/64 → 253/16) ⇝ 16/1 | note:Ab4 gain:0.2907106781186605 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 127/8 | note:C#5 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 127/8 | note:G#5 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 127/8 | note:B5 gain:0.4399999999999998 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:Bb3 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:Eb4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:E4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (253/16 → 1013/64) ⇝ 16/1 | note:Ab4 gain:0.2199999999999999 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 127/8 | note:C#5 gain:0.2985786437626947 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 127/8 | note:G#5 gain:0.2985786437626947 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 127/8 | note:B5 gain:0.2985786437626947 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:Bb3 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:Eb4 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:E4 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1013/64 → 507/32) ⇝ 16/1 | note:Ab4 gain:0.14928932188134736 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 127/8 | note:C#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 127/8 | note:G#5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 127/8 | note:B5 gain:0.24 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (507/32 → 1015/64) ⇝ 16/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (1015/64 → 127/8) | note:C#5 gain:0.2985786437626935 clip:1 s:piano release:0.1 pan:0.587962962962963 ]",
+  "[ 63/4 ⇜ (1015/64 → 127/8) | note:G#5 gain:0.2985786437626935 clip:1 s:piano release:0.1 pan:0.6203703703703703 ]",
+  "[ 63/4 ⇜ (1015/64 → 127/8) | note:B5 gain:0.2985786437626935 clip:1 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:Bb3 gain:0.14928932188134675 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:Eb4 gain:0.14928932188134675 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:E4 gain:0.14928932188134675 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1015/64 → 127/8) ⇝ 16/1 | note:Ab4 gain:0.14928932188134675 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:Bb3 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:Eb4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:E4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (127/8 → 1017/64) ⇝ 16/1 | note:Ab4 gain:0.21999999999999906 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:Bb3 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:Eb4 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:E4 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1017/64 → 509/32) ⇝ 16/1 | note:Ab4 gain:0.29071067811865187 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:Bb3 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:Eb4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:E4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (509/32 → 1019/64) ⇝ 16/1 | note:Ab4 gain:0.32000000000000006 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:Bb3 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:Eb4 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:E4 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1019/64 → 255/16) ⇝ 16/1 | note:Ab4 gain:0.29071067811865403 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:Bb3 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:Eb4 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:E4 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (255/16 → 1021/64) ⇝ 16/1 | note:Ab4 gain:0.22000000000000208 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:Bb3 gain:0.1492893218813489 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:Eb4 gain:0.1492893218813489 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:E4 gain:0.1492893218813489 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1021/64 → 511/32) ⇝ 16/1 | note:Ab4 gain:0.1492893218813489 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:Bb3 gain:0.12 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:Eb4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:E4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (511/32 → 1023/64) ⇝ 16/1 | note:Ab4 gain:0.12 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
+  "[ 63/4 ⇜ (1023/64 → 16/1) | note:Bb3 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 63/4 ⇜ (1023/64 → 16/1) | note:Eb4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 63/4 ⇜ (1023/64 → 16/1) | note:E4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 63/4 ⇜ (1023/64 → 16/1) | note:Ab4 gain:0.14928932188134522 clip:1 s:piano release:0.1 pan:0.5648148148148149 ]",
 ]
 `;
 
 exports[`renders tunes > tune: festivalOfFingers3 1`] = `
 [
-  "[ -1/2 ⇜ (0/1 → 1/6) | gain:0.12500057914389073 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ -1/2 ⇜ (0/1 → 1/6) | gain:0.125015148781768 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
   "[ -1/6 ⇜ (0/1 → 1/6) | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ -1/6 ⇜ (0/1 → 1/6) | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ -1/3 ⇜ (0/1 → 1/3) | gain:0.16666666666666666 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ -1/3 ⇜ (0/1 → 1/3) | gain:0.16667274737749818 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
   "[ 0/1 → 1/3 | clip:1 gain:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 0/1 → 1/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ -3/2 ⇜ (0/1 → 1/2) | gain:0.250030297563536 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ -3/2 ⇜ (0/1 → 1/2) | gain:0.250030297563536 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ -3/2 ⇜ (0/1 → 1/2) | gain:0.250030297563536 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ -1/2 ⇜ (0/1 → 1/2) | gain:0.25 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ -1/2 ⇜ (0/1 → 1/2) | gain:0.125 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
-  "[ -1/6 ⇜ (0/1 → 1/2) | gain:0.25000115618250673 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ 0/1 → 2/3 | gain:0.5000182089760518 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
-  "[ -1/1 ⇜ (0/1 → 1/1) | gain:0.16666666666666666 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ -1/1 ⇜ (0/1 → 1/1) | gain:0.16666666666666666 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ -1/1 ⇜ (0/1 → 1/1) | gain:0.16666666666666666 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ -1/2 ⇜ (0/1 → 1/1) ⇝ 3/2 | gain:0.12501512124772182 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ -1/2 ⇜ (0/1 → 1/1) ⇝ 3/2 | gain:0.12501512124772182 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ -1/2 ⇜ (0/1 → 1/1) ⇝ 3/2 | gain:0.12501512124772182 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 0/1 → 1/1 | gain:0.5000604849908873 clip:1 note:E4 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 0/1 → 1/1 | gain:0.16668682833029574 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (0/1 → 1/1) ⇝ 2/1 | gain:0.5004609890274139 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ (0/1 → 1/1) ⇝ 2/1 | gain:0.5004609890274139 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ (0/1 → 1/1) ⇝ 2/1 | gain:0.5004609890274139 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ -3/2 ⇜ (0/1 → 1/2) | gain:0.25074164191519466 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ -3/2 ⇜ (0/1 → 1/2) | gain:0.25074164191519466 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ -3/2 ⇜ (0/1 → 1/2) | gain:0.25074164191519466 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ -1/2 ⇜ (0/1 → 1/2) | gain:0.250030297563536 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ -1/2 ⇜ (0/1 → 1/2) | gain:0.125015148781768 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
+  "[ -1/6 ⇜ (0/1 → 1/2) | gain:0.25000115828778147 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 0/1 → 2/3 | gain:0.5 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ -1/1 ⇜ (0/1 → 1/1) | gain:0.16682060947840208 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ -1/1 ⇜ (0/1 → 1/1) | gain:0.16682060947840208 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ -1/1 ⇜ (0/1 → 1/1) | gain:0.16682060947840208 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ -1/2 ⇜ (0/1 → 1/1) ⇝ 3/2 | gain:0.125015148781768 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ -1/2 ⇜ (0/1 → 1/1) ⇝ 3/2 | gain:0.125015148781768 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ -1/2 ⇜ (0/1 → 1/1) ⇝ 3/2 | gain:0.125015148781768 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ 0/1 → 1/1 | gain:0.5 clip:1 note:E4 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 0/1 → 1/1 | gain:0.16666666666666666 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ (0/1 → 1/1) ⇝ 2/1 | gain:0.5 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ (0/1 → 1/1) ⇝ 2/1 | gain:0.5 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (0/1 → 1/1) ⇝ 2/1 | gain:0.5 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ 1/6 → 1/2 | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 1/6 → 1/2 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 1/6 → 5/6 | gain:0.12501512124772182 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 1/6 → 5/6 | gain:0.12500057809125337 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
   "[ 1/3 → 2/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 1/3 → 2/3 | clip:1 gain:0.25 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ 1/3 → 1/1 | gain:0.16671369714212353 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/3 → 1/1 | gain:0.16667273632535057 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
   "[ 1/2 → 5/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 1/2 → 5/6 | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (1/2 → 1/1) ⇝ 7/6 | gain:0.25013557675466036 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ (1/2 → 1/1) ⇝ 3/2 | gain:0.25023049451370694 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (1/2 → 1/1) ⇝ 3/2 | gain:0.12511524725685347 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (1/2 → 1/1) ⇝ 5/2 | gain:0.25074029392543207 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (1/2 → 1/1) ⇝ 5/2 | gain:0.25074029392543207 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (1/2 → 1/1) ⇝ 5/2 | gain:0.25074029392543207 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (1/2 → 1/1) ⇝ 7/6 | gain:0.25003024249544364 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ (1/2 → 1/1) ⇝ 3/2 | gain:0.25003024249544364 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (1/2 → 1/1) ⇝ 3/2 | gain:0.12501512124772182 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ (1/2 → 1/1) ⇝ 5/2 | gain:0.25003024249544364 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (1/2 → 1/1) ⇝ 5/2 | gain:0.25003024249544364 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (1/2 → 1/1) ⇝ 5/2 | gain:0.25003024249544364 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
   "[ 2/3 → 1/1 | clip:1 gain:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 2/3 → 1/1 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (2/3 → 1/1) ⇝ 4/3 | gain:0.5004609890274139 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ (2/3 → 1/1) ⇝ 4/3 | gain:0.5001410914263706 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
   "[ (5/6 → 1/1) ⇝ 7/6 | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ (5/6 → 1/1) ⇝ 7/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (5/6 → 1/1) ⇝ 3/2 | gain:0.1251800316700185 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 1/2 ⇜ (1/1 → 7/6) | gain:0.25013557675466036 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ (5/6 → 1/1) ⇝ 3/2 | gain:0.12506778837733018 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 1/2 ⇜ (1/1 → 7/6) | gain:0.25003024249544364 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
   "[ 5/6 ⇜ (1/1 → 7/6) | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 5/6 ⇜ (1/1 → 7/6) | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 2/3 ⇜ (1/1 → 4/3) | gain:0.5004609890274139 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ 2/3 ⇜ (1/1 → 4/3) | gain:0.5001410914263706 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
   "[ 1/1 → 4/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 1/1 → 4/3 | clip:1 gain:0.25 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ -1/2 ⇜ (1/1 → 3/2) | gain:0.12501512124772182 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ -1/2 ⇜ (1/1 → 3/2) | gain:0.12501512124772182 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ -1/2 ⇜ (1/1 → 3/2) | gain:0.12501512124772182 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 1/2 ⇜ (1/1 → 3/2) | gain:0.25023049451370694 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 1/2 ⇜ (1/1 → 3/2) | gain:0.12511524725685347 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 5/6 ⇜ (1/1 → 3/2) | gain:0.1251800316700185 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 1/1 → 5/3 | gain:0.16701910814312054 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 0/1 ⇜ (1/1 → 2/1) | gain:0.5004609890274139 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ 0/1 ⇜ (1/1 → 2/1) | gain:0.5004609890274139 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ 0/1 ⇜ (1/1 → 2/1) | gain:0.5004609890274139 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 1/2 ⇜ (1/1 → 2/1) ⇝ 5/2 | gain:0.25074029392543207 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/2 ⇜ (1/1 → 2/1) ⇝ 5/2 | gain:0.25074029392543207 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 1/2 ⇜ (1/1 → 2/1) ⇝ 5/2 | gain:0.25074029392543207 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 1/1 → 2/1 | gain:0.5014805878508641 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 1/1 → 2/1 | gain:0.16716019595028803 clip:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (1/1 → 2/1) ⇝ 3/1 | gain:0.16777864249203656 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (1/1 → 2/1) ⇝ 3/1 | gain:0.16777864249203656 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (1/1 → 2/1) ⇝ 3/1 | gain:0.16777864249203656 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ -1/2 ⇜ (1/1 → 3/2) | gain:0.125015148781768 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ -1/2 ⇜ (1/1 → 3/2) | gain:0.125015148781768 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ -1/2 ⇜ (1/1 → 3/2) | gain:0.125015148781768 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ 1/2 ⇜ (1/1 → 3/2) | gain:0.25003024249544364 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 1/2 ⇜ (1/1 → 3/2) | gain:0.12501512124772182 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ 5/6 ⇜ (1/1 → 3/2) | gain:0.12506778837733018 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 1/1 → 5/3 | gain:0.16682032967580462 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 0/1 ⇜ (1/1 → 2/1) | gain:0.5 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 0/1 ⇜ (1/1 → 2/1) | gain:0.5 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 0/1 ⇜ (1/1 → 2/1) | gain:0.5 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 1/2 ⇜ (1/1 → 2/1) ⇝ 5/2 | gain:0.25003024249544364 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/2 ⇜ (1/1 → 2/1) ⇝ 5/2 | gain:0.25003024249544364 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 1/2 ⇜ (1/1 → 2/1) ⇝ 5/2 | gain:0.25003024249544364 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 1/1 → 2/1 | gain:0.5004609890274139 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 1/1 → 2/1 | gain:0.16682032967580462 clip:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
+  "[ (1/1 → 2/1) ⇝ 3/1 | gain:0.16682032967580462 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (1/1 → 2/1) ⇝ 3/1 | gain:0.16682032967580462 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (1/1 → 2/1) ⇝ 3/1 | gain:0.16682032967580462 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
   "[ 7/6 → 3/2 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 7/6 → 3/2 | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ 7/6 → 11/6 | gain:0.25074029392543207 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 7/6 → 11/6 | gain:0.250360063340037 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
   "[ 4/3 → 5/3 | clip:1 gain:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 4/3 → 5/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 4/3 → 2/1 | gain:0.5019971884845844 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ 4/3 → 2/1 | gain:0.5010573244293617 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
   "[ 3/2 → 11/6 | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 3/2 → 11/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (3/2 → 2/1) ⇝ 13/6 | gain:0.1256534205464579 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (3/2 → 2/1) ⇝ 5/2 | gain:0.25166796373805483 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (3/2 → 2/1) ⇝ 5/2 | gain:0.12583398186902742 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
-  "[ (3/2 → 2/1) ⇝ 7/2 | gain:0.12654642086444556 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (3/2 → 2/1) ⇝ 7/2 | gain:0.12654642086444556 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ (3/2 → 2/1) ⇝ 7/2 | gain:0.12654642086444556 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ (3/2 → 2/1) ⇝ 13/6 | gain:0.12537014696271603 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (3/2 → 2/1) ⇝ 5/2 | gain:0.25074029392543207 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (3/2 → 2/1) ⇝ 5/2 | gain:0.12537014696271603 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
+  "[ (3/2 → 2/1) ⇝ 7/2 | gain:0.12537014696271603 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ (3/2 → 2/1) ⇝ 7/2 | gain:0.12537014696271603 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ (3/2 → 2/1) ⇝ 7/2 | gain:0.12537014696271603 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 5/3 → 2/1 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 5/3 → 2/1 | clip:1 gain:0.25 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (5/3 → 2/1) ⇝ 7/3 | gain:0.16777864249203656 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (5/3 → 2/1) ⇝ 7/3 | gain:0.16733239616152812 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
   "[ (11/6 → 2/1) ⇝ 13/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ (11/6 → 2/1) ⇝ 13/6 | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (11/6 → 2/1) ⇝ 5/2 | gain:0.2520845519470039 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ 3/2 ⇜ (2/1 → 13/6) | gain:0.1256534205464579 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (11/6 → 2/1) ⇝ 5/2 | gain:0.2513068410929158 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 3/2 ⇜ (2/1 → 13/6) | gain:0.12537014696271603 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
   "[ 11/6 ⇜ (2/1 → 13/6) | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 11/6 ⇜ (2/1 → 13/6) | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 5/3 ⇜ (2/1 → 7/3) | gain:0.16777864249203656 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/3 ⇜ (2/1 → 7/3) | gain:0.16733239616152812 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
   "[ 2/1 → 7/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 2/1 → 7/3 | clip:1 gain:0.25 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 1/2 ⇜ (2/1 → 5/2) | gain:0.25074029392543207 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 1/2 ⇜ (2/1 → 5/2) | gain:0.25074029392543207 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 1/2 ⇜ (2/1 → 5/2) | gain:0.25074029392543207 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 3/2 ⇜ (2/1 → 5/2) | gain:0.25166796373805483 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/2 ⇜ (2/1 → 5/2) | gain:0.12583398186902742 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
-  "[ 11/6 ⇜ (2/1 → 5/2) | gain:0.2520845519470039 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ 2/1 → 8/3 | gain:0.5051177303460894 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 1/1 ⇜ (2/1 → 3/1) | gain:0.16777864249203656 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 1/1 ⇜ (2/1 → 3/1) | gain:0.16777864249203656 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 1/1 ⇜ (2/1 → 3/1) | gain:0.16777864249203656 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 3/2 ⇜ (2/1 → 3/1) ⇝ 7/2 | gain:0.12654642086444556 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 3/2 ⇜ (2/1 → 3/1) ⇝ 7/2 | gain:0.12654642086444556 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
-  "[ 3/2 ⇜ (2/1 → 3/1) ⇝ 7/2 | gain:0.12654642086444556 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ 2/1 → 3/1 | gain:0.5061856834577823 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 2/1 → 3/1 | gain:0.16872856115259408 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (2/1 → 3/1) ⇝ 4/1 | gain:0.5101350201564457 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ (2/1 → 3/1) ⇝ 4/1 | gain:0.5101350201564457 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (2/1 → 3/1) ⇝ 4/1 | gain:0.5101350201564457 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 1/2 ⇜ (2/1 → 5/2) | gain:0.25003024249544364 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 1/2 ⇜ (2/1 → 5/2) | gain:0.25003024249544364 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 1/2 ⇜ (2/1 → 5/2) | gain:0.25003024249544364 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 3/2 ⇜ (2/1 → 5/2) | gain:0.25074029392543207 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/2 ⇜ (2/1 → 5/2) | gain:0.12537014696271603 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
+  "[ 11/6 ⇜ (2/1 → 5/2) | gain:0.2513068410929158 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 2/1 → 8/3 | gain:0.5033359274761097 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 1/1 ⇜ (2/1 → 3/1) | gain:0.16682032967580462 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 1/1 ⇜ (2/1 → 3/1) | gain:0.16682032967580462 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 1/1 ⇜ (2/1 → 3/1) | gain:0.16682032967580462 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 3/2 ⇜ (2/1 → 3/1) ⇝ 7/2 | gain:0.12537014696271603 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ 3/2 ⇜ (2/1 → 3/1) ⇝ 7/2 | gain:0.12537014696271603 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
+  "[ 3/2 ⇜ (2/1 → 3/1) ⇝ 7/2 | gain:0.12537014696271603 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ 2/1 → 3/1 | gain:0.5033359274761097 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 2/1 → 3/1 | gain:0.16777864249203656 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ (2/1 → 3/1) ⇝ 4/1 | gain:0.5033359274761097 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ (2/1 → 3/1) ⇝ 4/1 | gain:0.5033359274761097 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (2/1 → 3/1) ⇝ 4/1 | gain:0.5033359274761097 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ 13/6 → 5/2 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 13/6 → 5/2 | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 13/6 → 17/6 | gain:0.12654642086444556 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 13/6 → 17/6 | gain:0.12604227597350195 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
   "[ 7/3 → 8/3 | clip:1 gain:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 7/3 → 8/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 7/3 → 3/1 | gain:0.16912540530808912 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 7/3 → 3/1 | gain:0.1683725767820298 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
   "[ 5/2 → 17/6 | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 5/2 → 17/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (5/2 → 3/1) ⇝ 19/6 | gain:0.2543459874306847 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ (5/2 → 3/1) ⇝ 7/2 | gain:0.25506751007822287 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ (5/2 → 3/1) ⇝ 7/2 | gain:0.12753375503911143 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ (5/2 → 3/1) ⇝ 9/2 | gain:0.25762002500238423 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (5/2 → 3/1) ⇝ 9/2 | gain:0.25762002500238423 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (5/2 → 3/1) ⇝ 9/2 | gain:0.25762002500238423 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (5/2 → 3/1) ⇝ 19/6 | gain:0.2530928417288911 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ (5/2 → 3/1) ⇝ 7/2 | gain:0.2530928417288911 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ (5/2 → 3/1) ⇝ 7/2 | gain:0.12654642086444556 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ (5/2 → 3/1) ⇝ 9/2 | gain:0.2530928417288911 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (5/2 → 3/1) ⇝ 9/2 | gain:0.2530928417288911 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (5/2 → 3/1) ⇝ 9/2 | gain:0.2530928417288911 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
   "[ 8/3 → 3/1 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 8/3 → 3/1 | clip:1 gain:0.25 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (8/3 → 3/1) ⇝ 10/3 | gain:0.5101350201564457 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (8/3 → 3/1) ⇝ 10/3 | gain:0.5073762159242674 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
   "[ (17/6 → 3/1) ⇝ 19/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ (17/6 → 3/1) ⇝ 19/6 | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (17/6 → 3/1) ⇝ 7/2 | gain:0.12792671070481904 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 5/2 ⇜ (3/1 → 19/6) | gain:0.2543459874306847 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ (17/6 → 3/1) ⇝ 7/2 | gain:0.12717299371534235 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 5/2 ⇜ (3/1 → 19/6) | gain:0.2530928417288911 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
   "[ 17/6 ⇜ (3/1 → 19/6) | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 17/6 ⇜ (3/1 → 19/6) | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 8/3 ⇜ (3/1 → 10/3) | gain:0.5101350201564457 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 8/3 ⇜ (3/1 → 10/3) | gain:0.5073762159242674 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
   "[ 3/1 → 10/3 | clip:1 gain:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 3/1 → 10/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 3/2 ⇜ (3/1 → 7/2) | gain:0.12654642086444556 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 3/2 ⇜ (3/1 → 7/2) | gain:0.12654642086444556 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
-  "[ 3/2 ⇜ (3/1 → 7/2) | gain:0.12654642086444556 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ 5/2 ⇜ (3/1 → 7/2) | gain:0.25506751007822287 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ 5/2 ⇜ (3/1 → 7/2) | gain:0.12753375503911143 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ 17/6 ⇜ (3/1 → 7/2) | gain:0.12792671070481904 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 3/1 → 11/3 | gain:0.17113612777765086 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 2/1 ⇜ (3/1 → 4/1) | gain:0.5101350201564457 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ 2/1 ⇜ (3/1 → 4/1) | gain:0.5101350201564457 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 2/1 ⇜ (3/1 → 4/1) | gain:0.5101350201564457 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 5/2 ⇜ (3/1 → 4/1) ⇝ 9/2 | gain:0.25762002500238423 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 5/2 ⇜ (3/1 → 4/1) ⇝ 9/2 | gain:0.25762002500238423 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 5/2 ⇜ (3/1 → 4/1) ⇝ 9/2 | gain:0.25762002500238423 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 3/1 → 4/1 | gain:0.5152400500047685 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 3/1 → 4/1 | gain:0.17174668333492282 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (3/1 → 4/1) ⇝ 5/1 | gain:0.17383743092456522 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (3/1 → 4/1) ⇝ 5/1 | gain:0.17383743092456522 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ (3/1 → 4/1) ⇝ 5/1 | gain:0.17383743092456522 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 3/2 ⇜ (3/1 → 7/2) | gain:0.12537014696271603 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ 3/2 ⇜ (3/1 → 7/2) | gain:0.12537014696271603 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
+  "[ 3/2 ⇜ (3/1 → 7/2) | gain:0.12537014696271603 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ 5/2 ⇜ (3/1 → 7/2) | gain:0.2530928417288911 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ 5/2 ⇜ (3/1 → 7/2) | gain:0.12654642086444556 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ 17/6 ⇜ (3/1 → 7/2) | gain:0.12717299371534235 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 3/1 → 11/3 | gain:0.17004500671881523 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 2/1 ⇜ (3/1 → 4/1) | gain:0.5033359274761097 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 2/1 ⇜ (3/1 → 4/1) | gain:0.5033359274761097 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 2/1 ⇜ (3/1 → 4/1) | gain:0.5033359274761097 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 5/2 ⇜ (3/1 → 4/1) ⇝ 9/2 | gain:0.2530928417288911 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 5/2 ⇜ (3/1 → 4/1) ⇝ 9/2 | gain:0.2530928417288911 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 5/2 ⇜ (3/1 → 4/1) ⇝ 9/2 | gain:0.2530928417288911 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 3/1 → 4/1 | gain:0.5101350201564457 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 3/1 → 4/1 | gain:0.17004500671881523 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ (3/1 → 4/1) ⇝ 5/1 | gain:0.17004500671881523 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (3/1 → 4/1) ⇝ 5/1 | gain:0.17004500671881523 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ (3/1 → 4/1) ⇝ 5/1 | gain:0.17004500671881523 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
   "[ 19/6 → 7/2 | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 19/6 → 7/2 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 19/6 → 23/6 | gain:0.25762002500238423 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 19/6 → 23/6 | gain:0.25585342140963807 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
   "[ 10/3 → 11/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 10/3 → 11/3 | clip:1 gain:0.25 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 10/3 → 4/1 | gain:0.5172017373171088 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 10/3 → 4/1 | gain:0.5134083833329526 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
   "[ 7/2 → 23/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 7/2 → 23/6 | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (7/2 → 4/1) ⇝ 25/6 | gain:0.1298232110695848 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (7/2 → 4/1) ⇝ 9/2 | gain:0.26075614638684785 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (7/2 → 4/1) ⇝ 9/2 | gain:0.13037807319342393 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
-  "[ (7/2 → 4/1) ⇝ 11/2 | gain:0.13223078370965538 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (7/2 → 4/1) ⇝ 11/2 | gain:0.13223078370965538 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
-  "[ (7/2 → 4/1) ⇝ 11/2 | gain:0.13223078370965538 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ (7/2 → 4/1) ⇝ 25/6 | gain:0.12881001250119212 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (7/2 → 4/1) ⇝ 9/2 | gain:0.25762002500238423 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (7/2 → 4/1) ⇝ 9/2 | gain:0.12881001250119212 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
+  "[ (7/2 → 4/1) ⇝ 11/2 | gain:0.12881001250119212 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ (7/2 → 4/1) ⇝ 11/2 | gain:0.12881001250119212 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
+  "[ (7/2 → 4/1) ⇝ 11/2 | gain:0.12881001250119212 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
   "[ 11/3 → 4/1 | clip:1 gain:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 11/3 → 4/1 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (11/3 → 4/1) ⇝ 13/3 | gain:0.17383743092456522 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (11/3 → 4/1) ⇝ 13/3 | gain:0.17240057910570294 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
   "[ (23/6 → 4/1) ⇝ 25/6 | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ (23/6 → 4/1) ⇝ 25/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (23/6 → 4/1) ⇝ 9/2 | gain:0.2619292729580872 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ 7/2 ⇜ (4/1 → 25/6) | gain:0.1298232110695848 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (23/6 → 4/1) ⇝ 9/2 | gain:0.2596464221391696 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 7/2 ⇜ (4/1 → 25/6) | gain:0.12881001250119212 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
   "[ 23/6 ⇜ (4/1 → 25/6) | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 23/6 ⇜ (4/1 → 25/6) | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 11/3 ⇜ (4/1 → 13/3) | gain:0.17383743092456522 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 11/3 ⇜ (4/1 → 13/3) | gain:0.17240057910570294 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ 4/1 → 13/3 | clip:1 gain:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 4/1 → 13/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 5/2 ⇜ (4/1 → 9/2) | gain:0.25762002500238423 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 5/2 ⇜ (4/1 → 9/2) | gain:0.25762002500238423 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 5/2 ⇜ (4/1 → 9/2) | gain:0.25762002500238423 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 7/2 ⇜ (4/1 → 9/2) | gain:0.26075614638684785 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 7/2 ⇜ (4/1 → 9/2) | gain:0.13037807319342393 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 23/6 ⇜ (4/1 → 9/2) | gain:0.2619292729580872 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ 4/1 → 14/3 | gain:0.5263296263974214 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 3/1 ⇜ (4/1 → 5/1) | gain:0.17383743092456522 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 3/1 ⇜ (4/1 → 5/1) | gain:0.17383743092456522 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 3/1 ⇜ (4/1 → 5/1) | gain:0.17383743092456522 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 7/2 ⇜ (4/1 → 5/1) ⇝ 11/2 | gain:0.13223078370965538 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (4/1 → 5/1) ⇝ 11/2 | gain:0.13223078370965538 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ 7/2 ⇜ (4/1 → 5/1) ⇝ 11/2 | gain:0.13223078370965538 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
-  "[ 4/1 → 5/1 | gain:0.5289231348386215 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 4/1 → 5/1 | gain:0.17630771161287384 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (4/1 → 5/1) ⇝ 6/1 | gain:0.5374082884455618 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ (4/1 → 5/1) ⇝ 6/1 | gain:0.5374082884455618 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
-  "[ (4/1 → 5/1) ⇝ 6/1 | gain:0.5374082884455618 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 5/2 ⇜ (4/1 → 9/2) | gain:0.2530928417288911 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 5/2 ⇜ (4/1 → 9/2) | gain:0.2530928417288911 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 5/2 ⇜ (4/1 → 9/2) | gain:0.2530928417288911 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 7/2 ⇜ (4/1 → 9/2) | gain:0.25762002500238423 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 7/2 ⇜ (4/1 → 9/2) | gain:0.12881001250119212 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ 23/6 ⇜ (4/1 → 9/2) | gain:0.2596464221391696 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 4/1 → 14/3 | gain:0.5215122927736957 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 3/1 ⇜ (4/1 → 5/1) | gain:0.17004500671881523 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 3/1 ⇜ (4/1 → 5/1) | gain:0.17004500671881523 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 3/1 ⇜ (4/1 → 5/1) | gain:0.17004500671881523 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 7/2 ⇜ (4/1 → 5/1) ⇝ 11/2 | gain:0.12881001250119212 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (4/1 → 5/1) ⇝ 11/2 | gain:0.12881001250119212 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 7/2 ⇜ (4/1 → 5/1) ⇝ 11/2 | gain:0.12881001250119212 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
+  "[ 4/1 → 5/1 | gain:0.5215122927736957 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 4/1 → 5/1 | gain:0.17383743092456522 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (4/1 → 5/1) ⇝ 6/1 | gain:0.5215122927736957 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ (4/1 → 5/1) ⇝ 6/1 | gain:0.5215122927736957 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
+  "[ (4/1 → 5/1) ⇝ 6/1 | gain:0.5215122927736957 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
   "[ 25/6 → 9/2 | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 25/6 → 9/2 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 25/6 → 29/6 | gain:0.13223078370965538 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 25/6 → 29/6 | gain:0.1309646364790436 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
   "[ 13/3 → 14/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 13/3 → 14/3 | clip:1 gain:0.25 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 13/3 → 5/1 | gain:0.1772120893804629 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 13/3 → 5/1 | gain:0.17544320879914047 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ 9/2 → 29/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 9/2 → 29/6 | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (9/2 → 5/1) ⇝ 31/6 | gain:0.26723291891932766 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ (9/2 → 5/1) ⇝ 11/2 | gain:0.2687041442227809 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (9/2 → 5/1) ⇝ 11/2 | gain:0.13435207211139044 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (9/2 → 5/1) ⇝ 13/2 | gain:0.273436125488663 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (9/2 → 5/1) ⇝ 13/2 | gain:0.273436125488663 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (9/2 → 5/1) ⇝ 13/2 | gain:0.273436125488663 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (9/2 → 5/1) ⇝ 31/6 | gain:0.26446156741931076 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ (9/2 → 5/1) ⇝ 11/2 | gain:0.26446156741931076 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (9/2 → 5/1) ⇝ 11/2 | gain:0.13223078370965538 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ (9/2 → 5/1) ⇝ 13/2 | gain:0.26446156741931076 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (9/2 → 5/1) ⇝ 13/2 | gain:0.26446156741931076 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (9/2 → 5/1) ⇝ 13/2 | gain:0.26446156741931076 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
   "[ 14/3 → 5/1 | clip:1 gain:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 14/3 → 5/1 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (14/3 → 5/1) ⇝ 16/3 | gain:0.5374082884455618 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (14/3 → 5/1) ⇝ 16/3 | gain:0.5316362681413888 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
   "[ (29/6 → 5/1) ⇝ 31/6 | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ (29/6 → 5/1) ⇝ 31/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (29/6 → 5/1) ⇝ 11/2 | gain:0.1351149289525865 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 9/2 ⇜ (5/1 → 31/6) | gain:0.26723291891932766 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ (29/6 → 5/1) ⇝ 11/2 | gain:0.13361645945966383 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 9/2 ⇜ (5/1 → 31/6) | gain:0.26446156741931076 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
   "[ 29/6 ⇜ (5/1 → 31/6) | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 29/6 ⇜ (5/1 → 31/6) | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 14/3 ⇜ (5/1 → 16/3) | gain:0.5374082884455618 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 14/3 ⇜ (5/1 → 16/3) | gain:0.5316362681413888 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
   "[ 5/1 → 16/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 5/1 → 16/3 | clip:1 gain:0.25 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 7/2 ⇜ (5/1 → 11/2) | gain:0.13223078370965538 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 7/2 ⇜ (5/1 → 11/2) | gain:0.13223078370965538 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ 7/2 ⇜ (5/1 → 11/2) | gain:0.13223078370965538 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
-  "[ 9/2 ⇜ (5/1 → 11/2) | gain:0.2687041442227809 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/2 ⇜ (5/1 → 11/2) | gain:0.13435207211139044 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 29/6 ⇜ (5/1 → 11/2) | gain:0.1351149289525865 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 5/1 → 17/3 | gain:0.1812052951550778 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 4/1 ⇜ (5/1 → 6/1) | gain:0.5374082884455618 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ 4/1 ⇜ (5/1 → 6/1) | gain:0.5374082884455618 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
-  "[ 4/1 ⇜ (5/1 → 6/1) | gain:0.5374082884455618 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 9/2 ⇜ (5/1 → 6/1) ⇝ 13/2 | gain:0.273436125488663 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 9/2 ⇜ (5/1 → 6/1) ⇝ 13/2 | gain:0.273436125488663 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 9/2 ⇜ (5/1 → 6/1) ⇝ 13/2 | gain:0.273436125488663 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 5/1 → 6/1 | gain:0.546872250977326 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 5/1 → 6/1 | gain:0.1822907503257753 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (5/1 → 6/1) ⇝ 7/1 | gain:0.18573092140656322 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (5/1 → 6/1) ⇝ 7/1 | gain:0.18573092140656322 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (5/1 → 6/1) ⇝ 7/1 | gain:0.18573092140656322 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 7/2 ⇜ (5/1 → 11/2) | gain:0.12881001250119212 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 7/2 ⇜ (5/1 → 11/2) | gain:0.12881001250119212 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 7/2 ⇜ (5/1 → 11/2) | gain:0.12881001250119212 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
+  "[ 9/2 ⇜ (5/1 → 11/2) | gain:0.26446156741931076 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/2 ⇜ (5/1 → 11/2) | gain:0.13223078370965538 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ 29/6 ⇜ (5/1 → 11/2) | gain:0.13361645945966383 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 5/1 → 17/3 | gain:0.17913609614852058 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 4/1 ⇜ (5/1 → 6/1) | gain:0.5215122927736957 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 4/1 ⇜ (5/1 → 6/1) | gain:0.5215122927736957 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
+  "[ 4/1 ⇜ (5/1 → 6/1) | gain:0.5215122927736957 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 9/2 ⇜ (5/1 → 6/1) ⇝ 13/2 | gain:0.26446156741931076 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 9/2 ⇜ (5/1 → 6/1) ⇝ 13/2 | gain:0.26446156741931076 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 9/2 ⇜ (5/1 → 6/1) ⇝ 13/2 | gain:0.26446156741931076 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 5/1 → 6/1 | gain:0.5374082884455618 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 5/1 → 6/1 | gain:0.17913609614852058 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ (5/1 → 6/1) ⇝ 7/1 | gain:0.17913609614852058 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (5/1 → 6/1) ⇝ 7/1 | gain:0.17913609614852058 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (5/1 → 6/1) ⇝ 7/1 | gain:0.17913609614852058 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
   "[ 31/6 → 11/2 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 31/6 → 11/2 | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 31/6 → 35/6 | gain:0.273436125488663 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 31/6 → 35/6 | gain:0.270229857905173 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
   "[ 16/3 → 17/3 | clip:1 gain:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 16/3 → 17/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 16/3 → 6/1 | gain:0.5502239722994923 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 16/3 → 6/1 | gain:0.5436158854652334 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
   "[ 11/2 → 35/6 | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 11/2 → 35/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (11/2 → 6/1) ⇝ 37/6 | gain:0.1384164835303142 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (11/2 → 6/1) ⇝ 13/2 | gain:0.27859638210984483 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (11/2 → 6/1) ⇝ 13/2 | gain:0.13929819105492242 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (11/2 → 6/1) ⇝ 15/2 | gain:0.14205631840689176 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (11/2 → 6/1) ⇝ 15/2 | gain:0.14205631840689176 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ (11/2 → 6/1) ⇝ 15/2 | gain:0.14205631840689176 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
+  "[ (11/2 → 6/1) ⇝ 37/6 | gain:0.1367180627443315 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (11/2 → 6/1) ⇝ 13/2 | gain:0.273436125488663 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (11/2 → 6/1) ⇝ 13/2 | gain:0.1367180627443315 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ (11/2 → 6/1) ⇝ 15/2 | gain:0.1367180627443315 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (11/2 → 6/1) ⇝ 15/2 | gain:0.1367180627443315 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ (11/2 → 6/1) ⇝ 15/2 | gain:0.1367180627443315 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
   "[ 17/3 → 6/1 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 17/3 → 6/1 | clip:1 gain:0.25 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (17/3 → 6/1) ⇝ 19/3 | gain:0.18573092140656322 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (17/3 → 6/1) ⇝ 19/3 | gain:0.18340799076649741 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ (35/6 → 6/1) ⇝ 37/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ (35/6 → 6/1) ⇝ 37/6 | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (35/6 → 6/1) ⇝ 13/2 | gain:0.28039942590514827 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ 11/2 ⇜ (6/1 → 37/6) | gain:0.1384164835303142 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (35/6 → 6/1) ⇝ 13/2 | gain:0.2768329670606284 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 11/2 ⇜ (6/1 → 37/6) | gain:0.1367180627443315 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
   "[ 35/6 ⇜ (6/1 → 37/6) | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 35/6 ⇜ (6/1 → 37/6) | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 17/3 ⇜ (6/1 → 19/3) | gain:0.18573092140656322 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/3 ⇜ (6/1 → 19/3) | gain:0.18340799076649741 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ 6/1 → 19/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 6/1 → 19/3 | clip:1 gain:0.25 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 9/2 ⇜ (6/1 → 13/2) | gain:0.273436125488663 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 9/2 ⇜ (6/1 → 13/2) | gain:0.273436125488663 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 9/2 ⇜ (6/1 → 13/2) | gain:0.273436125488663 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/2 ⇜ (6/1 → 13/2) | gain:0.27859638210984483 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/2 ⇜ (6/1 → 13/2) | gain:0.13929819105492242 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ 35/6 ⇜ (6/1 → 13/2) | gain:0.28039942590514827 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ 6/1 → 20/3 | gain:0.5644783658979073 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 5/1 ⇜ (6/1 → 7/1) | gain:0.18573092140656322 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 5/1 ⇜ (6/1 → 7/1) | gain:0.18573092140656322 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ 5/1 ⇜ (6/1 → 7/1) | gain:0.18573092140656322 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ 11/2 ⇜ (6/1 → 7/1) ⇝ 15/2 | gain:0.14205631840689176 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 11/2 ⇜ (6/1 → 7/1) ⇝ 15/2 | gain:0.14205631840689176 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 11/2 ⇜ (6/1 → 7/1) ⇝ 15/2 | gain:0.14205631840689176 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
-  "[ 6/1 → 7/1 | gain:0.568225273627567 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 6/1 → 7/1 | gain:0.18940842454252232 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ (6/1 → 7/1) ⇝ 8/1 | gain:0.5798073875911826 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ (6/1 → 7/1) ⇝ 8/1 | gain:0.5798073875911826 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
-  "[ (6/1 → 7/1) ⇝ 8/1 | gain:0.5798073875911826 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 9/2 ⇜ (6/1 → 13/2) | gain:0.26446156741931076 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 9/2 ⇜ (6/1 → 13/2) | gain:0.26446156741931076 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 9/2 ⇜ (6/1 → 13/2) | gain:0.26446156741931076 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/2 ⇜ (6/1 → 13/2) | gain:0.273436125488663 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/2 ⇜ (6/1 → 13/2) | gain:0.1367180627443315 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ 35/6 ⇜ (6/1 → 13/2) | gain:0.2768329670606284 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 6/1 → 20/3 | gain:0.5571927642196897 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 5/1 ⇜ (6/1 → 7/1) | gain:0.17913609614852058 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 5/1 ⇜ (6/1 → 7/1) | gain:0.17913609614852058 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ 5/1 ⇜ (6/1 → 7/1) | gain:0.17913609614852058 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 11/2 ⇜ (6/1 → 7/1) ⇝ 15/2 | gain:0.1367180627443315 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 11/2 ⇜ (6/1 → 7/1) ⇝ 15/2 | gain:0.1367180627443315 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ 11/2 ⇜ (6/1 → 7/1) ⇝ 15/2 | gain:0.1367180627443315 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
+  "[ 6/1 → 7/1 | gain:0.5571927642196897 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 6/1 → 7/1 | gain:0.18573092140656322 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ (6/1 → 7/1) ⇝ 8/1 | gain:0.5571927642196897 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (6/1 → 7/1) ⇝ 8/1 | gain:0.5571927642196897 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
+  "[ (6/1 → 7/1) ⇝ 8/1 | gain:0.5571927642196897 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
   "[ 37/6 → 13/2 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 37/6 → 13/2 | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 37/6 → 41/6 | gain:0.14205631840689176 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 37/6 → 41/6 | gain:0.14019971295257413 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
   "[ 19/3 → 20/3 | clip:1 gain:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 19/3 → 20/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 19/3 → 7/1 | gain:0.19067778621180798 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 19/3 → 7/1 | gain:0.18815945529930245 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ 13/2 → 41/6 | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 13/2 → 41/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (13/2 → 7/1) ⇝ 43/6 | gain:0.2879481196998103 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ (13/2 → 7/1) ⇝ 15/2 | gain:0.2899036937955913 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (13/2 → 7/1) ⇝ 15/2 | gain:0.14495184689779564 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ (13/2 → 7/1) ⇝ 17/2 | gain:0.29588166835112206 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (13/2 → 7/1) ⇝ 17/2 | gain:0.29588166835112206 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (13/2 → 7/1) ⇝ 17/2 | gain:0.29588166835112206 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (13/2 → 7/1) ⇝ 43/6 | gain:0.2841126368137835 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (13/2 → 7/1) ⇝ 15/2 | gain:0.2841126368137835 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (13/2 → 7/1) ⇝ 15/2 | gain:0.14205631840689176 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ (13/2 → 7/1) ⇝ 17/2 | gain:0.2841126368137835 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (13/2 → 7/1) ⇝ 17/2 | gain:0.2841126368137835 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (13/2 → 7/1) ⇝ 17/2 | gain:0.2841126368137835 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
   "[ 20/3 → 7/1 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 20/3 → 7/1 | clip:1 gain:0.25 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (20/3 → 7/1) ⇝ 22/3 | gain:0.5798073875911826 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (20/3 → 7/1) ⇝ 22/3 | gain:0.5720333586354239 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
   "[ (41/6 → 7/1) ⇝ 43/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ (41/6 → 7/1) ⇝ 43/6 | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (41/6 → 7/1) ⇝ 15/2 | gain:0.14594003660622698 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/2 ⇜ (7/1 → 43/6) | gain:0.2879481196998103 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (41/6 → 7/1) ⇝ 15/2 | gain:0.14397405984990516 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/2 ⇜ (7/1 → 43/6) | gain:0.2841126368137835 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
   "[ 41/6 ⇜ (7/1 → 43/6) | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 41/6 ⇜ (7/1 → 43/6) | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 20/3 ⇜ (7/1 → 22/3) | gain:0.5798073875911826 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 20/3 ⇜ (7/1 → 22/3) | gain:0.5720333586354239 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
   "[ 7/1 → 22/3 | clip:1 gain:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 7/1 → 22/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 11/2 ⇜ (7/1 → 15/2) | gain:0.14205631840689176 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 11/2 ⇜ (7/1 → 15/2) | gain:0.14205631840689176 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 11/2 ⇜ (7/1 → 15/2) | gain:0.14205631840689176 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
-  "[ 13/2 ⇜ (7/1 → 15/2) | gain:0.2899036937955913 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 13/2 ⇜ (7/1 → 15/2) | gain:0.14495184689779564 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ 41/6 ⇜ (7/1 → 15/2) | gain:0.14594003660622698 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 7/1 → 23/3 | gain:0.19591591633675248 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 6/1 ⇜ (7/1 → 8/1) | gain:0.5798073875911826 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ 6/1 ⇜ (7/1 → 8/1) | gain:0.5798073875911826 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
-  "[ 6/1 ⇜ (7/1 → 8/1) | gain:0.5798073875911826 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 13/2 ⇜ (7/1 → 8/1) ⇝ 17/2 | gain:0.29588166835112206 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 13/2 ⇜ (7/1 → 8/1) ⇝ 17/2 | gain:0.29588166835112206 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 13/2 ⇜ (7/1 → 8/1) ⇝ 17/2 | gain:0.29588166835112206 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 7/1 → 8/1 | gain:0.5917633367022441 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 7/1 → 8/1 | gain:0.1972544455674147 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (7/1 → 8/1) ⇝ 9/1 | gain:0.20130281100670494 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (7/1 → 8/1) ⇝ 9/1 | gain:0.20130281100670494 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ (7/1 → 8/1) ⇝ 9/1 | gain:0.20130281100670494 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 11/2 ⇜ (7/1 → 15/2) | gain:0.1367180627443315 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 11/2 ⇜ (7/1 → 15/2) | gain:0.1367180627443315 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ 11/2 ⇜ (7/1 → 15/2) | gain:0.1367180627443315 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
+  "[ 13/2 ⇜ (7/1 → 15/2) | gain:0.2841126368137835 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 13/2 ⇜ (7/1 → 15/2) | gain:0.14205631840689176 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ 41/6 ⇜ (7/1 → 15/2) | gain:0.14397405984990516 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 7/1 → 23/3 | gain:0.19326912919706085 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 6/1 ⇜ (7/1 → 8/1) | gain:0.5571927642196897 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 6/1 ⇜ (7/1 → 8/1) | gain:0.5571927642196897 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
+  "[ 6/1 ⇜ (7/1 → 8/1) | gain:0.5571927642196897 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 13/2 ⇜ (7/1 → 8/1) ⇝ 17/2 | gain:0.2841126368137835 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 13/2 ⇜ (7/1 → 8/1) ⇝ 17/2 | gain:0.2841126368137835 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 13/2 ⇜ (7/1 → 8/1) ⇝ 17/2 | gain:0.2841126368137835 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 7/1 → 8/1 | gain:0.5798073875911826 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 7/1 → 8/1 | gain:0.19326912919706085 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ (7/1 → 8/1) ⇝ 9/1 | gain:0.19326912919706085 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (7/1 → 8/1) ⇝ 9/1 | gain:0.19326912919706085 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ (7/1 → 8/1) ⇝ 9/1 | gain:0.19326912919706085 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
   "[ 43/6 → 15/2 | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 43/6 → 15/2 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 43/6 → 47/6 | gain:0.29588166835112206 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 43/6 → 47/6 | gain:0.29188007321245396 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
   "[ 22/3 → 23/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 22/3 → 23/3 | clip:1 gain:0.25 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 22/3 → 8/1 | gain:0.595799977452322 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 22/3 → 8/1 | gain:0.5877477490102575 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
   "[ 15/2 → 47/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 15/2 → 47/6 | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (15/2 → 8/1) ⇝ 49/6 | gain:0.1499626710398192 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (15/2 → 8/1) ⇝ 17/2 | gain:0.30195421651005744 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (15/2 → 8/1) ⇝ 17/2 | gain:0.15097710825502872 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ (15/2 → 8/1) ⇝ 19/2 | gain:0.1540133823344964 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ (15/2 → 8/1) ⇝ 19/2 | gain:0.1540133823344964 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (15/2 → 8/1) ⇝ 19/2 | gain:0.1540133823344964 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
+  "[ (15/2 → 8/1) ⇝ 49/6 | gain:0.14794083417556103 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (15/2 → 8/1) ⇝ 17/2 | gain:0.29588166835112206 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (15/2 → 8/1) ⇝ 17/2 | gain:0.14794083417556103 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ (15/2 → 8/1) ⇝ 19/2 | gain:0.14794083417556103 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ (15/2 → 8/1) ⇝ 19/2 | gain:0.14794083417556103 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ (15/2 → 8/1) ⇝ 19/2 | gain:0.14794083417556103 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
   "[ 23/3 → 8/1 | clip:1 gain:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 23/3 → 8/1 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (23/3 → 8/1) ⇝ 25/3 | gain:0.20130281100670494 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (23/3 → 8/1) ⇝ 25/3 | gain:0.19859999248410734 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ (47/6 → 8/1) ⇝ 49/6 | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ (47/6 → 8/1) ⇝ 49/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (47/6 → 8/1) ⇝ 17/2 | gain:0.3039830909404765 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ 15/2 ⇜ (8/1 → 49/6) | gain:0.1499626710398192 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (47/6 → 8/1) ⇝ 17/2 | gain:0.2999253420796384 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 15/2 ⇜ (8/1 → 49/6) | gain:0.14794083417556103 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
   "[ 47/6 ⇜ (8/1 → 49/6) | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 47/6 ⇜ (8/1 → 49/6) | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ 23/3 ⇜ (8/1 → 25/3) | gain:0.20130281100670494 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 23/3 ⇜ (8/1 → 25/3) | gain:0.19859999248410734 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
   "[ 8/1 → 25/3 | clip:1 gain:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 8/1 → 25/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 13/2 ⇜ (8/1 → 17/2) | gain:0.29588166835112206 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 13/2 ⇜ (8/1 → 17/2) | gain:0.29588166835112206 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 13/2 ⇜ (8/1 → 17/2) | gain:0.29588166835112206 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 15/2 ⇜ (8/1 → 17/2) | gain:0.30195421651005744 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 15/2 ⇜ (8/1 → 17/2) | gain:0.15097710825502872 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
-  "[ 47/6 ⇜ (8/1 → 17/2) | gain:0.3039830909404765 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ 8/1 → 26/3 | gain:0.6120168885879078 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
-  "[ 7/1 ⇜ (8/1 → 9/1) | gain:0.20130281100670494 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 7/1 ⇜ (8/1 → 9/1) | gain:0.20130281100670494 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 7/1 ⇜ (8/1 → 9/1) | gain:0.20130281100670494 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 15/2 ⇜ (8/1 → 9/1) ⇝ 19/2 | gain:0.1540133823344964 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 15/2 ⇜ (8/1 → 9/1) ⇝ 19/2 | gain:0.1540133823344964 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 15/2 ⇜ (8/1 → 9/1) ⇝ 19/2 | gain:0.1540133823344964 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 8/1 → 9/1 | gain:0.6160535293379856 clip:1 note:E4 s:piano release:0.1 pan:0.5462962962962963 ]",
-  "[ 8/1 → 9/1 | gain:0.2053511764459952 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (8/1 → 9/1) ⇝ 10/1 | gain:0.6280094784490473 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ (8/1 → 9/1) ⇝ 10/1 | gain:0.6280094784490473 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ (8/1 → 9/1) ⇝ 10/1 | gain:0.6280094784490473 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 13/2 ⇜ (8/1 → 17/2) | gain:0.2841126368137835 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 13/2 ⇜ (8/1 → 17/2) | gain:0.2841126368137835 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 13/2 ⇜ (8/1 → 17/2) | gain:0.2841126368137835 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 15/2 ⇜ (8/1 → 17/2) | gain:0.29588166835112206 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 15/2 ⇜ (8/1 → 17/2) | gain:0.14794083417556103 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
+  "[ 47/6 ⇜ (8/1 → 17/2) | gain:0.2999253420796384 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 8/1 → 26/3 | gain:0.6039084330201149 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ 7/1 ⇜ (8/1 → 9/1) | gain:0.19326912919706085 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 7/1 ⇜ (8/1 → 9/1) | gain:0.19326912919706085 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 7/1 ⇜ (8/1 → 9/1) | gain:0.19326912919706085 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 15/2 ⇜ (8/1 → 9/1) ⇝ 19/2 | gain:0.14794083417556103 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ 15/2 ⇜ (8/1 → 9/1) ⇝ 19/2 | gain:0.14794083417556103 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 15/2 ⇜ (8/1 → 9/1) ⇝ 19/2 | gain:0.14794083417556103 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ 8/1 → 9/1 | gain:0.6039084330201149 clip:1 note:E4 s:piano release:0.1 pan:0.5462962962962963 ]",
+  "[ 8/1 → 9/1 | gain:0.20130281100670494 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ (8/1 → 9/1) ⇝ 10/1 | gain:0.6039084330201149 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ (8/1 → 9/1) ⇝ 10/1 | gain:0.6039084330201149 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (8/1 → 9/1) ⇝ 10/1 | gain:0.6039084330201149 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ 49/6 → 17/2 | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 49/6 → 17/2 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 49/6 → 53/6 | gain:0.1540133823344964 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 49/6 → 53/6 | gain:0.15199154547023824 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
   "[ 25/3 → 26/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 25/3 → 26/3 | clip:1 gain:0.25 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ 25/3 → 9/1 | gain:0.2066897056766574 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 25/3 → 9/1 | gain:0.2040056295293026 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
   "[ 17/2 → 53/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 17/2 → 53/6 | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (17/2 → 9/1) ⇝ 55/6 | gain:0.3120283598076609 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ (17/2 → 9/1) ⇝ 19/2 | gain:0.31400473922452365 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ (17/2 → 9/1) ⇝ 19/2 | gain:0.15700236961226183 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (17/2 → 9/1) ⇝ 21/2 | gain:0.3197957962063314 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ (17/2 → 9/1) ⇝ 21/2 | gain:0.3197957962063314 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (17/2 → 9/1) ⇝ 21/2 | gain:0.3197957962063314 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (17/2 → 9/1) ⇝ 55/6 | gain:0.3080267646689928 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ (17/2 → 9/1) ⇝ 19/2 | gain:0.3080267646689928 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ (17/2 → 9/1) ⇝ 19/2 | gain:0.1540133823344964 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ (17/2 → 9/1) ⇝ 21/2 | gain:0.3080267646689928 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (17/2 → 9/1) ⇝ 21/2 | gain:0.3080267646689928 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (17/2 → 9/1) ⇝ 21/2 | gain:0.3080267646689928 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
   "[ 26/3 → 9/1 | clip:1 gain:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 26/3 → 9/1 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (26/3 → 9/1) ⇝ 28/3 | gain:0.6280094784490473 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ (26/3 → 9/1) ⇝ 28/3 | gain:0.6200691170299722 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
   "[ (53/6 → 9/1) ⇝ 55/6 | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ (53/6 → 9/1) ⇝ 55/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (53/6 → 9/1) ⇝ 19/2 | gain:0.15798015666015228 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 17/2 ⇜ (9/1 → 55/6) | gain:0.3120283598076609 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ (53/6 → 9/1) ⇝ 19/2 | gain:0.15601417990383046 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 17/2 ⇜ (9/1 → 55/6) | gain:0.3080267646689928 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
   "[ 53/6 ⇜ (9/1 → 55/6) | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 53/6 ⇜ (9/1 → 55/6) | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 26/3 ⇜ (9/1 → 28/3) | gain:0.6280094784490473 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ 26/3 ⇜ (9/1 → 28/3) | gain:0.6200691170299722 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
   "[ 9/1 → 28/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 9/1 → 28/3 | clip:1 gain:0.25 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ 15/2 ⇜ (9/1 → 19/2) | gain:0.1540133823344964 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 15/2 ⇜ (9/1 → 19/2) | gain:0.1540133823344964 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 15/2 ⇜ (9/1 → 19/2) | gain:0.1540133823344964 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 17/2 ⇜ (9/1 → 19/2) | gain:0.31400473922452365 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
-  "[ 17/2 ⇜ (9/1 → 19/2) | gain:0.15700236961226183 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 53/6 ⇜ (9/1 → 19/2) | gain:0.15798015666015228 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 9/1 → 29/3 | gain:0.21192783580160193 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 8/1 ⇜ (9/1 → 10/1) | gain:0.6280094784490473 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ 8/1 ⇜ (9/1 → 10/1) | gain:0.6280094784490473 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ 8/1 ⇜ (9/1 → 10/1) | gain:0.6280094784490473 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 17/2 ⇜ (9/1 → 10/1) ⇝ 21/2 | gain:0.3197957962063314 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 17/2 ⇜ (9/1 → 10/1) ⇝ 21/2 | gain:0.3197957962063314 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 17/2 ⇜ (9/1 → 10/1) ⇝ 21/2 | gain:0.3197957962063314 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 9/1 → 10/1 | gain:0.6395915924126628 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 9/1 → 10/1 | gain:0.2131971974708876 clip:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (9/1 → 10/1) ⇝ 11/1 | gain:0.2168747006068467 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (9/1 → 10/1) ⇝ 11/1 | gain:0.2168747006068467 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (9/1 → 10/1) ⇝ 11/1 | gain:0.2168747006068467 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 15/2 ⇜ (9/1 → 19/2) | gain:0.14794083417556103 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ 15/2 ⇜ (9/1 → 19/2) | gain:0.14794083417556103 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 15/2 ⇜ (9/1 → 19/2) | gain:0.14794083417556103 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ 17/2 ⇜ (9/1 → 19/2) | gain:0.3080267646689928 clip:1 note:E5 s:piano release:0.1 pan:0.6018518518518519 ]",
+  "[ 17/2 ⇜ (9/1 → 19/2) | gain:0.1540133823344964 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ 53/6 ⇜ (9/1 → 19/2) | gain:0.15601417990383046 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 9/1 → 29/3 | gain:0.20933649281634908 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 8/1 ⇜ (9/1 → 10/1) | gain:0.6039084330201149 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 8/1 ⇜ (9/1 → 10/1) | gain:0.6039084330201149 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 8/1 ⇜ (9/1 → 10/1) | gain:0.6039084330201149 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 17/2 ⇜ (9/1 → 10/1) ⇝ 21/2 | gain:0.3080267646689928 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 17/2 ⇜ (9/1 → 10/1) ⇝ 21/2 | gain:0.3080267646689928 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/2 ⇜ (9/1 → 10/1) ⇝ 21/2 | gain:0.3080267646689928 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 9/1 → 10/1 | gain:0.6280094784490473 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 9/1 → 10/1 | gain:0.20933649281634908 clip:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
+  "[ (9/1 → 10/1) ⇝ 11/1 | gain:0.20933649281634908 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (9/1 → 10/1) ⇝ 11/1 | gain:0.20933649281634908 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (9/1 → 10/1) ⇝ 11/1 | gain:0.20933649281634908 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
   "[ 55/6 → 19/2 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 55/6 → 19/2 | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ 55/6 → 59/6 | gain:0.3197957962063314 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 55/6 → 59/6 | gain:0.31596031332030455 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
   "[ 28/3 → 29/3 | clip:1 gain:1 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 28/3 → 29/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 28/3 → 10/1 | gain:0.6433385001423223 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
+  "[ 28/3 → 10/1 | gain:0.6357835074048058 clip:1 note:D2 s:piano release:0.1 pan:0.42592592592592593 ]",
   "[ 19/2 → 59/6 | clip:1 gain:0.5 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
   "[ 19/2 → 59/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (19/2 → 10/1) ⇝ 61/6 | gain:0.16175450355748333 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (19/2 → 10/1) ⇝ 21/2 | gain:0.32531205091027005 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (19/2 → 10/1) ⇝ 21/2 | gain:0.16265602545513502 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
-  "[ (19/2 → 10/1) ⇝ 23/2 | gain:0.16523615376572595 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (19/2 → 10/1) ⇝ 23/2 | gain:0.16523615376572595 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ (19/2 → 10/1) ⇝ 23/2 | gain:0.16523615376572595 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ (19/2 → 10/1) ⇝ 61/6 | gain:0.1598978981031657 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (19/2 → 10/1) ⇝ 21/2 | gain:0.3197957962063314 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (19/2 → 10/1) ⇝ 21/2 | gain:0.1598978981031657 clip:1 note:E7 s:piano release:0.1 pan:0.712962962962963 ]",
+  "[ (19/2 → 10/1) ⇝ 23/2 | gain:0.1598978981031657 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ (19/2 → 10/1) ⇝ 23/2 | gain:0.1598978981031657 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ (19/2 → 10/1) ⇝ 23/2 | gain:0.1598978981031657 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 29/3 → 10/1 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 29/3 → 10/1 | clip:1 gain:0.25 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (29/3 → 10/1) ⇝ 31/3 | gain:0.2168747006068467 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ (29/3 → 10/1) ⇝ 31/3 | gain:0.21444616671410743 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
   "[ (59/6 → 10/1) ⇝ 61/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ (59/6 → 10/1) ⇝ 61/6 | clip:1 gain:0.125 note:E6 s:piano release:0.1 pan:0.6574074074074074 ]",
-  "[ (59/6 → 10/1) ⇝ 21/2 | gain:0.3270754659594865 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
-  "[ 19/2 ⇜ (10/1 → 61/6) | gain:0.16175450355748333 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (59/6 → 10/1) ⇝ 21/2 | gain:0.32350900711496666 clip:1 note:D3 s:piano release:0.1 pan:0.4814814814814815 ]",
+  "[ 19/2 ⇜ (10/1 → 61/6) | gain:0.1598978981031657 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
   "[ 59/6 ⇜ (10/1 → 61/6) | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 59/6 ⇜ (10/1 → 61/6) | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 29/3 ⇜ (10/1 → 31/3) | gain:0.2168747006068467 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 29/3 ⇜ (10/1 → 31/3) | gain:0.21444616671410743 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
   "[ 10/1 → 31/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 10/1 → 31/3 | clip:1 gain:0.25 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 17/2 ⇜ (10/1 → 21/2) | gain:0.3197957962063314 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 17/2 ⇜ (10/1 → 21/2) | gain:0.3197957962063314 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 17/2 ⇜ (10/1 → 21/2) | gain:0.3197957962063314 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 19/2 ⇜ (10/1 → 21/2) | gain:0.32531205091027005 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 19/2 ⇜ (10/1 → 21/2) | gain:0.16265602545513502 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
-  "[ 59/6 ⇜ (10/1 → 21/2) | gain:0.3270754659594865 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ 10/1 → 32/3 | gain:0.6575928937407377 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
-  "[ 9/1 ⇜ (10/1 → 11/1) | gain:0.2168747006068467 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 9/1 ⇜ (10/1 → 11/1) | gain:0.2168747006068467 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ 9/1 ⇜ (10/1 → 11/1) | gain:0.2168747006068467 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 19/2 ⇜ (10/1 → 11/1) ⇝ 23/2 | gain:0.16523615376572595 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 19/2 ⇜ (10/1 → 11/1) ⇝ 23/2 | gain:0.16523615376572595 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
-  "[ 19/2 ⇜ (10/1 → 11/1) ⇝ 23/2 | gain:0.16523615376572595 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ 10/1 → 11/1 | gain:0.6609446150629038 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 10/1 → 11/1 | gain:0.22031487168763458 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (10/1 → 11/1) ⇝ 12/1 | gain:0.670408577594668 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ (10/1 → 11/1) ⇝ 12/1 | gain:0.670408577594668 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ (10/1 → 11/1) ⇝ 12/1 | gain:0.670408577594668 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 17/2 ⇜ (10/1 → 21/2) | gain:0.3080267646689928 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 17/2 ⇜ (10/1 → 21/2) | gain:0.3080267646689928 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 17/2 ⇜ (10/1 → 21/2) | gain:0.3080267646689928 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 19/2 ⇜ (10/1 → 21/2) | gain:0.3197957962063314 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 19/2 ⇜ (10/1 → 21/2) | gain:0.1598978981031657 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
+  "[ 59/6 ⇜ (10/1 → 21/2) | gain:0.32350900711496666 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 10/1 → 32/3 | gain:0.6506241018205401 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 9/1 ⇜ (10/1 → 11/1) | gain:0.20933649281634908 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 9/1 ⇜ (10/1 → 11/1) | gain:0.20933649281634908 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ 9/1 ⇜ (10/1 → 11/1) | gain:0.20933649281634908 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 19/2 ⇜ (10/1 → 11/1) ⇝ 23/2 | gain:0.1598978981031657 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ 19/2 ⇜ (10/1 → 11/1) ⇝ 23/2 | gain:0.1598978981031657 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
+  "[ 19/2 ⇜ (10/1 → 11/1) ⇝ 23/2 | gain:0.1598978981031657 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ 10/1 → 11/1 | gain:0.6506241018205401 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 10/1 → 11/1 | gain:0.2168747006068467 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ (10/1 → 11/1) ⇝ 12/1 | gain:0.6506241018205401 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ (10/1 → 11/1) ⇝ 12/1 | gain:0.6506241018205401 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ (10/1 → 11/1) ⇝ 12/1 | gain:0.6506241018205401 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ 61/6 → 21/2 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 61/6 → 21/2 | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 61/6 → 65/6 | gain:0.16523615376572595 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 61/6 → 65/6 | gain:0.16353773297974325 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
   "[ 31/3 → 32/3 | clip:1 gain:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 31/3 → 32/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 31/3 → 11/1 | gain:0.2214003268583321 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 31/3 → 11/1 | gain:0.21919763124691255 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
   "[ 21/2 → 65/6 | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 21/2 → 65/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (21/2 → 11/1) ⇝ 67/6 | gain:0.33367857511494187 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ (21/2 → 11/1) ⇝ 23/2 | gain:0.335204288797334 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ (21/2 → 11/1) ⇝ 23/2 | gain:0.167602144398667 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ (21/2 → 11/1) ⇝ 25/2 | gain:0.33944686560080417 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ (21/2 → 11/1) ⇝ 25/2 | gain:0.33944686560080417 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ (21/2 → 11/1) ⇝ 25/2 | gain:0.33944686560080417 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (21/2 → 11/1) ⇝ 67/6 | gain:0.3304723075314519 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ (21/2 → 11/1) ⇝ 23/2 | gain:0.3304723075314519 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ (21/2 → 11/1) ⇝ 23/2 | gain:0.16523615376572595 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ (21/2 → 11/1) ⇝ 25/2 | gain:0.3304723075314519 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (21/2 → 11/1) ⇝ 25/2 | gain:0.3304723075314519 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ (21/2 → 11/1) ⇝ 25/2 | gain:0.3304723075314519 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
   "[ 32/3 → 11/1 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 32/3 → 11/1 | clip:1 gain:0.25 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (32/3 → 11/1) ⇝ 34/3 | gain:0.670408577594668 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ (32/3 → 11/1) ⇝ 34/3 | gain:0.6642009805749963 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
   "[ (65/6 → 11/1) ⇝ 67/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ (65/6 → 11/1) ⇝ 67/6 | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (65/6 → 11/1) ⇝ 23/2 | gain:0.1683377570503936 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 21/2 ⇜ (11/1 → 67/6) | gain:0.33367857511494187 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ (65/6 → 11/1) ⇝ 23/2 | gain:0.16683928755747093 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 21/2 ⇜ (11/1 → 67/6) | gain:0.3304723075314519 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
   "[ 65/6 ⇜ (11/1 → 67/6) | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 65/6 ⇜ (11/1 → 67/6) | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 32/3 ⇜ (11/1 → 34/3) | gain:0.670408577594668 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 32/3 ⇜ (11/1 → 34/3) | gain:0.6642009805749963 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
   "[ 11/1 → 34/3 | clip:1 gain:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 11/1 → 34/3 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 19/2 ⇜ (11/1 → 23/2) | gain:0.16523615376572595 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 19/2 ⇜ (11/1 → 23/2) | gain:0.16523615376572595 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
-  "[ 19/2 ⇜ (11/1 → 23/2) | gain:0.16523615376572595 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ 21/2 ⇜ (11/1 → 23/2) | gain:0.335204288797334 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ 21/2 ⇜ (11/1 → 23/2) | gain:0.167602144398667 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ 65/6 ⇜ (11/1 → 23/2) | gain:0.1683377570503936 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 11/1 → 35/3 | gain:0.22539353263294704 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 10/1 ⇜ (11/1 → 12/1) | gain:0.670408577594668 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ 10/1 ⇜ (11/1 → 12/1) | gain:0.670408577594668 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
-  "[ 10/1 ⇜ (11/1 → 12/1) | gain:0.670408577594668 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 21/2 ⇜ (11/1 → 12/1) ⇝ 25/2 | gain:0.33944686560080417 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 21/2 ⇜ (11/1 → 12/1) ⇝ 25/2 | gain:0.33944686560080417 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
-  "[ 21/2 ⇜ (11/1 → 12/1) ⇝ 25/2 | gain:0.33944686560080417 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 11/1 → 12/1 | gain:0.6788937312016083 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 11/1 → 12/1 | gain:0.2262979104005361 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (11/1 → 12/1) ⇝ 13/1 | gain:0.22876819108884472 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (11/1 → 12/1) ⇝ 13/1 | gain:0.22876819108884472 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
-  "[ (11/1 → 12/1) ⇝ 13/1 | gain:0.22876819108884472 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 19/2 ⇜ (11/1 → 23/2) | gain:0.1598978981031657 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ 19/2 ⇜ (11/1 → 23/2) | gain:0.1598978981031657 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
+  "[ 19/2 ⇜ (11/1 → 23/2) | gain:0.1598978981031657 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ 21/2 ⇜ (11/1 → 23/2) | gain:0.3304723075314519 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ 21/2 ⇜ (11/1 → 23/2) | gain:0.16523615376572595 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ 65/6 ⇜ (11/1 → 23/2) | gain:0.16683928755747093 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 11/1 → 35/3 | gain:0.22346952586488933 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 10/1 ⇜ (11/1 → 12/1) | gain:0.6506241018205401 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 10/1 ⇜ (11/1 → 12/1) | gain:0.6506241018205401 clip:1 note:B3 s:piano release:0.1 pan:0.5231481481481481 ]",
+  "[ 10/1 ⇜ (11/1 → 12/1) | gain:0.6506241018205401 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 21/2 ⇜ (11/1 → 12/1) ⇝ 25/2 | gain:0.3304723075314519 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 21/2 ⇜ (11/1 → 12/1) ⇝ 25/2 | gain:0.3304723075314519 clip:1 note:B4 s:piano release:0.1 pan:0.5787037037037037 ]",
+  "[ 21/2 ⇜ (11/1 → 12/1) ⇝ 25/2 | gain:0.3304723075314519 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 11/1 → 12/1 | gain:0.670408577594668 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 11/1 → 12/1 | gain:0.22346952586488933 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ (11/1 → 12/1) ⇝ 13/1 | gain:0.22346952586488933 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (11/1 → 12/1) ⇝ 13/1 | gain:0.22346952586488933 clip:1 note:B5 s:piano release:0.1 pan:0.6342592592592593 ]",
+  "[ (11/1 → 12/1) ⇝ 13/1 | gain:0.22346952586488933 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
   "[ 67/6 → 23/2 | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 67/6 → 23/2 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 67/6 → 71/6 | gain:0.33944686560080417 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 67/6 → 71/6 | gain:0.3366755141007872 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
   "[ 34/3 → 35/3 | clip:1 gain:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 34/3 → 35/3 | clip:1 gain:0.25 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 34/3 → 12/1 | gain:0.6814872396428084 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
+  "[ 34/3 → 12/1 | gain:0.6761805978988411 clip:1 note:G2 s:piano release:0.1 pan:0.44907407407407407 ]",
   "[ 23/2 → 71/6 | clip:1 gain:0.5 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
   "[ 23/2 → 71/6 | clip:1 gain:0.125 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (23/2 → 12/1) ⇝ 73/6 | gain:0.17098958003101383 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (23/2 → 12/1) ⇝ 25/2 | gain:0.3431522866332671 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (23/2 → 12/1) ⇝ 25/2 | gain:0.17157614331663354 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
-  "[ (23/2 → 12/1) ⇝ 27/2 | gain:0.17314420400886532 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (23/2 → 12/1) ⇝ 27/2 | gain:0.17314420400886532 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
-  "[ (23/2 → 12/1) ⇝ 27/2 | gain:0.17314420400886532 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ (23/2 → 12/1) ⇝ 73/6 | gain:0.16972343280040209 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (23/2 → 12/1) ⇝ 25/2 | gain:0.33944686560080417 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (23/2 → 12/1) ⇝ 25/2 | gain:0.16972343280040209 clip:1 note:A7 s:piano release:0.1 pan:0.7361111111111112 ]",
+  "[ (23/2 → 12/1) ⇝ 27/2 | gain:0.16972343280040209 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ (23/2 → 12/1) ⇝ 27/2 | gain:0.16972343280040209 clip:1 note:B6 s:piano release:0.1 pan:0.6898148148148149 ]",
+  "[ (23/2 → 12/1) ⇝ 27/2 | gain:0.16972343280040209 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
   "[ 35/3 → 12/1 | clip:1 gain:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ 35/3 → 12/1 | clip:1 gain:0.25 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (35/3 → 12/1) ⇝ 37/3 | gain:0.22876819108884472 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ (35/3 → 12/1) ⇝ 37/3 | gain:0.22716241321426947 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
   "[ (71/6 → 12/1) ⇝ 73/6 | clip:1 gain:0.5 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
   "[ (71/6 → 12/1) ⇝ 73/6 | clip:1 gain:0.125 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (71/6 → 12/1) ⇝ 25/2 | gain:0.34426201088094527 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
-  "[ 23/2 ⇜ (12/1 → 73/6) | gain:0.17098958003101383 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (71/6 → 12/1) ⇝ 25/2 | gain:0.34197916006202767 clip:1 note:G3 s:piano release:0.1 pan:0.5046296296296297 ]",
+  "[ 23/2 ⇜ (12/1 → 73/6) | gain:0.16972343280040209 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
   "[ 71/6 ⇜ (12/1 → 73/6) | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 71/6 ⇜ (12/1 → 73/6) | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 35/3 ⇜ (12/1 → 37/3) | gain:0.22876819108884472 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 35/3 ⇜ (12/1 → 37/3) | gain:0.22716241321426947 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ 12/1 → 37/3 | clip:1 gain:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 12/1 → 37/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 21/2 ⇜ (12/1 → 25/2) | gain:0.33944686560080417 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 21/2 ⇜ (12/1 → 25/2) | gain:0.33944686560080417 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 21/2 ⇜ (12/1 → 25/2) | gain:0.33944686560080417 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 23/2 ⇜ (12/1 → 25/2) | gain:0.3431522866332671 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 23/2 ⇜ (12/1 → 25/2) | gain:0.17157614331663354 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ 71/6 ⇜ (12/1 → 25/2) | gain:0.34426201088094527 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ 12/1 → 38/3 | gain:0.690615128723121 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
-  "[ 11/1 ⇜ (12/1 → 13/1) | gain:0.22876819108884472 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 11/1 ⇜ (12/1 → 13/1) | gain:0.22876819108884472 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 11/1 ⇜ (12/1 → 13/1) | gain:0.22876819108884472 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
-  "[ 23/2 ⇜ (12/1 → 13/1) ⇝ 27/2 | gain:0.17314420400886532 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (12/1 → 13/1) ⇝ 27/2 | gain:0.17314420400886532 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ 23/2 ⇜ (12/1 → 13/1) ⇝ 27/2 | gain:0.17314420400886532 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
-  "[ 12/1 → 13/1 | gain:0.6925768160354613 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
-  "[ 12/1 → 13/1 | gain:0.23085893867848709 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (12/1 → 13/1) ⇝ 14/1 | gain:0.697681845883784 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ (12/1 → 13/1) ⇝ 14/1 | gain:0.697681845883784 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
-  "[ (12/1 → 13/1) ⇝ 14/1 | gain:0.697681845883784 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 21/2 ⇜ (12/1 → 25/2) | gain:0.3304723075314519 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 21/2 ⇜ (12/1 → 25/2) | gain:0.3304723075314519 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 21/2 ⇜ (12/1 → 25/2) | gain:0.3304723075314519 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 23/2 ⇜ (12/1 → 25/2) | gain:0.33944686560080417 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 23/2 ⇜ (12/1 → 25/2) | gain:0.16972343280040209 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ 71/6 ⇜ (12/1 → 25/2) | gain:0.34197916006202767 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 12/1 → 38/3 | gain:0.6863045732665342 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 11/1 ⇜ (12/1 → 13/1) | gain:0.22346952586488933 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 11/1 ⇜ (12/1 → 13/1) | gain:0.22346952586488933 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 11/1 ⇜ (12/1 → 13/1) | gain:0.22346952586488933 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (12/1 → 13/1) ⇝ 27/2 | gain:0.16972343280040209 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (12/1 → 13/1) ⇝ 27/2 | gain:0.16972343280040209 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 23/2 ⇜ (12/1 → 13/1) ⇝ 27/2 | gain:0.16972343280040209 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
+  "[ 12/1 → 13/1 | gain:0.6863045732665342 clip:1 note:D4 s:piano release:0.1 pan:0.537037037037037 ]",
+  "[ 12/1 → 13/1 | gain:0.22876819108884472 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (12/1 → 13/1) ⇝ 14/1 | gain:0.6863045732665342 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ (12/1 → 13/1) ⇝ 14/1 | gain:0.6863045732665342 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
+  "[ (12/1 → 13/1) ⇝ 14/1 | gain:0.6863045732665342 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
   "[ 73/6 → 25/2 | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 73/6 → 25/2 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 73/6 → 77/6 | gain:0.17314420400886532 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 73/6 → 77/6 | gain:0.17213100544047263 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
   "[ 37/3 → 38/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 37/3 → 38/3 | clip:1 gain:0.25 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 37/3 → 13/1 | gain:0.23146949423575908 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 37/3 → 13/1 | gain:0.230205042907707 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ 25/2 → 77/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 25/2 → 77/6 | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (25/2 → 13/1) ⇝ 79/6 | gain:0.34805501161047686 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ (25/2 → 13/1) ⇝ 27/2 | gain:0.348840922941892 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ (25/2 → 13/1) ⇝ 27/2 | gain:0.174420461470946 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (25/2 → 13/1) ⇝ 29/2 | gain:0.35081559129122375 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ (25/2 → 13/1) ⇝ 29/2 | gain:0.35081559129122375 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ (25/2 → 13/1) ⇝ 29/2 | gain:0.35081559129122375 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ (25/2 → 13/1) ⇝ 79/6 | gain:0.34628840801773064 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ (25/2 → 13/1) ⇝ 27/2 | gain:0.34628840801773064 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ (25/2 → 13/1) ⇝ 27/2 | gain:0.17314420400886532 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ (25/2 → 13/1) ⇝ 29/2 | gain:0.34628840801773064 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (25/2 → 13/1) ⇝ 29/2 | gain:0.34628840801773064 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ (25/2 → 13/1) ⇝ 29/2 | gain:0.34628840801773064 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
   "[ 38/3 → 13/1 | clip:1 gain:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 38/3 → 13/1 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (38/3 → 13/1) ⇝ 40/3 | gain:0.697681845883784 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ (38/3 → 13/1) ⇝ 40/3 | gain:0.6944084827072773 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
   "[ (77/6 → 13/1) ⇝ 79/6 | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ (77/6 → 13/1) ⇝ 79/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (77/6 → 13/1) ⇝ 27/2 | gain:0.1747812227947151 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 25/2 ⇜ (13/1 → 79/6) | gain:0.34805501161047686 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ (77/6 → 13/1) ⇝ 27/2 | gain:0.17402750580523843 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 25/2 ⇜ (13/1 → 79/6) | gain:0.34628840801773064 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
   "[ 77/6 ⇜ (13/1 → 79/6) | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 77/6 ⇜ (13/1 → 79/6) | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 38/3 ⇜ (13/1 → 40/3) | gain:0.697681845883784 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 38/3 ⇜ (13/1 → 40/3) | gain:0.6944084827072773 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
   "[ 13/1 → 40/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 13/1 → 40/3 | clip:1 gain:0.25 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 23/2 ⇜ (13/1 → 27/2) | gain:0.17314420400886532 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ 23/2 ⇜ (13/1 → 27/2) | gain:0.17314420400886532 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ 23/2 ⇜ (13/1 → 27/2) | gain:0.17314420400886532 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
-  "[ 25/2 ⇜ (13/1 → 27/2) | gain:0.348840922941892 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
-  "[ 25/2 ⇜ (13/1 → 27/2) | gain:0.174420461470946 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 77/6 ⇜ (13/1 → 27/2) | gain:0.1747812227947151 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ 13/1 → 41/3 | gain:0.23348021670532074 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 12/1 ⇜ (13/1 → 14/1) | gain:0.697681845883784 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ 12/1 ⇜ (13/1 → 14/1) | gain:0.697681845883784 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
-  "[ 12/1 ⇜ (13/1 → 14/1) | gain:0.697681845883784 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
-  "[ 25/2 ⇜ (13/1 → 14/1) ⇝ 29/2 | gain:0.35081559129122375 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 25/2 ⇜ (13/1 → 14/1) ⇝ 29/2 | gain:0.35081559129122375 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 25/2 ⇜ (13/1 → 14/1) ⇝ 29/2 | gain:0.35081559129122375 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
-  "[ 13/1 → 14/1 | gain:0.7016311825824475 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
-  "[ 13/1 → 14/1 | gain:0.23387706086081583 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (13/1 → 14/1) ⇝ 15/1 | gain:0.23482697952137338 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (13/1 → 14/1) ⇝ 15/1 | gain:0.23482697952137338 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ (13/1 → 14/1) ⇝ 15/1 | gain:0.23482697952137338 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
+  "[ 23/2 ⇜ (13/1 → 27/2) | gain:0.16972343280040209 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ 23/2 ⇜ (13/1 → 27/2) | gain:0.16972343280040209 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 23/2 ⇜ (13/1 → 27/2) | gain:0.16972343280040209 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
+  "[ 25/2 ⇜ (13/1 → 27/2) | gain:0.34628840801773064 clip:1 note:D5 s:piano release:0.1 pan:0.5925925925925926 ]",
+  "[ 25/2 ⇜ (13/1 → 27/2) | gain:0.17314420400886532 clip:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
+  "[ 77/6 ⇜ (13/1 → 27/2) | gain:0.17402750580523843 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ 13/1 → 41/3 | gain:0.23256061529459465 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 12/1 ⇜ (13/1 → 14/1) | gain:0.6863045732665342 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 12/1 ⇜ (13/1 → 14/1) | gain:0.6863045732665342 clip:1 note:Eb3 s:piano release:0.1 pan:0.4861111111111111 ]",
+  "[ 12/1 ⇜ (13/1 → 14/1) | gain:0.6863045732665342 clip:1 note:Bb3 s:piano release:0.1 pan:0.5185185185185186 ]",
+  "[ 25/2 ⇜ (13/1 → 14/1) ⇝ 29/2 | gain:0.34628840801773064 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 25/2 ⇜ (13/1 → 14/1) ⇝ 29/2 | gain:0.34628840801773064 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 25/2 ⇜ (13/1 → 14/1) ⇝ 29/2 | gain:0.34628840801773064 clip:1 note:Bb4 s:piano release:0.1 pan:0.5740740740740741 ]",
+  "[ 13/1 → 14/1 | gain:0.697681845883784 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ 13/1 → 14/1 | gain:0.23256061529459465 clip:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
+  "[ (13/1 → 14/1) ⇝ 15/1 | gain:0.23256061529459465 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (13/1 → 14/1) ⇝ 15/1 | gain:0.23256061529459465 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (13/1 → 14/1) ⇝ 15/1 | gain:0.23256061529459465 clip:1 note:Bb5 s:piano release:0.1 pan:0.6296296296296297 ]",
   "[ 79/6 → 27/2 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 79/6 → 27/2 | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ 79/6 → 83/6 | gain:0.35081559129122375 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 79/6 → 83/6 | gain:0.3495624455894302 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
   "[ 40/3 → 41/3 | clip:1 gain:1 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 40/3 → 41/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 40/3 → 14/1 | gain:0.7026991356941406 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
+  "[ 40/3 → 14/1 | gain:0.7004406501159622 clip:1 note:C2 s:piano release:0.1 pan:0.41666666666666663 ]",
   "[ 27/2 → 83/6 | clip:1 gain:0.5 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
   "[ 27/2 → 83/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (27/2 → 14/1) ⇝ 85/6 | gain:0.17591194053655546 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (27/2 → 14/1) ⇝ 29/2 | gain:0.3522404692820601 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
-  "[ (27/2 → 14/1) ⇝ 29/2 | gain:0.17612023464103005 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
-  "[ (27/2 → 14/1) ⇝ 31/2 | gain:0.17658406954734143 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
-  "[ (27/2 → 14/1) ⇝ 31/2 | gain:0.17658406954734143 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ (27/2 → 14/1) ⇝ 31/2 | gain:0.17658406954734143 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
+  "[ (27/2 → 14/1) ⇝ 85/6 | gain:0.17540779564561187 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (27/2 → 14/1) ⇝ 29/2 | gain:0.35081559129122375 clip:1 note:C5 s:piano release:0.1 pan:0.5833333333333333 ]",
+  "[ (27/2 → 14/1) ⇝ 29/2 | gain:0.17540779564561187 clip:1 note:D7 s:piano release:0.1 pan:0.7037037037037037 ]",
+  "[ (27/2 → 14/1) ⇝ 31/2 | gain:0.17540779564561187 clip:1 note:C6 s:piano release:0.1 pan:0.6388888888888888 ]",
+  "[ (27/2 → 14/1) ⇝ 31/2 | gain:0.17540779564561187 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ (27/2 → 14/1) ⇝ 31/2 | gain:0.17540779564561187 clip:1 note:Bb6 s:piano release:0.1 pan:0.6851851851851851 ]",
   "[ 41/3 → 14/1 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 41/3 → 14/1 | clip:1 gain:0.25 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (41/3 → 14/1) ⇝ 43/3 | gain:0.23482697952137338 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
+  "[ (41/3 → 14/1) ⇝ 43/3 | gain:0.23423304523138017 clip:1 note:C4 s:piano release:0.1 pan:0.5277777777777778 ]",
   "[ (83/6 → 14/1) ⇝ 85/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ (83/6 → 14/1) ⇝ 85/6 | clip:1 gain:0.125 note:D6 s:piano release:0.1 pan:0.6481481481481481 ]",
-  "[ (83/6 → 14/1) ⇝ 29/2 | gain:0.3526015919271991 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
-  "[ 27/2 ⇜ (14/1 → 85/6) | gain:0.17591194053655546 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (83/6 → 14/1) ⇝ 29/2 | gain:0.3518238810731109 clip:1 note:C3 s:piano release:0.1 pan:0.4722222222222222 ]",
+  "[ 27/2 ⇜ (14/1 → 85/6) | gain:0.17540779564561187 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
   "[ 83/6 ⇜ (14/1 → 85/6) | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 83/6 ⇜ (14/1 → 85/6) | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 41/3 ⇜ (14/1 → 43/3) | gain:0.23482697952137338 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 41/3 ⇜ (14/1 → 43/3) | gain:0.23423304523138017 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ 14/1 → 43/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 14/1 → 43/3 | clip:1 gain:0.25 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 25/2 ⇜ (14/1 → 29/2) | gain:0.35081559129122375 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 25/2 ⇜ (14/1 → 29/2) | gain:0.35081559129122375 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 25/2 ⇜ (14/1 → 29/2) | gain:0.35081559129122375 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 27/2 ⇜ (14/1 → 29/2) | gain:0.3522404692820601 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 27/2 ⇜ (14/1 → 29/2) | gain:0.17612023464103005 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ 83/6 ⇜ (14/1 → 29/2) | gain:0.3526015919271991 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ 14/1 → 44/3 | gain:0.7058196775556453 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
-  "[ 13/1 ⇜ (14/1 → 15/1) | gain:0.23482697952137338 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 13/1 ⇜ (14/1 → 15/1) | gain:0.23482697952137338 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ 13/1 ⇜ (14/1 → 15/1) | gain:0.23482697952137338 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
-  "[ 27/2 ⇜ (14/1 → 15/1) ⇝ 31/2 | gain:0.17658406954734143 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 27/2 ⇜ (14/1 → 15/1) ⇝ 31/2 | gain:0.17658406954734143 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 27/2 ⇜ (14/1 → 15/1) ⇝ 31/2 | gain:0.17658406954734143 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
-  "[ 14/1 → 15/1 | gain:0.7063362781893657 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
-  "[ 14/1 → 15/1 | gain:0.2354454260631219 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ (14/1 → 15/1) ⇝ 16/1 | gain:0.7073558770128159 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ (14/1 → 15/1) ⇝ 16/1 | gain:0.7073558770128159 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
-  "[ (14/1 → 15/1) ⇝ 16/1 | gain:0.7073558770128159 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 25/2 ⇜ (14/1 → 29/2) | gain:0.34628840801773064 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 25/2 ⇜ (14/1 → 29/2) | gain:0.34628840801773064 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 25/2 ⇜ (14/1 → 29/2) | gain:0.34628840801773064 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 27/2 ⇜ (14/1 → 29/2) | gain:0.35081559129122375 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 27/2 ⇜ (14/1 → 29/2) | gain:0.17540779564561187 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ 83/6 ⇜ (14/1 → 29/2) | gain:0.3518238810731109 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 14/1 → 44/3 | gain:0.7044809385641202 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 13/1 ⇜ (14/1 → 15/1) | gain:0.23256061529459465 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 13/1 ⇜ (14/1 → 15/1) | gain:0.23256061529459465 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ 13/1 ⇜ (14/1 → 15/1) | gain:0.23256061529459465 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 27/2 ⇜ (14/1 → 15/1) ⇝ 31/2 | gain:0.17540779564561187 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 27/2 ⇜ (14/1 → 15/1) ⇝ 31/2 | gain:0.17540779564561187 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ 27/2 ⇜ (14/1 → 15/1) ⇝ 31/2 | gain:0.17540779564561187 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
+  "[ 14/1 → 15/1 | gain:0.7044809385641202 clip:1 note:G4 s:piano release:0.1 pan:0.5601851851851851 ]",
+  "[ 14/1 → 15/1 | gain:0.23482697952137338 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ (14/1 → 15/1) ⇝ 16/1 | gain:0.7044809385641202 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (14/1 → 15/1) ⇝ 16/1 | gain:0.7044809385641202 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
+  "[ (14/1 → 15/1) ⇝ 16/1 | gain:0.7044809385641202 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
   "[ 85/6 → 29/2 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 85/6 → 29/2 | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 85/6 → 89/6 | gain:0.17658406954734143 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 85/6 → 89/6 | gain:0.17630079596359954 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
   "[ 43/3 → 44/3 | clip:1 gain:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 43/3 → 44/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 43/3 → 15/1 | gain:0.23558651387028934 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 43/3 → 15/1 | gain:0.23527322585188176 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ 29/2 → 89/6 | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 29/2 → 89/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (29/2 → 15/1) ⇝ 91/6 | gain:0.3535483696800781 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ (29/2 → 15/1) ⇝ 31/2 | gain:0.35367793850640794 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ (29/2 → 15/1) ⇝ 31/2 | gain:0.17683896925320397 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ (29/2 → 15/1) ⇝ 33/2 | gain:0.35387819052467123 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ (29/2 → 15/1) ⇝ 33/2 | gain:0.35387819052467123 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ (29/2 → 15/1) ⇝ 33/2 | gain:0.35387819052467123 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ (29/2 → 15/1) ⇝ 91/6 | gain:0.35316813909468286 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (29/2 → 15/1) ⇝ 31/2 | gain:0.35316813909468286 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ (29/2 → 15/1) ⇝ 31/2 | gain:0.17658406954734143 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ (29/2 → 15/1) ⇝ 33/2 | gain:0.35316813909468286 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (29/2 → 15/1) ⇝ 33/2 | gain:0.35316813909468286 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ (29/2 → 15/1) ⇝ 33/2 | gain:0.35316813909468286 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
   "[ 44/3 → 15/1 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 44/3 → 15/1 | clip:1 gain:0.25 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (44/3 → 15/1) ⇝ 46/3 | gain:0.7073558770128159 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ (44/3 → 15/1) ⇝ 46/3 | gain:0.7067595416108681 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
   "[ (89/6 → 15/1) ⇝ 91/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ (89/6 → 15/1) ⇝ 91/6 | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (89/6 → 15/1) ⇝ 31/2 | gain:0.17688642813272723 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 29/2 ⇜ (15/1 → 91/6) | gain:0.3535483696800781 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (89/6 → 15/1) ⇝ 31/2 | gain:0.17677418484003904 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 29/2 ⇜ (15/1 → 91/6) | gain:0.35316813909468286 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
   "[ 89/6 ⇜ (15/1 → 91/6) | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 89/6 ⇜ (15/1 → 91/6) | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 44/3 ⇜ (15/1 → 46/3) | gain:0.7073558770128159 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 44/3 ⇜ (15/1 → 46/3) | gain:0.7067595416108681 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
   "[ 15/1 → 46/3 | clip:1 gain:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 15/1 → 46/3 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 27/2 ⇜ (15/1 → 31/2) | gain:0.17658406954734143 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ 27/2 ⇜ (15/1 → 31/2) | gain:0.17658406954734143 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ 27/2 ⇜ (15/1 → 31/2) | gain:0.17658406954734143 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
-  "[ 29/2 ⇜ (15/1 → 31/2) | gain:0.35367793850640794 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
-  "[ 29/2 ⇜ (15/1 → 31/2) | gain:0.17683896925320397 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
-  "[ 89/6 ⇜ (15/1 → 31/2) | gain:0.17688642813272723 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ 15/1 → 47/3 | gain:0.2358919248712863 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 14/1 ⇜ (15/1 → 16/1) | gain:0.7073558770128159 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
-  "[ 14/1 ⇜ (15/1 → 16/1) | gain:0.7073558770128159 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
-  "[ 14/1 ⇜ (15/1 → 16/1) | gain:0.7073558770128159 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
-  "[ 29/2 ⇜ (15/1 → 16/1) ⇝ 33/2 | gain:0.35387819052467123 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 29/2 ⇜ (15/1 → 16/1) ⇝ 33/2 | gain:0.35387819052467123 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
-  "[ 29/2 ⇜ (15/1 → 16/1) ⇝ 33/2 | gain:0.35387819052467123 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
-  "[ 15/1 → 16/1 | gain:0.7077563810493425 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
-  "[ 15/1 → 16/1 | gain:0.23591879368311414 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (15/1 → 16/1) ⇝ 17/1 | gain:0.23593895534674325 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (15/1 → 16/1) ⇝ 17/1 | gain:0.23593895534674325 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
-  "[ (15/1 → 16/1) ⇝ 17/1 | gain:0.23593895534674325 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
+  "[ 27/2 ⇜ (15/1 → 31/2) | gain:0.17540779564561187 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ 27/2 ⇜ (15/1 → 31/2) | gain:0.17540779564561187 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ 27/2 ⇜ (15/1 → 31/2) | gain:0.17540779564561187 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
+  "[ 29/2 ⇜ (15/1 → 31/2) | gain:0.35316813909468286 clip:1 note:G5 s:piano release:0.1 pan:0.6157407407407407 ]",
+  "[ 29/2 ⇜ (15/1 → 31/2) | gain:0.17658406954734143 clip:1 note:F7 s:piano release:0.1 pan:0.7175925925925926 ]",
+  "[ 89/6 ⇜ (15/1 → 31/2) | gain:0.17677418484003904 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ 15/1 → 47/3 | gain:0.23578529233760528 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 14/1 ⇜ (15/1 → 16/1) | gain:0.7044809385641202 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 14/1 ⇜ (15/1 → 16/1) | gain:0.7044809385641202 clip:1 note:A3 s:piano release:0.1 pan:0.5138888888888888 ]",
+  "[ 14/1 ⇜ (15/1 → 16/1) | gain:0.7044809385641202 clip:1 note:Eb4 s:piano release:0.1 pan:0.5416666666666667 ]",
+  "[ 29/2 ⇜ (15/1 → 16/1) ⇝ 33/2 | gain:0.35316813909468286 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 29/2 ⇜ (15/1 → 16/1) ⇝ 33/2 | gain:0.35316813909468286 clip:1 note:A4 s:piano release:0.1 pan:0.5694444444444444 ]",
+  "[ 29/2 ⇜ (15/1 → 16/1) ⇝ 33/2 | gain:0.35316813909468286 clip:1 note:Eb5 s:piano release:0.1 pan:0.5972222222222222 ]",
+  "[ 15/1 → 16/1 | gain:0.7073558770128159 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ 15/1 → 16/1 | gain:0.23578529233760528 clip:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
+  "[ (15/1 → 16/1) ⇝ 17/1 | gain:0.23578529233760528 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (15/1 → 16/1) ⇝ 17/1 | gain:0.23578529233760528 clip:1 note:A5 s:piano release:0.1 pan:0.625 ]",
+  "[ (15/1 → 16/1) ⇝ 17/1 | gain:0.23578529233760528 clip:1 note:Eb6 s:piano release:0.1 pan:0.6527777777777778 ]",
   "[ 91/6 → 31/2 | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 91/6 → 31/2 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ 91/6 → 95/6 | gain:0.35387819052467123 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ 91/6 → 95/6 | gain:0.35377285626545446 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
   "[ 46/3 → 47/3 | clip:1 gain:1 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 46/3 → 47/3 | clip:1 gain:0.25 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ 46/3 → 16/1 | gain:0.7077986570641782 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
+  "[ 46/3 → 16/1 | gain:0.7076757746138589 clip:1 note:F2 s:piano release:0.1 pan:0.4398148148148148 ]",
   "[ 31/2 → 95/6 | clip:1 gain:0.5 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
   "[ 31/2 → 95/6 | clip:1 gain:0.125 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
-  "[ (31/2 → 16/1) ⇝ 97/6 | gain:0.17695363841880415 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (31/2 → 16/1) ⇝ 33/2 | gain:0.3539084330201149 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
-  "[ (31/2 → 16/1) ⇝ 33/2 | gain:0.17695421651005744 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
-  "[ (31/2 → 16/1) ⇝ 35/2 | gain:0.17696702224930969 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
-  "[ (31/2 → 16/1) ⇝ 35/2 | gain:0.17696702224930969 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
-  "[ (31/2 → 16/1) ⇝ 35/2 | gain:0.17696702224930969 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
+  "[ (31/2 → 16/1) ⇝ 97/6 | gain:0.17693909526233562 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (31/2 → 16/1) ⇝ 33/2 | gain:0.35387819052467123 clip:1 note:F5 s:piano release:0.1 pan:0.6064814814814814 ]",
+  "[ (31/2 → 16/1) ⇝ 33/2 | gain:0.17693909526233562 clip:1 note:G7 s:piano release:0.1 pan:0.7268518518518519 ]",
+  "[ (31/2 → 16/1) ⇝ 35/2 | gain:0.17693909526233562 clip:1 note:F6 s:piano release:0.1 pan:0.662037037037037 ]",
+  "[ (31/2 → 16/1) ⇝ 35/2 | gain:0.17693909526233562 clip:1 note:A6 s:piano release:0.1 pan:0.6805555555555556 ]",
+  "[ (31/2 → 16/1) ⇝ 35/2 | gain:0.17693909526233562 clip:1 note:Eb7 s:piano release:0.1 pan:0.7083333333333333 ]",
   "[ 47/3 → 16/1 | clip:1 gain:1 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ 47/3 → 16/1 | clip:1 gain:0.25 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (47/3 → 16/1) ⇝ 49/3 | gain:0.23593895534674325 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
+  "[ (47/3 → 16/1) ⇝ 49/3 | gain:0.2359328856880594 clip:1 note:F4 s:piano release:0.1 pan:0.5509259259259259 ]",
   "[ (95/6 → 16/1) ⇝ 97/6 | clip:1 gain:0.5 note:C7 s:piano release:0.1 pan:0.6944444444444444 ]",
   "[ (95/6 → 16/1) ⇝ 97/6 | clip:1 gain:0.125 note:G6 s:piano release:0.1 pan:0.6712962962962963 ]",
-  "[ (95/6 → 16/1) ⇝ 33/2 | gain:0.3539094121570209 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
+  "[ (95/6 → 16/1) ⇝ 33/2 | gain:0.3539072768376083 clip:1 note:F3 s:piano release:0.1 pan:0.49537037037037035 ]",
 ]
 `;
 
 exports[`renders tunes > tune: flatrave 1`] = `
 [
-  "[ 0/1 → 1/4 | s:hh n:1 end:0.02000058072071123 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 0/1 → 1/8 | s:hh n:1 speed:0.5 delay:0.5 end:0.02 bank:RolandTR909 room:0.5 gain:0.4 ]",
   "[ 0/1 → 1/2 | s:bd bank:RolandTR909 ]",
-  "[ 0/1 ⇜ (1/8 → 1/4) | s:hh n:1 end:0.02000058072071123 bank:RolandTR909 room:0.5 gain:0.4 ]",
-  "[ 1/8 → 1/4 | s:hh n:1 speed:0.5 delay:0.5 end:0.020001936784171157 bank:RolandTR909 room:0.5 gain:0.4 ]",
-  "[ 1/8 → 1/4 | s:hh n:1 speed:0.5 delay:0.5 end:0.020001936784171157 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 1/8 → 1/4 | s:hh n:1 end:0.02000058072071123 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 1/8 → 1/4 | s:hh n:1 end:0.02000058072071123 bank:RolandTR909 room:0.5 gain:0.4 ]",
   "[ 1/8 → 1/4 | note:G1 s:sawtooth decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 cutoff:800 resonance:8 ]",
-  "[ 1/4 → 3/8 | s:hh n:1 end:0.02000875429921906 bank:RolandTR909 room:0.5 gain:0.4 ]",
-  "[ 1/4 → 3/8 | s:hh n:1 end:0.02000875429921906 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 1/4 → 3/8 | s:hh n:1 end:0.02000453637431655 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 1/4 → 3/8 | s:hh n:1 end:0.02000453637431655 bank:RolandTR909 room:0.5 gain:0.4 ]",
   "[ 1/4 → 3/8 | note:G1 s:sawtooth decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 cutoff:800 resonance:8 ]",
-  "[ 3/8 → 1/2 | s:hh n:1 end:0.020023446730265706 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 3/8 → 1/2 | s:hh n:1 end:0.02001494577056579 bank:RolandTR909 room:0.5 gain:0.4 ]",
   "[ 1/2 → 5/8 | note:G1 s:sawtooth decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 cutoff:800 resonance:8 ]",
   "[ 1/2 → 1/1 | s:bd bank:RolandTR909 ]",
   "[ 1/2 → 1/1 | s:cp bank:RolandTR909 ]",
   "[ 1/2 → 1/1 | s:sd bank:RolandTR909 ]",
-  "[ 5/8 → 3/4 | s:hh n:1 end:0.020086608138500644 bank:RolandTR909 room:0.5 gain:0.4 ]",
-  "[ 5/8 → 3/4 | s:hh n:1 end:0.020086608138500644 bank:RolandTR909 room:0.5 gain:0.4 ]",
   "[ 5/8 → 3/4 | note:G1 s:sawtooth decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 cutoff:800 resonance:8 ]",
-  "[ 3/4 → 7/8 | s:hh n:1 end:0.02013941880355398 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 7/8 → 1/1 | s:hh n:1 end:0.020171942481159617 bank:RolandTR909 room:0.5 gain:0.4 ]",
+  "[ 7/8 → 1/1 | s:hh n:1 end:0.020171942481159617 bank:RolandTR909 room:0.5 gain:0.4 ]",
   "[ 7/8 → 1/1 | note:G1 s:sawtooth decay:0.1 sustain:0 lpattack:0.1 lpenv:-4 cutoff:800 resonance:8 ]",
 ]
 `;
@@ -7210,43 +7203,43 @@ exports[`renders tunes > tune: holyflute 1`] = `
 
 exports[`renders tunes > tune: juxUndTollerei 1`] = `
 [
-  "[ 0/1 → 1/4 | note:c3 s:sawtooth pan:0 cutoff:1188.2154262966046 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ 0/1 → 1/4 | note:bb3 s:sawtooth pan:1 color:green cutoff:1188.2154262966046 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ 1/4 → 1/2 | note:eb3 s:sawtooth pan:0 cutoff:1361.2562095290161 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ 1/4 → 1/2 | note:g3 s:sawtooth pan:1 color:green cutoff:1361.2562095290161 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ 1/2 → 3/4 | note:g3 s:sawtooth pan:0 cutoff:1524.257063143398 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ 1/2 → 3/4 | note:eb3 s:sawtooth pan:1 color:green cutoff:1524.257063143398 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ (101/200 → 1/1) ⇝ 201/200 | note:55 s:triangle pan:0 cutoff:1602.9480029324704 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ (101/200 → 1/1) ⇝ 201/200 | note:65 s:triangle pan:1 color:green cutoff:1602.9480029324704 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ 3/4 → 1/1 | note:bb3 s:sawtooth pan:0 cutoff:1670.953955747281 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
-  "[ 3/4 → 1/1 | note:c3 s:sawtooth pan:1 color:green cutoff:1670.953955747281 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 0/1 → 1/4 | note:c3 s:sawtooth pan:0 cutoff:1100 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 0/1 → 1/4 | note:bb3 s:sawtooth pan:1 color:green cutoff:1100 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 1/4 → 1/2 | note:eb3 s:sawtooth pan:0 cutoff:1275.5812898145155 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 1/4 → 1/2 | note:g3 s:sawtooth pan:1 color:green cutoff:1275.5812898145155 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 1/2 → 3/4 | note:g3 s:sawtooth pan:0 cutoff:1444.4150891285808 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 1/2 → 3/4 | note:eb3 s:sawtooth pan:1 color:green cutoff:1444.4150891285808 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ (101/200 → 1/1) ⇝ 201/200 | note:55 s:triangle pan:0 cutoff:1447.6776848789743 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ (101/200 → 1/1) ⇝ 201/200 | note:65 s:triangle pan:1 color:green cutoff:1447.6776848789743 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 3/4 → 1/1 | note:bb3 s:sawtooth pan:0 cutoff:1600.013209717642 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
+  "[ 3/4 → 1/1 | note:c3 s:sawtooth pan:1 color:green cutoff:1600.013209717642 lpattack:0.2 lpenv:-2 decay:0.05 sustain:0 room:0.6 delay:0.5 delaytime:0.1 delayfeedback:0.4 ]",
 ]
 `;
 
 exports[`renders tunes > tune: loungeSponge 1`] = `
 [
   "[ 0/1 → 1/4 | note:C2 gain:1 ]",
-  "[ 0/1 → 3/8 | note:B3 cutoff:1537 ]",
-  "[ 0/1 → 3/8 | note:D4 cutoff:1537 ]",
-  "[ 0/1 → 3/8 | note:E4 cutoff:1537 ]",
-  "[ 0/1 → 3/8 | note:G4 cutoff:1537 ]",
+  "[ 0/1 → 3/8 | note:B3 cutoff:1250 ]",
+  "[ 0/1 → 3/8 | note:D4 cutoff:1250 ]",
+  "[ 0/1 → 3/8 | note:E4 cutoff:1250 ]",
+  "[ 0/1 → 3/8 | note:G4 cutoff:1250 ]",
   "[ -1/4 ⇜ (0/1 → 1/2) | n:E5 clip:0.25 ]",
   "[ 0/1 → 1/2 | s:bd bank:RolandTR909 ]",
   "[ 0/1 → 3/4 | n:A4 clip:0.25 ]",
   "[ 1/4 → 1/2 | note:C2 gain:4 ]",
   "[ 1/4 → 1/2 | s:hh bank:RolandTR909 ]",
-  "[ 3/8 → 3/4 | note:B3 cutoff:1537 ]",
-  "[ 3/8 → 3/4 | note:D4 cutoff:1537 ]",
-  "[ 3/8 → 3/4 | note:E4 cutoff:1537 ]",
-  "[ 3/8 → 3/4 | note:G4 cutoff:1537 ]",
+  "[ 3/8 → 3/4 | note:B3 cutoff:1250 ]",
+  "[ 3/8 → 3/4 | note:D4 cutoff:1250 ]",
+  "[ 3/8 → 3/4 | note:E4 cutoff:1250 ]",
+  "[ 3/8 → 3/4 | note:G4 cutoff:1250 ]",
   "[ 1/2 → 3/4 | note:C2 gain:1 ]",
   "[ 1/2 → 1/1 | s:bd bank:RolandTR909 ]",
   "[ 1/2 → 1/1 | s:cp bank:RolandTR909 ]",
   "[ (1/2 → 1/1) ⇝ 5/4 | n:C5 clip:0.25 ]",
-  "[ 3/4 → 1/1 | note:B3 cutoff:1537 ]",
-  "[ 3/4 → 1/1 | note:D4 cutoff:1537 ]",
-  "[ 3/4 → 1/1 | note:E4 cutoff:1537 ]",
-  "[ 3/4 → 1/1 | note:G4 cutoff:1537 ]",
+  "[ 3/4 → 1/1 | note:B3 cutoff:1250 ]",
+  "[ 3/4 → 1/1 | note:D4 cutoff:1250 ]",
+  "[ 3/4 → 1/1 | note:E4 cutoff:1250 ]",
+  "[ 3/4 → 1/1 | note:G4 cutoff:1250 ]",
   "[ 3/4 → 1/1 | note:C2 gain:4 ]",
   "[ 3/4 → 1/1 | s:hh bank:RolandTR909 ]",
   "[ (3/4 → 1/1) ⇝ 3/2 | n:A5 clip:0.25 ]",
@@ -7255,58 +7248,60 @@ exports[`renders tunes > tune: loungeSponge 1`] = `
 
 exports[`renders tunes > tune: meltingsubmarine 1`] = `
 [
-  "[ (0/1 → 1/16) ⇝ 3/16 | note:72.0468455057745 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ (0/1 → 1/16) ⇝ 3/16 | note:72.0868455057745 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ 0/1 → 3/16 | note:93.00057728554401 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ 0/1 → 3/16 | note:93.04057728554402 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | s:bd n:5 speed:0.7519542165100574 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:33.129885541275144 decay:0.15 sustain:0 s:sawtooth gain:0.4 cutoff:3669.6267869262615 lpattack:0.1 lpenv:-2 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:33.17988554127514 decay:0.15 sustain:0 s:sawtooth gain:0.4 cutoff:3669.6267869262615 lpattack:0.1 lpenv:-2 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:60.129885541275144 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:60.16988554127514 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:64.12988554127514 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:64.16988554127515 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:67.12988554127514 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:67.16988554127515 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:71.12988554127514 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ (0/1 → 1/1) ⇝ 3/2 | note:71.16988554127515 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
-  "[ 0/1 ⇜ (1/16 → 3/16) | note:93.0468455057745 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ 0/1 ⇜ (1/16 → 3/16) | note:93.0868455057745 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ 3/16 → 3/8 | note:69.01266877519555 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ 3/16 → 3/8 | note:69.05266877519557 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ 3/16 → 3/8 | note:93.00057728554401 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ 3/16 → 3/8 | note:93.04057728554402 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ (3/8 → 1/2) ⇝ 9/16 | note:69.04676036055696 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ (3/8 → 1/2) ⇝ 9/16 | note:69.08676036055695 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ 3/8 → 9/16 | note:69.01266877519555 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ 3/8 → 9/16 | note:69.05266877519557 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ 3/8 → 9/16 | note:93.00057728554401 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ 3/8 → 9/16 | note:93.04057728554402 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ 3/8 → 3/4 | s:hh27 speed:0.7285963821098448 ]",
-  "[ 3/8 ⇜ (1/2 → 9/16) | note:72.04676036055696 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ 3/8 ⇜ (1/2 → 9/16) | note:72.08676036055695 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ (9/16 → 11/16) ⇝ 3/4 | note:69.04676036055696 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ (9/16 → 11/16) ⇝ 3/4 | note:69.08676036055695 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ 9/16 → 3/4 | note:69.01266877519555 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ 9/16 → 3/4 | note:69.05266877519557 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ 9/16 ⇜ (11/16 → 3/4) | note:72.04676036055696 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ 9/16 ⇜ (11/16 → 3/4) | note:72.08676036055695 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ (3/4 → 7/8) ⇝ 15/16 | note:69.04676036055696 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ (3/4 → 7/8) ⇝ 15/16 | note:69.08676036055695 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ 3/4 → 15/16 | note:72.16001184806132 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ 3/4 → 15/16 | note:72.20001184806131 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ 3/4 → 15/16 | note:69.01266877519555 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ 3/4 → 15/16 | note:69.05266877519557 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ (3/4 → 1/1) ⇝ 9/8 | s:hh27 speed:0.77531205091027 ]",
-  "[ (3/4 → 1/1) ⇝ 3/2 | s:sd n:1 speed:0.7931522866332671 ]",
-  "[ 3/4 ⇜ (7/8 → 15/16) | note:72.04676036055696 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ 3/4 ⇜ (7/8 → 15/16) | note:72.08676036055695 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
-  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.21301072199333 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.25301072199335 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
-  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.16001184806132 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.20001184806131 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
-  "[ (15/16 → 1/1) ⇝ 9/8 | note:69.04676036055696 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
-  "[ (15/16 → 1/1) ⇝ 9/8 | note:69.08676036055695 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ (0/1 → 1/16) ⇝ 3/16 | note:72.0716211320497 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ (0/1 → 1/16) ⇝ 3/16 | note:72.1116211320497 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ 0/1 → 3/16 | note:93.00417750226859 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ 0/1 → 3/16 | note:93.0441775022686 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | s:bd n:5 speed:0.7 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:33 decay:0.15 sustain:0 s:sawtooth gain:0.4 cutoff:2650 lpattack:0.1 lpenv:-2 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:33.05 decay:0.15 sustain:0 s:sawtooth gain:0.4 cutoff:2650 lpattack:0.1 lpenv:-2 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:60 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:60.04 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:64 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:64.04 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:67 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:67.04 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:71 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ (0/1 → 1/1) ⇝ 3/2 | note:71.04 s:sawtooth gain:0.16 cutoff:500 attack:1 ]",
+  "[ 0/1 ⇜ (1/16 → 3/16) | note:93.0716211320497 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ 0/1 ⇜ (1/16 → 3/16) | note:93.1116211320497 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ 3/16 → 3/8 | note:69.00416990934514 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ 3/16 → 3/8 | note:69.04416990934514 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ 3/16 → 3/8 | note:93.00417750226859 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ 3/16 → 3/8 | note:93.0441775022686 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ (3/16 → 1/1) ⇝ 27/16 | note:45.00416990934514 decay:0.15 sustain:0 s:sawtooth gain:0.4 cutoff:2913.1165188427735 lpattack:0.1 lpenv:-2 ]",
+  "[ (3/16 → 1/1) ⇝ 27/16 | note:45.054169909345134 decay:0.15 sustain:0 s:sawtooth gain:0.4 cutoff:2913.1165188427735 lpattack:0.1 lpenv:-2 ]",
+  "[ (3/8 → 1/2) ⇝ 9/16 | note:69.02689036596712 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ (3/8 → 1/2) ⇝ 9/16 | note:69.06689036596713 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ 3/8 → 9/16 | note:69.00416990934514 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ 3/8 → 9/16 | note:69.04416990934514 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ 3/8 → 9/16 | note:93.00417750226859 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ 3/8 → 9/16 | note:93.0441775022686 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ 3/8 → 3/4 | s:hh27 speed:0.7107561463868478 ]",
+  "[ 3/8 ⇜ (1/2 → 9/16) | note:72.02689036596712 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ 3/8 ⇜ (1/2 → 9/16) | note:72.06689036596713 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ (9/16 → 11/16) ⇝ 3/4 | note:69.02689036596712 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ (9/16 → 11/16) ⇝ 3/4 | note:69.06689036596713 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ 9/16 → 3/4 | note:69.00416990934514 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ 9/16 → 3/4 | note:69.04416990934514 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ 9/16 ⇜ (11/16 → 3/4) | note:72.02689036596712 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ 9/16 ⇜ (11/16 → 3/4) | note:72.06689036596713 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ (3/4 → 7/8) ⇝ 15/16 | note:69.02689036596712 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ (3/4 → 7/8) ⇝ 15/16 | note:69.06689036596713 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ 3/4 → 15/16 | note:72.12988554127514 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ 3/4 → 15/16 | note:72.16988554127515 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ 3/4 → 15/16 | note:69.00416990934514 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ 3/4 → 15/16 | note:69.04416990934514 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ (3/4 → 1/1) ⇝ 9/8 | s:hh27 speed:0.7519542165100574 ]",
+  "[ (3/4 → 1/1) ⇝ 3/2 | s:sd n:1 speed:0.7519542165100574 ]",
+  "[ 3/4 ⇜ (7/8 → 15/16) | note:72.02689036596712 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ 3/4 ⇜ (7/8 → 15/16) | note:72.06689036596713 decay:0.1 sustain:0 s:triangle gain:0.049999999999999996 ]",
+  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.18828012727568 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.22828012727568 decay:0.1 sustain:0 s:triangle gain:0.15 ]",
+  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.12988554127514 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ (15/16 → 1/1) ⇝ 9/8 | note:72.16988554127515 decay:0.1 sustain:0 s:triangle gain:0.075 ]",
+  "[ (15/16 → 1/1) ⇝ 9/8 | note:69.02689036596712 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
+  "[ (15/16 → 1/1) ⇝ 9/8 | note:69.06689036596713 decay:0.1 sustain:0 s:triangle gain:0.0375 ]",
 ]
 `;
 
@@ -7321,92 +7316,91 @@ exports[`renders tunes > tune: orbit 1`] = `
 
 exports[`renders tunes > tune: randomBells 1`] = `
 [
-  "[ -9/8 ⇜ (0/1 → 3/8) | gain:0.6 note:F5 velocity:0.9184964690357447 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ -3/4 ⇜ (0/1 → 3/4) | gain:0.6 note:D3 velocity:0.5 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ -9/8 ⇜ (0/1 → 3/8) | gain:0.6 note:A3 velocity:0.5989903202280402 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ -3/4 ⇜ (0/1 → 3/4) | gain:0.6 note:C5 velocity:0.8369929669424891 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 0/1 → 3/2 | note:D2 s:bass clip:1 gain:0.8 ]",
-  "[ 0/1 → 9/4 | gain:0.6 note:A3 velocity:0.6003328701481223 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 3/8 → 21/8 | gain:0.6 note:D4 velocity:0.6848798459395766 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 3/4 → 3/1 | gain:0.6 note:G4 velocity:0.7837830819189548 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 0/1 → 9/4 | gain:0.6 note:D3 velocity:0.5 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 3/8 → 21/8 | gain:0.6 note:F5 velocity:0.9213038925081491 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 3/4 → 3/1 | gain:0.6 note:C5 velocity:0.8426077850162983 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 3/2 → 9/4 | note:D2 s:bass clip:1 gain:0.8 ]",
   "[ 9/4 → 3/1 | note:D2 s:bass clip:1 gain:0.8 ]",
-  "[ 9/4 → 9/2 | gain:0.6 note:G3 velocity:0.5819958923384547 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 21/8 → 39/8 | gain:0.6 note:G3 velocity:0.567817933857441 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 9/4 → 9/2 | gain:0.6 note:D4 velocity:0.7006962578743696 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 21/8 → 39/8 | gain:0.6 note:C4 velocity:0.6507943943142891 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 3/1 → 9/2 | note:D2 s:bass clip:1 gain:0.8 ]",
-  "[ 3/1 → 21/4 | gain:0.6 note:D4 velocity:0.704405858181417 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 3/1 → 21/4 | gain:0.6 note:C4 velocity:0.6302403081208467 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 9/2 → 21/4 | note:D2 s:bass clip:1 gain:0.8 ]",
-  "[ 9/2 → 6/1 | gain:0.6 note:D4 velocity:0.6988155404105783 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ (39/8 → 6/1) ⇝ 51/8 | gain:0.6 note:C5 velocity:0.8514789454638958 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 9/2 → 6/1 | gain:0.6 note:A3 velocity:0.597913240082562 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (39/8 → 6/1) ⇝ 51/8 | gain:0.6 note:D5 velocity:0.8758113365620375 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 21/4 → 6/1 | note:D2 s:bass clip:1 gain:0.8 ]",
-  "[ (21/4 → 6/1) ⇝ 27/4 | gain:0.6 note:G4 velocity:0.7597710825502872 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 39/8 ⇜ (6/1 → 51/8) | gain:0.6 note:C5 velocity:0.8514789454638958 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 21/4 ⇜ (6/1 → 27/4) | gain:0.6 note:G4 velocity:0.7597710825502872 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (21/4 → 6/1) ⇝ 27/4 | gain:0.6 note:D4 velocity:0.6988155404105783 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 39/8 ⇜ (6/1 → 51/8) | gain:0.6 note:D5 velocity:0.8758113365620375 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 21/4 ⇜ (6/1 → 27/4) | gain:0.6 note:D4 velocity:0.6988155404105783 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 6/1 → 15/2 | note:A2 s:bass clip:1 gain:0.8 ]",
-  "[ 6/1 → 33/4 | gain:0.6 note:F3 velocity:0.5408733254298568 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 51/8 → 69/8 | gain:0.6 note:C5 velocity:0.8643641015514731 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 27/4 → 9/1 | gain:0.6 note:F3 velocity:0.5405213935300708 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 6/1 → 33/4 | gain:0.6 note:G4 velocity:0.7597710825502872 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 51/8 → 69/8 | gain:0.6 note:G4 velocity:0.7743164440616965 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 27/4 → 9/1 | gain:0.6 note:C5 velocity:0.8362447572872043 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 15/2 → 33/4 | note:A2 s:bass clip:1 gain:0.8 ]",
   "[ 33/4 → 9/1 | note:A2 s:bass clip:1 gain:0.8 ]",
-  "[ 33/4 → 21/2 | gain:0.6 note:A3 velocity:0.5854638321325183 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 69/8 → 87/8 | gain:0.6 note:F4 velocity:0.7483773557469249 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 33/4 → 21/2 | gain:0.6 note:A3 velocity:0.5914018759503961 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 69/8 → 87/8 | gain:0.6 note:G4 velocity:0.754063542932272 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 9/1 → 21/2 | note:A2 s:bass clip:1 gain:0.8 ]",
-  "[ 9/1 → 45/4 | gain:0.6 note:C4 velocity:0.6479453053325415 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 9/1 → 45/4 | gain:0.6 note:A4 velocity:0.8042040374130011 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 21/2 → 45/4 | note:A2 s:bass clip:1 gain:0.8 ]",
-  "[ 21/2 → 12/1 | gain:0.6 note:A4 velocity:0.7972785895690322 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ (87/8 → 12/1) ⇝ 99/8 | gain:0.6 note:F5 velocity:0.9336296319961548 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 21/2 → 12/1 | gain:0.6 note:A3 velocity:0.6023689480498433 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (87/8 → 12/1) ⇝ 99/8 | gain:0.6 note:F4 velocity:0.7347871446982026 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 45/4 → 12/1 | note:A2 s:bass clip:1 gain:0.8 ]",
-  "[ (45/4 → 12/1) ⇝ 51/4 | gain:0.6 note:G5 velocity:0.9797635599970818 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 87/8 ⇜ (12/1 → 99/8) | gain:0.6 note:F5 velocity:0.9336296319961548 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 45/4 ⇜ (12/1 → 51/4) | gain:0.6 note:G5 velocity:0.9797635599970818 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (45/4 → 12/1) ⇝ 51/4 | gain:0.6 note:A4 velocity:0.7972785895690322 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 87/8 ⇜ (12/1 → 99/8) | gain:0.6 note:F4 velocity:0.7347871446982026 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 45/4 ⇜ (12/1 → 51/4) | gain:0.6 note:A4 velocity:0.7972785895690322 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 12/1 → 27/2 | note:G2 s:bass clip:1 gain:0.8 ]",
-  "[ 12/1 → 57/4 | gain:0.6 note:F3 velocity:0.5185003904625773 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 99/8 → 117/8 | gain:0.6 note:D4 velocity:0.67274125572294 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 51/4 → 15/1 | gain:0.6 note:A4 velocity:0.8324771635234356 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 12/1 → 57/4 | gain:0.6 note:G5 velocity:0.9797635599970818 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 99/8 → 117/8 | gain:0.6 note:C4 velocity:0.6662392104044557 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 51/4 → 15/1 | gain:0.6 note:F5 velocity:0.9516951469704509 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 27/2 → 57/4 | note:G2 s:bass clip:1 gain:0.8 ]",
   "[ 57/4 → 15/1 | note:G2 s:bass clip:1 gain:0.8 ]",
-  "[ 57/4 → 33/2 | gain:0.6 note:A4 velocity:0.803433682769537 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 117/8 → 135/8 | gain:0.6 note:G3 velocity:0.5800967421382666 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 57/4 → 33/2 | gain:0.6 note:F5 velocity:0.9182533202692866 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 117/8 → 135/8 | gain:0.6 note:G3 velocity:0.5711571052670479 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 15/1 → 33/2 | note:G2 s:bass clip:1 gain:0.8 ]",
-  "[ 15/1 → 69/4 | gain:0.6 note:G4 velocity:0.769017674960196 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 15/1 → 69/4 | gain:0.6 note:F4 velocity:0.7293080370873213 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 33/2 → 69/4 | note:G2 s:bass clip:1 gain:0.8 ]",
-  "[ 33/2 → 18/1 | gain:0.6 note:F3 velocity:0.5081270858645439 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ (135/8 → 18/1) ⇝ 147/8 | gain:0.6 note:C4 velocity:0.6415294744074345 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 33/2 → 18/1 | gain:0.6 note:A4 velocity:0.8166163852438331 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (135/8 → 18/1) ⇝ 147/8 | gain:0.6 note:F5 velocity:0.9456470254808664 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 69/4 → 18/1 | note:G2 s:bass clip:1 gain:0.8 ]",
-  "[ (69/4 → 18/1) ⇝ 75/4 | gain:0.6 note:A3 velocity:0.6086445553228259 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 135/8 ⇜ (18/1 → 147/8) | gain:0.6 note:C4 velocity:0.6415294744074345 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 69/4 ⇜ (18/1 → 75/4) | gain:0.6 note:A3 velocity:0.6086445553228259 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (69/4 → 18/1) ⇝ 75/4 | gain:0.6 note:F3 velocity:0.5081270858645439 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 135/8 ⇜ (18/1 → 147/8) | gain:0.6 note:F5 velocity:0.9456470254808664 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 69/4 ⇜ (18/1 → 75/4) | gain:0.6 note:F3 velocity:0.5081270858645439 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 18/1 → 39/2 | note:F2 s:bass clip:1 gain:0.8 ]",
-  "[ 18/1 → 81/4 | gain:0.6 note:F5 velocity:0.9528779787942767 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 147/8 → 165/8 | gain:0.6 note:G5 velocity:0.9961825357750058 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 75/4 → 21/1 | gain:0.6 note:C4 velocity:0.6617662012577057 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 18/1 → 81/4 | gain:0.6 note:A3 velocity:0.6086445553228259 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 147/8 → 165/8 | gain:0.6 note:F3 velocity:0.5062594395130873 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 75/4 → 21/1 | gain:0.6 note:D4 velocity:0.6716219391673803 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 39/2 → 81/4 | note:F2 s:bass clip:1 gain:0.8 ]",
   "[ 81/4 → 21/1 | note:F2 s:bass clip:1 gain:0.8 ]",
-  "[ 81/4 → 45/2 | gain:0.6 note:D5 velocity:0.9066732861101627 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ 165/8 → 183/8 | gain:0.6 note:G5 velocity:0.9695742893964052 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 81/4 → 45/2 | gain:0.6 note:D4 velocity:0.7043459005653858 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 165/8 → 183/8 | gain:0.6 note:D5 velocity:0.8878388572484255 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 21/1 → 45/2 | note:F2 s:bass clip:1 gain:0.8 ]",
-  "[ 21/1 → 93/4 | gain:0.6 note:G5 velocity:0.9865687442943454 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 21/1 → 93/4 | gain:0.6 note:D4 velocity:0.7049744073301554 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 45/2 → 93/4 | note:F2 s:bass clip:1 gain:0.8 ]",
-  "[ 45/2 → 24/1 | gain:0.6 note:C5 velocity:0.8680832693353295 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
-  "[ (183/8 → 24/1) ⇝ 195/8 | gain:0.6 note:C4 velocity:0.6528211180120707 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ 45/2 → 24/1 | gain:0.6 note:D5 velocity:0.9060836611315608 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (183/8 → 24/1) ⇝ 195/8 | gain:0.6 note:G3 velocity:0.5504462849348783 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
   "[ 93/4 → 24/1 | note:F2 s:bass clip:1 gain:0.8 ]",
-  "[ (93/4 → 24/1) ⇝ 99/4 | gain:0.6 note:F3 velocity:0.5404728800058365 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
+  "[ (93/4 → 24/1) ⇝ 99/4 | gain:0.6 note:C5 velocity:0.8680832693353295 s:bell delay:0.2 delaytime:0.3333333333333333 delayfeedback:0.8 ]",
 ]
 `;
 
 exports[`renders tunes > tune: sampleDemo 1`] = `
 [
-  "[ 0/1 → 1/8 | s:brakedrum n:1 ]",
-  "[ -3/4 ⇜ (0/1 → 1/4) | note:Bb3 s:clavisynth gain:0.2 delay:0.25 pan:0 ]",
-  "[ 0/1 → 1/4 | s:woodblock n:1 ]",
+  "[ 0/1 → 1/8 | s:brakedrum n:1 speed:2 ]",
+  "[ 0/1 → 1/4 | s:woodblock n:1 speed:2 ]",
   "[ -1/4 ⇜ (0/1 → 3/4) | note:F3 s:clavisynth gain:0.2 delay:0.25 pan:1 ]",
   "[ (0/1 → 1/1) ⇝ 3/1 | note:D1 s:psaltery_pluck gain:0.6 clip:1 release:0.1 room:0.5 ]",
   "[ (0/1 → 1/1) ⇝ 8/1 | s:gong speed:2 ]",
-  "[ 1/4 → 3/8 | s:woodblock n:2 ]",
+  "[ 1/4 → 3/8 | s:woodblock n:2 speed:2 ]",
+  "[ (1/4 → 1/1) ⇝ 5/4 | note:F3 s:clavisynth gain:0.2 delay:0.25 pan:0 ]",
   "[ 3/8 → 1/2 | s:woodblock n:2 speed:2 ]",
   "[ 3/8 → 1/2 | s:brakedrum n:1 speed:2 ]",
   "[ 1/2 → 1/1 | s:snare_rim n:0 speed:2 ]",
-  "[ 3/4 → 7/8 | s:brakedrum n:1 ]",
+  "[ 3/4 → 7/8 | s:brakedrum n:1 speed:2 ]",
   "[ 3/4 → 1/1 | s:cowbell n:3 speed:2 ]",
-  "[ (3/4 → 1/1) ⇝ 7/4 | note:Bb3 s:clavisynth gain:0.2 delay:0.25 pan:1 ]",
 ]
 `;
 
@@ -8743,22 +8737,22 @@ exports[`renders tunes > tune: undergroundPlumber 1`] = `
 
 exports[`renders tunes > tune: waa2 1`] = `
 [
-  "[ -1/4 ⇜ (0/1 → 1/4) | note:48 clip:1.15 s:sawtooth cutoff:4000 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ -1/4 ⇜ (0/1 → 1/4) | note:64 clip:1.15 s:sawtooth cutoff:4000 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ (0/1 → 1/4) ⇝ 1/2 | note:62 clip:1.197659880151613 s:sawtooth cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ (0/1 → 1/4) ⇝ 1/2 | note:43 clip:1.197659880151613 s:sawtooth cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 0/1 ⇜ (1/4 → 1/2) | note:62 clip:1.197659880151613 s:square cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 0/1 ⇜ (1/4 → 1/2) | note:43 clip:1.197659880151613 s:square cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ (1/4 → 1/2) ⇝ 3/4 | note:74 clip:1.2451698046878117 s:square cutoff:3966.3742407056534 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ (1/4 → 1/2) ⇝ 3/4 | note:55 clip:1.2451698046878117 s:square cutoff:3966.3742407056534 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 1/4 ⇜ (1/2 → 3/4) | note:74 clip:1.2451698046878117 s:sawtooth cutoff:3966.3742407056534 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 1/4 ⇜ (1/2 → 3/4) | note:55 clip:1.2451698046878117 s:sawtooth cutoff:3966.3742407056534 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 1/2 → 3/4 | note:50 clip:1.2688217886051745 s:sawtooth cutoff:3947.554693090452 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ (1/2 → 3/4) ⇝ 1/1 | note:69 clip:1.292380289809026 s:sawtooth cutoff:3924.645587531366 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 1/2 ⇜ (3/4 → 1/1) | note:69 clip:1.292380289809026 s:square cutoff:3924.645587531366 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 3/4 → 1/1 | note:41 clip:1.315826773713709 s:square cutoff:3897.7021140702864 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ 3/4 → 1/1 | note:62 clip:1.315826773713709 s:square cutoff:3897.7021140702864 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
-  "[ (3/4 → 1/1) ⇝ 5/4 | note:81 clip:1.3391427938628673 s:square cutoff:3866.789181894752 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ -1/4 ⇜ (0/1 → 1/4) | note:48 clip:1.1023401198483869 s:sawtooth cutoff:3991.573271676344 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ -1/4 ⇜ (0/1 → 1/4) | note:64 clip:1.1023401198483869 s:sawtooth cutoff:3991.573271676344 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ (0/1 → 1/4) ⇝ 1/2 | note:62 clip:1.15 s:sawtooth cutoff:4000 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ (0/1 → 1/4) ⇝ 1/2 | note:43 clip:1.15 s:sawtooth cutoff:4000 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 0/1 ⇜ (1/4 → 1/2) | note:62 clip:1.15 s:square cutoff:4000 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 0/1 ⇜ (1/4 → 1/2) | note:43 clip:1.15 s:square cutoff:4000 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ (1/4 → 1/2) ⇝ 3/4 | note:74 clip:1.197659880151613 s:square cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ (1/4 → 1/2) ⇝ 3/4 | note:55 clip:1.197659880151613 s:square cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 1/4 ⇜ (1/2 → 3/4) | note:74 clip:1.197659880151613 s:sawtooth cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 1/4 ⇜ (1/2 → 3/4) | note:55 clip:1.197659880151613 s:sawtooth cutoff:3991.5732716763446 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 1/2 → 3/4 | note:50 clip:1.2451698046878117 s:sawtooth cutoff:3966.3742407056534 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ (1/2 → 3/4) ⇝ 1/1 | note:69 clip:1.2451698046878117 s:sawtooth cutoff:3966.3742407056534 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 1/2 ⇜ (3/4 → 1/1) | note:69 clip:1.2451698046878117 s:square cutoff:3966.3742407056534 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 3/4 → 1/1 | note:41 clip:1.292380289809026 s:square cutoff:3924.645587531366 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ 3/4 → 1/1 | note:62 clip:1.292380289809026 s:square cutoff:3924.645587531366 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
+  "[ (3/4 → 1/1) ⇝ 5/4 | note:81 clip:1.292380289809026 s:square cutoff:3924.645587531366 gain:0.5 room:0.5 lpattack:0.125 lpenv:-2 vib:8 vibmod:0.125 fanchor:0.25 ]",
 ]
 `;
 

From 981ad1e24228cfee397a9b13e63633843ad5571a Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Thu, 6 Feb 2025 09:06:24 +0000
Subject: [PATCH 482/805] Add DOI

---
 README.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 475497a3..200faaae 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,6 @@
 # strudel
 
-[![Strudel test status](https://github.com/tidalcycles/strudel/actions/workflows/test.yml/badge.svg)](https://github.com/tidalcycles/strudel/actions)
+[![Strudel test status](https://github.com/tidalcycles/strudel/actions/workflows/test.yml/badge.svg)](https://github.com/tidalcycles/strudel/actions) [![DOI](https://zenodo.org/badge/450927247.svg)](https://doi.org/10.5281/zenodo.6659278)
 
 An experiment in making a [Tidal](https://github.com/tidalcycles/tidal/) using web technologies. This software is a bit more stable now, but please continue to tread carefully.
 

From efd40716375a696190ceadd959d004cfdfc551fc Mon Sep 17 00:00:00 2001
From: Felix Roos 
Date: Thu, 6 Feb 2025 13:51:53 +0100
Subject: [PATCH 483/805] remove midisounds for now

---
 packages/midi/midi.mjs                   | 33 ------------------------
 test/examples.test.mjs                   |  1 -
 website/src/pages/learn/input-output.mdx |  4 ---
 3 files changed, 38 deletions(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 70df93e8..2c1d1f20 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -165,37 +165,6 @@ export async function midimaps(map) {
 // registry for midi sounds, converting sound names to controls
 export const midisoundMap = new Map();
 
-/**
- * Maps a sound name to a set of controls:
- * @example
- * midisounds({ bd: { note: 'c2' } })
- * $: s("bd").midi()
- * @example
- * // notes can be set directly to simplify typical midi drum kit mappings
- * midisounds({ bd: 'c2', rim: 'c#2' })
- * $: s("bd rim").midi()
- **/
-export async function midisounds(map) {
-  if (typeof map === 'object') {
-    Object.entries(map).forEach(([name, mapping]) => midisoundMap.set(name, mapping));
-  }
-}
-
-function applyMidisounds(hapValue) {
-  const { s } = hapValue;
-  if (!midisoundMap.has(s)) {
-    return;
-  }
-  let controls = midisoundMap.get(hapValue.s);
-  if (Array.isArray(controls)) {
-    controls = controls[hapValue.n || 0];
-  }
-  if (typeof controls === 'string') {
-    controls = { note: controls };
-  }
-  Object.assign(hapValue, controls);
-}
-
 // normalizes the given value from the given range and exponent
 function normalize(value = 0, min = 0, max = 1, exp = 1) {
   if (min === max) {
@@ -260,8 +229,6 @@ Pattern.prototype.midi = function (output) {
     const latencyMs = 34;
     // passing a string with a +num into the webmidi api adds an offset to the current time https://webmidijs.org/api/classes/Output
     const timeOffsetString = `+${getEventOffsetMs(targetTime, currentTime) + latencyMs}`;
-    // convert s to midisounds preset (if set)
-    applyMidisounds(hap.value);
 
     // destructure value
     let {
diff --git a/test/examples.test.mjs b/test/examples.test.mjs
index ccce6c2a..896a02f8 100644
--- a/test/examples.test.mjs
+++ b/test/examples.test.mjs
@@ -20,7 +20,6 @@ const skippedExamples = [
   'accelerationX',
   'defaultmidimap',
   'midimaps',
-  'midisounds',
 ];
 
 describe('runs examples', () => {
diff --git a/website/src/pages/learn/input-output.mdx b/website/src/pages/learn/input-output.mdx
index 666a39f7..cec06a34 100644
--- a/website/src/pages/learn/input-output.mdx
+++ b/website/src/pages/learn/input-output.mdx
@@ -56,10 +56,6 @@ Instead of setting `ccn` and `ccv` directly, you can also create mappings with `
 
 
 
-## midisounds
-
-
-
 # OSC/SuperDirt/StrudelDirt
 
 In TidalCycles, sound is usually generated using [SuperDirt](https://github.com/musikinformatik/SuperDirt/), which runs inside SuperCollider. Strudel also supports using SuperDirt, although it requires installing some additional software.

From 8bde61fa2748fd61c346250b3c1eddf7ad1ec5f1 Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Thu, 6 Feb 2025 14:59:03 +0000
Subject: [PATCH 484/805] allow duration and cps metadata to be added to mqtt
 messages (#1279)

---
 packages/mqtt/mqtt.mjs | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/packages/mqtt/mqtt.mjs b/packages/mqtt/mqtt.mjs
index 0d02a37c..5ffa7c1f 100644
--- a/packages/mqtt/mqtt.mjs
+++ b/packages/mqtt/mqtt.mjs
@@ -35,6 +35,7 @@ Pattern.prototype.mqtt = function (
   host = 'wss://localhost:8883/',
   client = undefined,
   latency = 0,
+  add_meta = true,
 ) {
   const key = host + '-' + client;
   let connected = false;
@@ -88,7 +89,12 @@ Pattern.prototype.mqtt = function (
       }
       let message = '';
       if (typeof hap.value === 'object') {
-        message = JSON.stringify(hap.value);
+        let value = hap.value;
+        if (add_meta) {
+          const duration = hap.duration.div(cps);
+          value = { ...value, duration: duration.valueOf(), cps: cps };
+        }
+        message = JSON.stringify(value);
       } else {
         message = hap.value;
       }

From 5ff1d35272f3f021a60fd5edcd852f24fb40116f Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Fri, 7 Feb 2025 00:08:31 +0800
Subject: [PATCH 485/805] 'miditouch' change sendKeyAfterTouch to
 sendChannelAfterTouch

---
 packages/midi/midi.mjs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 2c46d61c..b2b96e30 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -275,7 +275,7 @@ Pattern.prototype.midi = function (output) {
     // Handle miditouch
     if (miditouch !== undefined) {
       if (typeof miditouch == 'number' || miditouch < 1 || miditouch > 0) {
-        device.sendKeyAfterTouch(miditouch, midichan, { time: timeOffsetString });
+        device.sendChannelAfterTouch(miditouch, midichan, { time: timeOffsetString });
       } else {
         throw new Error('expected miditouch to be a number between 1 and 0');
       }

From 451cdcc3a900d822832713971ff081d09810405a Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Fri, 7 Feb 2025 04:39:24 +0800
Subject: [PATCH 486/805] fix sendChannelAfterTouch -> sendChannelAftertouch

---
 packages/midi/midi.mjs | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index b2b96e30..24b7e382 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -275,7 +275,7 @@ Pattern.prototype.midi = function (output) {
     // Handle miditouch
     if (miditouch !== undefined) {
       if (typeof miditouch == 'number' || miditouch < 1 || miditouch > 0) {
-        device.sendChannelAfterTouch(miditouch, midichan, { time: timeOffsetString });
+        device.sendChannelAftertouch(miditouch, midichan, { time: timeOffsetString });
       } else {
         throw new Error('expected miditouch to be a number between 1 and 0');
       }

From 07b0a2e0f0b8fe30e32901330e04c61bb1bee533 Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Fri, 7 Feb 2025 10:39:53 +0000
Subject: [PATCH 487/805] Make mqtt topic patternable (#1280)

---
 packages/mqtt/mqtt.mjs | 12 +++++++++++-
 1 file changed, 11 insertions(+), 1 deletion(-)

diff --git a/packages/mqtt/mqtt.mjs b/packages/mqtt/mqtt.mjs
index 5ffa7c1f..67bce6b0 100644
--- a/packages/mqtt/mqtt.mjs
+++ b/packages/mqtt/mqtt.mjs
@@ -84,12 +84,22 @@ Pattern.prototype.mqtt = function (
   }
   return this.withHap((hap) => {
     const onTrigger = (t_deprecate, hap, currentTime, cps, targetTime) => {
+      let msg_topic = topic;
       if (!connected) {
         return;
       }
       let message = '';
       if (typeof hap.value === 'object') {
         let value = hap.value;
+
+        // Try to take topic from pattern if it's not set
+        if (typeof msg_topic === 'undefined' && 'topic' in value) {
+          msg_topic = value.topic;
+          if (Array.isArray(msg_topic)) {
+            msg_topic = msg_topic.join('/');
+          }
+          msg_topic = '/' + msg_topic;
+        }
         if (add_meta) {
           const duration = hap.duration.div(cps);
           value = { ...value, duration: duration.valueOf(), cps: cps };
@@ -99,7 +109,7 @@ Pattern.prototype.mqtt = function (
         message = hap.value;
       }
       message = new Paho.Message(message);
-      message.destinationName = topic;
+      message.destinationName = msg_topic;
 
       const offset = (targetTime - currentTime + latency) * 1000;
 

From cda79f3e5c8ac6c8f9b51e04eb154980ed9e2e3d Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Fri, 7 Feb 2025 16:38:28 +0000
Subject: [PATCH 488/805] Bugfix: update mqtt connections dictionary (#1281)

---
 packages/mqtt/mqtt.mjs | 1 +
 1 file changed, 1 insertion(+)

diff --git a/packages/mqtt/mqtt.mjs b/packages/mqtt/mqtt.mjs
index 67bce6b0..aa8a4427 100644
--- a/packages/mqtt/mqtt.mjs
+++ b/packages/mqtt/mqtt.mjs
@@ -57,6 +57,7 @@ Pattern.prototype.mqtt = function (
     cx = connections[key];
   } else {
     cx = new Paho.Client(host, client);
+    connections[key] = cx;
     cx.onConnectionLost = onConnectionLost;
     cx.onMessageArrived = onMessageArrived;
     const props = {

From cf8203a4db7cdbd8a27ceb1e5e26a43656d57ae8 Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Fri, 7 Feb 2025 17:11:52 +0000
Subject: [PATCH 489/805] mqtt bugfix - connection check (#1282)

---
 packages/mqtt/mqtt.mjs | 10 ++++------
 1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/packages/mqtt/mqtt.mjs b/packages/mqtt/mqtt.mjs
index aa8a4427..c2322600 100644
--- a/packages/mqtt/mqtt.mjs
+++ b/packages/mqtt/mqtt.mjs
@@ -38,15 +38,10 @@ Pattern.prototype.mqtt = function (
   add_meta = true,
 ) {
   const key = host + '-' + client;
-  let connected = false;
   let password_entered = false;
 
-  if (!client) {
-    client = 'strudel-' + String(Math.floor(Math.random() * 1000000));
-  }
   function onConnect() {
     console.log('Connected to mqtt broker');
-    connected = true;
     if (password_entered) {
       document.cookie = 'mqtt_pass=' + password;
     }
@@ -56,6 +51,9 @@ Pattern.prototype.mqtt = function (
   if (connections[key]) {
     cx = connections[key];
   } else {
+    if (!client) {
+      client = 'strudel-' + String(Math.floor(Math.random() * 1000000));
+    }
     cx = new Paho.Client(host, client);
     connections[key] = cx;
     cx.onConnectionLost = onConnectionLost;
@@ -86,7 +84,7 @@ Pattern.prototype.mqtt = function (
   return this.withHap((hap) => {
     const onTrigger = (t_deprecate, hap, currentTime, cps, targetTime) => {
       let msg_topic = topic;
-      if (!connected) {
+      if (!cx || !cx.isConnected()) {
         return;
       }
       let message = '';

From f802f18d68f761943f7baca5013b1da3bddaeb87 Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Sun, 9 Feb 2025 10:56:51 +0800
Subject: [PATCH 490/805] refactor(midi): extract MIDI message handlers into
 dedicated functions

- Move MIDI API logic into separate functions following #1274 (sendCC, sendProgramChange, sendPitchBend, etc.)
---
 packages/core/controls.mjs                |   2 -
 packages/midi/midi.mjs                    | 261 +++++-----------------
 test/__snapshots__/examples.test.mjs.snap |  16 +-
 website/src/pages/learn/input-output.mdx  |   1 -
 4 files changed, 59 insertions(+), 221 deletions(-)

diff --git a/packages/core/controls.mjs b/packages/core/controls.mjs
index ae3a71ca..b4f65fbf 100644
--- a/packages/core/controls.mjs
+++ b/packages/core/controls.mjs
@@ -1514,8 +1514,6 @@ export const { binshift } = registerControl('binshift');
 export const { hbrick } = registerControl('hbrick');
 export const { lbrick } = registerControl('lbrick');
 
-
-
 export const { frameRate } = registerControl('frameRate');
 export const { frames } = registerControl('frames');
 export const { hours } = registerControl('hours');
diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index a39e8e1d..4606dbb5 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -200,111 +200,60 @@ function sendCC(ccn, ccv, device, midichan, timeOffsetString) {
   device.sendControlChange(ccn, scaled, midichan, { time: timeOffsetString });
 }
 
-// registry for midi mappings, converting control names to cc messages
-export const midicontrolMap = new Map();
-
-// takes midimap and converts each control key to the main control name
-function unifyMapping(mapping) {
-  return Object.fromEntries(
-    Object.entries(mapping).map(([key, mapping]) => {
-      if (typeof mapping === 'number') {
-        mapping = { ccn: mapping };
-      }
-      return [getControlName(key), mapping];
-    }),
-  );
-}
-
-function githubPath(base, subpath = '') {
-  if (!base.startsWith('github:')) {
-    throw new Error('expected "github:" at the start of pseudoUrl');
+// sends a program change message to the given device on the given channel
+function sendProgramChange(progNum, device, midichan, timeOffsetString) {
+  if (typeof progNum !== 'number' || progNum < 0 || progNum > 127) {
+    throw new Error('expected progNum (program change) to be a number between 0 and 127');
   }
-  let [_, path] = base.split('github:');
-  path = path.endsWith('/') ? path.slice(0, -1) : path;
-  if (path.split('/').length === 2) {
-    // assume main as default branch if none set
-    path += '/main';
-  }
-  return `https://raw.githubusercontent.com/${path}/${subpath}`;
+  device.sendProgramChange(progNum, midichan, { time: timeOffsetString });
 }
 
-/**
- * configures the default midimap, which is used when no "midimap" port is set
- * @example
- * defaultmidimap({ lpf: 74 })
- * $: note("c a f e").midi();
- * $: lpf(sine.slow(4).segment(16)).midi();
- */
-export function defaultmidimap(mapping) {
-  midicontrolMap.set('default', unifyMapping(mapping));
-}
-
-let loadCache = {};
-
-/**
- * Adds midimaps to the registry. Inside each midimap, control names (e.g. lpf) are mapped to cc numbers.
- * @example
- * midimaps({ mymap: { lpf: 74 } })
- * $: note("c a f e")
- * .lpf(sine.slow(4))
- * .midimap('mymap')
- * .midi()
- * @example
- * midimaps({ mymap: {
- *   lpf: { ccn: 74, min: 0, max: 20000, exp: 0.5 }
- * }})
- * $: note("c a f e")
- * .lpf(sine.slow(2).range(400,2000))
- * .midimap('mymap')
- * .midi()
- */
-export async function midimaps(map) {
-  if (typeof map === 'string') {
-    if (map.startsWith('github:')) {
-      map = githubPath(map, 'midimap.json');
+// sends a sysex message to the given device on the given channel
+function sendSysex(sysexid, sysexdata, device, timeOffsetString) {
+  if (Array.isArray(sysexid)) {
+    if (!sysexid.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
+      throw new Error('all sysexid bytes must be integers between 0 and 255');
     }
-    if (!loadCache[map]) {
-      loadCache[map] = fetch(map).then((res) => res.json());
+  } else if (!Number.isInteger(sysexid) || sysexid < 0 || sysexid > 255) {
+    throw new Error('A:sysexid must be an number between 0 and 255 or an array of such integers');
+  }
+
+  if (!Array.isArray(sysexdata)) {
+    throw new Error('expected sysex to be an array of numbers (0-255)');
+  }
+  if (!sysexdata.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
+    throw new Error('all sysex bytes must be integers between 0 and 255');
+  }
+  device.sendSysex(sysexid, sysexdata, { time: timeOffsetString });
+}
+
+// sends a NRPN message to the given device on the given channel
+function sendNRPN(nrpnn, nrpv, device, midichan, timeOffsetString) {
+  if (Array.isArray(nrpnn)) {
+    if (!nrpnn.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
+      throw new Error('all nrpnn bytes must be integers between 0 and 255');
     }
-    map = await loadCache[map];
-  }
-  if (typeof map === 'object') {
-    Object.entries(map).forEach(([name, mapping]) => midicontrolMap.set(name, unifyMapping(mapping)));
+  } else if (!Number.isInteger(nrpv) || nrpv < 0 || nrpv > 255) {
+    throw new Error('A:sysexid must be an number between 0 and 255 or an array of such integers');
   }
+
+  device.sendNRPN(nrpnn, nrpv, midichan, { time: timeOffsetString });
 }
 
-// registry for midi sounds, converting sound names to controls
-export const midisoundMap = new Map();
-
-// normalizes the given value from the given range and exponent
-function normalize(value = 0, min = 0, max = 1, exp = 1) {
-  if (min === max) {
-    throw new Error('min and max cannot be the same value');
+// sends a pitch bend message to the given device on the given channel
+function sendPitchBend(midibend, device, midichan, timeOffsetString) {
+  if (typeof midibend !== 'number' || midibend < -1 || midibend > 1) {
+    throw new Error('expected midibend to be a number between -1 and 1');
   }
-  let normalized = (value - min) / (max - min);
-  normalized = Math.min(1, Math.max(0, normalized));
-  return Math.pow(normalized, exp);
-}
-function mapCC(mapping, value) {
-  return Object.keys(value)
-    .filter((key) => !!mapping[getControlName(key)])
-    .map((key) => {
-      const { ccn, min = 0, max = 1, exp = 1 } = mapping[key];
-      const ccv = normalize(value[key], min, max, exp);
-      return { ccn, ccv };
-    });
+  device.sendPitchBend(midibend, midichan, { time: timeOffsetString });
 }
 
-// sends a cc message to the given device on the given channel
-function sendCC(ccn, ccv, device, midichan, timeOffsetString) {
-  if (typeof ccv !== 'number' || ccv < 0 || ccv > 1) {
-    throw new Error('expected ccv to be a number between 0 and 1');
+// sends a channel aftertouch message to the given device on the given channel
+function sendAftertouch(miditouch, device, midichan, timeOffsetString) {
+  if (typeof miditouch !== 'number' || miditouch < 0 || miditouch > 1) {
+    throw new Error('expected miditouch to be a number between 0 and 1');
   }
-  if (!['string', 'number'].includes(typeof ccn)) {
-    throw new Error('expected ccn to be a number or a string');
-  }
-  const scaled = Math.round(ccv * 127);
-  device.sendControlChange(ccn, scaled, midichan, { time: timeOffsetString });
+  device.sendChannelAftertouch(miditouch, midichan, { time: timeOffsetString });
 }
 
 /**
@@ -404,43 +353,11 @@ Pattern.prototype.midi = function (output) {
       });
     }
 
-    // Handle mapped parameters if mapping exists
-    if (mapping) {
-      Object.entries(mapping).forEach(([name, paramSpec]) => {
-        if (name in hap.value) {
-          const value = hap.value[name];
-
-          if (paramSpec.cc) {
-            if (typeof value !== 'number') {
-              throw new Error(`Expected ${name} to be a number for CC mapping`);
-            }
-            // ccnLsb will only exist if this is a high-resolution CC message
-            const [ccnMsb, ccnLsb] = Array.isArray(paramSpec.cc) ? paramSpec.cc : [paramSpec.cc];
-
-            const ccvMsb = ccnLsb === undefined ? Math.round(value * 127) : Math.round(value * 16383) >> 7;
-            device.sendControlChange(ccnMsb, ccvMsb, paramSpec.channel || midichan, { time: timeOffsetString });
-
-            if (ccnLsb !== undefined) {
-              const ccvLsb = Math.round(value * 16383) & 0b1111111;
-              device.sendControlChange(ccnLsb, ccvLsb, paramSpec.channel || midichan, { time: timeOffsetString });
-            }
-          } else if (paramSpec.progNum !== undefined) {
-            if (typeof value !== 'number' || value < 0 || value > 127) {
-              throw new Error(`Expected ${name} to be a number between 0 and 127 for program change`);
-            }
-            device.sendProgramChange(value, paramSpec.channel || midichan, { time: timeOffsetString });
-          }
-        }
-      });
-    }
-
     // Handle program change
     if (progNum !== undefined) {
-      if (typeof progNum !== 'number' || progNum < 0 || progNum > 127) {
-        throw new Error('expected pc (program change) to be a number between 0 and 127');
-      }
-      device.sendProgramChange(progNum, midichan, { time: timeOffsetString });
+      sendProgramChange(progNum, device, midichan, timeOffsetString);
     }
+
     // Handle sysex
     // sysex data is consist of 2 arrays, first is sysexid, second is sysexdata
     // sysexid is a manufacturer id it is either a number or an array of 3 numbers.
@@ -448,23 +365,7 @@ Pattern.prototype.midi = function (output) {
     // if sysexid is an array the first byte is 0x00
 
     if (sysexid !== undefined && sysexdata !== undefined) {
-      if (Array.isArray(sysexid)) {
-        if (!sysexid.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
-          throw new Error('all sysexid bytes must be integers between 0 and 255');
-        }
-      } else if (!Number.isInteger(sysexid) || sysexid < 0 || sysexid > 255) {
-        throw new Error('A:sysexid must be an number between 0 and 255 or an array of such integers');
-      }
-
-      if (!Array.isArray(sysexdata)) {
-        throw new Error('expected sysex to be an array of numbers (0-255)');
-      }
-      if (!sysexdata.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
-        throw new Error('all sysex bytes must be integers between 0 and 255');
-      }
-
-      device.sendSysex(sysexid, sysexdata, { time: timeOffsetString });
-      //device.sendSysex(0x43, [0x79, 0x09, 0x11, 0x0A, 0x00,0x1e], { time: timeOffsetString });
+      sendSysex(sysexid, sysexdata, device, timeOffsetString);
     }
 
     // Handle control change
@@ -474,57 +375,17 @@ Pattern.prototype.midi = function (output) {
 
     // Handle NRPN non-registered parameter number
     if (nrpnn !== undefined && nrpv !== undefined) {
-      if (Array.isArray(nrpnn)) {
-        if (!nrpnn.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
-          throw new Error('all nrpnn bytes must be integers between 0 and 255');
-        }
-      } else if (!Number.isInteger(nrpv) || nrpv < 0 || nrpv > 255) {
-        throw new Error('A:sysexid must be an number between 0 and 255 or an array of such integers');
-      }
-
-      device.sendNRPN(nrpnn, nrpv, midichan, { time: timeOffsetString });
+      sendNRPN(nrpnn, nrpv, device, midichan, timeOffsetString);
     }
 
     // Handle midibend
     if (midibend !== undefined) {
-      if (typeof midibend == 'number' || midibend < 1 || midibend > -1) {
-        device.sendPitchBend(midibend, midichan, { time: timeOffsetString });
-      } else {
-        throw new Error('expected midibend to be a number between 1 and -1');
-      }
-      const scaled = Math.round(ccv * 127);
-      device.sendControlChange(ccn, scaled, midichan, { time: timeOffsetString });
-    }
-
-    // Handle NRPN non-registered parameter number
-    if (nrpnn !== undefined && nrpv !== undefined) {
-      if (Array.isArray(nrpnn)) {
-        if (!nrpnn.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
-          throw new Error('all nrpnn bytes must be integers between 0 and 255');
-        }
-      } else if (!Number.isInteger(nrpv) || nrpv < 0 || nrpv > 255) {
-        throw new Error('A:sysexid must be an number between 0 and 255 or an array of such integers');
-      }
-
-      device.sendNRPN(nrpnn, nrpv, midichan, { time: timeOffsetString });
-    }
-
-    // Handle midibend
-    if (midibend !== undefined) {
-      if (typeof midibend == 'number' || midibend < 1 || midibend > -1) {
-        device.sendPitchBend(midibend, midichan, { time: timeOffsetString });
-      } else {
-        throw new Error('expected midibend to be a number between 1 and -1');
-      }
+      sendPitchBend(midibend, device, midichan, timeOffsetString);
     }
 
     // Handle miditouch
     if (miditouch !== undefined) {
-      if (typeof miditouch == 'number' || miditouch < 1 || miditouch > 0) {
-        device.sendChannelAftertouch(miditouch, midichan, { time: timeOffsetString });
-      } else {
-        throw new Error('expected miditouch to be a number between 1 and 0');
-      }
+      sendAftertouch(miditouch, device, midichan, timeOffsetString);
     }
 
     // Handle midicmd
@@ -542,35 +403,15 @@ Pattern.prototype.midi = function (output) {
       device.sendContinue({ time: timeOffsetString });
     } else if (Array.isArray(midicmd)) {
       if (midicmd[0] === 'progNum') {
-        if (typeof midicmd[1] !== 'number' || midicmd[1] < 0 || midicmd[1] > 127) {
-          throw new Error('expected pc (program change) to be a number between 0 and 127');
-        } else {
-          device.sendProgramChange(midicmd[1], midichan, { time: timeOffsetString });
-        }
+        sendProgramChange(midicmd[1], device, midichan, timeOffsetString);
       } else if (midicmd[0] === 'cc') {
         if (midicmd.length === 2) {
-          if (typeof midicmd[0] !== 'number' || midicmd[0] < 0 || midicmd[0] > 127) {
-            throw new Error('expected ccn (control change number) to be a number between 0 and 127');
-          }
-          if (typeof midicmd[1] !== 'number' || midicmd[1] < 0 || midicmd[1] > 127) {
-            throw new Error('expected ccv (control change value) to be a number between 0 and 127');
-          }
-          device.sendControlChange(midicmd[0], midicmd[1], midichan, { time: timeOffsetString });
+          sendCC(midicmd[0], midicmd[1] / 127, device, midichan, timeOffsetString);
         }
       } else if (midicmd[0] === 'sysex') {
         if (midicmd.length === 3) {
           const [_, id, data] = midicmd;
-          if (Array.isArray(id)) {
-            if (!id.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
-              throw new Error('all sysex id bytes must be integers between 0 and 255');
-            }
-          } else if (!Number.isInteger(id) || id < 0 || id > 255) {
-            throw new Error('sysex id must be a number between 0 and 255 or an array of such integers');
-          }
-          if (!Array.isArray(data) || !data.every((byte) => Number.isInteger(byte) && byte >= 0 && byte <= 255)) {
-            throw new Error('sysex data must be an array of integers between 0 and 255');
-          }
-          device.sendSysex(id, data, { time: timeOffsetString });
+          sendSysex(id, data, device, timeOffsetString);
         }
       }
     }
diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index 9eade34e..b395ed27 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -5063,10 +5063,10 @@ exports[`runs examples > example "midi" example index 0 1`] = `
 
 exports[`runs examples > example "midibend" example index 0 1`] = `
 [
-  "[ 0/1 → 1/1 | note:c4 midibend:0.282842712474619 ]",
-  "[ 1/1 → 2/1 | note:c4 midibend:0.282842712474619 ]",
-  "[ 2/1 → 3/1 | note:c4 midibend:-0.282842712474619 ]",
-  "[ 3/1 → 4/1 | note:c4 midibend:-0.2828427124746191 ]",
+  "[ 0/1 → 1/1 | note:c4 midibend:0 ]",
+  "[ 1/1 → 2/1 | note:c4 midibend:0.4 ]",
+  "[ 2/1 → 3/1 | note:c4 midibend:1.1102230246251565e-16 ]",
+  "[ 3/1 → 4/1 | note:c4 midibend:-0.4 ]",
 ]
 `;
 
@@ -5301,10 +5301,10 @@ exports[`runs examples > example "midin" example index 0 1`] = `
 
 exports[`runs examples > example "miditouch" example index 0 1`] = `
 [
-  "[ 0/1 → 1/1 | note:c4 miditouch:0.8535533905932737 ]",
-  "[ 1/1 → 2/1 | note:c4 miditouch:0.8535533905932737 ]",
-  "[ 2/1 → 3/1 | note:c4 miditouch:0.14644660940672627 ]",
-  "[ 3/1 → 4/1 | note:c4 miditouch:0.14644660940672616 ]",
+  "[ 0/1 → 1/1 | note:c4 miditouch:0.5 ]",
+  "[ 1/1 → 2/1 | note:c4 miditouch:1 ]",
+  "[ 2/1 → 3/1 | note:c4 miditouch:0.5000000000000001 ]",
+  "[ 3/1 → 4/1 | note:c4 miditouch:0 ]",
 ]
 `;
 
diff --git a/website/src/pages/learn/input-output.mdx b/website/src/pages/learn/input-output.mdx
index e0118f61..15d31f2a 100644
--- a/website/src/pages/learn/input-output.mdx
+++ b/website/src/pages/learn/input-output.mdx
@@ -122,7 +122,6 @@ Consult your device's MIDI implementation guide for details on supported SysEx m
 
 
 
-
 # OSC/SuperDirt/StrudelDirt
 
 In TidalCycles, sound is usually generated using [SuperDirt](https://github.com/musikinformatik/SuperDirt/), which runs inside SuperCollider. Strudel also supports using SuperDirt, although it requires installing some additional software.

From b98ebc696d7d391aeab6fade3e63fcf6a096b764 Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Sun, 9 Feb 2025 12:19:30 +0800
Subject: [PATCH 491/805] remove midimap JSDoc

---
 packages/core/controls.mjs | 7 +------
 packages/midi/midi.mjs     | 1 +
 2 files changed, 2 insertions(+), 6 deletions(-)

diff --git a/packages/core/controls.mjs b/packages/core/controls.mjs
index b4f65fbf..0c89ff6c 100644
--- a/packages/core/controls.mjs
+++ b/packages/core/controls.mjs
@@ -1622,12 +1622,7 @@ export const ar = register('ar', (t, pat) => {
  */
 export const { midichan } = registerControl('midichan');
 
-/**
- * MIDI map: Sets the MIDI map for the event.
- *
- * @name midimap
- * @param {Object} map MIDI map
- */
+
 export const { midimap } = registerControl('midimap');
 
 /**
diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 4606dbb5..9ce93396 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -178,6 +178,7 @@ function normalize(value = 0, min = 0, max = 1, exp = 1) {
   normalized = Math.min(1, Math.max(0, normalized));
   return Math.pow(normalized, exp);
 }
+
 function mapCC(mapping, value) {
   return Object.keys(value)
     .filter((key) => !!mapping[getControlName(key)])

From 43523b73c4014c3ef8b0312f5899d08272a2c552 Mon Sep 17 00:00:00 2001
From: nkymut 
Date: Sun, 9 Feb 2025 15:12:14 +0800
Subject: [PATCH 492/805] codeformat

---
 packages/core/controls.mjs | 1 -
 packages/midi/midi.mjs     | 3 +++
 2 files changed, 3 insertions(+), 1 deletion(-)

diff --git a/packages/core/controls.mjs b/packages/core/controls.mjs
index 0c89ff6c..967c0904 100644
--- a/packages/core/controls.mjs
+++ b/packages/core/controls.mjs
@@ -1622,7 +1622,6 @@ export const ar = register('ar', (t, pat) => {
  */
 export const { midichan } = registerControl('midichan');
 
-
 export const { midimap } = registerControl('midimap');
 
 /**
diff --git a/packages/midi/midi.mjs b/packages/midi/midi.mjs
index 9ce93396..8de6c447 100644
--- a/packages/midi/midi.mjs
+++ b/packages/midi/midi.mjs
@@ -180,6 +180,8 @@ function normalize(value = 0, min = 0, max = 1, exp = 1) {
 }
 
 function mapCC(mapping, value) {
+  console.log('mapping', mapping);
+  console.log('value', value);
   return Object.keys(value)
     .filter((key) => !!mapping[getControlName(key)])
     .map((key) => {
@@ -340,6 +342,7 @@ Pattern.prototype.midi = function (output) {
     velocity = gain * velocity;
     // if midimap is set, send a cc messages from defined controls
     if (midicontrolMap.has(midimap)) {
+      console.log('midimap', midimap);
       const ccs = mapCC(midicontrolMap.get(midimap), hap.value);
       ccs.forEach(({ ccn, ccv }) => sendCC(ccn, ccv, device, midichan, timeOffsetString));
     }

From 3575fc3cc85a6257f69b8d9a11ac8cd3666e7cda Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Sun, 9 Feb 2025 15:18:28 +0000
Subject: [PATCH 493/805] rename repeat back to extend (#1285)

---
 packages/core/pattern.mjs                 | 14 +++---
 test/__snapshots__/examples.test.mjs.snap | 54 +++++++++++------------
 website/src/pages/learn/stepwise.mdx      |  4 +-
 3 files changed, 36 insertions(+), 36 deletions(-)

diff --git a/packages/core/pattern.mjs b/packages/core/pattern.mjs
index 6bfe39ce..b755d095 100644
--- a/packages/core/pattern.mjs
+++ b/packages/core/pattern.mjs
@@ -388,7 +388,7 @@ export class Pattern {
 
   polyJoin = function () {
     const pp = this;
-    return pp.fmap((p) => p.repeat(pp._steps.div(p._steps))).outerJoin();
+    return pp.fmap((p) => p.extend(pp._steps.div(p._steps))).outerJoin();
   };
 
   polyBind(func) {
@@ -2845,16 +2845,16 @@ export const drop = stepRegister('drop', function (i, pat) {
 /**
  * *Experimental*
  *
- * `repeat` is similar to `fast` in that it 'speeds up' the pattern, but it also increases the step count
- * accordingly. So `stepcat("a b".repeat(2), "c d")` would be the same as `"a b a b c d"`, whereas
+ * `extend` is similar to `fast` in that it increases its density, but it also increases the step count
+ * accordingly. So `stepcat("a b".extend(2), "c d")` would be the same as `"a b a b c d"`, whereas
  * `stepcat("a b".fast(2), "c d")` would be the same as `"[a b] [a b] c d"`.
  * @example
  * stepcat(
- *   sound("bd bd - cp").repeat(2),
+ *   sound("bd bd - cp").extend(2),
  *   sound("bd - sd -")
  * ).pace(8)
  */
-export const repeat = stepRegister('repeat', function (factor, pat) {
+export const extend = stepRegister('extend', function (factor, pat) {
   return pat.fast(factor).expand(factor);
 });
 
@@ -3066,8 +3066,8 @@ export const s_sub = drop;
 Pattern.prototype.s_sub = Pattern.prototype.drop;
 export const s_expand = expand;
 Pattern.prototype.s_expand = Pattern.prototype.expand;
-export const s_extend = repeat;
-Pattern.prototype.s_extend = Pattern.prototype.repeat;
+export const s_extend = extend;
+Pattern.prototype.s_extend = Pattern.prototype.extend;
 export const s_contract = contract;
 Pattern.prototype.s_contract = Pattern.prototype.contract;
 export const s_tour = tour;
diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index 05a97f14..c2853f9f 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -3019,6 +3019,33 @@ exports[`runs examples > example "expand" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "extend" example index 0 1`] = `
+[
+  "[ 0/1 → 1/8 | s:bd ]",
+  "[ 1/8 → 1/4 | s:bd ]",
+  "[ 3/8 → 1/2 | s:cp ]",
+  "[ 1/2 → 5/8 | s:bd ]",
+  "[ 5/8 → 3/4 | s:bd ]",
+  "[ 7/8 → 1/1 | s:cp ]",
+  "[ 1/1 → 9/8 | s:bd ]",
+  "[ 5/4 → 11/8 | s:sd ]",
+  "[ 3/2 → 13/8 | s:bd ]",
+  "[ 13/8 → 7/4 | s:bd ]",
+  "[ 15/8 → 2/1 | s:cp ]",
+  "[ 2/1 → 17/8 | s:bd ]",
+  "[ 17/8 → 9/4 | s:bd ]",
+  "[ 19/8 → 5/2 | s:cp ]",
+  "[ 5/2 → 21/8 | s:bd ]",
+  "[ 11/4 → 23/8 | s:sd ]",
+  "[ 3/1 → 25/8 | s:bd ]",
+  "[ 25/8 → 13/4 | s:bd ]",
+  "[ 27/8 → 7/2 | s:cp ]",
+  "[ 7/2 → 29/8 | s:bd ]",
+  "[ 29/8 → 15/4 | s:bd ]",
+  "[ 31/8 → 4/1 | s:cp ]",
+]
+`;
+
 exports[`runs examples > example "fanchor" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | note:f s:sawtooth cutoff:1000 lpenv:8 fanchor:0 ]",
@@ -6490,33 +6517,6 @@ exports[`runs examples > example "release" example index 0 1`] = `
 ]
 `;
 
-exports[`runs examples > example "repeat" example index 0 1`] = `
-[
-  "[ 0/1 → 1/8 | s:bd ]",
-  "[ 1/8 → 1/4 | s:bd ]",
-  "[ 3/8 → 1/2 | s:cp ]",
-  "[ 1/2 → 5/8 | s:bd ]",
-  "[ 5/8 → 3/4 | s:bd ]",
-  "[ 7/8 → 1/1 | s:cp ]",
-  "[ 1/1 → 9/8 | s:bd ]",
-  "[ 5/4 → 11/8 | s:sd ]",
-  "[ 3/2 → 13/8 | s:bd ]",
-  "[ 13/8 → 7/4 | s:bd ]",
-  "[ 15/8 → 2/1 | s:cp ]",
-  "[ 2/1 → 17/8 | s:bd ]",
-  "[ 17/8 → 9/4 | s:bd ]",
-  "[ 19/8 → 5/2 | s:cp ]",
-  "[ 5/2 → 21/8 | s:bd ]",
-  "[ 11/4 → 23/8 | s:sd ]",
-  "[ 3/1 → 25/8 | s:bd ]",
-  "[ 25/8 → 13/4 | s:bd ]",
-  "[ 27/8 → 7/2 | s:cp ]",
-  "[ 7/2 → 29/8 | s:bd ]",
-  "[ 29/8 → 15/4 | s:bd ]",
-  "[ 31/8 → 4/1 | s:cp ]",
-]
-`;
-
 exports[`runs examples > example "repeatCycles" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:34 s:gm_acoustic_guitar_nylon ]",
diff --git a/website/src/pages/learn/stepwise.mdx b/website/src/pages/learn/stepwise.mdx
index 56b21161..b50dee45 100644
--- a/website/src/pages/learn/stepwise.mdx
+++ b/website/src/pages/learn/stepwise.mdx
@@ -100,9 +100,9 @@ Earlier versions of many of these functions had `s_` prefixes, and the `pace` fu
 
 
 
-### repeat
+### extend
 
-
+
 
 ### take
 

From 84581b22aac8326f47fe237a17bba66dcb5ec592 Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Tue, 11 Feb 2025 09:02:34 +0000
Subject: [PATCH 494/805] Fix for `squeezejoin` and functions using it,
 including `bite` (#1286)

---
 packages/core/pattern.mjs           |  5 ++++-
 packages/core/test/pattern.test.mjs | 10 ++++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/packages/core/pattern.mjs b/packages/core/pattern.mjs
index b755d095..4f0d3576 100644
--- a/packages/core/pattern.mjs
+++ b/packages/core/pattern.mjs
@@ -1820,7 +1820,10 @@ export const { fastGap, fastgap } = register(['fastGap', 'fastgap'], function (f
 export const focus = register('focus', function (b, e, pat) {
   b = Fraction(b);
   e = Fraction(e);
-  return pat._fast(Fraction(1).div(e.sub(b))).late(b.cyclePos());
+  return pat
+    ._early(b.sam())
+    ._fast(Fraction(1).div(e.sub(b)))
+    ._late(b);
 });
 
 export const { focusSpan, focusspan } = register(['focusSpan', 'focusspan'], function (span, pat) {
diff --git a/packages/core/test/pattern.test.mjs b/packages/core/test/pattern.test.mjs
index 0696f0e5..0b72d08a 100644
--- a/packages/core/test/pattern.test.mjs
+++ b/packages/core/test/pattern.test.mjs
@@ -1265,4 +1265,14 @@ describe('Pattern', () => {
       expect(s('bev').chop(8).loopAt(2)._steps).toStrictEqual(Fraction(4));
     });
   });
+  describe('bite', () => {
+    it('works with uneven patterns', () => {
+      sameFirst(
+        fastcat(slowcat('a', 'b', 'c', 'd', 'e'), slowcat(1, 2, 3, 4, 5))
+          .bite(2, stepcat(pure(0), pure(1).expand(2)))
+          .fast(5),
+        stepcat(slowcat('a', 'b', 'c', 'd', 'e'), slowcat(1, 2, 3, 4, 5).expand(2)).fast(5),
+      );
+    });
+  });
 });

From aabc82bedd0370fa5cf6b616b1340d32b153cea8 Mon Sep 17 00:00:00 2001
From: Alex McLean 
Date: Tue, 11 Feb 2025 15:34:23 +0000
Subject: [PATCH 495/805] Fixes inverted triangle wave by renaming it to
 `itri`, making non-inverted `tri` (#1283)

* add itri / itri2 .. but should tri and itri be swapped??

* swap tri/tri2 with itri/itri2. Add some basic docs for bipolar signals
---
 packages/core/signal.mjs                  |  79 +++++++++-
 test/__snapshots__/examples.test.mjs.snap | 175 +++++++++++++++++++---
 2 files changed, 225 insertions(+), 29 deletions(-)

diff --git a/packages/core/signal.mjs b/packages/core/signal.mjs
index ade43e32..3ab35f23 100644
--- a/packages/core/signal.mjs
+++ b/packages/core/signal.mjs
@@ -20,9 +20,6 @@ export const signal = (func) => {
   return new Pattern(query);
 };
 
-export const isaw = signal((t) => 1 - (t % 1));
-export const isaw2 = isaw.toBipolar();
-
 /**
  *  A sawtooth signal between 0 and 1.
  *
@@ -36,8 +33,40 @@ export const isaw2 = isaw.toBipolar();
  *
  */
 export const saw = signal((t) => t % 1);
+
+/**
+ *  A sawtooth signal between -1 and 1 (like `saw`, but bipolar).
+ *
+ * @return {Pattern}
+ */
 export const saw2 = saw.toBipolar();
 
+/**
+ *  A sawtooth signal between 1 and 0 (like `saw`, but flipped).
+ *
+ * @return {Pattern}
+ * @example
+ * note("*8")
+ * .clip(isaw.slow(2))
+ * @example
+ * n(isaw.range(0,8).segment(8))
+ * .scale('C major')
+ *
+ */
+export const isaw = signal((t) => 1 - (t % 1));
+
+/**
+ *  A sawtooth signal between 1 and -1 (like `saw2`, but flipped).
+ *
+ * @return {Pattern}
+ */
+export const isaw2 = isaw.toBipolar();
+
+/**
+ *  A sine signal between -1 and 1 (like `sine`, but bipolar).
+ *
+ * @return {Pattern}
+ */
 export const sine2 = signal((t) => Math.sin(Math.PI * 2 * t));
 
 /**
@@ -61,6 +90,12 @@ export const sine = sine2.fromBipolar();
  *
  */
 export const cosine = sine._early(Fraction(1).div(4));
+
+/**
+ *  A cosine signal between -1 and 1 (like `cosine`, but bipolar).
+ *
+ * @return {Pattern}
+ */
 export const cosine2 = sine2._early(Fraction(1).div(4));
 
 /**
@@ -72,6 +107,12 @@ export const cosine2 = sine2._early(Fraction(1).div(4));
  *
  */
 export const square = signal((t) => Math.floor((t * 2) % 2));
+
+/**
+ *  A square signal between -1 and 1 (like `square`, but bipolar).
+ *
+ * @return {Pattern}
+ */
 export const square2 = square.toBipolar();
 
 /**
@@ -82,9 +123,37 @@ export const square2 = square.toBipolar();
  * n(tri.segment(8).range(0,7)).scale("C:minor")
  *
  */
-export const tri = fastcat(isaw, saw);
-export const tri2 = fastcat(isaw2, saw2);
+export const tri = fastcat(saw, isaw);
 
+/**
+ *  A triangle signal between -1 and 1 (like `tri`, but bipolar).
+ *
+ * @return {Pattern}
+ */
+export const tri2 = fastcat(saw2, isaw2);
+
+/**
+ *  An inverted triangle signal between 1 and 0 (like `tri`, but flipped).
+ *
+ * @return {Pattern}
+ * @example
+ * n(itri.segment(8).range(0,7)).scale("C:minor")
+ *
+ */
+export const itri = fastcat(isaw, saw);
+
+/**
+ *  An inverted triangle signal between -1 and 1 (like `itri`, but bipolar).
+ *
+ * @return {Pattern}
+ */
+export const itri2 = fastcat(isaw2, saw2);
+
+/**
+ *  A signal representing the cycle time.
+ *
+ * @return {Pattern}
+ */
 export const time = signal(id);
 
 /**
diff --git a/test/__snapshots__/examples.test.mjs.snap b/test/__snapshots__/examples.test.mjs.snap
index c2853f9f..64d7cc1f 100644
--- a/test/__snapshots__/examples.test.mjs.snap
+++ b/test/__snapshots__/examples.test.mjs.snap
@@ -4261,6 +4261,96 @@ exports[`runs examples > example "iresponse" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "isaw" example index 0 1`] = `
+[
+  "[ 0/1 → 1/8 | note:c3 clip:1 ]",
+  "[ 1/8 → 1/4 | note:eb3 clip:0.9375 ]",
+  "[ 1/8 → 1/4 | note:g3 clip:0.9375 ]",
+  "[ 1/4 → 3/8 | note:g2 clip:0.875 ]",
+  "[ 3/8 → 1/2 | note:g3 clip:0.8125 ]",
+  "[ 3/8 → 1/2 | note:bb3 clip:0.8125 ]",
+  "[ 1/2 → 5/8 | note:c3 clip:0.75 ]",
+  "[ 5/8 → 3/4 | note:eb3 clip:0.6875 ]",
+  "[ 5/8 → 3/4 | note:g3 clip:0.6875 ]",
+  "[ 3/4 → 7/8 | note:g2 clip:0.625 ]",
+  "[ 7/8 → 1/1 | note:g3 clip:0.5625 ]",
+  "[ 7/8 → 1/1 | note:bb3 clip:0.5625 ]",
+  "[ 1/1 → 9/8 | note:c3 clip:0.5 ]",
+  "[ 9/8 → 5/4 | note:eb3 clip:0.4375 ]",
+  "[ 9/8 → 5/4 | note:g3 clip:0.4375 ]",
+  "[ 5/4 → 11/8 | note:g2 clip:0.375 ]",
+  "[ 11/8 → 3/2 | note:g3 clip:0.3125 ]",
+  "[ 11/8 → 3/2 | note:bb3 clip:0.3125 ]",
+  "[ 3/2 → 13/8 | note:c3 clip:0.25 ]",
+  "[ 13/8 → 7/4 | note:eb3 clip:0.1875 ]",
+  "[ 13/8 → 7/4 | note:g3 clip:0.1875 ]",
+  "[ 7/4 → 15/8 | note:g2 clip:0.125 ]",
+  "[ 15/8 → 2/1 | note:g3 clip:0.0625 ]",
+  "[ 15/8 → 2/1 | note:bb3 clip:0.0625 ]",
+  "[ 2/1 → 17/8 | note:c3 clip:1 ]",
+  "[ 17/8 → 9/4 | note:eb3 clip:0.9375 ]",
+  "[ 17/8 → 9/4 | note:g3 clip:0.9375 ]",
+  "[ 9/4 → 19/8 | note:g2 clip:0.875 ]",
+  "[ 19/8 → 5/2 | note:g3 clip:0.8125 ]",
+  "[ 19/8 → 5/2 | note:bb3 clip:0.8125 ]",
+  "[ 5/2 → 21/8 | note:c3 clip:0.75 ]",
+  "[ 21/8 → 11/4 | note:eb3 clip:0.6875 ]",
+  "[ 21/8 → 11/4 | note:g3 clip:0.6875 ]",
+  "[ 11/4 → 23/8 | note:g2 clip:0.625 ]",
+  "[ 23/8 → 3/1 | note:g3 clip:0.5625 ]",
+  "[ 23/8 → 3/1 | note:bb3 clip:0.5625 ]",
+  "[ 3/1 → 25/8 | note:c3 clip:0.5 ]",
+  "[ 25/8 → 13/4 | note:eb3 clip:0.4375 ]",
+  "[ 25/8 → 13/4 | note:g3 clip:0.4375 ]",
+  "[ 13/4 → 27/8 | note:g2 clip:0.375 ]",
+  "[ 27/8 → 7/2 | note:g3 clip:0.3125 ]",
+  "[ 27/8 → 7/2 | note:bb3 clip:0.3125 ]",
+  "[ 7/2 → 29/8 | note:c3 clip:0.25 ]",
+  "[ 29/8 → 15/4 | note:eb3 clip:0.1875 ]",
+  "[ 29/8 → 15/4 | note:g3 clip:0.1875 ]",
+  "[ 15/4 → 31/8 | note:g2 clip:0.125 ]",
+  "[ 31/8 → 4/1 | note:g3 clip:0.0625 ]",
+  "[ 31/8 → 4/1 | note:bb3 clip:0.0625 ]",
+]
+`;
+
+exports[`runs examples > example "isaw" example index 1 1`] = `
+[
+  "[ 0/1 → 1/8 | note:D4 ]",
+  "[ 1/8 → 1/4 | note:C4 ]",
+  "[ 1/4 → 3/8 | note:B3 ]",
+  "[ 3/8 → 1/2 | note:A3 ]",
+  "[ 1/2 → 5/8 | note:G3 ]",
+  "[ 5/8 → 3/4 | note:F3 ]",
+  "[ 3/4 → 7/8 | note:E3 ]",
+  "[ 7/8 → 1/1 | note:D3 ]",
+  "[ 1/1 → 9/8 | note:D4 ]",
+  "[ 9/8 → 5/4 | note:C4 ]",
+  "[ 5/4 → 11/8 | note:B3 ]",
+  "[ 11/8 → 3/2 | note:A3 ]",
+  "[ 3/2 → 13/8 | note:G3 ]",
+  "[ 13/8 → 7/4 | note:F3 ]",
+  "[ 7/4 → 15/8 | note:E3 ]",
+  "[ 15/8 → 2/1 | note:D3 ]",
+  "[ 2/1 → 17/8 | note:D4 ]",
+  "[ 17/8 → 9/4 | note:C4 ]",
+  "[ 9/4 → 19/8 | note:B3 ]",
+  "[ 19/8 → 5/2 | note:A3 ]",
+  "[ 5/2 → 21/8 | note:G3 ]",
+  "[ 21/8 → 11/4 | note:F3 ]",
+  "[ 11/4 → 23/8 | note:E3 ]",
+  "[ 23/8 → 3/1 | note:D3 ]",
+  "[ 3/1 → 25/8 | note:D4 ]",
+  "[ 25/8 → 13/4 | note:C4 ]",
+  "[ 13/4 → 27/8 | note:B3 ]",
+  "[ 27/8 → 7/2 | note:A3 ]",
+  "[ 7/2 → 29/8 | note:G3 ]",
+  "[ 29/8 → 15/4 | note:F3 ]",
+  "[ 15/4 → 31/8 | note:E3 ]",
+  "[ 31/8 → 4/1 | note:D3 ]",
+]
+`;
+
 exports[`runs examples > example "iter" example index 0 1`] = `
 [
   "[ 0/1 → 1/4 | note:A3 ]",
@@ -4303,6 +4393,43 @@ exports[`runs examples > example "iterBack" example index 0 1`] = `
 ]
 `;
 
+exports[`runs examples > example "itri" example index 0 1`] = `
+[
+  "[ 0/1 → 1/8 | note:C4 ]",
+  "[ 1/8 → 1/4 | note:Bb3 ]",
+  "[ 1/4 → 3/8 | note:G3 ]",
+  "[ 3/8 → 1/2 | note:Eb3 ]",
+  "[ 1/2 → 5/8 | note:C3 ]",
+  "[ 5/8 → 3/4 | note:Eb3 ]",
+  "[ 3/4 → 7/8 | note:G3 ]",
+  "[ 7/8 → 1/1 | note:Bb3 ]",
+  "[ 1/1 → 9/8 | note:C4 ]",
+  "[ 9/8 → 5/4 | note:Bb3 ]",
+  "[ 5/4 → 11/8 | note:G3 ]",
+  "[ 11/8 → 3/2 | note:Eb3 ]",
+  "[ 3/2 → 13/8 | note:C3 ]",
+  "[ 13/8 → 7/4 | note:Eb3 ]",
+  "[ 7/4 → 15/8 | note:G3 ]",
+  "[ 15/8 → 2/1 | note:Bb3 ]",
+  "[ 2/1 → 17/8 | note:C4 ]",
+  "[ 17/8 → 9/4 | note:Bb3 ]",
+  "[ 9/4 → 19/8 | note:G3 ]",
+  "[ 19/8 → 5/2 | note:Eb3 ]",
+  "[ 5/2 → 21/8 | note:C3 ]",
+  "[ 21/8 → 11/4 | note:Eb3 ]",
+  "[ 11/4 → 23/8 | note:G3 ]",
+  "[ 23/8 → 3/1 | note:Bb3 ]",
+  "[ 3/1 → 25/8 | note:C4 ]",
+  "[ 25/8 → 13/4 | note:Bb3 ]",
+  "[ 13/4 → 27/8 | note:G3 ]",
+  "[ 27/8 → 7/2 | note:Eb3 ]",
+  "[ 7/2 → 29/8 | note:C3 ]",
+  "[ 29/8 → 15/4 | note:Eb3 ]",
+  "[ 15/4 → 31/8 | note:G3 ]",
+  "[ 31/8 → 4/1 | note:Bb3 ]",
+]
+`;
+
 exports[`runs examples > example "jux" example index 0 1`] = `
 [
   "[ 0/1 → 1/8 | s:bd pan:0 ]",
@@ -8999,38 +9126,38 @@ exports[`runs examples > example "transpose" example index 1 1`] = `
 
 exports[`runs examples > example "tri" example index 0 1`] = `
 [
-  "[ 0/1 → 1/8 | note:C4 ]",
-  "[ 1/8 → 1/4 | note:Bb3 ]",
+  "[ 0/1 → 1/8 | note:C3 ]",
+  "[ 1/8 → 1/4 | note:Eb3 ]",
   "[ 1/4 → 3/8 | note:G3 ]",
-  "[ 3/8 → 1/2 | note:Eb3 ]",
-  "[ 1/2 → 5/8 | note:C3 ]",
-  "[ 5/8 → 3/4 | note:Eb3 ]",
+  "[ 3/8 → 1/2 | note:Bb3 ]",
+  "[ 1/2 → 5/8 | note:C4 ]",
+  "[ 5/8 → 3/4 | note:Bb3 ]",
   "[ 3/4 → 7/8 | note:G3 ]",
-  "[ 7/8 → 1/1 | note:Bb3 ]",
-  "[ 1/1 → 9/8 | note:C4 ]",
-  "[ 9/8 → 5/4 | note:Bb3 ]",
+  "[ 7/8 → 1/1 | note:Eb3 ]",
+  "[ 1/1 → 9/8 | note:C3 ]",
+  "[ 9/8 → 5/4 | note:Eb3 ]",
   "[ 5/4 → 11/8 | note:G3 ]",
-  "[ 11/8 → 3/2 | note:Eb3 ]",
-  "[ 3/2 → 13/8 | note:C3 ]",
-  "[ 13/8 → 7/4 | note:Eb3 ]",
+  "[ 11/8 → 3/2 | note:Bb3 ]",
+  "[ 3/2 → 13/8 | note:C4 ]",
+  "[ 13/8 → 7/4 | note:Bb3 ]",
   "[ 7/4 → 15/8 | note:G3 ]",
-  "[ 15/8 → 2/1 | note:Bb3 ]",
-  "[ 2/1 → 17/8 | note:C4 ]",
-  "[ 17/8 → 9/4 | note:Bb3 ]",
+  "[ 15/8 → 2/1 | note:Eb3 ]",
+  "[ 2/1 → 17/8 | note:C3 ]",
+  "[ 17/8 → 9/4 | note:Eb3 ]",
   "[ 9/4 → 19/8 | note:G3 ]",
-  "[ 19/8 → 5/2 | note:Eb3 ]",
-  "[ 5/2 → 21/8 | note:C3 ]",
-  "[ 21/8 → 11/4 | note:Eb3 ]",
+  "[ 19/8 → 5/2 | note:Bb3 ]",
+  "[ 5/2 → 21/8 | note:C4 ]",
+  "[ 21/8 → 11/4 | note:Bb3 ]",
   "[ 11/4 → 23/8 | note:G3 ]",
-  "[ 23/8 → 3/1 | note:Bb3 ]",
-  "[ 3/1 → 25/8 | note:C4 ]",
-  "[ 25/8 → 13/4 | note:Bb3 ]",
+  "[ 23/8 → 3/1 | note:Eb3 ]",
+  "[ 3/1 → 25/8 | note:C3 ]",
+  "[ 25/8 → 13/4 | note:Eb3 ]",
   "[ 13/4 → 27/8 | note:G3 ]",
-  "[ 27/8 → 7/2 | note:Eb3 ]",
-  "[ 7/2 → 29/8 | note:C3 ]",
-  "[ 29/8 → 15/4 | note:Eb3 ]",
+  "[ 27/8 → 7/2 | note:Bb3 ]",
+  "[ 7/2 → 29/8 | note:C4 ]",
+  "[ 29/8 → 15/4 | note:Bb3 ]",
   "[ 15/4 → 31/8 | note:G3 ]",
-  "[ 31/8 → 4/1 | note:Bb3 ]",
+  "[ 31/8 → 4/1 | note:Eb3 ]",
 ]
 `;
 

From 5cd98880ca41b3ac50487af3ac61f533c58a34f4 Mon Sep 17 00:00:00 2001
From: "Jade (Rose) Rowland" 
Date: Mon, 17 Feb 2025 12:22:45 -0500
Subject: [PATCH 496/805] reorganize panels

---
 .../src/repl/components/panel/PatternsTab.jsx | 179 ++++++++++--------
 website/src/repl/useExamplePatterns.jsx       |   8 +-
 website/src/user_pattern_utils.mjs            |  19 +-
 3 files changed, 108 insertions(+), 98 deletions(-)

diff --git a/website/src/repl/components/panel/PatternsTab.jsx b/website/src/repl/components/panel/PatternsTab.jsx
index df6075eb..fd9ddb15 100644
--- a/website/src/repl/components/panel/PatternsTab.jsx
+++ b/website/src/repl/components/panel/PatternsTab.jsx
@@ -84,82 +84,72 @@ function ActionButton({ children, onClick, label, labelIsHidden }) {
   );
 }
 
-export function PatternsTab({ context }) {
+const updateCodeWindow = (context, patternData, reset = false) => {
+  context.handleUpdate(patternData, reset);
+};
+
+const autoResetPatternOnChange = !isUdels();
+
+function UserPatterns({ context }) {
   const activePattern = useActivePattern();
   const viewingPatternStore = useViewingPatternData();
   const viewingPatternData = parseJSON(viewingPatternStore);
-
   const { userPatterns, patternFilter } = useSettings();
-
-  const examplePatterns = useExamplePatterns();
-  const collections = examplePatterns.collections;
-
-  const updateCodeWindow = (patternData, reset = false) => {
-    context.handleUpdate(patternData, reset);
-  };
   const viewingPatternID = viewingPatternData?.id;
-
-  const autoResetPatternOnChange = !isUdels();
-
   return (
-    
- settingsMap.setKey('patternFilter', value)} - items={patternFilterName} - > - {patternFilter === patternFilterName.user && ( -
-
- { - const { data } = userPattern.createAndAddToDB(); - updateCodeWindow(data); - }} - /> - { - const { data } = userPattern.duplicate(viewingPatternData); - updateCodeWindow(data); - }} - /> - { - const { data } = userPattern.delete(viewingPatternID); - updateCodeWindow({ ...data, collection: userPattern.collection }); - }} - /> - - +
+
+ { + const { data } = userPattern.createAndAddToDB(); + updateCodeWindow(context, data); + }} + /> + { + const { data } = userPattern.duplicate(viewingPatternData); + updateCodeWindow(context, data); + }} + /> + { + const { data } = userPattern.delete(viewingPatternID); + updateCodeWindow(context, { ...data, collection: userPattern.collection }); + }} + /> + + - { - const { data } = userPattern.clearAll(); - updateCodeWindow(data); - }} - /> -
-
- )} + { + const { data } = userPattern.clearAll(); + updateCodeWindow(context, data); + }} + /> +
-
+
{patternFilter === patternFilterName.user && ( - updateCodeWindow({ ...userPatterns[id], collection: userPattern.collection }, autoResetPatternOnChange) + updateCodeWindow( + context, + { ...userPatterns[id], collection: userPattern.collection }, + autoResetPatternOnChange, + ) } patterns={userPatterns} started={context.started} @@ -167,24 +157,47 @@ export function PatternsTab({ context }) { viewingPatternID={viewingPatternID} /> )} - {patternFilter !== patternFilterName.user && - Array.from(collections.keys()).map((collection) => { - const patterns = collections.get(collection); - return ( -
-

{collection}

-
- updateCodeWindow({ ...patterns[id], collection }, autoResetPatternOnChange)} - started={context.started} - patterns={patterns} - activePattern={activePattern} - /> -
-
- ); - })} -
+
+
+ ); +} + +function PublicPatterns({ context }) { + const activePattern = useActivePattern(); + const examplePatterns = useExamplePatterns(); + const collections = examplePatterns.collections; + const { patternFilter } = useSettings(); + const patterns = collections.get(patternFilter) ?? collections.get(patternFilterName.public); + return ( +
+ + updateCodeWindow(context, { ...patterns[id], collection: patternFilter }, autoResetPatternOnChange) + } + started={context.started} + patterns={patterns} + activePattern={activePattern} + /> +
+ ); +} + +export function PatternsTab({ context }) { + const { patternFilter } = useSettings(); + + return ( +
+ settingsMap.setKey('patternFilter', value)} + items={patternFilterName} + > + + {patternFilter === patternFilterName.user ? ( + + ) : ( + + )}
); } diff --git a/website/src/repl/useExamplePatterns.jsx b/website/src/repl/useExamplePatterns.jsx index 08629d44..2e11fcae 100644 --- a/website/src/repl/useExamplePatterns.jsx +++ b/website/src/repl/useExamplePatterns.jsx @@ -1,4 +1,4 @@ -import { $featuredPatterns, $publicPatterns, collectionName } from '../user_pattern_utils.mjs'; +import { $featuredPatterns, $publicPatterns, patternFilterName } from '../user_pattern_utils.mjs'; import { useStore } from '@nanostores/react'; import { useMemo } from 'react'; import * as tunes from '../repl/tunes.mjs'; @@ -12,9 +12,9 @@ export const useExamplePatterns = () => { const publicPatterns = useStore($publicPatterns); const collections = useMemo(() => { const pats = new Map(); - pats.set(collectionName.featured, featuredPatterns); - pats.set(collectionName.public, publicPatterns); - // pats.set(collectionName.stock, stockPatterns); + pats.set(patternFilterName.featured, featuredPatterns); + pats.set(patternFilterName.public, publicPatterns); + // pats.set(patternFilterName.stock, stockPatterns); return pats; }, [featuredPatterns, publicPatterns]); diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index 866491d0..d87fbff4 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -8,16 +8,13 @@ import { confirmDialog, parseJSON, supabase } from './repl/util.mjs'; export let $publicPatterns = atom([]); export let $featuredPatterns = atom([]); -export const collectionName = { - user: 'user', - public: 'Last Creations', - stock: 'Stock Examples', - featured: 'Featured', -}; + export const patternFilterName = { - community: 'community', + public: 'latest', + featured: 'featured', user: 'user', + // stock: 'stock examples', }; const sessionAtom = (name, initial = undefined) => { @@ -36,7 +33,7 @@ const sessionAtom = (name, initial = undefined) => { export let $viewingPatternData = sessionAtom('viewingPatternData', { id: '', code: '', - collection: collectionName.user, + collection: patternFilterName.user, created_at: Date.now(), }); @@ -52,11 +49,11 @@ export const setViewingPatternData = (data) => { }; export function loadPublicPatterns() { - return supabase.from('code_v1').select().eq('public', true).limit(20).order('id', { ascending: false }); + return supabase.from('code_v1').select().eq('public', true).limit(40).order('id', { ascending: false }); } export function loadFeaturedPatterns() { - return supabase.from('code_v1').select().eq('featured', true).limit(20).order('id', { ascending: false }); + return supabase.from('code_v1').select().eq('featured', true).limit(40).order('id', { ascending: false }); } export async function loadDBPatterns() { @@ -92,7 +89,7 @@ export const setLatestCode = (code) => settingsMap.setKey('latestCode', code); const defaultCode = ''; export const userPattern = { - collection: collectionName.user, + collection: patternFilterName.user, getAll() { const patterns = parseJSON(settingsMap.get().userPatterns); return patterns ?? {}; From 50f076084f56be3bc1cfaf20c7174200d3ace34d Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Tue, 18 Feb 2025 01:48:17 -0500 Subject: [PATCH 497/805] working --- .../components/incrementor/Incrementor.jsx | 52 +++++++++ .../repl/components/pagination/Pagination.jsx | 7 ++ .../src/repl/components/panel/PatternsTab.jsx | 109 ++++++++++++++---- .../src/repl/components/panel/Reference.jsx | 8 +- .../src/repl/components/panel/SoundsTab.jsx | 6 +- .../src/repl/components/textbox/Textbox.jsx | 15 +++ website/src/repl/components/usedebounce.jsx | 30 +++++ website/src/repl/util.mjs | 1 + website/src/settings.mjs | 2 + website/src/user_pattern_utils.mjs | 44 ++++--- website/tailwind.config.cjs | 2 + website/tailwind_utils.mjs | 4 + 12 files changed, 237 insertions(+), 43 deletions(-) create mode 100644 website/src/repl/components/incrementor/Incrementor.jsx create mode 100644 website/src/repl/components/pagination/Pagination.jsx create mode 100644 website/src/repl/components/textbox/Textbox.jsx create mode 100644 website/src/repl/components/usedebounce.jsx create mode 100644 website/tailwind_utils.mjs diff --git a/website/src/repl/components/incrementor/Incrementor.jsx b/website/src/repl/components/incrementor/Incrementor.jsx new file mode 100644 index 00000000..1bad0a8d --- /dev/null +++ b/website/src/repl/components/incrementor/Incrementor.jsx @@ -0,0 +1,52 @@ +import { cn } from 'tailwind_utils.mjs'; +import { Textbox } from '../textbox/Textbox'; + +function IncButton({ children, label, className, ...buttonProps }) { + return ( + + ); +} +export function Incrementor({ onChange, value, min = -Infinity, max = Infinity, className }) { + value = parseInt(value); + value = isNaN(value) ? '' : value; + return ( +
rounded-md', className)}> + { + if (v.length && v < min) { + return; + } + onChange(v); + }} + type="number" + placeholder="" + value={value} + className="w-32 my-0 border-none rounded-r-none bg-transparent appearance-none [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none" + /> +
+ onChange(value - 1)}> + + + + + = max} onClick={() => onChange(value + 1)}> + + + + +
+
+ ); +} diff --git a/website/src/repl/components/pagination/Pagination.jsx b/website/src/repl/components/pagination/Pagination.jsx new file mode 100644 index 00000000..e9953136 --- /dev/null +++ b/website/src/repl/components/pagination/Pagination.jsx @@ -0,0 +1,7 @@ + +import { Incrementor } from '../incrementor/Incrementor'; + +export function Pagination({ currPage, onPageChange, className }) { + return ; +} + diff --git a/website/src/repl/components/panel/PatternsTab.jsx b/website/src/repl/components/panel/PatternsTab.jsx index fd9ddb15..e809d654 100644 --- a/website/src/repl/components/panel/PatternsTab.jsx +++ b/website/src/repl/components/panel/PatternsTab.jsx @@ -1,6 +1,8 @@ import { exportPatterns, importPatterns, + loadAndSetFeaturedPatterns, + loadAndSetPublicPatterns, patternFilterName, useActivePattern, useViewingPatternData, @@ -12,6 +14,9 @@ import { useExamplePatterns } from '../../useExamplePatterns.jsx'; import { parseJSON, isUdels } from '../../util.mjs'; import { ButtonGroup } from './Forms.jsx'; import { settingsMap, useSettings } from '../../../settings.mjs'; +import { Pagination } from '../pagination/Pagination.jsx'; +import { useState } from 'react'; +import { useDebounce } from '../usedebounce.jsx'; function classNames(...classes) { return classes.filter(Boolean).join(' '); @@ -33,7 +38,9 @@ export function PatternLabel({ pattern } /* : { pattern: Tables<'code'> } */) { if (title == null) { title = 'unnamed'; } - return <>{`${pattern.id}: ${title} by ${Array.isArray(meta.by) ? meta.by.join(',') : 'Anonymous'}`}; + + const author = Array.isArray(meta.by) ? meta.by.join(',') : 'Anonymous'; + return <>{`${pattern.id}: ${title} by ${author.slice(0, 100)}`.slice(0, 60)}; } function PatternButton({ showOutline, onClick, pattern, showHiglight }) { @@ -57,7 +64,7 @@ function PatternButtons({ patterns, activePattern, onClick, started }) { const viewingPatternID = viewingPatternData.id; return (
- {Object.values(patterns) + {Object.values(patterns ?? {}) .reverse() .map((pattern) => { const id = pattern.id; @@ -97,8 +104,8 @@ function UserPatterns({ context }) { const { userPatterns, patternFilter } = useSettings(); const viewingPatternID = viewingPatternData?.id; return ( -
-
+
+
{ @@ -141,7 +148,7 @@ function UserPatterns({ context }) { />
-
+
{patternFilter === patternFilterName.user && ( @@ -162,31 +169,93 @@ function UserPatterns({ context }) { ); } -function PublicPatterns({ context }) { +function PatternPageWithPagination({ patterns, patternOnClick, context, paginationOnChange }) { + const [page, setPage] = useState(1); + const debouncedPageChange = useDebounce(() => { + paginationOnChange(page); + }); + + const onPageChange = (pageNum) => { + setPage(pageNum); + debouncedPageChange(); + }; + const activePattern = useActivePattern(); - const examplePatterns = useExamplePatterns(); - const collections = examplePatterns.collections; - const { patternFilter } = useSettings(); - const patterns = collections.get(patternFilter) ?? collections.get(patternFilterName.public); return ( -
- - updateCodeWindow(context, { ...patterns[id], collection: patternFilter }, autoResetPatternOnChange) - } - started={context.started} - patterns={patterns} - activePattern={activePattern} - /> +
+
+ patternOnClick(id)} + started={context.started} + patterns={patterns} + activePattern={activePattern} + /> +
+
+ {' '} + +
); } +function FeaturedPatterns({ context }) { + const examplePatterns = useExamplePatterns(); + const collections = examplePatterns.collections; + const patterns = collections.get(patternFilterName.featured); + return ( + { + updateCodeWindow( + context, + { ...patterns[id], collection: patternFilterName.featured }, + autoResetPatternOnChange, + ); + }} + paginationOnChange={async (pageNum) => { + await loadAndSetFeaturedPatterns(pageNum); + }} + /> + ); +} + +function LatestPatterns({ context }) { + const examplePatterns = useExamplePatterns(); + const collections = examplePatterns.collections; + const patterns = collections.get(patternFilterName.public); + return ( + { + updateCodeWindow( + context, + { ...patterns[id], collection: patternFilterName.public }, + autoResetPatternOnChange, + ); + }} + paginationOnChange={async (pageNum) => { + await loadAndSetPublicPatterns(pageNum); + }} + /> + ); +} + +function PublicPatterns({ context }) { + const { patternFilter } = useSettings(); + if (patternFilter === patternFilterName.featured) { + return ; + } + return ; +} + export function PatternsTab({ context }) { const { patternFilter } = useSettings(); return ( -
+
settingsMap.setKey('patternFilter', value)} diff --git a/website/src/repl/components/panel/Reference.jsx b/website/src/repl/components/panel/Reference.jsx index fbbf0a08..a8b8a301 100644 --- a/website/src/repl/components/panel/Reference.jsx +++ b/website/src/repl/components/panel/Reference.jsx @@ -1,6 +1,7 @@ import { useMemo, useState } from 'react'; import jsdocJson from '../../../../../doc.json'; +import { Textbox } from '../textbox/Textbox'; const availableFunctions = jsdocJson.docs .filter(({ name, description }) => name && !name.startsWith('_') && !!description) .sort((a, b) => /* a.meta.filename.localeCompare(b.meta.filename) + */ a.name.localeCompare(b.name)); @@ -28,12 +29,7 @@ export function Reference() {
- setSearch(event.target.value)} - /> +
{visibleFunctions.map((entry, i) => ( diff --git a/website/src/repl/components/panel/SoundsTab.jsx b/website/src/repl/components/panel/SoundsTab.jsx index b968466f..3d5e2d2c 100644 --- a/website/src/repl/components/panel/SoundsTab.jsx +++ b/website/src/repl/components/panel/SoundsTab.jsx @@ -5,6 +5,7 @@ import { useMemo, useRef, useState } from 'react'; import { settingsMap, useSettings } from '../../../settings.mjs'; import { ButtonGroup } from './Forms.jsx'; import ImportSoundsButton from './ImportSoundsButton.jsx'; +import { Textbox } from '../textbox/Textbox.jsx'; const getSamples = (samples) => Array.isArray(samples) ? samples.length : typeof samples === 'object' ? Object.values(samples).length : 1; @@ -53,11 +54,10 @@ export function SoundsTab() { return (
- setSearch(e.target.value)} + onChange={(v) => setSearch(v)} />
diff --git a/website/src/repl/components/textbox/Textbox.jsx b/website/src/repl/components/textbox/Textbox.jsx new file mode 100644 index 00000000..da99b17b --- /dev/null +++ b/website/src/repl/components/textbox/Textbox.jsx @@ -0,0 +1,15 @@ +import { cn } from 'tailwind_utils.mjs'; +// type TextboxProps = { +// onChange: (val: string | number) => void; +// ...inputProps +// } +export function Textbox(props) { + const {onChange, className, ...inputProps} = props + return ( + props.onChange(e.target.value)} + {...inputProps} + /> + ); +} diff --git a/website/src/repl/components/usedebounce.jsx b/website/src/repl/components/usedebounce.jsx new file mode 100644 index 00000000..a0fb1ea7 --- /dev/null +++ b/website/src/repl/components/usedebounce.jsx @@ -0,0 +1,30 @@ +import { useMemo } from 'react'; +import { useEffect } from 'react'; +import { useRef } from 'react'; + +function debounce(fn, wait) { + let timer; + return function (...args) { + if (timer) { + clearTimeout(timer); + } + timer = setTimeout(() => fn(...args), wait); + }; +} + +export function useDebounce(callback) { + const ref = useRef; + useEffect(() => { + ref.current = callback; + }, [callback]); + + const debouncedCallback = useMemo(() => { + const func = () => { + ref.current?.(); + }; + + return debounce(func, 1000); + }, []); + + return debouncedCallback; +} diff --git a/website/src/repl/util.mjs b/website/src/repl/util.mjs index f623e468..ddd91453 100644 --- a/website/src/repl/util.mjs +++ b/website/src/repl/util.mjs @@ -199,3 +199,4 @@ export function setVersionDefaultsFrom(code) { console.error(err); } } + diff --git a/website/src/settings.mjs b/website/src/settings.mjs index cd3d8936..8c35e996 100644 --- a/website/src/settings.mjs +++ b/website/src/settings.mjs @@ -40,6 +40,8 @@ export const defaultSettings = { audioEngineTarget: audioEngineTargets.webaudio, isButtonRowHidden: false, isCSSAnimationDisabled: false, + publicPatternPage: 1, + featuredPatternPage: 1, }; let search = null; diff --git a/website/src/user_pattern_utils.mjs b/website/src/user_pattern_utils.mjs index d87fbff4..a1a344db 100644 --- a/website/src/user_pattern_utils.mjs +++ b/website/src/user_pattern_utils.mjs @@ -9,7 +9,7 @@ export let $publicPatterns = atom([]); export let $featuredPatterns = atom([]); - +const patternQueryLimit = 20 export const patternFilterName = { public: 'latest', featured: 'featured', @@ -48,25 +48,41 @@ export const setViewingPatternData = (data) => { $viewingPatternData.set(JSON.stringify(data)); }; -export function loadPublicPatterns() { - return supabase.from('code_v1').select().eq('public', true).limit(40).order('id', { ascending: false }); +function parsePageNum(page) { + return isNaN(page) ? 0 : page +} +export function loadPublicPatterns(page) { + page = parsePageNum(page) + const offset = page * patternQueryLimit + return supabase.from('code_v1').select().eq('public', true).range(offset, offset + patternQueryLimit ).order('id', { ascending: false }); } -export function loadFeaturedPatterns() { - return supabase.from('code_v1').select().eq('featured', true).limit(40).order('id', { ascending: false }); +export function loadFeaturedPatterns(page = 0) { + page = parsePageNum(page) + const offset = page * patternQueryLimit + return supabase.from('code_v1').select().eq('featured', true).range(offset, offset + patternQueryLimit).order('id', { ascending: false }); +} + +export async function loadAndSetPublicPatterns(page) { + const p = await loadPublicPatterns(page); + const data = p?.data + const pats = {} + data?.forEach((data, key) => (pats[data.id ?? key] = data)); + $publicPatterns.set(pats) +} +export async function loadAndSetFeaturedPatterns(page) { + + const p = await loadFeaturedPatterns(page); + const data = p?.data + const pats = {} + data?.forEach((data, key) => (pats[data.id ?? key] = data)); + $featuredPatterns.set(pats) } export async function loadDBPatterns() { try { - const { data: publicPatterns } = await loadPublicPatterns(); - const { data: featuredPatterns } = await loadFeaturedPatterns(); - const featured = {}; - const pub = {}; - - publicPatterns?.forEach((data, key) => (pub[data.id ?? key] = data)); - featuredPatterns?.forEach((data, key) => (featured[data.id ?? key] = data)); - $publicPatterns.set(pub); - $featuredPatterns.set(featured); + await loadAndSetPublicPatterns() + await loadAndSetFeaturedPatterns() } catch (err) { console.error('error loading patterns', err); } diff --git a/website/tailwind.config.cjs b/website/tailwind.config.cjs index 23ae96c3..83793161 100644 --- a/website/tailwind.config.cjs +++ b/website/tailwind.config.cjs @@ -2,6 +2,8 @@ const defaultTheme = require('tailwindcss/defaultTheme'); + + module.exports = { darkMode: 'class', content: [ diff --git a/website/tailwind_utils.mjs b/website/tailwind_utils.mjs new file mode 100644 index 00000000..21ed33d7 --- /dev/null +++ b/website/tailwind_utils.mjs @@ -0,0 +1,4 @@ +// utility for combining class names +export function cn(...classNameStrings) { + return classNameStrings.join(' ') + } \ No newline at end of file From c210ea3f8932d7586327109cc10944984fbd8e64 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Tue, 18 Feb 2025 10:41:16 -0500 Subject: [PATCH 498/805] fix paginator --- .../components/incrementor/Incrementor.jsx | 6 ++--- .../repl/components/pagination/Pagination.jsx | 2 -- .../src/repl/components/panel/PatternsTab.jsx | 25 +++++++++---------- .../src/repl/components/textbox/Textbox.jsx | 12 +++------ website/tailwind_utils.mjs | 6 ++--- 5 files changed, 22 insertions(+), 29 deletions(-) diff --git a/website/src/repl/components/incrementor/Incrementor.jsx b/website/src/repl/components/incrementor/Incrementor.jsx index 1bad0a8d..43e69865 100644 --- a/website/src/repl/components/incrementor/Incrementor.jsx +++ b/website/src/repl/components/incrementor/Incrementor.jsx @@ -6,7 +6,7 @@ function IncButton({ children, label, className, ...buttonProps }) {
); } +let featuredPageNum = 1 function FeaturedPatterns({ context }) { const examplePatterns = useExamplePatterns(); const collections = examplePatterns.collections; @@ -207,6 +205,7 @@ function FeaturedPatterns({ context }) { { updateCodeWindow( context, @@ -216,11 +215,13 @@ function FeaturedPatterns({ context }) { }} paginationOnChange={async (pageNum) => { await loadAndSetFeaturedPatterns(pageNum); + featuredPageNum = pageNum }} /> ); } +let latestPageNum = 1 function LatestPatterns({ context }) { const examplePatterns = useExamplePatterns(); const collections = examplePatterns.collections; @@ -229,15 +230,13 @@ function LatestPatterns({ context }) { { - updateCodeWindow( - context, - { ...patterns[id], collection: patternFilterName.public }, - autoResetPatternOnChange, - ); + updateCodeWindow(context, { ...patterns[id], collection: patternFilterName.public }, autoResetPatternOnChange); }} paginationOnChange={async (pageNum) => { await loadAndSetPublicPatterns(pageNum); + latestPageNum = pageNum }} /> ); diff --git a/website/src/repl/components/textbox/Textbox.jsx b/website/src/repl/components/textbox/Textbox.jsx index da99b17b..7b97afed 100644 --- a/website/src/repl/components/textbox/Textbox.jsx +++ b/website/src/repl/components/textbox/Textbox.jsx @@ -1,14 +1,10 @@ import { cn } from 'tailwind_utils.mjs'; -// type TextboxProps = { -// onChange: (val: string | number) => void; -// ...inputProps -// } -export function Textbox(props) { - const {onChange, className, ...inputProps} = props + +export function Textbox({ onChange, className, ...inputProps }) { return ( props.onChange(e.target.value)} + className={cn('p-1 bg-background rounded-md my-2 border-foreground', className)} + onChange={(e) => onChange(e.target.value)} {...inputProps} /> ); diff --git a/website/tailwind_utils.mjs b/website/tailwind_utils.mjs index 21ed33d7..c8934e95 100644 --- a/website/tailwind_utils.mjs +++ b/website/tailwind_utils.mjs @@ -1,4 +1,4 @@ // utility for combining class names -export function cn(...classNameStrings) { - return classNameStrings.join(' ') - } \ No newline at end of file +export function cn(...classes) { + return classes.filter(Boolean).join(' '); +} \ No newline at end of file From 47f65da621e52f54813ed527fd0ba4f673646068 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Tue, 18 Feb 2025 10:47:48 -0500 Subject: [PATCH 499/805] remove unesseccary code --- website/src/settings.mjs | 2 -- 1 file changed, 2 deletions(-) diff --git a/website/src/settings.mjs b/website/src/settings.mjs index 8c35e996..cd3d8936 100644 --- a/website/src/settings.mjs +++ b/website/src/settings.mjs @@ -40,8 +40,6 @@ export const defaultSettings = { audioEngineTarget: audioEngineTargets.webaudio, isButtonRowHidden: false, isCSSAnimationDisabled: false, - publicPatternPage: 1, - featuredPatternPage: 1, }; let search = null; From f47f5c1344a6fcaf8b78fbd88ed3d60eec4b4847 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Tue, 18 Feb 2025 10:52:48 -0500 Subject: [PATCH 500/805] prettier --- .../components/incrementor/Incrementor.jsx | 9 +++- .../src/repl/components/panel/PatternsTab.jsx | 8 ++-- .../src/repl/components/panel/Reference.jsx | 2 +- .../src/repl/components/panel/SoundsTab.jsx | 6 +-- website/src/repl/useExamplePatterns.jsx | 2 +- website/src/repl/util.mjs | 1 - website/src/user_pattern_utils.mjs | 44 +++++++++++-------- website/tailwind.config.cjs | 2 - website/tailwind_utils.mjs | 2 +- 9 files changed, 41 insertions(+), 35 deletions(-) diff --git a/website/src/repl/components/incrementor/Incrementor.jsx b/website/src/repl/components/incrementor/Incrementor.jsx index 43e69865..2c631cc5 100644 --- a/website/src/repl/components/incrementor/Incrementor.jsx +++ b/website/src/repl/components/incrementor/Incrementor.jsx @@ -36,12 +36,17 @@ export function Incrementor({ onChange, value, min = -Infinity, max = Infinity, className="w-32 my-0 border-none rounded-r-none bg-transparent appearance-none [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none" />
- onChange(value - 1)}> + onChange(value - 1)}> - = max} onClick={() => onChange(value + 1)}> + = max} + onClick={() => onChange(value + 1)} + > diff --git a/website/src/repl/components/panel/PatternsTab.jsx b/website/src/repl/components/panel/PatternsTab.jsx index 032e7593..46d6ccc0 100644 --- a/website/src/repl/components/panel/PatternsTab.jsx +++ b/website/src/repl/components/panel/PatternsTab.jsx @@ -196,7 +196,7 @@ function PatternPageWithPagination({ patterns, patternOnClick, context, paginati ); } -let featuredPageNum = 1 +let featuredPageNum = 1; function FeaturedPatterns({ context }) { const examplePatterns = useExamplePatterns(); const collections = examplePatterns.collections; @@ -215,13 +215,13 @@ function FeaturedPatterns({ context }) { }} paginationOnChange={async (pageNum) => { await loadAndSetFeaturedPatterns(pageNum); - featuredPageNum = pageNum + featuredPageNum = pageNum; }} /> ); } -let latestPageNum = 1 +let latestPageNum = 1; function LatestPatterns({ context }) { const examplePatterns = useExamplePatterns(); const collections = examplePatterns.collections; @@ -236,7 +236,7 @@ function LatestPatterns({ context }) { }} paginationOnChange={async (pageNum) => { await loadAndSetPublicPatterns(pageNum); - latestPageNum = pageNum + latestPageNum = pageNum; }} /> ); diff --git a/website/src/repl/components/panel/Reference.jsx b/website/src/repl/components/panel/Reference.jsx index a8b8a301..6fdc9659 100644 --- a/website/src/repl/components/panel/Reference.jsx +++ b/website/src/repl/components/panel/Reference.jsx @@ -29,7 +29,7 @@ export function Reference() {
- +
{visibleFunctions.map((entry, i) => ( diff --git a/website/src/repl/components/panel/SoundsTab.jsx b/website/src/repl/components/panel/SoundsTab.jsx index 3d5e2d2c..8ca2d39d 100644 --- a/website/src/repl/components/panel/SoundsTab.jsx +++ b/website/src/repl/components/panel/SoundsTab.jsx @@ -54,11 +54,7 @@ export function SoundsTab() { return (
- setSearch(v)} - /> + setSearch(v)} />
{ }; function parsePageNum(page) { - return isNaN(page) ? 0 : page + return isNaN(page) ? 0 : page; } export function loadPublicPatterns(page) { - page = parsePageNum(page) - const offset = page * patternQueryLimit - return supabase.from('code_v1').select().eq('public', true).range(offset, offset + patternQueryLimit ).order('id', { ascending: false }); + page = parsePageNum(page); + const offset = page * patternQueryLimit; + return supabase + .from('code_v1') + .select() + .eq('public', true) + .range(offset, offset + patternQueryLimit) + .order('id', { ascending: false }); } export function loadFeaturedPatterns(page = 0) { - page = parsePageNum(page) - const offset = page * patternQueryLimit - return supabase.from('code_v1').select().eq('featured', true).range(offset, offset + patternQueryLimit).order('id', { ascending: false }); + page = parsePageNum(page); + const offset = page * patternQueryLimit; + return supabase + .from('code_v1') + .select() + .eq('featured', true) + .range(offset, offset + patternQueryLimit) + .order('id', { ascending: false }); } export async function loadAndSetPublicPatterns(page) { const p = await loadPublicPatterns(page); - const data = p?.data - const pats = {} + const data = p?.data; + const pats = {}; data?.forEach((data, key) => (pats[data.id ?? key] = data)); - $publicPatterns.set(pats) + $publicPatterns.set(pats); } export async function loadAndSetFeaturedPatterns(page) { - const p = await loadFeaturedPatterns(page); - const data = p?.data - const pats = {} + const data = p?.data; + const pats = {}; data?.forEach((data, key) => (pats[data.id ?? key] = data)); - $featuredPatterns.set(pats) + $featuredPatterns.set(pats); } export async function loadDBPatterns() { try { - await loadAndSetPublicPatterns() - await loadAndSetFeaturedPatterns() + await loadAndSetPublicPatterns(); + await loadAndSetFeaturedPatterns(); } catch (err) { console.error('error loading patterns', err); } diff --git a/website/tailwind.config.cjs b/website/tailwind.config.cjs index 83793161..23ae96c3 100644 --- a/website/tailwind.config.cjs +++ b/website/tailwind.config.cjs @@ -2,8 +2,6 @@ const defaultTheme = require('tailwindcss/defaultTheme'); - - module.exports = { darkMode: 'class', content: [ diff --git a/website/tailwind_utils.mjs b/website/tailwind_utils.mjs index c8934e95..4ec963f4 100644 --- a/website/tailwind_utils.mjs +++ b/website/tailwind_utils.mjs @@ -1,4 +1,4 @@ // utility for combining class names export function cn(...classes) { return classes.filter(Boolean).join(' '); -} \ No newline at end of file +} From 3e6a45cf8b2d95913079cebda955f5ec278b4211 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Tue, 18 Feb 2025 11:10:15 -0500 Subject: [PATCH 501/805] fix offset --- website/src/repl/components/incrementor/Incrementor.jsx | 2 +- website/src/repl/components/panel/PatternsTab.jsx | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/website/src/repl/components/incrementor/Incrementor.jsx b/website/src/repl/components/incrementor/Incrementor.jsx index 2c631cc5..9103894d 100644 --- a/website/src/repl/components/incrementor/Incrementor.jsx +++ b/website/src/repl/components/incrementor/Incrementor.jsx @@ -33,7 +33,7 @@ export function Incrementor({ onChange, value, min = -Infinity, max = Infinity, type="number" placeholder="" value={value} - className="w-32 my-0 border-none rounded-r-none bg-transparent appearance-none [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none" + className="w-32 mb-0 mt-0 border-none rounded-r-none bg-transparent appearance-none [&::-webkit-outer-spin-button]:appearance-none [&::-webkit-inner-spin-button]:appearance-none" />
onChange(value - 1)}> diff --git a/website/src/repl/components/panel/PatternsTab.jsx b/website/src/repl/components/panel/PatternsTab.jsx index 46d6ccc0..16d85495 100644 --- a/website/src/repl/components/panel/PatternsTab.jsx +++ b/website/src/repl/components/panel/PatternsTab.jsx @@ -214,7 +214,7 @@ function FeaturedPatterns({ context }) { ); }} paginationOnChange={async (pageNum) => { - await loadAndSetFeaturedPatterns(pageNum); + await loadAndSetFeaturedPatterns(pageNum -1); featuredPageNum = pageNum; }} /> @@ -235,7 +235,7 @@ function LatestPatterns({ context }) { updateCodeWindow(context, { ...patterns[id], collection: patternFilterName.public }, autoResetPatternOnChange); }} paginationOnChange={async (pageNum) => { - await loadAndSetPublicPatterns(pageNum); + await loadAndSetPublicPatterns(pageNum -1); latestPageNum = pageNum; }} /> From dfb7d7bb7f4cab746cabd046d0d09ae84c788569 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Tue, 18 Feb 2025 11:13:33 -0500 Subject: [PATCH 502/805] prettier --- website/src/repl/components/panel/PatternsTab.jsx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/website/src/repl/components/panel/PatternsTab.jsx b/website/src/repl/components/panel/PatternsTab.jsx index 16d85495..3fc247b8 100644 --- a/website/src/repl/components/panel/PatternsTab.jsx +++ b/website/src/repl/components/panel/PatternsTab.jsx @@ -214,7 +214,7 @@ function FeaturedPatterns({ context }) { ); }} paginationOnChange={async (pageNum) => { - await loadAndSetFeaturedPatterns(pageNum -1); + await loadAndSetFeaturedPatterns(pageNum - 1); featuredPageNum = pageNum; }} /> @@ -235,7 +235,7 @@ function LatestPatterns({ context }) { updateCodeWindow(context, { ...patterns[id], collection: patternFilterName.public }, autoResetPatternOnChange); }} paginationOnChange={async (pageNum) => { - await loadAndSetPublicPatterns(pageNum -1); + await loadAndSetPublicPatterns(pageNum - 1); latestPageNum = pageNum; }} /> From b664bd3d1fd2046a344d16a34bffeafe2049b958 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Thu, 20 Feb 2025 00:54:33 -0500 Subject: [PATCH 503/805] girl --- packages/codemirror/themes.mjs | 3 ++ packages/codemirror/themes/grl2000.mjs | 47 +++++++++++++++++++ .../src/repl/components/panel/Reference.jsx | 10 ++-- 3 files changed, 55 insertions(+), 5 deletions(-) create mode 100644 packages/codemirror/themes/grl2000.mjs diff --git a/packages/codemirror/themes.mjs b/packages/codemirror/themes.mjs index 47d6c3c1..01c0c6a8 100644 --- a/packages/codemirror/themes.mjs +++ b/packages/codemirror/themes.mjs @@ -4,6 +4,7 @@ import blackscreen, { settings as blackscreenSettings } from './themes/blackscre import whitescreen, { settings as whitescreenSettings } from './themes/whitescreen.mjs'; import teletext, { settings as teletextSettings } from './themes/teletext.mjs'; import algoboy, { settings as algoboySettings } from './themes/algoboy.mjs'; +import grl2000, {settings as grl2000Settings} from './themes/grl2000.mjs' import terminal, { settings as terminalSettings } from './themes/terminal.mjs'; import abcdef, { settings as abcdefSettings } from './themes/abcdef.mjs'; import androidstudio, { settings as androidstudioSettings } from './themes/androidstudio.mjs'; @@ -55,6 +56,7 @@ export const themes = { androidstudio, duotoneDark, githubDark, + grl2000, gruvboxDark, materialDark, nord, @@ -98,6 +100,7 @@ export const settings = { duotoneLight: duotoneLightSettings, duotoneDark: duotoneDarkSettings, eclipse: eclipseSettings, + grl2000: grl2000Settings, githubLight: githubLightSettings, githubDark: githubDarkSettings, gruvboxDark: gruvboxDarkSettings, diff --git a/packages/codemirror/themes/grl2000.mjs b/packages/codemirror/themes/grl2000.mjs new file mode 100644 index 00000000..4ff40ba4 --- /dev/null +++ b/packages/codemirror/themes/grl2000.mjs @@ -0,0 +1,47 @@ +/** + * @name Atom One + * Atom One dark syntax theme + * + * https://github.com/atom/one-dark-syntax + */ +import { tags as t } from '@lezer/highlight'; +import { createTheme } from './theme-helper.mjs'; +const deepPurple = '#5c019a' +const yellowPink = '#fbeffc' +const grey = '#272C35' +const pinkAccent ="#fee1ff" +const lightGrey = '#465063' +const bratGreen = "#9acd3f" + +const pink = '#f6a6fd' + +export const settings = { + background: 'white', + lineBackground: 'transparent', + foreground: deepPurple, + caret: '#797977', + selection: yellowPink, + selectionMatch: '#2B323D', + gutterBackground: grey, + gutterForeground: lightGrey, + gutterBorder: 'transparent', + lineHighlight: pinkAccent, +}; + +export default createTheme({ + theme: 'dark', + settings, + styles: [ + { + tag: [t.function(t.variableName), t.function(t.propertyName), t.url, t.processingInstruction], + color: deepPurple, + }, + { tag: [t.tagName, t.heading], color: settings.foreground }, + { tag: t.comment, color: pink }, + { tag: [t.variableName, t.propertyName, t.labelName], color: lightGrey }, + { tag: [t.attributeName, t.number], color: 'hsl( 29, 54%, 61%)' }, + { tag: t.className, color: grey }, + { tag: t.keyword, color: grey }, + { tag: [t.string, t.regexp, t.special(t.propertyName)], color: bratGreen }, + ], +}); diff --git a/website/src/repl/components/panel/Reference.jsx b/website/src/repl/components/panel/Reference.jsx index fbbf0a08..fed2d458 100644 --- a/website/src/repl/components/panel/Reference.jsx +++ b/website/src/repl/components/panel/Reference.jsx @@ -55,18 +55,18 @@ export function Reference() { className="break-normal flex-grow flex-col overflow-y-auto overflow-x-hidden px-2 flex relative" id="reference-container" > -
-

API Reference

+
+

API Reference

This is the long list of functions you can use. Remember that you don't need to remember all of those and that you can already make music with a small set of functions!

{visibleFunctions.map((entry, i) => (
-

{entry.name}

+

{entry.name}

{!!entry.synonyms_text && (

- Synonyms: {entry.synonyms_text} + Synonyms: {entry.synonyms_text}

)} {/* {entry.meta.filename} */} @@ -79,7 +79,7 @@ export function Reference() { ))} {entry.examples?.map((example, j) => ( -
{example}
+
{example}
))}
))} From c639e44ca7a65aeaa77599d37747d097fd5c82c3 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 20 Feb 2025 23:07:45 +0100 Subject: [PATCH 504/805] fix: dont bail when ip cannot be determined (happens when no wifi) --- packages/sampler/sample-server.mjs | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/packages/sampler/sample-server.mjs b/packages/sampler/sample-server.mjs index 12520992..7039a8ce 100644 --- a/packages/sampler/sample-server.mjs +++ b/packages/sampler/sample-server.mjs @@ -99,12 +99,6 @@ Object.keys(networkInterfaces).forEach((key) => { }); }); -if (!IP) { - console.error("Unable to determine server's IP address."); - // eslint-disable-next-line - process.exit(1); -} - server.listen(PORT, IP_ADDRESS, () => { console.log(`@strudel/sampler is now serving audio files from: ${directory} @@ -113,6 +107,6 @@ To use them in the Strudel REPL, run: samples('http://localhost:${PORT}') Or on a machine in the same network: - samples('http://${IP}:${PORT}') + ${IP ? `samples('http://${IP}:${PORT}')` : `Unable to determine server's IP address.`} `); }); From b016720696db3f62f30da35107d346c07f7a3e56 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Thu, 20 Feb 2025 23:37:59 +0100 Subject: [PATCH 505/805] sampler: support serving any file (like strudel.json) --- packages/sampler/sample-server.mjs | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/packages/sampler/sample-server.mjs b/packages/sampler/sample-server.mjs index 7039a8ce..d1e56108 100644 --- a/packages/sampler/sample-server.mjs +++ b/packages/sampler/sample-server.mjs @@ -1,7 +1,7 @@ #!/usr/bin/env node import cowsay from 'cowsay'; -import { createReadStream } from 'fs'; +import { createReadStream, existsSync } from 'fs'; import { readdir } from 'fs/promises'; import http from 'http'; import { join, sep } from 'path'; @@ -70,12 +70,15 @@ const server = http.createServer(async (req, res) => { return res.end(JSON.stringify(banks)); } let subpath = decodeURIComponent(req.url); - if (!files.includes(subpath)) { + const filePath = join(directory, subpath.split('/').join(sep)); + + //console.log('GET:', filePath); + const isFound = existsSync(filePath); + if (!isFound) { res.statusCode = 404; res.end('File not found'); return; } - const filePath = join(directory, subpath.split('/').join(sep)); const readStream = createReadStream(filePath); readStream.on('error', (err) => { res.statusCode = 500; From 1ded398468194196181a97af3823e893a78ff1b9 Mon Sep 17 00:00:00 2001 From: "Jade (Rose) Rowland" Date: Fri, 21 Feb 2025 01:31:06 -0500 Subject: [PATCH 506/805] fixed style --- packages/codemirror/themes.mjs | 6 +- .../themes/{grl2000.mjs => CutiePi.mjs} | 10 +-- .../public/fonts/CutiePi/Cute_Aurora_demo.ttf | Bin 0 -> 38988 bytes website/public/fonts/CutiePi/LICENSE.txt | 7 ++ website/src/repl/components/Header.jsx | 6 +- .../src/repl/components/panel/ConsoleTab.jsx | 84 ++++++++++-------- website/src/repl/components/panel/Panel.jsx | 3 +- .../src/repl/components/panel/PatternsTab.jsx | 10 +-- .../src/repl/components/panel/Reference.jsx | 15 ++-- .../src/repl/components/panel/SettingsTab.jsx | 7 +- .../src/repl/components/panel/SoundsTab.jsx | 6 +- .../src/repl/components/panel/WelcomeTab.jsx | 5 +- website/src/styles/index.css | 8 ++ website/tailwind.config.cjs | 36 ++++++++ 14 files changed, 138 insertions(+), 65 deletions(-) rename packages/codemirror/themes/{grl2000.mjs => CutiePi.mjs} (89%) create mode 100644 website/public/fonts/CutiePi/Cute_Aurora_demo.ttf create mode 100644 website/public/fonts/CutiePi/LICENSE.txt diff --git a/packages/codemirror/themes.mjs b/packages/codemirror/themes.mjs index 01c0c6a8..13e5789c 100644 --- a/packages/codemirror/themes.mjs +++ b/packages/codemirror/themes.mjs @@ -4,7 +4,7 @@ import blackscreen, { settings as blackscreenSettings } from './themes/blackscre import whitescreen, { settings as whitescreenSettings } from './themes/whitescreen.mjs'; import teletext, { settings as teletextSettings } from './themes/teletext.mjs'; import algoboy, { settings as algoboySettings } from './themes/algoboy.mjs'; -import grl2000, {settings as grl2000Settings} from './themes/grl2000.mjs' +import CutiePi, {settings as CutiePiSettings} from './themes/CutiePi.mjs' import terminal, { settings as terminalSettings } from './themes/terminal.mjs'; import abcdef, { settings as abcdefSettings } from './themes/abcdef.mjs'; import androidstudio, { settings as androidstudioSettings } from './themes/androidstudio.mjs'; @@ -56,7 +56,7 @@ export const themes = { androidstudio, duotoneDark, githubDark, - grl2000, + CutiePi, gruvboxDark, materialDark, nord, @@ -100,7 +100,7 @@ export const settings = { duotoneLight: duotoneLightSettings, duotoneDark: duotoneDarkSettings, eclipse: eclipseSettings, - grl2000: grl2000Settings, + CutiePi: CutiePiSettings, githubLight: githubLightSettings, githubDark: githubDarkSettings, gruvboxDark: gruvboxDarkSettings, diff --git a/packages/codemirror/themes/grl2000.mjs b/packages/codemirror/themes/CutiePi.mjs similarity index 89% rename from packages/codemirror/themes/grl2000.mjs rename to packages/codemirror/themes/CutiePi.mjs index 4ff40ba4..8b71c125 100644 --- a/packages/codemirror/themes/grl2000.mjs +++ b/packages/codemirror/themes/CutiePi.mjs @@ -12,7 +12,7 @@ const grey = '#272C35' const pinkAccent ="#fee1ff" const lightGrey = '#465063' const bratGreen = "#9acd3f" - +const lighterGrey = "#97a1b7" const pink = '#f6a6fd' export const settings = { @@ -29,7 +29,7 @@ export const settings = { }; export default createTheme({ - theme: 'dark', + theme: 'light', settings, styles: [ { @@ -37,11 +37,11 @@ export default createTheme({ color: deepPurple, }, { tag: [t.tagName, t.heading], color: settings.foreground }, - { tag: t.comment, color: pink }, - { tag: [t.variableName, t.propertyName, t.labelName], color: lightGrey }, + { tag: t.comment, color: lighterGrey }, + { tag: [t.variableName, t.propertyName, t.labelName], color: pink }, { tag: [t.attributeName, t.number], color: 'hsl( 29, 54%, 61%)' }, { tag: t.className, color: grey }, - { tag: t.keyword, color: grey }, + { tag: t.keyword, color: deepPurple }, { tag: [t.string, t.regexp, t.special(t.propertyName)], color: bratGreen }, ], }); diff --git a/website/public/fonts/CutiePi/Cute_Aurora_demo.ttf b/website/public/fonts/CutiePi/Cute_Aurora_demo.ttf new file mode 100644 index 0000000000000000000000000000000000000000..2ff9d6cfeff298b173cac4b70ba0820a47f08d5f GIT binary patch literal 38988 zcmb?^d4OG2eg8T4zIX3?_igvxG&~$t0OfCfj5sWQRZ!2oMPSj#LE& z1zaeCRs~Tis0FFT5Np-iqPR8HYDMway3ne1Yu#zh{661v-wn}Ue}9?4IrrSI-3l?$)CrocMV>(PPt<9p@sv5SuSc0V$~nAOJnt1mim^|7TTCZm14X1Lp4{hL`G2rs z?x*j(fNS?3_4D+<&4*VXWS?XOb{qPjp${7S5nhUK_z$J~P%bcuU&l)H6Mha7)&FJG zyOs@07bE46b|bB3!|Vk---~oPv-n$`=j^+o{dXeP~O2RpoF|s z#JkU;&R-*4iTba@`*Hm45nK=ATE@4(!*?6;Zi4m5O+2sRw=vXJVm%ngu%zG{jEBYm zcnoullYa;AzQe}(v#cL|>gOkrZeS6>dz}9_8)x4^-~VT6f&T@{-$I>_qJ9tF{X4#+ z`v|Uoiu=E275)rMq3`4TAJOi+@%%?Dk2;-i{~h%lM|p>H}Kk&xGfED*uXpZXu}4|=Qa$?O-aLk37gUnwykDsqE` zm;RfXEP~u(I&xd&F&15VnZ=obJi$!lNs*_Rg>stNOTT3q7DJw8apXCX=UHOuH=xNR z@*+ziFNwU&(o4T)6_!C>Wm)7kk=I!clqXo<(toi@)ycl` zHXuKU{QK+>+lc%yTSR^l+l2gLwi)>mGZT4Dr2>BiCF!DP^{yKKi(!a9T zvx|}6#f~7qTjXzGmn{7Ydn3CP`91712LKQ+5^d2Solhb~VZmvTK%JWDl`xk-wc?hx{EP|1)+y%I{=1EPa!`i`|I)-6DUO z-GuTZ?B=C!u=lWAkUuK&_p)12ejmGS=>_%}dlm9O7y0|y?I=Ia{sj3G?A1$OXCDyx z2ia>-{t$aD^1onrEd4WkQshsuJ5l~HdmZwp+3T0S#{N>|A7OW){8#L5IFx^iy%qW2vip&L zn*AyAzeE0I_V?@ozJ%s#o?Cr=u&)$Lj3&>BhFS0*F{w4NK z?ET2UCG!8n9$)$b`xo{E@_%I?K>lr!e}{c=>GRN3A42{;_7})s68XQe zCzn3Q{+&IA{QK;~$bZ0|M*c&Q{|EcarRSk*KZ5+n?5~jjMC3nZ&n$hG{fvDS`G2zG z$p1^^KWEP_eTMylok0Fe_A%tY68W#$U!(jR_VK0X*l*e2Ab(lp|II#u^8c_;F8w|G z9s3mWQzBnte~U7M+-2;b-zPKKBgtN`;+15N$18g!uh)Y+Me%y^2$|Q1vf}Y53hq3r zqA053^(bB+Udi+=J*FbnAgS~V5B;Yic_fcl^LZGm#qU*x+E8RgLVc)*>cu1a1+{^n zs-iNVsw(&&FR2Yw<1|f0szE{@Pyz1fCur8I1pFT6K^yp;f+j^93fiE1{F7wL{U}o# zD(ds14b_J>RK<^17>=UiBQ%MZ=#qpEp-k0NAJB#x)VgipcQUmts}l8^{-I*04UM{v zev3BzJ|DiNv1m>ks*jo$ZOF1$M*DP&|3qt&qJ}gtL+8;urwyNsR#c}AG$Z3iRW#Iz zANW-C88<$k9~JpjG>tF4)P_?pKKIIgY9CEv_>@VCFB0@Jbl&Ut`Ta89_&q-A3F;C5 zWDhQC5Pio_{XW#E2K;`%hDLn8Al{*~J`G(W6sbNL-K7qpOyfiWJ@)G%MYN&ecTO9A z*@xeuB5DL}pt>M#aPj-`Tn%XW7LEA*A!LeA@oQf61NHiR9*-&q=yzyARRh!!*{4Or z3R8TtLcar8Rn6m<{rH{ur=bmMEQC7oQ_ZiUsi3B5fq;fK!gvRO_yg327(CkWP#YLD zsu!)H4Kt!L07wbocL1vz@B}=XrfPJLnmxGD{1KEf7A>G^nlBs(20}qJ8i?Q>01^nI zOU^hwUY`da`Uz(~j1&K4f56sZT%nCnAQ<$Z@t`N@2?TsW{0rcp2R8vt#|_334EX{9 zeP=Oc)g)eC}4y`p)i^W`+~TMghM*sg+d12`GdYt1WjYuetfQIULBo7hqPdT zN`Ol^ZEMVr!Rp~i1Vaw!N<;~VG~7iZ;c!?{kOeJ097gve5wsn&qI$&8(N4t17h2dK ziK2G=(?TId2`Fee2;c@o!Dt8_@rLwlJixS&;*Un6x`IJQ6|@ow=uutQBYH%^O(YaU zwb5`ms-x|YZJ1FLjYRdh9*JlXO*j2v)D{ecBZ?YSOzI6V77iKcU)UQq3dtY~gjJ1x z2keDR)ll_l(4c>4NcBad(MZyaMlC&JnwlOBCoIdb&8Th~NxTC<3`@h9Bj`Oo52-d< z)&c1V#)*GQ#4M)JMnnx*hGn{KM57_Y#D7u4KpRF>Pg$Z3%M3(~NW!v>m}Q`i6ut+wW9p0Hyvzdsg>nT2FLmb9%zB8;1SDiu#BV|FrLjK^XCNIV@f zEetzi*?!INXKZu`Ah66d`e6C2WPdfvBDO!0Nu*O68c%B}e6I+@8d(y6qO zG&2P~5s$@fBasY*>_9PvYBE!nadlQY@$&p<;sO@I-hH1Gg$y6SB?UF$+(qD2Sf2-C7n#BZM2gt z0~jeSS)A;*nVAZj<$S3awCs2(gjTY#LJ|LE^Vwi1pUCGQVxg9m2!ThQ7Jcy`C2_zs^o?nz13EuQmj`;E9FX}l&CiCLOz?%Bn!nz zG!yPC74oHYHe1N`74n5bFyB}|m1fCOB-v{8HT7gV*B9-L)N0wDUi?>U)FaVGqfwsh zYt&oSa&KR%)+l!R2YLrvjcRZ2RHNQV*V4W1M7dlj7c!M<)F|kK)pDtxD;CP7LG+;# zDz{+&P)r1gJFy$Yz;MU$?0Zas#YvHm^YFxjxQfD5_`rVnz5)2WAr^+8tHZxF;MZF4 zXJfFZ67XMB@LMzRS92_nUl-wo{M!<2akkJ_}gL=k0GDXHs9Gu=>c{Q~Z3~$bERwTSUpzSD1fFuFh}WS>9E+ zyKwi~gLfC^3l|?a_>`wAu6S|i?p*_gr`WcgN04vdS$t}CSNe4E(5_vRsK-n7;3xR} z?p>(il5P#Sibn&#!$(Tr`odFkZS&48JD<9JF8$Q(+^%%7SXlkkCpYhW>XUQn;;voz zN!T*}2XJt!B;Mf7vm9NO0U)^FRn8a*xUYQdG_O;$pj z)COiGP!Quo(i5OVmGys^vw>w#s~+~_p${wG7neOPODM7r%kXx!xv8^~>mTC_dWAPj>#NzpV+%Ly< zBjxd%x#XZ6E2UzTz24yKH%PjXh{<#3UVo=2YM1~UjZup7IHH+0_->UmMhz@VW7Nrz3Y7uJymd1MQ_srFzrEeq~`Q9%dI#BJ9WKYt9Ktl^1F{d z&Xduw9pXkPuEy`^m9%UH!&*!FtfWZkEEId+0q)^pBer&h*B^&9v2K&9My$x3 z)AyxsOQX`wkT;jIe-QL=oUKEDf=Eg9sRQXj0~tVPX%KXkaFysi$_FsG5|W8$CZ3h> z%tqPnmJ28sP(Fa?4U`)wQyndoTPSx>oYBs-9Pa0FzXfHwZo`#+w+q)@ z-8%N6yboon`#hA-Lz&vY1m#Nx+Jn4SR@CSjYJ&%)tronQavP{(+%r$e#|Ia)Vdq6PCXi zw&jL2k&VI-QYU*;dUhq(?U?Nu8IJqZvYz0Yk88r-y^VM)!ZFiZwKx|R0N zn-)JTU0;wVPyIL*4Xgf}Wl7pRnT~`N|J4cy()G9^pED~Z^=Mp{FKRX{U6DI`BNqCxqGwD$T zoEZUUM!=a7aApLY83AWTz?l(nW(1rW0cS?QnGu&WBjC)4;LHfnLgYg{KxLPNsO-UW z&j48YhiLL;BxxU-O`_0)G=a1hX&2HFq#Kd$LV5`4ainLFo=18CDFhinHHJ`QsM}Hk z&lga`2(DXkrQhtvyK|AKycbs!*YjTlc`A0>9_!421nV`KD2-?fB-a&4pjVga z!Sge`dj}#Ga%?CD;nn?-kPl%FQ5K7jE<=T*C588KLn~GanXHGO+cz~j+}kh3b1~`g z@=(c6h8hFh%WJh2{XNMHmr@0rOPglG88e}mu1Xiup^T*P(d9SiB}o}A4W$x%;*u?u z>d>yvK07Lnu9Qr4Hg_c^5H zZG$~*!%lsTLnmROm`=cim0Y?A1EXPJGz^S}fzdE98U{wgz-Sm44FjWLU^EPjhJn$r zi_tJJ8V2}J03!n|EI57?+^m9wHE^s(_QW{gYQUldKz=m2jY>$3n5j7JhJku(zkZX~p>L zvQA)e?WPT*u)c?-EPD)c-e5-@*wKVADRl`n<49#8=Y4>m5AgE=em=m@2l)8_KOf-d z1N?k|pAYc!0e(Kf&*#F=2l%1ReSne|V2eQan(lC4u~tU@z(Dz;*9UV%Ur*+U876at z`nq&8UqD}z?2yw}4em~t?=|#KL;p1NPecDS^iM=lhA_wL`erfNqt|AiM_D=W~T@zB6mZ@>8q zRSTZJXW*xAeV7N)ZwtC~3jI#8qfWmQAXoI8WJCbm9dNlj0PYTey940v0Ju8uAZeY z2Ji)4NAW8Ut}`bwx+r)o-IZMo*R=R)8n0D+rs8d&`}73J!g)`PxL=a`?ZKBl__B5S zeWzO@s&qjVi+7y?uxl2~d)mZ1O#}!iIF7+IqUEmCe7MsHM-lMUSICMHNb$jjssy5u zO_63Npd;R!fvKs-^u&y!1@uUdw7e8YoHnWiTf@V007^AIoGj+NW+38gY1y0-4w$N4 z>zhPSGZGpZ)%(5CK-iyfdEqBg9dq~t?3WHs>Vyr4rWj}nzK3HeG0+qPO)=0E15Gi| z6a!6R{Rz@TNRJ~ui}XCw3rJ)sk-1Hl5?v#>Mu59I%C7lNW!HM5auwfHiS$tJN4cM* zViS-~36+hPc;Om(RCbL#DmzBrah5{a5vfkuHPz_3+ZdHIC)})guapb~ z|Gbwk_aviw%*Que2){073xAGe(6#I-#5+uvmmPU2cv%A6B^T}z;4T5~65uWY?h@cG z0qzpuE&=Wm;4T5~65uWY?vjAJ55u#Gmx+nUO!XiskVT{-hTFrA71&kN2Md$F-g?;| z2pNHjT&85nBhZf+tP>DH>FMv`zkn(~0rT&xhIxmcmHa?<%G zh%0$~^nDoRFiCJ21p>}w71YY7aWTAaXJf-hIE9EkS0CJdu7EgKJ!-0y@Ow-E*pcJ# z`wCmo0SpzuPyq}Tz)%4U6~Isd3>Cl- z^S*wHmXT*K{CY>VK8%oQ9u9n=KVD4Ru}W6xlN0;}=~sxHMY`}IZ(AqHALf|e`vYr; zf2Dl++sa|YU9~+Q8`pArO#0}$U!3~T#ymp(`dj$>-vy5vE)8hpSNx08>)<;j9lsgm zjEWPEACtfc6YdBT7-0e<6eZE219j*?9Xe2l4%DFob?87HI#7oW)S&})=s+DhP=^l0>KG?VqC*Gj=n@D6 z2qxknK2E;~SlR-XCrDokm~wa_4&Q;x>SX4`Vc@_|(fJpTp6}ay?U92Q9scsrdf7PQ z8JXqF-+0{nrhA_Gn~&af?-l9vm!!Kc;t`;m_~-|GRJsH4$-5jH@IknDb@?A{Yanif z{(CVNGC8Ph0Af1s1@YtF)kpNMNc<)dRXc+Ibkt{*!UCt|`wahnFr+6GBUQ^wp2naa zhW9cxEZyRd>5cm{o{?r+#R|rHQFRGw~ zs!It~P(l@yPz5DaK?zk*LKT!y1tnBL2~|)+6_ii~B~(EPRY3_}^uP0p?k62cCeaB{ zVFOpl5q#i3i3C72P;R2!M48OHK{%S-F~hUO;DvDjvab_MJJdfTb;zDAmy|L>8DTD- z?x{S!b+@(h$yRIU1fo!;rmfz&;%bj>gf_3)pBBuVdOYk0(gl>zs!tJ8V`t6mpY zy?|9OVATs)^#WGCfK@MG)eBhl0#?0%RWD%G3t066R=t4L2?Q>C877Qit*8Kit7udJ zV(P^eWQ$FqjVZT{DYP+#Hm1 zBA714^`h(sxaj#>;;bro%fZx)z!YJGG$Cok60Q`0pl7QDmRzl70}Eur2~?a8{K2&! zf=Gs`Lh%An?a+)O@YX~az>#CShTi5`znSw|YJ5Fck8aNuFQ4}ptZcAxK=MfgtG)cT z{uB=@IwmKB9<9|-cbi(tNK5{Qq;tm*B`hzP)}`yizTM|3u^S>GE1f;!cuxY}lYsXm;5`X=PXgYPfcK=J|49JIRbW(3g3r(7d)FSNcTv0}evh9-0&wYB z9_4(uTtvAz0L)Ax9!!A3aIS-$a!AHH)I6S_v0v!lO}QP62xkU zy7C1o)3qNdj`IqyaRhvvuptEy$M~vbDG}vbZ@{u+rfk(@f4Y+7?bx#Io~Z4~rvp+d zYNX_H&oBaix0v|I_lA4ag39qYElImB@Y-=J`nuJU8Z$zH^KQGyvg5YTf7e5@^m*WB zVd)qAH`2|R<@pNn+i|uWoo^#8#{i}=fN7L%K+Vw#f=AlGS=+@~8#rqNXKmoD4V<-s zvo>(n2F}{RSsOTO17~gEtPPyC1Kq^Ny2L{1Wntog2#6I^lH;HNmS@R5KE zVwY(?cAsQg?_G(BQ_JJqvesjIl}hhK-^k>$(cRNmSM{uwh>mU^to2k1)og7f7_c*n zw2)3n9-fYxX-VfBmL)VZer&~sqy7DjXxz>xHs(vKdgg=Sgg0C8?*w~5N>4BS7ylVz zU1h{&e(PXi2v8>xJ%oX{5~Sj2_zE<91sc8r4PSwVuRz0Bpy4af@D*tI3N(BL8omMz zUx9|N0N_B|ODOyji8Q>!EdrNK;IirBvI$%^fy*Xv*#s_|z-1G-Yyy`};Iau^Hi63~ zaM=Vdn*x_j^icsSD!97-o`Ui);j#{GL^!m&IF&#EbdOd1OcJ=V@oA>3g}M<=KwqGR zysp!e8H5&yy))4Cj?U(dopqg|*3gP8i-~4)+1~xD5hG7ojp2b>uPyJHD8@SJc(HFY zzh&WX*7G_9YV8Xo`Rv5WQEj@q1&5VC4v=|}v8^cUd&wS);+ z1tfz5@M37aJN0}7o+D8snMZyMyM=4+Boe-(vg==t<9jbg2rBG{1fY?i?=EYf;YPaB z88M&|Olg{k=uR>yeUR_A^>9Mwh|$x0G-wU$rT%39g3^5E9csG?vh-r$oH zW9joRkY;(NQRI-pSXOY+4PL*Jio_(JeAD|{1=KX~l8jXw8SZ=A1nh7bYi)nQzXRF} zV^q`ZK1b)aMHuS@46{xbd3~(yAd7(EXvz*Kr{hvi2b9wR<#a$f9Z*gOl+yv_bU-;B zP)-Mw(*fmlKsg;yPDfA<`S(?TFpukUq86-a77eDLLPb21bQ$JSfO;}A)qd$TT?hc4 z4sR2;cAP+)h?n=veC;^*jFuY7^mOuiEb@{I{eAVGne&43>TN;k&^d>0_dK+E-H4~X z+zT^jj$b>oJm4)gGuiS;DQsZDm0VcX+H6EtPDb_J>sQSO?6ntNvd4EtZgN{^t2Eqe zMv^^=Uf>w}1Yqlb74}_)4RNo-zr%nNb8P*y;E4|dKCYeLa-={DQlJGX(1H|bK?<}W z1zL~-El7bDq(BQ&pam(=f)r>$3bb4)(1H|b2`NB^2Dz3*$U3k<*E4N@SCx^|H$vFS zz)K?Mes6*02Om*B5pz~{Cl$2;bO8}T+9v+@z)LS8m;yA zuNzsj;;<3fFt9jz(3WyWG2n0K28u1&6U?sbEmntfrFq^NizRlC9GvRev~_;dC-+Y+ z%z6WMzTMl~xBQ>_2CppFXVw-Bfg3TujQt;E6JP64_u2F`9jK9eOcKvH2`D+9CrLcg zUcc{wM*lZ&^bfsKo^#z(z;}4*YW9@qf6nzDOiYQ80HS%KGbDKy{Frt5F$)xB!H-$+ zV;20F1wUrNk6G|z7W|k6KW4#?S@2^P{FoK|m_>~W#zI%u*r8Smj7f&afi$ySgACzNXki=Pr|BF!_tkBP}E2~ef}SS_)Yx+!n3`9 z2;s)^E?@qZKPG(`@sSZ;cK9+bCZT8&g}}Umq8V{Wxj3X;98xY0DHn&7i$luAA?4zb za&btxIHX)0QZ5cD7k8yx98xY0W+0ER*fk1OM;@!-6V>Gt6?~$CPgL-U3O-T6Co1?v z1)r$k6BT@-f=^WNi3&bZ1)ne=xdH z1=}@XM*&$xyK=l}$MY{NT)E-gsnrWXU&>6RBwuI4P=7hFI21O*_Mo$ZrJR*2s}HUk z-`LYTVjID5G~QRVwbttK>O^f^nl)m25~ve0X+e5PTEJYuCjJ2jcX_C8QUz0zNfMZxlCWWus5$A@oJ7q@)SN`kNz|M~%}LapM9oRmoJ7q@)SN`kNz|Mqk|A2l zgVyq(wLEAo4_eEE*7BgWJZLQsTFZmh@}RXmXe|#~%hM0ZuFiwj@@W1zTLiLJofcDnvsL9~1v}3CJdsX?Vy9?qI%NBI~+q zqIQk&(;6HRCOcEL*l`@8OFIiHs$Aq~*(2Z@cGR@Bhn(7p`4h zHPuAK)?!1ogU>yB%|-L8c715iQQn_hH8n9mQ(g&!OTt{*FQlsUcF2xt9(CxCL2A(O z;W*+d@W}vu?8QZzN7{je1!sUh1N0f7&j5V}=wrVv($|o>&}V=?nsMguJ)kX*OIse$ zmIt)u0d09eTOQDs2ejn@ZFxXj9?+HtwB-S9c|cnpROwgxS^gMj_E5EY9>rzR;g|%}S|W?xY4n19$m6daN89)S8KN+O4grWrh@s z7#VJO&e`5+crrX=RQ$G-;A^q-8)b@r(DUK0RXl}fw33IO&7eGkatY=2gsD1i2&J<~tB`0a zjOJ9xGFXLjOf=VGs{~gz;SpnHAVk;<%y4=J3o#al1u!;^Rb!-I30Z<8fj-;n%TyLWsifkSDYI7m1?p&6x z?3&?nF`A4g>PC(>-tLoq@`|0Fu>*N!+oX4TQCD*XS<_>KxjxxAH1_oU(RGuV?7Bm` zT9BlIZTjAN$8}HoYi7i2d)KRc+wxG~4Dd*C{NM0j!H4W&P*^mV;}b&a%m_RrSP&Bz z4vRW7Gqgsoq*}tU6Jg7)+@ZyDT|Gzhs~9i8Pic?5QQ+g66sSr`JKwU?we;#@g4=*SGj zR)DM;62(}uKvovzw&Pv3Av@ZT9c_?K8?vJf+0lmVXhU|iAv@ZT9c{>tHe^Q|vV($J zLKn0lJ18_pFvtp@S}!xBHAs;fq(}`?qy{NcgA}Pjiqs%Q zYLFr|Aw_EFWf){dkuwXurI~apyV1)q%80l)(J>7#qev9uq-CT{(4Y@WvniM$iYG-p zv9M~qC@9cuJ7%4Yz(Y4$R;#~4Yr;r%{Ayk&fniRc52xKllH|2>xsPUd+jR*h^O z?U=C@8+`hCBc6@@ereukrm&J$`rCKj^%%BhWYe~C_0h*qeYEJ+U%jv1zhf&Oxc{B& zNfrUezec9Gf)EoIh@HJvMnj^2%j18|AN_OhqLr ztz^xrW=P)YZL`}#+{N2Z_@}`8tJr@!c&jp6S|;#Ddkw0 z@uXJc3B$x(W6a~p`MDH~rsbR_NtMIiS}+@pYc(l5Hkt8AJdPE0LHW)T9>u`a`@o9> zT$XquoKm2C`}85=vGJwfNJBIa!(dj+W4wR)BUnme zM7h_WYi${sJJ?A+aPi#E5XU~YH1{ufR`1<-&a36I6(P+^CV4L8i|1^AVrlqinI7UPa$1jE_aA5%#mWy8t z?=9fM0xm4z!U8TV;KBkfEa1WdE-c`}0xm4z!V zHh*;8YZzt-!(d6Zut;EmLHdd?6D|3Vi){iV3WS^<;V0yjZl>a4M4b|ny5)*qpw~=e z-=dwY_&s3{$12VqS(avJTQkz_5iBk8AAfVtM?1P@nUg!(TFw;* zplNj|!dXfx3vW2?>R&1&0u3#4^sf$>d`&CC8RnGM&(M0da zP|vcYrOSb$%zdFgJE{i(!*qR0QGk*pwslH1o;GUOiY{lta+3Xq`a}1~ni`8FumM8O znt8uZ;)UnQN#QuF<=gyUq?@s9;7SM17NpzRl9eD(z@U#{pn-Dp@alZJns*fv7Y{imxr;SKBI=VtX=l1AuVI3!>g9-{>|AbLz=n?`BNN4#bG1=JO3&C>S6XiXRJLSudXid0ax{a z%X`4(J>c>laCr~7ya!y~11|3Ym-m3nd%)#A;PM`q%X`4(J>YVhHh}CG251ik=o(67 zkvaSgD9}nvSM+Opk|@kvGr#@>VW<^eP36idozP*a?-eqt_H`TUQzx(~f3l zss+{4_lax6nwidhfA5>0GVMgHazpZs4nHnn4)-IlgNp7hHjQEtjve$zuS<69RX40$ z0K}XLM?j41QCe7*A)X=i13ICo4y^cBKq5>LaxHhu4ZJCEX?o8Z&2PqXN3X4#1ClHq z%Ue;Hh=2Y0#K^3{u~8^v*3}H>y*n2vNJ;O`?lh#8=#9IMhEyai z6C`yx>v&SLpqp9H%`E6<7IZTUx|s#t%z|!aK{vCYn_1A!Ea+wybTjMH%`E6SPCSpr6 z&AV_Wf^!!~kpnL#x5C`f7&O-<@bZa*WhAAT#LH<#Yuww^w+`eA#UWqNz+9J=k#b?2 zvk~gumWtLwE3Qz3yrdd2)BO5Z`?ePQrND!i&Ag+QTrt1rHTOJb*a_R?d-U-ewwnIp zI}iIJR^xMf6eSq%|FT1q(}fh!fbQh_TKxKe>D6}VD?D;2n+U^tA5mr(d667e`q3916B6xq_8_;>*}M**+V zND>7ceFeQ=fXz{W%~62OQGm@+fXz{W%~62OQGm@+fXz{W%~3!j2yOu{{pe{wY9*N| z^hT0so+Kd|U0LYt)3M6`2M-E_f>0wYxA(8!aP=kc>fg9$=;}8}7rpbwn{K=Lw%h;o)PFqj^amcj}RSF?By3y zN`ev3+C1*ShNy#9;1OOO=}&tC1Z--6O%1TA0X8+jrUuy50Gk?MQv+;jfK3gssR1@M zz=pyjf(mPZ4Fy?TZ&ASLkB%NXh9uc7A&7zm!U4{H1r1_Q{t86rv2 zgJIIHj1+z@i776JBmxjZwDi{$lI3)Wg}eqeCU-R(b^-~RE~0<0$QNMbuk767SiNVc z6}+sYT$wRpXe!eD(Q}XPS$Acn7p@=ln8p#LwRa4TEy}OGj2nIv2agm}=e}n5^&4h< z<$=p$IKW}-BlY(R`u#`g2zwm;I&$|ctWr$?R&D@=biTW)sp(+73Dh-# z^(L_11lF6tdJ|Z00_#m+y$P&0f%PV^-UQZZ>5;&C6IiDOOytBllfrQ1QNM_V(Tt* zEb)f=w%&62pFI5f8?GzRq#E(ax1<$9eoXPK1Am$ip!FHc(Ba9GNGK0F(86hez|$Dg zJkk!N!${X5-HG%7(ql-^AU%ilHKZ=I1_3R|=-=m&KYEUXrlTgiOF%s6E$P=1o;dpT zOdcow3Xj`~PLka+0t{7wK*9_ON)P#lc%Yn=KhZ@71=CqG`{IN{T)_VQTA|l~GS3;V^0DDe4BH^rRf)X@riPQpVSR59LG=a1hX&2HFq#Kd$ zLV5`4ainLFo=18Ci8O2peWS$-Qxp$LbR%Z{*j7uJ(eaXmT|cfP#?E46u49@w#%8ADQO2`+Bvv28r>bKW#X%azxE^e zYxluPdzN5-0`RC{2tuA!x;RI#POr=e!$KT*!clFKVatv?EHY8AF%TSc7DLl57_wuJKAh7kH4q7E82zoU^uO{f#1ihM|R}=JVf?iF~s|k8FL9Zt0m9}d;tDjP+ zk%S1XQOW_JO_D5*M|1+#2Cd*GdC?UMSSvx)Da40MuBUBwdT@aT@5nQ#1-1;g*K7Vh zDQ8yw^{8><`h^>lhICy$X$SmwJ+itzxqM=zfBgp@(7a}%^uR+GZrr+S^V+c^9{~OJ zz}C@0e;Jk}`a^$+0_da++OyhS59&xQ5?Y4vBAi|b9WOPda;&6Q=fAPxlq zBIt_fyoyAgY8+$2sm5Y8zzMLEQ=&Mvs}f=2I5N1~Ycb6% zUNACN-haWs=mT*nV>W!&rZrR2ZHYv}@XDvYd+LdF+6V>jJSYB7muYe=)w=Yi@!P5G z9?T`a3|RHCHQlyJ0tW%3lwbmsK@2{SuaBOiOxr?80n#!Jx)$)RfOk=pd$H5B8;Nt2 z8JQLcF%6M?cHk=rfkx0VI_1)`fh%l2YC>GE%?;OFbI-#rFfYoU_2qvhB^sQXGfGcHwxG@5a9IN%k>^uOkT0krEk3 z*SzR%1Xm|Q;*{NxH@$Z}X2>9CO&^w+0S0uQ1_^`-_^MP<03W)rpt9rYI7)!F(zxo5 z9Gdh=B*29fgzM-~*-?4FuQ(`p-@*4C!a2>BKy^7AMMWS48*K6H6%dx|r88DP3U(7J zkZT@_k1Lr-sjf+C*c0_k&dI8QZI)QXkf_)@tVY)B$37-sLe{X0m$qL7i%0gKTDLaD zgV+Y6C$W*URK4I=qxXN^zbLtIeTIKUI&7UpC`qc4lS_o6z@8yr)9|%MfM0?iK6=I+N6rXnRHR8nONw#^R^}HnL z$V&5qO}#*Z7h2B?t>=Z-^Fr%+q4m7bdR}NfFSMQ)TF(ou=Y_Z=Cik)tABRG?96_0+R1@VC zzKi3YRwmFr&9i23PwQgIJa*?+5ZU70@Q|3P0Yy0k zb^yy?<2H`3F)B4^NncnF$<5u^2947lBV6L?-t5M}YAw_(dyQ=E%|tU?!W_%}PyhU{ zLOjBgr6iZVbLw}mZJzq|Rka4rpU3$J|0UsgS;V2uu1q1W@z2EF5f>Y z?Zx@@2`1)h&){KdS3#mcE3NTx`ITgq3uzC^2|zW0z6ovid;I4F!iM+Ual_u*CBsU_ zy*IvY%MG$=TZUKl#&k2Qfz)+D&%@GAZeZN{>2Z@iL!p}x@k&=}3kRBX;$oUkG2J_> z+CgKT^qD{cXO@nx@r9F-6~uSg5Wn_UcN6LFroV1vpYJSWhNq1=aZ zAId(*wml1bja?y0EfGmO{s1l8>=Qu-JjEOA(j^^40{jHJOG_0Uuh*p2nPa2vQIL-~ zX9Q-d++C$7bc_&4-32)cO^k`P*oa8*{mN@6n)R|0tS?;Yjbpd1HMn7Tqd&@dDVmvm z%l>apyD*ku5U=U@tp}6&m|%VPpI7Y=3Khy}cJU4i@mweA(E3)eTo) zQQ%SAwEREWF*17fIw2GKv5)pm{3ZCd-7{oV5K|Wue{}2~lo`Mr08wTRA!edX0#1!q zJBXEf-GzExlSeo!Wbx48yXum+wcccZy4X(ERf6orV+=1LM*K9FW> zo^+I%;>dxs;1^M3(-p{6rk%5{(M0#|k|HWQJ_^1;d6Ya?1N5hf>1B#e(o_v-5-**} zK3Z6V-IF3>DbCyIB4n&HI%0N75VFG|L0X#Ncqu{^!Necq8+%5^@~N7UDz1zL5C7& zde_`gr~ZAC6a84j`$qmUXr_lf;>dHF6{HDVG7PPgNGOv`bRaJ{y$m@|>@O^#GJaZy zoG(Mpmm%lNkn=bU6zMLchmamedKT$)6R{FzH9c+&nI(NTyooJ zvR)fsbE1-1x5a?%uJ`u!^{n4}={whrwd?&O{h<}PO16Fzsd3m1k)^lu^Dy@@%0BPd zg9@Yb>&~Vh-iwjb`X~jXwgC}a82MGE2s@EhwZ`$5u;I*8051K4x`^ZH+_&HN0Z8(> zBJ-6cSI#%iq&*}8Sz!=-r{hyF?6Eoq76g=2U4j)PYz*h%OhDUlK6yT#)uXY>UPN8> zsAb6GosgVLVd0uC={<7T%y&q7>` zY9#7)3^vDd89GTa&nb_fOfr!639Kfn#@`gefM^<*sG1^OV*-ohp^?Jt#SeNx1S5Fv z99Bp6;BvAt;PI34a*Yhrak^nS!=VMrUh%?VfDF^52aIk~Y!s0swu#q9_z~3yD|}ff zn@wagbMbhzB3V3mkAHGs(u;#}{KhyAjO2T`G`2Ha>Ytn(*x#!2Ph7e#nzs7-OQTwV zx0Pr#b?V>Vn$u3IYe%$zk%*6saOFu!l@hZ9zTn=eZL7vYk{|ptzVt)>chcv8!tVOg zGSE$f4#9^yyH&I=+1sn9Lf*5NrO?b5?dDRN;=n3 z60okjYkazkvPHB>h;zaV;Sp!dLf&^LyKB;T&dA`8YRv5Q4=v`EBBBfNIM)`qB5i4D zIKwj%wxovia5S0kJGIZVbN{XH!l^}m@AR8mo`AHUt9zcDH)R~KZ(dJ-%8m9xGWLXY zEu?6L9dM*q2?kOZ>Ltk55-6+$+ph%MuLRq#1lz9!+ph%MuLRq#1lz9!+ph%MkER(Q z{9i)hmq-$w2B-rD_$ykd5~FpOIi23qhGUq?(4`Fz?z>g+=OY$RVCPBM;|=p#tbpyZ zb}`RCsN06&ulPUkfUH`He32KYW&e34oXniY3Tph>K#Bh19s7I4g^Gy&30+0O5IV5Y zS&P;W47szC{Xl~wOPzPF4ks3K^tRAreb8flt{&@y9_xc1>w_NagC6UH9_xc1>w_Na zgC6UH9_xc1>w_NagC6S>dW>omCncy|!fuOs%J!fQcgkT;QdzXPL9ip~F0!|Pbvk18 zOgro~0}AZQNP8@xG$vFfk~VN?Ft(8Fze!19nRr-D1@*#@7POF&)XV0z$-ONQUT(@(p701b$ zYT2Lm#{yQw4$w&gd*eOcKqN0+z4vn7FW~fT_CDx%ET47YsEVQ}XXuJQ+Rqd) zpjb*54p6seFiUh~BBfV+RUV6E{AKCEuu<-Nu<*IB%1Sg|eULu{51h{8`KELj_S#xk zp1K=O2Lx`(0dgj()H%Y=4{EX7AnPD zAr=`gX~pqS#PnA6G%xDGYz4c{u`Qchu^vkwMMQ*Wq7fU>$S=Y4!5?TbQscvglw}W= z`aA7UlLT_Qba~t+)*w*XDmPIFTzGfSi>L2KXQU*JE0 zZhtq?nzQVgjvgUS@t$<1n;LLjHAD&9qDx%+K$xv zLns5Rj?vifouDI&l5%;ZT<@8SW^yY2{D;&uq65jqLfU7o`v5`XYqZ)ff~&kQt+QV z1vebY953+f>>Kp~;&kM#@Nj&9xDOEb0pdPD+y{vJ0C686?gPYqfVdA3_W|NQK%5TF zMgPz@I+sJN&60&kq0=Ow4a8xtC8g61JBZciH_Q*022+7m$7XIiaQN^AQ+xX^|H0w~ zm8oU<^_O4wD=-<$5zhsC-JvE4M_Gqj>IaXO=1_aR3-?Mw5euDXlFX} zk5(=@t7jy9;E)+9PiF;HjcbUjR2Hi9!i!0kuhf6u+jfK*f?(G<6NuO3|e@s-8g zSS6c}W1(nE$_%XkVe;t&0t3&NY@MG7GDFXIIz`h9B7XkYsU|$66i-3I*urC7k zMZmrY*cSo&q6_;XV2{us=49ya5YRSCSTcZUcl8JDcXgs^eq4isA5O1T1-!^7CiN|X zymdIw*cnC-NC&~to8YlroJ$^SzE+G4a-NKYP3|fAD*d4#4(aFoDcOs^JfQ2fW=pRu z!|8otJrW-CZrXn91tI)ZEPvVecVg`L3$pyRQV6*GwL|UWKsH5Z#?e>T;yQcrFGs%% zt$vnbJR|{|=qp*^B%P|b(zLgZG9(olEM#m^Jl%KjKv~1z?+Ue6cxwY{Xylyi z&_uDZeKHachxnh3^IAg3-`dhFPk!6T>K%ilVf=lVEC=+Oo}+Mq`p^k{<~ZP23)dbB~0Ht5j?J=&m08}w+q z^k{<~Z6OONo;U*lxRQwO{U?zCwHcHnct_7D-az-RtxaWjEiRRZ@qU=rF_8$P6SJqf zW-aZMax0{=8+IeeyOAR*+b12_Lf<$d4_1MY8?=bx^jT;KFDO`ZA@;xvqh2^SLXdzN z5OJrSle8cTQ-NbgaNMCD(>(nfq=-?9l!nr>?3+~6!yzpdO{&?wL)z#XMdDI8j`vUo zs#iKco{Cw%4O`_{1Up=%)z=gbs?EMq$_$5Q#^r6BW2?;eG`2rTRxriyCOtti<7NKm z{F{hEixtZ>lj8(ke9oSjv$U^~;=nGRNZ-3!f}U%z;w-f09O6OJns^}XtkrLTP8y(- z2I!;#I%$AT8laN~=%fKUX@E`|ppypZqyajiV`hZTXn;=Wuo_2cJEk$jKWcBIb~^ch z`XS=cWXX{oK>Hvl_|zvl6k~ltnhBqrM40$(f9A<9?)dENiFZehIFZRW{?1H&0`2xM{Y<(F zcIBiylSyYp(DDc(co(Z)N5^}CFE8-r1-`t%mlyc*0$*O>%L{yYfiExcUZfs!YSGOv9>7!>UZfs!YSGOv9>7!>UZf zs!XFw^bdW@o`j7!V ziWiO`5xyxU zRInCKk8}L_t)AuS%&=)zlbMNDGF#vui{K>3tNyy*tTpa2QmOYgbFFPRbtW+TAH$zM z3Z?dbY-GPx-MXQXzI1xSTLr!3m;Rf7g?|I!i*)J5SwjU~LDne|Ed>=w51d}*Md8ox z@mHia#`ub0LXUeR=k(khOkkpJYH{ndZt98Xq0ZKREmQKZ21R{5l`sRLo}1gZ1`9E3 z<$0G+<1av(`rh@2=kOOQW8q`NI6#ABO^!dpzX$5*>I3}YccIdpkdV-(XW14xe{J%jWd($|o>l!-q(fE$t|qeK9p4ytvW zEJ|89O6#o(B1j7Y!wZ@Uqw6rFNDgm?9Vz0(bA-r0GXjkR#c47|puh<|pB5${sv2LN zHH!H2z=2is|F^nxjcqEq;`rQaI}V9Sf^psuOxAW1V>=aL5Zbknk#- zfH%a01w3P}%YNa5`hi0{kx+q#kqd8LCP zJ2}BGj;NeyEnR&w-%RAm~XG^i_~xWR{PFCsV{d)-L&dvN9ucpsZVBOZGyYJ87Xk zu_qpbbUO1Rd&ORJy1k`d?{Igb#qaQ)No^VIt6I)}i?5BX3FZ`6EIamEb?zQxN|q1G z%={c@Fh95b-93(F?hwBst8$imeFej3d(gWnd)WA+Lk@Y+{)#))T7vfv|UhVapj>{d6C=I(zvp6 zQ?jT$JYE6bVd=4`JmRf1jD+{#)`2Z0<+-M>s={=(`+Fw7GF-G|y(@oH*Z$qrEhdMN z6&5>O#s1N1pNC&iivIoTEc%x{#^@d!&dCGkBNtp}_1 zV6`5s)`Qi0uv!mR>%nR{Dbt!yJy~jG* z?xoGW+FO;kq_k*Rd9E?_+4szxNtU?G$o2k+l!CgvU4;BVGy}55)zI$_f;AVw+KwTQ)`tG-cUWC~1tF zb??X|3x>tJZk%wiaVam?9w{$VX8EC*9G&fOvW(=aTkrQ4Y>3N%`ATHKTzMs>5!S4X zw&1yKem&;frf_L|P*cqAy1u#LmS&ssC-mXv3## z4>pcA-f6lVKa<#&c&mA$`MqR1d2?NC-GvrU%P!pxgKxO5aZmgnJ8~QHCg)^!9@@rP znE}<|l)y2!49Xf^{)W^X{-vI|hjS;LC&B7iS|1TZ6qyN&qvYhb-kQ^==>RmW>t%&U$CF6l75qBhj{LB$YYnOQnLh*YBgmYG z)>2CpP6jHqMB&WyEp#9|3k_x;K|@H3!T$(aN9{4KTMQjC#QTsCQ@bb|Q~NX>%CZ2d zhP8xIq~XWN$)+*N*3%DHpe^L7SFPl)r#I%=RS~4enzSZO$iGXxlNy_-WdSN}OlZxU zk+aDBl0;fFWfysZ4j_%=ijb2;&pBuvwI`ADKD0A?7TT448`_t>2;HSQd$N~_51>y{ zr8Iw^<_u}hu;z^DoTJ%qkY@}|i`Id65h0)VYG~T0=>WC!mJRf2Q6uQkqGXp~tIpr5 zd#sgGb8w_Ztw_u8+!i3tdod{0MxI6H9qIXY-DB-=0ClRFJe>EdQ#)xGKZVR~=e%2XYpf{gSk?Q`<(T?!7H=-r@A%7D{c=mbnGp7MZ=1 zw7m=dEL29Si_`_E*j^X4&qIfa_mJ}Bk&YE8E4vfJUW;yqJhAv@q?pkiYKy3~NKcK{i6oMkL!_mXE3Dr2!%r|zZ31>ysm zrl>cirKPB4fw*XxQbUwVY0XnwtCVi(=b+9xsB`WkCuf=J zUL7KSgSd?Qkj^sDG;DnPbRYfFu1drmbR34I+6=w|Y#sMX@j8 z3bUB?SIxzW8+eCmJI;^AnF}nw18&@oJIRx><1W@C$L)9y@l)(hGn`A1*QwsL;|6PN zzq8{e_5Rt8JIM2y9p{)bBWlN8%FiLEmYf{ohc-{2d@X(K$k7>p?V&nEC!dJ)Iu!pFDE<#CW=EdTOR?I(=l)-|BxNl}}C4=BUVc zf}5I5zj|zX%HPniHrCM4pbH$Z#2uKJd}W#!Xick=JiVoPiaVl?su|^HdOn01`dI^L z&>=#+pY-E&$O+=x)oJq0@aYuXDP+j!Nm4cvOCvE&T0fj4d_F-u&CN7T&KZ48!ris@R|xdsBvO^W=g)K zfvYH|Q@=Wy7T)8$yr+~n@2+zEK^ZxtI&TbIJfmJ$Z-9w^u0B+MQg_s+>T|ih5?5V6Z9e2!)0?o2ILW> zAwHO|E}?=i1YL;dmeL~sKJ61^A&5d^8DjG+!HYi=>>%D>I6+W?U<5%3{N#dE znfC=3h_4aJ|5;Pf=`J(uN48EcYLToyEz%Ey7Gy>iUr`8;XJ9@FJ`i*u*g!CWU;#k_ zf&&Bv2nG-YApT#xzxaN)mMGpvJihpQJ!d0LJiYWF_=(numly9Yy#Ts`YxRP7bMfWU zW8%lfe~b4P-z}b7B;3&YN*VFiGK!b&o|Z8ZPc430MooNl4xF=aX6-(c-ksNTyh+MM z@-0wGJhFIV@x$VUtu*n$Ps(3l6vh8a>J>_6o=JT=@AJAm&#~$ee=T}m)+1o`-U7Pd ziP6WcYZLD*x{7BOL?K#A`y^G`FD<@H>cUg0V$VEw>K+z*wnoG1wK-aimw!eEIK<|P zpA|1FI$qX3Hjm!FhHcz|1J2VLiQS8ypa9A}*3K|LrdD|(ZUvhhR&S}Fst?q4HW5@A z>x@3*>&EwuOU4!BmhlO9ZjM=IhRt?!hxs!7AWsK11a{}DwFEf@Awh8B)#p^0&`5|A z*pmW3OlTy;34#{72|a{c-(2Hd z6I=y@brX6Bg7bIl`ZH=TSJ68|=?tYZl*nkU9wPH0@*W}&R8L3{oEn>S)0>>-LJJna z5`x*E)KgG;H=&0hD1A4fpZH#`Qht`ySyE@=&b~mR=<{^1Nk2ZVp`hn(LJy&z@O&Gj zrlh;g_hf$xY76j0 zr2qs;{8kH30A7$*7dr)ez}gj9`VPF-F7TkA`@Kw_RJlLH_^~K}pdLujM9CH`yN#!c r4odb?VgO7%3@#m`jAETFLSD18YukV-(B6-Ig7C%r$$sv~F|PjtkKA!@ literal 0 HcmV?d00001 diff --git a/website/public/fonts/CutiePi/LICENSE.txt b/website/public/fonts/CutiePi/LICENSE.txt new file mode 100644 index 00000000..dbc024ae --- /dev/null +++ b/website/public/fonts/CutiePi/LICENSE.txt @@ -0,0 +1,7 @@ + +100% free for personal and commercial use. +However it's limited on basic latin only, +contact riedjal@gmail.com for full glyph (based on ANSI encoding) +and OTF features (alternates). + +src: https://www.dafont.com/cute-aurora.font?text=%24%3A+s%28%22bd%285%2C8%29%22%29.superimpose%28x+%3D%3E+x.note%28%22c2%22%29.midi%28device%29%29 \ No newline at end of file diff --git a/website/src/repl/components/Header.jsx b/website/src/repl/components/Header.jsx index 2e8b3094..20b4aca4 100644 --- a/website/src/repl/components/Header.jsx +++ b/website/src/repl/components/Header.jsx @@ -11,17 +11,19 @@ export function Header({ context, embedded = false }) { const { started, pending, isDirty, activeCode, handleTogglePlay, handleEvaluate, handleShuffle, handleShare } = context; const isEmbedded = typeof window !== 'undefined' && (embedded || window.location !== window.parent.location); - const { isZen, isButtonRowHidden, isCSSAnimationDisabled } = useSettings(); + const { isZen, isButtonRowHidden, isCSSAnimationDisabled, fontFamily } = useSettings(); return (