diff --git a/assets/index-6a99d0cc.js b/assets/index-5dc5a0ba.js similarity index 99% rename from assets/index-6a99d0cc.js rename to assets/index-5dc5a0ba.js index 8b04424..e90a4d9 100644 --- a/assets/index-6a99d0cc.js +++ b/assets/index-5dc5a0ba.js @@ -3450,7 +3450,7 @@ https://github.com/highlightjs/highlight.js/issues/2277`),ie=P,te=q),H===void 0& `+c.line+" | "+_+` `+f+" | "+t("",l.column-1," ")+t("",w,"^")}else i+=` at `+u}return i},e.buildMessage=function(a,i){var s={literal:function(_){return'"'+l(_.text)+'"'},class:function(_){var E=_.parts.map(function(w){return Array.isArray(w)?c(w[0])+"-"+c(w[1]):c(w)});return"["+(_.inverted?"^":"")+E.join("")+"]"},any:function(){return"any character"},end:function(){return"end of input"},other:function(_){return _.description}};function o(_){return _.charCodeAt(0).toString(16).toUpperCase()}function l(_){return _.replace(/\\/g,"\\\\").replace(/"/g,'\\"').replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(E){return"\\x0"+o(E)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(E){return"\\x"+o(E)})}function c(_){return _.replace(/\\/g,"\\\\").replace(/\]/g,"\\]").replace(/\^/g,"\\^").replace(/-/g,"\\-").replace(/\0/g,"\\0").replace(/\t/g,"\\t").replace(/\n/g,"\\n").replace(/\r/g,"\\r").replace(/[\x00-\x0F]/g,function(E){return"\\x0"+o(E)}).replace(/[\x10-\x1F\x7F-\x9F]/g,function(E){return"\\x"+o(E)})}function u(_){return s[_.type](_)}function m(_){var E=_.map(u),w,I;if(E.sort(),E.length>0){for(w=1,I=1;w",z="[",p="+",S="*",b="%",N="&",L="|",Y="<<",B=">>",Q=/^[' '\t\r\n]/,ee=/^[0-9]/,se=wn(["'"," ","'"," ","\r",` -`],!1,!1),ae=_t("(",!1),re=_t(",",!1),D=_t(")",!1),P=wn([["0","9"]],!1,!1),q=_t(".",!1),H=_t("-",!1),te=_t("/",!1),ie=_t("\\",!1),_e=_t("<",!1),Ce=_t(">",!1),we=_t("[",!1),ve=_t("+",!1),Ie=_t("*",!1),de=_t("%",!1),Pe=_t("&",!1),Ze=_t("|",!1),Ye=_t("<<",!1),st=_t(">>",!1),mt=function(W){return Wq(W.filter(oe=>oe))},Ot=function(){},It=function(W,oe){return Math.floor(Math.random()*(oe-W+1)+W)},gt=function(W,oe){return Math.random()*(oe-W)+W},Nt=function(){return parseFloat(Be())},Lt=function(){return parseInt(Be())},Ln=function(W){return EA(W)},He=function(W,oe){return W/oe},ln=function(W,oe){return Math.pow(2,W/oe)},nt=function(W,oe,me,Oe){var ke=Oe?me/Oe:me;return Math.pow(ke,W/oe)},Xe=function(W,oe){return parseFloat(W.toString()+"."+oe.toString())},Pn=function(W){return W.filter(oe=>oe)},cn=function(W){return zq(W)},hn=function(){return _A(Be())},j=0,be=0,ye=[{line:1,column:1}],xe=0,et=[],Ne={},$t;if("startRule"in i){if(!(i.startRule in l))throw new Error(`Can't start parsing from rule "`+i.startRule+'".');c=l[i.startRule]}function Be(){return a.substring(be,j)}function _t(W,oe){return{type:"literal",text:W,ignoreCase:oe}}function wn(W,oe,me){return{type:"class",parts:W,inverted:oe,ignoreCase:me}}function ot(){return{type:"end"}}function rn(W){var oe=ye[W],me;if(oe)return oe;for(me=W-1;!ye[me];)me--;for(oe=ye[me],oe={line:oe.line,column:oe.column};mexe&&(xe=j,et=[]),et.push(W))}function Jn(W,oe,me){return new e(e.buildMessage(W,oe),W,oe,me)}function oa(){var W,oe,me,Oe=j*17+0,ke=Ne[Oe];if(ke)return j=ke.nextPos,ke.result;if(W=j,oe=[],me=Gr(),me===s&&(me=lr(),me===s&&(me=Qr(),me===s&&(me=an(),me===s&&(me=pt())))),me!==s)for(;me!==s;)oe.push(me),me=Gr(),me===s&&(me=lr(),me===s&&(me=Qr(),me===s&&(me=an(),me===s&&(me=pt()))));else oe=s;return oe!==s&&(be=W,oe=mt(oe)),W=oe,Ne[Oe]={nextPos:j,result:W},W}function pt(){var W,oe,me=j*17+1,Oe=Ne[me];return Oe?(j=Oe.nextPos,Oe.result):(W=j,Q.test(a.charAt(j))?(oe=a.charAt(j),j++):(oe=s,$e(se)),oe!==s&&(be=W,oe=Ot()),W=oe,Ne[me]={nextPos:j,result:W},W)}function lr(){var W,oe=j*17+2,me=Ne[oe];return me?(j=me.nextPos,me.result):(W=Qn(),W===s&&(W=en(),W===s&&(W=Gn(),W===s&&(W=Ja()))),Ne[oe]={nextPos:j,result:W},W)}function Gn(){var W,oe,me,Oe,ke,Ve,Fe=j*17+3,wt=Ne[Fe];return wt?(j=wt.nextPos,wt.result):(W=j,a.charCodeAt(j)===40?(oe=u,j++):(oe=s,$e(ae)),oe!==s?(me=en(),me!==s?(a.charCodeAt(j)===44?(Oe=m,j++):(Oe=s,$e(re)),Oe!==s?(ke=en(),ke!==s?(a.charCodeAt(j)===41?(Ve=f,j++):(Ve=s,$e(D)),Ve!==s?(be=W,W=It(me,ke)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[Fe]={nextPos:j,result:W},W)}function Ja(){var W,oe,me,Oe,ke,Ve,Fe=j*17+4,wt=Ne[Fe];return wt?(j=wt.nextPos,wt.result):(W=j,a.charCodeAt(j)===40?(oe=u,j++):(oe=s,$e(ae)),oe!==s?(me=Qn(),me!==s?(a.charCodeAt(j)===44?(Oe=m,j++):(Oe=s,$e(re)),Oe!==s?(ke=Qn(),ke!==s?(a.charCodeAt(j)===41?(Ve=f,j++):(Ve=s,$e(D)),Ve!==s?(be=W,W=gt(me,ke)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[Fe]={nextPos:j,result:W},W)}function Qn(){var W,oe,me,Oe,ke,Ve,Fe,wt=j*17+5,qn=Ne[wt];if(qn)return j=qn.nextPos,qn.result;if(W=j,oe=j,me=[],ee.test(a.charAt(j))?(Oe=a.charAt(j),j++):(Oe=s,$e(P)),Oe!==s)for(;Oe!==s;)me.push(Oe),ee.test(a.charAt(j))?(Oe=a.charAt(j),j++):(Oe=s,$e(P));else me=s;if(me!==s?(a.charCodeAt(j)===46?(Oe=_,j++):(Oe=s,$e(q)),Oe!==s?(me=[me,Oe],oe=me):(j=oe,oe=s)):(j=oe,oe=s),oe===s){for(oe=j,a.charCodeAt(j)===45?(me=E,j++):(me=s,$e(H)),me===s&&(me=null),Oe=[],ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P));ke!==s;)Oe.push(ke),ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P));if(a.charCodeAt(j)===46?(ke=_,j++):(ke=s,$e(q)),ke!==s){if(Ve=[],ee.test(a.charAt(j))?(Fe=a.charAt(j),j++):(Fe=s,$e(P)),Fe!==s)for(;Fe!==s;)Ve.push(Fe),ee.test(a.charAt(j))?(Fe=a.charAt(j),j++):(Fe=s,$e(P));else Ve=s;Ve!==s?(me=[me,Oe,ke,Ve],oe=me):(j=oe,oe=s)}else j=oe,oe=s;if(oe===s)if(oe=j,a.charCodeAt(j)===46?(me=_,j++):(me=s,$e(q)),me!==s){if(Oe=[],ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P)),ke!==s)for(;ke!==s;)Oe.push(ke),ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P));else Oe=s;Oe!==s?(me=[me,Oe],oe=me):(j=oe,oe=s)}else j=oe,oe=s}return oe!==s&&(be=W,oe=Nt()),W=oe,Ne[wt]={nextPos:j,result:W},W}function en(){var W,oe,me,Oe=j*17+6,ke=Ne[Oe];if(ke)return j=ke.nextPos,ke.result;if(W=j,a.charCodeAt(j)===45?j++:$e(H),oe=[],ee.test(a.charAt(j))?(me=a.charAt(j),j++):(me=s,$e(P)),me!==s)for(;me!==s;)oe.push(me),ee.test(a.charAt(j))?(me=a.charAt(j),j++):(me=s,$e(P));else oe=s;return oe!==s?(be=W,W=Lt()):(j=W,W=s),Ne[Oe]={nextPos:j,result:W},W}function Gr(){var W,oe,me=j*17+7,Oe=Ne[me];return Oe?(j=Oe.nextPos,Oe.result):(W=j,oe=Di(),oe===s&&(oe=Na(),oe===s&&(oe=Ni(),oe===s&&(oe=Rr()))),oe!==s&&(be=W,oe=Ln(oe)),W=oe,Ne[me]={nextPos:j,result:W},W)}function Ni(){var W,oe,me,Oe,ke=j*17+8,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,oe=en(),oe===s&&(oe=Gn()),oe!==s?(a.charCodeAt(j)===47?(me=w,j++):(me=s,$e(te)),me!==s?(Oe=en(),Oe===s&&(Oe=Gn()),Oe!==s?(be=W,W=He(oe,Oe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function Na(){var W,oe,me,Oe,ke=j*17+9,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,oe=en(),oe===s&&(oe=Gn()),oe!==s?(a.charCodeAt(j)===92?(me=I,j++):(me=s,$e(ie)),me!==s?(Oe=en(),Oe===s&&(Oe=Gn()),Oe!==s?(be=W,W=ln(oe,Oe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function Di(){var W,oe,me,Oe,ke,Ve,Fe,wt,qn=j*17+10,cr=Ne[qn];return cr?(j=cr.nextPos,cr.result):(W=j,oe=en(),oe===s&&(oe=Gn()),oe!==s?(a.charCodeAt(j)===92?(me=I,j++):(me=s,$e(ie)),me!==s?(Oe=en(),Oe===s&&(Oe=Gn()),Oe!==s?(a.charCodeAt(j)===60?(ke=k,j++):(ke=s,$e(_e)),ke!==s?(Ve=en(),Ve===s&&(Ve=Gn()),Ve!==s?(a.charCodeAt(j)===47?j++:$e(te),Fe=en(),Fe===s&&(Fe=Gn()),Fe===s&&(Fe=null),a.charCodeAt(j)===62?(wt=$,j++):(wt=s,$e(Ce)),wt!==s?(be=W,W=nt(oe,Oe,Ve,Fe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[qn]={nextPos:j,result:W},W)}function Rr(){var W,oe,me,Oe,ke=j*17+11,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,oe=en(),oe!==s?(a.charCodeAt(j)===44?(me=m,j++):(me=s,$e(re)),me!==s?(Oe=en(),Oe!==s?(be=W,W=Xe(oe,Oe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function Da(){var W,oe,me,Oe=j*17+12,ke=Ne[Oe];if(ke)return j=ke.nextPos,ke.result;if(W=j,oe=[],me=en(),me===s&&(me=pt()),me!==s)for(;me!==s;)oe.push(me),me=en(),me===s&&(me=pt());else oe=s;return oe!==s&&(be=W,oe=Pn(oe)),W=oe,Ne[Oe]={nextPos:j,result:W},W}function Qr(){var W,oe,me,Oe,ke=j*17+13,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,a.charCodeAt(j)===91?(oe=z,j++):(oe=s,$e(we)),oe!==s?(me=Da(),me!==s?(a.charCodeAt(j)===62?(Oe=$,j++):(Oe=s,$e(Ce)),Oe!==s?(be=W,W=cn(me)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function an(){var W,oe,me,Oe,ke,Ve,Fe,wt,qn=j*17+14,cr=Ne[qn];if(cr)return j=cr.nextPos,cr.result;if(W=j,oe=lr(),oe===s&&(oe=Gr(),oe===s&&(oe=Qr(),oe===s)))for(oe=[],me=pt();me!==s;)oe.push(me),me=pt();if(oe!==s){if(me=[],Oe=j,ke=xa(),ke!==s){for(Ve=[],Fe=pt();Fe!==s;)Ve.push(Fe),Fe=pt();if(Fe=lr(),Fe===s&&(Fe=Gr(),Fe===s&&(Fe=Qr(),Fe===s&&(Fe=ka(),Fe===s&&(Fe=an(),Fe===s)))))for(Fe=[],wt=pt();wt!==s;)Fe.push(wt),wt=pt();Fe!==s?(ke=[ke,Ve,Fe],Oe=ke):(j=Oe,Oe=s)}else j=Oe,Oe=s;if(Oe!==s)for(;Oe!==s;)if(me.push(Oe),Oe=j,ke=xa(),ke!==s){for(Ve=[],Fe=pt();Fe!==s;)Ve.push(Fe),Fe=pt();if(Fe=lr(),Fe===s&&(Fe=Gr(),Fe===s&&(Fe=Qr(),Fe===s&&(Fe=ka(),Fe===s&&(Fe=an(),Fe===s)))))for(Fe=[],wt=pt();wt!==s;)Fe.push(wt),wt=pt();Fe!==s?(ke=[ke,Ve,Fe],Oe=ke):(j=Oe,Oe=s)}else j=Oe,Oe=s;else me=s;me!==s?(be=W,W=hn()):(j=W,W=s)}else j=W,W=s;return Ne[qn]={nextPos:j,result:W},W}function xa(){var W,oe=j*17+15,me=Ne[oe];return me?(j=me.nextPos,me.result):(a.charCodeAt(j)===43?(W=p,j++):(W=s,$e(ve)),W===s&&(a.charCodeAt(j)===45?(W=E,j++):(W=s,$e(H)),W===s&&(a.charCodeAt(j)===42?(W=S,j++):(W=s,$e(Ie)),W===s&&(a.charCodeAt(j)===37?(W=b,j++):(W=s,$e(de)),W===s&&(a.charCodeAt(j)===38?(W=N,j++):(W=s,$e(Pe)),W===s&&(a.charCodeAt(j)===124?(W=L,j++):(W=s,$e(Ze)),W===s&&(a.substr(j,2)===Y?(W=Y,j+=2):(W=s,$e(Ye)),W===s&&(a.substr(j,2)===B?(W=B,j+=2):(W=s,$e(st))))))))),Ne[oe]={nextPos:j,result:W},W)}function ka(){var W,oe,me,Oe,ke=j*17+16,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,a.charCodeAt(j)===40?(oe=u,j++):(oe=s,$e(ae)),oe!==s?(me=an(),me!==s?(a.charCodeAt(j)===41?(Oe=f,j++):(Oe=s,$e(D)),Oe!==s?(oe=[oe,me,Oe],W=oe):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}if($t=c(),$t!==s&&j===a.length)return $t;throw $t!==s&&j{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+(t+n)%i+i)%i;return[s,o,l]},Tn=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n)%i+i)%i;return[s,o,l]},nn=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},va=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*n+t)%i+i)%i;return[s,o,l,c]},jn=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},on=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n-(n-t))%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},sr=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*n%i+i)%i;return[s,o,l]},za=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+2*t%i+i)%i;return[s,o,l]},Un=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+2*t%i+i)%i,c=(r+3*t%i+i)%i;return[s,o,l,c]},ra=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*n+t)%i+i)%i;return[s,o,l,c]},aa=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*n%i+i)%i,c=(r+(2*n+t)%i+i)%i;return[s,o,l,c]},or=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*n%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},Yr=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*t%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},ge=(r,e=12)=>{const t=[];for(let n=0;n{const[,,t]=e;r.sort((a,i)=>a-i);const n=[...r];return Math.abs(r[1]-r[0])===t&&(r[0]=n[1],r[1]=n[2],r[2]=n[0]),Math.abs(r[2]-r[1])===t&&(r[0]=n[2],r[1]=n[0],r[2]=n[1]),r},at=(r,e)=>r.length!==e.length?!1:r.map((a,i)=>a===e[i]).every(a=>a===!0),it=(r,e)=>r.length!==e.length?!1:r.map((a,i)=>a===e[i]).every(a=>a===!0),AQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),c=[...Ka(o,e)];return c[1]%i!==(c[0]+n)%i?c[1]-=s:c[1]+=s,ge(c,i)},wQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=n-a,o=ge(r),c=[...Ka(o,e)];return c[1]%i!==(c[0]+n)%i?c[2]-=s:c[0]+=s,ge(c,i)},IQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-a,o=ge(r),c=[...Ka(o,e)];return c[1]%i!==(c[0]+n)%i?c[0]+=s:c[2]-=s,ge(c,i)},NQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t+n,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},DQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=a,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},xQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=n-t,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},kQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=2*n,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},MQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=2*t,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=vn(l[0]+s,e):l=Tn(l[0]-s,e),ge(l,i)},LQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,vn(s[0],e)),l=it(s,za(s[0],e));if(o===l)return s;let c=[...s];return o?c=za(c[0]+(n-t),e):c=vn(c[0]-(n-t),e),ge(c,i)},PQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0]+(n-t),e):c=sr(c[0]-(n-t),e),ge(c,i)},BQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,vn(s[0],e));if(o===l)return s;let c=[...s];return o?c=vn(c[0]+n,e):c=sr(c[0]-n,e),ge(c,i)},YQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0]+a,e):c=sr(c[0]-a,e),ge(c,i)},FQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,vn(s[0],e)),l=it(s,sr(s[0],e));if(o===l)return s;let c=[...s];return o?c=sr(c[0]+n,e):c=vn(c[0]-n,e),ge(c,i)},UQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,za(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0],e):c=za(c[0],e),ge(c,i)},$Q=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0]-t,e):c=sr(c[0]+t,e),ge(c,i)},GQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,vn(s[0],e));if(o===l)return s;let c=[...s];return o?c=vn(c[0],e):c=sr(c[0],e),ge(c,i)},QQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,vn(s[0],e)),l=it(s,za(s[0],e));if(o===l)return s;let c=[...s];return o?c=za(c[0]+n,e):c=vn(c[0]-n,e),ge(c,i)},qQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Tn(s[0],e)),l=it(s,za(s[0],e));if(o===l)return s;let c=[...s];return o?c=za(c[0]-t,e):c=Tn(c[0]+t,e),ge(c,i)},VQ={M:vn,maj:vn,m:Tn,min:Tn,7:nn,maj7:va,m7:jn,hdim7:on,aug:sr,augmented:sr,diminished:za,dim7:Un,minMaj7:ra,maj7aug5:aa,dom7aug5:or,dom7b5:Yr},HQ=(r,e,t=[3,4,5])=>VQ[e](r,t),zQ={p:AQ,l:wQ,r:IQ,f:NQ,n:DQ,s:xQ,h:kQ,t:MQ,p32:UQ,p41:GQ,lt13:QQ,l41:BQ,l14:FQ,rt23:qQ,rt42:$Q,q13:LQ,q42:PQ,n42:YQ},WQ=(r,e,t=[3,4,5])=>{const n=e.split("");if(n.length===0)return;let a=[...r];for(let i=0;i{const[,n]=e,a=[];for(let i=0;i{const[n]=e,a=[];for(let i=0;i{const[,n]=e,a=[];for(let i=0;i{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,jn(o[0],e));if(l===c)return o;const u=[...o];return u[1]%i!==(u[0]+n)%i?u[1]-=s:u[1]+=s,ge(u,i)},JQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,va(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+(2*n+t))%i?u[3]-=s:u[3]+=s,ge(u,i)},eq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,jn(o[0],e)),c=it(o,on(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+(t+n))%i?u[2]-=s:u[2]+=s,ge(u,i)},tq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,on(o[0],e)),c=it(o,Un(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+(2*t+n))%i?u[3]-=s:u[3]+=s,ge(u,i)},nq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]-t,e):c=nn(c[0]+t,e),ge(c,i)},rq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,jn(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]-t,e):c=jn(c[0]+t,e),ge(c,i)},aq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,va(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]-t,e):c=va(c[0]+t,e),ge(c,i)},iq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,on(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]-t,e):c=on(c[0]+t,e),ge(c,i)},sq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Un(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]-t,e):c=Un(c[0]+t,e),ge(c,i)},oq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]+n,e):c=nn(c[0]-n,e),ge(c,i)},lq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]+n,e):c=nn(c[0]-n,e),ge(c,i)},cq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,va(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]+n,e):c=va(c[0]-n,e),ge(c,i)},uq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,va(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]+(n-t),e):c=va(c[0]-(n-t),e),ge(c,i)},dq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]+(n-t),e):c=nn(c[0]-(n-t),e),ge(c,i)},mq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,on(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]+2*t,e):c=on(c[0]-2*t,e),ge(c,i)},hq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Un(s[0],e)),l=it(s,nn(s[0],e));if(o===l)return s;let c=[...s];return o?c=nn(c[0]+(a-t),e):c=Un(c[0]-(a-t),e),ge(c,i)},pq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Un(s[0],e)),l=it(s,nn(s[0],e));if(o===l)return s;let c=[...s];return o?c=nn(c[0]+a,e):c=Un(c[0]-a,e),ge(c,i)},fq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,or(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+t+n)%i?u[2]+=s:u[2]-=s,ge(u,i)},gq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,Yr(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+t+n)%i?u[2]-=s:u[2]+=s,ge(u,i)},_q=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,jn(o[0],e)),c=it(o,ra(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+2*t+n)%i?u[3]+=s:u[3]-=s,ge(u,i)},bq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,on(o[0],e)),c=it(o,Yr(o[0],e));if(l===c)return o;const u=[...o];return u[1]%i!==(u[0]+n)%i?u[1]-=s:u[1]+=s,ge(u,i)},Sq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,va(o[0],e)),c=it(o,aa(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+t+n)%i?u[2]+=s:u[2]-=s,ge(u,i)},Oq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,ra(o[0],e)),c=it(o,va(o[0],e));if(l===c)return o;const u=[...o];return u[1]%i!==(u[0]+n)%i?u[1]-=s:u[1]+=s,ge(u,i)},Eq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,or(o[0],e)),c=it(o,aa(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+2*t+n)%i?u[3]+=s:u[3]-=s,ge(u,i)},vq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=a-t,o=ge(r),l=at(o,Yr(o[0],e)),c=it(o,or(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+2*t)%i?u[2]-=s:u[2]+=s,ge(u,i)},Tq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,ra(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]-t,e):c=ra(c[0]+t,e),ge(c,i)},yq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,ra(s[0],e));if(o===l)return s;let c=[...s];return o?c=ra(c[0]-t,e):c=aa(c[0]+t,e),ge(c,i)},Rq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,or(s[0],e)),l=it(s,ra(s[0],e));if(o===l)return s;let c=[...s];return o?c=ra(c[0]-t,e):c=or(c[0]+t,e),ge(c,i)},Cq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,nn(s[0],e));if(o===l)return s;let c=[...s];return o?c=nn(c[0]+n,e):c=aa(c[0]-n,e),ge(c,i)},Aq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,or(s[0],e)),l=it(s,Yr(s[0],e));if(o===l)return s;let c=[...s];return o?c=Yr(c[0]+n,e):c=or(c[0]-n,e),ge(c,i)},wq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]+(n-t),e):c=aa(c[0]-(n-t),e),ge(c,i)},Iq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,ra(s[0],e));if(o===l)return s;let c=[...s];return o?c=ra(c[0]+(n-t),e):c=aa(c[0]-(n-t),e),ge(c,i)},Nq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,Yr(s[0],e));if(o===l)return s;let c=[...s];return o?c=Yr(c[0]+2*t,e):c=nn(c[0]-2*t,e),ge(c,i)},Dq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Yr(s[0],e)),l=it(s,or(s[0],e));if(o===l)return s;let c=[...s];return o?c=or(c[0]+2*t,e):c=Yr(c[0]-2*t,e),ge(c,i)},xq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,on(s[0],e)),l=it(s,or(s[0],e));if(o===l)return s;let c=[...s];return o?c=or(c[0]+(a-t),e):c=on(c[0]-(a-t),e),ge(c,i)},kq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Yr(s[0],e)),l=it(s,or(s[0],e));if(o===l)return s;let c=[...s];return o?c=or(c[0]+(a-t),e):c=Yr(c[0]-(a-t),e),ge(c,i)},Mq={p12:jQ,p14:JQ,p23:eq,p35:tq,r12:nq,r23:rq,r42:aq,r35:iq,r53:sq,l13:oq,l15:lq,l42:cq,q43:uq,q15:dq,rr35:mq,qq51:hq,n51:pq,p18:fq,p19:gq,p26:_q,p39:bq,p47:Sq,p64:Oq,p87:Eq,p98:vq,r63:Tq,r76:yq,r86:Rq,l71:Cq,l89:Aq,q62:wq,q76:Iq,rr19:Nq,rr98:Dq,qq38:xq,qq98:kq},Lq=(r,e,t=[3,4,5])=>{const n=e.match(/([a-z]{1,2}[0-9]*)/g);if(!n||n&&n.length<1)return;let a=[...r];for(let i=0;i{if(Object.prototype.hasOwnProperty.call(this,i)){const s=this[i];(s||s===0)&&(a[i]=this[i])}return a},{})}mapExisting(t,n){return t.reduce((i,s,o)=>{if(Object.prototype.hasOwnProperty.call(this,s)){const l=this[s];(l||l===0)&&(i[n[o]]=this[s])}return i},{})}};class On extends fo{constructor(t){super(t);A(this,"pitch");A(this,"originalPitch");A(this,"add");A(this,"freq");A(this,"note");A(this,"octave");A(this,"pitchOctave");A(this,"bend");A(this,"key");A(this,"parsedScale");A(this,"scaleName");Object.assign(this,t)}refresh(){this.evaluate()}evaluate(t={}){const n=Oa(this);if(n.duration||(n.duration=t.duration||t.duration===0?t.duration:O1),t.scale&&(typeof t.scale=="string"&&n.scaleName!==t.scale&&(n.scaleName=t.scale,n.originalPitch&&(n.pitch=n.originalPitch)),n.parsedScale=ya(t.scale)),t.key&&(n.key=t.key),(t.soundIndex||t.soundIndex===0)&&(typeof t.soundIndex!="number"?n.soundIndex=t.soundIndex.evaluateValue():n.soundIndex=t.soundIndex),t.sound&&(typeof t.sound!="string"?n.sound=t.sound.evaluateValue():n.sound=t.sound),n.pitch||n.pitch===0){n.pitch instanceof Du&&(n.pitch=n.pitch.evaluateValue()),n.parsedScale&&n.pitch>=n.parsedScale.length&&(n.originalPitch=n.pitch,n.pitchOctave=Math.floor(n.pitch/n.parsedScale.length),n.pitch=n.pitch%n.parsedScale.length),(t.octave||n.pitchOctave)&&(n.octave=(t.octave||0)+(n.pitchOctave||0));const[a,i]=E1(n.key,n.pitch,n.parsedScale,n.octave);n.note=n.add?a+n.add:a,n.freq=lo(n.note),i&&(n.bend=i)}return n.soundIndex instanceof Du&&(n.soundIndex=n.soundIndex.evaluateValue()),n}collect(t){return this[t]}scale(t){return this.scaleName!==t?(this.scaleName=t,this.parsedScale=Ha(t),this.evaluate()):this}randomScale(){return this.parsedScale=TQ(),this.evaluate()}tonnetzChord(t,n=[3,4,5]){const i=HQ(this.note,t,n).map(s=>{const o=s+(typeof this.key=="number"?s:$r(this.key))+(this.octave||0)*12,l=es(o,this.key,this.scaleName);return new On({note:o,duration:this.duration,key:this.key,parsedScale:this.parsedScale,scaleName:this.scaleName,pitch:l.pc,octave:(this.octave||0)+l.octave,add:l.add,text:l.text})});return new Dn({pitches:i,duration:this.duration})}}class Bq extends On{constructor(e){super(e),Object.assign(this,e)}evaluateValue(){return this.sound}}let Yq=class extends fo{constructor(t){super(t);A(this,"item");Object.assign(this,t)}evaluate(t){let n=this.sound;return t?t.sound=n:t={sound:n},this.item.evaluate(t)}};class Fq extends fo{constructor(t){super(t);A(this,"item");Object.assign(this,t)}evaluate(t){return t?t.soundIndex=this.soundIndex:t={soundIndex:this.soundIndex},this.item.evaluate(t)}}class Dn extends fo{constructor(t){super(t);A(this,"pitches");A(this,"chordName");A(this,"inversion");A(this,"key");A(this,"scaleName");A(this,"parsedScale");Object.assign(this,t),this.pitches&&this.pitches.length>0&&(this.duration=Math.max(...this.pitches.map(n=>n.duration)))}static fromPitchClassArray(t,n,a){const i=t.map(s=>new On({pitch:s,key:n,scaleName:a,parsedScale:ya(a)}));return new Dn({pitches:i})}evaluate(t={}){const n=Oa(this);return t.scale&&(typeof t.scale=="string"&&(n.scaleName=t.scale),n.parsedScale=ya(t.scale)),t.inversion||n.inversion?n.pitches=n.invert(t.inversion||n.inversion,t):n.pitches=n.pitches.map(a=>a.evaluate(t)),n.duration=Math.max(...n.pitches.map(a=>a.duration)),n}collect(t){return this.pitches.map(a=>a.collect(t))}notes(){return this.pitches.map(t=>t.note)}freqs(){return this.pitches.map(t=>t.freq)}pcs(){return this.pitches.map(t=>t.pitch)}midiChord(){return this.pitches.map(n=>n.mapExisting(["note","soundIndex"],["note","channel"]))}scale(t){return this.scaleName!==t?(this.scaleName=t,this.parsedScale=Ha(t),this.evaluate()):(this.pitches.forEach(n=>n.scale(t)),this)}invert(t,n={}){const a=t<0?this.pitches.reverse():this.pitches;for(let i=0;ii.evaluate(n))}voiceLeadFromNotes(t,n){this.pitches=this.pitches.map((a,i)=>{if(t[i]){const s=es(t[i],n.key,n.scaleName),o=Oa(a);return o.pitch=s.pc,o.octave=s.octave,o.add=s.add,o.text=s.text,o.note=t[i],o.freq=lo(t[i]),o}else return Oa(a)})}triadTonnetz(t,n=[3,4,5]){const a=this.notes();return a.length===3?t.split(" ").map(o=>{var m;const l=(m=WQ(a,o,n))==null?void 0:m.sort((f,_)=>f-_);if(!l)return this;const c=this.pitches[0].parsedScale;return new Dn({pitches:l.map(f=>{const _=es(f,this.key,this.scaleName);return new On({pitch:_.pc,add:_.add,duration:this.duration,key:this.key,scaleName:this.scaleName,parsedScale:c})})}).evaluate()}):this}tetraTonnetz(t,n=[3,4,5]){const a=this.notes();return a.length===4?t.split(" ").map(o=>{var m;const l=(m=Lq(a,o,n))==null?void 0:m.sort((f,_)=>f-_);if(!l)return this;const c=this.pitches[0].parsedScale;return new Dn({pitches:l.map(f=>{const _=es(f,this.key,this.scaleName);return new On({pitch:_.pc,add:_.add,duration:this.duration,key:this.key,scaleName:this.scaleName,parsedScale:c})})}).evaluate()}):this}}class Uq extends Dn{constructor(t){super(t);A(this,"roman");A(this,"romanNumeral");A(this,"octave");A(this,"chordOctave");Object.assign(this,t)}evaluate(t={}){const n=Oa(this);n.romanNumeral=rV(n.roman);const a=n.key||t.key||60,i=n.scaleName||t.scale||"MAJOR";typeof i=="string"&&(n.scaleName=t.scale);const s=ya(i);let o=(n.chordOctave||0)+(t.octave||0);const c=(n.chordName?td(n.romanNumeral,n.chordName,a,i,o):tV(n.romanNumeral,i,a,o)).map(u=>es(u,a,i));if(n.pitches=c.map(u=>{const m=o+u.octave;return new On({pitch:u.pc,octave:m,key:a,parsedScale:s,add:u.add,duration:this.duration}).evaluate(t)}),t.inversion||n.inversion){const u=t.inversion||n.inversion;n.pitches=n.invert(u,t)}return n.duration=Math.max(...n.pitches.map(u=>u.duration)),n}}class Kg extends fo{constructor(e){super(e)}evaluate(e={}){return this.duration||(this.duration=e.duration||e.duration===0?e.duration:O1),this}}class Du extends On{constructor(t){super(t);A(this,"min");A(this,"max");A(this,"randomSeed");A(this,"seededRandom");A(this,"random");Object.assign(this,t),t.min||(this.min=0),t.max||(this.max=Xq(this.parsedScale)),this.seededRandom?this.random=this.seededRandom:this.random=Math.random}evaluate(t={}){this.pitch=this.evaluateValue();const n=new On(this).evaluate(t);return n.type="Pitch",n.text=n.pitch.toString(),n}evaluateValue(){return Math.floor(this.random()*(this.max-this.min+1))+this.min}}class $q extends Ta{constructor(t){super(t);A(this,"octave");Object.assign(this,t)}evaluate(t={}){t.octave=this.octave+(t.octave||0)}}class Gq extends Ta{constructor(t){super(t);A(this,"duration");Object.assign(this,t)}evaluate(t={}){t.duration=this.duration}}class gv extends Ta{constructor(t){super(t);A(this,"times");A(this,"item");Object.assign(this,t)}evaluate(t={}){return[...Array(this.times)].map(()=>this.item).flat(1/0).map(a=>a.evaluate(t))}}class _v extends Ta{constructor(t){super(t);A(this,"items");Object.assign(this,t)}evaluate(t={}){return this.items.map(n=>n.evaluate(t))}}class OA extends Ta{constructor(t){super(t);A(this,"duration");A(this,"items");A(this,"evaluated");Object.assign(this,t)}evaluate(t={}){return t.subdivisions=!0,this.duration=t.duration||O1,this.evaluated=this.items.map(n=>n.evaluate(t)).filter(n=>n).flat(1/0),this}}class Qq extends Ta{constructor(t){super(t);A(this,"times");A(this,"items");Object.assign(this,t)}evaluate(t={}){const n=this.items.map(i=>i.evaluate(t));return[...Array(this.times)].map(()=>n).flat(1/0)}}class qq extends Ta{constructor(t){super(t);A(this,"left");A(this,"right");A(this,"operation");Object.assign(this,t)}evaluate(t={}){this.left.evaluate(t),this.right.evaluate(t);const n=fQ[this.operation];return this.right.items.flatMap(s=>this.left.items.map(o=>[s.clone(),o.clone()])).map(s=>(s[0].pitch=n(s[0].pitch,s[1].pitch),s[0].evaluate(t)))}}class dl extends fo{constructor(t){super(t);A(this,"items");A(this,"index");Object.assign(this,t),this.items=this.items.filter(n=>n!==void 0),this.index=0}nextItem(t={}){let n=this.items[this.index%this.items.length];for(;n instanceof dl;)n=n.nextItem(t);return this.index=this.index+1,n instanceof Ta?n.evaluate(t):n}evaluate(t={}){return this.nextItem(t)}evaluateValue(t={}){const n=this.nextItem(t);return n instanceof Ta?n.evaluateValue():n}}const E1=(r,e,t,n=0,a=0,i=!1)=>{e=i&&e>0?e-1:e,r=typeof r=="string"?$r(r):r;const s=typeof t=="string"?Ha(t):t,o=s.length;(e>=o||e<0)&&(n+=Math.floor(e/o),e=e<0?o-Math.abs(e)%o:e%o,e===o&&(e=0));let l=r+s.slice(0,e).reduce((c,u)=>c+u,0);return l=l+n*s.reduce((c,u)=>c+u,0)+a,Number.isInteger(l)?[l,void 0]:Zg(l)},$r=(r,e=4)=>{const t=r.match(/^([a-gA-G])([#bs])?([1-9])?$/);if(t===null)return 60;const[,n,a,i]=t,s=i?parseInt(i,10):e,o=OQ[a]||0,l=bQ[n.toUpperCase()];return 12+s*12+l+o},Zg=(r,e=1)=>{let t=8192;if(r%1!==0){const n=r>Math.round(r)?r:Math.round(r),a=r>Math.round(r)?Math.round(r):r,i=lo(n)/lo(a),s=1200*Math.log2(i);t=t+Math.floor(8191*(s/(100*e)))}return[r,t]},lo=r=>440/32*2**((r-9)/12),bv=r=>12/Math.log(2)*Math.log(r/440)+69,EA=r=>1200*Math.log2(r),Vq=function*(){var t;const r={};let e=2;for(;;){if(!(e in r))yield e,r[e*e]=[e];else{for(const n of r[e])(r[t=n+e]||(r[t]=[])).push(n);delete r[e]}e++}},Hq=r=>{const e=Vq();return Array.from({length:r},()=>e.next().value)},zq=r=>{const e=r.length,t=Hq(e+1);let n=1;for(let a=0;a{r[0]!==0&&(r=[0,...r]);const e=[];for(let t=0;ttypeof r=="string"?Ha(r).length:r.length,vA=r=>[0,...r].reduce((e,t,n)=>{const a=n===0?0:t+e[n-1];return[...e,a]},[]),Kq=r=>{const e=(t,n)=>{const a=(n-t)%12;return a<0?a+12:a};return r.map((t,n)=>e(t,r[(n+1)%r.length]))},Zq=r=>((r<0||r>4095)&&(console.log("Input number must be odd and between 0 and 4095. Using major (2741) instead."),r=2741),r%2===0&&console.log("Even numbers doesnt create a 'real' scale"),(r>>>0).toString(2).padStart(12,"0").split("").reduce((t,n,a)=>n==="1"?[11-a,...t]:t,[])),jq=r=>{try{return SA(r)}catch{return[]}},ya=r=>{if(typeof r=="string"){if(gA(r))return Ha(r);{const e=jq(r);return e&&e.length>0?e:Ha("MAJOR")}}else if(typeof r=="number")return Kq(Zq(r));return r},td=(r,e="major",t=60,n="CHROMATIC",a=1)=>{const i=fv[e]||fv.major;t=typeof t=="string"?$r(t):t;const s=v1(n,t)[r-1],o=[];for(let l=0;l<=a;l++)for(const c of i)o.push(s+c+l*12);return o},Jq=(r="major",e=60,t="MAJOR",n=1,a)=>{const i=td(1,r,e,"CHROMATIC",n),s=typeof t=="string"?Ha(t):t;return i.map(l=>{const c=es(l,e,t);return new On({text:c.text,note:l,pitch:c.pc,octave:c.octave,add:c.add,duration:a,scaleName:t,parsedScale:s,key:e})})},v1=(r,e=60,t=1)=>{const n=ya(r);let a=typeof e=="string"?$r(e):e;const i=[a];for(let s=0;s{const a=ya(r),i=[];let s=typeof e=="string"?$r(e,0):e;for(let o=0;o<9;o++)for(const l of a)s+=l,i.push(s);return i.filter(o=>o>=t&&o<=n)},tV=(r,e="MAJOR",t=60,n=1,a=void 0)=>{const i=typeof t=="string"?$r(t):t;return!a&&typeof e=="string"&&e.toUpperCase()==="CHROMATIC"&&(a="major"),a?td(r,a,i,e,n):nV(r,i,e)},nV=(r,e=60,t="Major",n=3,a=2)=>{const i=typeof t=="string"?yQ(t):t.length,s=Math.floor((n*a+r-1)/i)+1,o=v1(t,e,s),l=[];for(let c=r-1;l.length{const e=r.match(/([a-gA-G][#bs]?)([0-9])?([a-zA-Z0-9]+)/);if(e===null)return[60,64,67];let[,t,n,a]=e;const i=$r(t),s=n?parseInt(n,10):0;return td(1,a,i,"CHROMATIC",s)},rV=r=>r.split("").map(t=>EQ[t]).reduce((t,n,a,i)=>a(pv.includes(r)||(r=RA($r(r))),pv.indexOf(r)-6),RA=r=>SQ[r%12],aV=r=>{const e=RA(r);return yA(e)},iV=(r,e)=>{let t;return typeof e=="string"?t=yA(e[0]):t=aV(e),(r*7+26-(11+t))%12+(11+t)},sV=(r,e=60)=>r<=0?0:Math.floor((r-e)/12),es=(r,e=60,t="MAJOR")=>{function n(m){return m>0?"^".repeat(m):m<0?"_".repeat(Math.abs(m)):""}const a=typeof e=="number"?e:$r(e),i=CQ(r-a,12),s=sV(r,a);if(typeof t=="string"&&t.toUpperCase()==="CHROMATIC")return{text:i.toString(),pc:i,octave:s,add:0};const o=["0","#0","1","#1","2","3","#3","4","#4","5","#5","6"],l=["0","b1","1","b2","2","3","b4","4","b5","5","b6","6"],c=iV(r,e);let u;if(c>=6&&c<=12&&l[i].length===2?u=l[i]:u=o[i],u.length>1){const m=u[0]==="#"?1:-1;return{text:n(s)+u,pc:parseInt(u[1]),octave:s,add:m}}return{text:n(s)+u,pc:parseInt(u),octave:s,add:0}},oV=(r,e,t)=>{const n=$r(r);return es(n,e,t)},jg=(r,e)=>r.map(t=>e+t%12).sort((t,n)=>t-n),lV=(r,e)=>{const t=r[0],n=jg(r,t),a=jg(e,t);return n.map((i,s)=>a[s]?a[s]-i:void 0)},cV=(r,e)=>{const t=r[0],n=r.map(s=>[s,jg(r,t).indexOf(t+s%12)]),a=lV(r,e);return n.map(([s,o])=>a[o]?s+a[o]:s)};function uV(r){const e=[];for(let n=1;n<12;n++){let a=r;if(r&1<i?a:(i-=a.length,s+=s.repeat(i),a+s.slice(0,i))}e.prototype.format=function(a){var i="Error: "+this.message;if(this.location){var s=null,o;for(o=0;o",!1),we=_t("[",!1),ve=_t("+",!1),Ie=_t("*",!1),de=_t("%",!1),Pe=_t("&",!1),Ze=_t("|",!1),Ye=_t("<<",!1),st=_t(">>",!1),mt=function(W){return Wq(W.filter(oe=>oe))},Ot=function(){},It=function(W,oe){return Math.floor(Math.random()*(oe-W+1)+W)},gt=function(W,oe){return Math.random()*(oe-W)+W},Nt=function(){return parseFloat(Be())},Lt=function(){return parseInt(Be())},Ln=function(W){return EA(W)},He=function(W,oe){return W/oe},ln=function(W,oe){return Math.pow(2,W/oe)},nt=function(W,oe,me,Oe){var ke=Oe?me/Oe:me;return Math.pow(ke,W/oe)},Xe=function(W,oe){return parseFloat(W.toString()+"."+oe.toString())},Pn=function(W){return W.filter(oe=>oe)},cn=function(W){return zq(W)},hn=function(){return _A(Be())},j=0,be=0,ye=[{line:1,column:1}],xe=0,et=[],Ne={},$t;if("startRule"in i){if(!(i.startRule in l))throw new Error(`Can't start parsing from rule "`+i.startRule+'".');c=l[i.startRule]}function Be(){return a.substring(be,j)}function _t(W,oe){return{type:"literal",text:W,ignoreCase:oe}}function wn(W,oe,me){return{type:"class",parts:W,inverted:oe,ignoreCase:me}}function ot(){return{type:"end"}}function rn(W){var oe=ye[W],me;if(oe)return oe;for(me=W-1;!ye[me];)me--;for(oe=ye[me],oe={line:oe.line,column:oe.column};mexe&&(xe=j,et=[]),et.push(W))}function Jn(W,oe,me){return new e(e.buildMessage(W,oe),W,oe,me)}function oa(){var W,oe,me,Oe=j*17+0,ke=Ne[Oe];if(ke)return j=ke.nextPos,ke.result;if(W=j,oe=[],me=Gr(),me===s&&(me=lr(),me===s&&(me=Qr(),me===s&&(me=an(),me===s&&(me=pt())))),me!==s)for(;me!==s;)oe.push(me),me=Gr(),me===s&&(me=lr(),me===s&&(me=Qr(),me===s&&(me=an(),me===s&&(me=pt()))));else oe=s;return oe!==s&&(be=W,oe=mt(oe)),W=oe,Ne[Oe]={nextPos:j,result:W},W}function pt(){var W,oe,me=j*17+1,Oe=Ne[me];return Oe?(j=Oe.nextPos,Oe.result):(W=j,Q.test(a.charAt(j))?(oe=a.charAt(j),j++):(oe=s,$e(se)),oe!==s&&(be=W,oe=Ot()),W=oe,Ne[me]={nextPos:j,result:W},W)}function lr(){var W,oe=j*17+2,me=Ne[oe];return me?(j=me.nextPos,me.result):(W=Qn(),W===s&&(W=en(),W===s&&(W=Gn(),W===s&&(W=Ja()))),Ne[oe]={nextPos:j,result:W},W)}function Gn(){var W,oe,me,Oe,ke,Ve,Fe=j*17+3,wt=Ne[Fe];return wt?(j=wt.nextPos,wt.result):(W=j,a.charCodeAt(j)===40?(oe=u,j++):(oe=s,$e(ae)),oe!==s?(me=en(),me!==s?(a.charCodeAt(j)===44?(Oe=m,j++):(Oe=s,$e(re)),Oe!==s?(ke=en(),ke!==s?(a.charCodeAt(j)===41?(Ve=f,j++):(Ve=s,$e(D)),Ve!==s?(be=W,W=It(me,ke)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[Fe]={nextPos:j,result:W},W)}function Ja(){var W,oe,me,Oe,ke,Ve,Fe=j*17+4,wt=Ne[Fe];return wt?(j=wt.nextPos,wt.result):(W=j,a.charCodeAt(j)===40?(oe=u,j++):(oe=s,$e(ae)),oe!==s?(me=Qn(),me!==s?(a.charCodeAt(j)===44?(Oe=m,j++):(Oe=s,$e(re)),Oe!==s?(ke=Qn(),ke!==s?(a.charCodeAt(j)===41?(Ve=f,j++):(Ve=s,$e(D)),Ve!==s?(be=W,W=gt(me,ke)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[Fe]={nextPos:j,result:W},W)}function Qn(){var W,oe,me,Oe,ke,Ve,Fe,wt=j*17+5,qn=Ne[wt];if(qn)return j=qn.nextPos,qn.result;if(W=j,oe=j,me=[],ee.test(a.charAt(j))?(Oe=a.charAt(j),j++):(Oe=s,$e(P)),Oe!==s)for(;Oe!==s;)me.push(Oe),ee.test(a.charAt(j))?(Oe=a.charAt(j),j++):(Oe=s,$e(P));else me=s;if(me!==s?(a.charCodeAt(j)===46?(Oe=_,j++):(Oe=s,$e(q)),Oe!==s?(me=[me,Oe],oe=me):(j=oe,oe=s)):(j=oe,oe=s),oe===s){for(oe=j,a.charCodeAt(j)===45?(me=E,j++):(me=s,$e(H)),me===s&&(me=null),Oe=[],ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P));ke!==s;)Oe.push(ke),ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P));if(a.charCodeAt(j)===46?(ke=_,j++):(ke=s,$e(q)),ke!==s){if(Ve=[],ee.test(a.charAt(j))?(Fe=a.charAt(j),j++):(Fe=s,$e(P)),Fe!==s)for(;Fe!==s;)Ve.push(Fe),ee.test(a.charAt(j))?(Fe=a.charAt(j),j++):(Fe=s,$e(P));else Ve=s;Ve!==s?(me=[me,Oe,ke,Ve],oe=me):(j=oe,oe=s)}else j=oe,oe=s;if(oe===s)if(oe=j,a.charCodeAt(j)===46?(me=_,j++):(me=s,$e(q)),me!==s){if(Oe=[],ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P)),ke!==s)for(;ke!==s;)Oe.push(ke),ee.test(a.charAt(j))?(ke=a.charAt(j),j++):(ke=s,$e(P));else Oe=s;Oe!==s?(me=[me,Oe],oe=me):(j=oe,oe=s)}else j=oe,oe=s}return oe!==s&&(be=W,oe=Nt()),W=oe,Ne[wt]={nextPos:j,result:W},W}function en(){var W,oe,me,Oe=j*17+6,ke=Ne[Oe];if(ke)return j=ke.nextPos,ke.result;if(W=j,a.charCodeAt(j)===45?j++:$e(H),oe=[],ee.test(a.charAt(j))?(me=a.charAt(j),j++):(me=s,$e(P)),me!==s)for(;me!==s;)oe.push(me),ee.test(a.charAt(j))?(me=a.charAt(j),j++):(me=s,$e(P));else oe=s;return oe!==s?(be=W,W=Lt()):(j=W,W=s),Ne[Oe]={nextPos:j,result:W},W}function Gr(){var W,oe,me=j*17+7,Oe=Ne[me];return Oe?(j=Oe.nextPos,Oe.result):(W=j,oe=Di(),oe===s&&(oe=Na(),oe===s&&(oe=Ni(),oe===s&&(oe=Rr()))),oe!==s&&(be=W,oe=Ln(oe)),W=oe,Ne[me]={nextPos:j,result:W},W)}function Ni(){var W,oe,me,Oe,ke=j*17+8,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,oe=en(),oe===s&&(oe=Gn()),oe!==s?(a.charCodeAt(j)===47?(me=w,j++):(me=s,$e(te)),me!==s?(Oe=en(),Oe===s&&(Oe=Gn()),Oe!==s?(be=W,W=He(oe,Oe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function Na(){var W,oe,me,Oe,ke=j*17+9,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,oe=en(),oe===s&&(oe=Gn()),oe!==s?(a.charCodeAt(j)===92?(me=I,j++):(me=s,$e(ie)),me!==s?(Oe=en(),Oe===s&&(Oe=Gn()),Oe!==s?(be=W,W=ln(oe,Oe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function Di(){var W,oe,me,Oe,ke,Ve,Fe,wt,qn=j*17+10,cr=Ne[qn];return cr?(j=cr.nextPos,cr.result):(W=j,oe=en(),oe===s&&(oe=Gn()),oe!==s?(a.charCodeAt(j)===92?(me=I,j++):(me=s,$e(ie)),me!==s?(Oe=en(),Oe===s&&(Oe=Gn()),Oe!==s?(a.charCodeAt(j)===60?(ke=k,j++):(ke=s,$e(_e)),ke!==s?(Ve=en(),Ve===s&&(Ve=Gn()),Ve!==s?(a.charCodeAt(j)===47?j++:$e(te),Fe=en(),Fe===s&&(Fe=Gn()),Fe===s&&(Fe=null),a.charCodeAt(j)===62?(wt=$,j++):(wt=s,$e(Ce)),wt!==s?(be=W,W=nt(oe,Oe,Ve,Fe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[qn]={nextPos:j,result:W},W)}function Rr(){var W,oe,me,Oe,ke=j*17+11,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,oe=en(),oe!==s?(a.charCodeAt(j)===44?(me=m,j++):(me=s,$e(re)),me!==s?(Oe=en(),Oe!==s?(be=W,W=Xe(oe,Oe)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function Da(){var W,oe,me,Oe=j*17+12,ke=Ne[Oe];if(ke)return j=ke.nextPos,ke.result;if(W=j,oe=[],me=en(),me===s&&(me=pt()),me!==s)for(;me!==s;)oe.push(me),me=en(),me===s&&(me=pt());else oe=s;return oe!==s&&(be=W,oe=Pn(oe)),W=oe,Ne[Oe]={nextPos:j,result:W},W}function Qr(){var W,oe,me,Oe,ke=j*17+13,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,a.charCodeAt(j)===91?(oe=z,j++):(oe=s,$e(we)),oe!==s?(me=Da(),me!==s?(a.charCodeAt(j)===62?(Oe=$,j++):(Oe=s,$e(Ce)),Oe!==s?(be=W,W=cn(me)):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}function an(){var W,oe,me,Oe,ke,Ve,Fe,wt,qn=j*17+14,cr=Ne[qn];if(cr)return j=cr.nextPos,cr.result;if(W=j,oe=lr(),oe===s&&(oe=Gr(),oe===s&&(oe=Qr(),oe===s)))for(oe=[],me=pt();me!==s;)oe.push(me),me=pt();if(oe!==s){if(me=[],Oe=j,ke=xa(),ke!==s){for(Ve=[],Fe=pt();Fe!==s;)Ve.push(Fe),Fe=pt();if(Fe=lr(),Fe===s&&(Fe=Gr(),Fe===s&&(Fe=Qr(),Fe===s&&(Fe=ka(),Fe===s&&(Fe=an(),Fe===s)))))for(Fe=[],wt=pt();wt!==s;)Fe.push(wt),wt=pt();Fe!==s?(ke=[ke,Ve,Fe],Oe=ke):(j=Oe,Oe=s)}else j=Oe,Oe=s;if(Oe!==s)for(;Oe!==s;)if(me.push(Oe),Oe=j,ke=xa(),ke!==s){for(Ve=[],Fe=pt();Fe!==s;)Ve.push(Fe),Fe=pt();if(Fe=lr(),Fe===s&&(Fe=Gr(),Fe===s&&(Fe=Qr(),Fe===s&&(Fe=ka(),Fe===s&&(Fe=an(),Fe===s)))))for(Fe=[],wt=pt();wt!==s;)Fe.push(wt),wt=pt();Fe!==s?(ke=[ke,Ve,Fe],Oe=ke):(j=Oe,Oe=s)}else j=Oe,Oe=s;else me=s;me!==s?(be=W,W=hn()):(j=W,W=s)}else j=W,W=s;return Ne[qn]={nextPos:j,result:W},W}function xa(){var W,oe=j*17+15,me=Ne[oe];return me?(j=me.nextPos,me.result):(a.charCodeAt(j)===43?(W=p,j++):(W=s,$e(ve)),W===s&&(a.charCodeAt(j)===45?(W=E,j++):(W=s,$e(H)),W===s&&(a.charCodeAt(j)===42?(W=S,j++):(W=s,$e(Ie)),W===s&&(a.charCodeAt(j)===37?(W=b,j++):(W=s,$e(de)),W===s&&(a.charCodeAt(j)===38?(W=N,j++):(W=s,$e(Pe)),W===s&&(a.charCodeAt(j)===124?(W=L,j++):(W=s,$e(Ze)),W===s&&(a.substr(j,2)===Y?(W=Y,j+=2):(W=s,$e(Ye)),W===s&&(a.substr(j,2)===B?(W=B,j+=2):(W=s,$e(st))))))))),Ne[oe]={nextPos:j,result:W},W)}function ka(){var W,oe,me,Oe,ke=j*17+16,Ve=Ne[ke];return Ve?(j=Ve.nextPos,Ve.result):(W=j,a.charCodeAt(j)===40?(oe=u,j++):(oe=s,$e(ae)),oe!==s?(me=an(),me!==s?(a.charCodeAt(j)===41?(Oe=f,j++):(Oe=s,$e(D)),Oe!==s?(oe=[oe,me,Oe],W=oe):(j=W,W=s)):(j=W,W=s)):(j=W,W=s),Ne[ke]={nextPos:j,result:W},W)}if($t=c(),$t!==s&&j===a.length)return $t;throw $t!==s&&j{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+(t+n)%i+i)%i;return[s,o,l]},Tn=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n)%i+i)%i;return[s,o,l]},nn=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},va=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*n+t)%i+i)%i;return[s,o,l,c]},jn=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},on=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n-(n-t))%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},sr=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*n%i+i)%i;return[s,o,l]},za=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+2*t%i+i)%i;return[s,o,l]},Un=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+2*t%i+i)%i,c=(r+3*t%i+i)%i;return[s,o,l,c]},ra=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+t%i+i)%i,l=(r+(t+n)%i+i)%i,c=(r+(2*n+t)%i+i)%i;return[s,o,l,c]},aa=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*n%i+i)%i,c=(r+(2*n+t)%i+i)%i;return[s,o,l,c]},or=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*n%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},Yr=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=(r%i+i)%i,o=(r+n%i+i)%i,l=(r+2*t%i+i)%i,c=(r+(2*t+n)%i+i)%i;return[s,o,l,c]},ge=(r,e=12)=>{const t=[];for(let n=0;n{const[,,t]=e;r.sort((a,i)=>a-i);const n=[...r];return Math.abs(r[1]-r[0])===t&&(r[0]=n[1],r[1]=n[2],r[2]=n[0]),Math.abs(r[2]-r[1])===t&&(r[0]=n[2],r[1]=n[0],r[2]=n[1]),r},at=(r,e)=>r.length!==e.length?!1:r.map((a,i)=>a===e[i]).every(a=>a===!0),it=(r,e)=>r.length!==e.length?!1:r.map((a,i)=>a===e[i]).every(a=>a===!0),AQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),c=[...Ka(o,e)];return c[1]%i!==(c[0]+n)%i?c[1]-=s:c[1]+=s,ge(c,i)},wQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=n-a,o=ge(r),c=[...Ka(o,e)];return c[1]%i!==(c[0]+n)%i?c[2]-=s:c[0]+=s,ge(c,i)},IQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-a,o=ge(r),c=[...Ka(o,e)];return c[1]%i!==(c[0]+n)%i?c[0]+=s:c[2]-=s,ge(c,i)},NQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t+n,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},DQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=a,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},xQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=n-t,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},kQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=2*n,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=Tn(l[0]+s,e):l=vn(l[0]-s,e),ge(l,i)},MQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=2*t,o=ge(r);let l=Ka(o,e);return l[1]%i===(l[0]+n)%i?l=vn(l[0]+s,e):l=Tn(l[0]-s,e),ge(l,i)},LQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,vn(s[0],e)),l=it(s,za(s[0],e));if(o===l)return s;let c=[...s];return o?c=za(c[0]+(n-t),e):c=vn(c[0]-(n-t),e),ge(c,i)},PQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0]+(n-t),e):c=sr(c[0]-(n-t),e),ge(c,i)},BQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,vn(s[0],e));if(o===l)return s;let c=[...s];return o?c=vn(c[0]+n,e):c=sr(c[0]-n,e),ge(c,i)},YQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0]+a,e):c=sr(c[0]-a,e),ge(c,i)},FQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,vn(s[0],e)),l=it(s,sr(s[0],e));if(o===l)return s;let c=[...s];return o?c=sr(c[0]+n,e):c=vn(c[0]-n,e),ge(c,i)},UQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,za(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0],e):c=za(c[0],e),ge(c,i)},$Q=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,Tn(s[0],e));if(o===l)return s;let c=[...s];return o?c=Tn(c[0]-t,e):c=sr(c[0]+t,e),ge(c,i)},GQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,sr(s[0],e)),l=it(s,vn(s[0],e));if(o===l)return s;let c=[...s];return o?c=vn(c[0],e):c=sr(c[0],e),ge(c,i)},QQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,vn(s[0],e)),l=it(s,za(s[0],e));if(o===l)return s;let c=[...s];return o?c=za(c[0]+n,e):c=vn(c[0]-n,e),ge(c,i)},qQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Tn(s[0],e)),l=it(s,za(s[0],e));if(o===l)return s;let c=[...s];return o?c=za(c[0]-t,e):c=Tn(c[0]+t,e),ge(c,i)},VQ={M:vn,maj:vn,m:Tn,min:Tn,7:nn,maj7:va,m7:jn,hdim7:on,aug:sr,augmented:sr,diminished:za,dim7:Un,minMaj7:ra,maj7aug5:aa,dom7aug5:or,dom7b5:Yr},HQ=(r,e,t=[3,4,5])=>VQ[e](r,t),zQ={p:AQ,l:wQ,r:IQ,f:NQ,n:DQ,s:xQ,h:kQ,t:MQ,p32:UQ,p41:GQ,lt13:QQ,l41:BQ,l14:FQ,rt23:qQ,rt42:$Q,q13:LQ,q42:PQ,n42:YQ},WQ=(r,e,t=[3,4,5])=>{const n=e.split("");if(n.length===0)return;let a=[...r];for(let i=0;i{const[,n]=e,a=[];for(let i=0;i{const[n]=e,a=[];for(let i=0;i{const[,n]=e,a=[];for(let i=0;i{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,jn(o[0],e));if(l===c)return o;const u=[...o];return u[1]%i!==(u[0]+n)%i?u[1]-=s:u[1]+=s,ge(u,i)},JQ=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,va(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+(2*n+t))%i?u[3]-=s:u[3]+=s,ge(u,i)},eq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,jn(o[0],e)),c=it(o,on(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+(t+n))%i?u[2]-=s:u[2]+=s,ge(u,i)},tq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,on(o[0],e)),c=it(o,Un(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+(2*t+n))%i?u[3]-=s:u[3]+=s,ge(u,i)},nq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]-t,e):c=nn(c[0]+t,e),ge(c,i)},rq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,jn(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]-t,e):c=jn(c[0]+t,e),ge(c,i)},aq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,va(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]-t,e):c=va(c[0]+t,e),ge(c,i)},iq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,on(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]-t,e):c=on(c[0]+t,e),ge(c,i)},sq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Un(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]-t,e):c=Un(c[0]+t,e),ge(c,i)},oq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]+n,e):c=nn(c[0]-n,e),ge(c,i)},lq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]+n,e):c=nn(c[0]-n,e),ge(c,i)},cq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,va(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]+n,e):c=va(c[0]-n,e),ge(c,i)},uq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,va(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]+(n-t),e):c=va(c[0]-(n-t),e),ge(c,i)},dq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]+(n-t),e):c=nn(c[0]-(n-t),e),ge(c,i)},mq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,on(s[0],e)),l=it(s,Un(s[0],e));if(o===l)return s;let c=[...s];return o?c=Un(c[0]+2*t,e):c=on(c[0]-2*t,e),ge(c,i)},hq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Un(s[0],e)),l=it(s,nn(s[0],e));if(o===l)return s;let c=[...s];return o?c=nn(c[0]+(a-t),e):c=Un(c[0]-(a-t),e),ge(c,i)},pq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Un(s[0],e)),l=it(s,nn(s[0],e));if(o===l)return s;let c=[...s];return o?c=nn(c[0]+a,e):c=Un(c[0]-a,e),ge(c,i)},fq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,or(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+t+n)%i?u[2]+=s:u[2]-=s,ge(u,i)},gq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,nn(o[0],e)),c=it(o,Yr(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+t+n)%i?u[2]-=s:u[2]+=s,ge(u,i)},_q=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,jn(o[0],e)),c=it(o,ra(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+2*t+n)%i?u[3]+=s:u[3]-=s,ge(u,i)},bq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,on(o[0],e)),c=it(o,Yr(o[0],e));if(l===c)return o;const u=[...o];return u[1]%i!==(u[0]+n)%i?u[1]-=s:u[1]+=s,ge(u,i)},Sq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,va(o[0],e)),c=it(o,aa(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+t+n)%i?u[2]+=s:u[2]-=s,ge(u,i)},Oq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,ra(o[0],e)),c=it(o,va(o[0],e));if(l===c)return o;const u=[...o];return u[1]%i!==(u[0]+n)%i?u[1]-=s:u[1]+=s,ge(u,i)},Eq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=t-n,o=ge(r),l=at(o,or(o[0],e)),c=it(o,aa(o[0],e));if(l===c)return o;const u=[...o];return u[3]%i!==(u[0]+2*t+n)%i?u[3]+=s:u[3]-=s,ge(u,i)},vq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=a-t,o=ge(r),l=at(o,Yr(o[0],e)),c=it(o,or(o[0],e));if(l===c)return o;const u=[...o];return u[2]%i!==(u[0]+2*t)%i?u[2]-=s:u[2]+=s,ge(u,i)},Tq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,ra(s[0],e)),l=it(s,on(s[0],e));if(o===l)return s;let c=[...s];return o?c=on(c[0]-t,e):c=ra(c[0]+t,e),ge(c,i)},yq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,ra(s[0],e));if(o===l)return s;let c=[...s];return o?c=ra(c[0]-t,e):c=aa(c[0]+t,e),ge(c,i)},Rq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,or(s[0],e)),l=it(s,ra(s[0],e));if(o===l)return s;let c=[...s];return o?c=ra(c[0]-t,e):c=or(c[0]+t,e),ge(c,i)},Cq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,nn(s[0],e));if(o===l)return s;let c=[...s];return o?c=nn(c[0]+n,e):c=aa(c[0]-n,e),ge(c,i)},Aq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,or(s[0],e)),l=it(s,Yr(s[0],e));if(o===l)return s;let c=[...s];return o?c=Yr(c[0]+n,e):c=or(c[0]-n,e),ge(c,i)},wq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,jn(s[0],e));if(o===l)return s;let c=[...s];return o?c=jn(c[0]+(n-t),e):c=aa(c[0]-(n-t),e),ge(c,i)},Iq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,aa(s[0],e)),l=it(s,ra(s[0],e));if(o===l)return s;let c=[...s];return o?c=ra(c[0]+(n-t),e):c=aa(c[0]-(n-t),e),ge(c,i)},Nq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,nn(s[0],e)),l=it(s,Yr(s[0],e));if(o===l)return s;let c=[...s];return o?c=Yr(c[0]+2*t,e):c=nn(c[0]-2*t,e),ge(c,i)},Dq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Yr(s[0],e)),l=it(s,or(s[0],e));if(o===l)return s;let c=[...s];return o?c=or(c[0]+2*t,e):c=Yr(c[0]-2*t,e),ge(c,i)},xq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,on(s[0],e)),l=it(s,or(s[0],e));if(o===l)return s;let c=[...s];return o?c=or(c[0]+(a-t),e):c=on(c[0]-(a-t),e),ge(c,i)},kq=(r,e)=>{const[t,n,a]=e,i=t+n+a,s=ge(r),o=at(s,Yr(s[0],e)),l=it(s,or(s[0],e));if(o===l)return s;let c=[...s];return o?c=or(c[0]+(a-t),e):c=Yr(c[0]-(a-t),e),ge(c,i)},Mq={p12:jQ,p14:JQ,p23:eq,p35:tq,r12:nq,r23:rq,r42:aq,r35:iq,r53:sq,l13:oq,l15:lq,l42:cq,q43:uq,q15:dq,rr35:mq,qq51:hq,n51:pq,p18:fq,p19:gq,p26:_q,p39:bq,p47:Sq,p64:Oq,p87:Eq,p98:vq,r63:Tq,r76:yq,r86:Rq,l71:Cq,l89:Aq,q62:wq,q76:Iq,rr19:Nq,rr98:Dq,qq38:xq,qq98:kq},Lq=(r,e,t=[3,4,5])=>{const n=e.match(/([a-z]{1,2}[0-9]*)/g);if(!n||n&&n.length<1)return;let a=[...r];for(let i=0;i{if(Object.prototype.hasOwnProperty.call(this,i)){const s=this[i];(s||s===0)&&(a[i]=this[i])}return a},{})}mapExisting(t,n){return t.reduce((i,s,o)=>{if(Object.prototype.hasOwnProperty.call(this,s)){const l=this[s];(l||l===0)&&(i[n[o]]=this[s])}return i},{})}};class On extends fo{constructor(t){super(t);A(this,"pitch");A(this,"originalPitch");A(this,"add");A(this,"freq");A(this,"note");A(this,"octave");A(this,"pitchOctave");A(this,"bend");A(this,"key");A(this,"parsedScale");A(this,"scaleName");Object.assign(this,t)}refresh(){this.evaluate()}evaluate(t={}){const n=Oa(this);if(n.duration||(n.duration=t.duration||t.duration===0?t.duration:O1),t.scale&&(typeof t.scale=="string"&&n.scaleName!==t.scale&&(n.scaleName=t.scale,n.originalPitch&&(n.pitch=n.originalPitch,n.pitchOctave=0,n.octave=0)),n.parsedScale=ya(t.scale)),t.key&&(n.key=t.key),(t.soundIndex||t.soundIndex===0)&&(typeof t.soundIndex!="number"?n.soundIndex=t.soundIndex.evaluateValue():n.soundIndex=t.soundIndex),t.sound&&(typeof t.sound!="string"?n.sound=t.sound.evaluateValue():n.sound=t.sound),n.pitch||n.pitch===0){n.pitch instanceof Du&&(n.pitch=n.pitch.evaluateValue()),n.parsedScale&&n.pitch>=n.parsedScale.length&&(n.originalPitch=n.pitch,n.pitchOctave=Math.floor(n.pitch/n.parsedScale.length),n.pitch=n.pitch%n.parsedScale.length),(t.octave||n.pitchOctave)&&(n.octave=(t.octave||0)+(n.pitchOctave||0));const[a,i]=E1(n.key,n.pitch,n.parsedScale,n.octave);n.note=n.add?a+n.add:a,n.freq=lo(n.note),i&&(n.bend=i)}return n.soundIndex instanceof Du&&(n.soundIndex=n.soundIndex.evaluateValue()),n}collect(t){return this[t]}scale(t){return this.scaleName!==t?(this.scaleName=t,this.parsedScale=Ha(t),this.evaluate()):this}randomScale(){return this.parsedScale=TQ(),this.evaluate()}tonnetzChord(t,n=[3,4,5]){const i=HQ(this.note,t,n).map(s=>{const o=s+(typeof this.key=="number"?s:$r(this.key))+(this.octave||0)*12,l=es(o,this.key,this.scaleName);return new On({note:o,duration:this.duration,key:this.key,parsedScale:this.parsedScale,scaleName:this.scaleName,pitch:l.pc,octave:(this.octave||0)+l.octave,add:l.add,text:l.text})});return new Dn({pitches:i,duration:this.duration})}}class Bq extends On{constructor(e){super(e),Object.assign(this,e)}evaluateValue(){return this.sound}}let Yq=class extends fo{constructor(t){super(t);A(this,"item");Object.assign(this,t)}evaluate(t){let n=this.sound;return t?t.sound=n:t={sound:n},this.item.evaluate(t)}};class Fq extends fo{constructor(t){super(t);A(this,"item");Object.assign(this,t)}evaluate(t){return t?t.soundIndex=this.soundIndex:t={soundIndex:this.soundIndex},this.item.evaluate(t)}}class Dn extends fo{constructor(t){super(t);A(this,"pitches");A(this,"chordName");A(this,"inversion");A(this,"key");A(this,"scaleName");A(this,"parsedScale");Object.assign(this,t),this.pitches&&this.pitches.length>0&&(this.duration=Math.max(...this.pitches.map(n=>n.duration)))}static fromPitchClassArray(t,n,a){const i=t.map(s=>new On({pitch:s,key:n,scaleName:a,parsedScale:ya(a)}));return new Dn({pitches:i})}evaluate(t={}){const n=Oa(this);return t.scale&&(typeof t.scale=="string"&&(n.scaleName=t.scale),n.parsedScale=ya(t.scale)),t.inversion||n.inversion?n.pitches=n.invert(t.inversion||n.inversion,t):n.pitches=n.pitches.map(a=>a.evaluate(t)),n.duration=Math.max(...n.pitches.map(a=>a.duration)),n}collect(t){return this.pitches.map(a=>a.collect(t))}notes(){return this.pitches.map(t=>t.note)}freqs(){return this.pitches.map(t=>t.freq)}pcs(){return this.pitches.map(t=>t.pitch)}midiChord(){return this.pitches.map(n=>n.mapExisting(["note","soundIndex"],["note","channel"]))}scale(t){return this.scaleName!==t?(this.scaleName=t,this.parsedScale=Ha(t),this.evaluate()):(this.pitches.forEach(n=>n.scale(t)),this)}invert(t,n={}){const a=t<0?this.pitches.reverse():this.pitches;for(let i=0;ii.evaluate(n))}voiceLeadFromNotes(t,n){this.pitches=this.pitches.map((a,i)=>{if(t[i]){const s=es(t[i],n.key,n.scaleName),o=Oa(a);return o.pitch=s.pc,o.octave=s.octave,o.add=s.add,o.text=s.text,o.note=t[i],o.freq=lo(t[i]),o}else return Oa(a)})}triadTonnetz(t,n=[3,4,5]){const a=this.notes();return a.length===3?t.split(" ").map(o=>{var m;const l=(m=WQ(a,o,n))==null?void 0:m.sort((f,_)=>f-_);if(!l)return this;const c=this.pitches[0].parsedScale;return new Dn({pitches:l.map(f=>{const _=es(f,this.key,this.scaleName);return new On({pitch:_.pc,add:_.add,duration:this.duration,key:this.key,scaleName:this.scaleName,parsedScale:c})})}).evaluate()}):this}tetraTonnetz(t,n=[3,4,5]){const a=this.notes();return a.length===4?t.split(" ").map(o=>{var m;const l=(m=Lq(a,o,n))==null?void 0:m.sort((f,_)=>f-_);if(!l)return this;const c=this.pitches[0].parsedScale;return new Dn({pitches:l.map(f=>{const _=es(f,this.key,this.scaleName);return new On({pitch:_.pc,add:_.add,duration:this.duration,key:this.key,scaleName:this.scaleName,parsedScale:c})})}).evaluate()}):this}}class Uq extends Dn{constructor(t){super(t);A(this,"roman");A(this,"romanNumeral");A(this,"octave");A(this,"chordOctave");Object.assign(this,t)}evaluate(t={}){const n=Oa(this);n.romanNumeral=rV(n.roman);const a=n.key||t.key||60,i=n.scaleName||t.scale||"MAJOR";typeof i=="string"&&(n.scaleName=t.scale);const s=ya(i);let o=(n.chordOctave||0)+(t.octave||0);const c=(n.chordName?td(n.romanNumeral,n.chordName,a,i,o):tV(n.romanNumeral,i,a,o)).map(u=>es(u,a,i));if(n.pitches=c.map(u=>{const m=o+u.octave;return new On({pitch:u.pc,octave:m,key:a,parsedScale:s,add:u.add,duration:this.duration}).evaluate(t)}),t.inversion||n.inversion){const u=t.inversion||n.inversion;n.pitches=n.invert(u,t)}return n.duration=Math.max(...n.pitches.map(u=>u.duration)),n}}class Kg extends fo{constructor(e){super(e)}evaluate(e={}){return this.duration||(this.duration=e.duration||e.duration===0?e.duration:O1),this}}class Du extends On{constructor(t){super(t);A(this,"min");A(this,"max");A(this,"randomSeed");A(this,"seededRandom");A(this,"random");Object.assign(this,t),t.min||(this.min=0),t.max||(this.max=Xq(this.parsedScale)),this.seededRandom?this.random=this.seededRandom:this.random=Math.random}evaluate(t={}){this.pitch=this.evaluateValue();const n=new On(this).evaluate(t);return n.type="Pitch",n.text=n.pitch.toString(),n}evaluateValue(){return Math.floor(this.random()*(this.max-this.min+1))+this.min}}class $q extends Ta{constructor(t){super(t);A(this,"octave");Object.assign(this,t)}evaluate(t={}){t.octave=this.octave+(t.octave||0)}}class Gq extends Ta{constructor(t){super(t);A(this,"duration");Object.assign(this,t)}evaluate(t={}){t.duration=this.duration}}class gv extends Ta{constructor(t){super(t);A(this,"times");A(this,"item");Object.assign(this,t)}evaluate(t={}){return[...Array(this.times)].map(()=>this.item).flat(1/0).map(a=>a.evaluate(t))}}class _v extends Ta{constructor(t){super(t);A(this,"items");Object.assign(this,t)}evaluate(t={}){return this.items.map(n=>n.evaluate(t))}}class OA extends Ta{constructor(t){super(t);A(this,"duration");A(this,"items");A(this,"evaluated");Object.assign(this,t)}evaluate(t={}){return t.subdivisions=!0,this.duration=t.duration||O1,this.evaluated=this.items.map(n=>n.evaluate(t)).filter(n=>n).flat(1/0),this}}class Qq extends Ta{constructor(t){super(t);A(this,"times");A(this,"items");Object.assign(this,t)}evaluate(t={}){const n=this.items.map(i=>i.evaluate(t));return[...Array(this.times)].map(()=>n).flat(1/0)}}class qq extends Ta{constructor(t){super(t);A(this,"left");A(this,"right");A(this,"operation");Object.assign(this,t)}evaluate(t={}){this.left.evaluate(t),this.right.evaluate(t);const n=fQ[this.operation];return this.right.items.flatMap(s=>this.left.items.map(o=>[s.clone(),o.clone()])).map(s=>(s[0].pitch=n(s[0].pitch,s[1].pitch),s[0].evaluate(t)))}}class dl extends fo{constructor(t){super(t);A(this,"items");A(this,"index");Object.assign(this,t),this.items=this.items.filter(n=>n!==void 0),this.index=0}nextItem(t={}){let n=this.items[this.index%this.items.length];for(;n instanceof dl;)n=n.nextItem(t);return this.index=this.index+1,n instanceof Ta?n.evaluate(t):n}evaluate(t={}){return this.nextItem(t)}evaluateValue(t={}){const n=this.nextItem(t);return n instanceof Ta?n.evaluateValue():n}}const E1=(r,e,t,n=0,a=0,i=!1)=>{e=i&&e>0?e-1:e,r=typeof r=="string"?$r(r):r;const s=typeof t=="string"?Ha(t):t,o=s.length;(e>=o||e<0)&&(n+=Math.floor(e/o),e=e<0?o-Math.abs(e)%o:e%o,e===o&&(e=0));let l=r+s.slice(0,e).reduce((c,u)=>c+u,0);return l=l+n*s.reduce((c,u)=>c+u,0)+a,Number.isInteger(l)?[l,void 0]:Zg(l)},$r=(r,e=4)=>{const t=r.match(/^([a-gA-G])([#bs])?([1-9])?$/);if(t===null)return 60;const[,n,a,i]=t,s=i?parseInt(i,10):e,o=OQ[a]||0,l=bQ[n.toUpperCase()];return 12+s*12+l+o},Zg=(r,e=1)=>{let t=8192;if(r%1!==0){const n=r>Math.round(r)?r:Math.round(r),a=r>Math.round(r)?Math.round(r):r,i=lo(n)/lo(a),s=1200*Math.log2(i);t=t+Math.floor(8191*(s/(100*e)))}return[r,t]},lo=r=>440/32*2**((r-9)/12),bv=r=>12/Math.log(2)*Math.log(r/440)+69,EA=r=>1200*Math.log2(r),Vq=function*(){var t;const r={};let e=2;for(;;){if(!(e in r))yield e,r[e*e]=[e];else{for(const n of r[e])(r[t=n+e]||(r[t]=[])).push(n);delete r[e]}e++}},Hq=r=>{const e=Vq();return Array.from({length:r},()=>e.next().value)},zq=r=>{const e=r.length,t=Hq(e+1);let n=1;for(let a=0;a{r[0]!==0&&(r=[0,...r]);const e=[];for(let t=0;ttypeof r=="string"?Ha(r).length:r.length,vA=r=>[0,...r].reduce((e,t,n)=>{const a=n===0?0:t+e[n-1];return[...e,a]},[]),Kq=r=>{const e=(t,n)=>{const a=(n-t)%12;return a<0?a+12:a};return r.map((t,n)=>e(t,r[(n+1)%r.length]))},Zq=r=>((r<0||r>4095)&&(console.log("Input number must be odd and between 0 and 4095. Using major (2741) instead."),r=2741),r%2===0&&console.log("Even numbers doesnt create a 'real' scale"),(r>>>0).toString(2).padStart(12,"0").split("").reduce((t,n,a)=>n==="1"?[11-a,...t]:t,[])),jq=r=>{try{return SA(r)}catch{return[]}},ya=r=>{if(typeof r=="string"){if(gA(r))return Ha(r);{const e=jq(r);return e&&e.length>0?e:Ha("MAJOR")}}else if(typeof r=="number")return Kq(Zq(r));return r},td=(r,e="major",t=60,n="CHROMATIC",a=1)=>{const i=fv[e]||fv.major;t=typeof t=="string"?$r(t):t;const s=v1(n,t)[r-1],o=[];for(let l=0;l<=a;l++)for(const c of i)o.push(s+c+l*12);return o},Jq=(r="major",e=60,t="MAJOR",n=1,a)=>{const i=td(1,r,e,"CHROMATIC",n),s=typeof t=="string"?Ha(t):t;return i.map(l=>{const c=es(l,e,t);return new On({text:c.text,note:l,pitch:c.pc,octave:c.octave,add:c.add,duration:a,scaleName:t,parsedScale:s,key:e})})},v1=(r,e=60,t=1)=>{const n=ya(r);let a=typeof e=="string"?$r(e):e;const i=[a];for(let s=0;s{const a=ya(r),i=[];let s=typeof e=="string"?$r(e,0):e;for(let o=0;o<9;o++)for(const l of a)s+=l,i.push(s);return i.filter(o=>o>=t&&o<=n)},tV=(r,e="MAJOR",t=60,n=1,a=void 0)=>{const i=typeof t=="string"?$r(t):t;return!a&&typeof e=="string"&&e.toUpperCase()==="CHROMATIC"&&(a="major"),a?td(r,a,i,e,n):nV(r,i,e)},nV=(r,e=60,t="Major",n=3,a=2)=>{const i=typeof t=="string"?yQ(t):t.length,s=Math.floor((n*a+r-1)/i)+1,o=v1(t,e,s),l=[];for(let c=r-1;l.length{const e=r.match(/([a-gA-G][#bs]?)([0-9])?([a-zA-Z0-9]+)/);if(e===null)return[60,64,67];let[,t,n,a]=e;const i=$r(t),s=n?parseInt(n,10):0;return td(1,a,i,"CHROMATIC",s)},rV=r=>r.split("").map(t=>EQ[t]).reduce((t,n,a,i)=>a(pv.includes(r)||(r=RA($r(r))),pv.indexOf(r)-6),RA=r=>SQ[r%12],aV=r=>{const e=RA(r);return yA(e)},iV=(r,e)=>{let t;return typeof e=="string"?t=yA(e[0]):t=aV(e),(r*7+26-(11+t))%12+(11+t)},sV=(r,e=60)=>r<=0?0:Math.floor((r-e)/12),es=(r,e=60,t="MAJOR")=>{function n(m){return m>0?"^".repeat(m):m<0?"_".repeat(Math.abs(m)):""}const a=typeof e=="number"?e:$r(e),i=CQ(r-a,12),s=sV(r,a);if(typeof t=="string"&&t.toUpperCase()==="CHROMATIC")return{text:i.toString(),pc:i,octave:s,add:0};const o=["0","#0","1","#1","2","3","#3","4","#4","5","#5","6"],l=["0","b1","1","b2","2","3","b4","4","b5","5","b6","6"],c=iV(r,e);let u;if(c>=6&&c<=12&&l[i].length===2?u=l[i]:u=o[i],u.length>1){const m=u[0]==="#"?1:-1;return{text:n(s)+u,pc:parseInt(u[1]),octave:s,add:m}}return{text:n(s)+u,pc:parseInt(u),octave:s,add:0}},oV=(r,e,t)=>{const n=$r(r);return es(n,e,t)},jg=(r,e)=>r.map(t=>e+t%12).sort((t,n)=>t-n),lV=(r,e)=>{const t=r[0],n=jg(r,t),a=jg(e,t);return n.map((i,s)=>a[s]?a[s]-i:void 0)},cV=(r,e)=>{const t=r[0],n=r.map(s=>[s,jg(r,t).indexOf(t+s%12)]),a=lV(r,e);return n.map(([s,o])=>a[o]?s+a[o]:s)};function uV(r){const e=[];for(let n=1;n<12;n++){let a=r;if(r&1<i?a:(i-=a.length,s+=s.repeat(i),a+s.slice(0,i))}e.prototype.format=function(a){var i="Error: "+this.message;if(this.location){var s=null,o;for(o=0;o `+u+` `+f+` | `+c.line+" | "+_+` diff --git a/assets/index-6a99d0cc.js.gz b/assets/index-5dc5a0ba.js.gz similarity index 87% rename from assets/index-6a99d0cc.js.gz rename to assets/index-5dc5a0ba.js.gz index e3338bf..4c8cf7b 100644 Binary files a/assets/index-6a99d0cc.js.gz and b/assets/index-5dc5a0ba.js.gz differ diff --git a/index.html b/index.html index 07eb6e4..2fe49e0 100644 --- a/index.html +++ b/index.html @@ -14,7 +14,7 @@ - +