+
+ 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/build/README.txt b/build/README.txt
new file mode 100644
index 0000000..6f23902
--- /dev/null
+++ b/build/README.txt
@@ -0,0 +1,107 @@
+# Music Editor
+
+
+
+[![Release](https://img.shields.io/github/release/theodorechu/music-editor.svg)](https://github.com/theodorechu/music-editor/releases)
+[![License](https://img.shields.io/github/license/theodorechu/music-editor?color=blue)](https://github.com/theodorechu/music-editor/blob/main/LICENSE)
+[![Status](https://img.shields.io/badge/status-open%20beta-orange.svg)](https://musiceditor.net/#installation)
+[![Cost](https://img.shields.io/badge/cost-free-darkgreen.svg)](https://musiceditor.net/#installation)
+[![GitHub issues](https://img.shields.io/github/issues/theodorechu/music-editor.svg)](https://github.com/theodorechu/music-editor/issues/)
+[![Slack](https://img.shields.io/badge/slack-standardnotes-CC2B5E.svg?style=flat&logo=slack)](https://standardnotes.org/slack)
+[![Downloads](https://img.shields.io/github/downloads/theodorechu/music-editor/total.svg?style=flat)](https://github.com/theodorechu/music-editor/releases)
+[![GitHub Stars](https://img.shields.io/github/stars/theodorechu/music-editor?style=social)](https://github.com/theodorechu/music-editor)
+
+
+
+## Introduction
+
+The Music Editor is an **unofficial** [editor](https://standardnotes.org/help/77/what-are-editors) for [Standard Notes](https://standardnotes.org), a free, [open-source](https://standardnotes.org/knowledge/5/what-is-free-and-open-source-software), and [end-to-end encrypted](https://standardnotes.org/knowledge/2/what-is-end-to-end-encryption) notes app.
+
+You can find the demo at [demo.musiceditor.net](https://demo.musiceditor.net).
+
+The Music Editor is powered by [VexTab](https://github.com/0xfe/vextab) and [VexFlow](https://github.com/0xfe/vexflow). A tutorial on how to use VexTab is available [here](https://vexflow.com/vextab/tutorial.html).
+
+## Installation
+
+1. Register for an account at Standard Notes using the [Desktop App](https://standardnotes.org/download) or [Web app](https://app.standardnotes.org). Remember to use a strong and memorable password.
+2. In the bottom left corner of the app, click **Extensions**.
+3. Click **Import Extension**.
+4. Paste this into the input box:
+ ```
+ https://notes.theochu.com/p/Sfq1jJV0X2
+ ```
+ or paste this into the input box on **desktop**:
+ ```
+ https://raw.githubusercontent.com/TheodoreChu/music-editor/main/public/demo.ext.json
+ ```
+5. Press Enter or Return on your keyboard.
+6. Click **Install**.
+7. At the top of your note, click **Editor**, then click **Music Editor**.
+8. When prompted to activate the extension, click **Continue**.
+
+After you have installed the editor on the web or desktop app, it will automatically sync to your [mobile app](https://standardnotes.org/download) after you sign in.
+
+## Development
+
+This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
+
+### Available Scripts
+
+In the project directory, you can run:
+
+#### `yarn start`
+
+Runs the app in the development mode.
+Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
+
+The page will reload if you make edits.
+You will also see any lint errors in the console.
+
+#### `yarn test`
+
+Launches the test runner in the interactive watch mode.
+See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
+
+#### `yarn build`
+
+Builds the app for production to the `build` folder.
+It correctly bundles React in production mode and optimizes the build for the best performance.
+
+The build is minified and the filenames include the hashes.
+Your app is ready to be deployed!
+
+See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
+
+#### `yarn eject`
+
+**Note: this is a one-way operation. Once you `eject`, you can't go back!**
+
+If you aren't satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
+
+Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you're on your own.
+
+You don't have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn't feel obligated to use this feature. However we understand that this tool wouldn't be useful if you couldn't customize it when you are ready for it.
+
+#### Learn More
+
+You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
+
+To learn React, check out the [React documentation](https://reactjs.org/).
+
+## License
+
+Copyright (c) Theodore Chu. All Rights Reserved. Licensed under [AGPL-3.0](https://github.com/TheodoreChu/music-editor/blob/main/LICENSE) or later.
+
+## Acknowledgements
+
+Early stages of this editor were based heavily on the Standard Notes [Markdown Basic Editor](https://github.com/standardnotes/markdown-basic). The Markdown Basic Editor is licensed under AGPL-3.0 and is available for use through [Standard Notes Extended](https://standardnotes.org/extensions).
+
+## Further Resources
+
+- [GitHub](https://github.com/TheodoreChu/music-editor) for the source code of the Music Editor
+- [GitHub Issues](https://github.com/TheodoreChu/music-editor/issues) for reporting issues concerning the Music Editor
+- [Docs](https://docs.theochu.com/music-editor) for how to use the Music Editor
+- [Contact](https://theochu.com/contact) for how to contact the developer of the Music Editor
+- [Music Editor To do List](https://github.com/TheodoreChu/music-editor/projects/1) for the roadmap of the Music Editor
+- [Standard Notes Slack](https://standardnotes.org/slack) for connecting with the Standard Notes Community
+- [Standard Notes Help](https://standardnotes.org/help) for help with issues related to Standard Notes but unrelated to this editor
diff --git a/build/asset-manifest.json b/build/asset-manifest.json
new file mode 100644
index 0000000..657d0ba
--- /dev/null
+++ b/build/asset-manifest.json
@@ -0,0 +1,25 @@
+{
+ "files": {
+ "main.css": "./static/css/main.8cc0684d.chunk.css",
+ "main.js": "./static/js/main.7e51c466.chunk.js",
+ "main.js.map": "./static/js/main.7e51c466.chunk.js.map",
+ "runtime-main.js": "./static/js/runtime-main.63a93a4c.js",
+ "runtime-main.js.map": "./static/js/runtime-main.63a93a4c.js.map",
+ "static/css/2.ee6590b6.chunk.css": "./static/css/2.ee6590b6.chunk.css",
+ "static/js/2.c20f73b8.chunk.js": "./static/js/2.c20f73b8.chunk.js",
+ "static/js/2.c20f73b8.chunk.js.map": "./static/js/2.c20f73b8.chunk.js.map",
+ "static/js/3.343c64f0.chunk.js": "./static/js/3.343c64f0.chunk.js",
+ "static/js/3.343c64f0.chunk.js.map": "./static/js/3.343c64f0.chunk.js.map",
+ "index.html": "./index.html",
+ "static/css/2.ee6590b6.chunk.css.map": "./static/css/2.ee6590b6.chunk.css.map",
+ "static/css/main.8cc0684d.chunk.css.map": "./static/css/main.8cc0684d.chunk.css.map",
+ "static/js/2.c20f73b8.chunk.js.LICENSE.txt": "./static/js/2.c20f73b8.chunk.js.LICENSE.txt"
+ },
+ "entrypoints": [
+ "static/js/runtime-main.63a93a4c.js",
+ "static/css/2.ee6590b6.chunk.css",
+ "static/js/2.c20f73b8.chunk.js",
+ "static/css/main.8cc0684d.chunk.css",
+ "static/js/main.7e51c466.chunk.js"
+ ]
+}
\ No newline at end of file
diff --git a/build/demo.ext.json b/build/demo.ext.json
new file mode 100644
index 0000000..2c81055
--- /dev/null
+++ b/build/demo.ext.json
@@ -0,0 +1,13 @@
+{
+ "identifier": "net.musiceditor.demo",
+ "name": "Music Editor",
+ "content_type": "SN|Component",
+ "area": "editor-editor",
+ "version": "0.1.0",
+ "description": "Music Editor for Standard Notes. Write music with VexTab and VexFlow",
+ "url": "https://demo.musiceditor.net",
+ "download_url": "https://github.com/TheodoreChu/music-editor/releases/download/v0.1.0/music-editor-build-v0.1.0.zip",
+ "latest_url": "https://raw.githubusercontent.com/TheodoreChu/music-editor/main/public/demo.ext.json",
+ "marketing_url": "https://musiceditor.net",
+ "thumbnail_url": ""
+}
diff --git a/build/icon-16x16.png b/build/icon-16x16.png
new file mode 100644
index 0000000000000000000000000000000000000000..5436527d72389a79b850f1aba4fd9d797f0dce91
GIT binary patch
literal 303
zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>``W
z$lZxy-8q?;Kn_c~qpu?a!^VE@KZ&eB{t-_X$B+ufwUh1&HW>)CoS)C6(wsXSqFo+Q81g!C!R!k{t}`
z1?>I{pERW&3F){P=(MpR=4|C^(+meynKcc5)>ZR2nq_6=t&t6W7IMH}O87zM5ANFH
zQhuWieKU4$T-vkbm|eqJ@x1~kJkPf8Qhw4l^XuA~y?h(a=sj!y85}Sb4q9e0BS^W3jhEB
literal 0
HcmV?d00001
diff --git a/build/icon-32x32.png b/build/icon-32x32.png
new file mode 100644
index 0000000000000000000000000000000000000000..c7aef9e9c80018e1105f3882e35e87d6e03f4b9b
GIT binary patch
literal 431
zcmV;g0Z{&lP)%MEm$1vT>Cn4$_H`EAjo0b;Fin+x=4aE>Ezi$A5wfNa?um+Y2yiZBc!
z6VW{a!u<-wkT=(r&~azn9hf8Sb15{m4owCKSD#8Pv9aS^1F1*^`+~`$3bQN*r1;F!
zKYG+jsBXPaWB8e{_Rc){@4ciePw_qCFlxqxP7sGB(pH}g;ePwdT*cp>^ch@&WQ&1J
ZoB+K5P^FW&)YSk0002ovPDHLkV1iH@wf6u3
literal 0
HcmV?d00001
diff --git a/build/icon-64x64.png b/build/icon-64x64.png
new file mode 100644
index 0000000000000000000000000000000000000000..651424979a54db901ac6c9b0d8b9e832ad81ec84
GIT binary patch
literal 732
zcmV<20wev2P)@~0drDELIAGL9O(c600d`2O+f$vv5yPNy^h(5NdWDn4rhTL2ql0{RusxQtewNzhQ0(4I5=FO
zr`hd-4*|R+D_?L6Fo)cOli?b?2!w^Iz0%}?)C-{s(&4STZq)sK*B?kp0GeHLP&-?y
zdrrhGK!xVnWhEv7$icO`mXHE?CzJp>S!stiU>~^6q0qzkg+;u>5WC1X6
zvH%!3SpW>2EC2>hiv0j;ug!31s0wvozf-&;AWIyMqK=IVIw#n*jB(BykH%730@Q2#
z0CR&i6#>ZkIXsYp00lfbPq+v$LO=cf1w3LZKmoZ9cSlAEhR)(=wT;0`fk;k~XuJ7>
zUG{a^1r`otcG?BH)B%qO_i2go2M?y4TLQH2E)fm^&s?7w{0(98o@7r6Kzpx1SiHB&
zPYF;UJe;RN+oqds0?^tQ2+taPG>X|KfcNa%krF&qZNJqffIu9S;1S^!hAhEXfVdPw
zgn<1ku&z>D>EmU{HIrAhJ;9F3_St9f&Hf5Jm^MSGbQiE>0U
O0000KU2Qrx_tTKk^24hJ@sE>ksK!fmh0e>L%xWXTfgm*-AO
zZF|W*%cZw&ckA-~4d1%2&1=+U`lu^#Mv3c*#Jcpg^*nE%=&J`U+ta;~>C(fFeP6A2
zte<;fl62>m2C0ALmfs44&MO?>;#OE%k#4jr?cBkj17g85xpuTga2d}$7=BJEv1pwv
zE6W>|CC106>)k&xY0r@!l_lD3H{%|>uVlVGD{SNCz)35Bp}^qj>gTe~DWM4fmLiR{
literal 0
HcmV?d00001
diff --git a/build/icon192.png b/build/icon192.png
new file mode 100644
index 0000000000000000000000000000000000000000..7f05f8ddd78f44c5a492c970c4c563d6205d917d
GIT binary patch
literal 1906
zcmb_dc{mh$7yiu{j6sczXb>qeQ`c6uvW%sf5Lsqil*#gy!iNwVjV7*3YG|>1%7iR~
zxw0ojbF+0N%e|Il%hp(Cn6ixB<^Fg7|IYKAbDsA-=Q-zj|9bD++YuxYXaoR2((1gW
z<8Ei~C0t~;Iu7}Z?l!TY^R6KPh)eG!1U$=-+a)0(js$b?szYIB7r=bXY|Q{DOA_Do
z6b3+4)XLI~7y;o8({Byxp?)3HG*)EGqtcbEWt
zIbOQ;zJEG
zk4nVpj7?Fx;!d!@uNw&_k4fChYn(ouEC*q``5&v68paFoVt4@t4pI*+1QY4g}m1sKSLPV?!A!^2Ev&>$01
z_6z~xtExBVebAMnQ52Kr`^HKp{X;XOK~K)?gI*#WS5xGga9J9nZgH^lQ%^jY#7t||
zUb)|Gd;A57HwP{aS
zL6XHVZ#!~%P6tXO{`T};e|CkS4GF!VXDL+|y>z
zJJ&THgrPtN$#R0Qy>|8&sgBZ^?-Pr>7D@Zq=29q3|%gpdCqjLn%YK
zqM-cXq3cBeV$eyK8)lhBGoMzklI&e$>UD3wU?qdOfAXN(4k
z@Ohea*_?ozBK(h3jy{a7c4lWEgx~sYv-qnWGbL?Erwcne)lNzj^8u#OEd;5cU%={E
zFk{CM#*TBIc>3JH49v=&Ca;d4faA8Jx*G|PZsz8m{ase=DuphuIUie67UmmEm_pMg
z7zBEY6t__P&DMO**1p_gcx;)Tgt^pjF+2GYoi7LHDhVZ{=ORA+**@G%GMDK*v%PGe
znVf&GHooM_flJG4+^mF@+KI?OZZ($aUa#;}6WyHtr0a9iqSh9M_rJ}~fY!7gwyNH1
zhP#b#e{bR+PguAOVoxO)TU@v;X3f4NvPcGmMr
z52V!aE;6;nyHh$(f?Z`GQxXdEMC+6LkCP&so&S8oyIhfIl^}#BF1*bIlRkag
zR@%blg%^>1J>pNB_TiA7ncjx=*Af(Ien&*fE9ULnhTbB|@!h7fN>dij5Rau!f~L|n
zQR8a>eMC0=hbJrDOPE&AygkqsM?TezU|%%1TTvppRgk4RLd&3C@R~KktwC(G9Hf*(
zjehhzyy#Lgtrd<#23L~m1wxc_h=_;awE3%TBI9*iyzy%4Aby5OLPwsg&8=pnyO}+1
zG7#c(Z#VcOh=a|1y3VDsSz_O`Hq#nK>~~dGSJ8-`>u0_2yC;7&;%-iEw|78FTYe#<
z&3Epv+2k3IOV&ay1y6Lbtm2C-QoglslVNY+9r={rZyR6Ky?3|T)A~ev$DAuSWVJP-
z2dKoAHjuJ
zmo&nP+OjW+TX+9xYdRmk^TPJ_YphGo9sC?>is$|+rsakM^E7YmhG3m!d&2L|{7_rt
z5(iT}9u-kTm7}EeJIPNC-sccc$jw!*tmubjQ&=2Pqm8Zob*7`(zwDG2c@2V#3Vq4*
z1O>YSbBD|3(NzX7ojaFqZ6
literal 0
HcmV?d00001
diff --git a/build/icon512.png b/build/icon512.png
new file mode 100644
index 0000000000000000000000000000000000000000..716028f187a6b1efca09041ab08dc5ef70b326fa
GIT binary patch
literal 5483
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
Y!noCN>CFc8Cl$b<0~Y&p_c>qvFBU5L{Qv*}
literal 0
HcmV?d00001
diff --git a/build/index.html b/build/index.html
new file mode 100644
index 0000000..dee24bd
--- /dev/null
+++ b/build/index.html
@@ -0,0 +1 @@
+Music Editor You need to enable JavaScript to run this app.
\ No newline at end of file
diff --git a/build/manifest.json b/build/manifest.json
new file mode 100644
index 0000000..abf86e9
--- /dev/null
+++ b/build/manifest.json
@@ -0,0 +1,40 @@
+{
+ "short_name": "Music Editor",
+ "name": "Music Editor for Standard Notes",
+ "icons": [
+ {
+ "src": "icon-16x16.png",
+ "sizes": "16x16",
+ "type": "image/png"
+ },
+ {
+ "src": "icon-32x32.png",
+ "sizes": "32x32",
+ "type": "image/png"
+ },
+ {
+ "src": "icon.png",
+ "sizes": "24x24",
+ "type": "image/png"
+ },
+ {
+ "src": "icon-64x64.png",
+ "sizes": "64x64",
+ "type": "image/png"
+ },
+ {
+ "src": "icon192.png",
+ "type": "image/png",
+ "sizes": "192x192"
+ },
+ {
+ "src": "icon512.png",
+ "type": "image/png",
+ "sizes": "512x512"
+ }
+ ],
+ "start_url": ".",
+ "display": "standalone",
+ "theme_color": "#000000",
+ "background_color": "#ffffff"
+}
diff --git a/build/package.json b/build/package.json
new file mode 100644
index 0000000..c502d0f
--- /dev/null
+++ b/build/package.json
@@ -0,0 +1,24 @@
+{
+ "name": "music-editor",
+ "version": "0.1.0",
+ "description": "Music Editor for Standard Notes. Write music with VexTab and VexFlow",
+ "keywords": [
+ "Music Editor",
+ "Standard Notes",
+ "VexTab",
+ "VexFlow"
+ ],
+ "private": true,
+ "author": "Theodore Chu",
+ "license": "AGPL-3.0-or-later",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/TheodoreChu/music-editor.git"
+ },
+ "bugs": {
+ "url": "https://github.com/TheodoreChu/music-editor/issues"
+ },
+ "sn": {
+ "main": "build/index.html"
+ }
+}
diff --git a/build/robots.txt b/build/robots.txt
new file mode 100644
index 0000000..e9e57dc
--- /dev/null
+++ b/build/robots.txt
@@ -0,0 +1,3 @@
+# https://www.robotstxt.org/robotstxt.html
+User-agent: *
+Disallow:
diff --git a/build/sample.ext.json b/build/sample.ext.json
new file mode 100644
index 0000000..3189f53
--- /dev/null
+++ b/build/sample.ext.json
@@ -0,0 +1,13 @@
+{
+ "identifier": "net.musiceditor.develop-local",
+ "name": "Music Editor - Develop Local",
+ "content_type": "SN|Component",
+ "area": "editor-editor",
+ "version": "0.1.0",
+ "description": "Music Editor for Standard Notes. Write music with VexTab and VexFlow",
+ "url": "http://localhost:3000",
+ "download_url": "",
+ "latest_url": "",
+ "marketing_url": "https://musiceditor.net",
+ "thumbnail_url": ""
+}
diff --git a/build/static/css/2.ee6590b6.chunk.css b/build/static/css/2.ee6590b6.chunk.css
new file mode 100644
index 0000000..c985c99
--- /dev/null
+++ b/build/static/css/2.ee6590b6.chunk.css
@@ -0,0 +1,2 @@
+:root{--sn-stylekit-base-font-size:13px;--sn-stylekit-font-size-p:1.0rem;--sn-stylekit-font-size-editor:1.21rem;--sn-stylekit-font-size-h6:0.8rem;--sn-stylekit-font-size-h5:0.9rem;--sn-stylekit-font-size-h4:1.0rem;--sn-stylekit-font-size-h3:1.1rem;--sn-stylekit-font-size-h2:1.2rem;--sn-stylekit-font-size-h1:1.3rem;--sn-stylekit-neutral-color:#989898;--sn-stylekit-neutral-contrast-color:#fff;--sn-stylekit-info-color:#086dd6;--sn-stylekit-info-contrast-color:#fff;--sn-stylekit-success-color:#2b9612;--sn-stylekit-success-contrast-color:#fff;--sn-stylekit-warning-color:#f6a200;--sn-stylekit-warning-contrast-color:#fff;--sn-stylekit-danger-color:#f80324;--sn-stylekit-danger-contrast-color:#fff;--sn-stylekit-shadow-color:#c8c8c8;--sn-stylekit-background-color:#fff;--sn-stylekit-border-color:#e3e3e3;--sn-stylekit-foreground-color:#000;--sn-stylekit-contrast-background-color:#f6f6f6;--sn-stylekit-contrast-foreground-color:#2e2e2e;--sn-stylekit-contrast-border-color:#e3e3e3;--sn-stylekit-secondary-background-color:#f6f6f6;--sn-stylekit-secondary-foreground-color:#2e2e2e;--sn-stylekit-secondary-border-color:#e3e3e3;--sn-stylekit-secondary-contrast-background-color:#e3e3e3;--sn-stylekit-secondary-contrast-foreground-color:#2e2e2e;--sn-styleki--secondary-contrast-border-color:#a2a2a2;--sn-stylekit-editor-background-color:var(--sn-stylekit-background-color);--sn-stylekit-editor-foreground-color:var(--sn-stylekit-foreground-color);--sn-stylekit-paragraph-text-color:#454545;--sn-stylekit-input-placeholder-color:#a8a8a8;--sn-stylekit-input-border-color:#e3e3e3;--sn-stylekit-scrollbar-thumb-color:#dfdfdf;--sn-stylekit-scrollbar-track-border-color:#e7e7e7;--sn-stylekit-general-border-radius:2px;--sn-stylekit-simplified-chinese-font:"Microsoft Yahei","微软雅黑体";--sn-stylekit-monospace-font:"Ubuntu Mono",courier,monospace;--sn-stylekit-sans-serif-font:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",var(--sn-stylekit-simplified-chinese-font),sans-serif}.sn-component{font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue","Microsoft Yahei","微软雅黑体",sans-serif;font-family:var(--sn-stylekit-sans-serif-font);-webkit-font-smoothing:antialiased;color:#000;color:var(--sn-stylekit-foreground-color)}.sn-component .sk-panel{box-shadow:0 2px 5px #c8c8c8;box-shadow:0 2px 5px var(--sn-stylekit-shadow-color);background-color:#fff;background-color:var(--sn-stylekit-background-color);border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-border-color);border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);display:flex;flex-direction:column;overflow:auto;flex-grow:1}.sn-component .sk-panel a:hover{text-decoration:underline}.sn-component .sk-panel.static{box-shadow:none;border:none;border-radius:0}.sn-component .sk-panel .sk-panel-header{flex-shrink:0;display:flex;justify-content:space-between;padding:1.1rem 2rem;border-bottom:1px solid #e3e3e3;border-bottom:1px solid var(--sn-stylekit-contrast-border-color);background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color);align-items:center}.sn-component .sk-panel .sk-panel-header .sk-panel-header-title{font-size:1.3rem;font-size:var(--sn-stylekit-font-size-h1);font-weight:500}.sn-component .sk-panel .sk-panel-header .close-button{font-weight:700}.sn-component .sk-panel .sk-footer,.sn-component .sk-panel .sk-panel-footer{padding:1rem 2rem;border-top:1px solid #e3e3e3;border-top:1px solid var(--sn-stylekit-border-color);box-sizing:border-box}.sn-component .sk-panel .sk-footer.extra-padding,.sn-component .sk-panel .sk-panel-footer.extra-padding{padding:2rem}.sn-component .sk-panel .sk-footer .left,.sn-component .sk-panel .sk-panel-footer .left{text-align:left;display:block}.sn-component .sk-panel .sk-footer .right,.sn-component .sk-panel .sk-panel-footer .right{text-align:right;display:block}.sn-component .sk-panel .sk-panel-content{padding:1.6rem 2rem 0;flex-grow:1;overflow:scroll;height:100%;overflow-y:auto!important;overflow-x:auto!important}.sn-component .sk-panel .sk-panel-content .sk-li,.sn-component .sk-panel .sk-panel-content .sk-p{color:#454545;color:var(--sn-stylekit-paragraph-text-color);line-height:1.3}.sn-component .sk-panel-section{padding-bottom:1.6rem;display:flex;flex-direction:column}.sn-component .sk-panel-section.sk-panel-hero{text-align:center}.sn-component .sk-panel-section .sk-p:last-child{margin-bottom:0}.sn-component .sk-panel-section:not(:last-child){margin-bottom:1.5rem;border-bottom:1px solid #e3e3e3;border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-panel-section:not(:last-child).no-border{border-bottom:none}.sn-component .sk-panel-section:last-child{margin-bottom:.5rem}.sn-component .sk-panel-section.no-bottom-pad{padding-bottom:0;margin-bottom:0}.sn-component .sk-panel-section .sk-panel-section-title{margin-bottom:.5rem;font-weight:700;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-panel-section .sk-panel-section-outer-title{border-bottom:1px solid #e3e3e3;border-bottom:1px solid var(--sn-stylekit-border-color);padding-bottom:.9rem;margin-top:2.1rem;margin-bottom:15px;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-panel-section .sk-panel-section-subtitle{font-size:.9rem;font-size:var(--sn-stylekit-font-size-h5);margin-bottom:2px}.sn-component .sk-panel-section .sk-panel-section-subtitle.subtle{font-weight:400;opacity:.6}.sn-component .sk-panel-section .text-content .sk-p{margin-bottom:1rem}.sn-component .sk-panel-section .text-content p:first-child{margin-top:.3rem}.sn-component .sk-panel-row{display:flex;justify-content:space-between;align-items:center;padding-top:.4rem}.sn-component .sk-panel-row.centered{justify-content:center}.sn-component .sk-panel-row.justify-right{justify-content:flex-end}.sn-component .sk-panel-row.justify-left{justify-content:flex-start}.sn-component .sk-panel-row.align-top{align-items:flex-start}.sn-component .sk-panel-row .sk-panel-column.stretch{width:100%}.sn-component .sk-panel-row.default-padding,.sn-component .sk-panel-row:not(:last-child){padding-bottom:.4rem}.sn-component .sk-panel-row.condensed{padding-top:.2rem;padding-bottom:.2rem}.sn-component .sk-panel-row .sk-p{margin:0;padding:0}.sn-component .vertical-rule{background-color:#e3e3e3;background-color:var(--sn-stylekit-border-color);height:1.5rem;width:1px}.sn-component .sk-panel-form{width:100%}.sn-component .sk-panel-form.half{width:50%}.sn-component .sk-panel-form .form-submit{margin-top:.15rem}.sn-component .right-aligned{justify-content:flex-end;text-align:right}.sn-component .sk-menu-panel{background-color:#fff;background-color:var(--sn-stylekit-background-color);border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-contrast-border-color);border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);overflow:scroll;-webkit-user-select:none;-ms-user-select:none;user-select:none;overflow-y:auto!important;overflow-x:auto!important}.sn-component .sk-menu-panel .sk-menu-panel-header{padding:.8rem 1rem;border-bottom:1px solid #e3e3e3;border-bottom:1px solid var(--sn-stylekit-contrast-border-color);background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color);display:flex;justify-content:space-between;align-items:center}.sn-component .sk-menu-panel .sk-menu-panel-header-title{font-weight:700;font-size:1rem;font-size:var(--sn-stylekit-font-size-h4)}.sn-component .sk-menu-panel .sk-menu-panel-header-subtitle{margin-top:.2rem;opacity:.6}.sn-component .sk-menu-panel .sk-menu-panel-row{padding:1rem;cursor:pointer;display:flex;flex-direction:row;justify-content:space-between;border-bottom:1px solid #e3e3e3;border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-menu-panel .sk-menu-panel-row:hover{background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color);border-color:#e3e3e3;border-color:var(--sn-stylekit-contrast-border-color)}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column{display:flex;justify-content:center;flex-direction:column}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column:not(:first-child){padding-left:1rem;padding-right:.15rem}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column.stretch{width:100%}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrows{margin-top:1rem}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-row,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrow{border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-contrast-border-color);margin-top:-1px}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-row:hover,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrow:hover{background-color:#fff;background-color:var(--sn-stylekit-background-color)}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .left{display:flex}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-box .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-box .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-button .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-button .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-box .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-button .sk-panel-section-subtitle{font-size:.8rem;font-size:var(--sn-stylekit-font-size-h6);font-weight:400}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-panel-section-subtitle{font-size:1rem;font-size:var(--sn-stylekit-font-size-p);font-weight:700}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-sublabel{font-size:.9rem;font-size:var(--sn-stylekit-font-size-h5);margin-top:.2rem;opacity:.6}.sn-component .red{color:#f80324;color:var(--sn-stylekit-danger-color)}.sn-component .tinted{color:#086dd6;color:var(--sn-stylekit-info-color)}.sn-component .selectable{user-select:text!important;-ms-user-select:text!important;-moz-user-select:text!important;-webkit-user-select:text!important}.sn-component .sk-h1,.sn-component .sk-h2,.sn-component .sk-h3,.sn-component .sk-h4,.sn-component .sk-h5{margin:0;padding:0;font-weight:400}.sn-component .sk-h1{font-weight:500;font-size:1.3rem;font-size:var(--sn-stylekit-font-size-h1);line-height:1.9rem}.sn-component .sk-h2{font-size:1.2rem;font-size:var(--sn-stylekit-font-size-h2);line-height:1.8rem}.sn-component .sk-h3{font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3);line-height:1.7rem}.sn-component .sk-h4{font-size:1rem;font-size:var(--sn-stylekit-font-size-p);line-height:1.4rem}.sn-component .sk-h5{font-size:.9rem;font-size:var(--sn-stylekit-font-size-h5)}.sn-component .sk-bold{font-weight:700}.sn-component .sk-font-small{font-size:.9rem;font-size:var(--sn-stylekit-font-size-h5)}.sn-component .sk-font-normal{font-size:1rem;font-size:var(--sn-stylekit-font-size-p)}.sn-component .sk-font-large{font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component a.sk-a{cursor:pointer;-webkit-user-select:none;-ms-user-select:none;user-select:none}.sn-component a.sk-a.disabled{color:#989898;color:var(--sn-stylekit-neutral-color);opacity:.6}.sn-component a.sk-a.boxed{border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);padding:.3rem .4rem}.sn-component a.sk-a.boxed:hover{text-decoration:none}.sn-component a.sk-a.boxed.neutral{background-color:#989898;background-color:var(--sn-stylekit-neutral-color);color:#fff;color:var(--sn-stylekit-neutral-contrast-color)}.sn-component a.sk-a.boxed.info{background-color:#086dd6;background-color:var(--sn-stylekit-info-color);color:#fff;color:var(--sn-stylekit-info-contrast-color)}.sn-component a.sk-a.boxed.warning{background-color:#f6a200;background-color:var(--sn-stylekit-warning-color);color:#fff;color:var(--sn-stylekit-warning-contrast-color)}.sn-component a.sk-a.boxed.danger{background-color:#f80324;background-color:var(--sn-stylekit-danger-color);color:#fff;color:var(--sn-stylekit-danger-contrast-color)}.sn-component a.sk-a.boxed.success{background-color:#2b9612;background-color:var(--sn-stylekit-success-color);color:#fff;color:var(--sn-stylekit-success-contrast-color)}.sn-component .wrap{word-wrap:break-word}.sn-component .sk-base{color:#000;color:var(--sn-stylekit-foreground-color)}.sn-component .contrast{color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color)}.sn-component .neutral{color:#989898;color:var(--sn-stylekit-neutral-color)}.sn-component .info{color:#086dd6;color:var(--sn-stylekit-info-color)}.sn-component .info-contrast{color:#fff;color:var(--sn-stylekit-info-contrast-color)}.sn-component .warning{color:#f6a200;color:var(--sn-stylekit-warning-color)}.sn-component .danger{color:#f80324;color:var(--sn-stylekit-danger-color)}.sn-component .success{color:#2b9612;color:var(--sn-stylekit-success-color)}.sn-component .info-i{color:#086dd6!important;color:var(--sn-stylekit-info-color)!important}.sn-component .warning-i{color:#f6a200!important;color:var(--sn-stylekit-warning-color)!important}.sn-component .danger-i{color:#f80324!important;color:var(--sn-stylekit-danger-color)!important}.sn-component .success-i{color:#2b9612!important;color:var(--sn-stylekit-success-color)!important}.sn-component .clear{background-color:transparent;border:none}.sn-component .center-text{text-align:center!important;justify-content:center!important}.sn-component p.sk-p{margin:.5rem 0}.sn-component input.sk-input{box-sizing:border-box;padding:.7rem .8rem;margin:.3rem 0;border:none;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3);width:100%;outline:0;resize:none}.sn-component input.sk-input.clear{color:#000;color:var(--sn-stylekit-foreground-color);background-color:transparent;border:none}.sn-component input.sk-input.no-border{border:none}.sn-component .sk-label,.sn-component .sk-panel-section .sk-panel-section-subtitle{font-weight:700}.sn-component .sk-label.no-bold,.sn-component .sk-panel-section .no-bold.sk-panel-section-subtitle{font-weight:400}.sn-component .sk-panel-section label.sk-panel-section-subtitle,.sn-component label.sk-label{margin:.7rem 0;display:block}.sn-component .sk-panel-section label.sk-panel-section-subtitle input[type=checkbox],.sn-component input[type=radio],.sn-component label.sk-label input[type=checkbox]{width:auto;margin-right:.45rem;vertical-align:middle}.sn-component .sk-horizontal-group>*,.sn-component .sk-input-group>*{display:inline-block;vertical-align:middle}.sn-component .sk-horizontal-group>:not(:first-child),.sn-component .sk-input-group>:not(:first-child){margin-left:.9rem}.sn-component .sk-border-bottom{border-bottom:1px solid #e3e3e3;border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-checkbox-group{padding-top:.5rem;padding-bottom:.3rem}.sn-component ::-webkit-input-placeholder{color:#a8a8a8;color:var(--sn-stylekit-input-placeholder-color)}.sn-component ::placeholder{color:#a8a8a8;color:var(--sn-stylekit-input-placeholder-color)}.sn-component :-ms-input-placeholder{color:#a8a8a8;color:var(--sn-stylekit-input-placeholder-color)}.sn-component ::-ms-input-placeholder{color:#a8a8a8;color:var(--sn-stylekit-input-placeholder-color)}.sn-component .sk-button-group.stretch{display:flex;width:100%}.sn-component .sk-button-group.stretch .sk-box,.sn-component .sk-button-group.stretch .sk-button{display:block;flex-grow:1;text-align:center}.sn-component .sk-button-group .sk-box,.sn-component .sk-button-group .sk-button{display:inline-block;vertical-align:middle}.sn-component .sk-button-group .sk-box:not(:last-child),.sn-component .sk-button-group .sk-button:not(:last-child){margin-right:5px}.sn-component .sk-button-group .sk-box:not(:last-child).featured,.sn-component .sk-button-group .sk-button:not(:last-child).featured{margin-right:8px}.sn-component .sk-segmented-buttons{display:flex;flex-direction:row}.sn-component .sk-segmented-buttons .sk-box,.sn-component .sk-segmented-buttons .sk-button{border-radius:0;white-space:nowrap;margin:0;margin-left:0!important;margin-right:0!important}.sn-component .sk-segmented-buttons .sk-box:not(:last-child),.sn-component .sk-segmented-buttons .sk-button:not(:last-child){border-right:none;border-radius:0}.sn-component .sk-segmented-buttons .sk-box:first-child,.sn-component .sk-segmented-buttons .sk-button:first-child{border-top-left-radius:2px;border-top-left-radius:var(--sn-stylekit-general-border-radius);border-bottom-left-radius:2px;border-bottom-left-radius:var(--sn-stylekit-general-border-radius);border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.sn-component .sk-segmented-buttons .sk-box:last-child,.sn-component .sk-segmented-buttons .sk-button:last-child{border-top-right-radius:2px;border-top-right-radius:var(--sn-stylekit-general-border-radius);border-bottom-right-radius:2px;border-bottom-right-radius:var(--sn-stylekit-general-border-radius);border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}.sn-component .sk-box-group .sk-box{display:inline-block}.sn-component .sk-box-group .sk-box:not(:last-child){margin-right:5px}.sn-component .sk-a.button{text-decoration:none}.sn-component .sk-box,.sn-component .sk-button{display:table;padding:.5rem .7rem;font-size:.9rem;font-size:var(--sn-stylekit-font-size-h5);cursor:pointer;text-align:center;-webkit-user-select:none;-ms-user-select:none;user-select:none}.sn-component .no-hover-border.sk-box:after,.sn-component .sk-button.no-hover-border:after{color:transparent!important}.sn-component .sk-button.wide,.sn-component .wide.sk-box{padding:.3rem 1.7rem}.sn-component .sk-box>.sk-label,.sn-component .sk-button>.sk-label,.sn-component .sk-panel-section .sk-box>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-button>.sk-panel-section-subtitle{font-weight:700;display:block;text-align:center}.sn-component .big.sk-box,.sn-component .sk-button.big{font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3);padding:.7rem 2.5rem}.sn-component .sk-box{padding:2.5rem 1.5rem}.sn-component .sk-base.sk-box,.sn-component .sk-box.sk-base,.sn-component .sk-button.sk-base,.sn-component .sk-circle.sk-base{color:#000;color:var(--sn-stylekit-foreground-color);position:relative;background-color:#fff;background-color:var(--sn-stylekit-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#fff;border-color:var(--sn-stylekit-background-color)}.sn-component .sk-base.sk-box *,.sn-component .sk-box.sk-base *,.sn-component .sk-button.sk-base *,.sn-component .sk-circle.sk-base *{position:relative}.sn-component .sk-base.sk-box:before,.sn-component .sk-box.sk-base:before,.sn-component .sk-button.sk-base:before,.sn-component .sk-circle.sk-base:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff;background-color:var(--sn-stylekit-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-base.sk-box:after,.sn-component .sk-box.sk-base:after,.sn-component .sk-button.sk-base:after,.sn-component .sk-circle.sk-base:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#fff;color:var(--sn-stylekit-background-color)}.sn-component .sk-base.sk-box:hover:before,.sn-component .sk-box.sk-base:hover:before,.sn-component .sk-button.sk-base:hover:before,.sn-component .sk-circle.sk-base:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .sk-base.no-bg.sk-box,.sn-component .sk-box.sk-base.no-bg,.sn-component .sk-button.sk-base.no-bg,.sn-component .sk-circle.sk-base.no-bg{background-color:transparent}.sn-component .sk-base.no-bg.sk-box:before,.sn-component .sk-box.sk-base.no-bg:before,.sn-component .sk-button.sk-base.no-bg:before,.sn-component .sk-circle.sk-base.no-bg:before{content:none}.sn-component .sk-base.featured.sk-box,.sn-component .sk-box.sk-base.featured,.sn-component .sk-button.sk-base.featured,.sn-component .sk-circle.sk-base.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-base.featured.sk-box:before,.sn-component .sk-box.sk-base.featured:before,.sn-component .sk-button.sk-base.featured:before,.sn-component .sk-circle.sk-base.featured:before{opacity:1}.sn-component .contrast.sk-box,.sn-component .sk-box.contrast,.sn-component .sk-button.contrast,.sn-component .sk-circle.contrast{color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color);position:relative;background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#f6f6f6;border-color:var(--sn-stylekit-contrast-background-color)}.sn-component .contrast.sk-box *,.sn-component .sk-box.contrast *,.sn-component .sk-button.contrast *,.sn-component .sk-circle.contrast *{position:relative}.sn-component .contrast.sk-box:before,.sn-component .sk-box.contrast:before,.sn-component .sk-button.contrast:before,.sn-component .sk-circle.contrast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .contrast.sk-box:after,.sn-component .sk-box.contrast:after,.sn-component .sk-button.contrast:after,.sn-component .sk-circle.contrast:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#f6f6f6;color:var(--sn-stylekit-contrast-background-color)}.sn-component .contrast.sk-box:hover:before,.sn-component .sk-box.contrast:hover:before,.sn-component .sk-button.contrast:hover:before,.sn-component .sk-circle.contrast:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .contrast.no-bg.sk-box,.sn-component .sk-box.contrast.no-bg,.sn-component .sk-button.contrast.no-bg,.sn-component .sk-circle.contrast.no-bg{background-color:transparent}.sn-component .contrast.no-bg.sk-box:before,.sn-component .sk-box.contrast.no-bg:before,.sn-component .sk-button.contrast.no-bg:before,.sn-component .sk-circle.contrast.no-bg:before{content:none}.sn-component .contrast.featured.sk-box,.sn-component .sk-box.contrast.featured,.sn-component .sk-button.contrast.featured,.sn-component .sk-circle.contrast.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .contrast.featured.sk-box:before,.sn-component .sk-box.contrast.featured:before,.sn-component .sk-button.contrast.featured:before,.sn-component .sk-circle.contrast.featured:before{opacity:1}.sn-component .sk-box.sk-secondary,.sn-component .sk-button.sk-secondary,.sn-component .sk-circle.sk-secondary,.sn-component .sk-secondary.sk-box{color:#2e2e2e;color:var(--sn-stylekit-secondary-foreground-color);position:relative;background-color:#f6f6f6;background-color:var(--sn-stylekit-secondary-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#f6f6f6;border-color:var(--sn-stylekit-secondary-background-color)}.sn-component .sk-box.sk-secondary *,.sn-component .sk-button.sk-secondary *,.sn-component .sk-circle.sk-secondary *,.sn-component .sk-secondary.sk-box *{position:relative}.sn-component .sk-box.sk-secondary:before,.sn-component .sk-button.sk-secondary:before,.sn-component .sk-circle.sk-secondary:before,.sn-component .sk-secondary.sk-box:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f6f6f6;background-color:var(--sn-stylekit-secondary-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-box.sk-secondary:after,.sn-component .sk-button.sk-secondary:after,.sn-component .sk-circle.sk-secondary:after,.sn-component .sk-secondary.sk-box:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#f6f6f6;color:var(--sn-stylekit-secondary-background-color)}.sn-component .sk-box.sk-secondary:hover:before,.sn-component .sk-button.sk-secondary:hover:before,.sn-component .sk-circle.sk-secondary:hover:before,.sn-component .sk-secondary.sk-box:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .sk-box.sk-secondary.no-bg,.sn-component .sk-button.sk-secondary.no-bg,.sn-component .sk-circle.sk-secondary.no-bg,.sn-component .sk-secondary.no-bg.sk-box{background-color:transparent}.sn-component .sk-box.sk-secondary.no-bg:before,.sn-component .sk-button.sk-secondary.no-bg:before,.sn-component .sk-circle.sk-secondary.no-bg:before,.sn-component .sk-secondary.no-bg.sk-box:before{content:none}.sn-component .sk-box.sk-secondary.featured,.sn-component .sk-button.sk-secondary.featured,.sn-component .sk-circle.sk-secondary.featured,.sn-component .sk-secondary.featured.sk-box{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-box.sk-secondary.featured:before,.sn-component .sk-button.sk-secondary.featured:before,.sn-component .sk-circle.sk-secondary.featured:before,.sn-component .sk-secondary.featured.sk-box:before{opacity:1}.sn-component .sk-box.sk-secondary-contrast,.sn-component .sk-button.sk-secondary-contrast,.sn-component .sk-circle.sk-secondary-contrast,.sn-component .sk-secondary-contrast.sk-box{color:#2e2e2e;color:var(--sn-stylekit-secondary-contrast-foreground-color);position:relative;background-color:#e3e3e3;background-color:var(--sn-stylekit-secondary-contrast-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#e3e3e3;border-color:var(--sn-stylekit-secondary-contrast-background-color)}.sn-component .sk-box.sk-secondary-contrast *,.sn-component .sk-button.sk-secondary-contrast *,.sn-component .sk-circle.sk-secondary-contrast *,.sn-component .sk-secondary-contrast.sk-box *{position:relative}.sn-component .sk-box.sk-secondary-contrast:before,.sn-component .sk-button.sk-secondary-contrast:before,.sn-component .sk-circle.sk-secondary-contrast:before,.sn-component .sk-secondary-contrast.sk-box:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#e3e3e3;background-color:var(--sn-stylekit-secondary-contrast-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-box.sk-secondary-contrast:after,.sn-component .sk-button.sk-secondary-contrast:after,.sn-component .sk-circle.sk-secondary-contrast:after,.sn-component .sk-secondary-contrast.sk-box:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#e3e3e3;color:var(--sn-stylekit-secondary-contrast-background-color)}.sn-component .sk-box.sk-secondary-contrast:hover:before,.sn-component .sk-button.sk-secondary-contrast:hover:before,.sn-component .sk-circle.sk-secondary-contrast:hover:before,.sn-component .sk-secondary-contrast.sk-box:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .sk-box.sk-secondary-contrast.no-bg,.sn-component .sk-button.sk-secondary-contrast.no-bg,.sn-component .sk-circle.sk-secondary-contrast.no-bg,.sn-component .sk-secondary-contrast.no-bg.sk-box{background-color:transparent}.sn-component .sk-box.sk-secondary-contrast.no-bg:before,.sn-component .sk-button.sk-secondary-contrast.no-bg:before,.sn-component .sk-circle.sk-secondary-contrast.no-bg:before,.sn-component .sk-secondary-contrast.no-bg.sk-box:before{content:none}.sn-component .sk-box.sk-secondary-contrast.featured,.sn-component .sk-button.sk-secondary-contrast.featured,.sn-component .sk-circle.sk-secondary-contrast.featured,.sn-component .sk-secondary-contrast.featured.sk-box{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-box.sk-secondary-contrast.featured:before,.sn-component .sk-button.sk-secondary-contrast.featured:before,.sn-component .sk-circle.sk-secondary-contrast.featured:before,.sn-component .sk-secondary-contrast.featured.sk-box:before{opacity:1}.sn-component .neutral.sk-box,.sn-component .sk-box.neutral,.sn-component .sk-button.neutral,.sn-component .sk-circle.neutral{color:#fff;color:var(--sn-stylekit-neutral-contrast-color);position:relative;background-color:#989898;background-color:var(--sn-stylekit-neutral-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#989898;border-color:var(--sn-stylekit-neutral-color)}.sn-component .neutral.sk-box *,.sn-component .sk-box.neutral *,.sn-component .sk-button.neutral *,.sn-component .sk-circle.neutral *{position:relative}.sn-component .neutral.sk-box:before,.sn-component .sk-box.neutral:before,.sn-component .sk-button.neutral:before,.sn-component .sk-circle.neutral:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#989898;background-color:var(--sn-stylekit-neutral-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .neutral.sk-box:after,.sn-component .sk-box.neutral:after,.sn-component .sk-button.neutral:after,.sn-component .sk-circle.neutral:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#989898;color:var(--sn-stylekit-neutral-color)}.sn-component .neutral.sk-box:hover:before,.sn-component .sk-box.neutral:hover:before,.sn-component .sk-button.neutral:hover:before,.sn-component .sk-circle.neutral:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .neutral.no-bg.sk-box,.sn-component .sk-box.neutral.no-bg,.sn-component .sk-button.neutral.no-bg,.sn-component .sk-circle.neutral.no-bg{background-color:transparent}.sn-component .neutral.no-bg.sk-box:before,.sn-component .sk-box.neutral.no-bg:before,.sn-component .sk-button.neutral.no-bg:before,.sn-component .sk-circle.neutral.no-bg:before{content:none}.sn-component .neutral.featured.sk-box,.sn-component .sk-box.neutral.featured,.sn-component .sk-button.neutral.featured,.sn-component .sk-circle.neutral.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .neutral.featured.sk-box:before,.sn-component .sk-box.neutral.featured:before,.sn-component .sk-button.neutral.featured:before,.sn-component .sk-circle.neutral.featured:before{opacity:1}.sn-component .info.sk-box,.sn-component .sk-box.info,.sn-component .sk-button.info,.sn-component .sk-circle.info{color:#fff;color:var(--sn-stylekit-info-contrast-color);position:relative;background-color:#086dd6;background-color:var(--sn-stylekit-info-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#086dd6;border-color:var(--sn-stylekit-info-color)}.sn-component .info.sk-box *,.sn-component .sk-box.info *,.sn-component .sk-button.info *,.sn-component .sk-circle.info *{position:relative}.sn-component .info.sk-box:before,.sn-component .sk-box.info:before,.sn-component .sk-button.info:before,.sn-component .sk-circle.info:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#086dd6;background-color:var(--sn-stylekit-info-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .info.sk-box:after,.sn-component .sk-box.info:after,.sn-component .sk-button.info:after,.sn-component .sk-circle.info:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#086dd6;color:var(--sn-stylekit-info-color)}.sn-component .info.sk-box:hover:before,.sn-component .sk-box.info:hover:before,.sn-component .sk-button.info:hover:before,.sn-component .sk-circle.info:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .info.no-bg.sk-box,.sn-component .sk-box.info.no-bg,.sn-component .sk-button.info.no-bg,.sn-component .sk-circle.info.no-bg{background-color:transparent}.sn-component .info.no-bg.sk-box:before,.sn-component .sk-box.info.no-bg:before,.sn-component .sk-button.info.no-bg:before,.sn-component .sk-circle.info.no-bg:before{content:none}.sn-component .info.featured.sk-box,.sn-component .sk-box.info.featured,.sn-component .sk-button.info.featured,.sn-component .sk-circle.info.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .info.featured.sk-box:before,.sn-component .sk-box.info.featured:before,.sn-component .sk-button.info.featured:before,.sn-component .sk-circle.info.featured:before{opacity:1}.sn-component .sk-box.warning,.sn-component .sk-button.warning,.sn-component .sk-circle.warning,.sn-component .warning.sk-box{color:#fff;color:var(--sn-stylekit-warning-contrast-color);position:relative;background-color:#f6a200;background-color:var(--sn-stylekit-warning-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#f6a200;border-color:var(--sn-stylekit-warning-color)}.sn-component .sk-box.warning *,.sn-component .sk-button.warning *,.sn-component .sk-circle.warning *,.sn-component .warning.sk-box *{position:relative}.sn-component .sk-box.warning:before,.sn-component .sk-button.warning:before,.sn-component .sk-circle.warning:before,.sn-component .warning.sk-box:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f6a200;background-color:var(--sn-stylekit-warning-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-box.warning:after,.sn-component .sk-button.warning:after,.sn-component .sk-circle.warning:after,.sn-component .warning.sk-box:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#f6a200;color:var(--sn-stylekit-warning-color)}.sn-component .sk-box.warning:hover:before,.sn-component .sk-button.warning:hover:before,.sn-component .sk-circle.warning:hover:before,.sn-component .warning.sk-box:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .sk-box.warning.no-bg,.sn-component .sk-button.warning.no-bg,.sn-component .sk-circle.warning.no-bg,.sn-component .warning.no-bg.sk-box{background-color:transparent}.sn-component .sk-box.warning.no-bg:before,.sn-component .sk-button.warning.no-bg:before,.sn-component .sk-circle.warning.no-bg:before,.sn-component .warning.no-bg.sk-box:before{content:none}.sn-component .sk-box.warning.featured,.sn-component .sk-button.warning.featured,.sn-component .sk-circle.warning.featured,.sn-component .warning.featured.sk-box{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-box.warning.featured:before,.sn-component .sk-button.warning.featured:before,.sn-component .sk-circle.warning.featured:before,.sn-component .warning.featured.sk-box:before{opacity:1}.sn-component .danger.sk-box,.sn-component .sk-box.danger,.sn-component .sk-button.danger,.sn-component .sk-circle.danger{color:#fff;color:var(--sn-stylekit-danger-contrast-color);position:relative;background-color:#f80324;background-color:var(--sn-stylekit-danger-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#f80324;border-color:var(--sn-stylekit-danger-color)}.sn-component .danger.sk-box *,.sn-component .sk-box.danger *,.sn-component .sk-button.danger *,.sn-component .sk-circle.danger *{position:relative}.sn-component .danger.sk-box:before,.sn-component .sk-box.danger:before,.sn-component .sk-button.danger:before,.sn-component .sk-circle.danger:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f80324;background-color:var(--sn-stylekit-danger-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .danger.sk-box:after,.sn-component .sk-box.danger:after,.sn-component .sk-button.danger:after,.sn-component .sk-circle.danger:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#f80324;color:var(--sn-stylekit-danger-color)}.sn-component .danger.sk-box:hover:before,.sn-component .sk-box.danger:hover:before,.sn-component .sk-button.danger:hover:before,.sn-component .sk-circle.danger:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .danger.no-bg.sk-box,.sn-component .sk-box.danger.no-bg,.sn-component .sk-button.danger.no-bg,.sn-component .sk-circle.danger.no-bg{background-color:transparent}.sn-component .danger.no-bg.sk-box:before,.sn-component .sk-box.danger.no-bg:before,.sn-component .sk-button.danger.no-bg:before,.sn-component .sk-circle.danger.no-bg:before{content:none}.sn-component .danger.featured.sk-box,.sn-component .sk-box.danger.featured,.sn-component .sk-button.danger.featured,.sn-component .sk-circle.danger.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .danger.featured.sk-box:before,.sn-component .sk-box.danger.featured:before,.sn-component .sk-button.danger.featured:before,.sn-component .sk-circle.danger.featured:before{opacity:1}.sn-component .sk-box.success,.sn-component .sk-button.success,.sn-component .sk-circle.success,.sn-component .success.sk-box{color:#fff;color:var(--sn-stylekit-success-contrast-color);position:relative;background-color:#2b9612;background-color:var(--sn-stylekit-success-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#2b9612;border-color:var(--sn-stylekit-success-color)}.sn-component .sk-box.success *,.sn-component .sk-button.success *,.sn-component .sk-circle.success *,.sn-component .success.sk-box *{position:relative}.sn-component .sk-box.success:before,.sn-component .sk-button.success:before,.sn-component .sk-circle.success:before,.sn-component .success.sk-box:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#2b9612;background-color:var(--sn-stylekit-success-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-box.success:after,.sn-component .sk-button.success:after,.sn-component .sk-circle.success:after,.sn-component .success.sk-box:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#2b9612;color:var(--sn-stylekit-success-color)}.sn-component .sk-box.success:hover:before,.sn-component .sk-button.success:hover:before,.sn-component .sk-circle.success:hover:before,.sn-component .success.sk-box:hover:before{-webkit-filter:brightness(130%);filter:brightness(130%)}.sn-component .sk-box.success.no-bg,.sn-component .sk-button.success.no-bg,.sn-component .sk-circle.success.no-bg,.sn-component .success.no-bg.sk-box{background-color:transparent}.sn-component .sk-box.success.no-bg:before,.sn-component .sk-button.success.no-bg:before,.sn-component .sk-circle.success.no-bg:before,.sn-component .success.no-bg.sk-box:before{content:none}.sn-component .sk-box.success.featured,.sn-component .sk-button.success.featured,.sn-component .sk-circle.success.featured,.sn-component .success.featured.sk-box{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-box.success.featured:before,.sn-component .sk-button.success.featured:before,.sn-component .sk-circle.success.featured:before,.sn-component .success.featured.sk-box:before{opacity:1}.sn-component .sk-input.contrast,.sn-component .sk-notification.contrast{color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color);position:relative;background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-contrast-border-color)}.sn-component .sk-input.contrast *,.sn-component .sk-notification.contrast *{position:relative}.sn-component .sk-input.contrast:before,.sn-component .sk-notification.contrast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.contrast:after,.sn-component .sk-notification.contrast:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:#e3e3e3;color:var(--sn-stylekit-contrast-border-color);border-color:#e3e3e3;border-color:var(--sn-stylekit-contrast-border-color)}.sn-component .sk-input.contrast.no-bg,.sn-component .sk-notification.contrast.no-bg{background-color:transparent}.sn-component .sk-input.contrast.no-bg:before,.sn-component .sk-notification.contrast.no-bg:before{content:none}.sn-component .sk-input.contrast.featured,.sn-component .sk-notification.contrast.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.contrast.featured:before,.sn-component .sk-notification.contrast.featured:before{opacity:1}.sn-component .sk-input.sk-secondary,.sn-component .sk-notification.sk-secondary{color:#2e2e2e;color:var(--sn-stylekit-secondary-foreground-color);position:relative;background-color:#f6f6f6;background-color:var(--sn-stylekit-secondary-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-secondary-border-color)}.sn-component .sk-input.sk-secondary *,.sn-component .sk-notification.sk-secondary *{position:relative}.sn-component .sk-input.sk-secondary:before,.sn-component .sk-notification.sk-secondary:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f6f6f6;background-color:var(--sn-stylekit-secondary-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.sk-secondary:after,.sn-component .sk-notification.sk-secondary:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:#e3e3e3;color:var(--sn-stylekit-secondary-border-color);border-color:#e3e3e3;border-color:var(--sn-stylekit-secondary-border-color)}.sn-component .sk-input.sk-secondary.no-bg,.sn-component .sk-notification.sk-secondary.no-bg{background-color:transparent}.sn-component .sk-input.sk-secondary.no-bg:before,.sn-component .sk-notification.sk-secondary.no-bg:before{content:none}.sn-component .sk-input.sk-secondary.featured,.sn-component .sk-notification.sk-secondary.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.sk-secondary.featured:before,.sn-component .sk-notification.sk-secondary.featured:before{opacity:1}.sn-component .sk-input.sk-secondary-contrast,.sn-component .sk-notification.sk-secondary-contrast{color:#2e2e2e;color:var(--sn-stylekit-secondary-contrast-foreground-color);position:relative;background-color:#e3e3e3;background-color:var(--sn-stylekit-secondary-contrast-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-contrast-border-color);border:1px solid var(--sn-stylekit-secondary-contrast-border-color)}.sn-component .sk-input.sk-secondary-contrast *,.sn-component .sk-notification.sk-secondary-contrast *{position:relative}.sn-component .sk-input.sk-secondary-contrast:before,.sn-component .sk-notification.sk-secondary-contrast:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#e3e3e3;background-color:var(--sn-stylekit-secondary-contrast-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.sk-secondary-contrast:after,.sn-component .sk-notification.sk-secondary-contrast:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-secondary-contrast-border-color);border-color:var(--sn-stylekit-secondary-contrast-border-color)}.sn-component .sk-input.sk-secondary-contrast.no-bg,.sn-component .sk-notification.sk-secondary-contrast.no-bg{background-color:transparent}.sn-component .sk-input.sk-secondary-contrast.no-bg:before,.sn-component .sk-notification.sk-secondary-contrast.no-bg:before{content:none}.sn-component .sk-input.sk-secondary-contrast.featured,.sn-component .sk-notification.sk-secondary-contrast.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.sk-secondary-contrast.featured:before,.sn-component .sk-notification.sk-secondary-contrast.featured:before{opacity:1}.sn-component .sk-input.sk-base,.sn-component .sk-notification.sk-base{color:#000;color:var(--sn-stylekit-foreground-color);position:relative;background-color:#fff;background-color:var(--sn-stylekit-background-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-input.sk-base *,.sn-component .sk-notification.sk-base *{position:relative}.sn-component .sk-input.sk-base:before,.sn-component .sk-notification.sk-base:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#fff;background-color:var(--sn-stylekit-background-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.sk-base:after,.sn-component .sk-notification.sk-base:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:#e3e3e3;color:var(--sn-stylekit-border-color);border-color:#e3e3e3;border-color:var(--sn-stylekit-border-color)}.sn-component .sk-input.sk-base.no-bg,.sn-component .sk-notification.sk-base.no-bg{background-color:transparent}.sn-component .sk-input.sk-base.no-bg:before,.sn-component .sk-notification.sk-base.no-bg:before{content:none}.sn-component .sk-input.sk-base.featured,.sn-component .sk-notification.sk-base.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.sk-base.featured:before,.sn-component .sk-notification.sk-base.featured:before{opacity:1}.sn-component .sk-input.neutral,.sn-component .sk-notification.neutral{color:#fff;color:var(--sn-stylekit-neutral-contrast-color);position:relative;background-color:#989898;background-color:var(--sn-stylekit-neutral-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#989898;border-color:var(--sn-stylekit-neutral-color)}.sn-component .sk-input.neutral *,.sn-component .sk-notification.neutral *{position:relative}.sn-component .sk-input.neutral:before,.sn-component .sk-notification.neutral:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#989898;background-color:var(--sn-stylekit-neutral-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.neutral:after,.sn-component .sk-notification.neutral:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#989898;color:var(--sn-stylekit-neutral-color)}.sn-component .sk-input.neutral.no-bg,.sn-component .sk-notification.neutral.no-bg{background-color:transparent}.sn-component .sk-input.neutral.no-bg:before,.sn-component .sk-notification.neutral.no-bg:before{content:none}.sn-component .sk-input.neutral.featured,.sn-component .sk-notification.neutral.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.neutral.featured:before,.sn-component .sk-notification.neutral.featured:before{opacity:1}.sn-component .sk-input.info,.sn-component .sk-notification.info{color:#fff;color:var(--sn-stylekit-info-contrast-color);position:relative;background-color:#086dd6;background-color:var(--sn-stylekit-info-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#086dd6;border-color:var(--sn-stylekit-info-color)}.sn-component .sk-input.info *,.sn-component .sk-notification.info *{position:relative}.sn-component .sk-input.info:before,.sn-component .sk-notification.info:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#086dd6;background-color:var(--sn-stylekit-info-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.info:after,.sn-component .sk-notification.info:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#086dd6;color:var(--sn-stylekit-info-color)}.sn-component .sk-input.info.no-bg,.sn-component .sk-notification.info.no-bg{background-color:transparent}.sn-component .sk-input.info.no-bg:before,.sn-component .sk-notification.info.no-bg:before{content:none}.sn-component .sk-input.info.featured,.sn-component .sk-notification.info.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.info.featured:before,.sn-component .sk-notification.info.featured:before{opacity:1}.sn-component .sk-input.warning,.sn-component .sk-notification.warning{color:#fff;color:var(--sn-stylekit-warning-contrast-color);position:relative;background-color:#f6a200;background-color:var(--sn-stylekit-warning-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#f6a200;border-color:var(--sn-stylekit-warning-color)}.sn-component .sk-input.warning *,.sn-component .sk-notification.warning *{position:relative}.sn-component .sk-input.warning:before,.sn-component .sk-notification.warning:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f6a200;background-color:var(--sn-stylekit-warning-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.warning:after,.sn-component .sk-notification.warning:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#f6a200;color:var(--sn-stylekit-warning-color)}.sn-component .sk-input.warning.no-bg,.sn-component .sk-notification.warning.no-bg{background-color:transparent}.sn-component .sk-input.warning.no-bg:before,.sn-component .sk-notification.warning.no-bg:before{content:none}.sn-component .sk-input.warning.featured,.sn-component .sk-notification.warning.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.warning.featured:before,.sn-component .sk-notification.warning.featured:before{opacity:1}.sn-component .sk-input.danger,.sn-component .sk-notification.danger{color:#fff;color:var(--sn-stylekit-danger-contrast-color);position:relative;background-color:#f80324;background-color:var(--sn-stylekit-danger-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#f80324;border-color:var(--sn-stylekit-danger-color)}.sn-component .sk-input.danger *,.sn-component .sk-notification.danger *{position:relative}.sn-component .sk-input.danger:before,.sn-component .sk-notification.danger:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#f80324;background-color:var(--sn-stylekit-danger-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.danger:after,.sn-component .sk-notification.danger:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#f80324;color:var(--sn-stylekit-danger-color)}.sn-component .sk-input.danger.no-bg,.sn-component .sk-notification.danger.no-bg{background-color:transparent}.sn-component .sk-input.danger.no-bg:before,.sn-component .sk-notification.danger.no-bg:before{content:none}.sn-component .sk-input.danger.featured,.sn-component .sk-notification.danger.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.danger.featured:before,.sn-component .sk-notification.danger.featured:before{opacity:1}.sn-component .sk-input.success,.sn-component .sk-notification.success{color:#fff;color:var(--sn-stylekit-success-contrast-color);position:relative;background-color:#2b9612;background-color:var(--sn-stylekit-success-color);overflow:hidden;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);border-color:#2b9612;border-color:var(--sn-stylekit-success-color)}.sn-component .sk-input.success *,.sn-component .sk-notification.success *{position:relative}.sn-component .sk-input.success:before,.sn-component .sk-notification.success:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background-color:#2b9612;background-color:var(--sn-stylekit-success-color);opacity:1;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-input.success:after,.sn-component .sk-notification.success:after{content:"";display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:2px;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:#2b9612;color:var(--sn-stylekit-success-color)}.sn-component .sk-input.success.no-bg,.sn-component .sk-notification.success.no-bg{background-color:transparent}.sn-component .sk-input.success.no-bg:before,.sn-component .sk-notification.success.no-bg:before{content:none}.sn-component .sk-input.success.featured,.sn-component .sk-notification.success.featured{border:none;padding:.75rem 1.25rem;font-size:1.1rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-input.success.featured:before,.sn-component .sk-notification.success.featured:before{opacity:1}.sn-component .sk-notification{padding:1.1rem 1rem;margin:1.4rem 0;text-align:left;cursor:default}.sn-component .sk-notification.one-line{padding:0 .4rem}.sn-component .sk-notification.stretch{width:100%}.sn-component .sk-notification.dashed{border-style:dashed;border-width:2px}.sn-component .sk-notification.dashed:after{box-shadow:none}.sn-component .sk-notification .sk-notification-title{font-size:1.3rem;font-size:var(--sn-stylekit-font-size-h1);font-weight:700;line-height:1.9rem}.sn-component .sk-notification .sk-notification-text{line-height:1.5rem;font-size:1rem;font-size:var(--sn-stylekit-font-size-p);text-align:left;font-weight:400}.sn-component .sk-circle{cursor:pointer;border:1px solid #2e2e2e;border-color:var(--sn-stylekit-contrast-foreground-color);background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);padding:0;border-radius:50%!important;flex-shrink:0}.sn-component .sk-circle:after,.sn-component .sk-circle:before{border-radius:50%!important}.sn-component .sk-circle.small{width:11px;height:11px}.sn-component .sk-spinner{border-left:1px solid #989898;border-bottom:1px solid #989898;border-top:1px solid #989898;border:1px solid var(--sn-stylekit-neutral-color);border-radius:50%;animation:rotate .8s linear infinite;border-right:1px solid transparent}.sn-component .sk-spinner.small{width:12px;height:12px}.sn-component .sk-spinner.info-contrast{border-color:#fff;border-color:var(--sn-stylekit-info-contrast-color);border-right-color:transparent}.sn-component .sk-spinner.info{border-color:#086dd6;border-color:var(--sn-stylekit-info-color);border-right-color:transparent}.sn-component .sk-spinner.warning{border-color:#f6a200;border-color:var(--sn-stylekit-warning-color);border-right-color:transparent}.sn-component .sk-spinner.danger{border-color:#f80324;border-color:var(--sn-stylekit-danger-color);border-right-color:transparent}.sn-component .sk-spinner.success{border-color:#2b9612;border-color:var(--sn-stylekit-success-color);border-right-color:transparent}@keyframes rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.sn-component .sk-app-bar{display:flex;width:100%;height:2rem;padding:0 .8rem;background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color);justify-content:space-between;align-items:center;border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-contrast-border-color);-webkit-user-select:none;-ms-user-select:none;user-select:none}.sn-component .sk-app-bar.no-edges{border-left:0;border-right:0}.sn-component .sk-app-bar.no-bottom-edge{border-bottom:0}.sn-component .sk-app-bar .left,.sn-component .sk-app-bar .right{display:flex;height:100%}.sn-component .sk-app-bar .sk-app-bar-item{flex-grow:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.sn-component .sk-app-bar .sk-app-bar-item:not(:first-child){margin-left:1rem}.sn-component .sk-app-bar .sk-app-bar-item.border{border-left:1px solid #e3e3e3;border-left:1px solid var(--sn-stylekit-contrast-border-color)}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column{height:100%;display:flex;align-items:center}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column:not(:first-child){margin-left:.5rem}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column.underline{border-bottom:2px solid #086dd6;border-bottom:2px solid var(--sn-stylekit-info-color)}.sn-component .sk-app-bar .sk-app-bar-item.no-pointer{cursor:default}.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-label:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-sublabel:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-label:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-sublabel:not(.subtle),.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item:hover>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item:hover>.sk-panel-section-subtitle:not(.subtle){color:#086dd6;color:var(--sn-stylekit-info-color)}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-label,.sn-component .sk-app-bar .sk-app-bar-item>.sk-label,.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item>.sk-app-bar-item-column>.sk-panel-section-subtitle,.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item>.sk-panel-section-subtitle{font-weight:700;font-size:.9rem;font-size:var(--sn-stylekit-font-size-h5);white-space:nowrap}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-sublabel,.sn-component .sk-app-bar .sk-app-bar-item>.sk-sublabel{font-size:.9rem;font-size:var(--sn-stylekit-font-size-h5);font-weight:400;white-space:nowrap}.sn-component .sk-app-bar .sk-app-bar-item .subtle{font-weight:400;opacity:.6}.sn-component .sk-panel-table{display:flex;flex-wrap:wrap;padding-left:1px;padding-top:1px}.sn-component .sk-panel-table .sk-panel-table-item{flex:45% 1;flex-flow:wrap;border:1px solid #e3e3e3;border:1px solid var(--sn-stylekit-border-color);padding:1rem;margin-left:-1px;margin-top:-1px;display:flex;flex-direction:column;justify-content:space-between}.sn-component .sk-panel-table .sk-panel-table-item img{max-width:100%;margin-bottom:1rem}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-content{display:flex;flex-direction:row}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column{align-items:center}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.stretch{width:100%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column:not(:first-child){padding-left:.75rem}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.quarter{flex-basis:25%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.three-quarters{flex-basis:75%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-footer{margin-top:1.25rem}.sn-component .sk-panel-table .sk-panel-table-item.no-border{border:none}.sn-component .sk-modal{position:fixed;margin-left:auto;margin-right:auto;left:0;right:0;top:0;bottom:0;z-index:10000;width:100vw;height:100vh;background-color:transparent;color:#2e2e2e;color:var(--sn-stylekit-contrast-foreground-color);display:flex;align-items:center;justify-content:center}.sn-component .sk-modal .sn-component,.sn-component .sk-modal .sn-component .sk-panel{height:100%}.sn-component .sk-modal.auto-height>.sk-modal-content{height:auto!important}.sn-component .sk-modal.large>.sk-modal-content{width:900px;height:600px}.sn-component .sk-modal.medium>.sk-modal-content{width:700px;height:500px}.sn-component .sk-modal.small>.sk-modal-content{width:700px;height:344px}.sn-component .sk-modal .sk-modal-background{position:absolute;z-index:-1;width:100%;height:100%;background-color:#f6f6f6;background-color:var(--sn-stylekit-contrast-background-color);opacity:.7}.sn-component .sk-modal>.sk-modal-content{overflow-y:auto;width:auto;padding:0;min-width:300px;box-shadow:0 2px 35px 0 rgba(0,0,0,.19)}.sn-component.no-select{-webkit-user-select:none;-ms-user-select:none;user-select:none}[contenteditable],input,textarea{caret-color:#000;caret-color:var(--sn-stylekit-editor-foreground-color)}.linux-desktop,.linux-web,.windows-desktop,.windows-web{scrollbar-width:thin}.linux-desktop ::-webkit-scrollbar,.linux-web ::-webkit-scrollbar,.windows-desktop ::-webkit-scrollbar,.windows-web ::-webkit-scrollbar{width:17px;height:18px;border-left:.5px solid var(--sn-stylekit-scrollbar-track-border-color-color)}.linux-desktop ::-webkit-scrollbar-thumb,.linux-web ::-webkit-scrollbar-thumb,.windows-desktop ::-webkit-scrollbar-thumb,.windows-web ::-webkit-scrollbar-thumb{border:4px solid transparent;background-clip:padding-box;-webkit-border-radius:10px;background-color:#dfdfdf;background-color:var(--sn-stylekit-scrollbar-thumb-color);-webkit-box-shadow:inset -1px -1px 0 rgba(0,0,0,.05),inset 1px 1px 0 rgba(0,0,0,.05)}.linux-desktop ::-webkit-scrollbar-button,.linux-web ::-webkit-scrollbar-button,.windows-desktop ::-webkit-scrollbar-button,.windows-web ::-webkit-scrollbar-button{width:0;height:0;display:none}.linux-desktop ::-webkit-scrollbar-corner,.linux-web ::-webkit-scrollbar-corner,.windows-desktop ::-webkit-scrollbar-corner,.windows-web ::-webkit-scrollbar-corner{background-color:transparent}
+/*# sourceMappingURL=2.ee6590b6.chunk.css.map */
\ No newline at end of file
diff --git a/build/static/css/2.ee6590b6.chunk.css.map b/build/static/css/2.ee6590b6.chunk.css.map
new file mode 100644
index 0000000..47426c4
--- /dev/null
+++ b/build/static/css/2.ee6590b6.chunk.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack://node_modules/sn-stylekit/dist/stylekit.css"],"names":[],"mappings":"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","file":"2.ee6590b6.chunk.css","sourcesContent":[":root{--sn-stylekit-base-font-size: 13px;--sn-stylekit-font-size-p: 1.0rem;--sn-stylekit-font-size-editor: 1.21rem;--sn-stylekit-font-size-h6: 0.8rem;--sn-stylekit-font-size-h5: 0.9rem;--sn-stylekit-font-size-h4: 1.0rem;--sn-stylekit-font-size-h3: 1.1rem;--sn-stylekit-font-size-h2: 1.2rem;--sn-stylekit-font-size-h1: 1.3rem;--sn-stylekit-neutral-color: #989898;--sn-stylekit-neutral-contrast-color: white;--sn-stylekit-info-color: #086DD6;--sn-stylekit-info-contrast-color: white;--sn-stylekit-success-color: #2B9612;--sn-stylekit-success-contrast-color: white;--sn-stylekit-warning-color: #f6a200;--sn-stylekit-warning-contrast-color: white;--sn-stylekit-danger-color: #F80324;--sn-stylekit-danger-contrast-color: white;--sn-stylekit-shadow-color: #C8C8C8;--sn-stylekit-background-color: white;--sn-stylekit-border-color: #e3e3e3;--sn-stylekit-foreground-color: black;--sn-stylekit-contrast-background-color: #F6F6F6;--sn-stylekit-contrast-foreground-color: #2e2e2e;--sn-stylekit-contrast-border-color: #e3e3e3;--sn-stylekit-secondary-background-color: #F6F6F6;--sn-stylekit-secondary-foreground-color: #2e2e2e;--sn-stylekit-secondary-border-color: #e3e3e3;--sn-stylekit-secondary-contrast-background-color: #e3e3e3;--sn-stylekit-secondary-contrast-foreground-color: #2e2e2e;--sn-styleki--secondary-contrast-border-color: #a2a2a2;--sn-stylekit-editor-background-color: var(--sn-stylekit-background-color);--sn-stylekit-editor-foreground-color: var(--sn-stylekit-foreground-color);--sn-stylekit-paragraph-text-color: #454545;--sn-stylekit-input-placeholder-color: rgb(168, 168, 168);--sn-stylekit-input-border-color: #e3e3e3;--sn-stylekit-scrollbar-thumb-color: #dfdfdf;--sn-stylekit-scrollbar-track-border-color: #E7E7E7;--sn-stylekit-general-border-radius: 2px;--sn-stylekit-simplified-chinese-font: \"Microsoft Yahei\", \"微软雅黑体\";--sn-stylekit-monospace-font: \"Ubuntu Mono\", courier, monospace;--sn-stylekit-sans-serif-font: -apple-system, BlinkMacSystemFont, \"Segoe UI\",\n \"Roboto\", \"Oxygen\", \"Ubuntu\", \"Cantarell\", \"Fira Sans\", \"Droid Sans\",\n \"Helvetica Neue\", var(--sn-stylekit-simplified-chinese-font), sans-serif}.sn-component{font-family:var(--sn-stylekit-sans-serif-font);-webkit-font-smoothing:antialiased;color:var(--sn-stylekit-foreground-color)}.sn-component .sk-panel{box-shadow:0px 2px 5px var(--sn-stylekit-shadow-color);background-color:var(--sn-stylekit-background-color);border:1px solid var(--sn-stylekit-border-color);border-radius:var(--sn-stylekit-general-border-radius);display:flex;flex-direction:column;overflow:auto;flex-grow:1}.sn-component .sk-panel a:hover{text-decoration:underline}.sn-component .sk-panel.static{box-shadow:none;border:none;border-radius:0}.sn-component .sk-panel .sk-panel-header{flex-shrink:0;display:flex;justify-content:space-between;padding:1.1rem 2rem;border-bottom:1px solid var(--sn-stylekit-contrast-border-color);background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);align-items:center}.sn-component .sk-panel .sk-panel-header .sk-panel-header-title{font-size:var(--sn-stylekit-font-size-h1);font-weight:500}.sn-component .sk-panel .sk-panel-header .close-button{font-weight:bold}.sn-component .sk-panel .sk-footer,.sn-component .sk-panel .sk-panel-footer{padding:1rem 2rem;border-top:1px solid var(--sn-stylekit-border-color);box-sizing:border-box}.sn-component .sk-panel .sk-footer.extra-padding,.sn-component .sk-panel .sk-panel-footer.extra-padding{padding:2rem 2rem}.sn-component .sk-panel .sk-footer .left,.sn-component .sk-panel .sk-panel-footer .left{text-align:left;display:block}.sn-component .sk-panel .sk-footer .right,.sn-component .sk-panel .sk-panel-footer .right{text-align:right;display:block}.sn-component .sk-panel .sk-panel-content{padding:1.6rem 2rem;padding-bottom:0;flex-grow:1;overflow:scroll;height:100%;overflow-y:auto !important;overflow-x:auto !important}.sn-component .sk-panel .sk-panel-content .sk-p,.sn-component .sk-panel .sk-panel-content .sk-li{color:var(--sn-stylekit-paragraph-text-color);line-height:1.3}.sn-component .sk-panel-section{padding-bottom:1.6rem;display:flex;flex-direction:column}.sn-component .sk-panel-section.sk-panel-hero{text-align:center}.sn-component .sk-panel-section .sk-p:last-child{margin-bottom:0}.sn-component .sk-panel-section:not(:last-child){margin-bottom:1.5rem;border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-panel-section:not(:last-child).no-border{border-bottom:none}.sn-component .sk-panel-section:last-child{margin-bottom:0.5rem}.sn-component .sk-panel-section.no-bottom-pad{padding-bottom:0;margin-bottom:0}.sn-component .sk-panel-section .sk-panel-section-title{margin-bottom:0.5rem;font-weight:bold;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-panel-section .sk-panel-section-outer-title{border-bottom:1px solid var(--sn-stylekit-border-color);padding-bottom:0.9rem;margin-top:2.1rem;margin-bottom:15px;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-panel-section .sk-panel-section-subtitle{font-size:var(--sn-stylekit-font-size-h5);margin-bottom:2px}.sn-component .sk-panel-section .sk-panel-section-subtitle.subtle{font-weight:normal;opacity:0.6}.sn-component .sk-panel-section .text-content .sk-p{margin-bottom:1rem}.sn-component .sk-panel-section .text-content p:first-child{margin-top:0.3rem}.sn-component .sk-panel-row{display:flex;justify-content:space-between;align-items:center;padding-top:0.4rem}.sn-component .sk-panel-row.centered{justify-content:center}.sn-component .sk-panel-row.justify-right{justify-content:flex-end}.sn-component .sk-panel-row.justify-left{justify-content:flex-start}.sn-component .sk-panel-row.align-top{align-items:flex-start}.sn-component .sk-panel-row .sk-panel-column.stretch{width:100%}.sn-component .sk-panel-row.default-padding,.sn-component .sk-panel-row:not(:last-child){padding-bottom:0.4rem}.sn-component .sk-panel-row.condensed{padding-top:0.2rem;padding-bottom:0.2rem}.sn-component .sk-panel-row .sk-p{margin:0;padding:0}.sn-component .vertical-rule{background-color:var(--sn-stylekit-border-color);height:1.5rem;width:1px}.sn-component .sk-panel-form{width:100%}.sn-component .sk-panel-form.half{width:50%}.sn-component .sk-panel-form .form-submit{margin-top:0.15rem}.sn-component .right-aligned{justify-content:flex-end;text-align:right}.sn-component .sk-menu-panel{background-color:var(--sn-stylekit-background-color);border:1px solid var(--sn-stylekit-contrast-border-color);border-radius:var(--sn-stylekit-general-border-radius);overflow:scroll;user-select:none;overflow-y:auto !important;overflow-x:auto !important}.sn-component .sk-menu-panel .sk-menu-panel-header{padding:0.8rem 1rem;border-bottom:1px solid var(--sn-stylekit-contrast-border-color);background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);display:flex;justify-content:space-between;align-items:center}.sn-component .sk-menu-panel .sk-menu-panel-header-title{font-weight:bold;font-size:var(--sn-stylekit-font-size-h4)}.sn-component .sk-menu-panel .sk-menu-panel-header-subtitle{margin-top:0.2rem;opacity:0.6}.sn-component .sk-menu-panel .sk-menu-panel-row{padding:1rem 1rem;cursor:pointer;display:flex;flex-direction:row;justify-content:space-between;border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-menu-panel .sk-menu-panel-row:hover{background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);border-color:var(--sn-stylekit-contrast-border-color)}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column{display:flex;justify-content:center;flex-direction:column}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column:not(:first-child){padding-left:1.0rem;padding-right:0.15rem}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column.stretch{width:100%}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrows{margin-top:1rem}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-row,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrow{border:1px solid var(--sn-stylekit-contrast-border-color);margin-top:-1px}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-row:hover,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .sk-menu-panel-subrow:hover{background-color:var(--sn-stylekit-background-color)}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-menu-panel-column .left{display:flex}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-button .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-box .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-button .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-button .sk-panel-section-subtitle,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-box .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-box .sk-panel-section-subtitle{font-size:var(--sn-stylekit-font-size-h6);font-weight:normal}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-label,.sn-component .sk-menu-panel .sk-menu-panel-row .sk-panel-section .sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-menu-panel .sk-menu-panel-row .sk-panel-section-subtitle{font-size:var(--sn-stylekit-font-size-p);font-weight:bold}.sn-component .sk-menu-panel .sk-menu-panel-row .sk-sublabel{font-size:var(--sn-stylekit-font-size-h5);margin-top:0.2rem;opacity:0.6}.sn-component .red{color:var(--sn-stylekit-danger-color)}.sn-component .tinted{color:var(--sn-stylekit-info-color)}.sn-component .selectable{user-select:text !important;-ms-user-select:text !important;-moz-user-select:text !important;-webkit-user-select:text !important}.sn-component .sk-h1,.sn-component .sk-h2,.sn-component .sk-h3,.sn-component .sk-h4,.sn-component .sk-h5{margin:0;padding:0;font-weight:normal}.sn-component .sk-h1{font-weight:500;font-size:var(--sn-stylekit-font-size-h1);line-height:1.9rem}.sn-component .sk-h2{font-size:var(--sn-stylekit-font-size-h2);line-height:1.8rem}.sn-component .sk-h3{font-size:var(--sn-stylekit-font-size-h3);line-height:1.7rem}.sn-component .sk-h4{font-size:var(--sn-stylekit-font-size-p);line-height:1.4rem}.sn-component .sk-h5{font-size:var(--sn-stylekit-font-size-h5)}.sn-component .sk-bold{font-weight:bold}.sn-component .sk-font-small{font-size:var(--sn-stylekit-font-size-h5)}.sn-component .sk-font-normal{font-size:var(--sn-stylekit-font-size-p)}.sn-component .sk-font-large{font-size:var(--sn-stylekit-font-size-h3)}.sn-component a.sk-a{cursor:pointer;user-select:none}.sn-component a.sk-a.disabled{color:var(--sn-stylekit-neutral-color);opacity:0.6}.sn-component a.sk-a.boxed{border-radius:var(--sn-stylekit-general-border-radius);padding:0.3rem 0.4rem}.sn-component a.sk-a.boxed:hover{text-decoration:none}.sn-component a.sk-a.boxed.neutral{background-color:var(--sn-stylekit-neutral-color);color:var(--sn-stylekit-neutral-contrast-color)}.sn-component a.sk-a.boxed.info{background-color:var(--sn-stylekit-info-color);color:var(--sn-stylekit-info-contrast-color)}.sn-component a.sk-a.boxed.warning{background-color:var(--sn-stylekit-warning-color);color:var(--sn-stylekit-warning-contrast-color)}.sn-component a.sk-a.boxed.danger{background-color:var(--sn-stylekit-danger-color);color:var(--sn-stylekit-danger-contrast-color)}.sn-component a.sk-a.boxed.success{background-color:var(--sn-stylekit-success-color);color:var(--sn-stylekit-success-contrast-color)}.sn-component .wrap{word-wrap:break-word}.sn-component *.sk-base{color:var(--sn-stylekit-foreground-color)}.sn-component *.contrast{color:var(--sn-stylekit-contrast-foreground-color)}.sn-component *.neutral{color:var(--sn-stylekit-neutral-color)}.sn-component *.info{color:var(--sn-stylekit-info-color)}.sn-component *.info-contrast{color:var(--sn-stylekit-info-contrast-color)}.sn-component *.warning{color:var(--sn-stylekit-warning-color)}.sn-component *.danger{color:var(--sn-stylekit-danger-color)}.sn-component *.success{color:var(--sn-stylekit-success-color)}.sn-component *.info-i{color:var(--sn-stylekit-info-color) !important}.sn-component *.warning-i{color:var(--sn-stylekit-warning-color) !important}.sn-component *.danger-i{color:var(--sn-stylekit-danger-color) !important}.sn-component *.success-i{color:var(--sn-stylekit-success-color) !important}.sn-component *.clear{background-color:transparent;border:none}.sn-component .center-text{text-align:center !important;justify-content:center !important}.sn-component p.sk-p{margin:0.5rem 0}.sn-component input.sk-input{box-sizing:border-box;padding:0.7rem 0.8rem;margin:0.30rem 0;border:none;font-size:var(--sn-stylekit-font-size-h3);width:100%;outline:0;resize:none}.sn-component input.sk-input.clear{color:var(--sn-stylekit-foreground-color);background-color:transparent;border:none}.sn-component input.sk-input.no-border{border:none}.sn-component .sk-label,.sn-component .sk-panel-section .sk-panel-section-subtitle{font-weight:bold}.sn-component .sk-label.no-bold,.sn-component .sk-panel-section .no-bold.sk-panel-section-subtitle{font-weight:normal}.sn-component label.sk-label,.sn-component .sk-panel-section label.sk-panel-section-subtitle{margin:0.7rem 0;display:block}.sn-component label.sk-label input[type='checkbox'],.sn-component .sk-panel-section label.sk-panel-section-subtitle input[type='checkbox'],.sn-component input[type='radio']{width:auto;margin-right:0.45rem;vertical-align:middle}.sn-component .sk-horizontal-group>*,.sn-component .sk-input-group>*{display:inline-block;vertical-align:middle}.sn-component .sk-horizontal-group>*:not(:first-child),.sn-component .sk-input-group>*:not(:first-child){margin-left:0.9rem}.sn-component .sk-border-bottom{border-bottom:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-checkbox-group{padding-top:0.5rem;padding-bottom:0.3rem}.sn-component ::placeholder{color:var(--sn-stylekit-input-placeholder-color)}.sn-component :-ms-input-placeholder{color:var(--sn-stylekit-input-placeholder-color)}.sn-component ::-ms-input-placeholder{color:var(--sn-stylekit-input-placeholder-color)}.sn-component .sk-button-group.stretch{display:flex;width:100%}.sn-component .sk-button-group.stretch .sk-button,.sn-component .sk-button-group.stretch .sk-box{display:block;flex-grow:1;text-align:center}.sn-component .sk-button-group .sk-button,.sn-component .sk-button-group .sk-box{display:inline-block;vertical-align:middle}.sn-component .sk-button-group .sk-button:not(:last-child),.sn-component .sk-button-group .sk-box:not(:last-child){margin-right:5px}.sn-component .sk-button-group .sk-button:not(:last-child).featured,.sn-component .sk-button-group .sk-box:not(:last-child).featured{margin-right:8px}.sn-component .sk-segmented-buttons{display:flex;flex-direction:row}.sn-component .sk-segmented-buttons .sk-button,.sn-component .sk-segmented-buttons .sk-box{border-radius:0;white-space:nowrap;margin:0;margin-left:0 !important;margin-right:0 !important}.sn-component .sk-segmented-buttons .sk-button:not(:last-child),.sn-component .sk-segmented-buttons .sk-box:not(:last-child){border-right:none;border-radius:0}.sn-component .sk-segmented-buttons .sk-button:first-child,.sn-component .sk-segmented-buttons .sk-box:first-child{border-top-left-radius:var(--sn-stylekit-general-border-radius);border-bottom-left-radius:var(--sn-stylekit-general-border-radius);border-right:none;border-top-right-radius:0;border-bottom-right-radius:0}.sn-component .sk-segmented-buttons .sk-button:last-child,.sn-component .sk-segmented-buttons .sk-box:last-child{border-top-right-radius:var(--sn-stylekit-general-border-radius);border-bottom-right-radius:var(--sn-stylekit-general-border-radius);border-left:none;border-top-left-radius:0;border-bottom-left-radius:0}.sn-component .sk-box-group .sk-box{display:inline-block}.sn-component .sk-box-group .sk-box:not(:last-child){margin-right:5px}.sn-component .sk-a.button{text-decoration:none}.sn-component .sk-button,.sn-component .sk-box{display:table;padding:0.5rem 0.7rem;font-size:var(--sn-stylekit-font-size-h5);cursor:pointer;text-align:center;user-select:none}.sn-component .sk-button.no-hover-border:after,.sn-component .no-hover-border.sk-box:after{color:transparent !important}.sn-component .sk-button.wide,.sn-component .wide.sk-box{padding:0.3rem 1.7rem}.sn-component .sk-button>.sk-label,.sn-component .sk-box>.sk-label,.sn-component .sk-panel-section .sk-button>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-box>.sk-panel-section-subtitle{font-weight:bold;display:block;text-align:center}.sn-component .sk-button.big,.sn-component .big.sk-box{font-size:var(--sn-stylekit-font-size-h3);padding:0.7rem 2.5rem}.sn-component .sk-box{padding:2.5rem 1.5rem}.sn-component .sk-button.sk-base,.sn-component .sk-base.sk-box,.sn-component .sk-box.sk-base,.sn-component .sk-circle.sk-base{color:var(--sn-stylekit-foreground-color);position:relative;background-color:var(--sn-stylekit-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-background-color)}.sn-component .sk-button.sk-base *,.sn-component .sk-base.sk-box *,.sn-component .sk-box.sk-base *,.sn-component .sk-circle.sk-base *{position:relative}.sn-component .sk-button.sk-base:before,.sn-component .sk-base.sk-box:before,.sn-component .sk-box.sk-base:before,.sn-component .sk-circle.sk-base:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.sk-base:after,.sn-component .sk-base.sk-box:after,.sn-component .sk-box.sk-base:after,.sn-component .sk-circle.sk-base:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-background-color)}.sn-component .sk-button.sk-base:hover:before,.sn-component .sk-base.sk-box:hover:before,.sn-component .sk-box.sk-base:hover:before,.sn-component .sk-circle.sk-base:hover:before{filter:brightness(130%)}.sn-component .sk-button.sk-base.no-bg,.sn-component .sk-base.no-bg.sk-box,.sn-component .sk-box.sk-base.no-bg,.sn-component .sk-circle.sk-base.no-bg{background-color:transparent}.sn-component .sk-button.sk-base.no-bg:before,.sn-component .sk-base.no-bg.sk-box:before,.sn-component .sk-box.sk-base.no-bg:before,.sn-component .sk-circle.sk-base.no-bg:before{content:none}.sn-component .sk-button.sk-base.featured,.sn-component .sk-base.featured.sk-box,.sn-component .sk-box.sk-base.featured,.sn-component .sk-circle.sk-base.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.sk-base.featured:before,.sn-component .sk-base.featured.sk-box:before,.sn-component .sk-box.sk-base.featured:before,.sn-component .sk-circle.sk-base.featured:before{opacity:1.0}.sn-component .sk-button.contrast,.sn-component .contrast.sk-box,.sn-component .sk-box.contrast,.sn-component .sk-circle.contrast{color:var(--sn-stylekit-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-contrast-background-color)}.sn-component .sk-button.contrast *,.sn-component .contrast.sk-box *,.sn-component .sk-box.contrast *,.sn-component .sk-circle.contrast *{position:relative}.sn-component .sk-button.contrast:before,.sn-component .contrast.sk-box:before,.sn-component .sk-box.contrast:before,.sn-component .sk-circle.contrast:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.contrast:after,.sn-component .contrast.sk-box:after,.sn-component .sk-box.contrast:after,.sn-component .sk-circle.contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-contrast-background-color)}.sn-component .sk-button.contrast:hover:before,.sn-component .contrast.sk-box:hover:before,.sn-component .sk-box.contrast:hover:before,.sn-component .sk-circle.contrast:hover:before{filter:brightness(130%)}.sn-component .sk-button.contrast.no-bg,.sn-component .contrast.no-bg.sk-box,.sn-component .sk-box.contrast.no-bg,.sn-component .sk-circle.contrast.no-bg{background-color:transparent}.sn-component .sk-button.contrast.no-bg:before,.sn-component .contrast.no-bg.sk-box:before,.sn-component .sk-box.contrast.no-bg:before,.sn-component .sk-circle.contrast.no-bg:before{content:none}.sn-component .sk-button.contrast.featured,.sn-component .contrast.featured.sk-box,.sn-component .sk-box.contrast.featured,.sn-component .sk-circle.contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.contrast.featured:before,.sn-component .contrast.featured.sk-box:before,.sn-component .sk-box.contrast.featured:before,.sn-component .sk-circle.contrast.featured:before{opacity:1.0}.sn-component .sk-button.sk-secondary,.sn-component .sk-secondary.sk-box,.sn-component .sk-box.sk-secondary,.sn-component .sk-circle.sk-secondary{color:var(--sn-stylekit-secondary-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-background-color)}.sn-component .sk-button.sk-secondary *,.sn-component .sk-secondary.sk-box *,.sn-component .sk-box.sk-secondary *,.sn-component .sk-circle.sk-secondary *{position:relative}.sn-component .sk-button.sk-secondary:before,.sn-component .sk-secondary.sk-box:before,.sn-component .sk-box.sk-secondary:before,.sn-component .sk-circle.sk-secondary:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.sk-secondary:after,.sn-component .sk-secondary.sk-box:after,.sn-component .sk-box.sk-secondary:after,.sn-component .sk-circle.sk-secondary:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-secondary-background-color)}.sn-component .sk-button.sk-secondary:hover:before,.sn-component .sk-secondary.sk-box:hover:before,.sn-component .sk-box.sk-secondary:hover:before,.sn-component .sk-circle.sk-secondary:hover:before{filter:brightness(130%)}.sn-component .sk-button.sk-secondary.no-bg,.sn-component .sk-secondary.no-bg.sk-box,.sn-component .sk-box.sk-secondary.no-bg,.sn-component .sk-circle.sk-secondary.no-bg{background-color:transparent}.sn-component .sk-button.sk-secondary.no-bg:before,.sn-component .sk-secondary.no-bg.sk-box:before,.sn-component .sk-box.sk-secondary.no-bg:before,.sn-component .sk-circle.sk-secondary.no-bg:before{content:none}.sn-component .sk-button.sk-secondary.featured,.sn-component .sk-secondary.featured.sk-box,.sn-component .sk-box.sk-secondary.featured,.sn-component .sk-circle.sk-secondary.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.sk-secondary.featured:before,.sn-component .sk-secondary.featured.sk-box:before,.sn-component .sk-box.sk-secondary.featured:before,.sn-component .sk-circle.sk-secondary.featured:before{opacity:1.0}.sn-component .sk-button.sk-secondary-contrast,.sn-component .sk-secondary-contrast.sk-box,.sn-component .sk-box.sk-secondary-contrast,.sn-component .sk-circle.sk-secondary-contrast{color:var(--sn-stylekit-secondary-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-contrast-background-color)}.sn-component .sk-button.sk-secondary-contrast *,.sn-component .sk-secondary-contrast.sk-box *,.sn-component .sk-box.sk-secondary-contrast *,.sn-component .sk-circle.sk-secondary-contrast *{position:relative}.sn-component .sk-button.sk-secondary-contrast:before,.sn-component .sk-secondary-contrast.sk-box:before,.sn-component .sk-box.sk-secondary-contrast:before,.sn-component .sk-circle.sk-secondary-contrast:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.sk-secondary-contrast:after,.sn-component .sk-secondary-contrast.sk-box:after,.sn-component .sk-box.sk-secondary-contrast:after,.sn-component .sk-circle.sk-secondary-contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-secondary-contrast-background-color)}.sn-component .sk-button.sk-secondary-contrast:hover:before,.sn-component .sk-secondary-contrast.sk-box:hover:before,.sn-component .sk-box.sk-secondary-contrast:hover:before,.sn-component .sk-circle.sk-secondary-contrast:hover:before{filter:brightness(130%)}.sn-component .sk-button.sk-secondary-contrast.no-bg,.sn-component .sk-secondary-contrast.no-bg.sk-box,.sn-component .sk-box.sk-secondary-contrast.no-bg,.sn-component .sk-circle.sk-secondary-contrast.no-bg{background-color:transparent}.sn-component .sk-button.sk-secondary-contrast.no-bg:before,.sn-component .sk-secondary-contrast.no-bg.sk-box:before,.sn-component .sk-box.sk-secondary-contrast.no-bg:before,.sn-component .sk-circle.sk-secondary-contrast.no-bg:before{content:none}.sn-component .sk-button.sk-secondary-contrast.featured,.sn-component .sk-secondary-contrast.featured.sk-box,.sn-component .sk-box.sk-secondary-contrast.featured,.sn-component .sk-circle.sk-secondary-contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.sk-secondary-contrast.featured:before,.sn-component .sk-secondary-contrast.featured.sk-box:before,.sn-component .sk-box.sk-secondary-contrast.featured:before,.sn-component .sk-circle.sk-secondary-contrast.featured:before{opacity:1.0}.sn-component .sk-button.neutral,.sn-component .neutral.sk-box,.sn-component .sk-box.neutral,.sn-component .sk-circle.neutral{color:var(--sn-stylekit-neutral-contrast-color);position:relative;background-color:var(--sn-stylekit-neutral-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-neutral-color)}.sn-component .sk-button.neutral *,.sn-component .neutral.sk-box *,.sn-component .sk-box.neutral *,.sn-component .sk-circle.neutral *{position:relative}.sn-component .sk-button.neutral:before,.sn-component .neutral.sk-box:before,.sn-component .sk-box.neutral:before,.sn-component .sk-circle.neutral:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-neutral-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.neutral:after,.sn-component .neutral.sk-box:after,.sn-component .sk-box.neutral:after,.sn-component .sk-circle.neutral:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-neutral-color)}.sn-component .sk-button.neutral:hover:before,.sn-component .neutral.sk-box:hover:before,.sn-component .sk-box.neutral:hover:before,.sn-component .sk-circle.neutral:hover:before{filter:brightness(130%)}.sn-component .sk-button.neutral.no-bg,.sn-component .neutral.no-bg.sk-box,.sn-component .sk-box.neutral.no-bg,.sn-component .sk-circle.neutral.no-bg{background-color:transparent}.sn-component .sk-button.neutral.no-bg:before,.sn-component .neutral.no-bg.sk-box:before,.sn-component .sk-box.neutral.no-bg:before,.sn-component .sk-circle.neutral.no-bg:before{content:none}.sn-component .sk-button.neutral.featured,.sn-component .neutral.featured.sk-box,.sn-component .sk-box.neutral.featured,.sn-component .sk-circle.neutral.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.neutral.featured:before,.sn-component .neutral.featured.sk-box:before,.sn-component .sk-box.neutral.featured:before,.sn-component .sk-circle.neutral.featured:before{opacity:1.0}.sn-component .sk-button.info,.sn-component .info.sk-box,.sn-component .sk-box.info,.sn-component .sk-circle.info{color:var(--sn-stylekit-info-contrast-color);position:relative;background-color:var(--sn-stylekit-info-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-info-color)}.sn-component .sk-button.info *,.sn-component .info.sk-box *,.sn-component .sk-box.info *,.sn-component .sk-circle.info *{position:relative}.sn-component .sk-button.info:before,.sn-component .info.sk-box:before,.sn-component .sk-box.info:before,.sn-component .sk-circle.info:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-info-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.info:after,.sn-component .info.sk-box:after,.sn-component .sk-box.info:after,.sn-component .sk-circle.info:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-info-color)}.sn-component .sk-button.info:hover:before,.sn-component .info.sk-box:hover:before,.sn-component .sk-box.info:hover:before,.sn-component .sk-circle.info:hover:before{filter:brightness(130%)}.sn-component .sk-button.info.no-bg,.sn-component .info.no-bg.sk-box,.sn-component .sk-box.info.no-bg,.sn-component .sk-circle.info.no-bg{background-color:transparent}.sn-component .sk-button.info.no-bg:before,.sn-component .info.no-bg.sk-box:before,.sn-component .sk-box.info.no-bg:before,.sn-component .sk-circle.info.no-bg:before{content:none}.sn-component .sk-button.info.featured,.sn-component .info.featured.sk-box,.sn-component .sk-box.info.featured,.sn-component .sk-circle.info.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.info.featured:before,.sn-component .info.featured.sk-box:before,.sn-component .sk-box.info.featured:before,.sn-component .sk-circle.info.featured:before{opacity:1.0}.sn-component .sk-button.warning,.sn-component .warning.sk-box,.sn-component .sk-box.warning,.sn-component .sk-circle.warning{color:var(--sn-stylekit-warning-contrast-color);position:relative;background-color:var(--sn-stylekit-warning-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-warning-color)}.sn-component .sk-button.warning *,.sn-component .warning.sk-box *,.sn-component .sk-box.warning *,.sn-component .sk-circle.warning *{position:relative}.sn-component .sk-button.warning:before,.sn-component .warning.sk-box:before,.sn-component .sk-box.warning:before,.sn-component .sk-circle.warning:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-warning-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.warning:after,.sn-component .warning.sk-box:after,.sn-component .sk-box.warning:after,.sn-component .sk-circle.warning:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-warning-color)}.sn-component .sk-button.warning:hover:before,.sn-component .warning.sk-box:hover:before,.sn-component .sk-box.warning:hover:before,.sn-component .sk-circle.warning:hover:before{filter:brightness(130%)}.sn-component .sk-button.warning.no-bg,.sn-component .warning.no-bg.sk-box,.sn-component .sk-box.warning.no-bg,.sn-component .sk-circle.warning.no-bg{background-color:transparent}.sn-component .sk-button.warning.no-bg:before,.sn-component .warning.no-bg.sk-box:before,.sn-component .sk-box.warning.no-bg:before,.sn-component .sk-circle.warning.no-bg:before{content:none}.sn-component .sk-button.warning.featured,.sn-component .warning.featured.sk-box,.sn-component .sk-box.warning.featured,.sn-component .sk-circle.warning.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.warning.featured:before,.sn-component .warning.featured.sk-box:before,.sn-component .sk-box.warning.featured:before,.sn-component .sk-circle.warning.featured:before{opacity:1.0}.sn-component .sk-button.danger,.sn-component .danger.sk-box,.sn-component .sk-box.danger,.sn-component .sk-circle.danger{color:var(--sn-stylekit-danger-contrast-color);position:relative;background-color:var(--sn-stylekit-danger-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-danger-color)}.sn-component .sk-button.danger *,.sn-component .danger.sk-box *,.sn-component .sk-box.danger *,.sn-component .sk-circle.danger *{position:relative}.sn-component .sk-button.danger:before,.sn-component .danger.sk-box:before,.sn-component .sk-box.danger:before,.sn-component .sk-circle.danger:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-danger-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.danger:after,.sn-component .danger.sk-box:after,.sn-component .sk-box.danger:after,.sn-component .sk-circle.danger:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-danger-color)}.sn-component .sk-button.danger:hover:before,.sn-component .danger.sk-box:hover:before,.sn-component .sk-box.danger:hover:before,.sn-component .sk-circle.danger:hover:before{filter:brightness(130%)}.sn-component .sk-button.danger.no-bg,.sn-component .danger.no-bg.sk-box,.sn-component .sk-box.danger.no-bg,.sn-component .sk-circle.danger.no-bg{background-color:transparent}.sn-component .sk-button.danger.no-bg:before,.sn-component .danger.no-bg.sk-box:before,.sn-component .sk-box.danger.no-bg:before,.sn-component .sk-circle.danger.no-bg:before{content:none}.sn-component .sk-button.danger.featured,.sn-component .danger.featured.sk-box,.sn-component .sk-box.danger.featured,.sn-component .sk-circle.danger.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.danger.featured:before,.sn-component .danger.featured.sk-box:before,.sn-component .sk-box.danger.featured:before,.sn-component .sk-circle.danger.featured:before{opacity:1.0}.sn-component .sk-button.success,.sn-component .success.sk-box,.sn-component .sk-box.success,.sn-component .sk-circle.success{color:var(--sn-stylekit-success-contrast-color);position:relative;background-color:var(--sn-stylekit-success-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-success-color)}.sn-component .sk-button.success *,.sn-component .success.sk-box *,.sn-component .sk-box.success *,.sn-component .sk-circle.success *{position:relative}.sn-component .sk-button.success:before,.sn-component .success.sk-box:before,.sn-component .sk-box.success:before,.sn-component .sk-circle.success:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-success-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-button.success:after,.sn-component .success.sk-box:after,.sn-component .sk-box.success:after,.sn-component .sk-circle.success:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-success-color)}.sn-component .sk-button.success:hover:before,.sn-component .success.sk-box:hover:before,.sn-component .sk-box.success:hover:before,.sn-component .sk-circle.success:hover:before{filter:brightness(130%)}.sn-component .sk-button.success.no-bg,.sn-component .success.no-bg.sk-box,.sn-component .sk-box.success.no-bg,.sn-component .sk-circle.success.no-bg{background-color:transparent}.sn-component .sk-button.success.no-bg:before,.sn-component .success.no-bg.sk-box:before,.sn-component .sk-box.success.no-bg:before,.sn-component .sk-circle.success.no-bg:before{content:none}.sn-component .sk-button.success.featured,.sn-component .success.featured.sk-box,.sn-component .sk-box.success.featured,.sn-component .sk-circle.success.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-button.success.featured:before,.sn-component .success.featured.sk-box:before,.sn-component .sk-box.success.featured:before,.sn-component .sk-circle.success.featured:before{opacity:1.0}.sn-component .sk-notification.contrast,.sn-component .sk-input.contrast{color:var(--sn-stylekit-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-contrast-border-color);border:1px solid var(--sn-stylekit-contrast-border-color)}.sn-component .sk-notification.contrast *,.sn-component .sk-input.contrast *{position:relative}.sn-component .sk-notification.contrast:before,.sn-component .sk-input.contrast:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.contrast:after,.sn-component .sk-input.contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-contrast-border-color);border-color:var(--sn-stylekit-contrast-border-color)}.sn-component .sk-notification.contrast.no-bg,.sn-component .sk-input.contrast.no-bg{background-color:transparent}.sn-component .sk-notification.contrast.no-bg:before,.sn-component .sk-input.contrast.no-bg:before{content:none}.sn-component .sk-notification.contrast.featured,.sn-component .sk-input.contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.contrast.featured:before,.sn-component .sk-input.contrast.featured:before{opacity:1.0}.sn-component .sk-notification.sk-secondary,.sn-component .sk-input.sk-secondary{color:var(--sn-stylekit-secondary-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-border-color);border:1px solid var(--sn-stylekit-secondary-border-color)}.sn-component .sk-notification.sk-secondary *,.sn-component .sk-input.sk-secondary *{position:relative}.sn-component .sk-notification.sk-secondary:before,.sn-component .sk-input.sk-secondary:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.sk-secondary:after,.sn-component .sk-input.sk-secondary:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-secondary-border-color);border-color:var(--sn-stylekit-secondary-border-color)}.sn-component .sk-notification.sk-secondary.no-bg,.sn-component .sk-input.sk-secondary.no-bg{background-color:transparent}.sn-component .sk-notification.sk-secondary.no-bg:before,.sn-component .sk-input.sk-secondary.no-bg:before{content:none}.sn-component .sk-notification.sk-secondary.featured,.sn-component .sk-input.sk-secondary.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.sk-secondary.featured:before,.sn-component .sk-input.sk-secondary.featured:before{opacity:1.0}.sn-component .sk-notification.sk-secondary-contrast,.sn-component .sk-input.sk-secondary-contrast{color:var(--sn-stylekit-secondary-contrast-foreground-color);position:relative;background-color:var(--sn-stylekit-secondary-contrast-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-secondary-contrast-border-color);border:1px solid var(--sn-stylekit-secondary-contrast-border-color)}.sn-component .sk-notification.sk-secondary-contrast *,.sn-component .sk-input.sk-secondary-contrast *{position:relative}.sn-component .sk-notification.sk-secondary-contrast:before,.sn-component .sk-input.sk-secondary-contrast:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-secondary-contrast-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.sk-secondary-contrast:after,.sn-component .sk-input.sk-secondary-contrast:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-secondary-contrast-border-color);border-color:var(--sn-stylekit-secondary-contrast-border-color)}.sn-component .sk-notification.sk-secondary-contrast.no-bg,.sn-component .sk-input.sk-secondary-contrast.no-bg{background-color:transparent}.sn-component .sk-notification.sk-secondary-contrast.no-bg:before,.sn-component .sk-input.sk-secondary-contrast.no-bg:before{content:none}.sn-component .sk-notification.sk-secondary-contrast.featured,.sn-component .sk-input.sk-secondary-contrast.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.sk-secondary-contrast.featured:before,.sn-component .sk-input.sk-secondary-contrast.featured:before{opacity:1.0}.sn-component .sk-notification.sk-base,.sn-component .sk-input.sk-base{color:var(--sn-stylekit-foreground-color);position:relative;background-color:var(--sn-stylekit-background-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-border-color);border:1px solid var(--sn-stylekit-border-color)}.sn-component .sk-notification.sk-base *,.sn-component .sk-input.sk-base *{position:relative}.sn-component .sk-notification.sk-base:before,.sn-component .sk-input.sk-base:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-background-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.sk-base:after,.sn-component .sk-input.sk-base:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;color:var(--sn-stylekit-border-color);border-color:var(--sn-stylekit-border-color)}.sn-component .sk-notification.sk-base.no-bg,.sn-component .sk-input.sk-base.no-bg{background-color:transparent}.sn-component .sk-notification.sk-base.no-bg:before,.sn-component .sk-input.sk-base.no-bg:before{content:none}.sn-component .sk-notification.sk-base.featured,.sn-component .sk-input.sk-base.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.sk-base.featured:before,.sn-component .sk-input.sk-base.featured:before{opacity:1.0}.sn-component .sk-notification.neutral,.sn-component .sk-input.neutral{color:var(--sn-stylekit-neutral-contrast-color);position:relative;background-color:var(--sn-stylekit-neutral-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-neutral-color)}.sn-component .sk-notification.neutral *,.sn-component .sk-input.neutral *{position:relative}.sn-component .sk-notification.neutral:before,.sn-component .sk-input.neutral:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-neutral-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.neutral:after,.sn-component .sk-input.neutral:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-neutral-color)}.sn-component .sk-notification.neutral.no-bg,.sn-component .sk-input.neutral.no-bg{background-color:transparent}.sn-component .sk-notification.neutral.no-bg:before,.sn-component .sk-input.neutral.no-bg:before{content:none}.sn-component .sk-notification.neutral.featured,.sn-component .sk-input.neutral.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.neutral.featured:before,.sn-component .sk-input.neutral.featured:before{opacity:1.0}.sn-component .sk-notification.info,.sn-component .sk-input.info{color:var(--sn-stylekit-info-contrast-color);position:relative;background-color:var(--sn-stylekit-info-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-info-color)}.sn-component .sk-notification.info *,.sn-component .sk-input.info *{position:relative}.sn-component .sk-notification.info:before,.sn-component .sk-input.info:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-info-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.info:after,.sn-component .sk-input.info:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-info-color)}.sn-component .sk-notification.info.no-bg,.sn-component .sk-input.info.no-bg{background-color:transparent}.sn-component .sk-notification.info.no-bg:before,.sn-component .sk-input.info.no-bg:before{content:none}.sn-component .sk-notification.info.featured,.sn-component .sk-input.info.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.info.featured:before,.sn-component .sk-input.info.featured:before{opacity:1.0}.sn-component .sk-notification.warning,.sn-component .sk-input.warning{color:var(--sn-stylekit-warning-contrast-color);position:relative;background-color:var(--sn-stylekit-warning-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-warning-color)}.sn-component .sk-notification.warning *,.sn-component .sk-input.warning *{position:relative}.sn-component .sk-notification.warning:before,.sn-component .sk-input.warning:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-warning-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.warning:after,.sn-component .sk-input.warning:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-warning-color)}.sn-component .sk-notification.warning.no-bg,.sn-component .sk-input.warning.no-bg{background-color:transparent}.sn-component .sk-notification.warning.no-bg:before,.sn-component .sk-input.warning.no-bg:before{content:none}.sn-component .sk-notification.warning.featured,.sn-component .sk-input.warning.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.warning.featured:before,.sn-component .sk-input.warning.featured:before{opacity:1.0}.sn-component .sk-notification.danger,.sn-component .sk-input.danger{color:var(--sn-stylekit-danger-contrast-color);position:relative;background-color:var(--sn-stylekit-danger-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-danger-color)}.sn-component .sk-notification.danger *,.sn-component .sk-input.danger *{position:relative}.sn-component .sk-notification.danger:before,.sn-component .sk-input.danger:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-danger-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.danger:after,.sn-component .sk-input.danger:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-danger-color)}.sn-component .sk-notification.danger.no-bg,.sn-component .sk-input.danger.no-bg{background-color:transparent}.sn-component .sk-notification.danger.no-bg:before,.sn-component .sk-input.danger.no-bg:before{content:none}.sn-component .sk-notification.danger.featured,.sn-component .sk-input.danger.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.danger.featured:before,.sn-component .sk-input.danger.featured:before{opacity:1.0}.sn-component .sk-notification.success,.sn-component .sk-input.success{color:var(--sn-stylekit-success-contrast-color);position:relative;background-color:var(--sn-stylekit-success-color);overflow:hidden;border-radius:var(--sn-stylekit-general-border-radius);border-color:var(--sn-stylekit-success-color)}.sn-component .sk-notification.success *,.sn-component .sk-input.success *{position:relative}.sn-component .sk-notification.success:before,.sn-component .sk-input.success:before{content:\"\";position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--sn-stylekit-success-color);opacity:1.0;border-radius:var(--sn-stylekit-general-border-radius)}.sn-component .sk-notification.success:after,.sn-component .sk-input.success:after{content:'';display:block;height:100%;position:absolute;top:0;left:0;width:100%;border-radius:var(--sn-stylekit-general-border-radius);pointer-events:none;box-shadow:inset 0 0 0 1px;color:var(--sn-stylekit-success-color)}.sn-component .sk-notification.success.no-bg,.sn-component .sk-input.success.no-bg{background-color:transparent}.sn-component .sk-notification.success.no-bg:before,.sn-component .sk-input.success.no-bg:before{content:none}.sn-component .sk-notification.success.featured,.sn-component .sk-input.success.featured{border:none;padding:0.75rem 1.25rem;font-size:var(--sn-stylekit-font-size-h3)}.sn-component .sk-notification.success.featured:before,.sn-component .sk-input.success.featured:before{opacity:1.0}.sn-component .sk-notification{padding:1.1rem 1rem;margin:1.4rem 0;text-align:left;cursor:default}.sn-component .sk-notification.one-line{padding:0rem 0.4rem}.sn-component .sk-notification.stretch{width:100%}.sn-component .sk-notification.dashed{border-style:dashed;border-width:2px}.sn-component .sk-notification.dashed:after{box-shadow:none}.sn-component .sk-notification .sk-notification-title{font-size:var(--sn-stylekit-font-size-h1);font-weight:bold;line-height:1.9rem}.sn-component .sk-notification .sk-notification-text{line-height:1.5rem;font-size:var(--sn-stylekit-font-size-p);text-align:left;font-weight:normal}.sn-component .sk-circle{border:1px solid;cursor:pointer;border-color:var(--sn-stylekit-contrast-foreground-color);background-color:var(--sn-stylekit-contrast-background-color);padding:0;border-radius:50% !important;flex-shrink:0}.sn-component .sk-circle:before{border-radius:50% !important}.sn-component .sk-circle:after{border-radius:50% !important}.sn-component .sk-circle.small{width:11px;height:11px}.sn-component .sk-spinner{border:1px solid var(--sn-stylekit-neutral-color);border-radius:50%;animation:rotate 0.8s infinite linear;border-right-color:transparent}.sn-component .sk-spinner.small{width:12px;height:12px}.sn-component .sk-spinner.info-contrast{border-color:var(--sn-stylekit-info-contrast-color);border-right-color:transparent}.sn-component .sk-spinner.info{border-color:var(--sn-stylekit-info-color);border-right-color:transparent}.sn-component .sk-spinner.warning{border-color:var(--sn-stylekit-warning-color);border-right-color:transparent}.sn-component .sk-spinner.danger{border-color:var(--sn-stylekit-danger-color);border-right-color:transparent}.sn-component .sk-spinner.success{border-color:var(--sn-stylekit-success-color);border-right-color:transparent}@keyframes rotate{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}.sn-component .sk-app-bar{display:flex;width:100%;height:2rem;padding:0.0rem 0.8rem;background-color:var(--sn-stylekit-contrast-background-color);color:var(--sn-stylekit-contrast-foreground-color);justify-content:space-between;align-items:center;border:1px solid var(--sn-stylekit-contrast-border-color);user-select:none}.sn-component .sk-app-bar.no-edges{border-left:0;border-right:0}.sn-component .sk-app-bar.no-bottom-edge{border-bottom:0}.sn-component .sk-app-bar .left,.sn-component .sk-app-bar .right{display:flex;height:100%}.sn-component .sk-app-bar .sk-app-bar-item{flex-grow:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.sn-component .sk-app-bar .sk-app-bar-item:not(:first-child){margin-left:1rem}.sn-component .sk-app-bar .sk-app-bar-item.border{border-left:1px solid var(--sn-stylekit-contrast-border-color)}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column{height:100%;display:flex;align-items:center}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column:not(:first-child){margin-left:0.5rem}.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column.underline{border-bottom:2px solid var(--sn-stylekit-info-color)}.sn-component .sk-app-bar .sk-app-bar-item.no-pointer{cursor:default}.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-label:not(.subtle),.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item:hover>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item:hover>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-sublabel:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-label:not(.subtle),.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-panel-section-subtitle:not(.subtle),.sn-component .sk-app-bar .sk-app-bar-item:hover>.sk-app-bar-item-column>.sk-sublabel:not(.subtle){color:var(--sn-stylekit-info-color)}.sn-component .sk-app-bar .sk-app-bar-item>.sk-label,.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item>.sk-panel-section-subtitle,.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-label,.sn-component .sk-app-bar .sk-panel-section .sk-app-bar-item>.sk-app-bar-item-column>.sk-panel-section-subtitle,.sn-component .sk-panel-section .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-panel-section-subtitle{font-weight:bold;font-size:var(--sn-stylekit-font-size-h5);white-space:nowrap}.sn-component .sk-app-bar .sk-app-bar-item>.sk-sublabel,.sn-component .sk-app-bar .sk-app-bar-item>.sk-app-bar-item-column>.sk-sublabel{font-size:var(--sn-stylekit-font-size-h5);font-weight:normal;white-space:nowrap}.sn-component .sk-app-bar .sk-app-bar-item .subtle{font-weight:normal;opacity:0.6}.sn-component .sk-panel-table{display:flex;flex-wrap:wrap;padding-left:1px;padding-top:1px}.sn-component .sk-panel-table .sk-panel-table-item{flex:45%;flex-flow:wrap;border:1px solid var(--sn-stylekit-border-color);padding:1rem;margin-left:-1px;margin-top:-1px;display:flex;flex-direction:column;justify-content:space-between}.sn-component .sk-panel-table .sk-panel-table-item img{max-width:100%;margin-bottom:1rem}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-content{display:flex;flex-direction:row}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column{align-items:center}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.stretch{width:100%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column:not(:first-child){padding-left:0.75rem}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.quarter{flex-basis:25%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-column.three-quarters{flex-basis:75%}.sn-component .sk-panel-table .sk-panel-table-item .sk-panel-table-item-footer{margin-top:1.25rem}.sn-component .sk-panel-table .sk-panel-table-item.no-border{border:none}.sn-component .sk-modal{position:fixed;margin-left:auto;margin-right:auto;left:0;right:0;top:0;bottom:0;z-index:10000;width:100vw;height:100vh;background-color:transparent;color:var(--sn-stylekit-contrast-foreground-color);display:flex;align-items:center;justify-content:center}.sn-component .sk-modal .sn-component{height:100%}.sn-component .sk-modal .sn-component .sk-panel{height:100%}.sn-component .sk-modal.auto-height>.sk-modal-content{height:auto !important}.sn-component .sk-modal.large>.sk-modal-content{width:900px;height:600px}.sn-component .sk-modal.medium>.sk-modal-content{width:700px;height:500px}.sn-component .sk-modal.small>.sk-modal-content{width:700px;height:344px}.sn-component .sk-modal .sk-modal-background{position:absolute;z-index:-1;width:100%;height:100%;background-color:var(--sn-stylekit-contrast-background-color);opacity:0.7}.sn-component .sk-modal>.sk-modal-content{overflow-y:auto;width:auto;padding:0;padding-bottom:0;min-width:300px;-webkit-box-shadow:0px 2px 35px 0px rgba(0,0,0,0.19);-moz-box-shadow:0px 2px 35px 0px rgba(0,0,0,0.19);box-shadow:0px 2px 35px 0px rgba(0,0,0,0.19)}.sn-component.no-select{user-select:none}input,textarea,[contenteditable]{caret-color:var(--sn-stylekit-editor-foreground-color)}.windows-web,.windows-desktop,.linux-web,.linux-desktop{scrollbar-width:thin}.windows-web ::-webkit-scrollbar,.windows-desktop ::-webkit-scrollbar,.linux-web ::-webkit-scrollbar,.linux-desktop ::-webkit-scrollbar{width:17px;height:18px;border-left:0.5px solid var(--sn-stylekit-scrollbar-track-border-color-color)}.windows-web ::-webkit-scrollbar-thumb,.windows-desktop ::-webkit-scrollbar-thumb,.linux-web ::-webkit-scrollbar-thumb,.linux-desktop ::-webkit-scrollbar-thumb{border:4px solid rgba(0,0,0,0);background-clip:padding-box;-webkit-border-radius:10px;background-color:var(--sn-stylekit-scrollbar-thumb-color);-webkit-box-shadow:inset -1px -1px 0px rgba(0,0,0,0.05),inset 1px 1px 0px rgba(0,0,0,0.05)}.windows-web ::-webkit-scrollbar-button,.windows-desktop ::-webkit-scrollbar-button,.linux-web ::-webkit-scrollbar-button,.linux-desktop ::-webkit-scrollbar-button{width:0;height:0;display:none}.windows-web ::-webkit-scrollbar-corner,.windows-desktop ::-webkit-scrollbar-corner,.linux-web ::-webkit-scrollbar-corner,.linux-desktop ::-webkit-scrollbar-corner{background-color:transparent}\n"]}
\ No newline at end of file
diff --git a/build/static/css/main.8cc0684d.chunk.css b/build/static/css/main.8cc0684d.chunk.css
new file mode 100644
index 0000000..d7dbddc
--- /dev/null
+++ b/build/static/css/main.8cc0684d.chunk.css
@@ -0,0 +1,2 @@
+body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Fira Sans","Droid Sans","Helvetica Neue",sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}code{font-family:source-code-pro,Menlo,Monaco,Consolas,"Courier New",monospace}:root{--sn-stylekit-font-size-editor:16px;--sn-stylekit-monospace-font:SFMono-Regular,Consolas,Liberation Mono,Menlo,"Ubuntu Mono",courier,monospace}@media screen and (max-width:650px){:root{--sn-stylekit-font-size-editor:18px}}body,html{font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,"Ubuntu Mono",courier,monospace;font-family:var(--sn-stylekit-monospace-font);height:100%;width:100%;margin:0;padding:0;font-size:var(--sn-stylekit-base-font-size);background-color:transparent}*{-webkit-tap-highlight-color:rgba(0,0,0,0)}#music-editor{display:flex;width:100%;height:100%;min-height:100vh;max-height:100vh;flex-direction:column;font-size:16px;font-size:var(--sn-stylekit-font-size-editor);background-color:var(--sn-stylekit-editor-background-color);color:var(--sn-stylekit-editor-foreground-color)}#header{border-bottom:1px solid var(--sn-stylekit-border-color);padding:5px;background-color:var(--sn-stylekit-background-color);color:var(--sn-stylekit-foreground-color)}#header .segmented-buttons-container{display:flex;justify-content:center;-webkit-user-select:none;-ms-user-select:none;user-select:none}#header .buttons{display:flex}#header .button{padding:4px 12px;margin-right:4px;border:1px solid var(--sn-component-inner-border-color);border-radius:0}#header .button.selected{font-weight:700}#header .sk-label{font-size:13px;width:50px}#header #print-button{position:absolute;right:5px;top:5px}@media screen and (max-width:500px){#header #print-button{display:none}}#editor-container{flex-grow:1;display:flex;flex-direction:row;overflow:hidden}#editor{background-color:var(--sn-stylekit-editor-background-color);color:var(--sn-stylekit-editor-foreground-color);font-size:16px;font-size:var(--sn-stylekit-font-size-editor);-webkit-overflow-scrolling:touch;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,"Ubuntu Mono",courier,monospace;font-family:var(--sn-stylekit-monospace-font);flex-grow:0;border:0;resize:none;padding:12px}#editor.edit{width:100%!important}#editor.split{width:calc(50% - 28px)}#editor.view{width:0!important;padding:0}#column-resizer{width:8px;background-color:var(--sn-stylekit-border-color);cursor:col-resize}#column-resizer.edit,#column-resizer.view{display:none}#view{background-color:var(--sn-stylekit-background-color);color:var(--sn-stylekit-foreground-color);flex:1 1;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,"Ubuntu Mono",courier,monospace;font-family:var(--sn-stylekit-monospace-font);overflow:auto;padding:12px;white-space:pre}#view.edit{width:0!important;padding:0}#view.split{width:calc(50% - 28px)}#view.view{width:100%!important}#view svg{height:100%;width:100%}#view a{color:var(--sn-stylekit-info-color);text-decoration:none}#view a:hover{text-decoration:underline}#view hr{border:.5px solid var(--sn-stylekit-border-color)}@media print{#column-resizer,#editor,#header{display:none}.sn-component{outline:0}}
+/*# sourceMappingURL=main.8cc0684d.chunk.css.map */
\ No newline at end of file
diff --git a/build/static/css/main.8cc0684d.chunk.css.map b/build/static/css/main.8cc0684d.chunk.css.map
new file mode 100644
index 0000000..40818ad
--- /dev/null
+++ b/build/static/css/main.8cc0684d.chunk.css.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack://src/index.css","webpack://src/stylesheets/main.scss","webpack://src/stylesheets/print.scss"],"names":[],"mappings":"AAAA,KACE,QAAS,CACT,mJAEY,CACZ,kCAAmC,CACnC,iCACF,CAEA,KACE,yEAEF,CCVA,MACE,mCAA+B,CAC/B,0GAA6B,CAE9B,oCAGC,MACE,mCAA+B,CAChC,CAGH,UAEE,yFAA8C,CAA9C,6CAA8C,CAC9C,WAAY,CACZ,UAAW,CACX,QAAS,CACT,SAAU,CACV,2CAA4C,CAC5C,4BAA6B,CAC9B,EAIC,yCAA6C,CAC9C,cAGC,YAAa,CACb,UAAW,CACX,WAAY,CACZ,gBAAiB,CACjB,gBAAiB,CACjB,qBAAsB,CACtB,cAA8C,CAA9C,6CAA8C,CAC9C,2DAA4D,CAC5D,gDAAiD,CAClD,QAGC,uDAAwD,CACxD,WAAY,CACZ,oDAAqD,CACrD,yCAA0C,CAJ5C,qCAOI,YAAa,CACb,sBAAuB,CACvB,wBAAA,CAAA,oBAAA,CAAA,gBAAiB,CATrB,iBAaI,YAAa,CAbjB,gBAiBI,gBAAiB,CACjB,gBAAiB,CACjB,uDAAwD,CACxD,eAAgB,CApBpB,yBAuBM,eAAiB,CAvBvB,kBA4BI,cAAe,CACf,UAAW,CA7Bf,sBAiCI,iBAAkB,CAClB,SAAU,CACV,OAAQ,CACR,oCApCJ,sBAqCM,YAAa,CAEhB,CAGH,kBACE,WAAY,CACZ,YAAa,CACb,kBAAmB,CACnB,eAAgB,CACjB,QAGC,2DAA4D,CAC5D,gDAAiD,CACjD,cAA8C,CAA9C,6CAA8C,CAC9C,gCAAiC,CACjC,yFAA8C,CAA9C,6CAA8C,CAgB9C,WAAY,CACZ,QAAW,CACX,WAAY,CACZ,YAAa,CAxBf,aAQI,oBAAsB,CAR1B,cAYI,sBAAuB,CAZ3B,aAgBI,iBAAmB,CAEnB,SAAe,CAChB,gBASD,SAAU,CACV,gDAAiD,CACjD,iBAAkB,CAHpB,0CAOI,YAAa,CACd,MAOD,oDAAqD,CACrD,yCAA0C,CAC1C,QAAO,CACP,yFAA8C,CAA9C,6CAA8C,CAC9C,aAAc,CACd,YAAa,CACb,eAAgB,CAPlB,WAUI,iBAAmB,CAEnB,SAAe,CAZnB,YAgBI,sBAAuB,CAhB3B,WAoBI,oBAAsB,CApB1B,UAuBI,WAAY,CACZ,UAAW,CAxBf,QA2BI,mCAAoC,CACpC,oBAAqB,CA5BzB,cA+BI,yBAA0B,CA/B9B,SAkCI,iDAAmD,CACpD,aCtKD,gCAGE,YAAa,CACd,cAEC,SAAY,CACb","file":"main.8cc0684d.chunk.css","sourcesContent":["body {\n margin: 0;\n font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',\n 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',\n sans-serif;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\ncode {\n font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',\n monospace;\n}\n","@import '~sn-stylekit/dist/stylekit.css';\n\n:root {\n --sn-stylekit-font-size-editor: 16px;\n --sn-stylekit-monospace-font: SFMono-Regular, Consolas, Liberation Mono, Menlo,\n 'Ubuntu Mono', courier, monospace;\n}\n\n@media screen and (max-width: 650px) {\n :root {\n --sn-stylekit-font-size-editor: 18px;\n }\n}\n\nbody,\nhtml {\n font-family: var(--sn-stylekit-monospace-font);\n height: 100%;\n width: 100%;\n margin: 0;\n padding: 0;\n font-size: var(--sn-stylekit-base-font-size);\n background-color: transparent;\n}\n\n* {\n // To prevent gray flash when focusing input on mobile Safari\n -webkit-tap-highlight-color: rgba(0, 0, 0, 0);\n}\n\n#music-editor {\n display: flex;\n width: 100%;\n height: 100%;\n min-height: 100vh;\n max-height: 100vh;\n flex-direction: column;\n font-size: var(--sn-stylekit-font-size-editor);\n background-color: var(--sn-stylekit-editor-background-color);\n color: var(--sn-stylekit-editor-foreground-color);\n}\n\n#header {\n border-bottom: 1px solid var(--sn-stylekit-border-color);\n padding: 5px;\n background-color: var(--sn-stylekit-background-color);\n color: var(--sn-stylekit-foreground-color);\n\n .segmented-buttons-container {\n display: flex;\n justify-content: center;\n user-select: none;\n }\n\n .buttons {\n display: flex;\n }\n\n .button {\n padding: 4px 12px;\n margin-right: 4px;\n border: 1px solid var(--sn-component-inner-border-color);\n border-radius: 0;\n\n &.selected {\n font-weight: bold;\n }\n }\n\n .sk-label {\n font-size: 13px;\n width: 50px;\n }\n\n #print-button {\n position: absolute;\n right: 5px;\n top: 5px;\n @media screen and (max-width: 500px) {\n display: none;\n }\n }\n}\n\n#editor-container {\n flex-grow: 1;\n display: flex;\n flex-direction: row;\n overflow: hidden; // required for footer bar to display in Firefox\n}\n\n#editor {\n background-color: var(--sn-stylekit-editor-background-color);\n color: var(--sn-stylekit-editor-foreground-color);\n font-size: var(--sn-stylekit-font-size-editor);\n -webkit-overflow-scrolling: touch;\n font-family: var(--sn-stylekit-monospace-font);\n\n &.edit {\n width: 100% !important;\n }\n\n &.split {\n width: calc(50% - 28px);\n }\n\n &.view {\n width: 0 !important;\n padding: 0;\n padding-left: 0;\n }\n\n flex-grow: 0;\n border: 0px;\n resize: none;\n padding: 12px;\n}\n\n#column-resizer {\n width: 8px;\n background-color: var(--sn-stylekit-border-color);\n cursor: col-resize;\n\n &.edit,\n &.view {\n display: none;\n }\n\n //&.dragging {\n //}\n}\n\n#view {\n background-color: var(--sn-stylekit-background-color);\n color: var(--sn-stylekit-foreground-color);\n flex: 1;\n font-family: var(--sn-stylekit-monospace-font);\n overflow: auto;\n padding: 12px;\n white-space: pre;\n\n &.edit {\n width: 0 !important;\n padding: 0;\n padding-left: 0;\n }\n\n &.split {\n width: calc(50% - 28px);\n }\n\n &.view {\n width: 100% !important;\n }\n svg {\n height: 100%;\n width: 100%;\n }\n a {\n color: var(--sn-stylekit-info-color);\n text-decoration: none;\n }\n a:hover {\n text-decoration: underline;\n }\n hr {\n border: 0.5px solid var(--sn-stylekit-border-color);\n }\n}\n\n@import './print.scss';\n","@media print {\n #editor,\n #header,\n #column-resizer {\n display: none;\n }\n .sn-component {\n outline: 0px;\n }\n}\n"]}
\ No newline at end of file
diff --git a/build/static/js/2.c20f73b8.chunk.js b/build/static/js/2.c20f73b8.chunk.js
new file mode 100644
index 0000000..4606f47
--- /dev/null
+++ b/build/static/js/2.c20f73b8.chunk.js
@@ -0,0 +1,3 @@
+/*! For license information please see 2.c20f73b8.chunk.js.LICENSE.txt */
+(this["webpackJsonpmusic-editor"]=this["webpackJsonpmusic-editor"]||[]).push([[2],[function(t,e,n){"use strict";t.exports=n(20)},function(t,e,n){"use strict";t.exports=n(21)},function(t,e){function n(e){return t.exports=n=Object.setPrototypeOf?Object.getPrototypeOf:function(t){return t.__proto__||Object.getPrototypeOf(t)},n(e)}t.exports=n},function(t,e,n){var r=n(8),i=n(28),a=n(2),o=n(30),s=n(11),l=n(12),u=n(35),c=n(39),b=n(40),h=n(41),f=n(42),d=n(43),p=n(44);window,t.exports=function(t){var e={};function n(r){if(e[r])return e[r].exports;var i=e[r]={i:r,l:!1,exports:{}};return t[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,r){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:r})},n.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var i in t)n.d(r,i,function(e){return t[e]}.bind(null,i));return r},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,"a",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p="",n(n.s=12)}([function(t,e,n){"use strict";var m=function(){};m.L=function(t,e){if(e){var n=Array.prototype.slice.call(e).join(" ");window.console.log(t+": "+n)}},m.MakeException=function(t){return function(e){f(r,e);var n=d(r);function r(e,i){var a;return h(this,r),(a=n.call(this,e)).name=t,a.message=e,a.data=i,a}return r}(p(Error))},m.RERR=m.RuntimeError=function(){function t(e,n){h(this,t),this.code=e,this.message=n}return b(t,[{key:"toString",value:function(){return"[RuntimeError] "+this.code+":"+this.message}}]),t}(),m.Merge=function(t,e){for(var n in e)t[n]=e[n];return t},m.Min=Math.min,m.Max=Math.max,m.forEach=function(t,e){for(var n=0;n=e/2?parseInt(t/e,10)*e+e:parseInt(t/e,10)*e},m.MidLine=function(t,e){var n=e+(t-e)/2;return n%2>0&&(n=m.RoundN(10*n,5)/10),n},m.SortAndUnique=function(t,e,n){if(t.length>1){var r,i=[];t.sort(e);for(var a=0;a3&&void 0!==arguments[3]?arguments[3]:"#55";t.save(),t.setFillStyle(r),t.beginPath(),t.arc(e,n,3,0,2*Math.PI,!0),t.closePath(),t.fill(),t.restore()},m.BM=function(t,e){var n=(new Date).getTime();e();var r=(new Date).getTime()-n;m.L(t+r+"ms")},m.StackTrace=function(){return(new Error).stack},m.W=function(){for(var t=arguments.length,e=new Array(t),n=0;n0}},{key:"greaterThanEquals",value:function(e){var n=t.__compareB.copy(this);return n.subtract(e),n.numerator>=0}},{key:"lessThan",value:function(t){return!this.greaterThanEquals(t)}},{key:"lessThanEquals",value:function(t){return!this.greaterThan(t)}},{key:"clone",value:function(){return new t(this.numerator,this.denominator)}},{key:"copy",value:function(t){return"number"==typeof t?this.set(t||0,1):this.set(t.numerator,t.denominator)}},{key:"quotient",value:function(){return Math.floor(this.numerator/this.denominator)}},{key:"fraction",value:function(){return this.numerator%this.denominator}},{key:"abs",value:function(){return this.denominator=Math.abs(this.denominator),this.numerator=Math.abs(this.numerator),this}},{key:"toString",value:function(){return this.numerator+"/"+this.denominator}},{key:"toSimplifiedString",value:function(){return t.__tmp.copy(this).simplify().toString()}},{key:"toMixedString",value:function(){var e="",n=this.quotient(),r=t.__tmp.copy(this);return n<0?r.abs().fraction():r.fraction(),0!==n?(e+=n,0!==r.numerator&&(e+=" "+r.toSimplifiedString())):e=0===r.numerator?"0":r.toSimplifiedString(),e}},{key:"parse",value:function(t){var e=t.split("/"),n=parseInt(e[0],10),r=e[1]?parseInt(e[1],10):1;return this.set(n,r)}}]),t}();v.__compareA=new v,v.__compareB=new v,v.__tmp=new v;var y=m.MakeException("RegistryError");function g(t,e,n,r,i){t[e][n]||(t[e][n]={}),t[e][n][r]=i}var _=function(){function t(){h(this,t),this.clear()}return b(t,null,[{key:"INDEXES",get:function(){return["type"]}}]),b(t,[{key:"clear",value:function(){return this.index={id:{},type:{},class:{}},this}},{key:"updateIndex",value:function(t){var e=t.id,n=t.name,r=t.value,i=t.oldValue,a=this.getElementById(e);null!==i&&this.index[n][i]&&delete this.index[n][i][e],null!==r&&g(this.index,n,r,a.getAttribute("id"),a)}},{key:"register",value:function(e,n){var r=this;if(!(n=n||e.getAttribute("id")))throw new y("Can't add element without `id` attribute to registry",e);return e.setAttribute("id",n),g(this.index,"id",n,n,e),t.INDEXES.forEach((function(t){r.updateIndex({id:n,name:t,value:e.getAttribute(t),oldValue:null})})),e.onRegister(this),this}},{key:"getElementById",value:function(t){return this.index.id[t]?this.index.id[t][t]:null}},{key:"getElementsByAttribute",value:function(t,e){var n=this.index[t];return n&&n[e]?Object.keys(n[e]).map((function(t){return n[e][t]})):[]}},{key:"getElementsByType",value:function(t){return this.getElementsByAttribute("type",t)}},{key:"getElementsByClass",value:function(t){return this.getElementsByAttribute("class",t)}},{key:"onUpdate",value:function(e){var n=e.id,r=e.name,i=e.value,a=e.oldValue;return function(t,e){return t.filter((function(t){return t===e})).length>0}(t.INDEXES.concat(["id","class"]),r)?(this.updateIndex({id:n,name:r,value:i,oldValue:a}),this):this}}],[{key:"enableDefaultRegistry",value:function(e){t.defaultRegistry=e}},{key:"getDefaultRegistry",value:function(){return t.defaultRegistry}},{key:"disableDefaultRegistry",value:function(){t.defaultRegistry=null}}]),t}();_.defaultRegistry=null;var x=function(){function t(){var e=(arguments.length>0&&void 0!==arguments[0]?arguments[0]:{}).type;h(this,t),this.attrs={id:t.newID(),el:null,type:e||"Base",classes:{}},this.boundingBox=null,this.context=null,this.rendered=!1,this.fontStack=R.DEFAULT_FONT_STACK,this.musicFont=R.DEFAULT_FONT_STACK[0],_.getDefaultRegistry()&&_.getDefaultRegistry().register(this)}return b(t,null,[{key:"newID",value:function(){return"auto"+t.ID++}}]),b(t,[{key:"setFontStack",value:function(t){return this.fontStack=t,this.musicFont=t[0],this}},{key:"getFontStack",value:function(){return this.fontStack}},{key:"setStyle",value:function(t){return this.style=t,this}},{key:"getStyle",value:function(){return this.style}},{key:"applyStyle",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.context,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.getStyle();return e?(t.save(),e.shadowColor&&t.setShadowColor(e.shadowColor),e.shadowBlur&&t.setShadowBlur(e.shadowBlur),e.fillStyle&&t.setFillStyle(e.fillStyle),e.strokeStyle&&t.setStrokeStyle(e.strokeStyle),e.lineWidth&&t.setLineWidth(e.lineWidth),this):this}},{key:"restoreStyle",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:this.context;return(arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.getStyle())?(t.restore(),this):this}},{key:"drawWithStyle",value:function(){this.checkContext(),this.applyStyle(),this.draw(),this.restoreStyle()}},{key:"hasClass",value:function(t){return!0===this.attrs.classes[t]}},{key:"addClass",value:function(t){return this.attrs.classes[t]=!0,this.registry&&this.registry.onUpdate({id:this.getAttribute("id"),name:"class",value:t,oldValue:null}),this}},{key:"removeClass",value:function(t){return delete this.attrs.classes[t],this.registry&&this.registry.onUpdate({id:this.getAttribute("id"),name:"class",value:null,oldValue:t}),this}},{key:"onRegister",value:function(t){return this.registry=t,this}},{key:"isRendered",value:function(){return this.rendered}},{key:"setRendered",value:function(){var t=!(arguments.length>0&&void 0!==arguments[0])||arguments[0];return this.rendered=t,this}},{key:"getAttributes",value:function(){return this.attrs}},{key:"getAttribute",value:function(t){return this.attrs[t]}},{key:"setAttribute",value:function(t,e){var n=this.attrs.id,r=this.attrs[t];return this.attrs[t]=e,this.registry&&this.registry.onUpdate({id:n,name:t,value:e,oldValue:r}),this}},{key:"getContext",value:function(){return this.context}},{key:"setContext",value:function(t){return this.context=t,this}},{key:"getBoundingBox",value:function(){return this.boundingBox}},{key:"checkContext",value:function(){if(!this.context)throw new m.RERR("NoContext","No rendering context attached to instance");return this.context}}]),t}();x.ID=1e3;var k=function(){function t(e,n,r,i){h(this,t),this.x1=Number.NaN,this.y1=Number.NaN,this.x2=Number.NaN,this.y2=Number.NaN,this.addPoint(e,n),this.addPoint(r,i)}return b(t,[{key:"width",value:function(){return this.x2-this.x1}},{key:"height",value:function(){return this.y2-this.y1}},{key:"noOp",value:function(){}},{key:"addPoint",value:function(t,e){null!=t&&((isNaN(this.x1)||isNaN(this.x2))&&(this.x1=t,this.x2=t),tthis.x2&&(this.x2=t)),null!=e&&((isNaN(this.y1)||isNaN(this.y2))&&(this.y1=e,this.y2=e),ethis.y2&&(this.y2=e))}},{key:"addX",value:function(t){this.addPoint(t,null)}},{key:"addY",value:function(t){this.addPoint(null,t)}},{key:"addQuadraticCurve",value:function(t,e,n,r,i,a){var o=t+2/3*(n-t),s=e+2/3*(r-e),l=o+1/3*(i-t),u=s+1/3*(a-e);this.addBezierCurve(t,e,o,s,l,u,i,a)}},{key:"addBezierCurve",value:function(t,e,n,r,i,a,o,s){var l,u=[t,e],c=[n,r],b=[i,a],h=[o,s];this.addPoint(u[0],u[1]),this.addPoint(h[0],h[1]);var f=function(t,e){return Math.pow(1-t,3)*u[e]+3*Math.pow(1-t,2)*t*c[e]+3*(1-t)*Math.pow(t,2)*b[e]+Math.pow(t,3)*h[e]};for(l=0;l<=1;l++){var d=6*u[l]-12*c[l]+6*b[l],p=-3*u[l]+9*c[l]-9*b[l]+3*h[l],m=3*c[l]-3*u[l];if(0!==p){var v=Math.pow(d,2)-4*m*p;if(!(v<0)){var y=(-d+Math.sqrt(v))/(2*p);01?e-1:0),r=1;r2&&void 0!==arguments[2]?arguments[2]:null,a=n.lookupGlyph(t,e),o=a.glyph,s=a.font,l=i?n.lookupFontMetric({font:s,category:i,code:e,key:"shiftX",defaultValue:0}):0,u=i?n.lookupFontMetric({font:s,category:i,code:e,key:"shiftY",defaultValue:0}):0,c=i?n.lookupFontMetric({font:s,category:i,code:e,key:"scale",defaultValue:1}):1,b=o.x_min,h=o.x_max,f=o.ha;if(o.o)return o.cached_outline?r=o.cached_outline:(r=o.o.split(" "),o.cached_outline=r),{x_min:b,x_max:h,x_shift:l,y_shift:u,scale:c,ha:f,outline:r,font:s};throw new m.RERR("BadGlyph","Glyph ".concat(e," has no outline defined."))}},{key:"renderGlyph",value:function(t,e,r,i,a,o){var s=c({fontStack:R.DEFAULT_FONT_STACK,category:null},o),l=n.loadMetrics(s.fontStack,a,s.category),u=72*(i=s.category?n.lookupFontMetric({font:l.font,category:s.category,code:a,key:"point",defaultValue:i}):i)/(100*l.font.getResolution());return n.renderOutline(t,l.outline,u*l.scale,e+l.x_shift,r+l.y_shift,o),l}},{key:"renderOutline",value:function(t,e,n,r,i,a){t.beginPath(),t.moveTo(r,i),S(e,r,i,n,-n,{m:t.moveTo.bind(t),l:t.lineTo.bind(t),q:t.quadraticCurveTo.bind(t),b:t.bezierCurveTo.bind(t)}),t.fill()}},{key:"getOutlineBoundingBox",value:function(t,e,n,r){var i=new k;return S(t,n,r,e,-e,{m:i.addPoint.bind(i),l:i.addPoint.bind(i),q:i.addQuadraticCurve.bind(i),b:i.addBezierCurve.bind(i),z:i.noOp.bind(i)}),new w(i.x1,i.y1,i.width(),i.height())}}]),b(n,[{key:"getCode",value:function(){return this.code}},{key:"setOptions",value:function(t){this.options=c(c({},this.options),t),this.reset()}},{key:"setPoint",value:function(t){return this.point=t,this}},{key:"setStave",value:function(t){return this.stave=t,this}},{key:"setXShift",value:function(t){return this.x_shift=t,this}},{key:"setYShift",value:function(t){return this.y_shift=t,this}},{key:"reset",value:function(){this.metrics=n.loadMetrics(this.options.fontStack,this.code,this.options.category),this.point=this.options.category?n.lookupFontMetric({category:this.options.category,font:this.metrics.font,code:this.code,key:"point",defaultValue:this.point}):this.point,this.scale=72*this.point/(100*this.metrics.font.getResolution()),this.bbox=n.getOutlineBoundingBox(this.metrics.outline,this.scale*this.metrics.scale,this.metrics.x_shift,this.metrics.y_shift)}},{key:"getMetrics",value:function(){if(!this.metrics)throw new m.RuntimeError("BadGlyph","Glyph ".concat(this.code," is not initialized."));return{x_min:this.metrics.x_min*this.scale*this.metrics.scale,x_max:this.metrics.x_max*this.scale*this.metrics.scale,width:this.bbox.getW(),height:this.bbox.getH()}}},{key:"setOriginX",value:function(t){var e=this.bbox,n=(t-Math.abs(e.getX()/e.getW()))*e.getW();this.originShift.x=-n}},{key:"setOriginY",value:function(t){var e=this.bbox,n=(t-Math.abs(e.getY()/e.getH()))*e.getH();this.originShift.y=-n}},{key:"setOrigin",value:function(t,e){this.setOriginX(t),this.setOriginY(e)}},{key:"render",value:function(t,e,r){if(!this.metrics)throw new m.RuntimeError("BadGlyph","Glyph ".concat(this.code," is not initialized."));var i=this.metrics.outline,a=this.scale*this.metrics.scale;this.setRendered(),this.applyStyle(t),n.renderOutline(t,i,a,e+this.originShift.x+this.metrics.x_shift,r+this.originShift.y+this.metrics.y_shift),this.restoreStyle(t)}},{key:"renderToStave",value:function(t){if(this.checkContext(),!this.metrics)throw new m.RuntimeError("BadGlyph","Glyph ".concat(this.code," is not initialized."));if(!this.stave)throw new m.RuntimeError("GlyphError","No valid stave");var e=this.metrics.outline,r=this.scale*this.metrics.scale;this.setRendered(),this.applyStyle(),n.renderOutline(this.context,e,r,t+this.x_shift+this.metrics.x_shift,this.stave.getYForGlyphs()+this.y_shift+this.metrics.y_shift),this.restoreStyle()}}]),n}(x),E=function(){function t(e,n,r){h(this,t),this.name=e,this.metrics=n,this.fontData=r,this.codePoints={}}return b(t,[{key:"getName",value:function(){return this.name}},{key:"getResolution",value:function(){return this.fontData.resolution}},{key:"getMetrics",value:function(){return this.metrics}},{key:"lookupMetric",value:function(t,e){for(var n=t.split("."),r=this.metrics,i=0;i=6&&2*l%2==0&&(u=-1);var b=void 0!==o.int_val?12*s+o.int_val:null,h=o.code,f=o.shift_right,d={};if(i.length>2&&i[2]){var p=i[2].toUpperCase();d=R.keyProperties.customNoteHeads[p]||{}}return c({key:a,octave:s,line:l,int_value:b,accidental:o.accidental,code:h,stroke:u,shift_right:f,displaced:!1},d)},R.keyProperties.note_values={C:{index:0,int_val:0,accidental:null},CN:{index:0,int_val:0,accidental:"n"},"C#":{index:0,int_val:1,accidental:"#"},"C##":{index:0,int_val:2,accidental:"##"},CB:{index:0,int_val:-1,accidental:"b"},CBB:{index:0,int_val:-2,accidental:"bb"},D:{index:1,int_val:2,accidental:null},DN:{index:1,int_val:2,accidental:"n"},"D#":{index:1,int_val:3,accidental:"#"},"D##":{index:1,int_val:4,accidental:"##"},DB:{index:1,int_val:1,accidental:"b"},DBB:{index:1,int_val:0,accidental:"bb"},E:{index:2,int_val:4,accidental:null},EN:{index:2,int_val:4,accidental:"n"},"E#":{index:2,int_val:5,accidental:"#"},"E##":{index:2,int_val:6,accidental:"##"},EB:{index:2,int_val:3,accidental:"b"},EBB:{index:2,int_val:2,accidental:"bb"},F:{index:3,int_val:5,accidental:null},FN:{index:3,int_val:5,accidental:"n"},"F#":{index:3,int_val:6,accidental:"#"},"F##":{index:3,int_val:7,accidental:"##"},FB:{index:3,int_val:4,accidental:"b"},FBB:{index:3,int_val:3,accidental:"bb"},G:{index:4,int_val:7,accidental:null},GN:{index:4,int_val:7,accidental:"n"},"G#":{index:4,int_val:8,accidental:"#"},"G##":{index:4,int_val:9,accidental:"##"},GB:{index:4,int_val:6,accidental:"b"},GBB:{index:4,int_val:5,accidental:"bb"},A:{index:5,int_val:9,accidental:null},AN:{index:5,int_val:9,accidental:"n"},"A#":{index:5,int_val:10,accidental:"#"},"A##":{index:5,int_val:11,accidental:"##"},AB:{index:5,int_val:8,accidental:"b"},ABB:{index:5,int_val:7,accidental:"bb"},B:{index:6,int_val:11,accidental:null},BN:{index:6,int_val:11,accidental:"n"},"B#":{index:6,int_val:12,accidental:"#"},"B##":{index:6,int_val:13,accidental:"##"},BB:{index:6,int_val:10,accidental:"b"},BBB:{index:6,int_val:9,accidental:"bb"},R:{index:6,int_val:9,rest:!0},X:{index:6,accidental:"",octave:4,code:"noteheadXBlack",shift_right:5.5}},R.integerToNote=function(t){if(void 0===t)throw new m.RERR("BadArguments","Undefined integer for integerToNote");if(t<-2)throw new m.RERR("BadArguments","integerToNote requires integer > -2: "+t);var e=R.integerToNote.table[t];if(!e)throw new m.RERR("BadArguments","Unknown note value for integer: "+t);return e},R.integerToNote.table={0:"C",1:"C#",2:"D",3:"D#",4:"E",5:"F",6:"F#",7:"G",8:"G#",9:"A",10:"A#",11:"B"},R.tabToGlyph=function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:1,n=null,r=0,i=0;if("X"===t.toString().toUpperCase()){var a=new T("accidentalDoubleSharp",R.DEFAULT_TABLATURE_FONT_SCALE).getMetrics();n="accidentalDoubleSharp",r=a.width,i=-a.height/2}else r=R.textWidth(t.toString());return{text:t,code:n,getWidth:function(){return r*e},shift_y:i}},R.textWidth=function(t){return 7*t.toString().length},R.articulationCodes=function(t){return R.articulationCodes.articulations[t]},R.articulationCodes.articulations={"a.":{code:"augmentationDot",between_lines:!0},av:{aboveCode:"articStaccatissimoAbove",belowCode:"articStaccatissimoBelow",between_lines:!0},"a>":{aboveCode:"articAccentAbove",belowCode:"articAccentBelow",between_lines:!0},"a-":{aboveCode:"articTenutoAbove",belowCode:"articTenutoBelow",between_lines:!0},"a^":{aboveCode:"articMarcatoAbove",belowCode:"articMarcatoBelow",between_lines:!1},"a+":{code:"pluckedLeftHandPizzicato",between_lines:!1},ao:{aboveCode:"pluckedSnapPizzicatoAbove",belowCode:"pluckedSnapPizzicatoBelow",between_lines:!1},ah:{code:"stringsHarmonic",between_lines:!1},"a@":{aboveCode:"fermataAbove",belowCode:"fermataBelow",between_lines:!1},"a@a":{code:"fermataAbove",between_lines:!1},"a@u":{code:"fermataBelow",between_lines:!1},"a|":{code:"stringsUpBow",between_lines:!1},am:{code:"stringsDownBow",between_lines:!1},"a,":{code:"pictChokeCymbal",between_lines:!1}},R.accidentalCodes=function(t){return R.accidentalCodes.accidentals[t]},R.accidentalCodes.accidentals={"#":{code:"accidentalSharp",parenRightPaddingAdjustment:-1},"##":{code:"accidentalDoubleSharp",parenRightPaddingAdjustment:-1},b:{code:"accidentalFlat",parenRightPaddingAdjustment:-2},bb:{code:"accidentalDoubleFlat",parenRightPaddingAdjustment:-2},n:{code:"accidentalNatural",parenRightPaddingAdjustment:-1},"{":{code:"accidentalParensLeft",parenRightPaddingAdjustment:-1},"}":{code:"accidentalParensRight",parenRightPaddingAdjustment:-1},db:{code:"accidentalThreeQuarterTonesFlatZimmermann",parenRightPaddingAdjustment:-1},d:{code:"accidentalQuarterToneFlatStein",parenRightPaddingAdjustment:0},"++":{code:"accidentalThreeQuarterTonesSharpStein",parenRightPaddingAdjustment:-1},"+":{code:"accidentalQuarterToneSharpStein",parenRightPaddingAdjustment:-1},"+-":{code:"accidentalKucukMucennebSharp",parenRightPaddingAdjustment:-1},bs:{code:"accidentalBakiyeFlat",parenRightPaddingAdjustment:-1},bss:{code:"accidentalBuyukMucennebFlat",parenRightPaddingAdjustment:-1},o:{code:"accidentalSori",parenRightPaddingAdjustment:-1},k:{code:"accidentalKoron",parenRightPaddingAdjustment:-1},bbs:{code:"vexAccidentalMicrotonal1",parenRightPaddingAdjustment:-1},"++-":{code:"vexAccidentalMicrotonal2",parenRightPaddingAdjustment:-1},ashs:{code:"vexAccidentalMicrotonal3",parenRightPaddingAdjustment:-1},afhf:{code:"vexAccidentalMicrotonal4",parenRightPaddingAdjustment:-1}},R.accidentalColumnsTable={1:{a:[1],b:[1]},2:{a:[1,2]},3:{a:[1,3,2],b:[1,2,1],second_on_bottom:[1,2,3]},4:{a:[1,3,4,2],b:[1,2,3,1],spaced_out_tetrachord:[1,2,1,2]},5:{a:[1,3,5,4,2],b:[1,2,4,3,1],spaced_out_pentachord:[1,2,3,2,1],very_spaced_out_pentachord:[1,2,1,2,1]},6:{a:[1,3,5,6,4,2],b:[1,2,4,5,3,1],spaced_out_hexachord:[1,3,2,1,3,2],very_spaced_out_hexachord:[1,2,1,2,1,2]}},R.ornamentCodes=function(t){return R.ornamentCodes.ornaments[t]},R.ornamentCodes.ornaments={mordent:{code:"ornamentShortTrill"},mordent_inverted:{code:"ornamentMordent"},turn:{code:"ornamentTurn"},turn_inverted:{code:"ornamentTurnSlash"},tr:{code:"ornamentTrill"},upprall:{code:"ornamentPrecompSlideTrillDAnglebert"},downprall:{code:"ornamentPrecompDoubleCadenceUpperPrefix"},prallup:{code:"ornamentPrecompTrillSuffixDandrieu"},pralldown:{code:"ornamentPrecompTrillLowerSuffix"},upmordent:{code:"ornamentPrecompSlideTrillBach"},downmordent:{code:"ornamentPrecompDoubleCadenceUpperPrefixTurn"},lineprall:{code:"ornamentPrecompAppoggTrill"},prallprall:{code:"ornamentTremblement"}},R.keySignature=function(t){var e=R.keySignature.keySpecs[t];if(!e)throw new m.RERR("BadKeySignature","Bad key signature spec: '".concat(t,"'"));if(!e.acc)return[];for(var n=R.keySignature.accidentalList(e.acc),r=[],i=0;i0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"v53",t).getMetrics().width},stem:!1,stem_offset:0,flag:!1,stem_up_extension:-R.STEM_HEIGHT,stem_down_extension:-R.STEM_HEIGHT,tabnote_stem_up_extension:-R.STEM_HEIGHT,tabnote_stem_down_extension:-R.STEM_HEIGHT,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadDoubleWhole"},h:{code_head:"unpitchedPercussionClef1"},m:{code_head:"vexNoteHeadMutedBreve",stem_offset:0},r:{code_head:"restDoubleWhole",rest:!0,position:"B/5",dot_shiftY:.5},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},1:{common:{getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"v1d",t).getMetrics().width},stem:!1,stem_offset:0,flag:!1,stem_up_extension:-R.STEM_HEIGHT,stem_down_extension:-R.STEM_HEIGHT,tabnote_stem_up_extension:-R.STEM_HEIGHT,tabnote_stem_down_extension:-R.STEM_HEIGHT,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadWhole"},h:{code_head:"noteheadDiamondWhole"},m:{code_head:"noteheadXWhole",stem_offset:-3},r:{code_head:"restWhole",rest:!0,position:"D/5",dot_shiftY:.5},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},2:{common:{getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"noteheadHalf",t).getMetrics().width},stem:!0,stem_offset:0,flag:!1,stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadHalf"},h:{code_head:"noteheadDiamondHalf"},m:{code_head:"noteheadXHalf",stem_offset:-3},r:{code_head:"restHalf",stem:!1,rest:!0,position:"B/4",dot_shiftY:-.5},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},4:{common:{getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"noteheadBlack",t).getMetrics().width},stem:!0,stem_offset:0,flag:!1,stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadBlack"},h:{code_head:"noteheadDiamondBlack"},m:{code_head:"noteheadXBlack"},r:{code_head:"restQuarter",stem:!1,rest:!0,position:"B/4",dot_shiftY:-.5,line_above:1.5,line_below:1.5},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},8:{common:{getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"noteheadBlack",t).getMetrics().width},stem:!0,stem_offset:0,flag:!0,beam_count:1,code_flag_upstem:"flag8thUp",code_flag_downstem:"flag8thDown",stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadBlack"},h:{code_head:"noteheadDiamondBlack"},m:{code_head:"noteheadXBlack"},r:{code_head:"rest8th",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-.5,line_above:1,line_below:1},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},16:{common:{beam_count:2,getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"noteheadBlack",t).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"flag16thUp",code_flag_downstem:"flag16thDown",stem_up_extension:0,stem_down_extension:0,tabnote_stem_up_extension:0,tabnote_stem_down_extension:0,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadBlack"},h:{code_head:"noteheadDiamondBlack"},m:{code_head:"noteheadXBlack"},r:{code_head:"rest16th",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-.5,line_above:1,line_below:2},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},32:{common:{beam_count:3,getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"noteheadBlack",t).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"flag32ndUp",code_flag_downstem:"flag32ndDown",stem_up_extension:9,stem_down_extension:9,tabnote_stem_up_extension:8,tabnote_stem_down_extension:5,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadBlack"},h:{code_head:"noteheadDiamondBlack"},m:{code_head:"noteheadXBlack"},r:{code_head:"rest32nd",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-1.5,line_above:2,line_below:2},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},64:{common:{beam_count:4,getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"noteheadBlack",t).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"flag64thUp",code_flag_downstem:"flag64thDown",stem_up_extension:13,stem_down_extension:13,tabnote_stem_up_extension:12,tabnote_stem_down_extension:9,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadBlack"},h:{code_head:"noteheadDiamondBlack"},m:{code_head:"noteheadXBlack"},r:{code_head:"rest64th",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:-1.5,line_above:2,line_below:3},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}},128:{common:{beam_count:5,getWidth:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:R.DEFAULT_NOTATION_FONT_SCALE;return new T(this.code_head||"noteheadBlack",t).getMetrics().width},stem:!0,stem_offset:0,flag:!0,code_flag_upstem:"flag128thUp",code_flag_downstem:"flag128thDown",stem_up_extension:22,stem_down_extension:22,tabnote_stem_up_extension:21,tabnote_stem_down_extension:18,dot_shiftY:0,line_above:0,line_below:0},type:{n:{code_head:"noteheadBlack"},h:{code_head:"noteheadDiamondBlack"},m:{code_head:"noteheadXBlack"},r:{code_head:"rest128th",stem:!1,flag:!1,rest:!0,position:"B/4",dot_shiftY:1.5,line_above:3,line_below:3},s:{getWidth:function(){return R.SLASH_NOTEHEAD_WIDTH},position:"B/4"}}}},R.TIME4_4={num_beats:4,beat_value:4,resolution:R.RESOLUTION};var F=function(){function t(e){h(this,t),this.vexFlowCanvasContext=e,e.canvas?this.canvas=e.canvas:this.canvas={width:t.WIDTH,height:t.HEIGHT}}return b(t,null,[{key:"SanitizeCanvasDims",value:function(t,e){return Math.max(t,e)>this.CANVAS_BROWSER_SIZE_LIMIT&&(m.W("Canvas dimensions exceed browser limit. Cropping to "+this.CANVAS_BROWSER_SIZE_LIMIT),t>this.CANVAS_BROWSER_SIZE_LIMIT&&(t=this.CANVAS_BROWSER_SIZE_LIMIT),e>this.CANVAS_BROWSER_SIZE_LIMIT&&(e=this.CANVAS_BROWSER_SIZE_LIMIT)),[t,e]}},{key:"WIDTH",get:function(){return 600}},{key:"HEIGHT",get:function(){return 400}},{key:"CANVAS_BROWSER_SIZE_LIMIT",get:function(){return 32767}}]),b(t,[{key:"clear",value:function(){this.vexFlowCanvasContext.clearRect(0,0,this.canvas.width,this.canvas.height)}},{key:"openGroup",value:function(){}},{key:"closeGroup",value:function(){}},{key:"add",value:function(){}},{key:"setFont",value:function(t,e,n){return this.vexFlowCanvasContext.font=(n||"")+" "+e+"pt "+t,this}},{key:"setRawFont",value:function(t){return this.vexFlowCanvasContext.font=t,this}},{key:"setFillStyle",value:function(t){return this.vexFlowCanvasContext.fillStyle=t,this}},{key:"setBackgroundFillStyle",value:function(t){return this.background_fillStyle=t,this}},{key:"setStrokeStyle",value:function(t){return this.vexFlowCanvasContext.strokeStyle=t,this}},{key:"setShadowColor",value:function(t){return this.vexFlowCanvasContext.shadowColor=t,this}},{key:"setShadowBlur",value:function(t){return this.vexFlowCanvasContext.shadowBlur=t,this}},{key:"setLineWidth",value:function(t){return this.vexFlowCanvasContext.lineWidth=t,this}},{key:"setLineCap",value:function(t){return this.vexFlowCanvasContext.lineCap=t,this}},{key:"setLineDash",value:function(t){return this.vexFlowCanvasContext.lineDash=t,this}},{key:"scale",value:function(t,e){return this.vexFlowCanvasContext.scale(parseFloat(t),parseFloat(e))}},{key:"resize",value:function(t,e){var n,r;return n=this.SanitizeCanvasDims(parseInt(t,10),parseInt(e,10)),t=(r=u(n,2))[0],e=r[1],this.vexFlowCanvasContext.resize(t,e)}},{key:"rect",value:function(t,e,n,r){return this.vexFlowCanvasContext.rect(t,e,n,r)}},{key:"fillRect",value:function(t,e,n,r){return this.vexFlowCanvasContext.fillRect(t,e,n,r)}},{key:"clearRect",value:function(t,e,n,r){return this.vexFlowCanvasContext.clearRect(t,e,n,r)}},{key:"beginPath",value:function(){return this.vexFlowCanvasContext.beginPath()}},{key:"moveTo",value:function(t,e){return this.vexFlowCanvasContext.moveTo(t,e)}},{key:"lineTo",value:function(t,e){return this.vexFlowCanvasContext.lineTo(t,e)}},{key:"bezierCurveTo",value:function(t,e,n,r,i,a){return this.vexFlowCanvasContext.bezierCurveTo(t,e,n,r,i,a)}},{key:"quadraticCurveTo",value:function(t,e,n,r){return this.vexFlowCanvasContext.quadraticCurveTo(t,e,n,r)}},{key:"arc",value:function(t,e,n,r,i,a){return this.vexFlowCanvasContext.arc(t,e,n,r,i,a)}},{key:"glow",value:function(){return this.vexFlowCanvasContext.glow()}},{key:"fill",value:function(){return this.vexFlowCanvasContext.fill()}},{key:"stroke",value:function(){return this.vexFlowCanvasContext.stroke()}},{key:"closePath",value:function(){return this.vexFlowCanvasContext.closePath()}},{key:"measureText",value:function(t){return this.vexFlowCanvasContext.measureText(t)}},{key:"fillText",value:function(t,e,n){return this.vexFlowCanvasContext.fillText(t,e,n)}},{key:"save",value:function(){return this.vexFlowCanvasContext.save()}},{key:"restore",value:function(){return this.vexFlowCanvasContext.restore()}}]),t}(),M=function(){function t(e){h(this,t),this.element=e,this.paper=Raphael(e),this.path="",this.pen={x:0,y:0},this.lineWidth=1,this.state={scale:{x:1,y:1},font_family:"Arial",font_size:8,font_weight:800},this.attributes={"stroke-width":.3,fill:"black",stroke:"black",font:"10pt Arial"},this.background_attributes={"stroke-width":0,fill:"white",stroke:"white",font:"10pt Arial"},this.shadow_attributes={width:0,color:"black"},this.state_stack=[]}return b(t,[{key:"openGroup",value:function(){}},{key:"closeGroup",value:function(){}},{key:"add",value:function(){}},{key:"setFont",value:function(t,e,n){return this.state.font_family=t,this.state.font_size=e,this.state.font_weight=n,this.attributes.font=(this.state.font_weight||"")+" "+this.state.font_size*this.state.scale.x+"pt "+this.state.font_family,this}},{key:"setRawFont",value:function(t){return this.attributes.font=t,this}},{key:"setFillStyle",value:function(t){return this.attributes.fill=t,this}},{key:"setBackgroundFillStyle",value:function(t){return this.background_attributes.fill=t,this.background_attributes.stroke=t,this}},{key:"setStrokeStyle",value:function(t){return this.attributes.stroke=t,this}},{key:"setShadowColor",value:function(t){return this.shadow_attributes.color=t,this}},{key:"setShadowBlur",value:function(t){return this.shadow_attributes.width=t,this}},{key:"setLineWidth",value:function(t){this.attributes["stroke-width"]=t,this.lineWidth=t}},{key:"setLineDash",value:function(){return this}},{key:"setLineCap",value:function(){return this}},{key:"scale",value:function(t,e){return this.state.scale={x:t,y:e},this.attributes.transform="S"+t+","+e+",0,0",this.attributes.scale=t+","+e+",0,0",this.attributes.font=this.state.font_size*this.state.scale.x+"pt "+this.state.font_family,this.background_attributes.transform="S"+t+","+e+",0,0",this.background_attributes.font=this.state.font_size*this.state.scale.x+"pt "+this.state.font_family,this}},{key:"clear",value:function(){this.paper.clear()}},{key:"resize",value:function(t,e){return this.element.style.width=t,this.paper.setSize(t,e),this}},{key:"setViewBox",value:function(t){this.paper.canvas.setAttribute("viewBox",t)}},{key:"rect",value:function(t,e,n,r){return r<0&&(e+=r,r=-r),this.paper.rect(t,e,n-.5,r-.5).attr(this.attributes).attr("fill","none").attr("stroke-width",this.lineWidth),this}},{key:"fillRect",value:function(t,e,n,r){return r<0&&(e+=r,r=-r),this.paper.rect(t,e,n-.5,r-.5).attr(this.attributes),this}},{key:"clearRect",value:function(t,e,n,r){return r<0&&(e+=r,r=-r),this.paper.rect(t,e,n-.5,r-.5).attr(this.background_attributes),this}},{key:"beginPath",value:function(){return this.path="",this.pen.x=0,this.pen.y=0,this}},{key:"moveTo",value:function(t,e){return this.path+="M"+t+","+e,this.pen.x=t,this.pen.y=e,this}},{key:"lineTo",value:function(t,e){return this.path+="L"+t+","+e,this.pen.x=t,this.pen.y=e,this}},{key:"bezierCurveTo",value:function(t,e,n,r,i,a){return this.path+="C"+t+","+e+","+n+","+r+","+i+","+a,this.pen.x=i,this.pen.y=a,this}},{key:"quadraticCurveTo",value:function(t,e,n,r){return this.path+="Q"+t+","+e+","+n+","+r,this.pen.x=n,this.pen.y=r,this}},{key:"arc",value:function(t,e,n,r,i,a){function o(t){for(;t<0;)t+=2*Math.PI;for(;t>2*Math.PI;)t-=2*Math.PI;return t}if((r=o(r))>(i=o(i))){var s=r;r=i,i=s,a=!a}var l=i-r;return l>Math.PI?(this.arcHelper(t,e,n,r,r+l/2,a),this.arcHelper(t,e,n,r+l/2,i,a)):this.arcHelper(t,e,n,r,i,a),this}},{key:"arcHelper",value:function(t,e,n,r,i,a){var o=t+n*Math.cos(r),s=e+n*Math.sin(r),l=t+n*Math.cos(i),u=e+n*Math.sin(i),c=0,b=0;a?(b=1,i-rMath.PI&&(c=1),this.path+="M"+o+","+s+",A"+n+","+n+",0,"+c+","+b+","+l+","+u+"M"+this.pen.x+","+this.pen.y}},{key:"glow",value:function(){var t=this.paper.set();if(this.shadow_attributes.width>0)for(var e=this.shadow_attributes,n=e.width/2,r=1;r<=n;r++)t.push(this.paper.path(this.path).attr({stroke:e.color,"stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(e.width/n*r).toFixed(3),opacity:+((e.opacity||.3)/n).toFixed(3),transform:this.attributes.transform,scale:this.attributes.scale}));return t}},{key:"fill",value:function(){var t=this.paper.path(this.path).attr(this.attributes).attr("stroke-width",0);return this.glow(t),this}},{key:"stroke",value:function(){var t=this.lineWidth*(this.state.scale.x+this.state.scale.y)/2,e=this.paper.path(this.path).attr(this.attributes).attr("fill","none").attr("stroke-width",t);return this.glow(e),this}},{key:"closePath",value:function(){return this.path+="Z",this}},{key:"measureText",value:function(t){var e=this.paper.text(0,0,t).attr(this.attributes).attr("fill","none").attr("stroke","none"),n=e.getBBox();return e.remove(),{width:n.width,height:n.height}}},{key:"fillText",value:function(t,e,n){return this.paper.text(e+this.measureText(t).width/2,n-this.state.font_size/(2.25*this.state.scale.y),t).attr(this.attributes),this}},{key:"save",value:function(){return this.state_stack.push({state:{font_family:this.state.font_family},attributes:{font:this.attributes.font,fill:this.attributes.fill,stroke:this.attributes.stroke,"stroke-width":this.attributes["stroke-width"]},shadow_attributes:{width:this.shadow_attributes.width,color:this.shadow_attributes.color}}),this}},{key:"restore",value:function(){var t=this.state_stack.pop();return this.state.font_family=t.state.font_family,this.attributes.font=t.attributes.font,this.attributes.fill=t.attributes.fill,this.attributes.stroke=t.attributes.stroke,this.attributes["stroke-width"]=t.attributes["stroke-width"],this.shadow_attributes.width=t.shadow_attributes.width,this.shadow_attributes.color=t.shadow_attributes.color,this}}]),t}(),P={path:{x:!0,y:!0,width:!0,height:!0},rect:{},text:{width:!0,height:!0}},O={"font-family":!0,"font-weight":!0,"font-style":!0,"font-size":!0};m.Merge(P.rect,O),m.Merge(P.path,O);var D=function(){function t(e){h(this,t),this.element=e,this.svgNS="http://www.w3.org/2000/svg";var n=this.create("svg");this.element.appendChild(n),this.svg=n,this.groups=[this.svg],this.parent=this.svg,this.path="",this.pen={x:NaN,y:NaN},this.lineWidth=1,this.state={scale:{x:1,y:1},"font-family":"Arial","font-size":"8pt","font-weight":"normal"},this.attributes={"stroke-width":.3,fill:"black",stroke:"black","stroke-dasharray":"none","font-family":"Arial","font-size":"10pt","font-weight":"normal","font-style":"normal"},this.background_attributes={"stroke-width":0,fill:"white",stroke:"white","stroke-dasharray":"none","font-family":"Arial","font-size":"10pt","font-weight":"normal","font-style":"normal"},this.shadow_attributes={width:0,color:"black"},this.state_stack=[],this.iePolyfill()}return b(t,[{key:"create",value:function(t){return document.createElementNS(this.svgNS,t)}},{key:"openGroup",value:function(t,e,n){var r=this.create("g");return this.groups.push(r),this.parent.appendChild(r),this.parent=r,t&&r.setAttribute("class",m.Prefix(t)),e&&r.setAttribute("id",m.Prefix(e)),n&&n.pointerBBox&&r.setAttribute("pointer-events","bounding-box"),r}},{key:"closeGroup",value:function(){this.groups.pop(),this.parent=this.groups[this.groups.length-1]}},{key:"add",value:function(t){this.parent.appendChild(t)}},{key:"iePolyfill",value:function(){"undefined"!=typeof navigator&&(this.ie=/MSIE 9/i.test(navigator.userAgent)||/MSIE 10/i.test(navigator.userAgent)||/rv:11\.0/i.test(navigator.userAgent)||/Trident/i.test(navigator.userAgent))}},{key:"setFont",value:function(t,e,n){var r=!1,i=!1,a="normal";"string"==typeof n&&(-1!==n.indexOf("italic")&&(n=n.replace(/italic/g,""),i=!0),-1!==n.indexOf("bold")&&(n=n.replace(/bold/g,""),r=!0),n=n.replace(/ /g,""));var o={"font-family":t,"font-size":e+"pt","font-weight":n=void 0===(n=r?"bold":n)||""===n?"normal":n,"font-style":a=i?"italic":a};return this.fontSize=Number(e),m.Merge(this.attributes,o),m.Merge(this.state,o),this}},{key:"setRawFont",value:function(t){var e=(t=t.trim()).split(" ");return this.attributes["font-family"]=e[1],this.state["font-family"]=e[1],this.attributes["font-size"]=e[0],this.state["font-size"]=e[0],this.fontSize=Number(e[0].match(/\d+/)),this}},{key:"setFillStyle",value:function(t){return this.attributes.fill=t,this}},{key:"setBackgroundFillStyle",value:function(t){return this.background_attributes.fill=t,this.background_attributes.stroke=t,this}},{key:"setStrokeStyle",value:function(t){return this.attributes.stroke=t,this}},{key:"setShadowColor",value:function(t){return this.shadow_attributes.color=t,this}},{key:"setShadowBlur",value:function(t){return this.shadow_attributes.width=t,this}},{key:"setLineWidth",value:function(t){this.attributes["stroke-width"]=t,this.lineWidth=t}},{key:"setLineDash",value:function(t){if("[object Array]"===Object.prototype.toString.call(t))return t=t.join(", "),this.attributes["stroke-dasharray"]=t,this;throw new m.RERR("ArgumentError","lineDash must be an array of integers.")}},{key:"setLineCap",value:function(t){return this.attributes["stroke-linecap"]=t,this}},{key:"resize",value:function(t,e){this.width=t,this.height=e,this.element.style.width=t,this.svg.style.width=t,this.svg.style.height=e;var n={width:t,height:e};return this.applyAttributes(this.svg,n),this.scale(this.state.scale.x,this.state.scale.y),this}},{key:"scale",value:function(t,e){this.state.scale={x:t,y:e};var n=this.width/t,r=this.height/e;return this.setViewBox(0,0,n,r),this}},{key:"setViewBox",value:function(){for(var t=arguments.length,e=new Array(t),n=0;n2*Math.PI;)t-=2*Math.PI;return t}if((r=o(r))>(i=o(i))){var s=r;r=i,i=s,a=!a}var l=i-r;return l>Math.PI?(this.arcHelper(t,e,n,r,r+l/2,a),this.arcHelper(t,e,n,r+l/2,i,a)):this.arcHelper(t,e,n,r,i,a),this}},{key:"arcHelper",value:function(t,e,n,r,i,a){var o=t+n*Math.cos(r),s=e+n*Math.sin(r),l=t+n*Math.cos(i),u=e+n*Math.sin(i),c=0,b=0;a?(b=1,i-rMath.PI&&(c=1),this.path+="M"+o+" "+s+" A"+n+" "+n+" 0 "+c+" "+b+" "+l+" "+u,isNaN(this.pen.x)||isNaN(this.pen.y)||(this.peth+="M"+this.pen.x+" "+this.pen.y)}},{key:"closePath",value:function(){return this.path+="Z",this}},{key:"glow",value:function(){if(this.shadow_attributes.width>0)for(var t=this.shadow_attributes,e=t.width/2,n=1;n<=e;n++){var r={stroke:t.color,"stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(.4*t.width/e*n).toFixed(3),opacity:+((t.opacity||.3)/e).toFixed(3)},i=this.create("path");r.d=this.path,this.applyAttributes(i,r),this.add(i)}return this}},{key:"fill",value:function(t){this.glow();var e=this.create("path");return void 0===t&&(m.Merge(t={},this.attributes),t.stroke="none"),t.d=this.path,this.applyAttributes(e,t),this.add(e),this}},{key:"stroke",value:function(){this.glow();var t=this.create("path"),e={};return m.Merge(e,this.attributes),e.fill="none",e["stroke-width"]=this.lineWidth,e.d=this.path,this.applyAttributes(t,e),this.add(t),this}},{key:"measureText",value:function(t){var e=this.create("text");if("function"!=typeof e.getBBox)return{x:0,y:0,width:0,height:0};e.textContent=t,this.applyAttributes(e,this.attributes),this.svg.appendChild(e);var n=e.getBBox();return this.ie&&""!==t&&"italic"===this.attributes["font-style"]&&(n=this.ieMeasureTextFix(n,t)),this.svg.removeChild(e),n}},{key:"ieMeasureTextFix",value:function(t){var e=1.196*Number(this.fontSize)+1.9598,n=t.width-e,r=t.height-1.5;return{x:t.x,y:t.y,width:n,height:r}}},{key:"fillText",value:function(t,e,n){if(t&&!(t.length<=0)){var r={};m.Merge(r,this.attributes),r.stroke="none",r.x=e,r.y=n;var i=this.create("text");i.textContent=t,this.applyAttributes(i,r),this.add(i)}}},{key:"save",value:function(){return this.state_stack.push({state:{"font-family":this.state["font-family"],"font-weight":this.state["font-weight"],"font-style":this.state["font-style"],"font-size":this.state["font-size"],scale:this.state.scale},attributes:{"font-family":this.attributes["font-family"],"font-weight":this.attributes["font-weight"],"font-style":this.attributes["font-style"],"font-size":this.attributes["font-size"],fill:this.attributes.fill,stroke:this.attributes.stroke,"stroke-width":this.attributes["stroke-width"],"stroke-dasharray":this.attributes["stroke-dasharray"]},shadow_attributes:{width:this.shadow_attributes.width,color:this.shadow_attributes.color},lineWidth:this.lineWidth}),this}},{key:"restore",value:function(){var t=this.state_stack.pop();return this.state["font-family"]=t.state["font-family"],this.state["font-weight"]=t.state["font-weight"],this.state["font-style"]=t.state["font-style"],this.state["font-size"]=t.state["font-size"],this.state.scale=t.state.scale,this.attributes["font-family"]=t.attributes["font-family"],this.attributes["font-weight"]=t.attributes["font-weight"],this.attributes["font-style"]=t.attributes["font-style"],this.attributes["font-size"]=t.attributes["font-size"],this.attributes.fill=t.attributes.fill,this.attributes.stroke=t.attributes.stroke,this.attributes["stroke-width"]=t.attributes["stroke-width"],this.attributes["stroke-dasharray"]=t.attributes["stroke-dasharray"],this.shadow_attributes.width=t.shadow_attributes.width,this.shadow_attributes.color=t.shadow_attributes.color,this.lineWidth=t.lineWidth,this}}]),t}(),I=null,N=function(){function t(e,n){if(h(this,t),this.elementId=e,!this.elementId)throw new m.RERR("BadArgument","Invalid id for renderer.");if(this.element=document.getElementById(e),this.element||(this.element=e),this.ctx=null,this.paper=null,this.backend=n,this.backend===t.Backends.CANVAS){if(!this.element.getContext)throw new m.RERR("BadElement","Can't get canvas context from element: "+e);this.ctx=t.bolsterCanvasContext(this.element.getContext("2d"))}else if(this.backend===t.Backends.RAPHAEL)this.ctx=new M(this.element);else{if(this.backend!==t.Backends.SVG)throw new m.RERR("InvalidBackend","No support for backend: "+this.backend);this.ctx=new D(this.element)}}return b(t,null,[{key:"buildContext",value:function(e,n,r,i,a){var o=new t(e,n);r&&i&&o.resize(r,i),a||(a="#FFF");var s=o.getContext();return s.setBackgroundFillStyle(a),t.lastContext=s,s}},{key:"getCanvasContext",value:function(e,n,r,i){return t.buildContext(e,t.Backends.CANVAS,n,r,i)}},{key:"getRaphaelContext",value:function(e,n,r,i){return t.buildContext(e,t.Backends.RAPHAEL,n,r,i)}},{key:"getSVGContext",value:function(e,n,r,i){return t.buildContext(e,t.Backends.SVG,n,r,i)}},{key:"bolsterCanvasContext",value:function(e){return t.USE_CANVAS_PROXY?new F(e):(e.vexFlowCanvasContext=e,["clear","setFont","setRawFont","setFillStyle","setBackgroundFillStyle","setStrokeStyle","setShadowColor","setShadowBlur","setLineWidth","setLineCap","setLineDash","openGroup","closeGroup","getGroup"].forEach((function(t){e[t]=e[t]||F.prototype[t]})),e)}},{key:"drawDashedLine",value:function(t,e,n,r,i,a){t.beginPath();var o=r-e,s=i-n,l=Math.atan2(s,o),u=e,c=n;t.moveTo(e,n);for(var b=0,h=!0;!(o<0?u<=r:u>=r)||!(s<0?c<=i:c>=i);){var f=a[b++%a.length],d=u+Math.cos(l)*f;u=o<0?Math.max(r,d):Math.min(r,d);var p=c+Math.sin(l)*f;c=s<0?Math.max(i,p):Math.min(i,p),h?t.lineTo(u,c):t.moveTo(u,c),h=!h}t.closePath(),t.stroke()}},{key:"Backends",get:function(){return{CANVAS:1,RAPHAEL:2,SVG:3,VML:4}}},{key:"LineEndType",get:function(){return{NONE:1,UP:2,DOWN:3}}},{key:"USE_CANVAS_PROXY",get:function(){return!1}},{key:"lastContext",get:function(){return I},set:function(t){I=t}}]),b(t,[{key:"resize",value:function(e,n){if(this.backend===t.Backends.CANVAS){if(!this.element.getContext)throw new m.RERR("BadElement","Can't get canvas context from element: "+this.elementId);var r=F.SanitizeCanvasDims(e,n),i=u(r,2);e=i[0],n=i[1];var a=window.devicePixelRatio||1;this.element.width=e*a,this.element.height=n*a,this.element.style.width=e+"px",this.element.style.height=n+"px",this.ctx=t.bolsterCanvasContext(this.element.getContext("2d")),this.ctx.scale(a,a)}else this.ctx.resize(e,n);return this}},{key:"getContext",value:function(){return this.ctx}}]),t}(),L=function(t){f(n,t);var e=d(n);function n(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return h(this,n),(t=e.call(this)).setAttribute("type","Stem"),t.x_begin=r.x_begin||0,t.x_end=r.x_end||0,t.y_top=r.y_top||0,t.y_bottom=r.y_bottom||0,t.stem_extension=r.stem_extension||0,t.stem_direction=r.stem_direction||0,t.hide=r.hide||!1,t.isStemlet=r.isStemlet||!1,t.stemletHeight=r.stemletHeight||0,t.renderHeightAdjustment=0,t.setOptions(r),t}return b(n,null,[{key:"CATEGORY",get:function(){return"stem"}},{key:"UP",get:function(){return 1}},{key:"DOWN",get:function(){return-1}},{key:"WIDTH",get:function(){return R.STEM_WIDTH}},{key:"HEIGHT",get:function(){return R.STEM_HEIGHT}}]),b(n,[{key:"setOptions",value:function(t){this.stem_up_y_offset=t.stem_up_y_offset||0,this.stem_down_y_offset=t.stem_down_y_offset||0,this.stem_up_y_base_offset=t.stem_up_y_base_offset||0,this.stem_down_y_base_offset=t.stem_down_y_base_offset||0}},{key:"setNoteHeadXBounds",value:function(t,e){return this.x_begin=t,this.x_end=e,this}},{key:"setDirection",value:function(t){this.stem_direction=t}},{key:"setExtension",value:function(t){this.stem_extension=t}},{key:"getExtension",value:function(){return this.stem_extension}},{key:"setYBounds",value:function(t,e){this.y_top=t,this.y_bottom=e}},{key:"getCategory",value:function(){return n.CATEGORY}},{key:"getHeight",value:function(){var t=this.stem_direction===n.UP?this.stem_up_y_offset:this.stem_down_y_offset;return(this.y_bottom-this.y_top)*this.stem_direction+(n.HEIGHT-t+this.stem_extension)*this.stem_direction}},{key:"getBoundingBox",value:function(){throw new m.RERR("NotImplemented","getBoundingBox() not implemented.")}},{key:"getExtents",value:function(){var t=this.stem_direction===n.UP,e=[this.y_top,this.y_bottom],r=n.HEIGHT+this.stem_extension,i=(t?Math.min:Math.max).apply(void 0,e),a=(t?Math.max:Math.min).apply(void 0,e);return{topY:i+r*-this.stem_direction,baseY:a}}},{key:"setVisibility",value:function(t){return this.hide=!t,this}},{key:"setStemlet",value:function(t,e){return this.isStemlet=t,this.stemletHeight=e,this}},{key:"draw",value:function(){if(this.setRendered(),!this.hide){var t,e,r=this.checkContext(),i=this.stem_direction,a=0;i===n.DOWN?(t=this.x_begin,e=this.y_top+this.stem_down_y_offset,a=this.stem_down_y_base_offset):(t=this.x_end,e=this.y_bottom-this.stem_up_y_offset,a=this.stem_up_y_base_offset);var o=this.getHeight();!function(){for(var t=arguments.length,e=new Array(t),r=0;r1,i.point=i.musicFont.lookupMetric("digits.tupletPoint"),i.y_pos=16,i.x_pos=100,i.width=200,i.location=i.options.location||n.LOCATION_TOP,Rt.AlignRestsToNotes(t,!0,!0),i.resolveGlyphs(),i.attach(),l(i)}return b(n,null,[{key:"LOCATION_TOP",get:function(){return 1}},{key:"LOCATION_BOTTOM",get:function(){return-1}},{key:"NESTING_OFFSET",get:function(){return 15}}]),b(n,[{key:"attach",value:function(){for(var t=0;t=1;)this.numerator_glyphs.unshift(new T("timeSig"+t%10,this.point)),t=parseInt(t/10,10);for(this.denom_glyphs=[],t=this.notes_occupied;t>=1;)this.denom_glyphs.unshift(new T("timeSig"+t%10,this.point)),t=parseInt(t/10,10)}},{key:"getNestedTupletCount",value:function(){var t=this.location,e=this.notes[0],n=i(e,t),r=i(e,t);function i(t,e){return t.tupletStack.filter((function(t){return t.location===e})).length}return this.notes.forEach((function(e){var a=i(e,t);n=a>n?a:n,r=at&&(t=l)}}return t+e+r}},{key:"draw",value:function(){var t=this;this.checkContext(),this.setRendered();var e=this.notes[0],r=this.notes[this.notes.length-1];this.bracketed?(this.x_pos=e.getTieLeftX()-5,this.width=r.getTieRightX()-this.x_pos+5):(this.x_pos=e.getStemX(),this.width=r.getStemX()-this.x_pos),this.y_pos=this.getYPosition();var i=function(t,e){return t+e.getMetrics().width},a=this.numerator_glyphs.reduce(i,0);this.ratioed&&(a=this.denom_glyphs.reduce(i,a),a+=.32*this.point);var o=this.x_pos+this.width/2-a/2;if(this.bracketed){var s=this.width/2-a/2-5;s>0&&(this.context.fillRect(this.x_pos,this.y_pos,s,1),this.context.fillRect(this.x_pos+this.width/2+a/2+5,this.y_pos,s,1),this.context.fillRect(this.x_pos,this.y_pos+(this.location===n.LOCATION_BOTTOM),1,10*this.location),this.context.fillRect(this.x_pos+this.width,this.y_pos+(this.location===n.LOCATION_BOTTOM),1,10*this.location))}var l=this.musicFont.lookupMetric("digits.shiftY",0),u=0;if(this.numerator_glyphs.forEach((function(e){e.render(t.context,o+u,t.y_pos+t.point/3-2+l),u+=e.getMetrics().width})),this.ratioed){var c=o+u+.16*this.point,b=.06*this.point;this.context.beginPath(),this.context.arc(c,this.y_pos-.08*this.point,b,0,2*Math.PI,!0),this.context.closePath(),this.context.fill(),this.context.beginPath(),this.context.arc(c,this.y_pos+.12*this.point,b,0,2*Math.PI,!0),this.context.closePath(),this.context.fill(),u+=.32*this.point,this.denom_glyphs.forEach((function(e){e.render(t.context,o+u,t.y_pos+t.point/3-2+l),u+=e.getMetrics().width}))}}}]),n}(x);function z(t){var e=0;return t.forEach((function(t){t.keyProps&&t.keyProps.forEach((function(t){e+=t.line-3}))})),e>=0?L.DOWN:L.UP}var U="L",j="B",H=function(t){f(n,t);var e=d(n);function n(t,r){var i,a,o;if(h(this,n),(i=e.call(this)).setAttribute("type","Beam"),!t||t===[])throw new m.RuntimeError("BadArguments","No notes provided for beam.");if(1===t.length)throw new m.RuntimeError("BadArguments","Too few notes for beam.");if(i.ticks=t[0].getIntrinsicTicks(),i.ticks>=R.durationToTicks("4"))throw new m.RuntimeError("BadArguments","Beams can only be applied to notes shorter than a quarter note.");for(i.stem_direction=L.UP,a=0;a-1?L.UP:L.DOWN),a=0;a4?[new v(2,r)]:r<=4?[new v(1,r)]:[new v(1,4)]}},{key:"applyAndGetBeams",value:function(t,e,r){return n.generateBeams(t.getTickables(),{groups:r,stem_direction:e})}},{key:"generateBeams",value:function(t,e){e||(e={}),e.groups&&e.groups.length||(e.groups=[new v(2,8)]);var r=e.groups.map((function(t){if(!t.multiply)throw new m.RuntimeError("InvalidBeamGroups","The beam groups must be an array of Vex.Flow.Fractions");return t.clone().multiply(R.RESOLUTION,1)})),i=t,a=0,o=[],s=[];function l(){r.length-1>a?a+=1:a=0}!function(){var t=[];i.forEach((function(e){if(t=[],e.shouldIgnoreTicks())return o.push(s),void(s=t);s.push(e);var n=r[a].clone(),i=s.reduce((function(t,e){return e.getTicks().clone().add(t)}),new v(0,1)),u=R.durationToNumber(e.duration)<8;u&&e.tuplet&&(n.numerator*=2),i.greaterThan(n)?(u||t.push(s.pop()),o.push(s),s=t,l()):i.equals(n)&&(o.push(s),s=t,l())})),s.length>0&&o.push(s)}(),function(){var t=[];o.forEach((function(n){var r=[];n.forEach((function(n,i,a){var o=0===i||i===a.length-1,s=a[i-1],l=!e.beam_rests&&n.isRest(),u=e.beam_rests&&e.beam_middle_only&&n.isRest()&&o,c=!1;if(e.maintain_stem_directions&&s&&!n.isRest()&&!s.isRest()){var b=s.getStemDirection();c=n.getStemDirection()!==b}var h=parseInt(n.duration,10)<8;l||u||c||h?(r.length>0&&t.push(r),r=c?[n]:[]):r.push(n)})),r.length>0&&t.push(r)})),o=t}(),o.forEach((function(t){var n;if(e.maintain_stem_directions){var r=function(t){for(var e=0;e1){var e=!0;return t.forEach((function(t){t.getIntrinsicTicks()>=R.durationToTicks("4")&&(e=!1)})),e}return!1})),c=function(){var t=[];return o.forEach((function(e){var n=null;e.forEach((function(e){e.tuplet&&n!==e.tuplet&&(n=e.tuplet,t.push(n))}))})),t}(),b=[];return u.forEach((function(t){var r=new n(t);e.show_stemlets&&(r.render_options.show_stemlets=!0),e.secondary_breaks&&(r.render_options.secondary_break_ticks=R.durationToTicks(e.secondary_breaks)),!0===e.flat_beams&&(r.render_options.flat_beams=!0,r.render_options.flat_beam_offset=e.flat_beam_offset),b.push(r)})),c.forEach((function(t){var e=t.notes[0].stem_direction===L.DOWN?B.LOCATION_BOTTOM:B.LOCATION_TOP;t.setTupletLocation(e);for(var n=!1,r=0;rt?e:t}))}},{key:"breakSecondaryAt",value:function(t){return this.break_on_indices=t,this}},{key:"getSlopeY",value:function(t,e,n,r){return n+(t-e)*r}},{key:"calculateSlope",value:function(){for(var t=this.notes,e=this.stem_direction,n=this.render_options,r=n.max_slope,i=n.min_slope,a=n.slope_iterations,o=n.slope_cost,s=t[0],l=function(t,e){var n=t.getStemExtents().topY,r=t.getStemX();return(e.getStemExtents().topY-n)/(e.getStemX()-r)}(s,t[t.length-1]),u=(r-i)/a,c=Number.MAX_VALUE,b=0,h=0,f=i;f<=r;f+=u){for(var d=0,p=0,m=1;mf)&&(c=f,l=Math.min.apply(Math,o(h.getYs())),u=h.getBeamCount())}var d=s/t.length,p=i+u*(1.5*r),m=l+p*-e;e===L.DOWN&&dm&&(d=l-p),a?(e===L.DOWN&&d>a||e===L.UP&&d=8&&(c=-1!==this.break_on_indices.indexOf(l),this.render_options.secondary_break_ticks&&s>=this.render_options.secondary_break_ticks&&(s=0,c=!0));var b=u.getIntrinsicTicks()0&&void 0!==arguments[0]?arguments[0]:this.context,e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:this.stave;this.setRendered();for(var n=null,r=0;r0&&n){var a=i.getBoundingBox();a&&n.mergeWith(a)}i.setContext(t),i.drawWithStyle()}this.boundingBox=n}}]),n}(x);function Y(t,e,n,r,i){if(e!==G.type.BOLD_DOUBLE_LEFT&&e!==G.type.BOLD_DOUBLE_RIGHT)throw new m.RERR("InvalidConnector","A REPEAT_BEGIN or REPEAT_END type must be provided.");var a=3,o=3.5;e===G.type.BOLD_DOUBLE_RIGHT&&(a=-5,o=3),t.fillRect(n+a,r,1,i-r),t.fillRect(n-2,r,o,i-r)}var G=function(t){f(n,t);var e=d(n);function n(t,r){var i;return h(this,n),(i=e.call(this)).setAttribute("type","StaveConnector"),i.thickness=R.STAVE_LINE_THICKNESS,i.width=3,i.top_stave=t,i.bottom_stave=r,i.type=n.type.DOUBLE,i.font={family:"times",size:16,weight:"normal"},i.x_shift=0,i.texts=[],i}return b(n,null,[{key:"type",get:function(){return{SINGLE_RIGHT:0,SINGLE_LEFT:1,SINGLE:1,DOUBLE:2,BRACE:3,BRACKET:4,BOLD_DOUBLE_LEFT:5,BOLD_DOUBLE_RIGHT:6,THIN_DOUBLE:7,NONE:8}}},{key:"typeString",get:function(){return{singleRight:n.type.SINGLE_RIGHT,singleLeft:n.type.SINGLE_LEFT,single:n.type.SINGLE,double:n.type.DOUBLE,brace:n.type.BRACE,bracket:n.type.BRACKET,boldDoubleLeft:n.type.BOLD_DOUBLE_LEFT,boldDoubleRight:n.type.BOLD_DOUBLE_RIGHT,thinDouble:n.type.THIN_DOUBLE,none:n.type.NONE}}}]),b(n,[{key:"setType",value:function(t){return(t="string"==typeof t?n.typeString[t]:t)>=n.type.SINGLE_RIGHT&&t<=n.type.NONE&&(this.type=t),this}},{key:"setText",value:function(t,e){return this.texts.push({content:t,options:m.Merge({shift_x:0,shift_y:0},e)}),this}},{key:"setFont",value:function(t){m.Merge(this.font,t)}},{key:"setXShift",value:function(t){if("number"!=typeof t)throw m.RERR("InvalidType","x_shift must be a Number");return this.x_shift=t,this}},{key:"draw",value:function(){var t=this.checkContext();this.setRendered();var e=this.top_stave.getYForLine(0),r=this.bottom_stave.getYForLine(this.bottom_stave.getNumLines()-1)+this.thickness,i=this.width,a=this.top_stave.getX();(this.type===n.type.SINGLE_RIGHT||this.type===n.type.BOLD_DOUBLE_RIGHT||this.type===n.type.THIN_DOUBLE)&&(a=this.top_stave.getX()+this.top_stave.width);var o=r-e;switch(this.type){case n.type.SINGLE:case n.type.SINGLE_LEFT:case n.type.SINGLE_RIGHT:i=1;break;case n.type.DOUBLE:a-=this.width+2,e-=this.thickness,o+=.5;break;case n.type.BRACE:i=12;var s=this.top_stave.getX()-2+this.x_shift,l=e,u=s,c=r,b=s-i,h=l+o/2,f=b-.9*i,d=l+.2*o,p=s+1.1*i,v=h-.135*o,y=p,g=h+.135*o,_=f,x=c-.2*o,k=b-i,w=x,S=s+.4*i,E=h+.135*o,C=S,A=h-.135*o,R=k,F=d;t.beginPath(),t.moveTo(s,l),t.bezierCurveTo(f,d,p,v,b,h),t.bezierCurveTo(y,g,_,x,u,c),t.bezierCurveTo(k,w,S,E,b,h),t.bezierCurveTo(C,A,R,F,s,l),t.fill(),t.stroke();break;case n.type.BRACKET:o=(r+=6)-(e-=6),T.renderGlyph(t,a-5,e,40,"bracketTop"),T.renderGlyph(t,a-5,r,40,"bracketBottom"),a-=this.width+2;break;case n.type.BOLD_DOUBLE_LEFT:Y(t,this.type,a+this.x_shift,e,r-this.thickness);break;case n.type.BOLD_DOUBLE_RIGHT:Y(t,this.type,a,e,r-this.thickness);break;case n.type.THIN_DOUBLE:i=1,o-=this.thickness;break;case n.type.NONE:break;default:throw new m.RERR("InvalidType","The provided StaveConnector.type (".concat(this.type,") is invalid"))}this.type!==n.type.BRACE&&this.type!==n.type.BOLD_DOUBLE_LEFT&&this.type!==n.type.BOLD_DOUBLE_RIGHT&&this.type!==n.type.NONE&&t.fillRect(a,e,i,o),this.type===n.type.THIN_DOUBLE&&t.fillRect(a-3,e,i,o),t.save(),t.lineWidth=2,t.setFont(this.font.family,this.font.size,this.font.weight);for(var M=0;M3&&void 0!==arguments[3]?arguments[3]:h;t.beginPath(),t.setStrokeStyle(i),t.setFillStyle(i),t.setLineWidth(3),t.moveTo(n+e.getXShift(),a),t.lineTo(r+e.getXShift(),a),t.stroke()}f(i,a,"red"),f(a,o,"#999"),f(o,s,"green"),f(s,l,"#999"),f(l,u,"red"),f(u,c,"#DD0"),f(i-e.getXShift(),i,"#BBB"),m.drawDot(t,o+e.getXShift(),h,"blue");var d=e.getFormatterMetrics();if(d.iterations>0){var p=d.space.deviation,v=p>=0?"+":"";t.setFillStyle("red"),t.fillText(v+Math.round(p),o+e.getXShift(),n-10)}t.restore()}},{key:"parseDuration",value:function(t){if("string"!=typeof t)return null;var e=/(\d*\/?\d+|[a-z])(d*)([nrhms]|$)/.exec(t);return e?{duration:e[1],dots:e[2].length,type:e[3]||"n"}:null}},{key:"parseNoteStruct",value:function(t){var e=t.duration,r=[],i=n.parseDuration(e);if(!i)return null;var a=t.type;if(a&&!R.getGlyphProps.validTypes[a])return null;a||(a=i.type||"n",void 0!==t.keys&&t.keys.forEach((function(t,e){var n=t.split("/");r[e]=n&&3===n.length?n[2]:a})));var o=R.durationToTicks(i.duration);if(null==o)return null;var s=t.dots?t.dots:i.dots;if("number"!=typeof s)return null;for(var l=o,u=0;u0}},{key:"hasStem",value:function(){return!1}},{key:"getDots",value:function(){return this.dots}},{key:"getNoteType",value:function(){return this.noteType}},{key:"setBeam",value:function(){return this}},{key:"setModifierContext",value:function(t){return this.modifierContext=t,this}},{key:"addModifier",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0;return t.setNote(this),t.setIndex(e),this.modifiers.push(t),this.setPreFormatted(!1),this}},{key:"getModifierStartXY",value:function(){if(!this.preFormatted)throw new m.RERR("UnformattedNote","Can't call GetModifierStartXY on an unformatted note");return{x:this.getAbsoluteX(),y:this.ys[0]}}},{key:"getMetrics",value:function(){if(!this.preFormatted)throw new m.RERR("UnformattedNote","Can't call getMetrics on an unformatted note.");var t=this.modifierContext?this.modifierContext.state.left_shift:0,e=this.modifierContext?this.modifierContext.state.right_shift:0,n=this.getWidth();return{width:n,glyphWidth:this.getGlyphWidth(),notePx:n-t-e-this.leftDisplacedHeadPx-this.rightDisplacedHeadPx,modLeftPx:t,modRightPx:e,leftDisplacedHeadPx:this.leftDisplacedHeadPx,rightDisplacedHeadPx:this.rightDisplacedHeadPx}}},{key:"getAbsoluteX",value:function(){if(!this.tickContext)throw new m.RERR("NoTickContext","Note needs a TickContext assigned for an X-Value");var t=this.tickContext.getX();return this.stave&&(t+=this.stave.getNoteStartX()+this.musicFont.lookupMetric("stave.padding")),this.isCenterAligned()&&(t+=this.getCenterXShift()),t}},{key:"setPreFormatted",value:function(t){this.preFormatted=t}}]),n}(V),K=function(t){f(n,t);var e=d(n);function n(t){var r;if(h(this,n),(r=e.call(this,t)).setAttribute("type","NoteHead"),r.index=t.index,r.x=t.x||0,r.y=t.y||0,r.note_type=t.note_type,r.duration=t.duration,r.displaced=t.displaced||!1,r.stem_direction=t.stem_direction||Z.STEM_UP,r.line=t.line,r.glyph=R.getGlyphProps(r.duration,r.note_type),!r.glyph)throw new m.RuntimeError("BadArguments","No glyph found for duration '".concat(r.duration,"' and type '").concat(r.note_type,"'"));return r.glyph_code=r.glyph.code_head,r.x_shift=t.x_shift||0,t.custom_glyph_code&&(r.custom_glyph=!0,r.glyph_code=t.custom_glyph_code,r.stem_up_x_offset=t.stem_up_x_offset||0,r.stem_down_x_offset=t.stem_down_x_offset||0),r.style=t.style,r.slashed=t.slashed,m.Merge(r.render_options,{glyph_font_scale:t.glyph_font_scale||R.DEFAULT_NOTATION_FONT_SCALE,stroke_px:3}),r.setWidth(r.glyph.getWidth(r.render_options.glyph_font_scale)),l(r)}return b(n,null,[{key:"CATEGORY",get:function(){return"notehead"}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"getWidth",value:function(){return this.width}},{key:"isDisplaced",value:function(){return!0===this.displaced}},{key:"getGlyph",value:function(){return this.glyph}},{key:"setX",value:function(t){return this.x=t,this}},{key:"getY",value:function(){return this.y}},{key:"setY",value:function(t){return this.y=t,this}},{key:"getLine",value:function(){return this.line}},{key:"setLine",value:function(t){return this.line=t,this}},{key:"getAbsoluteX",value:function(){var t=this.preFormatted?i(a(n.prototype),"getAbsoluteX",this).call(this):this.x,e=L.WIDTH/2,r=this.musicFont.lookupMetric("notehead.shiftX",0)*this.stem_direction,o=this.musicFont.lookupMetric("noteHead.displaced.shiftX",0)*this.stem_direction;return t+r+(this.displaced?(this.width-e)*this.stem_direction+o:0)}},{key:"getBoundingBox",value:function(){if(!this.preFormatted)throw new m.RERR("UnformattedNote","Can't call getBoundingBox on an unformatted note.");var t=this.stave.getSpacingBetweenLines(),e=t/2,n=this.y-e;return new R.BoundingBox(this.getAbsoluteX(),n,this.width,t)}},{key:"setStave",value:function(t){var e=this.getLine();return this.stave=t,this.setY(t.getYForNote(e)),this.context=this.stave.context,this}},{key:"preFormat",value:function(){if(this.preFormatted)return this;var t=this.getWidth()+this.leftDisplacedHeadPx+this.rightDisplacedHeadPx;return this.setWidth(t),this.setPreFormatted(!0),this}},{key:"draw",value:function(){this.checkContext(),this.setRendered();var t=this.context,e=this.getAbsoluteX();this.custom_glyph&&(e+=this.stem_direction===L.UP?this.stem_up_x_offset:this.stem_down_x_offset);var r=this.y;!function(){for(var t=arguments.length,e=new Array(t),r=0;r2&&(s=!0),s||(n-=R.STEM_WIDTH/2*i),t.beginPath(),t.moveTo(n,r+a),t.lineTo(n,r+1),t.lineTo(n+o,r-a),t.lineTo(n+o,r),t.lineTo(n,r+a),t.closePath(),s?t.fill():t.stroke(),R.durationToFraction(e).equals(.5))for(var l=[-3,-1,o+1,o+3],u=0;u0&&void 0!==arguments[0]?arguments[0]:"flag",e=this.glyph,n=null===this.beam;if(e&&e.flag&&n){var r=this.getStemDirection()===L.DOWN?e.code_flag_downstem:e.code_flag_upstem;this.flag=new T(r,this.render_options.glyph_font_scale,{category:t})}}},{key:"getBaseCustomNoteHeadGlyph",value:function(){return this.getStemDirection()===L.DOWN?this.customGlyphs[this.customGlyphs.length-1]:this.customGlyphs[0]}},{key:"getStemLength",value:function(){return L.HEIGHT+this.getStemExtension()}},{key:"getBeamCount",value:function(){var t=this.getGlyph();return t?t.beam_count:0}},{key:"getStemMinumumLength",value:function(){var t=R.durationToFraction(this.duration).value()<=1?0:20;switch(this.duration){case"8":null==this.beam&&(t=35);break;case"16":t=null==this.beam?35:25;break;case"32":t=null==this.beam?45:35;break;case"64":t=null==this.beam?50:40;break;case"128":t=null==this.beam?55:45}return t}},{key:"getStemDirection",value:function(){return this.stem_direction}},{key:"setStemDirection",value:function(t){if(t||(t=L.UP),t!==L.UP&&t!==L.DOWN)throw new m.RERR("BadArgument","Invalid stem direction: "+t);if(this.stem_direction=t,this.stem){this.stem.setDirection(t),this.stem.setExtension(this.getStemExtension());var e=this.getBaseCustomNoteHeadGlyph()||this.getGlyph(),n=this.musicFont.lookupMetric("stem.noteHead."+e.code_head,{offsetYBaseStemUp:0,offsetYTopStemUp:0,offsetYBaseStemDown:0,offsetYTopStemDown:0});this.stem.setOptions({stem_up_y_offset:n.offsetYTopStemUp,stem_down_y_offset:n.offsetYTopStemDown,stem_up_y_base_offset:n.offsetYBaseStemUp,stem_down_y_base_offset:n.offsetYBaseStemDown})}return this.reset(),this.flag&&this.buildFlag(),this.beam=null,this.preFormatted&&this.preFormat(),this}},{key:"getStemX",value:function(){var t=this.getAbsoluteX()+this.x_shift,e=this.getAbsoluteX()+this.x_shift+this.getGlyphWidth();return this.stem_direction===L.DOWN?t:e}},{key:"getCenterGlyphX",value:function(){return this.getAbsoluteX()+this.x_shift+this.getGlyphWidth()/2}},{key:"getStemExtension",value:function(){var t=this.getGlyph();return null!=this.stemExtensionOverride?this.stemExtensionOverride:t?1===this.getStemDirection()?t.stem_up_extension:t.stem_down_extension:0}},{key:"setStemLength",value:function(t){return this.stemExtensionOverride=t-L.HEIGHT,this}},{key:"getStemExtents",value:function(){return this.stem.getExtents()}},{key:"setBeam",value:function(t){return this.beam=t,this}},{key:"getYForTopText",value:function(t){var e=this.getStemExtents();return this.hasStem()?Math.min(this.stave.getYForTopText(t),e.topY-this.render_options.annotation_spacing*(t+1)):this.stave.getYForTopText(t)}},{key:"getYForBottomText",value:function(t){var e=this.getStemExtents();return this.hasStem()?Math.max(this.stave.getYForTopText(t),e.baseY+this.render_options.annotation_spacing*t):this.stave.getYForBottomText(t)}},{key:"hasFlag",value:function(){return R.getGlyphProps(this.duration).flag&&!this.beam}},{key:"postFormat",value:function(){return this.beam&&this.beam.postFormat(),this.postFormatted=!0,this}},{key:"drawStem",value:function(t){this.checkContext(),this.setRendered(),this.setStem(new L(t)),this.stem.setContext(this.context).draw()}}]),n}(X),q=function(t){f(n,t);var e=d(n);function n(){var t;return h(this,n),(t=e.call(this)).setAttribute("type","Modifier"),t.width=0,t.note=null,t.index=null,t.text_line=0,t.position=n.Position.LEFT,t.modifier_context=null,t.x_shift=0,t.y_shift=0,t.spacingFromNextModifier=0,t}return b(n,null,[{key:"CATEGORY",get:function(){return"none"}},{key:"Position",get:function(){return{LEFT:1,RIGHT:2,ABOVE:3,BELOW:4}}},{key:"PositionString",get:function(){return{above:n.Position.ABOVE,below:n.Position.BELOW,left:n.Position.LEFT,right:n.Position.RIGHT}}}]),b(n,[{key:"reset",value:function(){}},{key:"getCategory",value:function(){return n.CATEGORY}},{key:"getWidth",value:function(){return this.width}},{key:"setWidth",value:function(t){return this.width=t,this}},{key:"getNote",value:function(){return this.note}},{key:"setNote",value:function(t){return this.note=t,this}},{key:"getIndex",value:function(){return this.index}},{key:"setIndex",value:function(t){return this.index=t,this}},{key:"getModifierContext",value:function(){return this.modifier_context}},{key:"setModifierContext",value:function(t){return this.modifier_context=t,this}},{key:"getPosition",value:function(){return this.position}},{key:"setPosition",value:function(t){return this.position="string"==typeof t?n.PositionString[t]:t,this.reset(),this}},{key:"setTextLine",value:function(t){return this.text_line=t,this}},{key:"setYShift",value:function(t){return this.y_shift=t,this}},{key:"setSpacingFromNextModifier",value:function(t){this.spacingFromNextModifier=t}},{key:"getSpacingFromNextModifier",value:function(){return this.spacingFromNextModifier}},{key:"setXShift",value:function(t){this.x_shift=0,this.position===n.Position.LEFT?this.x_shift-=t:this.x_shift+=t}},{key:"getXShift",value:function(){return this.x_shift}},{key:"draw",value:function(){throw this.checkContext(),new m.RERR("MethodNotImplemented","draw() not implemented for this modifier.")}},{key:"alignSubNotesWithNote",value:function(t,e){var n=e.getTickContext(),r=n.getMetrics(),i=n.getX()-r.modLeftPx-r.modRightPx+this.getSpacingFromNextModifier();t.forEach((function(t){var n=t.getTickContext();t.setStave(e.stave),n.setXOffset(i)}))}}]),n}(x),J=function(t){f(n,t);var e=d(n);function n(){var t;return h(this,n),(t=e.call(this)).setAttribute("type","Dot"),t.note=null,t.index=null,t.position=q.Position.RIGHT,t.radius=2,t.setWidth(5),t.dot_shiftY=0,t}return b(n,null,[{key:"format",value:function(t,e){var n=e.right_shift;if(!t||0===t.length)return!1;for(var r=[],i={},a=0;ah?b:h,f=k,d=_}return e.right_shift+=h,!0}},{key:"CATEGORY",get:function(){return"dots"}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"setNote",value:function(t){this.note=t,"gracenotes"===this.note.getCategory()&&(this.radius*=.5,this.setWidth(3))}},{key:"setDotShiftY",value:function(t){return this.dot_shiftY=t,this}},{key:"draw",value:function(){if(this.checkContext(),this.setRendered(),!this.note||null===this.index)throw new m.RERR("NoAttachedNote","Can't draw dot without a note and index.");var t=this.note.stave.options.spacing_between_lines_px,e=this.note.getModifierStartXY(this.position,this.index,{forceFlagRight:!0});"tabnotes"===this.note.getCategory()&&(e.y=this.note.getStemExtents().baseY);var n=e.x+this.x_shift+this.width-this.radius,r=e.y+this.y_shift+this.dot_shiftY*t,i=this.context;i.beginPath(),i.arc(n,r,this.radius,0,2*Math.PI,!1),i.fill()}}]),n}(q);function Q(t,e,n){var r=(e.isrest?0:1)*n;t.line+=r,t.maxLine+=r,t.minLine+=r,t.note.setKeyLine(0,t.note.getKeyLine(0)+r)}var Z=function(t){f(n,t);var e=d(n);function n(t){var r;if(h(this,n),(r=e.call(this,t)).setAttribute("type","StaveNote"),r.keys=t.keys,r.clef=t.clef,r.octave_shift=t.octave_shift,r.beam=null,r.glyph=R.getGlyphProps(r.duration,r.noteType),!r.glyph)throw new m.RuntimeError("BadArguments","Invalid note initialization data (No glyph found): "+JSON.stringify(t));return r.displaced=!1,r.dot_shiftY=0,r.keyProps=[],r.use_default_head_x=!1,r.note_heads=[],r.modifiers=[],m.Merge(r.render_options,{glyph_font_scale:t.glyph_font_scale||R.DEFAULT_NOTATION_FONT_SCALE,stroke_px:t.stroke_px||n.DEFAULT_LEDGER_LINE_OFFSET}),r.calculateKeyProps(),r.buildStem(),t.auto_stem?r.autoStem():r.setStemDirection(t.stem_direction),r.reset(),r.buildFlag(),l(r)}return b(n,null,[{key:"format",value:function(t,e){if(!t||t.length<2)return!1;if(t[0].getStave())return n.formatByY(t,e);for(var r=[],i=0;i2?r[1]:null,p=h>2?r[2]:r[1];2===h&&-1===f.stemDirection&&1===p.stemDirection&&(f=r[1],p=r[0]);var v,y=Math.max(f.voice_shift,p.voice_shift),g=0;if(2===h){var _=f.stemDirection===p.stemDirection?0:.5;return f.stemDirection===p.stemDirection&&f.minLine<=p.maxLine&&(f.isrest||(v=Math.abs(f.line-(p.maxLine+.5)),v=Math.max(v,f.stemMin),f.minLine=f.line-v,f.note.setStemLength(10*v))),f.minLine<=p.maxLine+_&&(f.isrest?Q(f,p,1):p.isrest?Q(p,f,-1):(g=y,f.stemDirection===p.stemDirection?f.note.setXShift(g+3):p.note.setXShift(g))),!0}return null!==d&&d.minLine0&&(this.keyProps[e-1].displaced=!0)),t=a,this.keyProps.push(i)}t=-1/0,this.keyProps.forEach((function(e){e.linee&&(e=r):r1}},{key:"hasStem",value:function(){return this.glyph.stem}},{key:"hasFlag",value:function(){return i(a(n.prototype),"hasFlag",this).call(this)&&!this.isRest()}},{key:"getStemX",value:function(){return"r"===this.noteType?this.getCenterGlyphX():i(a(n.prototype),"getStemX",this).call(this)+(t=this,L.WIDTH/(2*-t.getStemDirection()));var t}},{key:"getYForTopText",value:function(t){var e=this.getStemExtents();return Math.min(this.stave.getYForTopText(t),e.topY-this.render_options.annotation_spacing*(t+1))}},{key:"getYForBottomText",value:function(t){var e=this.getStemExtents();return Math.max(this.stave.getYForTopText(t),e.baseY+this.render_options.annotation_spacing*t)}},{key:"setStave",value:function(t){i(a(n.prototype),"setStave",this).call(this,t);var e=this.note_heads.map((function(e){return e.setStave(t),e.getY()}));if(this.setYs(e),this.stem){var r=this.getNoteHeadBounds(),o=r.y_top,s=r.y_bottom;this.stem.setYBounds(o,s)}return this}},{key:"getKeys",value:function(){return this.keys}},{key:"getKeyProps",value:function(){return this.keyProps}},{key:"isDisplaced",value:function(){return this.displaced}},{key:"setNoteDisplaced",value:function(t){return this.displaced=t,this}},{key:"getTieRightX",value:function(){var t=this.getAbsoluteX();return t+=this.getGlyphWidth()+this.x_shift+this.rightDisplacedHeadPx,this.modifierContext&&(t+=this.modifierContext.getRightShift()),t}},{key:"getTieLeftX",value:function(){var t=this.getAbsoluteX();return t+=this.x_shift-this.leftDisplacedHeadPx}},{key:"getLineForRest",value:function(){var t=this.keyProps[0].line;if(this.keyProps.length>1){var e=this.keyProps[this.keyProps.length-1].line,n=Math.max(t,e),r=Math.min(t,e);t=m.MidLine(n,r)}return t}},{key:"getModifierStartXY",value:function(t,e,n){if(n=n||{},!this.preFormatted)throw new m.RERR("UnformattedNote","Can't call GetModifierStartXY on an unformatted note");if(0===this.ys.length)throw new m.RERR("NoYValues","No Y-Values calculated for this note.");var r=q.Position,i=r.ABOVE,a=r.BELOW,o=r.LEFT,s=r.RIGHT,l=0;return t===o?l=-2:t===s?(l=this.getGlyphWidth()+this.x_shift+2,this.stem_direction===L.UP&&this.hasFlag()&&(n.forceFlagRight||function(t,e){return e===(t.getStemDirection()===L.UP?t.keyProps.length-1:0)}(this,e))&&(l+=this.flag.getMetrics().width)):t!==a&&t!==i||(l=this.getGlyphWidth()/2),{x:this.getAbsoluteX()+l,y:this.ys[e]}}},{key:"setStyle",value:function(t){i(a(n.prototype),"setStyle",this).call(this,t),this.note_heads.forEach((function(e){return e.setStyle(t)})),this.stem.setStyle(t)}},{key:"setStemStyle",value:function(t){this.getStem().setStyle(t)}},{key:"getStemStyle",value:function(){return this.stem.getStyle()}},{key:"setLedgerLineStyle",value:function(t){this.ledgerLineStyle=t}},{key:"getLedgerLineStyle",value:function(){return this.ledgerLineStyle}},{key:"setFlagStyle",value:function(t){this.flagStyle=t}},{key:"getFlagStyle",value:function(){return this.flagStyle}},{key:"setKeyStyle",value:function(t,e){return this.note_heads[t].setStyle(e),this}},{key:"setKeyLine",value:function(t,e){return this.keyProps[t].line=e,this.reset(),this}},{key:"getKeyLine",value:function(t){return this.keyProps[t].line}},{key:"addToModifierContext",value:function(t){this.setModifierContext(t);for(var e=0;ee)&&(e=h),null===r&&c.isDisplaced()&&(r=c.getAbsoluteX()),null!==n||c.isDisplaced()||(n=c.getAbsoluteX()),i=b>i?b:i,a=b=l;--w){var S=null!==p&&w>=f,T=null!==d&&w>=h;y(t.getYForNote(w),S,T)}this.restoreStyle(r,g)}}},{key:"drawModifiers",value:function(){if(!this.context)throw new m.RERR("NoCanvasContext","Can't draw without a canvas context.");var t=this.context;t.openGroup("modifiers");for(var e=0;em?x:m):S===q.Position.RIGHT&&(T.setXShift(p),v=(x=s+R)>v?x:v),y=E,g=w}return e.left_shift+=m,e.right_shift+=v,!0}},{key:"CATEGORY",get:function(){return"frethandfinger"}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"setFretHandFinger",value:function(t){return this.finger=t,this}},{key:"setOffsetX",value:function(t){return this.x_offset=t,this}},{key:"setOffsetY",value:function(t){return this.y_offset=t,this}},{key:"draw",value:function(){if(this.checkContext(),!this.note||null==this.index)throw new m.RERR("NoAttachedNote","Can't draw string number without a note and index.");this.setRendered();var t=this.context,e=this.note.getModifierStartXY(this.position,this.index),n=e.x+this.x_shift+this.x_offset,r=e.y+this.y_shift+this.y_offset+5;switch(this.position){case q.Position.ABOVE:n-=4,r-=12;break;case q.Position.BELOW:n-=2,r+=10;break;case q.Position.LEFT:n-=this.width;break;case q.Position.RIGHT:n+=1;break;default:throw new m.RERR("InvalidPostion","The position ".concat(this.position," does not exist"))}t.save(),t.setFont(this.font.family,this.font.size,this.font.weight),t.fillText(""+this.finger,n,r),t.restore()}}]),n}(q),et=function(){function t(){h(this,t)}return b(t,[{key:"isValidNoteValue",value:function(e){return!(null==e||e<0||e>=t.NUM_TONES)}},{key:"isValidIntervalValue",value:function(t){return this.isValidNoteValue(t)}},{key:"getNoteParts",value:function(t){if(!t||t.length<1)throw new m.RERR("BadArguments","Invalid note name: "+t);if(t.length>3)throw new m.RERR("BadArguments","Invalid note name: "+t);var e=t.toLowerCase(),n=/^([cdefgab])(b|bb|n|#|##)?$/.exec(e);if(null!=n)return{root:n[1],accidental:n[2]};throw new m.RERR("BadArguments","Invalid note name: "+t)}},{key:"getKeyParts",value:function(t){if(!t||t.length<1)throw new m.RERR("BadArguments","Invalid key: "+t);var e=t.toLowerCase(),n=/^([cdefgab])(b|#)?(mel|harm|m|M)?$/.exec(e);if(null!=n){var r=n[1],i=n[2],a=n[3];return a||(a="M"),{root:r,accidental:i,type:a}}throw new m.RERR("BadArguments","Invalid key: "+t)}},{key:"getNoteValue",value:function(e){var n=t.noteValues[e];if(null==n)throw new m.RERR("BadArguments","Invalid note name: "+e);return n.int_val}},{key:"getIntervalValue",value:function(e){var n=t.intervals[e];if(null==n)throw new m.RERR("BadArguments","Invalid interval name: "+e);return n}},{key:"getCanonicalNoteName",value:function(e){if(!this.isValidNoteValue(e))throw new m.RERR("BadArguments","Invalid note value: "+e);return t.canonical_notes[e]}},{key:"getCanonicalIntervalName",value:function(e){if(!this.isValidIntervalValue(e))throw new m.RERR("BadArguments","Invalid interval value: "+e);return t.diatonic_intervals[e]}},{key:"getRelativeNoteValue",value:function(e,n,r){if(null==r&&(r=1),1!==r&&-1!==r)throw new m.RERR("BadArguments","Invalid direction: "+r);var i=(e+r*n)%t.NUM_TONES;return i<0&&(i+=t.NUM_TONES),i}},{key:"getRelativeNoteName",value:function(e,n){var r=this.getNoteParts(e),i=this.getNoteValue(r.root),a=n-i;if(Math.abs(a)>t.NUM_TONES-3){var o=1;a>0&&(o=-1);var s=(n+1+(i+1))%t.NUM_TONES*o;if(Math.abs(s)>2)throw new m.RERR("BadArguments","Notes not related: ".concat(e,", ").concat(n,")"));a=s}if(Math.abs(a)>2)throw new m.RERR("BadArguments","Notes not related: ".concat(e,", ").concat(n,")"));var l=r.root;if(a>0)for(var u=1;u<=a;++u)l+="#";else if(a<0)for(var c=-1;c>=a;--c)l+="b";return l}},{key:"getScaleTones",value:function(t,e){for(var n=[t],r=t,i=0;i0&&void 0!==arguments[0]?arguments[0]:null;if(h(this,n),(t=e.call(this)).setAttribute("type","Accidental"),nt("New accidental: ",r),t.note=null,t.index=null,t.type=r,t.position=q.Position.LEFT,t.render_options={font_scale:38,stroke_px:3,parenLeftPadding:2,parenRightPadding:2},t.accidental=R.accidentalCodes(t.type),!t.accidental)throw new m.RERR("ArgumentError","Unknown accidental type: "+r);return t.cautionary=!1,t.parenLeft=null,t.parenRight=null,t.reset(),l(t)}return b(n,null,[{key:"format",value:function(t,e){var n=this,r=e.left_shift+1;if(t&&0!==t.length){for(var i=[],a=null,s=0,l=0;lg?k.shift:g,_=k.line}for(var w=0,S=function(t){for(var e=!1,r=t,i=t;i+1=7){for(var p=2,m=!0;!0===m;){m=!1;for(var v=0;v+pf?w:f}else for(h=t;h<=i;h++)f=R.accidentalColumnsTable[b][d][h-t],y[h].column=f,w=w>f?w:f;T=t=i},T=0;TE[t.column]&&(E[t.column]=t.width)}));for(var F=1;F0?(r=e.flatLine||e.dblSharpLine?2.5:3,t.dblSharpLine&&(n-=.5)):(r=t.flatLine||t.dblSharpLine?2.5:3,e.dblSharpLine&&(n-=.5));var i=Math.abs(n)-1;if(!c||c&&b){o[s.root]=u;var h=new n(l);e.addAccidental(i,h),r.push(u)}})),e.getModifiers().forEach((function(e){"gracenotegroups"===e.getCategory()&&e.getGraceNotes().forEach(t)})))};e.forEach(s)}))}},{key:"CATEGORY",get:function(){return"accidentals"}}]),b(n,[{key:"reset",value:function(){var t=this.render_options.font_scale;this.glyph=new T(this.accidental.code,t),this.glyph.setOriginX(1),this.cautionary&&(this.parenLeft=new T(R.accidentalCodes("{").code,t),this.parenRight=new T(R.accidentalCodes("}").code,t),this.parenLeft.setOriginX(1),this.parenRight.setOriginX(1))}},{key:"getCategory",value:function(){return n.CATEGORY}},{key:"getWidth",value:function(){var t=this.cautionary?rt(this.parenLeft)+rt(this.parenRight)+this.render_options.parenLeftPadding+this.render_options.parenRightPadding:0;return rt(this.glyph)+t}},{key:"setNote",value:function(t){if(!t)throw new m.RERR("ArgumentError","Bad note value: "+t);this.note=t,"gracenotes"===this.note.getCategory()&&(this.render_options.font_scale=25,this.reset())}},{key:"setAsCautionary",value:function(){return this.cautionary=!0,this.render_options.font_scale=28,this.reset(),this}},{key:"draw",value:function(){var t=this.context,e=this.type,n=this.position,r=this.note,i=this.index,a=this.cautionary,o=this.x_shift,s=this.y_shift,l=this.glyph,u=this.parenLeft,c=this.parenRight,b=this.render_options,h=b.parenLeftPadding,f=b.parenRightPadding;if(this.checkContext(),!r||null==i)throw new m.RERR("NoAttachedNote","Can't draw accidental without a note and index.");var d=r.getModifierStartXY(n,i),p=d.x+o,v=d.y+s;nt("Rendering: ",e,p,v),a?(c.render(t,p,v),p-=rt(c),p-=f,p-=this.accidental.parenRightPaddingAdjustment,l.render(t,p,v),p-=rt(l),p-=h,u.render(t,p,v)):l.render(t,p,v),this.setRendered()}}]),n}(q),at=function(t){f(n,t);var e=d(n);function n(t){var r;return h(this,n),l(r,((r=e.call(this)).setAttribute("type","NoteSubGroup"),r.note=null,r.index=null,r.position=q.Position.LEFT,r.subNotes=t,r.subNotes.forEach((function(t){t.ignore_ticks=!1})),r.width=0,r.preFormatted=!1,r.formatter=new Rt,r.voice=new W({num_beats:4,beat_value:4,resolution:R.RESOLUTION}).setStrict(!1),r.voice.addTickables(r.subNotes),s(r)))}return b(n,null,[{key:"format",value:function(t,e){if(!t||0===t.length)return!1;for(var n=0,r=0;r1){var e=new H(t);e.render_options.beam_width=3,e.render_options.partial_beam_length=4,this.beams.push(e)}return this}},{key:"setNote",value:function(t){this.note=t}},{key:"setWidth",value:function(t){this.width=t}},{key:"getWidth",value:function(){return this.width}},{key:"getGraceNotes",value:function(){return this.grace_notes}},{key:"draw",value:function(){var t=this;this.checkContext();var e=this.getNote();if(function(){for(var t=arguments.length,e=new Array(t),r=0;rp?g:p):s===q.Position.RIGHT&&(a.setXShift(d),m=(g+=k)>m?g:m),v=_,y=o}return e.left_shift+=p,e.right_shift+=m,!0}},{key:"CATEGORY",get:function(){return"stringnumber"}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"getNote",value:function(){return this.note}},{key:"setNote",value:function(t){return this.note=t,this}},{key:"getIndex",value:function(){return this.index}},{key:"setIndex",value:function(t){return this.index=t,this}},{key:"setLineEndType",value:function(t){return t>=N.LineEndType.NONE&&t<=N.LineEndType.DOWN&&(this.leg=t),this}},{key:"setStringNumber",value:function(t){return this.string_number=t,this}},{key:"setOffsetX",value:function(t){return this.x_offset=t,this}},{key:"setOffsetY",value:function(t){return this.y_offset=t,this}},{key:"setLastNote",value:function(t){return this.last_note=t,this}},{key:"setDashed",value:function(t){return this.dashed=t,this}},{key:"draw",value:function(){var t=this.checkContext();if(!this.note||null==this.index)throw new m.RERR("NoAttachedNote","Can't draw string number without a note and index.");this.setRendered();var e=this.note.stave.options.spacing_between_lines_px,n=this.note.getModifierStartXY(this.position,this.index),r=n.x+this.x_shift+this.x_offset,i=n.y+this.y_shift+this.y_offset;switch(this.position){case q.Position.ABOVE:case q.Position.BELOW:var a=this.note.getStemExtents(),o=a.topY,s=a.baseY+2;this.note.stem_direction===Z.STEM_DOWN&&(o=a.baseY,s=a.topY-2),i=this.position===q.Position.ABOVE?this.note.hasStem()?o-1.75*e:n.y-1.75*e:this.note.hasStem()?s+1.5*e:n.y+1.75*e,i+=this.y_shift+this.y_offset;break;case q.Position.LEFT:r-=this.radius/2+5;break;case q.Position.RIGHT:r+=this.radius/2+6;break;default:throw new m.RERR("InvalidPosition","The position ".concat(this.position," is invalid"))}t.save(),t.beginPath(),t.arc(r,i,this.radius,0,2*Math.PI,!1),t.lineWidth=1.5,t.stroke(),t.setFont(this.font.family,this.font.size,this.font.weight);var l=r-t.measureText(this.string_number).width/2;if(t.fillText(""+this.string_number,l,i+4.5),null!=this.last_note){var u,c,b=this.last_note.getStemX()-this.note.getX()+5;switch(t.strokeStyle="#000000",t.lineCap="round",t.lineWidth=.6,this.dashed?N.drawDashedLine(t,r+10,i,r+b,i,[3,3]):N.drawDashedLine(t,r+10,i,r+b,i,[3,0]),this.leg){case N.LineEndType.UP:u=-10,c=this.dashed?[3,3]:[3,0],N.drawDashedLine(t,r+b,i,r+b,i+u,c);break;case N.LineEndType.DOWN:u=10,c=this.dashed?[3,3]:[3,0],N.drawDashedLine(t,r+b,i,r+b,i+u,c)}}t.restore()}}]),n}(q),bt=q.Position,ht=bt.ABOVE,ft=bt.BELOW,dt=function(t,e){return.5*t(e/.5)},pt=function(t,e){return e===ht?t<=5:t>=1},mt=function(t,e){return pt(t,e)?e===ht?Math.ceil:Math.floor:Math.round},vt=function(t){var e=t.getCategory();return"stavenotes"===e||"gracenotes"===e},yt=function(t){f(n,t);var e=d(n);function n(t){var r;return h(this,n),(r=e.call(this)).setAttribute("type","Articulation"),r.note=null,r.index=null,r.type=t,r.position=ft,r.render_options={font_scale:38},r.reset(),r}return b(n,null,[{key:"format",value:function(t,e){if(!t||0===t.length)return!1;var n=function(t,e,n){return dt(mt(e,n),t.glyph.getMetrics().height/10+.5)};t.filter((function(t){return t.getPosition()===ht})).forEach((function(t){t.setTextLine(e.top_text_line),e.top_text_line+=n(t,e.top_text_line,ht)})),t.filter((function(t){return t.getPosition()===ft})).forEach((function(t){t.setTextLine(e.text_line),e.text_line+=n(t,e.text_line,ft)}));var r=t.map((function(t){return t.getWidth()})).reduce((function(t,e){return Math.max(e,t)}));return e.left_shift+=r/2,e.right_shift+=r/2,!0}},{key:"easyScoreHook",value:function(t,e,n){var r=t.articulations;if(r){var i={staccato:"a.",tenuto:"a-"};r.split(",").map((function(t){return t.trim().split(".")})).map((function(t){var e=u(t,2),r=e[0],a=e[1],o={type:i[r]};return a&&(o.position=q.PositionString[a]),n.getFactory().Articulation(o)})).map((function(t){return e.addModifier(0,t)}))}}},{key:"CATEGORY",get:function(){return"articulations"}},{key:"INITIAL_OFFSET",get:function(){return-.5}}]),b(n,[{key:"reset",value:function(){if(this.articulation=R.articulationCodes(this.type),!this.articulation)throw new m.RERR("ArgumentError","Articulation not found: "+this.type);var t=(this.position===ht?this.articulation.aboveCode:this.articulation.belowCode)||this.articulation.code;this.glyph=new T(t,this.render_options.font_scale),this.setWidth(this.glyph.getMetrics().width)}},{key:"getCategory",value:function(){return n.CATEGORY}},{key:"draw",value:function(){var t,e=this.note,i=this.index,a=this.position,s=this.glyph,l=this.articulation.between_lines,u=this.text_line,c=this.context;if(this.checkContext(),!e||null==i)throw new m.RERR("NoAttachedNote","Can't draw Articulation without a note and index.");this.setRendered();var b=e.getStave(),h=b.getSpacingBetweenLines(),f="tabnotes"===e.getCategory(),d=e.getModifierStartXY(a,i).x,p=!l||f,v=function(t,e){var n=e===ht&&t.getStemDirection()===L.UP||e===ft&&t.getStemDirection()===L.DOWN;return vt(t)?t.hasStem()&&n?.5:1:t.hasStem()&&n?1:0}(e,a),y=this.musicFont.lookupMetric("articulation.".concat(s.getCode(),".padding"),0),g=(t={},r(t,ht,(function(){s.setOrigin(.5,1);var t=function(t,e){var n=t.getStave(),r=t.getStemDirection(),i=t.getStemExtents(),a=i.topY,s=i.baseY;if(vt(t))return t.hasStem()?r===L.UP?a:s:Math.min.apply(Math,o(t.getYs()));if("tabnotes"===t.getCategory())return t.hasStem()&&r===L.UP?a:n.getYForTopText(e);throw new m.RERR("UnknownCategory","Only can get the top and bottom ys of stavenotes and tabnotes")}(e,u)-(u+v)*h;return p?Math.min(b.getYForTopText(n.INITIAL_OFFSET),t):t})),r(t,ft,(function(){s.setOrigin(.5,0);var t=function(t,e){var n=t.getStave(),r=t.getStemDirection(),i=t.getStemExtents(),a=i.topY,s=i.baseY;if(vt(t))return t.hasStem()?r===L.UP?s:a:Math.max.apply(Math,o(t.getYs()));if("tabnotes"===t.getCategory())return t.hasStem()?r===L.UP?n.getYForBottomText(e):a:n.getYForBottomText(e);throw new m.RERR("UnknownCategory","Only can get the top and bottom ys of stavenotes and tabnotes")}(e,u)+(u+v)*h;return p?Math.max(b.getYForBottomText(n.INITIAL_OFFSET),t):t})),t)[a]();if(!f){var _=a===ht?-1:1,x=f?e.positions[i].str:e.getKeyProps()[i].line,k=(e.getYs()[i]-g)/h+x,w=function(t,e,n,r){var i=dt(mt(e,n),e);return t&&pt(i,n)&&i%1==0?i+.5*-r:i}(l,k,a,_);pt(w,a)&&s.setOrigin(.5,.5),g+=Math.abs(w-k)*h*_+y*_}!function(){for(var t=arguments.length,e=new Array(t),r=0;r0&&r--;for(var s=0;s1&&void 0!==arguments[1]?arguments[1]:0,n=(arguments.length>2&&void 0!==arguments[2]?arguments[2]:{}).paddingBetween,r=void 0===n?10:n;t.reduce((function(t,e){e.addToModifierContext(new Tt);var n=(new gt).addTickable(e).preFormat(),i=n.getMetrics();return n.setX(t+i.totalLeftPx),t+n.getWidth()+i.totalRightPx+r}),e)}},{key:"plotDebugging",value:function(t,e,n,r,i,a){var o=n+(a=c({stavePadding:m.Flow.DEFAULT_FONT_STACK[0].lookupMetric("stave.padding")},a)).stavePadding,s=e.contextGaps;t.save(),t.setFont("Arial",8,""),s.gaps.forEach((function(e){var n,a,s;n=o+e.x1,a=o+e.x2,s="rgba(100,200,100,0.4)",t.beginPath(),t.setStrokeStyle(s),t.setFillStyle(s),t.setLineWidth(1),t.fillRect(n,r,Math.max(a-n,0),i-r),t.setFillStyle("green"),t.fillText(Math.round(e.x2-e.x1),o+e.x1,i+12)})),t.setFillStyle("red"),t.fillText("Loss: ".concat((e.totalCost||0).toFixed(2)," Shift: ").concat((e.totalShift||0).toFixed(2)," Gap: ").concat(s.total.toFixed(2)),o-20,i+27),t.restore()}},{key:"FormatAndDraw",value:function(e,n,r,i){var a={auto_beam:!1,align_rests:!1};"object"==typeof i?m.Merge(a,i):"boolean"==typeof i&&(a.auto_beam=i);var o=new W(R.TIME4_4).setMode(W.Mode.SOFT).addTickables(r),s=a.auto_beam?H.applyAndGetBeams(o):[];return(new t).joinVoices([o],{align_rests:a.align_rests}).formatToStave([o],n,{align_rests:a.align_rests,stave:n}),o.setStave(n).draw(e,n),s.forEach((function(t){return t.setContext(e).draw()})),o.getBoundingBox()}},{key:"FormatAndDrawTab",value:function(e,n,r,i,a,o,s){var l={auto_beam:o,align_rests:!1};"object"==typeof s?m.Merge(l,s):"boolean"==typeof s&&(l.auto_beam=s);var u=new W(R.TIME4_4).setMode(W.Mode.SOFT).addTickables(a),c=new W(R.TIME4_4).setMode(W.Mode.SOFT).addTickables(i),b=l.auto_beam?H.applyAndGetBeams(u):[];(new t).joinVoices([u],{align_rests:l.align_rests}).joinVoices([c]).formatToStave([u,c],r,{align_rests:l.align_rests}),u.draw(e,r),c.draw(e,n),b.forEach((function(t){return t.setContext(e).draw()})),new G(r,n).setContext(e).draw()}},{key:"AlignRestsToNotes",value:function(t,e,n){return t.forEach((function(r,i){if(r instanceof Z&&r.isRest()){if(r.tuplet&&!n)return;var a=r.getGlyph().position.toUpperCase();if("R/4"!==a&&"B/4"!==a)return;if(e||null!=r.beam){var o=r.getKeyProps()[0];if(0===i)o.line=Et(t,o.line,i,!1),r.setKeyLine(0,o.line);else if(i>0&&i0&&void 0!==arguments[0]?arguments[0]:0,n=arguments.length>1?arguments[1]:void 0,r=arguments.length>2?arguments[2]:void 0,i=arguments.length>3?arguments[3]:void 0,a=this.tickContexts,o=a.list,s=a.map;this.lossHistory=[],r&&i&&r.forEach((function(t){return t.setStave(i).preFormat()}));var l=0,u=0;if(this.minTotalWidth=0,o.forEach((function(e){var r=s[e];n&&r.setContext(n),r.preFormat();var i=r.getWidth();t.minTotalWidth+=i;var a=r.getMetrics();l=l+u+a.totalLeftPx,r.setX(l),u=i-a.totalLeftPx})),this.minTotalWidth=l+u,this.hasMinTotalWidth=!0,e<=0)return this.evaluate();var c=s[o[0]],b=s[o[o.length-1]];function h(t){return o.map((function(e,n){var r=s[e],i=r.getTickablesByVoice(),a=null;if(n>0)for(var l=s[o[n-1]],u=function(e){var n=s[o[e]].getTickablesByVoice(),u=[];if(Object.keys(i).forEach((function(t){n[t]&&u.push(t)})),u.length>0){var c=0,b=1/0,h=0;return{v:(u.forEach((function(t){var e=n[t].getTicks().value();e>c&&(a=n[t],c=e);var r=i[t],o=r.getX()-(r.getMetrics().modLeftPx+r.getMetrics().leftDisplacedHeadPx),s=n[t].getMetrics(),l=n[t].getX()+s.notePx+s.modRightPx+s.rightDisplacedHeadPx;b=Math.min(b,o-l)})),b=Math.min(b,r.getX()-l.getX()),h=a.getVoice().softmax(c)*t,{expectedDistance:h,maxNegativeShiftPx:b,fromTickable:a})}}},c=n-1;c>=0;c--){var b=u(c);if("object"===typeof b)return b.v}return{errorPx:0,fromTickablePx:0,maxNegativeShiftPx:0}}))}function f(t){var e=d/2,n=0,r=0;return o.forEach((function(i,a){var o=s[i];if(a>0){var l=o.getX(),u=t[a],c=u.fromTickable.getX()+u.expectedDistance-(l+n),b=0;c>0?n+=c:c<0&&(b=Math.min(u.maxNegativeShiftPx+r,Math.abs(c))),o.setX(l+n-b),r+=b}o.getCenterAlignedTickables().forEach((function(t){t.center_x_shift=e-o.getX()}))})),b.getX()-c.getX()}var d=e-b.getMetrics().notePx-b.getMetrics().totalRightPx-c.getMetrics().totalLeftPx,p=f(h(d));return p>d&&f(h(d-(p-d))),1===o.length?null:(this.justifyWidth=e,this.evaluate())}},{key:"evaluate",value:function(){var t=this,e=this.justifyWidth;this.contextGaps={total:0,gaps:[]},this.tickContexts.list.forEach((function(e,n){if(0!==n){var r=t.tickContexts.list[n-1],i=t.tickContexts.map[r],a=t.tickContexts.map[e],o=i.getMetrics(),s=a.getMetrics(),l=i.getX()+o.notePx+o.totalRightPx,u=a.getX()-s.totalLeftPx,c=u-l;t.contextGaps.total+=c,t.contextGaps.gaps.push({x1:l,x2:u}),a.getFormatterMetrics().freedom.left=c,i.getFormatterMetrics().freedom.right=c}}));var n=this.durationStats={};this.voices.forEach((function(t){t.getTickables().forEach((function(t,r,i){var a=t.getTicks().clone().simplify().toString(),o=t.getMetrics(),s=t.getFormatterMetrics(),l=t.getX()+o.notePx+o.totalRightPx,u=0;if(r0?e.tickContexts.map[a[i-1]]:null,l=i0?n=-Math.min(o.getFormatterMetrics().freedom.right,Math.abs(u)):u<0&&(n=l?Math.min(l.getFormatterMetrics().freedom.right,Math.abs(u)):0),n*=t.alpha,e.totalShift+=n})),this.iterationsCompleted++,this.evaluate()}},{key:"postFormat",value:function(){var t=function(t){return t.list.forEach((function(e){return t.map[e].postFormat()}))};return t(this.modiferContexts),t(this.tickContexts),this}},{key:"joinVoices",value:function(t){return this.createModifierContexts(t),this.hasMinTotalWidth=!1,this}},{key:"format",value:function(t,e,n){var r=this,i=c({align_rests:!1,context:null,stave:null},n);return this.voices=t,this.options.softmaxFactor&&this.voices.forEach((function(t){return t.setSoftmaxFactor(r.options.softmaxFactor)})),this.alignRests(t,i.align_rests),this.createTickContexts(t),this.preFormat(e,i.context,t,i.stave),i.stave&&this.postFormat(),this}},{key:"formatToStave",value:function(e,n,r){r=c({padding:10},r);var i=n.getNoteEndX()-n.getNoteStartX()-r.padding;return function(){for(var e=arguments.length,n=new Array(e),r=0;r3&&void 0!==arguments[3]?arguments[3]:0;t.setYShift(e.getYForLine(n)-e.getYForGlyphs()+r)}},{key:"getPadding",value:function(t){return void 0!==t&&t<2?0:this.padding}},{key:"setPadding",value:function(t){return this.padding=t,this}},{key:"setLayoutMetrics",value:function(t){return this.layoutMetrics=t,this}},{key:"getLayoutMetrics",value:function(){return this.layoutMetrics}}]),n}(x),Mt=function(t){f(n,t);var e=d(n);function n(t){var r;h(this,n),(r=e.call(this)).setAttribute("type","Barline"),r.thickness=R.STAVE_LINE_THICKNESS;var i=n.type;return r.widths={},r.widths[i.SINGLE]=5,r.widths[i.DOUBLE]=5,r.widths[i.END]=5,r.widths[i.REPEAT_BEGIN]=5,r.widths[i.REPEAT_END]=5,r.widths[i.REPEAT_BOTH]=5,r.widths[i.NONE]=5,r.paddings={},r.paddings[i.SINGLE]=0,r.paddings[i.DOUBLE]=0,r.paddings[i.END]=0,r.paddings[i.REPEAT_BEGIN]=15,r.paddings[i.REPEAT_END]=15,r.paddings[i.REPEAT_BOTH]=15,r.paddings[i.NONE]=0,r.layoutMetricsMap={},r.layoutMetricsMap[i.SINGLE]={xMin:0,xMax:1,paddingLeft:5,paddingRight:5},r.layoutMetricsMap[i.DOUBLE]={xMin:-3,xMax:1,paddingLeft:5,paddingRight:5},r.layoutMetricsMap[i.END]={xMin:-5,xMax:1,paddingLeft:5,paddingRight:5},r.layoutMetricsMap[i.REPEAT_END]={xMin:-10,xMax:1,paddingLeft:5,paddingRight:5},r.layoutMetricsMap[i.REPEAT_BEGIN]={xMin:-2,xMax:10,paddingLeft:5,paddingRight:5},r.layoutMetricsMap[i.REPEAT_BOTH]={xMin:-10,xMax:10,paddingLeft:5,paddingRight:5},r.layoutMetricsMap[i.NONE]={xMin:0,xMax:0,paddingLeft:5,paddingRight:5},r.setPosition(Ft.Position.BEGIN),r.setType(t),r}return b(n,null,[{key:"CATEGORY",get:function(){return"barlines"}},{key:"type",get:function(){return{SINGLE:1,DOUBLE:2,END:3,REPEAT_BEGIN:4,REPEAT_END:5,REPEAT_BOTH:6,NONE:7}}},{key:"typeString",get:function(){return{single:n.type.SINGLE,double:n.type.DOUBLE,end:n.type.END,repeatBegin:n.type.REPEAT_BEGIN,repeatEnd:n.type.REPEAT_END,repeatBoth:n.type.REPEAT_BOTH,none:n.type.NONE}}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"getType",value:function(){return this.type}},{key:"setType",value:function(t){return this.type="string"==typeof t?n.typeString[t]:t,this.setWidth(this.widths[this.type]),this.setPadding(this.paddings[this.type]),this.setLayoutMetrics(this.layoutMetricsMap[this.type]),this}},{key:"draw",value:function(t){switch(t.checkContext(),this.setRendered(),this.type){case n.type.SINGLE:this.drawVerticalBar(t,this.x,!1);break;case n.type.DOUBLE:this.drawVerticalBar(t,this.x,!0);break;case n.type.END:this.drawVerticalEndBar(t,this.x);break;case n.type.REPEAT_BEGIN:this.drawRepeatBar(t,this.x,!0),t.getX()!==this.x&&this.drawVerticalBar(t,t.getX());break;case n.type.REPEAT_END:this.drawRepeatBar(t,this.x,!1);break;case n.type.REPEAT_BOTH:this.drawRepeatBar(t,this.x,!1),this.drawRepeatBar(t,this.x,!0)}}},{key:"drawVerticalBar",value:function(t,e,n){t.checkContext();var r=t.getTopLineTopY(),i=t.getBottomLineBottomY();n&&t.context.fillRect(e-3,r,1,i-r),t.context.fillRect(e,r,1,i-r)}},{key:"drawVerticalEndBar",value:function(t,e){t.checkContext();var n=t.getTopLineTopY(),r=t.getBottomLineBottomY();t.context.fillRect(e-5,n,1,r-n),t.context.fillRect(e-2,n,3,r-n)}},{key:"drawRepeatBar",value:function(t,e,n){t.checkContext();var r=t.getTopLineTopY(),i=t.getBottomLineBottomY(),a=3;n||(a=-5),t.context.fillRect(e+a,r,1,i-r),t.context.fillRect(e-2,r,3,i-r),n?a+=4:a-=4;var o=e+a+1,s=(t.getNumLines()-1)*t.getSpacingBetweenLines(),l=r+(s=s/2-t.getSpacingBetweenLines()/2)+1;t.context.beginPath(),t.context.arc(o,l,2,0,2*Math.PI,!1),t.context.fill(),l+=t.getSpacingBetweenLines(),t.context.beginPath(),t.context.arc(o,l,2,0,2*Math.PI,!1),t.context.fill()}}]),n}(Ft),Pt=function(t){f(n,t);var e=d(n);function n(t,r,i){var a;return h(this,n),(a=e.call(this)).setAttribute("type","Repetition"),a.symbol_type=t,a.x=r,a.x_shift=0,a.y_shift=i,a.font={family:"times",size:12,weight:"bold italic"},a}return b(n,null,[{key:"CATEGORY",get:function(){return"repetitions"}},{key:"type",get:function(){return{NONE:1,CODA_LEFT:2,CODA_RIGHT:3,SEGNO_LEFT:4,SEGNO_RIGHT:5,DC:6,DC_AL_CODA:7,DC_AL_FINE:8,DS:9,DS_AL_CODA:10,DS_AL_FINE:11,FINE:12}}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"setShiftX",value:function(t){return this.x_shift=t,this}},{key:"setShiftY",value:function(t){return this.y_shift=t,this}},{key:"draw",value:function(t,e){switch(this.setRendered(),this.symbol_type){case n.type.CODA_RIGHT:this.drawCodaFixed(t,e+t.width);break;case n.type.CODA_LEFT:this.drawSymbolText(t,e,"Coda",!0);break;case n.type.SEGNO_LEFT:this.drawSignoFixed(t,e);break;case n.type.SEGNO_RIGHT:this.drawSignoFixed(t,e+t.width);break;case n.type.DC:this.drawSymbolText(t,e,"D.C.",!1);break;case n.type.DC_AL_CODA:this.drawSymbolText(t,e,"D.C. al",!0);break;case n.type.DC_AL_FINE:this.drawSymbolText(t,e,"D.C. al Fine",!1);break;case n.type.DS:this.drawSymbolText(t,e,"D.S.",!1);break;case n.type.DS_AL_CODA:this.drawSymbolText(t,e,"D.S. al",!0);break;case n.type.DS_AL_FINE:this.drawSymbolText(t,e,"D.S. al Fine",!1);break;case n.type.FINE:this.drawSymbolText(t,e,"Fine",!1)}return this}},{key:"drawCodaFixed",value:function(t,e){var n=t.getYForTopText(t.options.num_lines)+this.y_shift;return T.renderGlyph(t.context,this.x+e+this.x_shift,n+25,40,"coda",{category:"coda"}),this}},{key:"drawSignoFixed",value:function(t,e){var n=t.getYForTopText(t.options.num_lines)+this.y_shift;return T.renderGlyph(t.context,this.x+e+this.x_shift,n+25,30,"segno",{category:"segno"}),this}},{key:"drawSymbolText",value:function(t,e,r,i){var a=t.checkContext();a.save(),a.setFont(this.font.family,this.font.size,this.font.weight);var o=0+this.x_shift,s=e+this.x_shift;this.symbol_type===n.type.CODA_LEFT?s=(o=this.x+t.options.vertical_bar_width)+a.measureText(r).width+12:o=(s=this.x+e+t.width-5+this.x_shift)-+a.measureText(r).width-12;var l=t.getYForTopText(t.options.num_lines)+this.y_shift;return i&&T.renderGlyph(a,s,l,40,"coda",{category:"coda"}),a.fillText(r,o,l+5),a.restore(),this}}]),n}(Ft),Ot=function(t){f(n,t);var e=d(n);function n(t,r,i){var a;return h(this,n),(a=e.call(this)).setAttribute("type","StaveSection"),a.setWidth(16),a.section=t,a.x=r,a.shift_x=0,a.shift_y=i,a.font={family:"sans-serif",size:12,weight:"bold"},a}return b(n,null,[{key:"CATEGORY",get:function(){return"stavesection"}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"setStaveSection",value:function(t){return this.section=t,this}},{key:"setShiftX",value:function(t){return this.shift_x=t,this}},{key:"setShiftY",value:function(t){return this.shift_y=t,this}},{key:"draw",value:function(t,e){var n=t.checkContext();this.setRendered(),n.save(),n.lineWidth=2,n.setFont(this.font.family,this.font.size,this.font.weight);var r=n.measureText(""+this.section).width,i=r+6;i<18&&(i=18);var a=t.getYForTopText(3)+this.shift_y,o=this.x+e;return n.beginPath(),n.lineWidth=2,n.rect(o,a,i,20),n.stroke(),o+=(i-r)/2,n.fillText(""+this.section,o,a+16),n.restore(),this}}]),n}(Ft),Dt=function(t){f(n,t);var e=d(n);function n(t,r,i){var a;return h(this,n),(a=e.call(this)).setAttribute("type","StaveTempo"),a.tempo=t,a.position=q.Position.ABOVE,a.x=r,a.shift_x=10,a.shift_y=i,a.font={family:"times",size:14,weight:"bold"},a.render_options={glyph_font_scale:30},a}return b(n,null,[{key:"CATEGORY",get:function(){return"stavetempo"}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"setTempo",value:function(t){return this.tempo=t,this}},{key:"setShiftX",value:function(t){return this.shift_x=t,this}},{key:"setShiftY",value:function(t){return this.shift_y=t,this}},{key:"draw",value:function(t,e){var n=t.checkContext();this.setRendered();var r=this.render_options,i=r.glyph_font_scale/38,a=this.tempo.name,o=this.tempo.duration,s=this.tempo.dots,l=this.tempo.bpm,u=this.font,c=this.x+this.shift_x+e,b=t.getYForTopText(1)+this.shift_y;if(n.save(),a&&(n.setFont(u.family,u.size,u.weight),n.fillText(a,c,b),c+=n.measureText(a).width),o&&l){n.setFont(u.family,u.size,"normal"),a&&(c+=n.measureText(" ").width,n.fillText("(",c,b),c+=n.measureText("(").width);var h=R.getGlyphProps(o);if(c+=3*i,T.renderGlyph(n,c,b,r.glyph_font_scale,h.code_head),c+=h.getWidth()*i,h.stem){var f=30;h.beam_count&&(f+=3*(h.beam_count-1));var d=b-(f*=i);n.fillRect(c-i,d,i,f),h.flag&&(T.renderGlyph(n,c,d,r.glyph_font_scale,h.code_flag_upstem,{category:"flag.staveTempo"}),s||(c+=6*i))}for(var p=0;p=t.line?o.above:o.below)}this.placeGlyphOnLine(i,this.stave,t.line),this.glyphs.push(i);var s=this.xPositions[this.xPositions.length-1],l=i.getMetrics().width+a;this.xPositions.push(s+l),this.width+=l}},{key:"cancelKey",value:function(t){return this.formatted=!1,this.cancelKeySpec=t,this}},{key:"convertToCancelAccList",value:function(t){var e=R.keySignature(t),n=this.accList.length>0&&e.length>0&&e[0].type!==this.accList[0].type,r=n?e.length:e.length-this.accList.length;if(!(r<1)){for(var i=[],a=0;a2&&void 0!==arguments[2]?arguments[2]:this.accList,a=0;switch(t){case"soprano":"#"===e?n=[2.5,.5,2,0,1.5,-.5,1]:a=-1;break;case"mezzo-soprano":"b"===e?n=[0,2,.5,2.5,1,3,1.5]:a=1.5;break;case"alto":a=.5;break;case"tenor":"#"===e?n=[3,1,2.5,.5,2,0,1.5]:a=-.5;break;case"baritone-f":case"baritone-c":"b"===e?n=[.5,2.5,1,3,1.5,3.5,2]:a=2;break;case"bass":case"french":a=1}if(void 0!==n)for(r=0;r0?e[0].type:null;if(this.cancelKeySpec&&(t=this.convertToCancelAccList(this.cancelKeySpec)),this.alterKeySpec&&this.convertToAlterAccList(this.alterKeySpec),this.accList.length>0){var r=(this.position===Ft.Position.END?this.stave.endClef:this.stave.clef)||this.stave.clef;t&&this.convertAccLines(r,t.type,t.accList),this.convertAccLines(r,n,e);for(var i=0;i0&&void 0!==arguments[0]?arguments[0]:null,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:15,a=!(arguments.length>2&&void 0!==arguments[2])||arguments[2];if(h(this,n),(t=e.call(this)).setAttribute("type","TimeSignature"),t.validate_args=a,null===r)return l(t);var o=i;t.point=t.musicFont.lookupMetric("digits.point");var s=t.musicFont.lookupMetric("digits.shiftLine",0);return t.topLine=2+s,t.bottomLine=4+s,t.setPosition(Ft.Position.BEGIN),t.setTimeSig(r),t.setWidth(t.timeSig.glyph.getMetrics().width),t.setPadding(o),l(t)}return b(n,null,[{key:"CATEGORY",get:function(){return"timesignatures"}},{key:"glyphs",get:function(){return{C:{code:"timeSigCommon",point:40,line:2},"C|":{code:"timeSigCutCommon",point:40,line:2}}}}]),b(n,[{key:"getCategory",value:function(){return n.CATEGORY}},{key:"parseTimeSpec",value:function(t){if("C"===t||"C|"===t){var e=n.glyphs[t],r=e.line,i=e.code,a=e.point;return{line:r,num:!1,glyph:new T(i,a)}}this.validate_args&&function(t){var e=t.split("/").filter((function(t){return""!==t}));if(2!==e.length)throw new m.RERR("BadTimeSignature","Invalid time spec: ".concat(t,'. Must be in the form "/"'));e.forEach((function(e){if(isNaN(Number(e)))throw new m.RERR("BadTimeSignature","Invalid time spec: ".concat(t,". Must contain two valid numbers."))}))}(t);var o=t.split("/").map((function(t){return t.split("")})),s=u(o,2),l=s[0],c=s[1];return{num:!0,glyph:this.makeTimeSignatureGlyph(l,c)}}},{key:"makeTimeSignatureGlyph",value:function(t,e){var n=new T("timeSig0",this.point);n.topGlyphs=[],n.botGlyphs=[];for(var r=0,i=0;is?r:s,h=n.getMetrics().x_min;n.getMetrics=function(){return{x_min:h,x_max:h+b,width:b}};var f=(b-r)/2,d=(b-s)/2,p=this;return n.renderToStave=function(t){for(var e=t+f,n=0;n0&&void 0!==arguments[0]?arguments[0]:0))throw new m.RERR("InvalidIndex","Must be of number type");if(this.formatted||this.format(),1===this.getModifiers(Ft.Position.BEGIN).length)return 0;var t=this.start_x-this.x,e=this.modifiers[0];return e.getType()===Mt.type.REPEAT_BEGIN&&t>e.getWidth()&&(t-=e.getWidth()),t}},{key:"setRepetitionTypeLeft",value:function(t,e){return this.modifiers.push(new Pt(t,this.x,e)),this}},{key:"setRepetitionTypeRight",value:function(t,e){return this.modifiers.push(new Pt(t,this.x,e)),this}},{key:"setVoltaType",value:function(t,e,n){return this.modifiers.push(new Ut(t,e,this.x,n)),this}},{key:"setSection",value:function(t,e){return this.modifiers.push(new Ot(t,this.x,e)),this}},{key:"setTempo",value:function(t,e){return this.modifiers.push(new Dt(t,this.x,e)),this}},{key:"setText",value:function(t,e,n){return this.modifiers.push(new Nt(t,e,n)),this}},{key:"getHeight",value:function(){return this.height}},{key:"getSpacingBetweenLines",value:function(){return this.options.spacing_between_lines_px}},{key:"getBoundingBox",value:function(){return new w(this.x,this.y,this.width,this.getBottomY()-this.y)}},{key:"getBottomY",value:function(){var t=this.options,e=t.spacing_between_lines_px;return this.getYForLine(t.num_lines)+t.space_below_staff_ln*e}},{key:"getBottomLineY",value:function(){return this.getYForLine(this.options.num_lines)}},{key:"getYForLine",value:function(t){var e=this.options,n=e.spacing_between_lines_px,r=e.space_above_staff_ln;return this.y+t*n+r*n}},{key:"getLineForY",value:function(t){var e=this.options,n=e.spacing_between_lines_px,r=e.space_above_staff_ln;return(t-this.y)/n-r}},{key:"getYForTopText",value:function(t){var e=t||0;return this.getYForLine(-e-this.options.top_text_position)}},{key:"getYForBottomText",value:function(t){var e=t||0;return this.getYForLine(this.options.bottom_text_position+e)}},{key:"getYForNote",value:function(t){var e=this.options,n=e.spacing_between_lines_px,r=e.space_above_staff_ln;return this.y+r*n+5*n-t*n}},{key:"getYForGlyphs",value:function(){return this.getYForLine(3)}},{key:"addModifier",value:function(t,e){return void 0!==e&&t.setPosition(e),t.setStave(this),this.formatted=!1,this.modifiers.push(t),this}},{key:"addEndModifier",value:function(t){return this.addModifier(t,Ft.Position.END),this}},{key:"setBegBarType",value:function(t){var e=Mt.type,n=e.SINGLE,r=e.REPEAT_BEGIN,i=e.NONE;return t!==n&&t!==r&&t!==i||(this.modifiers[0].setType(t),this.formatted=!1),this}},{key:"setEndBarType",value:function(t){return t!==Mt.type.REPEAT_BEGIN&&(this.modifiers[1].setType(t),this.formatted=!1),this}},{key:"setClef",value:function(t,e,n,r){void 0===r&&(r=Ft.Position.BEGIN),r===Ft.Position.END?this.endClef=t:this.clef=t;var i=this.getModifiers(r,Lt.CATEGORY);return 0===i.length?this.addClef(t,e,n,r):i[0].setType(t,e,n),this}},{key:"setEndClef",value:function(t,e,n){return this.setClef(t,e,n,Ft.Position.END),this}},{key:"setKeySignature",value:function(t,e,n){void 0===n&&(n=Ft.Position.BEGIN);var r=this.getModifiers(n,Bt.CATEGORY);return 0===r.length?this.addKeySignature(t,e,n):r[0].setKeySig(t,e),this}},{key:"setEndKeySignature",value:function(t,e){return this.setKeySignature(t,e,Ft.Position.END),this}},{key:"setTimeSignature",value:function(t,e,n){void 0===n&&(n=Ft.Position.BEGIN);var r=this.getModifiers(n,zt.CATEGORY);return 0===r.length?this.addTimeSignature(t,e,n):r[0].setTimeSig(t),this}},{key:"setEndTimeSignature",value:function(t,e){return this.setTimeSignature(t,e,Ft.Position.END),this}},{key:"addKeySignature",value:function(t,e,n){return void 0===n&&(n=Ft.Position.BEGIN),this.addModifier(new Bt(t,e).setPosition(n),n),this}},{key:"addClef",value:function(t,e,n,r){return void 0===r||r===Ft.Position.BEGIN?this.clef=t:r===Ft.Position.END&&(this.endClef=t),this.addModifier(new Lt(t,e,n),r),this}},{key:"addEndClef",value:function(t,e,n){return this.addClef(t,e,n,Ft.Position.END),this}},{key:"addTimeSignature",value:function(t,e,n){return this.addModifier(new zt(t,e),n),this}},{key:"addEndTimeSignature",value:function(t,e){return this.addTimeSignature(t,e,Ft.Position.END),this}},{key:"addTrebleGlyph",value:function(){return this.addClef("treble"),this}},{key:"getModifiers",value:function(t,e){return void 0===t&&void 0===e?this.modifiers:this.modifiers.filter((function(n){return!(void 0!==t&&t!==n.getPosition()||void 0!==e&&e!==n.getCategory())}))}},{key:"sortByCategory",value:function(t,e){for(var n=t.length-1;n>=0;n--)for(var r=0;re[t[r+1].getCategory()]){var i=t[r];t[r]=t[r+1],t[r+1]=i}}},{key:"format",value:function(){var t,e,n,r=this.modifiers[0],i=this.modifiers[1],a=this.getModifiers(Ft.Position.BEGIN),o=this.getModifiers(Ft.Position.END);this.sortByCategory(a,{barlines:0,clefs:1,keysignatures:2,timesignatures:3}),this.sortByCategory(o,{timesignatures:0,keysignatures:1,barlines:2,clefs:3}),a.length>1&&r.getType()===Mt.type.REPEAT_BEGIN&&(a.push(a.splice(0,1)[0]),a.splice(0,0,new Mt(Mt.type.SINGLE))),o.indexOf(i)>0&&o.splice(0,0,new Mt(Mt.type.NONE));for(var s=0,l=this.x,u=0;u0){this.context.save(),this.context.setFont(this.font.family,this.font.size,this.font.weight);var o=this.context.measureText(""+this.measure).width;t=this.getYForTopText(0)+3,this.context.fillText(""+this.measure,this.x-o/2,t),this.context.restore()}return this}},{key:"drawVertical",value:function(t,e){this.drawVerticalFixed(this.x+t,e)}},{key:"drawVerticalFixed",value:function(t,e){this.checkContext();var n=this.getYForLine(0),r=this.getYForLine(this.options.num_lines-1);e&&this.context.fillRect(t-3,n,1,r-n+1),this.context.fillRect(t,n,1,r-n+1)}},{key:"drawVerticalBar",value:function(t){this.drawVerticalBarFixed(this.x+t,!1)}},{key:"drawVerticalBarFixed",value:function(t){this.checkContext();var e=this.getYForLine(0),n=this.getYForLine(this.options.num_lines-1);this.context.fillRect(t,e,1,n-e+1)}},{key:"getConfigForLines",value:function(){return this.options.line_config}},{key:"setConfigForLine",value:function(t,e){if(t>=this.options.num_lines||t<0)throw new m.RERR("StaveConfigError","The line number must be within the range of the number of lines in the Stave.");if(void 0===e.visible)throw new m.RERR("StaveConfigError","The line configuration object is missing the 'visible' property.");if("boolean"!=typeof e.visible)throw new m.RERR("StaveConfigError","The line configuration objects 'visible' property must be true or false.");return this.options.line_config[t]=e,this}},{key:"setConfigForLines",value:function(t){if(t.length!==this.options.num_lines)throw new m.RERR("StaveConfigError","The length of the lines configuration array must match the number of lines in the Stave");for(var e in t)t[e]||(t[e]=this.options.line_config[e]),m.Merge(this.options.line_config[e],t[e]);return this.options.line_config=t,this}}]),n}(x),Ht=function(t){f(n,t);var e=d(n);function n(t,r,i,a){var o;h(this,n);var s={spacing_between_lines_px:13,num_lines:6,top_text_position:1};return m.Merge(s,a),(o=e.call(this,t,r,i,s)).setAttribute("type","TabStave"),o}return b(n,[{key:"getYForGlyphs",value:function(){return this.getYForLine(2.5)}},{key:"addTabGlyph",value:function(){return this.addClef("tab"),this}}]),n}(jt),Wt=function(t){f(n,t);var e=d(n);function n(t,r){var i;if(h(this,n),(i=e.call(this,t)).setAttribute("type","TabNote"),i.ghost=!1,i.positions=t.positions,m.Merge(i.render_options,{glyph_font_scale:R.DEFAULT_TABLATURE_FONT_SCALE,draw_stem:r,draw_dots:r,draw_stem_through_stave:!1,y_shift:0,scale:1,font:"10pt Arial"}),i.glyph=R.getGlyphProps(i.duration,i.noteType),!i.glyph)throw new m.RuntimeError("BadArguments","Invalid note initialization data (No glyph found): "+JSON.stringify(t));return i.buildStem(),t.stem_direction?i.setStemDirection(t.stem_direction):i.setStemDirection(L.UP),i.ghost=!1,i.updateWidth(),l(i)}return b(n,null,[{key:"CATEGORY",get:function(){return"tabnotes"}}]),b(n,[{key:"reset",value:function(){this.stave&&this.setStave(this.stave)}},{key:"getCategory",value:function(){return n.CATEGORY}},{key:"setGhost",value:function(t){return this.ghost=t,this.updateWidth(),this}},{key:"hasStem",value:function(){return this.render_options.draw_stem}},{key:"getStemExtension",value:function(){var t=this.getGlyph();return null!=this.stem_extension_override?this.stem_extension_override:t?1===this.getStemDirection()?t.tabnote_stem_up_extension:t.tabnote_stem_down_extension:0}},{key:"addDot",value:function(){var t=new J;return this.dots+=1,this.addModifier(t,0)}},{key:"updateWidth",value:function(){var t=this;this.glyphs=[],this.width=0;for(var e=0;e-1,c=e.indexOf(1)>-1;if(!(i&&c||a&&u)){1===e.length&&e.push(e[0]);var b=[];e.forEach((function(e,i,a){var l=1===e,u=e===s,c=n.getYForLine(e-1);0!==i||l?i!==a.length-1||u||(c+=o/2-1):c-=o/2-1,b.push(c),1===r&&l?b.push(t-2):-1===r&&u&&b.push(t+2)})),l.push(b.sort((function(t,e){return t-e})))}})),l}(e,function(t,e){for(var n=[],r=[],i=1;i<=t;i++)e.indexOf(i)>-1?(n.push(r),r=[]):r.push(i);return r.length>0&&n.push(r),n}(this.stave.getNumLines(),this.positions.map((function(t){return t.str}))),this.getStave(),this.getStemDirection());n.save(),n.setLineWidth(L.WIDTH),i.forEach((function(e){0!==e.length&&(n.beginPath(),n.moveTo(t,e[0]),n.lineTo(t,e[e.length-1]),n.stroke(),n.closePath())})),n.restore()}}},{key:"drawPositions",value:function(){for(var t=this.context,e=this.getAbsoluteX(),n=this.ys,r=0;rparseInt(o,10)?n.SLIDE_DOWN:n.SLIDE_UP}return i.slide_direction=r,i.render_options.cp1=11,i.render_options.cp2=14,i.render_options.y_shift=.5,i.setFont({font:"Times",size:10,style:"bold italic"}),i.setNotes(t),l(i)}return b(n,null,[{key:"createSlideUp",value:function(t){return new n(t,n.SLIDE_UP)}},{key:"createSlideDown",value:function(t){return new n(t,n.SLIDE_DOWN)}},{key:"SLIDE_UP",get:function(){return 1}},{key:"SLIDE_DOWN",get:function(){return-1}}]),b(n,[{key:"renderTie",value:function(t){if(0===t.first_ys.length||0===t.last_ys.length)throw new m.RERR("BadArguments","No Y-values to render");var e=this.context,r=t.first_x_px,i=t.first_ys,a=t.last_x_px,o=this.slide_direction;if(o!==n.SLIDE_UP&&o!==n.SLIDE_DOWN)throw new m.RERR("BadSlide","Invalid slide direction");for(var s=0;s0&&void 0!==arguments[0]?arguments[0]:"E/5,B/4,G/4,D/4,A/3,E/3,B/2,E/2";h(this,t),this.setTuning(e)}return b(t,null,[{key:"names",get:function(){return{standard:"E/5,B/4,G/4,D/4,A/3,E/3",dagdad:"D/5,A/4,G/4,D/4,A/3,D/3",dropd:"E/5,B/4,G/4,D/4,A/3,D/3",eb:"Eb/5,Bb/4,Gb/4,Db/4,Ab/3,Db/3",standardBanjo:"D/5,B/4,G/4,D/4,G/5"}}}]),b(t,[{key:"noteToInteger",value:function(t){return R.keyProperties(t).int_value}},{key:"setTuning",value:function(e){t.names[e]&&(e=t.names[e]),this.tuningString=e,this.tuningValues=[],this.numStrings=0;var n=e.split(/\s*,\s*/);if(0===n.length)throw new m.RERR("BadArguments","Invalid tuning string: "+e);this.numStrings=n.length;for(var r=0;rthis.numStrings)throw new m.RERR("BadArguments","String number must be between 1 and ".concat(this.numStrings,":").concat(t));return this.tuningValues[e-1]}},{key:"getValueForFret",value:function(t,e){var n=this.getValueForString(e),r=parseInt(t,10);if(r<0)throw new m.RERR("BadArguments","Fret number must be 0 or higher: "+t);return n+r}},{key:"getNoteForFret",value:function(t,e){var n=this.getValueForFret(t,e),r=Math.floor(n/12),i=n%12;return R.integerToNote(i)+"/"+r}}]),t}(),Zt=function(t){f(n,t);var e=d(n);function n(t,r){var i;return h(this,n),(i=e.call(this)).setAttribute("type","StaveHairpin"),i.notes=t,i.hairpin=r,i.position=q.Position.BELOW,i.render_options={height:10,y_shift:0,left_shift_px:0,right_shift_px:0},i.setNotes(t),i}return b(n,null,[{key:"FormatByTicksAndDraw",value:function(t,e,r,i,a,o){var s=e.pixelsPerTick;if(null==s)throw new m.RuntimeError("BadArguments","A valid Formatter must be provide to draw offsets by ticks.");var l=s*o.left_shift_ticks,u=s*o.right_shift_ticks,c={height:o.height,y_shift:o.y_shift,left_shift_px:l,right_shift_px:u};new n({first_note:r.first_note,last_note:r.last_note},i).setContext(t).setRenderOptions(c).setPosition(a).draw()}},{key:"type",get:function(){return{CRESC:1,DECRESC:2}}}]),b(n,[{key:"setPosition",value:function(t){return t!==q.Position.ABOVE&&t!==q.Position.BELOW||(this.position=t),this}},{key:"setRenderOptions",value:function(t){return null!=t.height&&null!=t.y_shift&&null!=t.left_shift_px&&null!=t.right_shift_px&&(this.render_options=t),this}},{key:"setNotes",value:function(t){if(!t.first_note&&!t.last_note)throw new m.RuntimeError("BadArguments","Hairpin needs to have either first_note or last_note set.");return this.first_note=t.first_note,this.last_note=t.last_note,this}},{key:"renderHairpin",value:function(t){var e=this.checkContext(),r=this.render_options.y_shift+20,i=t.first_y;this.position===q.Position.ABOVE&&(r=30-r,i=t.first_y-t.staff_height);var a=this.render_options.left_shift_px,o=this.render_options.right_shift_px;switch(e.beginPath(),this.hairpin){case n.type.CRESC:e.moveTo(t.last_x+o,i+r),e.lineTo(t.first_x+a,i+this.render_options.height/2+r),e.lineTo(t.last_x+o,i+this.render_options.height+r);break;case n.type.DECRESC:e.moveTo(t.first_x+a,i+r),e.lineTo(t.last_x+o,i+this.render_options.height/2+r),e.lineTo(t.first_x+a,i+this.render_options.height+r)}e.stroke(),e.closePath()}},{key:"draw",value:function(){this.checkContext(),this.setRendered();var t=this.first_note,e=this.last_note,n=t.getModifierStartXY(this.position,0),r=e.getModifierStartXY(this.position,0);return this.renderHairpin({first_x:n.x,last_x:r.x,first_y:t.getStave().y+t.getStave().height,last_y:e.getStave().y+e.getStave().height,staff_height:t.getStave().height}),!0}}]),n}(x),te=function(t){f(n,t);var e=d(n);function n(t,r,i){var a;return h(this,n),(a=e.call(this)).setAttribute("type","Curve"),a.render_options={spacing:2,thickness:2,x_shift:0,y_shift:10,position:n.Position.NEAR_HEAD,position_end:n.Position.NEAR_HEAD,invert:!1,cps:[{x:0,y:10},{x:0,y:10}]},m.Merge(a.render_options,i),a.setNotes(t,r),a}return b(n,null,[{key:"Position",get:function(){return{NEAR_HEAD:1,NEAR_TOP:2}}},{key:"PositionString",get:function(){return{nearHead:n.Position.NEAR_HEAD,nearTop:n.Position.NEAR_TOP}}}]),b(n,[{key:"setNotes",value:function(t,e){if(!t&&!e)throw new m.RuntimeError("BadArguments","Curve needs to have either first_note or last_note set.");return this.from=t,this.to=e,this}},{key:"isPartial",value:function(){return!this.from||!this.to}},{key:"renderCurve",value:function(t){var e=this.context,n=this.render_options.cps,r=this.render_options.x_shift,i=this.render_options.y_shift*t.direction,a=t.first_x+r,o=t.first_y+i,s=t.last_x-r,l=t.last_y+i,u=this.render_options.thickness,c=(s-a)/(n.length+2);e.beginPath(),e.moveTo(a,o),e.bezierCurveTo(a+c+n[0].x,o+n[0].y*t.direction,s-c+n[1].x,l+n[1].y*t.direction,s,l),e.bezierCurveTo(s-c+n[1].x,l+(n[1].y+u)*t.direction,a+c+n[0].x,o+(n[0].y+u)*t.direction,a,o),e.stroke(),e.closePath(),e.fill()}},{key:"draw",value:function(){this.checkContext(),this.setRendered();var t,e,r,i,a,o=this.from,s=this.to,l="baseY",u="baseY";function c(t){return"string"==typeof t?n.PositionString[t]:t}var b=c(this.render_options.position),h=c(this.render_options.position_end);return b===n.Position.NEAR_TOP&&(l="topY",u="topY"),h===n.Position.NEAR_HEAD?u="baseY":h===n.Position.NEAR_TOP&&(u="topY"),o?(t=o.getTieRightX(),a=o.getStemDirection(),r=o.getStemExtents()[l]):(t=s.getStave().getTieStartX(),r=s.getStemExtents()[l]),s?(e=s.getTieLeftX(),a=s.getStemDirection(),i=s.getStemExtents()[u]):(e=o.getStave().getTieEndX(),i=o.getStemExtents()[u]),this.renderCurve({first_x:t,last_x:e,first_y:r,last_y:i,direction:a*(!0===this.render_options.invert?-1:1)}),!0}}]),n}(x);function ee(){for(var t=arguments.length,e=new Array(t),n=0;ni.y;r.x+=a.getMetrics().modRightPx+s.padding_left,i.x-=o.getMetrics().modLeftPx+s.padding_right;var b=a.getGlyph().getWidth();a.getKeyProps()[n].displaced&&1===a.getStemDirection()&&(r.x+=b+s.padding_left),o.getKeyProps()[u].displaced&&-1===o.getStemDirection()&&(i.x-=b+s.padding_right),r.y+=c?-3:1,i.y+=c?2:0,function(t,e,n,r){var i,a,o,s,l=r.draw_start_arrow&&r.draw_end_arrow,u=e.x,c=e.y,b=n.x,h=n.y,f=Math.sqrt((b-u)*(b-u)+(h-c)*(h-c)),d=(f-r.arrowhead_length/3)/f;r.draw_end_arrow||l?(i=Math.round(u+(b-u)*d),a=Math.round(c+(h-c)*d)):(i=b,a=h),r.draw_start_arrow||l?(o=u+(b-u)*(1-d),s=c+(h-c)*(1-d)):(o=u,s=c),r.color&&(t.setStrokeStyle(r.color),t.setFillStyle(r.color)),t.beginPath(),t.moveTo(o,s),t.lineTo(i,a),t.stroke(),t.closePath();var p,m,v,y,g=Math.atan2(h-c,b-u),_=Math.abs(r.arrowhead_length/Math.cos(r.arrowhead_angle));(r.draw_end_arrow||l)&&(p=g+Math.PI+r.arrowhead_angle,v=b+Math.cos(p)*_,y=h+Math.sin(p)*_,m=g+Math.PI-r.arrowhead_angle,re(t,v,y,b,h,b+Math.cos(m)*_,h+Math.sin(m)*_)),(r.draw_start_arrow||l)&&(p=g+r.arrowhead_angle,v=u+Math.cos(p)*_,y=c+Math.sin(p)*_,m=g-r.arrowhead_angle,re(t,v,y,u,c,u+Math.cos(m)*_,c+Math.sin(m)*_))}(e,r,i,t.render_options)})),e.restore();var l,u=e.measureText(this.text).width,c=s.text_justification,b=0;c===n.TextJustification.LEFT?b=r.x:c===n.TextJustification.CENTER?b=(i.x-r.x)/2+r.x-u/2:c===n.TextJustification.RIGHT&&(b=i.x-u);var h=s.text_position_vertical;return h===n.TextVerticalPosition.TOP?l=a.getStave().getYForTopText():h===n.TextVerticalPosition.BOTTOM&&(l=a.getStave().getYForBottomText(R.TEXT_HEIGHT_OFFSET_HACK)),e.save(),this.applyFontStyle(),e.fillText(this.text,b,l),e.restore(),this}}]),n}(x);function ae(t,e,n,r,i){var a=oe.GLYPHS[t];new T(a.code,i,{category:"pedalMarking"}).render(e,n+a.x_shift,r+a.y_shift)}var oe=function(t){f(n,t);var e=d(n);function n(t){var r;return h(this,n),(r=e.call(this)).setAttribute("type","PedalMarking"),r.notes=t,r.style=n.TEXT,r.line=0,r.custom_depress_text="",r.custom_release_text="",r.font={family:"Times New Roman",size:12,weight:"italic bold"},r.render_options={bracket_height:10,text_margin_right:6,bracket_line_width:1,color:"black"},r}return b(n,null,[{key:"createSustain",value:function(t){return new n(t)}},{key:"createSostenuto",value:function(t){var e=new n(t);return e.setStyle(n.Styles.MIXED),e.setCustomText("Sost. Ped."),e}},{key:"createUnaCorda",value:function(t){var e=new n(t);return e.setStyle(n.Styles.TEXT),e.setCustomText("una corda","tre corda"),e}},{key:"GLYPHS",get:function(){return{pedal_depress:{code:"keyboardPedalPed",x_shift:-10,y_shift:0},pedal_release:{code:"keyboardPedalUp",x_shift:-2,y_shift:3}}}},{key:"Styles",get:function(){return{TEXT:1,BRACKET:2,MIXED:3}}},{key:"StylesString",get:function(){return{text:n.Styles.TEXT,bracket:n.Styles.BRACKET,mixed:n.Styles.MIXED}}}]),b(n,[{key:"setCustomText",value:function(t,e){return this.custom_depress_text=t||"",this.custom_release_text=e||"",this}},{key:"setStyle",value:function(t){if(t<1&&t>3)throw new m.RERR("InvalidParameter","The style must be one found in PedalMarking.Styles");return this.style=t,this}},{key:"setLine",value:function(t){return this.line=t,this}},{key:"drawBracketed",value:function(){var t,e,r=this,i=this.context,a=!1,o=this;this.notes.forEach((function(s,l,u){a=!a;var c=s.getAbsoluteX(),b=s.getStave().getYForBottomText(o.line+3);if(c0&&void 0!==arguments[0]?arguments[0]:Mt.type.SINGLE;h(this,n),(i=e.call(this,{duration:"b"})).setAttribute("type","BarNote"),i.metrics={widths:{}};var o=Mt.type;return i.metrics.widths=(r(t={},o.SINGLE,8),r(t,o.DOUBLE,12),r(t,o.END,15),r(t,o.REPEAT_BEGIN,14),r(t,o.REPEAT_END,14),r(t,o.REPEAT_BOTH,18),r(t,o.NONE,0),t),i.ignore_ticks=!0,i.setType(a),i}return b(n,[{key:"getType",value:function(){return this.type}},{key:"setType",value:function(t){return this.type="string"==typeof t?Mt.typeString[t]:t,this.setWidth(this.metrics.widths[this.type]),this}},{key:"getBoundingBox",value:function(){return i(a(n.prototype),"getBoundingBox",this).call(this)}},{key:"addToModifierContext",value:function(){return this}},{key:"preFormat",value:function(){return this.setPreFormatted(!0),this}},{key:"draw",value:function(){if(this.checkContext(),!this.stave)throw new m.RERR("NoStave","Can't draw without a stave.");!function(){for(var t=arguments.length,e=new Array(t),r=0;r1&&void 0!==arguments[1]&&arguments[1]?new RegExp("^(("+t+"))"):new RegExp("^(("+t+")\\s*)"),n=this.line.slice(this.pos).match(e);return null!==n?{success:!0,matchedString:n[2],incrementPos:n[1].length,pos:this.pos}:{success:!1,pos:this.pos}}},{key:"expectOne",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=[],r=this.pos,i=!0,a=!1;e=!0===e||!0===t.maybe;for(var o=0;o1&&void 0!==arguments[1]&&arguments[1],n=[],r=this.pos,i=0,a=!0;do{var o=this.expectOne(t);o.success?(i++,n.push(o.results)):a=!1}while(a);var s=i>0||!0===e;return!e||i>0||(this.pos=r),s?this.matchSuccess():this.matchFail(r),{success:s,results:n,numMatches:i}}},{key:"expectZeroOrMore",value:function(t){return this.expectOneOrMore(t,!0)}},{key:"expect",value:function(e){var n;if(function(){for(var e=arguments.length,n=new Array(e),r=0;r0&&void 0!==arguments[0]?arguments[0]:{};this.options={stem:"auto",clef:"treble"},this.elements={notes:[],accidentals:[]},this.rollingDuration="8",this.resetPiece(),Object.assign(this.options,t)}},{key:"getFactory",value:function(){return this.factory}},{key:"getElements",value:function(){return this.elements}},{key:"addCommitHook",value:function(t){this.commitHooks.push(t)}},{key:"resetPiece",value:function(){ve("resetPiece"),this.piece={chord:[],duration:this.rollingDuration,dots:0,type:void 0,options:{}}}},{key:"setNoteDots",value:function(t){ve("setNoteDots:",t),t&&(this.piece.dots=t.length)}},{key:"setNoteDuration",value:function(t){ve("setNoteDuration:",t),this.rollingDuration=this.piece.duration=t||this.rollingDuration}},{key:"setNoteType",value:function(t){ve("setNoteType:",t),t&&(this.piece.type=t)}},{key:"addNoteOption",value:function(t,e){ve("addNoteOption: key:",t,"value:",e),this.piece.options[t]=e}},{key:"addNote",value:function(t,e,n){ve("addNote:",t,e,n),this.piece.chord.push({key:t,accid:e,octave:n})}},{key:"addSingleNote",value:function(t,e,n){ve("addSingleNote:",t,e,n),this.addNote(t,e,n)}},{key:"addChord",value:function(t){var e=this;ve("startChord"),"object"!=typeof t[0]?this.addSingleNote(t[0]):t.forEach((function(t){t&&e.addNote.apply(e,o(t))})),ve("endChord")}},{key:"commitPiece",value:function(){var t=this;ve("commitPiece");var e=this.factory;if(e){var n=c(c({},this.options),this.piece.options),r=n.stem,i=n.clef,a="auto"===r.toLowerCase(),o=a||"up"!==r.toLowerCase()?Z.STEM_DOWN:Z.STEM_UP,s=this.piece,l=s.chord,u=s.duration,b=s.dots,h=s.type,f=l.map((function(t){return t.key+"/"+t.octave})),d=e.StaveNote({keys:f,duration:u,dots:b,type:h,clef:i,auto_stem:a});a||d.setStemDirection(o);var p=l.map((function(t){return t.accid||null}));p.forEach((function(t,n){t&&d.addAccidental(n,e.Accidental({type:t}))}));for(var m=0;m0&&void 0!==arguments[0]?arguments[0]:{};h(this,t),this.setOptions(e),this.defaults={clef:"treble",time:"4/4",stem:"auto"}}return b(t,[{key:"set",value:function(t){return Object.assign(this.defaults,t),this}},{key:"setOptions",value:function(t){var e=this;return this.options=c({factory:null,builder:null,commitHooks:[xe,ke,yt.easyScoreHook],throwOnError:!1},t),this.factory=this.options.factory,this.builder=this.options.builder||new _e(this.factory),this.grammar=new ge(this.builder),this.parser=new me(this.grammar),this.options.commitHooks.forEach((function(t){return e.addCommitHook(t)})),this}},{key:"setContext",value:function(t){return this.factory&&this.factory.setContext(t),this}},{key:"parse",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};this.builder.reset(e);var n=this.parser.parse(t);if(!n.success&&this.options.throwOnError)throw new ye("Error parsing line: "+t,n);return n}},{key:"beam",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.factory.Beam({notes:t,options:e}),t}},{key:"tuplet",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return this.factory.Tuplet({notes:t,options:e}),t}},{key:"notes",value:function(t){var e=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return e=c({clef:this.defaults.clef,stem:this.defaults.stem},e),this.parse(t,e),this.builder.getElements().notes}},{key:"voice",value:function(t,e){return e=c({time:this.defaults.time},e),this.factory.Voice(e).addTickables(t)}},{key:"addCommitHook",value:function(t){return this.builder.addCommitHook(t)}}]),t}(),Se=m.MakeException("FactoryError");function Te(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=arguments.length>1?arguments[1]:void 0,n=e.options;return(t=Object.assign(e,t)).options=Object.assign(n,t.options),t}var Ee=function(){function t(e){h(this,t),function(){for(var e=arguments.length,n=new Array(e),r=0;r0&&void 0!==arguments[0]?arguments[0]:{};t.factory=this;var e=new Ce(t).setContext(this.context);return this.systems.push(e),e}},{key:"EasyScore",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return t.factory=this,new we(t)}},{key:"PedalMarking",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t=Te(t,{notes:[],options:{style:"mixed"}});var e=new oe(t.notes);return e.setStyle(oe.StylesString[t.options.style]),e.setContext(this.context),this.renderQ.push(e),e}},{key:"NoteSubGroup",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};t=Te(t,{notes:[],options:{}});var e=new at(t.notes);return e.setContext(this.context),e}},{key:"draw",value:function(){var t=this;this.systems.forEach((function(e){return e.setContext(t.context).format()})),this.staves.forEach((function(e){return e.setContext(t.context).draw()})),this.voices.forEach((function(e){return e.setContext(t.context).draw()})),this.renderQ.forEach((function(e){e.isRendered()||e.setContext(t.context).draw()})),this.systems.forEach((function(e){return e.setContext(t.context).draw()})),this.reset()}}],[{key:"newFromElementId",value:function(e){return new t({renderer:{elementId:e,width:arguments.length>1&&void 0!==arguments[1]?arguments[1]:500,height:arguments.length>2&&void 0!==arguments[2]?arguments[2]:200}})}}]),t}(),Ce=function(t){f(n,t);var e=d(n);function n(){var t,r=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return h(this,n),(t=e.call(this)).setAttribute("type","System"),t.setOptions(r),t.parts=[],t}return b(n,[{key:"setOptions",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this.options=c(c({x:10,y:10,width:500,connector:null,spaceBetweenStaves:12,factory:null,noJustification:!1,debugFormatter:!1,formatIterations:0,noPadding:!1},t),{},{details:c({alpha:.5},t.details)}),this.factory=this.options.factory||new Ee({renderer:{el:null}})}},{key:"setContext",value:function(t){return i(a(n.prototype),"setContext",this).call(this,t),this.factory.setContext(t),this}},{key:"addConnector",value:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"double";return this.connector=this.factory.StaveConnector({top_stave:this.parts[0].stave,bottom_stave:this.parts[this.parts.length-1].stave,type:t}),this.connector}},{key:"addStave",value:function(t){var e=this;return(t=c(c({stave:null,voices:[],spaceAbove:0,spaceBelow:0,debugNoteMetrics:!1},t),{},{options:c({left_bar:!1},t.options)})).stave||(t.stave=this.factory.Stave({x:this.options.x,y:this.options.y,width:this.options.width,options:t.options})),t.voices.forEach((function(n){return n.setContext(e.context).setStave(t.stave).getTickables().forEach((function(e){return e.setStave(t.stave)}))})),this.parts.push(t),t.stave}},{key:"format",value:function(){var t=this,e=new Rt(c({},this.options.details));this.formatter=e;var n=this.options.y,r=0,i=[],a=[];this.parts.forEach((function(o){n+=o.stave.space(o.spaceAbove),o.stave.setY(n),e.joinVoices(o.voices),n+=o.stave.space(o.spaceBelow),n+=o.stave.space(t.options.spaceBetweenStaves),o.debugNoteMetrics&&(a.push({y:n,voice:o.voices[0]}),n+=15),i=i.concat(o.voices),r=Math.max(r,o.stave.getNoteStartX())})),this.parts.forEach((function(t){return t.stave.setNoteStartX(r)}));var o=this.options.noPadding?this.options.width-this.options.x:this.options.width-(r-this.options.x)-this.musicFont.lookupMetric("stave.padding");e.format(i,this.options.noJustification?0:o);for(var s=0;s"']/g,B=RegExp(N.source),z=RegExp(L.source),U=/<%-([\s\S]+?)%>/g,j=/<%([\s\S]+?)%>/g,H=/<%=([\s\S]+?)%>/g,W=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,Y=/^\w*$/,G=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,V=/[\\^$.*+?()[\]{}|]/g,X=RegExp(V.source),K=/^\s+|\s+$/g,$=/^\s+/,q=/\s+$/,J=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Q=/\{\n\/\* \[wrapped with (.+)\] \*/,Z=/,? & /,tt=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,et=/\\(\\)?/g,nt=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,rt=/\w*$/,it=/^[-+]0x[0-9a-f]+$/i,at=/^0b[01]+$/i,ot=/^\[object .+?Constructor\]$/,st=/^0o[0-7]+$/i,lt=/^(?:0|[1-9]\d*)$/,ut=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,ct=/($^)/,bt=/['\n\r\u2028\u2029\\]/g,ht="\\u0300-\\u036f\\ufe20-\\ufe2f\\u20d0-\\u20ff",ft="\\xac\\xb1\\xd7\\xf7\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf\\u2000-\\u206f \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",dt="[\\ud800-\\udfff]",pt="["+ft+"]",mt="["+ht+"]",vt="\\d+",yt="[\\u2700-\\u27bf]",gt="[a-z\\xdf-\\xf6\\xf8-\\xff]",_t="[^\\ud800-\\udfff"+ft+vt+"\\u2700-\\u27bfa-z\\xdf-\\xf6\\xf8-\\xffA-Z\\xc0-\\xd6\\xd8-\\xde]",xt="\\ud83c[\\udffb-\\udfff]",kt="[^\\ud800-\\udfff]",wt="(?:\\ud83c[\\udde6-\\uddff]){2}",St="[\\ud800-\\udbff][\\udc00-\\udfff]",Tt="[A-Z\\xc0-\\xd6\\xd8-\\xde]",Et="(?:"+gt+"|"+_t+")",Ct="(?:"+Tt+"|"+_t+")",At="(?:"+mt+"|"+xt+")?",Rt="[\\ufe0e\\ufe0f]?"+At+"(?:\\u200d(?:"+[kt,wt,St].join("|")+")[\\ufe0e\\ufe0f]?"+At+")*",Ft="(?:"+[yt,wt,St].join("|")+")"+Rt,Mt="(?:"+[kt+mt+"?",mt,wt,St,dt].join("|")+")",Pt=RegExp("['\u2019]","g"),Ot=RegExp(mt,"g"),Dt=RegExp(xt+"(?="+xt+")|"+Mt+Rt,"g"),It=RegExp([Tt+"?"+gt+"+(?:['\u2019](?:d|ll|m|re|s|t|ve))?(?="+[pt,Tt,"$"].join("|")+")",Ct+"+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?(?="+[pt,Tt+Et,"$"].join("|")+")",Tt+"?"+Et+"+(?:['\u2019](?:d|ll|m|re|s|t|ve))?",Tt+"+(?:['\u2019](?:D|LL|M|RE|S|T|VE))?","\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])","\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",vt,Ft].join("|"),"g"),Nt=RegExp("[\\u200d\\ud800-\\udfff"+ht+"\\ufe0e\\ufe0f]"),Lt=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,Bt=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],zt=-1,Ut={};Ut[T]=Ut[E]=Ut[C]=Ut[A]=Ut[R]=Ut[F]=Ut["[object Uint8ClampedArray]"]=Ut[M]=Ut[P]=!0,Ut[l]=Ut[u]=Ut[w]=Ut[c]=Ut[S]=Ut[b]=Ut[h]=Ut[f]=Ut[p]=Ut[m]=Ut[v]=Ut[y]=Ut[g]=Ut[_]=Ut[k]=!1;var jt={};jt[l]=jt[u]=jt[w]=jt[S]=jt[c]=jt[b]=jt[T]=jt[E]=jt[C]=jt[A]=jt[R]=jt[p]=jt[m]=jt[v]=jt[y]=jt[g]=jt[_]=jt[x]=jt[F]=jt["[object Uint8ClampedArray]"]=jt[M]=jt[P]=!0,jt[h]=jt[f]=jt[k]=!1;var Ht={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},Wt=parseFloat,Yt=parseInt,Gt="object"==typeof t&&t&&t.Object===Object&&t,Vt="object"==typeof self&&self&&self.Object===Object&&self,Xt=Gt||Vt||Function("return this")(),Kt=e&&!e.nodeType&&e,$t=Kt&&"object"==typeof r&&r&&!r.nodeType&&r,qt=$t&&$t.exports===Kt,Jt=qt&&Gt.process,Qt=function(){try{return $t&&$t.require&&$t.require("util").types||Jt&&Jt.binding&&Jt.binding("util")}catch(t){}}(),Zt=Qt&&Qt.isArrayBuffer,te=Qt&&Qt.isDate,ee=Qt&&Qt.isMap,ne=Qt&&Qt.isRegExp,re=Qt&&Qt.isSet,ie=Qt&&Qt.isTypedArray;function ae(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)}function oe(t,e,n,r){for(var i=-1,a=null==t?0:t.length;++i-1}function he(t,e,n){for(var r=-1,i=null==t?0:t.length;++r-1;);return n}function De(t,e){for(var n=t.length;n--&&xe(e,t[n],0)>-1;);return n}function Ie(t,e){for(var n=t.length,r=0;n--;)t[n]===e&&++r;return r}var Ne=Ee({"\xc0":"A","\xc1":"A","\xc2":"A","\xc3":"A","\xc4":"A","\xc5":"A","\xe0":"a","\xe1":"a","\xe2":"a","\xe3":"a","\xe4":"a","\xe5":"a","\xc7":"C","\xe7":"c","\xd0":"D","\xf0":"d","\xc8":"E","\xc9":"E","\xca":"E","\xcb":"E","\xe8":"e","\xe9":"e","\xea":"e","\xeb":"e","\xcc":"I","\xcd":"I","\xce":"I","\xcf":"I","\xec":"i","\xed":"i","\xee":"i","\xef":"i","\xd1":"N","\xf1":"n","\xd2":"O","\xd3":"O","\xd4":"O","\xd5":"O","\xd6":"O","\xd8":"O","\xf2":"o","\xf3":"o","\xf4":"o","\xf5":"o","\xf6":"o","\xf8":"o","\xd9":"U","\xda":"U","\xdb":"U","\xdc":"U","\xf9":"u","\xfa":"u","\xfb":"u","\xfc":"u","\xdd":"Y","\xfd":"y","\xff":"y","\xc6":"Ae","\xe6":"ae","\xde":"Th","\xfe":"th","\xdf":"ss","\u0100":"A","\u0102":"A","\u0104":"A","\u0101":"a","\u0103":"a","\u0105":"a","\u0106":"C","\u0108":"C","\u010a":"C","\u010c":"C","\u0107":"c","\u0109":"c","\u010b":"c","\u010d":"c","\u010e":"D","\u0110":"D","\u010f":"d","\u0111":"d","\u0112":"E","\u0114":"E","\u0116":"E","\u0118":"E","\u011a":"E","\u0113":"e","\u0115":"e","\u0117":"e","\u0119":"e","\u011b":"e","\u011c":"G","\u011e":"G","\u0120":"G","\u0122":"G","\u011d":"g","\u011f":"g","\u0121":"g","\u0123":"g","\u0124":"H","\u0126":"H","\u0125":"h","\u0127":"h","\u0128":"I","\u012a":"I","\u012c":"I","\u012e":"I","\u0130":"I","\u0129":"i","\u012b":"i","\u012d":"i","\u012f":"i","\u0131":"i","\u0134":"J","\u0135":"j","\u0136":"K","\u0137":"k","\u0138":"k","\u0139":"L","\u013b":"L","\u013d":"L","\u013f":"L","\u0141":"L","\u013a":"l","\u013c":"l","\u013e":"l","\u0140":"l","\u0142":"l","\u0143":"N","\u0145":"N","\u0147":"N","\u014a":"N","\u0144":"n","\u0146":"n","\u0148":"n","\u014b":"n","\u014c":"O","\u014e":"O","\u0150":"O","\u014d":"o","\u014f":"o","\u0151":"o","\u0154":"R","\u0156":"R","\u0158":"R","\u0155":"r","\u0157":"r","\u0159":"r","\u015a":"S","\u015c":"S","\u015e":"S","\u0160":"S","\u015b":"s","\u015d":"s","\u015f":"s","\u0161":"s","\u0162":"T","\u0164":"T","\u0166":"T","\u0163":"t","\u0165":"t","\u0167":"t","\u0168":"U","\u016a":"U","\u016c":"U","\u016e":"U","\u0170":"U","\u0172":"U","\u0169":"u","\u016b":"u","\u016d":"u","\u016f":"u","\u0171":"u","\u0173":"u","\u0174":"W","\u0175":"w","\u0176":"Y","\u0177":"y","\u0178":"Y","\u0179":"Z","\u017b":"Z","\u017d":"Z","\u017a":"z","\u017c":"z","\u017e":"z","\u0132":"IJ","\u0133":"ij","\u0152":"Oe","\u0153":"oe","\u0149":"'n","\u017f":"s"}),Le=Ee({"&":"&","<":"<",">":">",'"':""","'":"'"});function Be(t){return"\\"+Ht[t]}function ze(t){return Nt.test(t)}function Ue(t){var e=-1,n=Array(t.size);return t.forEach((function(t,r){n[++e]=[r,t]})),n}function je(t,e){return function(n){return t(e(n))}}function He(t,e){for(var n=-1,r=t.length,i=0,a=[];++n",""":'"',"'":"'"}),Ke=function t(e){var n,r=(e=null==e?Xt:Ke.defaults(Xt.Object(),e,Ke.pick(Xt,Bt))).Array,i=e.Date,ht=e.Error,ft=e.Function,dt=e.Math,pt=e.Object,mt=e.RegExp,vt=e.String,yt=e.TypeError,gt=r.prototype,_t=ft.prototype,xt=pt.prototype,kt=e["__core-js_shared__"],wt=_t.toString,St=xt.hasOwnProperty,Tt=0,Et=(n=/[^.]+$/.exec(kt&&kt.keys&&kt.keys.IE_PROTO||""))?"Symbol(src)_1."+n:"",Ct=xt.toString,At=wt.call(pt),Rt=Xt._,Ft=mt("^"+wt.call(St).replace(V,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Mt=qt?e.Buffer:void 0,Dt=e.Symbol,Nt=e.Uint8Array,Ht=Mt?Mt.allocUnsafe:void 0,Gt=je(pt.getPrototypeOf,pt),Vt=pt.create,Kt=xt.propertyIsEnumerable,$t=gt.splice,Jt=Dt?Dt.isConcatSpreadable:void 0,Qt=Dt?Dt.iterator:void 0,ye=Dt?Dt.toStringTag:void 0,Ee=function(){try{var t=Zi(pt,"defineProperty");return t({},"",{}),t}catch(t){}}(),$e=e.clearTimeout!==Xt.clearTimeout&&e.clearTimeout,qe=i&&i.now!==Xt.Date.now&&i.now,Je=e.setTimeout!==Xt.setTimeout&&e.setTimeout,Qe=dt.ceil,Ze=dt.floor,tn=pt.getOwnPropertySymbols,en=Mt?Mt.isBuffer:void 0,nn=e.isFinite,rn=gt.join,an=je(pt.keys,pt),on=dt.max,sn=dt.min,ln=i.now,un=e.parseInt,cn=dt.random,bn=gt.reverse,hn=Zi(e,"DataView"),fn=Zi(e,"Map"),dn=Zi(e,"Promise"),pn=Zi(e,"Set"),mn=Zi(e,"WeakMap"),vn=Zi(pt,"create"),yn=mn&&new mn,gn={},_n=Ea(hn),xn=Ea(fn),kn=Ea(dn),wn=Ea(pn),Sn=Ea(mn),Tn=Dt?Dt.prototype:void 0,En=Tn?Tn.valueOf:void 0,Cn=Tn?Tn.toString:void 0;function An(t){if(Yo(t)&&!Oo(t)&&!(t instanceof Pn)){if(t instanceof Mn)return t;if(St.call(t,"__wrapped__"))return Ca(t)}return new Mn(t)}var Rn=function(){function t(){}return function(e){if(!Wo(e))return{};if(Vt)return Vt(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();function Fn(){}function Mn(t,e){this.__wrapped__=t,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=void 0}function Pn(t){this.__wrapped__=t,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=4294967295,this.__views__=[]}function On(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e=e?t:e)),t}function qn(t,e,n,r,i,a){var o,s=1&e,u=2&e,h=4&e;if(n&&(o=i?n(t,r,i,a):n(t)),void 0!==o)return o;if(!Wo(t))return t;var k=Oo(t);if(k){if(o=function(t){var e=t.length,n=new t.constructor(e);return e&&"string"==typeof t[0]&&St.call(t,"index")&&(n.index=t.index,n.input=t.input),n}(t),!s)return vi(t,o)}else{var O=na(t),D=O==f||O==d;if(Lo(t))return bi(t,s);if(O==v||O==l||D&&!i){if(o=u||D?{}:ia(t),!s)return u?function(t,e){return yi(t,ea(t),e)}(t,function(t,e){return t&&yi(e,xs(e),t)}(o,t)):function(t,e){return yi(t,ta(t),e)}(t,Vn(o,t))}else{if(!jt[O])return i?t:{};o=function(t,e,n){var r,i=t.constructor;switch(e){case w:return hi(t);case c:case b:return new i(+t);case S:return function(t,e){var n=e?hi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.byteLength)}(t,n);case T:case E:case C:case A:case R:case F:case"[object Uint8ClampedArray]":case M:case P:return fi(t,n);case p:return new i;case m:case _:return new i(t);case y:return function(t){var e=new t.constructor(t.source,rt.exec(t));return e.lastIndex=t.lastIndex,e}(t);case g:return new i;case x:return r=t,En?pt(En.call(r)):{}}}(t,O,s)}}a||(a=new Ln);var I=a.get(t);if(I)return I;a.set(t,o),$o(t)?t.forEach((function(r){o.add(qn(r,e,n,r,t,a))})):Go(t)&&t.forEach((function(r,i){o.set(i,qn(r,e,n,i,t,a))}));var N=k?void 0:(h?u?Vi:Gi:u?xs:_s)(t);return se(N||t,(function(r,i){N&&(r=t[i=r]),Wn(o,i,qn(r,e,n,i,t,a))})),o}function Jn(t,e,n){var r=n.length;if(null==t)return!r;for(t=pt(t);r--;){var i=n[r],a=e[i],o=t[i];if(void 0===o&&!(i in t)||!a(o))return!1}return!0}function Qn(t,e,n){if("function"!=typeof t)throw new yt(a);return ga((function(){t.apply(void 0,n)}),e)}function Zn(t,e,n,r){var i=-1,a=be,o=!0,s=t.length,l=[],u=e.length;if(!s)return l;n&&(e=fe(e,Fe(n))),r?(a=he,o=!1):e.length>=200&&(a=Pe,o=!1,e=new Nn(e));t:for(;++i-1},Dn.prototype.set=function(t,e){var n=this.__data__,r=Yn(n,t);return r<0?(++this.size,n.push([t,e])):n[r][1]=e,this},In.prototype.clear=function(){this.size=0,this.__data__={hash:new On,map:new(fn||Dn),string:new On}},In.prototype.delete=function(t){var e=Ji(this,t).delete(t);return this.size-=e?1:0,e},In.prototype.get=function(t){return Ji(this,t).get(t)},In.prototype.has=function(t){return Ji(this,t).has(t)},In.prototype.set=function(t,e){var n=Ji(this,t),r=n.size;return n.set(t,e),this.size+=n.size==r?0:1,this},Nn.prototype.add=Nn.prototype.push=function(t){return this.__data__.set(t,"__lodash_hash_undefined__"),this},Nn.prototype.has=function(t){return this.__data__.has(t)},Ln.prototype.clear=function(){this.__data__=new Dn,this.size=0},Ln.prototype.delete=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n},Ln.prototype.get=function(t){return this.__data__.get(t)},Ln.prototype.has=function(t){return this.__data__.has(t)},Ln.prototype.set=function(t,e){var n=this.__data__;if(n instanceof Dn){var r=n.__data__;if(!fn||r.length<199)return r.push([t,e]),this.size=++n.size,this;n=this.__data__=new In(r)}return n.set(t,e),this.size=n.size,this};var tr=xi(lr),er=xi(ur,!0);function nr(t,e){var n=!0;return tr(t,(function(t,r,i){return n=!!e(t,r,i)})),n}function rr(t,e,n){for(var r=-1,i=t.length;++r0&&n(s)?e>1?ar(s,e-1,n,r,i):de(i,s):r||(i[i.length]=s)}return i}var or=ki(),sr=ki(!0);function lr(t,e){return t&&or(t,e,_s)}function ur(t,e){return t&&sr(t,e,_s)}function cr(t,e){return ce(e,(function(e){return Uo(t[e])}))}function br(t,e){for(var n=0,r=(e=si(e,t)).length;null!=t&&ne}function pr(t,e){return null!=t&&St.call(t,e)}function mr(t,e){return null!=t&&e in pt(t)}function vr(t,e,n){for(var i=n?he:be,a=t[0].length,o=t.length,s=o,l=r(o),u=1/0,c=[];s--;){var b=t[s];s&&e&&(b=fe(b,Fe(e))),u=sn(b.length,u),l[s]=!n&&(e||a>=120&&b.length>=120)?new Nn(s&&b):void 0}b=t[0];var h=-1,f=l[0];t:for(;++h=s?l:l*("desc"==n[r]?-1:1)}return t.index-e.index}(t,e,n)}))}function Or(t,e,n){for(var r=-1,i=e.length,a={};++r-1;)s!==t&&$t.call(s,l,1),$t.call(t,l,1);return t}function Ir(t,e){for(var n=t?e.length:0,r=n-1;n--;){var i=e[n];if(n==r||i!==a){var a=i;oa(i)?$t.call(t,i,1):Zr(t,i)}}return t}function Nr(t,e){return t+Ze(cn()*(e-t+1))}function Lr(t,e){var n="";if(!t||e<1||e>9007199254740991)return n;do{e%2&&(n+=t),(e=Ze(e/2))&&(t+=t)}while(e);return n}function Br(t,e){return _a(da(t,e,Vs),t+"")}function zr(t){return zn(Rs(t))}function Ur(t,e){var n=Rs(t);return wa(n,$n(e,0,n.length))}function jr(t,e,n,r){if(!Wo(t))return t;for(var i=-1,a=(e=si(e,t)).length,o=a-1,s=t;null!=s&&++ia?0:a+e),(n=n>a?a:n)<0&&(n+=a),a=e>n?0:n-e>>>0,e>>>=0;for(var o=r(a);++i >>1,o=t[a];null!==o&&!Jo(o)&&(n?o<=e:o=200){var u=e?null:Li(t);if(u)return We(u);o=!1,i=Pe,l=new Nn}else l=e?[]:s;t:for(;++r=r?t:Gr(t,e,n)}var ci=$e||function(t){return Xt.clearTimeout(t)};function bi(t,e){if(e)return t.slice();var n=t.length,r=Ht?Ht(n):new t.constructor(n);return t.copy(r),r}function hi(t){var e=new t.constructor(t.byteLength);return new Nt(e).set(new Nt(t)),e}function fi(t,e){var n=e?hi(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)}function di(t,e){if(t!==e){var n=void 0!==t,r=null===t,i=t==t,a=Jo(t),o=void 0!==e,s=null===e,l=e==e,u=Jo(e);if(!s&&!u&&!a&&t>e||a&&o&&l&&!s&&!u||r&&o&&l||!n&&l||!i)return 1;if(!r&&!a&&!u&&t1?n[i-1]:void 0,o=i>2?n[2]:void 0;for(a=t.length>3&&"function"==typeof a?(i--,a):void 0,o&&sa(n[0],n[1],o)&&(a=i<3?void 0:a,i=1),e=pt(e);++r-1?i[a?e[o]:o]:void 0}}function Ci(t){return Yi((function(e){var n=e.length,r=n,i=Mn.prototype.thru;for(t&&e.reverse();r--;){var o=e[r];if("function"!=typeof o)throw new yt(a);if(i&&!s&&"wrapper"==Ki(o))var s=new Mn([],!0)}for(r=s?r:n;++r1&&g.reverse(),b&&us))return!1;var u=a.get(t);if(u&&a.get(e))return u==e;var c=-1,b=!0,h=2&n?new Nn:void 0;for(a.set(t,e),a.set(e,t);++c-1&&t%1==0&&t1?"& ":"")+e[r],e=e.join(n>2?", ":" "),t.replace(J,"{\n/* [wrapped with "+e+"] */\n")}(r,function(t,e){return se(s,(function(n){var r="_."+n[0];e&n[1]&&!be(t,r)&&t.push(r)})),t.sort()}(function(t){var e=t.match(Q);return e?e[1].split(Z):[]}(r),n)))}function ka(t){var e=0,n=0;return function(){var r=ln(),i=16-(r-n);if(n=r,i>0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}function wa(t,e){var n=-1,r=t.length,i=r-1;for(e=void 0===e?r:e;++n1?t[e-1]:void 0;return n="function"==typeof n?(t.pop(),n):void 0,Xa(t,n)}));function to(t){var e=An(t);return e.__chain__=!0,e}function eo(t,e){return e(t)}var no=Yi((function(t){var e=t.length,n=e?t[0]:0,r=this.__wrapped__,i=function(e){return Kn(e,t)};return!(e>1||this.__actions__.length)&&r instanceof Pn&&oa(n)?((r=r.slice(n,+n+(e?1:0))).__actions__.push({func:eo,args:[i],thisArg:void 0}),new Mn(r,this.__chain__).thru((function(t){return e&&!t.length&&t.push(void 0),t}))):this.thru(i)})),ro=gi((function(t,e,n){St.call(t,n)?++t[n]:Xn(t,n,1)})),io=Ei(Ma),ao=Ei(Pa);function oo(t,e){return(Oo(t)?se:tr)(t,qi(e,3))}function so(t,e){return(Oo(t)?le:er)(t,qi(e,3))}var lo=gi((function(t,e,n){St.call(t,n)?t[n].push(e):Xn(t,n,[e])})),uo=Br((function(t,e,n){var i=-1,a="function"==typeof e,o=Io(t)?r(t.length):[];return tr(t,(function(t){o[++i]=a?ae(e,t,n):yr(t,e,n)})),o})),co=gi((function(t,e,n){Xn(t,n,e)}));function bo(t,e){return(Oo(t)?fe:Cr)(t,qi(e,3))}var ho=gi((function(t,e,n){t[n?0:1].push(e)}),(function(){return[[],[]]})),fo=Br((function(t,e){if(null==t)return[];var n=e.length;return n>1&&sa(t,e[0],e[1])?e=[]:n>2&&sa(e[0],e[1],e[2])&&(e=[e[0]]),Pr(t,ar(e,1),[])})),po=qe||function(){return Xt.Date.now()};function mo(t,e,n){return e=n?void 0:e,zi(t,128,void 0,void 0,void 0,void 0,e=t&&null==e?t.length:e)}function vo(t,e){var n;if("function"!=typeof e)throw new yt(a);return t=rs(t),function(){return--t>0&&(n=e.apply(this,arguments)),t<=1&&(e=void 0),n}}var yo=Br((function(t,e,n){var r=1;if(n.length){var i=He(n,$i(yo));r|=32}return zi(t,r,e,n,i)})),go=Br((function(t,e,n){var r=3;if(n.length){var i=He(n,$i(go));r|=32}return zi(e,r,t,n,i)}));function _o(t,e,n){var r,i,o,s,l,u,c=0,b=!1,h=!1,f=!0;if("function"!=typeof t)throw new yt(a);function d(e){var n=r,a=i;return r=i=void 0,c=e,s=t.apply(a,n)}function p(t){return c=t,l=ga(v,e),b?d(t):s}function m(t){var n=t-u;return void 0===u||n>=e||n<0||h&&t-c>=o}function v(){var t=po();if(m(t))return y(t);l=ga(v,function(t){var n=e-(t-u);return h?sn(n,o-(t-c)):n}(t))}function y(t){return l=void 0,f&&r?d(t):(r=i=void 0,s)}function g(){var t=po(),n=m(t);if(r=arguments,i=this,u=t,n){if(void 0===l)return p(u);if(h)return ci(l),l=ga(v,e),d(u)}return void 0===l&&(l=ga(v,e)),s}return e=as(e)||0,Wo(n)&&(b=!!n.leading,o=(h="maxWait"in n)?on(as(n.maxWait)||0,e):o,f="trailing"in n?!!n.trailing:f),g.cancel=function(){void 0!==l&&ci(l),c=0,r=u=i=l=void 0},g.flush=function(){return void 0===l?s:y(po())},g}var xo=Br((function(t,e){return Qn(t,1,e)})),ko=Br((function(t,e,n){return Qn(t,as(e)||0,n)}));function wo(t,e){if("function"!=typeof t||null!=e&&"function"!=typeof e)throw new yt(a);var n=function n(){var r=arguments,i=e?e.apply(this,r):r[0],a=n.cache;if(a.has(i))return a.get(i);var o=t.apply(this,r);return n.cache=a.set(i,o)||a,o};return n.cache=new(wo.Cache||In),n}function So(t){if("function"!=typeof t)throw new yt(a);return function(){var e=arguments;switch(e.length){case 0:return!t.call(this);case 1:return!t.call(this,e[0]);case 2:return!t.call(this,e[0],e[1]);case 3:return!t.call(this,e[0],e[1],e[2])}return!t.apply(this,e)}}wo.Cache=In;var To=li((function(t,e){var n=(e=1==e.length&&Oo(e[0])?fe(e[0],Fe(qi())):fe(ar(e,1),Fe(qi()))).length;return Br((function(r){for(var i=-1,a=sn(r.length,n);++i=e})),Po=gr(function(){return arguments}())?gr:function(t){return Yo(t)&&St.call(t,"callee")&&!Kt.call(t,"callee")},Oo=r.isArray,Do=Zt?Fe(Zt):function(t){return Yo(t)&&fr(t)==w};function Io(t){return null!=t&&Ho(t.length)&&!Uo(t)}function No(t){return Yo(t)&&Io(t)}var Lo=en||al,Bo=te?Fe(te):function(t){return Yo(t)&&fr(t)==b};function zo(t){if(!Yo(t))return!1;var e=fr(t);return e==h||"[object DOMException]"==e||"string"==typeof t.message&&"string"==typeof t.name&&!Xo(t)}function Uo(t){if(!Wo(t))return!1;var e=fr(t);return e==f||e==d||"[object AsyncFunction]"==e||"[object Proxy]"==e}function jo(t){return"number"==typeof t&&t==rs(t)}function Ho(t){return"number"==typeof t&&t>-1&&t%1==0&&t<=9007199254740991}function Wo(t){var e=typeof t;return null!=t&&("object"==e||"function"==e)}function Yo(t){return null!=t&&"object"==typeof t}var Go=ee?Fe(ee):function(t){return Yo(t)&&na(t)==p};function Vo(t){return"number"==typeof t||Yo(t)&&fr(t)==m}function Xo(t){if(!Yo(t)||fr(t)!=v)return!1;var e=Gt(t);if(null===e)return!0;var n=St.call(e,"constructor")&&e.constructor;return"function"==typeof n&&n instanceof n&&wt.call(n)==At}var Ko=ne?Fe(ne):function(t){return Yo(t)&&fr(t)==y},$o=re?Fe(re):function(t){return Yo(t)&&na(t)==g};function qo(t){return"string"==typeof t||!Oo(t)&&Yo(t)&&fr(t)==_}function Jo(t){return"symbol"==typeof t||Yo(t)&&fr(t)==x}var Qo=ie?Fe(ie):function(t){return Yo(t)&&Ho(t.length)&&!!Ut[fr(t)]},Zo=Di(Er),ts=Di((function(t,e){return t<=e}));function es(t){if(!t)return[];if(Io(t))return qo(t)?Ve(t):vi(t);if(Qt&&t[Qt])return function(t){for(var e,n=[];!(e=t.next()).done;)n.push(e.value);return n}(t[Qt]());var e=na(t);return(e==p?Ue:e==g?We:Rs)(t)}function ns(t){return t?(t=as(t))===1/0||t===-1/0?17976931348623157e292*(t<0?-1:1):t==t?t:0:0===t?t:0}function rs(t){var e=ns(t),n=e%1;return e==e?n?e-n:e:0}function is(t){return t?$n(rs(t),0,4294967295):0}function as(t){if("number"==typeof t)return t;if(Jo(t))return NaN;if(Wo(t)){var e="function"==typeof t.valueOf?t.valueOf():t;t=Wo(e)?e+"":e}if("string"!=typeof t)return 0===t?t:+t;t=t.replace(K,"");var n=at.test(t);return n||st.test(t)?Yt(t.slice(2),n?2:8):it.test(t)?NaN:+t}function os(t){return yi(t,xs(t))}function ss(t){return null==t?"":Jr(t)}var ls=_i((function(t,e){if(ba(e)||Io(e))yi(e,_s(e),t);else for(var n in e)St.call(e,n)&&Wn(t,n,e[n])})),us=_i((function(t,e){yi(e,xs(e),t)})),cs=_i((function(t,e,n,r){yi(e,xs(e),t,r)})),bs=_i((function(t,e,n,r){yi(e,_s(e),t,r)})),hs=Yi(Kn),fs=Br((function(t,e){t=pt(t);var n=-1,r=e.length,i=r>2?e[2]:void 0;for(i&&sa(e[0],e[1],i)&&(r=1);++n1),e})),yi(t,Vi(t),n),r&&(n=qn(n,7,Hi));for(var i=e.length;i--;)Zr(n,e[i]);return n})),Ts=Yi((function(t,e){return null==t?{}:function(t,e){return Or(t,e,(function(e,n){return ms(t,n)}))}(t,e)}));function Es(t,e){if(null==t)return{};var n=fe(Vi(t),(function(t){return[t]}));return e=qi(e),Or(t,n,(function(t,n){return e(t,n[0])}))}var Cs=Bi(_s),As=Bi(xs);function Rs(t){return null==t?[]:Me(t,_s(t))}var Fs=Si((function(t,e,n){return e=e.toLowerCase(),t+(n?Ms(e):e)}));function Ms(t){return zs(ss(t).toLowerCase())}function Ps(t){return(t=ss(t))&&t.replace(ut,Ne).replace(Ot,"")}var Os=Si((function(t,e,n){return t+(n?"-":"")+e.toLowerCase()})),Ds=Si((function(t,e,n){return t+(n?" ":"")+e.toLowerCase()})),Is=wi("toLowerCase"),Ns=Si((function(t,e,n){return t+(n?"_":"")+e.toLowerCase()})),Ls=Si((function(t,e,n){return t+(n?" ":"")+zs(e)})),Bs=Si((function(t,e,n){return t+(n?" ":"")+e.toUpperCase()})),zs=wi("toUpperCase");function Us(t,e,n){return t=ss(t),void 0===(e=n?void 0:e)?function(t){return Lt.test(t)}(t)?function(t){return t.match(It)||[]}(t):function(t){return t.match(tt)||[]}(t):t.match(e)||[]}var js=Br((function(t,e){try{return ae(t,void 0,e)}catch(t){return zo(t)?t:new ht(t)}})),Hs=Yi((function(t,e){return se(e,(function(e){e=Ta(e),Xn(t,e,yo(t[e],t))})),t}));function Ws(t){return function(){return t}}var Ys=Ci(),Gs=Ci(!0);function Vs(t){return t}function Xs(t){return wr("function"==typeof t?t:qn(t,1))}var Ks=Br((function(t,e){return function(n){return yr(n,t,e)}})),$s=Br((function(t,e){return function(n){return yr(t,n,e)}}));function qs(t,e,n){var r=_s(e),i=cr(e,r);null!=n||Wo(e)&&(i.length||!r.length)||(n=e,e=t,t=this,i=cr(e,_s(e)));var a=!(Wo(n)&&"chain"in n&&!n.chain),o=Uo(t);return se(i,(function(n){var r=e[n];t[n]=r,o&&(t.prototype[n]=function(){var e=this.__chain__;if(a||e){var n=t(this.__wrapped__);return(n.__actions__=vi(this.__actions__)).push({func:r,args:arguments,thisArg:t}),n.__chain__=e,n}return r.apply(t,de([this.value()],arguments))})})),t}function Js(){}var Qs=Mi(fe),Zs=Mi(ue),tl=Mi(ve);function el(t){return la(t)?Te(Ta(t)):function(t){return function(e){return br(e,t)}}(t)}var nl=Oi(),rl=Oi(!0);function il(){return[]}function al(){return!1}var ol,sl=Fi((function(t,e){return t+e}),0),ll=Ni("ceil"),ul=Fi((function(t,e){return t/e}),1),cl=Ni("floor"),bl=Fi((function(t,e){return t*e}),1),hl=Ni("round"),fl=Fi((function(t,e){return t-e}),0);return An.after=function(t,e){if("function"!=typeof e)throw new yt(a);return t=rs(t),function(){if(--t<1)return e.apply(this,arguments)}},An.ary=mo,An.assign=ls,An.assignIn=us,An.assignInWith=cs,An.assignWith=bs,An.at=hs,An.before=vo,An.bind=yo,An.bindAll=Hs,An.bindKey=go,An.castArray=function(){if(!arguments.length)return[];var t=arguments[0];return Oo(t)?t:[t]},An.chain=to,An.chunk=function(t,e,n){e=(n?sa(t,e,n):void 0===e)?1:on(rs(e),0);var i=null==t?0:t.length;if(!i||e<1)return[];for(var a=0,o=0,s=r(Qe(i/e));ai?0:i+n),(r=void 0===r||r>i?i:rs(r))<0&&(r+=i),r=n>r?0:is(r);n>>0)?(t=ss(t))&&("string"==typeof e||null!=e&&!Ko(e))&&!(e=Jr(e))&&ze(t)?ui(Ve(t),0,n):t.split(e,n):[]},An.spread=function(t,e){if("function"!=typeof t)throw new yt(a);return e=null==e?0:on(rs(e),0),Br((function(n){var r=n[e],i=ui(n,0,e);return r&&de(i,r),ae(t,this,i)}))},An.tail=function(t){var e=null==t?0:t.length;return e?Gr(t,1,e):[]},An.take=function(t,e,n){return t&&t.length?Gr(t,0,(e=n||void 0===e?1:rs(e))<0?0:e):[]},An.takeRight=function(t,e,n){var r=null==t?0:t.length;return r?Gr(t,(e=r-(e=n||void 0===e?1:rs(e)))<0?0:e,r):[]},An.takeRightWhile=function(t,e){return t&&t.length?ei(t,qi(e,3),!1,!0):[]},An.takeWhile=function(t,e){return t&&t.length?ei(t,qi(e,3)):[]},An.tap=function(t,e){return e(t),t},An.throttle=function(t,e,n){var r=!0,i=!0;if("function"!=typeof t)throw new yt(a);return Wo(n)&&(r="leading"in n?!!n.leading:r,i="trailing"in n?!!n.trailing:i),_o(t,e,{leading:r,maxWait:e,trailing:i})},An.thru=eo,An.toArray=es,An.toPairs=Cs,An.toPairsIn=As,An.toPath=function(t){return Oo(t)?fe(t,Ta):Jo(t)?[t]:vi(Sa(ss(t)))},An.toPlainObject=os,An.transform=function(t,e,n){var r=Oo(t),i=r||Lo(t)||Qo(t);if(e=qi(e,4),null==n){var a=t&&t.constructor;n=i?r?new a:[]:Wo(t)&&Uo(a)?Rn(Gt(t)):{}}return(i?se:lr)(t,(function(t,r,i){return e(n,t,r,i)})),n},An.unary=function(t){return mo(t,1)},An.union=Wa,An.unionBy=Ya,An.unionWith=Ga,An.uniq=function(t){return t&&t.length?Qr(t):[]},An.uniqBy=function(t,e){return t&&t.length?Qr(t,qi(e,2)):[]},An.uniqWith=function(t,e){return e="function"==typeof e?e:void 0,t&&t.length?Qr(t,void 0,e):[]},An.unset=function(t,e){return null==t||Zr(t,e)},An.unzip=Va,An.unzipWith=Xa,An.update=function(t,e,n){return null==t?t:ti(t,e,oi(n))},An.updateWith=function(t,e,n,r){return r="function"==typeof r?r:void 0,null==t?t:ti(t,e,oi(n),r)},An.values=Rs,An.valuesIn=function(t){return null==t?[]:Me(t,xs(t))},An.without=Ka,An.words=Us,An.wrap=function(t,e){return Eo(oi(e),t)},An.xor=$a,An.xorBy=qa,An.xorWith=Ja,An.zip=Qa,An.zipObject=function(t,e){return ii(t||[],e||[],Wn)},An.zipObjectDeep=function(t,e){return ii(t||[],e||[],jr)},An.zipWith=Za,An.entries=Cs,An.entriesIn=As,An.extend=us,An.extendWith=cs,qs(An,An),An.add=sl,An.attempt=js,An.camelCase=Fs,An.capitalize=Ms,An.ceil=ll,An.clamp=function(t,e,n){return void 0===n&&(n=e,e=void 0),void 0!==n&&(n=(n=as(n))==n?n:0),void 0!==e&&(e=(e=as(e))==e?e:0),$n(as(t),e,n)},An.clone=function(t){return qn(t,4)},An.cloneDeep=function(t){return qn(t,5)},An.cloneDeepWith=function(t,e){return qn(t,5,e="function"==typeof e?e:void 0)},An.cloneWith=function(t,e){return qn(t,4,e="function"==typeof e?e:void 0)},An.conformsTo=function(t,e){return null==e||Jn(t,e,_s(e))},An.deburr=Ps,An.defaultTo=function(t,e){return null==t||t!=t?e:t},An.divide=ul,An.endsWith=function(t,e,n){t=ss(t),e=Jr(e);var r=t.length,i=n=void 0===n?r:$n(rs(n),0,r);return(n-=e.length)>=0&&t.slice(n,i)==e},An.eq=Ro,An.escape=function(t){return(t=ss(t))&&z.test(t)?t.replace(L,Le):t},An.escapeRegExp=function(t){return(t=ss(t))&&X.test(t)?t.replace(V,"\\$&"):t},An.every=function(t,e,n){var r=Oo(t)?ue:nr;return n&&sa(t,e,n)&&(e=void 0),r(t,qi(e,3))},An.find=io,An.findIndex=Ma,An.findKey=function(t,e){return ge(t,qi(e,3),lr)},An.findLast=ao,An.findLastIndex=Pa,An.findLastKey=function(t,e){return ge(t,qi(e,3),ur)},An.floor=cl,An.forEach=oo,An.forEachRight=so,An.forIn=function(t,e){return null==t?t:or(t,qi(e,3),xs)},An.forInRight=function(t,e){return null==t?t:sr(t,qi(e,3),xs)},An.forOwn=function(t,e){return t&&lr(t,qi(e,3))},An.forOwnRight=function(t,e){return t&&ur(t,qi(e,3))},An.get=ps,An.gt=Fo,An.gte=Mo,An.has=function(t,e){return null!=t&&ra(t,e,pr)},An.hasIn=ms,An.head=Da,An.identity=Vs,An.includes=function(t,e,n,r){t=Io(t)?t:Rs(t),n=n&&!r?rs(n):0;var i=t.length;return n<0&&(n=on(i+n,0)),qo(t)?n<=i&&t.indexOf(e,n)>-1:!!i&&xe(t,e,n)>-1},An.indexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=null==n?0:rs(n);return i<0&&(i=on(r+i,0)),xe(t,e,i)},An.inRange=function(t,e,n){return e=ns(e),void 0===n?(n=e,e=0):n=ns(n),function(t,e,n){return t>=sn(e,n)&&t=-9007199254740991&&t<=9007199254740991},An.isSet=$o,An.isString=qo,An.isSymbol=Jo,An.isTypedArray=Qo,An.isUndefined=function(t){return void 0===t},An.isWeakMap=function(t){return Yo(t)&&na(t)==k},An.isWeakSet=function(t){return Yo(t)&&"[object WeakSet]"==fr(t)},An.join=function(t,e){return null==t?"":rn.call(t,e)},An.kebabCase=Os,An.last=Ba,An.lastIndexOf=function(t,e,n){var r=null==t?0:t.length;if(!r)return-1;var i=r;return void 0!==n&&(i=(i=rs(n))<0?on(r+i,0):sn(i,r-1)),e==e?function(t,e,n){for(var r=n+1;r--;)if(t[r]===e)return r;return r}(t,e,i):_e(t,we,i,!0)},An.lowerCase=Ds,An.lowerFirst=Is,An.lt=Zo,An.lte=ts,An.max=function(t){return t&&t.length?rr(t,Vs,dr):void 0},An.maxBy=function(t,e){return t&&t.length?rr(t,qi(e,2),dr):void 0},An.mean=function(t){return Se(t,Vs)},An.meanBy=function(t,e){return Se(t,qi(e,2))},An.min=function(t){return t&&t.length?rr(t,Vs,Er):void 0},An.minBy=function(t,e){return t&&t.length?rr(t,qi(e,2),Er):void 0},An.stubArray=il,An.stubFalse=al,An.stubObject=function(){return{}},An.stubString=function(){return""},An.stubTrue=function(){return!0},An.multiply=bl,An.nth=function(t,e){return t&&t.length?Mr(t,rs(e)):void 0},An.noConflict=function(){return Xt._===this&&(Xt._=Rt),this},An.noop=Js,An.now=po,An.pad=function(t,e,n){t=ss(t);var r=(e=rs(e))?Ge(t):0;if(!e||r>=e)return t;var i=(e-r)/2;return Pi(Ze(i),n)+t+Pi(Qe(i),n)},An.padEnd=function(t,e,n){t=ss(t);var r=(e=rs(e))?Ge(t):0;return e&&re){var r=t;t=e,e=r}if(n||t%1||e%1){var i=cn();return sn(t+i*(e-t+Wt("1e-"+((i+"").length-1))),e)}return Nr(t,e)},An.reduce=function(t,e,n){var r=Oo(t)?pe:Ce,i=arguments.length<3;return r(t,qi(e,4),n,i,tr)},An.reduceRight=function(t,e,n){var r=Oo(t)?me:Ce,i=arguments.length<3;return r(t,qi(e,4),n,i,er)},An.repeat=function(t,e,n){return e=(n?sa(t,e,n):void 0===e)?1:rs(e),Lr(ss(t),e)},An.replace=function(){var t=arguments,e=ss(t[0]);return t.length<3?e:e.replace(t[1],t[2])},An.result=function(t,e,n){var r=-1,i=(e=si(e,t)).length;for(i||(i=1,t=void 0);++r9007199254740991)return[];var n=4294967295,r=sn(t,4294967295);t-=4294967295;for(var i=Re(r,e=qi(e));++n=a)return t;var s=n-Ge(r);if(s<1)return r;var l=o?ui(o,0,s).join(""):t.slice(0,s);if(void 0===i)return l+r;if(o&&(s+=l.length-s),Ko(i)){if(t.slice(s).search(i)){var u,c=l;for(i.global||(i=mt(i.source,ss(rt.exec(i))+"g")),i.lastIndex=0;u=i.exec(c);)var b=u.index;l=l.slice(0,void 0===b?s:b)}}else if(t.indexOf(Jr(i),s)!=s){var h=l.lastIndexOf(i);h>-1&&(l=l.slice(0,h))}return l+r},An.unescape=function(t){return(t=ss(t))&&B.test(t)?t.replace(N,Xe):t},An.uniqueId=function(t){var e=++Tt;return ss(t)+e},An.upperCase=Bs,An.upperFirst=zs,An.each=oo,An.eachRight=so,An.first=Da,qs(An,(ol={},lr(An,(function(t,e){St.call(An.prototype,e)||(ol[e]=t)})),ol),{chain:!1}),An.VERSION="4.17.15",se(["bind","bindKey","curry","curryRight","partial","partialRight"],(function(t){An[t].placeholder=An})),se(["drop","take"],(function(t,e){Pn.prototype[t]=function(n){n=void 0===n?1:on(rs(n),0);var r=this.__filtered__&&!e?new Pn(this):this.clone();return r.__filtered__?r.__takeCount__=sn(n,r.__takeCount__):r.__views__.push({size:sn(n,4294967295),type:t+(r.__dir__<0?"Right":"")}),r},Pn.prototype[t+"Right"]=function(e){return this.reverse()[t](e).reverse()}})),se(["filter","map","takeWhile"],(function(t,e){var n=e+1,r=1==n||3==n;Pn.prototype[t]=function(t){var e=this.clone();return e.__iteratees__.push({iteratee:qi(t,3),type:n}),e.__filtered__=e.__filtered__||r,e}})),se(["head","last"],(function(t,e){var n="take"+(e?"Right":"");Pn.prototype[t]=function(){return this[n](1).value()[0]}})),se(["initial","tail"],(function(t,e){var n="drop"+(e?"":"Right");Pn.prototype[t]=function(){return this.__filtered__?new Pn(this):this[n](1)}})),Pn.prototype.compact=function(){return this.filter(Vs)},Pn.prototype.find=function(t){return this.filter(t).head()},Pn.prototype.findLast=function(t){return this.reverse().find(t)},Pn.prototype.invokeMap=Br((function(t,e){return"function"==typeof t?new Pn(this):this.map((function(n){return yr(n,t,e)}))})),Pn.prototype.reject=function(t){return this.filter(So(qi(t)))},Pn.prototype.slice=function(t,e){t=rs(t);var n=this;return n.__filtered__&&(t>0||e<0)?new Pn(n):(t<0?n=n.takeRight(-t):t&&(n=n.drop(t)),void 0!==e&&(n=(e=rs(e))<0?n.dropRight(-e):n.take(e-t)),n)},Pn.prototype.takeRightWhile=function(t){return this.reverse().takeWhile(t).reverse()},Pn.prototype.toArray=function(){return this.take(4294967295)},lr(Pn.prototype,(function(t,e){var n=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),i=An[r?"take"+("last"==e?"Right":""):e],a=r||/^find/.test(e);i&&(An.prototype[e]=function(){var e=this.__wrapped__,o=r?[1]:arguments,s=e instanceof Pn,l=o[0],u=s||Oo(e),c=function(t){var e=i.apply(An,de([t],o));return r&&b?e[0]:e};u&&n&&"function"==typeof l&&1!=l.length&&(s=u=!1);var b=this.__chain__,h=!!this.__actions__.length,f=a&&!b,d=s&&!h;if(!a&&u){e=d?e:new Pn(this);var p=t.apply(e,o);return p.__actions__.push({func:eo,args:[c],thisArg:void 0}),new Mn(p,b)}return f&&d?t.apply(this,o):(p=this.thru(c),f?r?p.value()[0]:p.value():p)})})),se(["pop","push","shift","sort","splice","unshift"],(function(t){var e=gt[t],n=/^(?:push|sort|unshift)$/.test(t)?"tap":"thru",r=/^(?:pop|shift)$/.test(t);An.prototype[t]=function(){var t=arguments;if(r&&!this.__chain__){var i=this.value();return e.apply(Oo(i)?i:[],t)}return this[n]((function(n){return e.apply(Oo(n)?n:[],t)}))}})),lr(Pn.prototype,(function(t,e){var n=An[e];if(n){var r=n.name+"";St.call(gn,r)||(gn[r]=[]),gn[r].push({name:e,func:n})}})),gn[Ai(void 0,2).name]=[{name:"wrapper",func:void 0}],Pn.prototype.clone=function(){var t=new Pn(this.__wrapped__);return t.__actions__=vi(this.__actions__),t.__dir__=this.__dir__,t.__filtered__=this.__filtered__,t.__iteratees__=vi(this.__iteratees__),t.__takeCount__=this.__takeCount__,t.__views__=vi(this.__views__),t},Pn.prototype.reverse=function(){if(this.__filtered__){var t=new Pn(this);t.__dir__=-1,t.__filtered__=!0}else(t=this.clone()).__dir__*=-1;return t},Pn.prototype.value=function(){var t=this.__wrapped__.value(),e=this.__dir__,n=Oo(t),r=e<0,i=n?t.length:0,a=function(t,e,n){for(var r=-1,i=n.length;++r=this.__values__.length;return{done:t,value:t?void 0:this.__values__[this.__index__++]}},An.prototype.plant=function(t){for(var e,n=this;n instanceof Fn;){var r=Ca(n);r.__index__=0,r.__values__=void 0,e?i.__wrapped__=r:e=r;var i=r;n=n.__wrapped__}return i.__wrapped__=t,e},An.prototype.reverse=function(){var t=this.__wrapped__;if(t instanceof Pn){var e=t;return this.__actions__.length&&(e=new Pn(this)),(e=e.reverse()).__actions__.push({func:eo,args:[Ha],thisArg:void 0}),new Mn(e,this.__chain__)}return this.thru(Ha)},An.prototype.toJSON=An.prototype.valueOf=An.prototype.value=function(){return ni(this.__wrapped__,this.__actions__)},An.prototype.first=An.prototype.head,Qt&&(An.prototype[Qt]=function(){return this}),An}();Xt._=Ke,void 0===(i=function(){return Ke}.call(e,n,e,r))||(r.exports=i)}).call(this)}).call(this,n(8),n(5)(t))},function(t,e,n){"use strict";var r,i=n(0),a=n(1),o=[].indexOf;r=function(){var t,e,n,r,s,l,c,f,d=function(){function f(t,e,n,r){h(this,f),this.x=t,this.y=e,this.width=n,this.options={font_face:"Arial",font_size:10,font_style:null,bottom_spacing:20+(f.NOLOGO?0:10),tab_stave_lower_spacing:10,note_stave_lower_spacing:0,scale:1},null!=r&&a.extend(this.options,r),this.reset()}return b(f,[{key:"reset",value:function(){return this.tuning=new i.a.Flow.Tuning,this.key_manager=new i.a.Flow.KeyManager("C"),this.music_api=new i.a.Flow.Music,this.customizations={"font-size":this.options.font_size,"font-face":this.options.font_face,"font-style":this.options.font_style,"annotation-position":"bottom",scale:this.options.scale,width:this.width,"stave-distance":0,space:0,player:"false",tempo:120,instrument:"acoustic_grand_piano",accidentals:"standard","tab-stems":"false","tab-stem-direction":"up","beam-rests":"true","beam-stemlets":"true","beam-middle-only":"false","connector-space":5},this.staves=[],this.tab_articulations=[],this.stave_articulations=[],this.player_voices=[],this.last_y=this.y,this.current_duration="q",this.current_clef="treble",this.current_bends={},this.current_octave_shift=0,this.bend_start_index=null,this.bend_start_strings=null,this.rendered=!1,this.renderer_context=null}},{key:"attachPlayer",value:function(t){return this.player=t}},{key:"setOptions",value:function(e){var n,r,s;for(n in t("setOptions: ",e),s=a.keys(this.customizations),e){if(r=e[n],!(o.call(s,n)>=0))throw new i.a.RERR("ArtistError","Invalid option '".concat(n,"'"));this.customizations[n]=r}if(this.last_y+=parseInt(this.customizations.space,10),"true"===this.customizations.player)return this.last_y+=15}},{key:"getPlayerData",value:function(){return{voices:this.player_voices,context:this.renderer_context,scale:this.customizations.scale}}},{key:"render",value:function(n){var r,o,s,l,u,c,b,h,d,p,m,v,y,g;for(t("Render: ",this.options),this.closeBends(),n.resize(this.customizations.width*this.customizations.scale,(this.last_y+this.options.bottom_spacing)*this.customizations.scale),(r=n.getContext()).scale(this.customizations.scale,this.customizations.scale),r.clear(),r.setFont(this.options.font_face,this.options.font_size,""),this.renderer_context=r,m=function(t,e){var n;if((n=a.last(e))instanceof i.a.Flow.BarNote)return e.pop(),t.setEndBarType(n.getType())},o=0,l=(h=this.staves).length;o1&&"c"===u[1]&&s.setAsCautionary(),b.addAccidental(n,s));return"d"===this.current_duration[this.current_duration.length-1]&&b.addDotToAll(),null!=l.play_note&&b.setPlayNote(l.play_note),h.push(b)}},{key:"addTabNote",value:function(t){var e,n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null;if(n=a.last(this.staves).tab_notes,e=new i.a.Flow.TabNote({positions:t,duration:this.current_duration},"true"===this.customizations["tab-stems"]),null!=r&&e.setPlayNote(r),n.push(e),"d"===this.current_duration[this.current_duration.length-1])return e.addDot()}},{key:"setDuration",value:function(e){var n,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return n=e.split(/\s+/),t("setDuration: ",n[0],r),this.current_duration=c(n[0],r)}},{key:"addBar",value:function(e){var n,r,o;if(t("addBar: ",e),this.closeBends(),this.key_manager.reset(),o=a.last(this.staves),n=i.a.Flow.Barline.type,e=function(){switch(e){case"single":return n.SINGLE;case"double":return n.DOUBLE;case"end":return n.END;case"repeat-begin":return n.REPEAT_BEGIN;case"repeat-end":return n.REPEAT_END;case"repeat-both":return n.REPEAT_BOTH;default:return n.SINGLE}}(),r=(new i.a.Flow.BarNote).setType(e),o.tab_notes.push(r),null!=o.note)return o.note_notes.push(r)}},{key:"openBends",value:function(e,n,r,i){var o,s,u,c,b,h,f,d,p,m,v,y,g;for(t("openBends",e,n,r,i),y=a.last(this.staves).tab_notes,v=e,m=r,a.isEmpty(this.current_bends)?(this.bend_start_index=y.length-2,this.bend_start_strings=r):(v=y[this.bend_start_index],m=this.bend_start_strings),v.getPositions(),h=n.getPositions(),p=[],u=b=0,d=m.length;b0&&void 0!==arguments[0]?arguments[0]:1;if(null!=this.bend_start_index){for(r in t("closeBends(".concat(d,")")),h=a.last(this.staves).tab_notes,c=this.current_bends){for(u=[],n=0,s=(f=c[r]).length;n1&&void 0!==arguments[1]?arguments[1]:r;return new i.a.Flow.Annotation(t).setFont(a,o,s).setVerticalJustification(e)},null!=(c=t.match(/^\.([^-]*)-([^-]*)-([^.]*)\.(.*)/)))return a=c[1],o=c[2],s=c[3],(t=c[4])?u(t):null;if(null!=(c=t.match(/^\.([^.]*)\.(.*)/))){switch(l=r,t=c[2],c[1]){case"big":s="bold",o="14";break;case"italic":case"italics":a="Times",s="italic";break;case"medium":o="12";break;case"top":l=e.TOP,this.customizations["annotation-position"]="top";break;case"bottom":l=e.BOTTOM,this.customizations["annotation-position"]="bottom"}return t?u(t,l):null}return u(t)}},{key:"addAnnotations",value:function(t){var e,n,o,l,u,c,b,h,f,d,p,m,v,y,g,_,x,k,w,S;if(x=(_=a.last(this.staves)).note_notes,S=_.tab_notes,t.length>S.length)throw new i.a.RERR("ArtistError","More annotations than note elements");if(_.tab)for(o=l=0,c=(p=S.slice(S.length-t.length)).length;l=0&&r.push(h.str);return r}(),w=function(){var t,e,n,r,i;for(n=m.getPositions(),i=[],l=t=0,e=n.length;t=0&&i.push(f.str);return i}(),p=function(){var t,e,n,r,i;for(n=m.getPositions(),i=[],l=t=0,e=n.length;t=0&&i.push(l);return i}(),r=function(){var t,e,n,r,a;for(n=i.getPositions(),a=[],l=t=0,e=n.length;t=0&&a.push(l);return a}()),null!=y.tab&&this.addTabArticulation(k,m,i,p,r),null!=y.note&&this.addStaveArticulation(k,g[d],a.last(g),p,r));return s?void 0:this.closeBends(0)}this.closeBends(0)}},{key:"addRest",value:function(e){var n,r,o;return t("addRest: ",e),this.closeBends(),0===e.position?this.addStaveNote({spec:["r/4"],accidentals:[],is_rest:!0}):(n=this.tuning.getNoteForFret(2*(parseInt(e.position,10)+5),6),this.addStaveNote({spec:[n],accidentals:[],is_rest:!0})),o=a.last(this.staves).tab_notes,"true"===this.customizations["tab-stems"]?(r=new i.a.Flow.StaveNote({keys:[n||"r/4"],duration:this.current_duration+"r",clef:"treble",auto_stem:!1}),"d"===this.current_duration[this.current_duration.length-1]&&r.addDot(0),o.push(r)):o.push(new i.a.Flow.GhostNote(this.current_duration))}},{key:"addChord",value:function(e,n,r){var o,s,l,c,b,h,f,d,p,m,v,y,g,_,x,k,w,S,T,E,C,A,R,F,M,P,O,D;if(!a.isEmpty(e)){for(t("addChord: ",e),O=a.last(this.staves),P=[],A=[],s=[],c=[],d=[],D=[],p=[],T=0,f=a.first(e).string,h=0,v=0,g=e.length;v=F;1<=F?++x:--x)l.push(n);this.addArticulations(l)}return null!=r?this.addDecorator(r):void 0}}},{key:"addNote",value:function(t){return this.addChord([t])}},{key:"addTextVoice",value:function(){return a.last(this.staves).text_voices.push([])}},{key:"setTextFont",value:function(t){var e;if(null!=t&&null!=(e=t.match(/([^-]*)-([^-]*)-([^.]*)/)))return this.customizations["font-face"]=e[1],this.customizations["font-size"]=parseInt(e[2],10),this.customizations["font-style"]=e[3]}},{key:"addTextNote",value:function(t){var e,n,r,o,s,l,u,c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,b=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"center",h=!(arguments.length>3&&void 0!==arguments[3])||arguments[3],f=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(u=a.last(this.staves).text_voices,a.isEmpty(u))throw new i.a.RERR("ArtistError","Can't add text note without text voice");return e=this.customizations["font-face"],n=this.customizations["font-size"],r=this.customizations["font-style"],o=function(){switch(b){case"center":return i.a.Flow.TextNote.Justification.CENTER;case"left":return i.a.Flow.TextNote.Justification.LEFT;case"right":return i.a.Flow.TextNote.Justification.RIGHT;default:return i.a.Flow.TextNote.Justification.CENTER}}(),l={text:t,duration:f?"b":this.current_duration,smooth:h,ignore_ticks:f,font:{family:e,size:n,weight:r}},"#"===t[0]&&(l.glyph=t.slice(1)),s=new i.a.Flow.TextNote(l).setLine(c).setJustification(o),a.last(u).push(s)}},{key:"addVoice",value:function(t){var e;return this.closeBends(),null==(e=a.last(this.staves))?this.addStave(t):(a.isEmpty(e.tab_notes)||(e.tab_voices.push(e.tab_notes),e.tab_notes=[]),a.isEmpty(e.note_notes)?void 0:(e.note_voices.push(e.note_notes),e.note_notes=[]))}},{key:"addStave",value:function(e,n){var r,o,s,l,u,c;s={tuning:"standard",clef:"treble",key:"C",notation:"tabstave"===e?"false":"true",tablature:"stave"===e?"false":"true",strings:6},a.extend(s,n),t("addStave: ",e,s),u=null,o=null,l=this.x+this.customizations["connector-space"],c=40,"true"===s.notation&&(o=new i.a.Flow.Stave(l,this.last_y,this.customizations.width-20,{left_bar:!1}),"none"!==s.clef&&o.addClef(s.clef),o.addKeySignature(s.key),null!=s.time&&o.addTimeSignature(s.time),this.last_y+=o.getHeight()+this.options.note_stave_lower_spacing+parseInt(this.customizations["stave-distance"],10),c=o.getNoteStartX(),this.current_clef="none"===s.clef?"treble":s.clef),"true"===s.tablature&&(u=new i.a.Flow.TabStave(l,this.last_y,this.customizations.width-20,{left_bar:!1}).setNumLines(s.strings),"none"!==s.clef&&u.addTabGlyph(),u.setNoteStartX(c),this.last_y+=u.getHeight()+this.options.tab_stave_lower_spacing),this.closeBends(),r=i.a.Flow.Beam.getDefaultBeamGroups(s.time),this.staves.push({tab:u,note:o,tab_voices:[],note_voices:[],tab_notes:[],note_notes:[],text_voices:[],beam_groups:r}),this.tuning.setTuning(s.tuning),this.key_manager.setKey(s.key)}},{key:"runCommand",value:function(e){var n,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,a=arguments.length>2&&void 0!==arguments[2]?arguments[2]:0;switch(t("runCommand: ",e),(n=e.split(/\s+/))[0]){case"octave-shift":return this.current_octave_shift=parseInt(n[1],10),t("Octave shift: ",this.current_octave_shift);default:throw new i.a.RERR("ArtistError","Invalid command '".concat(n[0],"' at line ").concat(r," column ").concat(a))}}}]),f}();return d.DEBUG=!1,t=function(){for(var t,e=arguments.length,n=new Array(e),r=0;r1,p=m=0,y=(S=e.voices).length;m1,p=v=0,g=(T=n.voices).length;v1&&(l=!0)),a.isEmpty(r)||a.isEmpty(P)||(d.joinVoices(P),h=h.concat(P)),a.isEmpty(h)||d.formatToStave(h,b,{align_rests:l}),null!=e&&a.each(F,(function(e){return e.draw(t,R)})),null!=n&&a.each(C,(function(e){return e.draw(t,E)})),a.each(c,(function(e){return e.setContext(t).draw()})),a.isEmpty(r)||a.each(P,(function(e){return e.draw(t,M)})),null!=e&&null!=n&&new i.a.Flow.StaveConnector(n.stave,e.stave).setType(i.a.Flow.StaveConnector.type.BRACKET).setContext(t).draw(),null!=n?C:F},c=function(t,e){return t+(e?"d":"")},l=function(t,e){var n,r;return n=i.a.Flow.Bend.UP,r="",parseInt(t,10)>parseInt(e,10)?n=i.a.Flow.Bend.DOWN:r=function(){switch(Math.abs(e-t)){case 1:return"1/2";case 2:return"Full";case 3:return"1 1/2";default:return"Bend to "+e}}(),{type:n,text:r}},n=function(t){return t.match(/^\.fingering\/([^.]+)\./)},s=function(t){return t.match(/^\.stroke\/([^.]+)\./)},r=function(t){return t.match(/^\.(a[^\/]*)\/(t|b)[^.]*\./)},d}.call(void 0),e.a=r},function(t,e,n){"use strict";var r,i=n(0),a=n(1),o=n(4),s=[].indexOf;r=function(){var t,e,n=function(){function n(t){h(this,n),this.artist=t,this.reset()}return b(n,[{key:"reset",value:function(){return this.valid=!1,this.elements=!1}},{key:"isValid",value:function(){return this.valid}},{key:"getArtist",value:function(){return this.artist}},{key:"parseStaveOptions",value:function(t){var n,r,o,l,u,c,b,h,f,d,p,m;if(h={},null==t)return h;for(u=null,o=0,l=t.length;o8)throw r("Invalid number of strings: "+c);break;default:throw r("Invalid option '".concat(b.key,"'"))}if("false"===h.notation&&"false"===h.tablature)throw e(u,"Both 'notation' and 'tablature' can't be invisible");return h}},{key:"parseCommand",value:function(t){if("bar"===t.command&&this.artist.addBar(t.type),"tuplet"===t.command&&this.artist.makeTuplets(t.params.tuplet,t.params.notes),"annotations"===t.command&&this.artist.addAnnotations(t.params),"rest"===t.command&&this.artist.addRest(t.params),"command"===t.command)return this.artist.runCommand(t.params,t._l,t._c)}},{key:"parseChord",value:function(e){return t("parseChord:",e),this.artist.addChord(a.map(e.chord,(function(t){return a.pick(t,"time","dot","fret","abc","octave","string","articulation","decorator")})),e.articulation,e.decorator)}},{key:"parseFret",value:function(t){return this.artist.addNote(a.pick(t,"time","dot","fret","string","articulation","decorator"))}},{key:"parseABC",value:function(t){return this.artist.addNote(a.pick(t,"time","dot","fret","abc","octave","string","articulation","decorator"))}},{key:"parseStaveElements",value:function(e){var n,r,i,a;for(t("parseStaveElements:",e),a=[],r=0,i=e.length;rc&&E.push("'"+this.terminals_[w]+"'");R=f.showPosition?"Parse error on line "+(s+1)+":\n"+f.showPosition()+"\nExpecting "+E.join(", ")+", got '"+(this.terminals_[y]||y)+"'":"Parse error on line "+(s+1)+": Unexpected "+(y==b?"end of input":"'"+(this.terminals_[y]||y)+"'"),this.parseError(R,{text:f.match,token:this.terminals_[y]||y,line:f.yylineno,loc:m,expected:E})}if(x[0]instanceof Array&&x.length>1)throw new Error("Parse Error: multiple actions possible at state: "+_+", token: "+y);switch(x[0]){case 1:n.push(y),r.push(f.yytext),i.push(f.yylloc),n.push(x[1]),y=null,g?(y=g,g=null):(l=f.yyleng,o=f.yytext,s=f.yylineno,m=f.yylloc,u>0&&u--);break;case 2:if(S=this.productions_[x[1]][1],A.$=r[r.length-S],A._$={first_line:i[i.length-(S||1)].first_line,last_line:i[i.length-1].last_line,first_column:i[i.length-(S||1)].first_column,last_column:i[i.length-1].last_column},v&&(A._$.range=[i[i.length-(S||1)].range[0],i[i.length-1].range[1]]),void 0!==(k=this.performAction.apply(A,[o,l,s,d.yy,x[1],r,i].concat(h))))return k;S&&(n=n.slice(0,-1*S*2),r=r.slice(0,-1*S),i=i.slice(0,-1*S)),n.push(this.productions_[x[1]][0]),r.push(A.$),i.push(A._$),T=a[n[n.length-2]][n[n.length-1]],n.push(T);break;case 3:return!0}}return!0}},st=n(1),lt={EOF:1,parseError:function(t,e){if(!this.yy.parser)throw new Error(t);this.yy.parser.parseError(t,e)},setInput:function(t,e){return this.yy=e||this.yy||{},this._input=t,this._more=this._backtrack=this.done=!1,this.yylineno=this.yyleng=0,this.yytext=this.matched=this.match="",this.conditionStack=["INITIAL"],this.yylloc={first_line:1,first_column:0,last_line:1,last_column:0},this.options.ranges&&(this.yylloc.range=[0,0]),this.offset=0,this},input:function(){var t=this._input[0];return this.yytext+=t,this.yyleng++,this.offset++,this.match+=t,this.matched+=t,t.match(/(?:\r\n?|\n).*/g)?(this.yylineno++,this.yylloc.last_line++):this.yylloc.last_column++,this.options.ranges&&this.yylloc.range[1]++,this._input=this._input.slice(1),t},unput:function(t){var e=t.length,n=t.split(/(?:\r\n?|\n)/g);this._input=t+this._input,this.yytext=this.yytext.substr(0,this.yytext.length-e),this.offset-=e;var r=this.match.split(/(?:\r\n?|\n)/g);this.match=this.match.substr(0,this.match.length-1),this.matched=this.matched.substr(0,this.matched.length-1),n.length-1&&(this.yylineno-=n.length-1);var i=this.yylloc.range;return this.yylloc={first_line:this.yylloc.first_line,last_line:this.yylineno+1,first_column:this.yylloc.first_column,last_column:n?(n.length===r.length?this.yylloc.first_column:0)+r[r.length-n.length].length-n[0].length:this.yylloc.first_column-e},this.options.ranges&&(this.yylloc.range=[i[0],i[0]+this.yyleng-e]),this.yyleng=this.yytext.length,this},more:function(){return this._more=!0,this},reject:function(){return this.options.backtrack_lexer?(this._backtrack=!0,this):this.parseError("Lexical error on line "+(this.yylineno+1)+". You can only invoke reject() in the lexer when the lexer is of the backtracking persuasion (options.backtrack_lexer = true).\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},less:function(t){this.unput(this.match.slice(t))},pastInput:function(){var t=this.matched.substr(0,this.matched.length-this.match.length);return(t.length>20?"...":"")+t.substr(-20).replace(/\n/g,"")},upcomingInput:function(){var t=this.match;return t.length<20&&(t+=this._input.substr(0,20-t.length)),(t.substr(0,20)+(t.length>20?"...":"")).replace(/\n/g,"")},showPosition:function(){var t=this.pastInput(),e=new Array(t.length+1).join("-");return t+this.upcomingInput()+"\n"+e+"^"},test_match:function(t,e){var n,r,i;if(this.options.backtrack_lexer&&(i={yylineno:this.yylineno,yylloc:{first_line:this.yylloc.first_line,last_line:this.last_line,first_column:this.yylloc.first_column,last_column:this.yylloc.last_column},yytext:this.yytext,match:this.match,matches:this.matches,matched:this.matched,yyleng:this.yyleng,offset:this.offset,_more:this._more,_input:this._input,yy:this.yy,conditionStack:this.conditionStack.slice(0),done:this.done},this.options.ranges&&(i.yylloc.range=this.yylloc.range.slice(0))),(r=t[0].match(/(?:\r\n?|\n).*/g))&&(this.yylineno+=r.length),this.yylloc={first_line:this.yylloc.last_line,last_line:this.yylineno+1,first_column:this.yylloc.last_column,last_column:r?r[r.length-1].length-r[r.length-1].match(/\r?\n?/)[0].length:this.yylloc.last_column+t[0].length},this.yytext+=t[0],this.match+=t[0],this.matches=t,this.yyleng=this.yytext.length,this.options.ranges&&(this.yylloc.range=[this.offset,this.offset+=this.yyleng]),this._more=!1,this._backtrack=!1,this._input=this._input.slice(t[0].length),this.matched+=t[0],n=this.performAction.call(this,this.yy,this,e,this.conditionStack[this.conditionStack.length-1]),this.done&&this._input&&(this.done=!1),n)return n;if(this._backtrack){for(var a in i)this[a]=i[a];return!1}return!1},next:function(){if(this.done)return this.EOF;var t,e,n,r;this._input||(this.done=!0),this._more||(this.yytext="",this.match="");for(var i=this._currentRules(),a=0;ae[0].length)){if(e=n,r=a,this.options.backtrack_lexer){if(!1!==(t=this.test_match(n,i[a])))return t;if(this._backtrack){e=!1;continue}return!1}if(!this.options.flex)break}return e?!1!==(t=this.test_match(e,i[r]))&&t:""===this._input?this.EOF:this.parseError("Lexical error on line "+(this.yylineno+1)+". Unrecognized text.\n"+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){return this.next()||this.lex()},begin:function(t){this.conditionStack.push(t)},popState:function(){return this.conditionStack.length-1>0?this.conditionStack.pop():this.conditionStack[0]},_currentRules:function(){return this.conditionStack.length&&this.conditionStack[this.conditionStack.length-1]?this.conditions[this.conditionStack[this.conditionStack.length-1]].rules:this.conditions.INITIAL.rules},topState:function(t){return(t=this.conditionStack.length-1-Math.abs(t||0))>=0?this.conditionStack[t]:"INITIAL"},pushState:function(t){this.begin(t)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(t,e,n,r){switch(n){case 0:return this.begin("notes"),19;case 1:return this.begin("options"),13;case 2:return this.begin("options"),14;case 3:return this.begin("options"),15;case 4:return this.begin("options"),11;case 5:return this.begin("text"),17;case 6:return this.begin("options"),21;case 7:return 22;case 8:return this.begin("annotations"),"$";case 9:return this.begin("notes"),"$";case 10:return 22;case 11:return this.begin("command"),"!";case 12:return this.begin("notes"),"!";case 13:return 74;case 14:return 24;case 15:return 41;case 16:return"+";case 17:return 38;case 18:return 23;case 19:return 45;case 20:return 46;case 21:return 31;case 22:return 32;case 23:return 70;case 24:return 25;case 25:return 37;case 26:return 44;case 27:return 75;case 28:return 79;case 29:return 65;case 30:return 62;case 31:return 57;case 32:return 66;case 33:return 63;case 34:return 64;case 35:return 61;case 36:return 50;case 37:return 67;case 38:return 68;case 39:return 69;case 40:return 59;case 41:return 48;case 42:return 58;case 43:return 56;case 44:return 57;case 45:return 59;case 46:return 60;case 47:return 76;case 48:return 80;case 49:return 81;case 50:this.begin("INITIAL");break;case 51:break;case 52:return 5;case 53:return"INVALID"}},rules:[/^(?:notes\b)/,/^(?:tabstave\b)/,/^(?:stave\b)/,/^(?:voice\b)/,/^(?:options\b)/,/^(?:text\b)/,/^(?:slur\b)/,/^(?:[^\s=]+)/,/^(?:[$])/,/^(?:[$])/,/^(?:[^,$]+)/,/^(?:[!])/,/^(?:[!])/,/^(?:[^!]+)/,/^(?:[^,\r\n]+)/,/^(?:\/)/,/^(?:\+)/,/^(?::)/,/^(?:=)/,/^(?:\()/,/^(?:\))/,/^(?:\[)/,/^(?:\])/,/^(?:\^)/,/^(?:,)/,/^(?:\|)/,/^(?:\.)/,/^(?:#)/,/^(?:@)/,/^(?:[b])/,/^(?:[s])/,/^(?:[h])/,/^(?:[p])/,/^(?:[t])/,/^(?:[T])/,/^(?:[-])/,/^(?:[_])/,/^(?:[v])/,/^(?:[V])/,/^(?:[u])/,/^(?:[d])/,/^(?:[0-9]+)/,/^(?:[q])/,/^(?:[w])/,/^(?:[h])/,/^(?:[d])/,/^(?:[S])/,/^(?:[A-GXLR])/,/^(?:[n])/,/^(?:[~])/,/^(?:[\r\n]+)/,/^(?:\s+)/,/^(?:$)/,/^(?:.)/],conditions:{notes:{rules:[8,11,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53],inclusive:!0},text:{rules:[14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,41,42,43,44,45,50,51,52,53],inclusive:!0},slur:{rules:[15,16,17,18,19,20,21,22,23,24,25,26,27,28,50,51,52,53],inclusive:!0},annotations:{rules:[9,10,15,16,17,18,19,20,21,22,23,24,25,26,27,28,50,51,52,53],inclusive:!0},options:{rules:[7,15,16,17,18,19,20,21,22,23,24,25,26,27,28,50,51,52,53],inclusive:!0},command:{rules:[12,13,15,16,17,18,19,20,21,22,23,24,25,26,27,28,50,51,52,53],inclusive:!0},INITIAL:{rules:[0,1,2,3,4,5,6,7,15,16,17,18,19,20,21,22,23,24,25,26,27,28,50,51,52,53],inclusive:!0}}};function ut(){this.yy={}}return ot.lexer=lt,ut.prototype=ot,ot.Parser=ut,new ut}();e.parser=i,e.Parser=i.Parser,e.parse=function(){return i.parse.apply(i,arguments)},e.main=function(r){r[1]||(console.log("Usage: "+r[0]+" FILE"),t.exit(1));var i=n(9).readFileSync(n(10).normalize(r[1]),"utf8");return e.parser.parse(i)},n.c[n.s]===r&&e.main(t.argv.slice(1))}).call(this,n(6),n(5)(t))},function(t,e){t.exports=function(t){return t.webpackPolyfill||(t.deprecate=function(){},t.paths=[],t.children||(t.children=[]),Object.defineProperty(t,"loaded",{enumerable:!0,get:function(){return t.l}}),Object.defineProperty(t,"id",{enumerable:!0,get:function(){return t.i}}),t.webpackPolyfill=1),t}},function(t,e){var n,r,i=t.exports={};function a(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(t){if(n===setTimeout)return setTimeout(t,0);if((n===a||!n)&&setTimeout)return n=setTimeout,setTimeout(t,0);try{return n(t,0)}catch(e){try{return n.call(null,t,0)}catch(e){return n.call(this,t,0)}}}!function(){try{n="function"==typeof setTimeout?setTimeout:a}catch(t){n=a}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(t){r=o}}();var l,u=[],c=!1,b=-1;function h(){c&&l&&(c=!1,l.length?u=l.concat(u):b=-1,u.length&&f())}function f(){if(!c){var t=s(h);c=!0;for(var e=u.length;e;){for(l=u,u=[];++b1)for(var n=1;n]*>/,d=/^<(\w+)\s*\/?>(?:<\/\1>|)$/,p=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi,m=/^(?:body|html)$/i,v=/([A-Z])/g,y=["val","css","html","text","data","width","height","offset"],g=u.createElement("table"),_=u.createElement("tr"),x={tr:u.createElement("tbody"),tbody:g,thead:g,tfoot:g,td:_,th:_,"*":u.createElement("div")},k=/complete|loaded|interactive/,w=/^[\w-]*$/,S={},T=S.toString,E={},C=u.createElement("div"),A={tabindex:"tabIndex",readonly:"readOnly",for:"htmlFor",class:"className",maxlength:"maxLength",cellspacing:"cellSpacing",cellpadding:"cellPadding",rowspan:"rowSpan",colspan:"colSpan",usemap:"useMap",frameborder:"frameBorder",contenteditable:"contentEditable"},R=Array.isArray||function(t){return t instanceof Array};function F(t){return null==t?String(t):S[T.call(t)]||"object"}function M(t){return"function"==F(t)}function P(t){return null!=t&&t==t.window}function O(t){return null!=t&&t.nodeType==t.DOCUMENT_NODE}function D(t){return"object"==F(t)}function I(t){return D(t)&&!P(t)&&Object.getPrototypeOf(t)==Object.prototype}function N(t){var n=!!t&&"length"in t&&t.length,r=e.type(t);return"function"!=r&&!P(t)&&("array"==r||0===n||"number"==typeof n&&n>0&&n-1 in t)}function L(t){return t.replace(/::/g,"/").replace(/([A-Z]+)([A-Z][a-z])/g,"$1_$2").replace(/([a-z\d])([A-Z])/g,"$1_$2").replace(/_/g,"-").toLowerCase()}function B(t){return t in b?b[t]:b[t]=new RegExp("(^|\\s)"+t+"(\\s|$)")}function z(t,e){return"number"!=typeof e||h[L(t)]?e:e+"px"}function U(t){return"children"in t?l.call(t.children):e.map(t.childNodes,(function(t){if(1==t.nodeType)return t}))}function j(t,e){var n,r=t?t.length:0;for(n=0;n$2>")),void 0===n&&(n=f.test(t)&&RegExp.$1),n in x||(n="*"),(o=x[n]).innerHTML=""+t,i=e.each(l.call(o.childNodes),(function(){o.removeChild(this)}))),I(r)&&(a=e(i),e.each(r,(function(t,e){y.indexOf(t)>-1?a[t](e):a.attr(t,e)}))),i},E.Z=function(t,e){return new j(t,e)},E.isZ=function(t){return t instanceof E.Z},E.init=function(t,n){var r,i;if(!t)return E.Z();if("string"==typeof t)if("<"==(t=t.trim())[0]&&f.test(t))r=E.fragment(t,RegExp.$1,n),t=null;else{if(void 0!==n)return e(n).find(t);r=E.qsa(u,t)}else{if(M(t))return e(u).ready(t);if(E.isZ(t))return t;if(R(t))i=t,r=s.call(i,(function(t){return null!=t}));else if(D(t))r=[t],t=null;else if(f.test(t))r=E.fragment(t.trim(),RegExp.$1,n),t=null;else{if(void 0!==n)return e(n).find(t);r=E.qsa(u,t)}}return E.Z(r,t)},(e=function(t,e){return E.init(t,e)}).extend=function(t){var e,n=l.call(arguments,1);return"boolean"==typeof t&&(e=t,t=n.shift()),n.forEach((function(n){H(t,n,e)})),t},E.qsa=function(t,e){var n,r="#"==e[0],i=!r&&"."==e[0],a=r||i?e.slice(1):e,o=w.test(a);return t.getElementById&&o&&r?(n=t.getElementById(a))?[n]:[]:1!==t.nodeType&&9!==t.nodeType&&11!==t.nodeType?[]:l.call(o&&!r&&t.getElementsByClassName?i?t.getElementsByClassName(a):t.getElementsByTagName(e):t.querySelectorAll(e))},e.contains=u.documentElement.contains?function(t,e){return t!==e&&t.contains(e)}:function(t,e){for(;e&&(e=e.parentNode);)if(e===t)return!0;return!1},e.type=F,e.isFunction=M,e.isWindow=P,e.isArray=R,e.isPlainObject=I,e.isEmptyObject=function(t){var e;for(e in t)return!1;return!0},e.isNumeric=function(t){var e=Number(t),n=typeof t;return null!=t&&"boolean"!=n&&("string"!=n||t.length)&&!isNaN(e)&&isFinite(e)||!1},e.inArray=function(t,e,n){return a.indexOf.call(e,t,n)},e.camelCase=r,e.trim=function(t){return null==t?"":String.prototype.trim.call(t)},e.uuid=0,e.support={},e.expr={},e.noop=function(){},e.map=function(t,n){var r,i,a,o,s=[];if(N(t))for(i=0;i0?e.fn.concat.apply([],o):o},e.each=function(t,e){var n,r;if(N(t)){for(n=0;n=0?t:t+this.length]},toArray:function(){return this.get()},size:function(){return this.length},remove:function(){return this.each((function(){null!=this.parentNode&&this.parentNode.removeChild(this)}))},each:function(t){return a.every.call(this,(function(e,n){return!1!==t.call(e,n,e)})),this},filter:function(t){return M(t)?this.not(this.not(t)):e(s.call(this,(function(e){return E.matches(e,t)})))},add:function(t,n){return e(i(this.concat(e(t,n))))},is:function(t){return this.length>0&&E.matches(this[0],t)},not:function(t){var n=[];if(M(t)&&void 0!==t.call)this.each((function(e){t.call(this,e)||n.push(this)}));else{var r="string"==typeof t?this.filter(t):N(t)&&M(t.item)?l.call(t):e(t);this.forEach((function(t){r.indexOf(t)<0&&n.push(t)}))}return e(n)},has:function(t){return this.filter((function(){return D(t)?e.contains(this,t):e(this).find(t).size()}))},eq:function(t){return-1===t?this.slice(t):this.slice(t,+t+1)},first:function(){var t=this[0];return t&&!D(t)?t:e(t)},last:function(){var t=this[this.length-1];return t&&!D(t)?t:e(t)},find:function(t){var n=this;return t?"object"==typeof t?e(t).filter((function(){var t=this;return a.some.call(n,(function(n){return e.contains(n,t)}))})):1==this.length?e(E.qsa(this[0],t)):this.map((function(){return E.qsa(this,t)})):e()},closest:function(t,n){var r=[],i="object"==typeof t&&e(t);return this.each((function(e,a){for(;a&&!(i?i.indexOf(a)>=0:E.matches(a,t));)a=a!==n&&!O(a)&&a.parentNode;a&&r.indexOf(a)<0&&r.push(a)})),e(r)},parents:function(t){for(var n=[],r=this;r.length>0;)r=e.map(r,(function(t){if((t=t.parentNode)&&!O(t)&&n.indexOf(t)<0)return n.push(t),t}));return W(n,t)},parent:function(t){return W(i(this.pluck("parentNode")),t)},children:function(t){return W(this.map((function(){return U(this)})),t)},contents:function(){return this.map((function(){return this.contentDocument||l.call(this.childNodes)}))},siblings:function(t){return W(this.map((function(t,e){return s.call(U(e.parentNode),(function(t){return t!==e}))})),t)},empty:function(){return this.each((function(){this.innerHTML=""}))},pluck:function(t){return e.map(this,(function(e){return e[t]}))},show:function(){return this.each((function(){var t,e,n;"none"==this.style.display&&(this.style.display=""),"none"==getComputedStyle(this,"").getPropertyValue("display")&&(this.style.display=(t=this.nodeName,c[t]||(e=u.createElement(t),u.body.appendChild(e),n=getComputedStyle(e,"").getPropertyValue("display"),e.parentNode.removeChild(e),"none"==n&&(n="block"),c[t]=n),c[t]))}))},replaceWith:function(t){return this.before(t).remove()},wrap:function(t){var n=M(t);if(this[0]&&!n)var r=e(t).get(0),i=r.parentNode||this.length>1;return this.each((function(a){e(this).wrapAll(n?t.call(this,a):i?r.cloneNode(!0):r)}))},wrapAll:function(t){if(this[0]){var n;for(e(this[0]).before(t=e(t));(n=t.children()).length;)t=n.first();e(t).append(this)}return this},wrapInner:function(t){var n=M(t);return this.each((function(r){var i=e(this),a=i.contents(),o=n?t.call(this,r):t;a.length?a.wrapAll(o):i.append(o)}))},unwrap:function(){return this.parent().each((function(){e(this).replaceWith(e(this).children())})),this},clone:function(){return this.map((function(){return this.cloneNode(!0)}))},hide:function(){return this.css("display","none")},toggle:function(t){return this.each((function(){var n=e(this);(void 0===t?"none"==n.css("display"):t)?n.show():n.hide()}))},prev:function(t){return e(this.pluck("previousElementSibling")).filter(t||"*")},next:function(t){return e(this.pluck("nextElementSibling")).filter(t||"*")},html:function(t){return 0 in arguments?this.each((function(n){var r=this.innerHTML;e(this).empty().append(Y(this,t,n,r))})):0 in this?this[0].innerHTML:null},text:function(t){return 0 in arguments?this.each((function(e){var n=Y(this,t,e,this.textContent);this.textContent=null==n?"":""+n})):0 in this?this.pluck("textContent").join(""):null},attr:function(e,n){var r;return"string"!=typeof e||1 in arguments?this.each((function(r){if(1===this.nodeType)if(D(e))for(t in e)G(this,t,e[t]);else G(this,e,Y(this,n,r,this.getAttribute(e)))})):0 in this&&1==this[0].nodeType&&null!=(r=this[0].getAttribute(e))?r:void 0},removeAttr:function(t){return this.each((function(){1===this.nodeType&&t.split(" ").forEach((function(t){G(this,t)}),this)}))},prop:function(t,e){return t=A[t]||t,1 in arguments?this.each((function(n){this[t]=Y(this,e,n,this[t])})):this[0]&&this[0][t]},removeProp:function(t){return t=A[t]||t,this.each((function(){delete this[t]}))},data:function(t,e){var n="data-"+t.replace(v,"-$1").toLowerCase(),r=1 in arguments?this.attr(n,e):this.attr(n);return null!==r?X(r):void 0},val:function(t){return 0 in arguments?(null==t&&(t=""),this.each((function(e){this.value=Y(this,t,e,this.value)}))):this[0]&&(this[0].multiple?e(this[0]).find("option").filter((function(){return this.selected})).pluck("value"):this[0].value)},offset:function(t){if(t)return this.each((function(n){var r=e(this),i=Y(this,t,n,r.offset()),a=r.offsetParent().offset(),o={top:i.top-a.top,left:i.left-a.left};"static"==r.css("position")&&(o.position="relative"),r.css(o)}));if(!this.length)return null;if(u.documentElement!==this[0]&&!e.contains(u.documentElement,this[0]))return{top:0,left:0};var n=this[0].getBoundingClientRect();return{left:n.left+window.pageXOffset,top:n.top+window.pageYOffset,width:Math.round(n.width),height:Math.round(n.height)}},css:function(n,i){if(arguments.length<2){var a=this[0];if("string"==typeof n){if(!a)return;return a.style[r(n)]||getComputedStyle(a,"").getPropertyValue(n)}if(R(n)){if(!a)return;var o={},s=getComputedStyle(a,"");return e.each(n,(function(t,e){o[e]=a.style[r(e)]||s.getPropertyValue(e)})),o}}var l="";if("string"==F(n))i||0===i?l=L(n)+":"+z(n,i):this.each((function(){this.style.removeProperty(L(n))}));else for(t in n)n[t]||0===n[t]?l+=L(t)+":"+z(t,n[t])+";":this.each((function(){this.style.removeProperty(L(t))}));return this.each((function(){this.style.cssText+=";"+l}))},index:function(t){return t?this.indexOf(e(t)[0]):this.parent().children().indexOf(this[0])},hasClass:function(t){return!!t&&a.some.call(this,(function(t){return this.test(V(t))}),B(t))},addClass:function(t){return t?this.each((function(r){if("className"in this){n=[];var i=V(this);Y(this,t,r,i).split(/\s+/g).forEach((function(t){e(this).hasClass(t)||n.push(t)}),this),n.length&&V(this,i+(i?" ":"")+n.join(" "))}})):this},removeClass:function(t){return this.each((function(e){if("className"in this){if(void 0===t)return V(this,"");n=V(this),Y(this,t,e,n).split(/\s+/g).forEach((function(t){n=n.replace(B(t)," ")})),V(this,n.trim())}}))},toggleClass:function(t,n){return t?this.each((function(r){var i=e(this);Y(this,t,r,V(this)).split(/\s+/g).forEach((function(t){(void 0===n?!i.hasClass(t):n)?i.addClass(t):i.removeClass(t)}))})):this},scrollTop:function(t){if(this.length){var e="scrollTop"in this[0];return void 0===t?e?this[0].scrollTop:this[0].pageYOffset:this.each(e?function(){this.scrollTop=t}:function(){this.scrollTo(this.scrollX,t)})}},scrollLeft:function(t){if(this.length){var e="scrollLeft"in this[0];return void 0===t?e?this[0].scrollLeft:this[0].pageXOffset:this.each(e?function(){this.scrollLeft=t}:function(){this.scrollTo(t,this.scrollY)})}},position:function(){if(this.length){var t=this[0],n=this.offsetParent(),r=this.offset(),i=m.test(n[0].nodeName)?{top:0,left:0}:n.offset();return r.top-=parseFloat(e(t).css("margin-top"))||0,r.left-=parseFloat(e(t).css("margin-left"))||0,i.top+=parseFloat(e(n[0]).css("border-top-width"))||0,i.left+=parseFloat(e(n[0]).css("border-left-width"))||0,{top:r.top-i.top,left:r.left-i.left}}},offsetParent:function(){return this.map((function(){for(var t=this.offsetParent||u.body;t&&!m.test(t.nodeName)&&"static"==e(t).css("position");)t=t.offsetParent;return t}))}},e.fn.detach=e.fn.remove,["width","height"].forEach((function(t){var n=t.replace(/./,(function(t){return t[0].toUpperCase()}));e.fn[t]=function(r){var i,a=this[0];return void 0===r?P(a)?a["inner"+n]:O(a)?a.documentElement["scroll"+n]:(i=this.offset())&&i[t]:this.each((function(n){(a=e(this)).css(t,Y(this,r,n,a[t]()))}))}})),["after","prepend","before","append"].forEach((function(t,n){var r=n%2;e.fn[t]=function(){var t,i,a=e.map(arguments,(function(n){var r=[];return"array"==(t=F(n))?(n.forEach((function(t){return void 0!==t.nodeType?r.push(t):e.zepto.isZ(t)?r=r.concat(t.get()):void(r=r.concat(E.fragment(t)))})),r):"object"==t||null==n?n:E.fragment(n)})),o=this.length>1;return a.length<1?this:this.each((function(t,s){i=r?s:s.parentNode,s=0==n?s.nextSibling:1==n?s.firstChild:2==n?s:null;var l=e.contains(u.documentElement,i);a.forEach((function(t){if(o)t=t.cloneNode(!0);else if(!i)return e(t).remove();i.insertBefore(t,s),l&&K(t,(function(t){if(!(null==t.nodeName||"SCRIPT"!==t.nodeName.toUpperCase()||t.type&&"text/javascript"!==t.type||t.src)){var e=t.ownerDocument?t.ownerDocument.defaultView:window;e.eval.call(e,t.innerHTML)}}))}))}))},e.fn[r?t+"To":"insert"+(n?"Before":"After")]=function(n){return e(n)[t](this),this}})),E.Z.prototype=j.prototype=e.fn,E.uniq=i,E.deserializeValue=X,e.zepto=E,e}(),window.Zepto=n,void 0===window.$&&(window.$=n),t.exports=n,function(t){var e=1,n=Array.prototype.slice,r=t.isFunction,i=function(t){return"string"==typeof t},a={},o={},s="onfocusin"in window,l={focus:"focusin",blur:"focusout"},u={mouseenter:"mouseover",mouseleave:"mouseout"};function c(t){return t._zid||(t._zid=e++)}function b(t,e,n,r){if((e=h(e)).ns)var i=(o=e.ns,new RegExp("(?:^| )"+o.replace(" "," .* ?")+"(?: |$)"));var o;return(a[c(t)]||[]).filter((function(t){return t&&(!e.e||t.e==e.e)&&(!e.ns||i.test(t.ns))&&(!n||c(t.fn)===c(n))&&(!r||t.sel==r)}))}function h(t){var e=(""+t).split(".");return{e:e[0],ns:e.slice(1).sort().join(" ")}}function f(t,e){return t.del&&!s&&t.e in l||!!e}function d(t){return u[t]||s&&l[t]||t}function p(e,n,r,i,o,s,l){var b=c(e),p=a[b]||(a[b]=[]);n.split(/\s/).forEach((function(n){if("ready"==n)return t(document).ready(r);var a=h(n);a.fn=r,a.sel=o,a.e in u&&(r=function(e){var n=e.relatedTarget;if(!n||n!==this&&!t.contains(this,n))return a.fn.apply(this,arguments)}),a.del=s;var c=s||r;a.proxy=function(t){if(!(t=x(t)).isImmediatePropagationStopped()){t.data=i;var n=c.apply(e,null==t._args?[t]:[t].concat(t._args));return!1===n&&(t.preventDefault(),t.stopPropagation()),n}},a.i=p.length,p.push(a),"addEventListener"in e&&e.addEventListener(d(a.e),a.proxy,f(a,l))}))}function m(t,e,n,r,i){var o=c(t);(e||"").split(/\s/).forEach((function(e){b(t,e,n,r).forEach((function(e){delete a[o][e.i],"removeEventListener"in t&&t.removeEventListener(d(e.e),e.proxy,f(e,i))}))}))}o.click=o.mousedown=o.mouseup=o.mousemove="MouseEvents",t.event={add:p,remove:m},t.proxy=function(e,a){var o=2 in arguments&&n.call(arguments,2);if(r(e)){var s=function(){return e.apply(a,o?o.concat(n.call(arguments)):arguments)};return s._zid=c(e),s}if(i(a))return o?(o.unshift(e[a],e),t.proxy.apply(null,o)):t.proxy(e[a],e);throw new TypeError("expected function")},t.fn.bind=function(t,e,n){return this.on(t,e,n)},t.fn.unbind=function(t,e){return this.off(t,e)},t.fn.one=function(t,e,n,r){return this.on(t,e,n,r,1)};var v=function(){return!0},y=function(){return!1},g=/^([A-Z]|returnValue$|layer[XY]$|webkitMovement[XY]$)/,_={preventDefault:"isDefaultPrevented",stopImmediatePropagation:"isImmediatePropagationStopped",stopPropagation:"isPropagationStopped"};function x(e,n){return!n&&e.isDefaultPrevented||(n||(n=e),t.each(_,(function(t,r){var i=n[t];e[t]=function(){return this[r]=v,i&&i.apply(n,arguments)},e[r]=y})),e.timeStamp||(e.timeStamp=Date.now()),(void 0!==n.defaultPrevented?n.defaultPrevented:"returnValue"in n?!1===n.returnValue:n.getPreventDefault&&n.getPreventDefault())&&(e.isDefaultPrevented=v)),e}function k(t){var e,n={originalEvent:t};for(e in t)g.test(e)||void 0===t[e]||(n[e]=t[e]);return x(n,t)}t.fn.delegate=function(t,e,n){return this.on(e,t,n)},t.fn.undelegate=function(t,e,n){return this.off(e,t,n)},t.fn.live=function(e,n){return t(document.body).delegate(this.selector,e,n),this},t.fn.die=function(e,n){return t(document.body).undelegate(this.selector,e,n),this},t.fn.on=function(e,a,o,s,l){var u,c,b=this;return e&&!i(e)?(t.each(e,(function(t,e){b.on(t,a,o,e,l)})),b):(i(a)||r(s)||!1===s||(s=o,o=a,a=void 0),void 0!==s&&!1!==o||(s=o,o=void 0),!1===s&&(s=y),b.each((function(r,i){l&&(u=function(t){return m(i,t.type,s),s.apply(this,arguments)}),a&&(c=function(e){var r,o=t(e.target).closest(a,i).get(0);if(o&&o!==i)return r=t.extend(k(e),{currentTarget:o,liveFired:i}),(u||s).apply(o,[r].concat(n.call(arguments,1)))}),p(i,e,s,o,a,c||u)})))},t.fn.off=function(e,n,a){var o=this;return e&&!i(e)?(t.each(e,(function(t,e){o.off(t,n,e)})),o):(i(n)||r(a)||!1===a||(a=n,n=void 0),!1===a&&(a=y),o.each((function(){m(this,e,a,n)})))},t.fn.trigger=function(e,n){return(e=i(e)||t.isPlainObject(e)?t.Event(e):x(e))._args=n,this.each((function(){e.type in l&&"function"==typeof this[e.type]?this[e.type]():"dispatchEvent"in this?this.dispatchEvent(e):t(this).triggerHandler(e,n)}))},t.fn.triggerHandler=function(e,n){var r,a;return this.each((function(o,s){(r=k(i(e)?t.Event(e):e))._args=n,r.target=s,t.each(b(s,e.type||e),(function(t,e){if(a=e.proxy(r),r.isImmediatePropagationStopped())return!1}))})),a},"focusin focusout focus blur load resize scroll unload click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select keydown keypress keyup error".split(" ").forEach((function(e){t.fn[e]=function(t){return 0 in arguments?this.bind(e,t):this.trigger(e)}})),t.Event=function(t,e){i(t)||(t=(e=t).type);var n=document.createEvent(o[t]||"Events"),r=!0;if(e)for(var a in e)"bubbles"==a?r=!!e[a]:n[a]=e[a];return n.initEvent(t,r,!0),x(n)}}(n),function(t){var e,n,r=+new Date,i=window.document,a=/