Home
last modified time | relevance | path

Searched refs:symbol (Results 1 – 25 of 238) sorted by last modified time

12345678910

/plugin/mermaid/
H A Dmermaid.min.js6 `)),b+=F+g[S+1]}),b}var Z0=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function e9(i){return i&&i.__esModule&&Object.prototype.hasOwnProperty.call(i,"default")?i.default:i}var yOt={exports:{}};(function(i,a){(function(f,g){i.exports=g()})(Z0,function(){var f=1e3,g=6e4,w=36e5,v="millisecond",b="second",E="minute",S="hour",_="day",M="week",F="month",R="quarter",B="year",z="date",Y="Invalid Date",nt=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,ot=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,ft={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(V){var Ot=["th","st","nd","rd"],It=V%100;return"["+V+(Ot[(It-20)%10]||Ot[It]||Ot[0])+"]"}},wt=function(V,Ot,It){var jt=String(V);return!jt||jt.length>=Ot?V:""+Array(Ot+1-jt.length).join(It)+V},mt={s:wt,z:function(V){var Ot=-V.utcOffset(),It=Math.abs(Ot),jt=Math.floor(It/60),xt=It%60;return(Ot<=0?"+":"-")+wt(jt,2,"0")+":"+wt(xt,2,"0")},m:function V(Ot,It){if(Ot.date()<It.date())return-V(It,Ot);var jt=12*(It.year()-Ot.year())+(It.month()-Ot.month()),xt=Ot.clone().add(jt,F),Ft=It-xt<0,Ct=Ot.clone().add(jt+(Ft?-1:1),F);return+(-(jt+(It-xt)/(Ft?xt-Ct:Ct-xt))||0)},a:function(V){return V<0?Math.ceil(V)||0:Math.floor(V)},p:function(V){return{M:F,y:B,w:M,d:_,D:z,h:S,m:E,s:b,ms:v,Q:R}[V]||String(V||"").toLowerCase().replace(/s$/,"")},u:function(V){return V===void 0}},ct="en",rt={};rt[ct]=ft;var it=function(V){return V instanceof K},gt=function V(Ot,It,jt){var xt;if(!Ot)return ct;if(typeof Ot=="string"){var Ft=Ot.toLowerCase();rt[Ft]&&(xt=Ft),It&&(rt[Ft]=It,xt=Ft);var Ct=Ot.split("-");if(!xt&&Ct.length>1)return V(Ct[0])}else{var kt=Ot.name;rt[kt]=Ot,xt=kt}return!jt&&xt&&(ct=xt),xt||!jt&&ct},Q=function(V,Ot){if(it(V))return V.clone();var It=typeof Ot=="object"?Ot:{};return It.date=V,It.args=arguments,new K(It)},dt=mt;dt.l=gt,dt.i=it,dt.w=function(V,Ot){return Q(V,{locale:Ot.$L,utc:Ot.$u,x:Ot.$x,$offset:Ot.$offset})};var K=function(){function V(It){this.$L=gt(It.locale,null,!0),this.parse(It)}var Ot=V.prototype;return Ot.parse=function(It){this.$d=function(jt){var xt=jt.date,Ft=jt.utc;if(xt===null)return new Date(NaN);if(dt.u(xt))return new Date;if(xt instanceof Date)return new Date(xt);if(typeof xt=="string"&&!/Z$/i.test(xt)){var Ct=xt.match(nt);if(Ct){var kt=Ct[2]-1||0,Gt=(Ct[7]||"0").substring(0,3);return Ft?new Date(Date.UTC(Ct[1],kt,Ct[3]||1,Ct[4]||0,Ct[5]||0,Ct[6]||0,Gt)):new Date(Ct[1],kt,Ct[3]||1,Ct[4]||0,Ct[5]||0,Ct[6]||0,Gt)}}return new Date(xt)}(It),this.$x=It.x||{},this.init()},Ot.init=function(){var It=this.$d;this.$y=It.getFullYear(),this.$M=It.getMonth(),this.$D=It.getDate(),this.$W=It.getDay(),this.$H=It.getHours(),this.$m=It.getMinutes(),this.$s=It.getSeconds(),this.$ms=It.getMilliseconds()},Ot.$utils=function(){return dt},Ot.isValid=function(){return this.$d.toString()!==Y},Ot.isSame=function(It,jt){var xt=Q(It);return this.startOf(jt)<=xt&&xt<=this.endOf(jt)},Ot.isAfter=function(It,jt){return Q(It)<this.startOf(jt)},Ot.isBefore=function(It,jt){return this.endOf(jt)<Q(It)},Ot.$g=function(It,jt,xt){return dt.u(It)?this[jt]:this.set(xt,It)},Ot.unix=function(){return Math.floor(this.valueOf()/1e3)},Ot.valueOf=function(){return this.$d.getTime()},Ot.startOf=function(It,jt){var xt=this,Ft=!!dt.u(jt)||jt,Ct=dt.p(It),kt=function(sn,be){var Ne=dt.w(xt.$u?Date.UTC(xt.$y,be,sn):new Date(xt.$y,be,sn),xt);return Ft?Ne:Ne.endOf(_)},Gt=function(sn,be){return dt.w(xt.toDate()[sn].apply(xt.toDate("s"),(Ft?[0,0,0,0]:[23,59,59,999]).slice(be)),xt)},Fe=this.$W,Mt=this.$M,pn=this.$D,Ae="set"+(this.$u?"UTC":"");switch(Ct){case B:return Ft?kt(1,0):kt(31,11);case F:return Ft?kt(1,Mt):kt(0,Mt+1);case M:var ye=this.$locale().weekStart||0,tn=(Fe<ye?Fe+7:Fe)-ye;return kt(Ft?pn-tn:pn+(6-tn),Mt);case _:case z:return Gt(Ae+"Hours",0);case S:return Gt(Ae+"Minutes",1);case E:return Gt(Ae+"Seconds",2);case b:return Gt(Ae+"Milliseconds",3);default:return this.clone()}},Ot.endOf=function(It){return this.startOf(It,!1)},Ot.$set=function(It,jt){var xt,Ft=dt.p(It),Ct="set"+(this.$u?"UTC":""),kt=(xt={},xt[_]=Ct+"Date",xt[z]=Ct+"Date",xt[F]=Ct+"Month",xt[B]=Ct+"FullYear",xt[S]=Ct+"Hours",xt[E]=Ct+"Minutes",xt[b]=Ct+"Seconds",xt[v]=Ct+"Milliseconds",xt)[Ft],Gt=Ft===_?this.$D+(jt-this.$W):jt;if(Ft===F||Ft===B){var Fe=this.clone().set(z,1);Fe.$d[kt](Gt),Fe.init(),this.$d=Fe.set(z,Math.min(this.$D,Fe.daysInMonth())).$d}else kt&&this.$d[kt](Gt);return this.init(),this},Ot.set=function(It,jt){return this.clone().$set(It,jt)},Ot.get=function(It){return this[dt.p(It)]()},Ot.add=function(It,jt){var xt,Ft=this;It=Number(It);var Ct=dt.p(jt),kt=function(Mt){var pn=Q(Ft);return dt.w(pn.date(pn.date()+Math.round(Mt*It)),Ft)};if(Ct===F)return this.set(F,this.$M+It);if(Ct===B)return this.set(B,this.$y+It);if(Ct===_)return kt(1);if(Ct===M)return kt(7);var Gt=(xt={},xt[E]=g,xt[S]=w,xt[b]=f,xt)[Ct]||1,Fe=this.$d.getTime()+It*Gt;return dt.w(Fe,this)},Ot.subtract=function(It,jt){return this.add(-1*It,jt)},Ot.format=function(It){var jt=this,xt=this.$locale();if(!this.isValid())return xt.invalidDate||Y;var Ft=It||"YYYY-MM-DDTHH:mm:ssZ",Ct=dt.z(this),kt=this.$H,Gt=this.$m,Fe=this.$M,Mt=xt.weekdays,pn=xt.months,Ae=function(be,Ne,Xt,_e){return be&&(be[Ne]||be(jt,Ft))||Xt[Ne].slice(0,_e)},ye=function(be){return dt.s(kt%12||12,be,"0")},tn=xt.meridiem||function(be,Ne,Xt){var _e=be<12?"AM":"PM";return Xt?_e.toLowerCase():_e},sn={YY:String(this.$y).slice(-2),YYYY:this.$y,M:Fe+1,MM:dt.s(Fe+1,2,"0"),MMM:Ae(xt.monthsShort,Fe,pn,3),MMMM:Ae(pn,Fe),D:this.$D,DD:dt.s(this.$D,2,"0"),d:String(this.$W),dd:Ae(xt.weekdaysMin,this.$W,Mt,2),ddd:Ae(xt.weekdaysShort,this.$W,Mt,3),dddd:Mt[this.$W],H:String(kt),HH:dt.s(kt,2,"0"),h:ye(1),hh:ye(2),a:tn(kt,Gt,!0),A:tn(kt,Gt,!1),m:String(Gt),mm:dt.s(Gt,2,"0"),s:String(this.$s),ss:dt.s(this.$s,2,"0"),SSS:dt.s(this.$ms,3,"0"),Z:Ct};return Ft.replace(ot,function(be,Ne){return Ne||sn[be]||Ct.replace(":","")})},Ot.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},Ot.diff=function(It,jt,xt){var Ft,Ct=dt.p(jt),kt=Q(It),Gt=(kt.utcOffset()-this.utcOffset())*g,Fe=this-kt,Mt=dt.m(this,kt);return Mt=(Ft={},Ft[B]=Mt/12,Ft[F]=Mt,Ft[R]=Mt/3,Ft[M]=(Fe-Gt)/6048e5,Ft[_]=(Fe-Gt)/864e5,Ft[S]=Fe/w,Ft[E]=Fe/g,Ft[b]=Fe/f,Ft)[Ct]||Fe,xt?Mt:dt.a(Mt)},Ot.daysInMonth=function(){return this.endOf(F).$D},Ot.$locale=function(){return rt[this.$L]},Ot.locale=function(It,jt){if(!It)return this.$L;var xt=this.clone(),Ft=gt(It,jt,!0);return Ft&&(xt.$L=Ft),xt},Ot.clone=function(){return dt.w(this.$d,this)},Ot.toDate=function(){return new Date(this.valueOf())},Ot.toJSON=function(){return this.isValid()?this.toISOString():null},Ot.toISOString=function(){return this.$d.toISOString()},Ot.toString=function(){return this.$d.toUTCString()},V}(),yt=K.prototype;return Q.prototype=yt,[["$ms",v],["$s",b],["$m",E],["$H",S],["$W",_],["$M",F],["$y",B],["$D",z]].forEach(function(V){yt[V[1]]=function(Ot){return this.$g(Ot,V[0],V[1])}}),Q.extend=function(V,Ot){return V.$i||(V(Ot,K,Q),V.$i=!0),Q},Q.locale=gt,Q.isDayjs=it,Q.unix=function(V){return Q(1e3*V)},Q.en=rt[ct],Q.Ls=rt,Q.p={},Q})})(yOt);var g9e=yOt.exports;const tg=e9(g9e),yx={trace:0,debug:1,info:2,warn:3,error:4,fatal:5},Kt={trace:(...i)=>{},debug:(...i)=>{},info:(...i)=>{},warn:(...i)=>{},error:(...i)=>{},fatal:(...i)=>{}},d0t=function(i="fatal"){let a=yx.fatal;typeof i=="string"?(i=i.toLowerCase(),i in yx&&(a=yx[i])):typeof i=="number"&&(a=i),Kt.trace=()=>{},Kt.debug=()=>{},Kt.info=()=>{},Kt.warn=()=>{},Kt.error=()=>{},Kt.fatal=()=>{},a<=yx.fatal&&(Kt.fatal=console.error?console.error.bind(console,Gw("FATAL"),"color: orange"):console.log.bind(console,"\x1B[35m",Gw("FATAL"))),a<=yx.error&&(Kt.error=console.error?console.error.bind(console,Gw("ERROR"),"color: orange"):console.log.bind(console,"\x1B[31m",Gw("ERROR"))),a<=yx.warn&&(Kt.warn=console.warn?console.warn.bind(console,Gw("WARN"),"color: orange"):console.log.bind(console,"\x1B[33m",Gw("WARN"))),a<=yx.info&&(Kt.info=console.info?console.info.bind(console,Gw("INFO"),"color: lightblue"):console.log.bind(console,"\x1B[34m",Gw("INFO"))),a<=yx.debug&&(Kt.debug=console.debug?console.debug.bind(console,Gw("DEBUG"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Gw("DEBUG"))),a<=yx.trace&&(Kt.trace=console.debug?console.debug.bind(console,Gw("TRACE"),"color: lightgreen"):console.log.bind(console,"\x1B[32m",Gw("TRACE")))},Gw=i=>`%c${tg().format("ss.SSS")} : ${i} : `;var g0t={};Object.defineProperty(g0t,"__esModule",{value:!0});var h8=g0t.sanitizeUrl=void 0,p9e=/^([^\w]*)(javascript|data|vbscript)/im,b9e=/&#(\w+)(^\w|;)?/g,w9e=/&(newline|tab);/gi,m9e=/[\u0000-\u001F\u007F-\u009F\u2000-\u200D\uFEFF]/gim,v9e=/^.+(:|&colon;)/gim,y9e=[".","/"];function x9e(i){return y9e.indexOf(i[0])>-1}function k9e(i){return i.replace(b9e,function(a,f){return String.fromCharCode(f)})}function E9e(i){var a=k9e(i||"").replace(w9e,"").replace(m9e,"").trim();if(!a)return"about:blank";if(x9e(a))return a;var f=a.match(v9e);if(!f)return a;var g=f[0];return p9e.test(g)?"about:blank":a}h8=g0t.sanitizeUrl=E9e;function nW(i,a){return i==null||a==null?NaN:i<a?-1:i>a?1:i>=a?0:NaN}function T9e(i,a){return i==null||a==null?NaN:a<i?-1:a>i?1:a>=i?0:NaN}function p0t(i){let a,f,g;i.length!==2?(a=nW,f=(E,S)=>nW(i(E),S),g=(E,S)=>i(E)-S):(a=i===nW||i===T9e?i:C9e,f=i,g=i);function w(E,S,_=0,M=E.length){if(_<M){if(a(S,S)!==0)return M;do{const F=_+M>>>1;f(E[F],S)<0?_=F+1:M=F}while(_<M)}return _}function v(E,S,_=0,M=E.length){if(_<M){if(a(S,S)!==0)return M;do{const F=_+M>>>1;f(E[F],S)<=0?_=F+1:M=F}while(_<M)}return _}function b(E,S,_=0,M=E.length){const F=w(E,S,_,M-1);return F>_&&g(E[F-1],S)>-g(E[F],S)?F-1:F}return{left:w,center:b,right:v}}function C9e(){return 0}function S9e(i){return i===null?NaN:+i}const _9e=p0t(nW).right;p0t(S9e).center;const A9e=_9e;class xOt extends Map{constructor(a,f=M9e){if(super(),Object.defineProperties(this,{_intern:{value:new Map},_key:{value:f}}),a!=null)for(const[g,w]of a)this.set(g,w)}get(a){return super.get(kOt(this,a))}has(a){return super.has(kOt(this,a))}set(a,f){return super.set(L9e(this,a),f)}delete(a){return super.delete(D9e(this,a))}}function kOt({_intern:i,_key:a},f){const g=a(f);return i.has(g)?i.get(g):f}function L9e({_intern:i,_key:a},f){const g=a(f);return i.has(g)?i.get(g):(i.set(g,f),f)}function D9e({_intern:i,_key:a},f){const g=a(f);return i.has(g)&&(f=i.get(g),i.delete(g)),f}function M9e(i){return i!==null&&typeof i=="object"?i.valueOf():i}const I9e=Math.sqrt(50),O9e=Math.sqrt(10),N9e=Math.sqrt(2);function rW(i,a,f){const g=(a-i)/Math.max(0,f),w=Math.floor(Math.log10(g)),v=g/Math.pow(10,w),b=v>=I9e?10:v>=O9e?5:v>=N9e?2:1;let E,S,_;return w<0?(_=Math.pow(10,-w)/b,E=Math.round(i*_),S=Math.round(a*_),E/_<i&&++E,S/_>a&&--S,_=-_):(_=Math.pow(10,w)*b,E=Math.round(i/_),S=Math.round(a/_),E*_<i&&++E,S*_>a&&--S),S<E&&.5<=f&&f<2?rW(i,a,f*2):[E,S,_]}function P9e(i,a,f){if(a=+a,i=+i,f=+f,!(f>0))return[];if(i===a)return[i];const g=a<i,[w,v,b]=g?rW(a,i,f):rW(i,a,f);if(!(v>=w))return[];const E=v-w+1,S=new Array(E);if(g)if(b<0)for(let _=0;_<E;++_)S[_]=(v-_)/-b;else for(let _=0;_<E;++_)S[_]=(v-_)*b;else if(b<0)for(let _=0;_<E;++_)S[_]=(w+_)/-b;else for(let _=0;_<E;++_)S[_]=(w+_)*b;return S}function b0t(i,a,f){return a=+a,i=+i,f=+f,rW(i,a,f)[2]}function w0t(i,a,f){a=+a,i=+i,f=+f;const g=a<i,w=g?b0t(a,i,f):b0t(i,a,f);return(g?-1:1)*(w<0?1/-w:w)}function F9e(i,a){let f;if(a===void 0)for(const g of i)g!=null&&(f<g||f===void 0&&g>=g)&&(f=g);else{let g=-1;for(let w of i)(w=a(w,++g,i))!=null&&(f<w||f===void 0&&w>=w)&&(f=w)}return f}function B9e(i,a){let f;if(a===void 0)for(const g of i)g!=null&&(f>g||f===void 0&&g>=g)&&(f=g);else{let g=-1;for(let w of i)(w=a(w,++g,i))!=null&&(f>w||f===void 0&&w>=w)&&(f=w)}return f}function R9e(i,a,f){i=+i,a=+a,f=(w=arguments.length)<2?(a=i,i=0,1):w<3?1:+f;for(var g=-1,w=Math.max(0,Math.ceil((a-i)/f))|0,v=new Array(w);++g<w;)v[g]=i+g*f;return v}function j9e(i){return i}var iW=1,m0t=2,v0t=3,sW=4,EOt=1e-6;function $9e(i){return"translate("+i+",0)"}function z9e(i){return"translate(0,"+i+")"}function q9e(i){return a=>+i(a)}function H9e(i,a){return a=Math.max(0,i.bandwidth()-a*2)/2,i.round()&&(a=Math.round(a)),f=>+i(f)+a}function V9e(){return!this.__axis}function TOt(i,a){var f=[],g=null,w=null,v=6,b=6,E=3,S=typeof window<"u"&&window.devicePixelRatio>1?0:.5,_=i===iW||i===sW?-1:1,M=i===sW||i===m0t?"x":"y",F=i===iW||i===v0t?$9e:z9e;function R(B){var z=g??(a.ticks?a.ticks.apply(a,f):a.domain()),Y=w??(a.tickFormat?a.tickFormat.apply(a,f):j9e),nt=Math.max(v,0)+E,ot=a.range(),ft=+ot[0]+S,wt=+ot[ot.length-1]+S,mt=(a.bandwidth?H9e:q9e)(a.copy(),S),ct=B.selection?B.selection():B,rt=ct.selectAll(".domain").data([null]),it=ct.selectAll(".tick").data(z,a).order(),gt=it.exit(),Q=it.enter().append("g").attr("class","tick"),dt=it.select("line"),K=it.select("text");rt=rt.merge(rt.enter().insert("path",".tick").attr("class","domain").attr("stroke","currentColor")),it=it.merge(Q),dt=dt.merge(Q.append("line").attr("stroke","currentColor").attr(M+"2",_*v)),K=K.merge(Q.append("text").attr("fill","currentColor").attr(M,_*nt).attr("dy",i===iW?"0em":i===v0t?"0.71em":"0.32em")),B!==ct&&(rt=rt.transition(B),it=it.transition(B),dt=dt.transition(B),K=K.transition(B),gt=gt.transition(B).attr("opacity",EOt).attr("transform",function(yt){return isFinite(yt=mt(yt))?F(yt+S):this.getAttribute("transform")}),Q.attr("opacity",EOt).attr("transform",function(yt){var V=this.parentNode.__axis;return F((V&&isFinite(V=V(yt))?V:mt(yt))+S)})),gt.remove(),rt.attr("d",i===sW||i===m0t?b?"M"+_*b+","+ft+"H"+S+"V"+wt+"H"+_*b:"M"+S+","+ft+"V"+wt:b?"M"+ft+","+_*b+"V"+S+"H"+wt+"V"+_*b:"M"+ft+","+S+"H"+wt),it.attr("opacity",1).attr("transform",function(yt){return F(mt(yt)+S)}),dt.attr(M+"2",_*v),K.attr(M,_*nt).text(Y),ct.filter(V9e).attr("fill","none").attr("font-size",10).attr("font-family","sans-serif").attr("text-anchor",i===m0t?"start":i===sW?"end":"middle"),ct.each(function(){this.__axis=mt})}return R.scale=function(B){return arguments.length?(a=B,R):a},R.ticks=function(){return f=Array.from(arguments),R},R.tickArguments=function(B){return arguments.length?(f=B==null?[]:Array.from(B),R):f.slice()},R.tickValues=function(B){return arguments.length?(g=B==null?null:Array.from(B),R):g&&g.slice()},R.tickFormat=function(B){return arguments.length?(w=B,R):w},R.tickSize=function(B){return arguments.length?(v=b=+B,R):v},R.tickSizeInner=function(B){return arguments.length?(v=+B,R):v},R.tickSizeOuter=function(B){return arguments.length?(b=+B,R):b},R.tickPadding=function(B){return arguments.length?(E=+B,R):E},R.offset=function(B){return arguments.length?(S=+B,R):S},R}function U9e(i){return TOt(iW,i)}function G9e(i){return TOt(v0t,i)}var K9e={value:()=>{}};function COt(){for(var i=0,a=arguments.length,f={},g;i<a;++i){if(!(g=arguments[i]+"")||g in f||/[\s.]/.test(g))throw new Error("illegal type: "+g);f[g]=[]}return new aW(f)}function aW(i){this._=i}function W9e(i,a){return i.trim().split(/^|\s+/).map(function(f){var g="",w=f.indexOf(".");if(w>=0&&(g=f.slice(w+1),f=f.slice(0,w)),f&&!a.hasOwnProperty(f))throw new Error("unknown type: "+f);return{type:f,name:g}})}aW.prototype=COt.prototype={constructor:aW,on:function(i,a){var f=this._,g=W9e(i+"",f),w,v=-1,b=g.length;if(arguments.length<2){for(;++v<b;)if((w=(i=g[v]).type)&&(w=Y9e(f[w],i.name)))return w;return}if(a!=null&&typeof a!="function")throw new Error("invalid callback: "+a);for(;++v<b;)if(w=(i=g[v]).type)f[w]=SOt(f[w],i.name,a);else if(a==null)for(w in f)f[w]=SOt(f[w],i.name,null);return this},copy:function(){var i={},a=this._;for(var f in a)i[f]=a[f].slice();return new aW(i)},call:function(i,a){if((w=arguments.length-2)>0)for(var f=new Array(w),g=0,w,v;g<w;++g)f[g]=arguments[g+2];if(!this._.hasOwnProperty(i))throw new Error("unknown type: "+i);for(v=this._[i],g=0,w=v.length;g<w;++g)v[g].value.apply(a,f)},apply:function(i,a,f){if(!this._.hasOwnProperty(i))throw new Error("unknown type: "+i);for(var g=this._[i],w=0,v=g.length;w<v;++w)g[w].value.apply(a,f)}};function Y9e(i,a){for(var f=0,g=i.length,w;f<g;++f)if((w=i[f]).name===a)return w.value}function SOt(i,a,f){for(var g=0,w=i.length;g<w;++g)if(i[g].name===a){i[g]=K9e,i=i.slice(0,g).concat(i.slice(g+1));break}return f!=null&&i.push({name:a,value:f}),i}var y0t="http://www.w3.org/1999/xhtml";const _Ot={svg:"http://www.w3.org/2000/svg",xhtml:y0t,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function oW(i){var a=i+="",f=a.indexOf(":");return f>=0&&(a=i.slice(0,f))!=="xmlns"&&(i=i.slice(f+1)),_Ot.hasOwnProperty(a)?{space:_Ot[a],local:i}:i}function X9e(i){return function(){var a=this.ownerDocument,f=this.namespaceURI;return f===y0t&&a.documentElement.namespaceURI===y0t?a.createElement(i):a.createElementNS(f,i)}}function Q9e(i){return function(){return this.ownerDocument.createElementNS(i.space,i.local)}}function AOt(i){var a=oW(i);return(a.local?Q9e:X9e)(a)}function J9e(){}function x0t(i){return i==null?J9e:function(){return this.querySelector(i)}}function Z9e(i){typeof i!="function"&&(i=x0t(i));for(var a=this._groups,f=a.length,g=new Array(f),w=0;w<f;++w)for(var v=a[w],b=v.length,E=g[w]=new Array(b),S,_,M=0;M<b;++M)(S=v[M])&&(_=i.call(S,S.__data__,M,v))&&("__data__"in S&&(_.__data__=S.__data__),E[M]=_);return new Gg(g,this._parents)}function LOt(i){return i==null?[]:Array.isArray(i)?i:Array.from(i)}function tCe(){return[]}function DOt(i){return i==null?tCe:function(){return this.querySelectorAll(i)}}function eCe(i){return function(){return LOt(i.apply(this,arguments))}}function nCe(i){typeof i=="function"?i=eCe(i):i=DOt(i);for(var a=this._groups,f=a.length,g=[],w=[],v=0;v<f;++v)for(var b=a[v],E=b.length,S,_=0;_<E;++_)(S=b[_])&&(g.push(i.call(S,S.__data__,_,b)),w.push(S));return new Gg(g,w)}function MOt(i){return function(){return this.matches(i)}}function IOt(i){return function(a){return a.matches(i)}}var rCe=Array.prototype.find;function iCe(i){return function(){return rCe.call(this.children,i)}}function sCe(){return this.firstElementChild}function aCe(i){return this.select(i==null?sCe:iCe(typeof i=="function"?i:IOt(i)))}var oCe=Array.prototype.filter;function cCe(){return Array.from(this.children)}function uCe(i){return function(){return oCe.call(this.children,i)}}function lCe(i){return this.selectAll(i==null?cCe:uCe(typeof i=="function"?i:IOt(i)))}function hCe(i){typeof i!="function"&&(i=MOt(i));for(var a=this._groups,f=a.length,g=new Array(f),w=0;w<f;++w)for(var v=a[w],b=v.length,E=g[w]=[],S,_=0;_<b;++_)(S=v[_])&&i.call(S,S.__data__,_,v)&&E.push(S);return new Gg(g,this._parents)}function OOt(i){return new Array(i.length)}function fCe(){return new Gg(this._enter||this._groups.map(OOt),this._parents)}function cW(i,a){this.ownerDocument=i.ownerDocument,this.namespaceURI=i.namespaceURI,this._next=null,this._parent=i,this.__data__=a}cW.prototype={constructor:cW,appendChild:function(i){return this._parent.insertBefore(i,this._next)},insertBefore:function(i,a){return this._parent.insertBefore(i,a)},querySelector:function(i){return this._parent.querySelector(i)},querySelectorAll:function(i){return this._parent.querySelectorAll(i)}};function dCe(i){return function(){return i}}function gCe(i,a,f,g,w,v){for(var b=0,E,S=a.length,_=v.length;b<_;++b)(E=a[b])?(E.__data__=v[b],g[b]=E):f[b]=new cW(i,v[b]);for(;b<S;++b)(E=a[b])&&(w[b]=E)}function pCe(i,a,f,g,w,v,b){var E,S,_=new Map,M=a.length,F=v.length,R=new Array(M),B;for(E=0;E<M;++E)(S=a[E])&&(R[E]=B=b.call(S,S.__data__,E,a)+"",_.has(B)?w[E]=S:_.set(B,S));for(E=0;E<F;++E)B=b.call(i,v[E],E,v)+"",(S=_.get(B))?(g[E]=S,S.__data__=v[E],_.delete(B)):f[E]=new cW(i,v[E]);for(E=0;E<M;++E)(S=a[E])&&_.get(R[E])===S&&(w[E]=S)}function bCe(i){return i.__data__}function wCe(i,a){if(!arguments.length)return Array.from(this,bCe);var f=a?pCe:gCe,g=this._parents,w=this._groups;typeof i!="function"&&(i=dCe(i));for(var v=w.length,b=new Array(v),E=new Array(v),S=new Array(v),_=0;_<v;++_){var M=g[_],F=w[_],R=F.length,B=mCe(i.call(M,M&&M.__data__,_,g)),z=B.length,Y=E[_]=new Array(z),nt=b[_]=new Array(z),ot=S[_]=new Array(R);f(M,F,Y,nt,ot,B,a);for(var ft=0,wt=0,mt,ct;ft<z;++ft)if(mt=Y[ft]){for(ft>=wt&&(wt=ft+1);!(ct=nt[wt])&&++wt<z;);mt._next=ct||null}}return b=new Gg(b,g),b._enter=E,b._exit=S,b}function mCe(i){return typeof i=="object"&&"length"in i?i:Array.from(i)}function vCe(){return new Gg(this._exit||this._groups.map(OOt),this._parents)}function yCe(i,a,f){var g=this.enter(),w=this,v=this.exit();return typeof i=="function"?(g=i(g),g&&(g=g.selection())):g=g.append(i+""),a!=null&&(w=a(w),w&&(w=w.selection())),f==null?v.remove():f(v),g&&w?g.merge(w).order():w}function xCe(i){for(var a=i.selection?i.selection():i,f=this._groups,g=a._groups,w=f.length,v=g.length,b=Math.min(w,v),E=new Array(w),S=0;S<b;++S)for(var _=f[S],M=g[S],F=_.length,R=E[S]=new Array(F),B,z=0;z<F;++z)(B=_[z]||M[z])&&(R[z]=B);for(;S<w;++S)E[S]=f[S];return new Gg(E,this._parents)}function kCe(){for(var i=this._groups,a=-1,f=i.length;++a<f;)for(var g=i[a],w=g.length-1,v=g[w],b;--w>=0;)(b=g[w])&&(v&&b.compareDocumentPosition(v)^4&&v.parentNode.insertBefore(b,v),v=b);return this}function ECe(i){i||(i=TCe);function a(F,R){return F&&R?i(F.__data__,R.__data__):!F-!R}for(var f=this._groups,g=f.length,w=new Array(g),v=0;v<g;++v){for(var b=f[v],E=b.length,S=w[v]=new Array(E),_,M=0;M<E;++M)(_=b[M])&&(S[M]=_);S.sort(a)}return new Gg(w,this._parents).order()}function TCe(i,a){return i<a?-1:i>a?1:i>=a?0:NaN}function CCe(){var i=arguments[0];return arguments[0]=this,i.apply(null,arguments),this}function SCe(){return Array.from(this)}function _Ce(){for(var i=this._groups,a=0,f=i.length;a<f;++a)for(var g=i[a],w=0,v=g.length;w<v;++w){var b=g[w];if(b)return b}return null}function ACe(){let i=0;for(const a of this)++i;return i}function LCe(){return!this.node()}function DCe(i){for(var a=this._groups,f=0,g=a.length;f<g;++f)for(var w=a[f],v=0,b=w.length,E;v<b;++v)(E=w[v])&&i.call(E,E.__data__,v,w);return this}function MCe(i){return function(){this.removeAttribute(i)}}function ICe(i){return function(){this.removeAttributeNS(i.space,i.local)}}function OCe(i,a){return function(){this.setAttribute(i,a)}}function NCe(i,a){return function(){this.setAttributeNS(i.space,i.local,a)}}function PCe(i,a){return function(){var f=a.apply(this,arguments);f==null?this.removeAttribute(i):this.setAttribute(i,f)}}function FCe(i,a){return function(){var f=a.apply(this,arguments);f==null?this.removeAttributeNS(i.space,i.local):this.setAttributeNS(i.space,i.local,f)}}function BCe(i,a){var f=oW(i);if(arguments.length<2){var g=this.node();return f.local?g.getAttributeNS(f.space,f.local):g.getAttribute(f)}return this.each((a==null?f.local?ICe:MCe:typeof a=="function"?f.local?FCe:PCe:f.local?NCe:OCe)(f,a))}function NOt(i){return i.ownerDocument&&i.ownerDocument.defaultView||i.document&&i||i.defaultView}function RCe(i){return function(){this.style.removeProperty(i)}}function jCe(i,a,f){return function(){this.style.setProperty(i,a,f)}}function $Ce(i,a,f){return function(){var g=a.apply(this,arguments);g==null?this.style.removeProperty(i):this.style.setProperty(i,g,f)}}function zCe(i,a,f){return arguments.length>1?this.each((a==null?RCe:typeof a=="function"?$Ce:jCe)(i,a,f??"")):RL(this.node(),i)}function RL(i,a){return i.style.getPropertyValue(a)||NOt(i).getComputedStyle(i,null).getPropertyValue(a)}function qCe(i){return function(){delete this[i]}}function HCe(i,a){return function(){this[i]=a}}function VCe(i,a){return function(){var f=a.apply(this,arguments);f==null?delete this[i]:this[i]=f}}function UCe(i,a){return arguments.length>1?this.each((a==null?qCe:typeof a=="function"?VCe:HCe)(i,a)):this.node()[i]}function POt(i){return i.trim().split(/^|\s+/)}function k0t(i){return i.classList||new FOt(i)}function FOt(i){this._node=i,this._names=POt(i.getAttribute("class")||"")}FOt.prototype={add:function(i){var a=this._names.indexOf(i);a<0&&(this._names.push(i),this._node.setAttribute("class",this._names.join(" ")))},remove:function(i){var a=this._names.indexOf(i);a>=0&&(this._names.splice(a,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(i){return this._names.indexOf(i)>=0}};function BOt(i,a){for(var f=k0t(i),g=-1,w=a.length;++g<w;)f.add(a[g])}function ROt(i,a){for(var f=k0t(i),g=-1,w=a.length;++g<w;)f.remove(a[g])}function GCe(i){return function(){BOt(this,i)}}function KCe(i){return function(){ROt(this,i)}}function WCe(i,a){return function(){(a.apply(this,arguments)?BOt:ROt)(this,i)}}function YCe(i,a){var f=POt(i+"");if(arguments.length<2){for(var g=k0t(this.node()),w=-1,v=f.length;++w<v;)if(!g.contains(f[w]))return!1;return!0}return this.each((typeof a=="function"?WCe:a?GCe:KCe)(f,a))}function XCe(){this.textContent=""}function QCe(i){return function(){this.textContent=i}}function JCe(i){return function(){var a=i.apply(this,arguments);this.textContent=a??""}}function ZCe(i){return arguments.length?this.each(i==null?XCe:(typeof i=="function"?JCe:QCe)(i)):this.node().textContent}function tSe(){this.innerHTML=""}function eSe(i){return function(){this.innerHTML=i}}function nSe(i){return function(){var a=i.apply(this,arguments);this.innerHTML=a??""}}function rSe(i){return arguments.length?this.each(i==null?tSe:(typeof i=="function"?nSe:eSe)(i)):this.node().innerHTML}function iSe(){this.nextSibling&&this.parentNode.appendChild(this)}function sSe(){return this.each(iSe)}function aSe(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function oSe(){return this.each(aSe)}function cSe(i){var a=typeof i=="function"?i:AOt(i);return this.select(function(){return this.appendChild(a.apply(this,arguments))})}function uSe(){return null}function lSe(i,a){var f=typeof i=="function"?i:AOt(i),g=a==null?uSe:typeof a=="function"?a:x0t(a);return this.select(function(){return this.insertBefore(f.apply(this,arguments),g.apply(this,arguments)||null)})}function hSe(){var i=this.parentNode;i&&i.removeChild(this)}function fSe(){return this.each(hSe)}function dSe(){var i=this.cloneNode(!1),a=this.parentNode;return a?a.insertBefore(i,this.nextSibling):i}function gSe(){var i=this.cloneNode(!0),a=this.parentNode;return a?a.insertBefore(i,this.nextSibling):i}function pSe(i){return this.select(i?gSe:dSe)}function bSe(i){return arguments.length?this.property("__data__",i):this.node().__data__}function wSe(i){return function(a){i.call(this,a,this.__data__)}}function mSe(i){return i.trim().split(/^|\s+/).map(function(a){var f="",g=a.indexOf(".");return g>=0&&(f=a.slice(g+1),a=a.slice(0,g)),{type:a,name:f}})}function vSe(i){return function(){var a=this.__on;if(a){for(var f=0,g=-1,w=a.length,v;f<w;++f)v=a[f],(!i.type||v.type===i.type)&&v.name===i.name?this.removeEventListener(v.type,v.listener,v.options):a[++g]=v;++g?a.length=g:delete this.__on}}}function ySe(i,a,f){return function(){var g=this.__on,w,v=wSe(a);if(g){for(var b=0,E=g.length;b<E;++b)if((w=g[b]).type===i.type&&w.name===i.name){this.removeEventListener(w.type,w.listener,w.options),this.addEventListener(w.type,w.listener=v,w.options=f),w.value=a;return}}this.addEventListener(i.type,v,f),w={type:i.type,name:i.name,value:a,listener:v,options:f},g?g.push(w):this.__on=[w]}}function xSe(i,a,f){var g=mSe(i+""),w,v=g.length,b;if(arguments.length<2){var E=this.node().__on;if(E){for(var S=0,_=E.length,M;S<_;++S)for(w=0,M=E[S];w<v;++w)if((b=g[w]).type===M.type&&b.name===M.name)return M.value}return}for(E=a?ySe:vSe,w=0;w<v;++w)this.each(E(g[w],a,f));return this}function jOt(i,a,f){var g=NOt(i),w=g.CustomEvent;typeof w=="function"?w=new w(a,f):(w=g.document.createEvent("Event"),f?(w.initEvent(a,f.bubbles,f.cancelable),w.detail=f.detail):w.initEvent(a,!1,!1)),i.dispatchEvent(w)}function kSe(i,a){return function(){return jOt(this,i,a)}}function ESe(i,a){return function(){return jOt(this,i,a.apply(this,arguments))}}function TSe(i,a){return this.each((typeof a=="function"?ESe:kSe)(i,a))}function*CSe(){for(var i=this._groups,a=0,f=i.length;a<f;++a)for(var g=i[a],w=0,v=g.length,b;w<v;++w)(b=g[w])&&(yield b)}var E0t=[null];function Gg(i,a){this._groups=i,this._parents=a}function JP(){return new Gg([[document.documentElement]],E0t)}function SSe(){return this}Gg.prototype=JP.prototype={constructor:Gg,select:Z9e,selectAll:nCe,selectChild:aCe,selectChildren:lCe,filter:hCe,data:wCe,enter:fCe,exit:vCe,join:yCe,merge:xCe,selection:SSe,order:kCe,sort:ECe,call:CCe,nodes:SCe,node:_Ce,size:ACe,empty:LCe,each:DCe,attr:BCe,style:zCe,property:UCe,classed:YCe,text:ZCe,html:rSe,raise:sSe,lower:oSe,append:cSe,insert:lSe,remove:fSe,clone:pSe,datum:bSe,on:xSe,dispatch:TSe,[Symbol.iterator]:CSe};function Tr(i){return typeof i=="string"?new Gg([[document.querySelector(i)]],[document.documentElement]):new Gg([[i]],E0t)}function $Ot(i){return typeof i=="string"?new Gg([document.querySelectorAll(i)],[document.documentElement]):new Gg([LOt(i)],E0t)}function ZP(i,a,f){i.prototype=a.prototype=f,f.constructor=i}function uW(i,a){var f=Object.create(i.prototype);for(var g in a)f[g]=a[g];return f}function n9(){}var tF=.7,lW=1/tF,jL="\\s*([+-]?\\d+)\\s*",eF="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",Q3="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",_Se=/^#([0-9a-f]{3,8})$/,ASe=new RegExp(`^rgb\\(${jL},${jL},${jL}\\)$`),LSe=new RegExp(`^rgb\\(${Q3},${Q3},${Q3}\\)$`),DSe=new RegExp(`^rgba\\(${jL},${jL},${jL},${eF}\\)$`),MSe=new RegExp(`^rgba\\(${Q3},${Q3},${Q3},${eF}\\)$`),ISe=new RegExp(`^hsl\\(${eF},${Q3},${Q3}\\)$`),OSe=new RegExp(`^hsla\\(${eF},${Q3},${Q3},${eF}\\)$`),zOt={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};ZP(n9,r9,{copy(i){return Object.assign(new this.constructor,this,i)},displayable(){return this.rgb().displayable()},hex:qOt,formatHex:qOt,formatHex8:NSe,formatHsl:PSe,formatRgb:HOt,toString:HOt});function qOt(){return this.rgb().formatHex()}function NSe(){return this.rgb().formatHex8()}function PSe(){return YOt(this).formatHsl()}function HOt(){return this.rgb().formatRgb()}function r9(i){var a,f;return i=(i+"").trim().toLowerCase(),(a=_Se.exec(i))?(f=a[1].length,a=parseInt(a[1],16),f===6?VOt(a):f===3?new eg(a>>8&15|a>>4&240,a>>4&15|a&240,(a&15)<<4|a&15,1):f===8?hW(a>>24&255,a>>16&255,a>>8&255,(a&255)/255):f===4?hW(a>>12&15|a>>8&240,a>>8&15|a>>4&240,a>>4&15|a&240,((a&15)<<4|a&15)/255):null):(a=ASe.exec(i))?new eg(a[1],a[2],a[3],1):(a=LSe.exec(i))?new eg(a[1]*255/100,a[2]*255/100,a[3]*255/100,1):(a=DSe.exec(i))?hW(a[1],a[2],a[3],a[4]):(a=MSe.exec(i))?hW(a[1]*255/100,a[2]*255/100,a[3]*255/100,a[4]):(a=ISe.exec(i))?WOt(a[1],a[2]/100,a[3]/100,1):(a=OSe.exec(i))?WOt(a[1],a[2]/100,a[3]/100,a[4]):zOt.hasOwnProperty(i)?VOt(zOt[i]):i==="transparent"?new eg(NaN,NaN,NaN,0):null}function VOt(i){return new eg(i>>16&255,i>>8&255,i&255,1)}function hW(i,a,f,g){return g<=0&&(i=a=f=NaN),new eg(i,a,f,g)}function UOt(i){return i instanceof n9||(i=r9(i)),i?(i=i.rgb(),new eg(i.r,i.g,i.b,i.opacity)):new eg}function T0t(i,a,f,g){return arguments.length===1?UOt(i):new eg(i,a,f,g??1)}function eg(i,a,f,g){this.r=+i,this.g=+a,this.b=+f,this.opacity=+g}ZP(eg,T0t,uW(n9,{brighter(i){return i=i==null?lW:Math.pow(lW,i),new eg(this.r*i,this.g*i,this.b*i,this.opacity)},darker(i){return i=i==null?tF:Math.pow(tF,i),new eg(this.r*i,this.g*i,this.b*i,this.opacity)},rgb(){return this},clamp(){return new eg(i9(this.r),i9(this.g),i9(this.b),fW(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:GOt,formatHex:GOt,formatHex8:FSe,formatRgb:KOt,toString:KOt}));function GOt(){return`#${s9(this.r)}${s9(this.g)}${s9(this.b)}`}function FSe(){return`#${s9(this.r)}${s9(this.g)}${s9(this.b)}${s9((isNaN(this.opacity)?1:this.opacity)*255)}`}function KOt(){const i=fW(this.opacity);return`${i===1?"rgb(":"rgba("}${i9(this.r)}, ${i9(this.g)}, ${i9(this.b)}${i===1?")":`, ${i})`}`}function fW(i){return isNaN(i)?1:Math.max(0,Math.min(1,i))}function i9(i){return Math.max(0,Math.min(255,Math.round(i)||0))}function s9(i){return i=i9(i),(i<16?"0":"")+i.toString(16)}function WOt(i,a,f,g){return g<=0?i=a=f=NaN:f<=0||f>=1?i=a=NaN:a<=0&&(i=NaN),new jv(i,a,f,g)}function YOt(i){if(i instanceof jv)return new jv(i.h,i.s,i.l,i.opacity);if(i instanceof n9||(i=r9(i)),!i)return new jv;if(i instanceof jv)return i;i=i.rgb();var a=i.r/255,f=i.g/255,g=i.b/255,w=Math.min(a,f,g),v=Math.max(a,f,g),b=NaN,E=v-w,S=(v+w)/2;return E?(a===v?b=(f-g)/E+(f<g)*6:f===v?b=(g-a)/E+2:b=(a-f)/E+4,E/=S<.5?v+w:2-v-w,b*=60):E=S>0&&S<1?0:b,new jv(b,E,S,i.opacity)}function BSe(i,a,f,g){return arguments.length===1?YOt(i):new jv(i,a,f,g??1)}function jv(i,a,f,g){this.h=+i,this.s=+a,this.l=+f,this.opacity=+g}ZP(jv,BSe,uW(n9,{brighter(i){return i=i==null?lW:Math.pow(lW,i),new jv(this.h,this.s,this.l*i,this.opacity)},darker(i){return i=i==null?tF:Math.pow(tF,i),new jv(this.h,this.s,this.l*i,this.opacity)},rgb(){var i=this.h%360+(this.h<0)*360,a=isNaN(i)||isNaN(this.s)?0:this.s,f=this.l,g=f+(f<.5?f:1-f)*a,w=2*f-g;return new eg(C0t(i>=240?i-240:i+120,w,g),C0t(i,w,g),C0t(i<120?i+240:i-120,w,g),this.opacity)},clamp(){return new jv(XOt(this.h),dW(this.s),dW(this.l),fW(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const i=fW(this.opacity);return`${i===1?"hsl(":"hsla("}${XOt(this.h)}, ${dW(this.s)*100}%, ${dW(this.l)*100}%${i===1?")":`, ${i})`}`}}));function XOt(i){return i=(i||0)%360,i<0?i+360:i}function dW(i){return Math.max(0,Math.min(1,i||0))}function C0t(i,a,f){return(i<60?a+(f-a)*i/60:i<180?f:i<240?a+(f-a)*(240-i)/60:a)*255}const RSe=Math.PI/180,jSe=180/Math.PI,gW=18,QOt=.96422,JOt=1,ZOt=.82521,tNt=4/29,$L=6/29,eNt=3*$L*$L,$Se=$L*$L*$L;function nNt(i){if(i instanceof J3)return new J3(i.l,i.a,i.b,i.opacity);if(i instanceof xx)return rNt(i);i instanceof eg||(i=UOt(i));var a=L0t(i.r),f=L0t(i.g),g=L0t(i.b),w=S0t((.2225045*a+.7168786*f+.0606169*g)/JOt),v,b;return a===f&&f===g?v=b=w:(v=S0t((.4360747*a+.3850649*f+.1430804*g)/QOt),b=S0t((.0139322*a+.0971045*f+.7141733*g)/ZOt)),new J3(116*w-16,500*(v-w),200*(w-b),i.opacity)}function zSe(i,a,f,g){return arguments.length===1?nNt(i):new J3(i,a,f,g??1)}function J3(i,a,f,g){this.l=+i,this.a=+a,this.b=+f,this.opacity=+g}ZP(J3,zSe,uW(n9,{brighter(i){return new J3(this.l+gW*(i??1),this.a,this.b,this.opacity)},darker(i){return new J3(this.l-gW*(i??1),this.a,this.b,this.opacity)},rgb(){var i=(this.l+16)/116,a=isNaN(this.a)?i:i+this.a/500,f=isNaN(this.b)?i:i-this.b/200;return a=QOt*_0t(a),i=JOt*_0t(i),f=ZOt*_0t(f),new eg(A0t(3.1338561*a-1.6168667*i-.4906146*f),A0t(-.9787684*a+1.9161415*i+.033454*f),A0t(.0719453*a-.2289914*i+1.4052427*f),this.opacity)}}));function S0t(i){return i>$Se?Math.pow(i,1/3):i/eNt+tNt}function _0t(i){return i>$L?i*i*i:eNt*(i-tNt)}function A0t(i){return 255*(i<=.0031308?12.92*i:1.055*Math.pow(i,1/2.4)-.055)}function L0t(i){return(i/=255)<=.04045?i/12.92:Math.pow((i+.055)/1.055,2.4)}function qSe(i){if(i instanceof xx)return new xx(i.h,i.c,i.l,i.opacity);if(i instanceof J3||(i=nNt(i)),i.a===0&&i.b===0)return new xx(NaN,0<i.l&&i.l<100?0:NaN,i.l,i.opacity);var a=Math.atan2(i.b,i.a)*jSe;return new xx(a<0?a+360:a,Math.sqrt(i.a*i.a+i.b*i.b),i.l,i.opacity)}function D0t(i,a,f,g){return arguments.length===1?qSe(i):new xx(i,a,f,g??1)}function xx(i,a,f,g){this.h=+i,this.c=+a,this.l=+f,this.opacity=+g}function rNt(i){if(isNaN(i.h))return new J3(i.l,0,0,i.opacity);var a=i.h*RSe;return new J3(i.l,Math.cos(a)*i.c,Math.sin(a)*i.c,i.opacity)}ZP(xx,D0t,uW(n9,{brighter(i){return new xx(this.h,this.c,this.l+gW*(i??1),this.opacity)},darker(i){return new xx(this.h,this.c,this.l-gW*(i??1),this.opacity)},rgb(){return rNt(this).rgb()}}));const pW=i=>()=>i;function iNt(i,a){return function(f){return i+f*a}}function HSe(i,a,f){return i=Math.pow(i,f),a=Math.pow(a,f)-i,f=1/f,function(g){return Math.pow(i+g*a,f)}}function VSe(i,a){var f=a-i;return f?iNt(i,f>180||f<-180?f-360*Math.round(f/360):f):pW(isNaN(i)?a:i)}function USe(i){return(i=+i)==1?nF:function(a,f){return f-a?HSe(a,f,i):pW(isNaN(a)?f:a)}}function nF(i,a){var f=a-i;return f?iNt(i,f):pW(isNaN(i)?a:i)}const bW=function i(a){var f=USe(a);function g(w,v){var b=f((w=T0t(w)).r,(v=T0t(v)).r),E=f(w.g,v.g),S=f(w.b,v.b),_=nF(w.opacity,v.opacity);return function(M){return w.r=b(M),w.g=E(M),w.b=S(M),w.opacity=_(M),w+""}}return g.gamma=i,g}(1);function GSe(i,a){a||(a=[]);var f=i?Math.min(a.length,i.length):0,g=a.slice(),w;return function(v){for(w=0;w<f;++w)g[w]=i[w]*(1-v)+a[w]*v;return g}}function KSe(i){return ArrayBuffer.isView(i)&&!(i instanceof DataView)}function WSe(i,a){var f=a?a.length:0,g=i?Math.min(f,i.length):0,w=new Array(g),v=new Array(f),b;for(b=0;b<g;++b)w[b]=O0t(i[b],a[b]);for(;b<f;++b)v[b]=a[b];return function(E){for(b=0;b<g;++b)v[b]=w[b](E);return v}}function YSe(i,a){var f=new Date;return i=+i,a=+a,function(g){return f.setTime(i*(1-g)+a*g),f}}function $v(i,a){return i=+i,a=+a,function(f){return i*(1-f)+a*f}}function XSe(i,a){var f={},g={},w;(i===null||typeof i!="object")&&(i={}),(a===null||typeof a!="object")&&(a={});for(w in a)w in i?f[w]=O0t(i[w],a[w]):g[w]=a[w];return function(v){for(w in f)g[w]=f[w](v);return g}}var M0t=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,I0t=new RegExp(M0t.source,"g");function QSe(i){return function(){return i}}function JSe(i){return function(a){return i(a)+""}}function sNt(i,a){var f=M0t.lastIndex=I0t.lastIndex=0,g,w,v,b=-1,E=[],S=[];for(i=i+"",a=a+"";(g=M0t.exec(i))&&(w=I0t.exec(a));)(v=w.index)>f&&(v=a.slice(f,v),E[b]?E[b]+=v:E[++b]=v),(g=g[0])===(w=w[0])?E[b]?E[b]+=w:E[++b]=w:(E[++b]=null,S.push({i:b,x:$v(g,w)})),f=I0t.lastIndex;return f<a.length&&(v=a.slice(f),E[b]?E[b]+=v:E[++b]=v),E.length<2?S[0]?JSe(S[0].x):QSe(a):(a=S.length,function(_){for(var M=0,F;M<a;++M)E[(F=S[M]).i]=F.x(_);return E.join("")})}function O0t(i,a){var f=typeof a,g;return a==null||f==="boolean"?pW(a):(f==="number"?$v:f==="string"?(g=r9(a))?(a=g,bW):sNt:a instanceof r9?bW:a instanceof Date?YSe:KSe(a)?GSe:Array.isArray(a)?WSe:typeof a.valueOf!="function"&&typeof a.toString!="function"||isNaN(a)?XSe:$v)(i,a)}function ZSe(i,a){return i=+i,a=+a,function(f){return Math.round(i*(1-f)+a*f)}}var aNt=180/Math.PI,N0t={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function oNt(i,a,f,g,w,v){var b,E,S;return(b=Math.sqrt(i*i+a*a))&&(i/=b,a/=b),(S=i*f+a*g)&&(f-=i*S,g-=a*S),(E=Math.sqrt(f*f+g*g))&&(f/=E,g/=E,S/=E),i*g<a*f&&(i=-i,a=-a,S=-S,b=-b),{translateX:w,translateY:v,rotate:Math.atan2(a,i)*aNt,skewX:Math.atan(S)*aNt,scaleX:b,scaleY:E}}var wW;function t_e(i){const a=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(i+"");return a.isIdentity?N0t:oNt(a.a,a.b,a.c,a.d,a.e,a.f)}function e_e(i){return i==null||(wW||(wW=document.createElementNS("http://www.w3.org/2000/svg","g")),wW.setAttribute("transform",i),!(i=wW.transform.baseVal.consolidate()))?N0t:(i=i.matrix,oNt(i.a,i.b,i.c,i.d,i.e,i.f))}function cNt(i,a,f,g){function w(_){return _.length?_.pop()+" ":""}function v(_,M,F,R,B,z){if(_!==F||M!==R){var Y=B.push("translate(",null,a,null,f);z.push({i:Y-4,x:$v(_,F)},{i:Y-2,x:$v(M,R)})}else(F||R)&&B.push("translate("+F+a+R+f)}function b(_,M,F,R){_!==M?(_-M>180?M+=360:M-_>180&&(_+=360),R.push({i:F.push(w(F)+"rotate(",null,g)-2,x:$v(_,M)})):M&&F.push(w(F)+"rotate("+M+g)}function E(_,M,F,R){_!==M?R.push({i:F.push(w(F)+"skewX(",null,g)-2,x:$v(_,M)}):M&&F.push(w(F)+"skewX("+M+g)}function S(_,M,F,R,B,z){if(_!==F||M!==R){var Y=B.push(w(B)+"scale(",null,",",null,")");z.push({i:Y-4,x:$v(_,F)},{i:Y-2,x:$v(M,R)})}else(F!==1||R!==1)&&B.push(w(B)+"scale("+F+","+R+")")}return function(_,M){var F=[],R=[];return _=i(_),M=i(M),v(_.translateX,_.translateY,M.translateX,M.translateY,F,R),b(_.rotate,M.rotate,F,R),E(_.skewX,M.skewX,F,R),S(_.scaleX,_.scaleY,M.scaleX,M.scaleY,F,R),_=M=null,function(B){for(var z=-1,Y=R.length,nt;++z<Y;)F[(nt=R[z]).i]=nt.x(B);return F.join("")}}}var n_e=cNt(t_e,"px, ","px)","deg)"),r_e=cNt(e_e,", ",")",")");function i_e(i){return function(a,f){var g=i((a=D0t(a)).h,(f=D0t(f)).h),w=nF(a.c,f.c),v=nF(a.l,f.l),b=nF(a.opacity,f.opacity);return function(E){return a.h=g(E),a.c=w(E),a.l=v(E),a.opacity=b(E),a+""}}}const s_e=i_e(VSe);var zL=0,rF=0,iF=0,uNt=1e3,mW,sF,vW=0,a9=0,yW=0,aF=typeof performance=="object"&&performance.now?performance:Date,lNt=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(i){setTimeout(i,17)};function P0t(){return a9||(lNt(a_e),a9=aF.now()+yW)}function a_e(){a9=0}function xW(){this._call=this._time=this._next=null}xW.prototype=hNt.prototype={constructor:xW,restart:function(i,a,f){if(typeof i!="function")throw new TypeError("callback is not a function");f=(f==null?P0t():+f)+(a==null?0:+a),!this._next&&sF!==this&&(sF?sF._next=this:mW=this,sF=this),this._call=i,this._time=f,F0t()},stop:function(){this._call&&(this._call=null,this._time=1/0,F0t())}};function hNt(i,a,f){var g=new xW;return g.restart(i,a,f),g}function o_e(){P0t(),++zL;for(var i=mW,a;i;)(a=a9-i._time)>=0&&i._call.call(void 0,a),i=i._next;--zL}function fNt(){a9=(vW=aF.now())+yW,zL=rF=0;try{o_e()}finally{zL=0,u_e(),a9=0}}function c_e(){var i=aF.now(),a=i-vW;a>uNt&&(yW-=a,vW=i)}function u_e(){for(var i,a=mW,f,g=1/0;a;)a._call?(g>a._time&&(g=a._time),i=a,a=a._next):(f=a._next,a._next=null,a=i?i._next=f:mW=f);sF=i,F0t(g)}function F0t(i){if(!zL){rF&&(rF=clearTimeout(rF));var a=i-a9;a>24?(i<1/0&&(rF=setTimeout(fNt,i-aF.now()-yW)),iF&&(iF=clearInterval(iF))):(iF||(vW=aF.now(),iF=setInterval(c_e,uNt)),zL=1,lNt(fNt))}}function dNt(i,a,f){var g=new xW;return a=a==null?0:+a,g.restart(w=>{g.stop(),i(w+a)},a,f),g}var l_e=COt("start","end","cancel","interrupt"),h_e=[],gNt=0,pNt=1,B0t=2,kW=3,bNt=4,R0t=5,EW=6;function TW(i,a,f,g,w,v){var b=i.__transition;if(!b)i.__transition={};else if(f in b)return;f_e(i,f,{name:a,index:g,group:w,on:l_e,tween:h_e,time:v.time,delay:v.delay,duration:v.duration,ease:v.ease,timer:null,state:gNt})}function j0t(i,a){var f=zv(i,a);if(f.state>gNt)throw new Error("too late; already scheduled");return f}function Z3(i,a){var f=zv(i,a);if(f.state>kW)throw new Error("too late; already running");return f}function zv(i,a){var f=i.__transition;if(!f||!(f=f[a]))throw new Error("transition not found");return f}function f_e(i,a,f){var g=i.__transition,w;g[a]=f,f.timer=hNt(v,0,f.time);function v(_){f.state=pNt,f.timer.restart(b,f.delay,f.time),f.delay<=_&&b(_-f.delay)}function b(_){var M,F,R,B;if(f.state!==pNt)return S();for(M in g)if(B=g[M],B.name===f.name){if(B.state===kW)return dNt(b);B.state===bNt?(B.state=EW,B.timer.stop(),B.on.call("interrupt",i,i.__data__,B.index,B.group),delete g[M]):+M<a&&(B.state=EW,B.timer.stop(),B.on.call("cancel",i,i.__data__,B.index,B.group),delete g[M])}if(dNt(function(){f.state===kW&&(f.state=bNt,f.timer.restart(E,f.delay,f.time),E(_))}),f.state=B0t,f.on.call("start",i,i.__data__,f.index,f.group),f.state===B0t){for(f.state=kW,w=new Array(R=f.tween.length),M=0,F=-1;M<R;++M)(B=f.tween[M].value.call(i,i.__data__,f.index,f.group))&&(w[++F]=B);w.length=F+1}}function E(_){for(var M=_<f.duration?f.ease.call(null,_/f.duration):(f.timer.restart(S),f.state=R0t,1),F=-1,R=w.length;++F<R;)w[F].call(i,M);f.state===R0t&&(f.on.call("end",i,i.__data__,f.index,f.group),S())}function S(){f.state=EW,f.timer.stop(),delete g[a];for(var _ in g)return;delete i.__transition}}function d_e(i,a){var f=i.__transition,g,w,v=!0,b;if(f){a=a==null?null:a+"";for(b in f){if((g=f[b]).name!==a){v=!1;continue}w=g.state>B0t&&g.state<R0t,g.state=EW,g.timer.stop(),g.on.call(w?"interrupt":"cancel",i,i.__data__,g.index,g.group),delete f[b]}v&&delete i.__transition}}function g_e(i){return this.each(function(){d_e(this,i)})}function p_e(i,a){var f,g;return function(){var w=Z3(this,i),v=w.tween;if(v!==f){g=f=v;for(var b=0,E=g.length;b<E;++b)if(g[b].name===a){g=g.slice(),g.splice(b,1);break}}w.tween=g}}function b_e(i,a,f){var g,w;if(typeof f!="function")throw new Error;return function(){var v=Z3(this,i),b=v.tween;if(b!==g){w=(g=b).slice();for(var E={name:a,value:f},S=0,_=w.length;S<_;++S)if(w[S].name===a){w[S]=E;break}S===_&&w.push(E)}v.tween=w}}function w_e(i,a){var f=this._id;if(i+="",arguments.length<2){for(var g=zv(this.node(),f).tween,w=0,v=g.length,b;w<v;++w)if((b=g[w]).name===i)return b.value;return null}return this.each((a==null?p_e:b_e)(f,i,a))}function $0t(i,a,f){var g=i._id;return i.each(function(){var w=Z3(this,g);(w.value||(w.value={}))[a]=f.apply(this,arguments)}),function(w){return zv(w,g).value[a]}}function wNt(i,a){var f;return(typeof a=="number"?$v:a instanceof r9?bW:(f=r9(a))?(a=f,bW):sNt)(i,a)}function m_e(i){return function(){this.removeAttribute(i)}}function v_e(i){return function(){this.removeAttributeNS(i.space,i.local)}}function y_e(i,a,f){var g,w=f+"",v;return function(){var b=this.getAttribute(i);return b===w?null:b===g?v:v=a(g=b,f)}}function x_e(i,a,f){var g,w=f+"",v;return function(){var b=this.getAttributeNS(i.space,i.local);return b===w?null:b===g?v:v=a(g=b,f)}}function k_e(i,a,f){var g,w,v;return function(){var b,E=f(this),S;return E==null?void this.removeAttribute(i):(b=this.getAttribute(i),S=E+"",b===S?null:b===g&&S===w?v:(w=S,v=a(g=b,E)))}}function E_e(i,a,f){var g,w,v;return function(){var b,E=f(this),S;return E==null?void this.removeAttributeNS(i.space,i.local):(b=this.getAttributeNS(i.space,i.local),S=E+"",b===S?null:b===g&&S===w?v:(w=S,v=a(g=b,E)))}}function T_e(i,a){var f=oW(i),g=f==="transform"?r_e:wNt;return this.attrTween(i,typeof a=="function"?(f.local?E_e:k_e)(f,g,$0t(this,"attr."+i,a)):a==null?(f.local?v_e:m_e)(f):(f.local?x_e:y_e)(f,g,a))}function C_e(i,a){return function(f){this.setAttribute(i,a.call(this,f))}}function S_e(i,a){return function(f){this.setAttributeNS(i.space,i.local,a.call(this,f))}}function __e(i,a){var f,g;function w(){var v=a.apply(this,arguments);return v!==g&&(f=(g=v)&&S_e(i,v)),f}return w._value=a,w}function A_e(i,a){var f,g;function w(){var v=a.apply(this,arguments);return v!==g&&(f=(g=v)&&C_e(i,v)),f}return w._value=a,w}function L_e(i,a){var f="attr."+i;if(arguments.length<2)return(f=this.tween(f))&&f._value;if(a==null)return this.tween(f,null);if(typeof a!="function")throw new Error;var g=oW(i);return this.tween(f,(g.local?__e:A_e)(g,a))}function D_e(i,a){return function(){j0t(this,i).delay=+a.apply(this,arguments)}}function M_e(i,a){return a=+a,function(){j0t(this,i).delay=a}}function I_e(i){var a=this._id;return arguments.length?this.each((typeof i=="function"?D_e:M_e)(a,i)):zv(this.node(),a).delay}function O_e(i,a){return function(){Z3(this,i).duration=+a.apply(this,arguments)}}function N_e(i,a){return a=+a,function(){Z3(this,i).duration=a}}function P_e(i){var a=this._id;return arguments.length?this.each((typeof i=="function"?O_e:N_e)(a,i)):zv(this.node(),a).duration}function F_e(i,a){if(typeof a!="function")throw new Error;return function(){Z3(this,i).ease=a}}function B_e(i){var a=this._id;return arguments.length?this.each(F_e(a,i)):zv(this.node(),a).ease}function R_e(i,a){return function(){var f=a.apply(this,arguments);if(typeof f!="function")throw new Error;Z3(this,i).ease=f}}function j_e(i){if(typeof i!="function")throw new Error;return this.each(R_e(this._id,i))}function $_e(i){typeof i!="function"&&(i=MOt(i));for(var a=this._groups,f=a.length,g=new Array(f),w=0;w<f;++w)for(var v=a[w],b=v.length,E=g[w]=[],S,_=0;_<b;++_)(S=v[_])&&i.call(S,S.__data__,_,v)&&E.push(S);return new kx(g,this._parents,this._name,this._id)}function z_e(i){if(i._id!==this._id)throw new Error;for(var a=this._groups,f=i._groups,g=a.length,w=f.length,v=Math.min(g,w),b=new Array(g),E=0;E<v;++E)for(var S=a[E],_=f[E],M=S.length,F=b[E]=new Array(M),R,B=0;B<M;++B)(R=S[B]||_[B])&&(F[B]=R);for(;E<g;++E)b[E]=a[E];return new kx(b,this._parents,this._name,this._id)}function q_e(i){return(i+"").trim().split(/^|\s+/).every(function(a){var f=a.indexOf(".");return f>=0&&(a=a.slice(0,f)),!a||a==="start"})}function H_e(i,a,f){var g,w,v=q_e(a)?j0t:Z3;return function(){var b=v(this,i),E=b.on;E!==g&&(w=(g=E).copy()).on(a,f),b.on=w}}function V_e(i,a){var f=this._id;return arguments.length<2?zv(this.node(),f).on.on(i):this.each(H_e(f,i,a))}function U_e(i){return function(){var a=this.parentNode;for(var f in this.__transition)if(+f!==i)return;a&&a.removeChild(this)}}function G_e(){return this.on("end.remove",U_e(this._id))}function K_e(i){var a=this._name,f=this._id;typeof i!="function"&&(i=x0t(i));for(var g=this._groups,w=g.length,v=new Array(w),b=0;b<w;++b)for(var E=g[b],S=E.length,_=v[b]=new Array(S),M,F,R=0;R<S;++R)(M=E[R])&&(F=i.call(M,M.__data__,R,E))&&("__data__"in M&&(F.__data__=M.__data__),_[R]=F,TW(_[R],a,f,R,_,zv(M,f)));return new kx(v,this._parents,a,f)}function W_e(i){var a=this._name,f=this._id;typeof i!="function"&&(i=DOt(i));for(var g=this._groups,w=g.length,v=[],b=[],E=0;E<w;++E)for(var S=g[E],_=S.length,M,F=0;F<_;++F)if(M=S[F]){for(var R=i.call(M,M.__data__,F,S),B,z=zv(M,f),Y=0,nt=R.length;Y<nt;++Y)(B=R[Y])&&TW(B,a,f,Y,R,z);v.push(R),b.push(M)}return new kx(v,b,a,f)}var Y_e=JP.prototype.constructor;function X_e(){return new Y_e(this._groups,this._parents)}function Q_e(i,a){var f,g,w;return function(){var v=RL(this,i),b=(this.style.removeProperty(i),RL(this,i));return v===b?null:v===f&&b===g?w:w=a(f=v,g=b)}}function mNt(i){return function(){this.style.removeProperty(i)}}function J_e(i,a,f){var g,w=f+"",v;return function(){var b=RL(this,i);return b===w?null:b===g?v:v=a(g=b,f)}}function Z_e(i,a,f){var g,w,v;return function(){var b=RL(this,i),E=f(this),S=E+"";return E==null&&(S=E=(this.style.removeProperty(i),RL(this,i))),b===S?null:b===g&&S===w?v:(w=S,v=a(g=b,E))}}function tAe(i,a){var f,g,w,v="style."+a,b="end."+v,E;return function(){var S=Z3(this,i),_=S.on,M=S.value[v]==null?E||(E=mNt(a)):void 0;(_!==f||w!==M)&&(g=(f=_).copy()).on(b,w=M),S.on=g}}function eAe(i,a,f){var g=(i+="")=="transform"?n_e:wNt;return a==null?this.styleTween(i,Q_e(i,g)).on("end.style."+i,mNt(i)):typeof a=="function"?this.styleTween(i,Z_e(i,g,$0t(this,"style."+i,a))).each(tAe(this._id,i)):this.styleTween(i,J_e(i,g,a),f).on("end.style."+i,null)}function nAe(i,a,f){return function(g){this.style.setProperty(i,a.call(this,g),f)}}function rAe(i,a,f){var g,w;function v(){var b=a.apply(this,arguments);return b!==w&&(g=(w=b)&&nAe(i,b,f)),g}return v._value=a,v}function iAe(i,a,f){var g="style."+(i+="");if(arguments.length<2)return(g=this.tween(g))&&g._value;if(a==null)return this.tween(g,null);if(typeof a!="function")throw new Error;return this.tween(g,rAe(i,a,f??""))}function sAe(i){return function(){this.textContent=i}}function aAe(i){return function(){var a=i(this);this.textContent=a??""}}function oAe(i){return this.tween("text",typeof i=="function"?aAe($0t(this,"text",i)):sAe(i==null?"":i+""))}function cAe(i){return function(a){this.textContent=i.call(this,a)}}function uAe(i){var a,f;function g(){var w=i.apply(this,arguments);return w!==f&&(a=(f=w)&&cAe(w)),a}return g._value=i,g}function lAe(i){var a="text";if(arguments.length<1)return(a=this.tween(a))&&a._value;if(i==null)return this.tween(a,null);if(typeof i!="function")throw new Error;return this.tween(a,uAe(i))}function hAe(){for(var i=this._name,a=this._id,f=vNt(),g=this._groups,w=g.length,v=0;v<w;++v)for(var b=g[v],E=b.length,S,_=0;_<E;++_)if(S=b[_]){var M=zv(S,a);TW(S,i,f,_,b,{time:M.time+M.delay+M.duration,delay:0,duration:M.duration,ease:M.ease})}return new kx(g,this._parents,i,f)}function fAe(){var i,a,f=this,g=f._id,w=f.size();return new Promise(function(v,b){var E={value:b},S={value:function(){--w===0&&v()}};f.each(function(){var _=Z3(this,g),M=_.on;M!==i&&(a=(i=M).copy(),a._.cancel.push(E),a._.interrupt.push(E),a._.end.push(S)),_.on=a}),w===0&&v()})}var dAe=0;function kx(i,a,f,g){this._groups=i,this._parents=a,this._name=f,this._id=g}function vNt(){return++dAe}var Ex=JP.prototype;kx.prototype={constructor:kx,select:K_e,selectAll:W_e,selectChild:Ex.selectChild,selectChildren:Ex.selectChildren,filter:$_e,merge:z_e,selection:X_e,transition:hAe,call:Ex.call,nodes:Ex.nodes,node:Ex.node,size:Ex.size,empty:Ex.empty,each:Ex.each,on:V_e,attr:T_e,attrTween:L_e,style:eAe,styleTween:iAe,text:oAe,textTween:lAe,remove:G_e,tween:w_e,delay:I_e,duration:P_e,ease:B_e,easeVarying:j_e,end:fAe,[Symbol.iterator]:Ex[Symbol.iterator]};function gAe(i){return((i*=2)<=1?i*i*i:(i-=2)*i*i+2)/2}var pAe={time:null,delay:0,duration:250,ease:gAe};function bAe(i,a){for(var f;!(f=i.__transition)||!(f=f[a]);)if(!(i=i.parentNode))throw new Error(`transition ${a} not found`);return f}function wAe(i){var a,f;i instanceof kx?(a=i._id,i=i._name):(a=vNt(),(f=pAe).time=P0t(),i=i==null?null:i+"");for(var g=this._groups,w=g.length,v=0;v<w;++v)for(var b=g[v],E=b.length,S,_=0;_<E;++_)(S=b[_])&&TW(S,i,a,_,b,f||bAe(S,a));return new kx(g,this._parents,i,a)}JP.prototype.interrupt=g_e,JP.prototype.transition=wAe;const z0t=Math.PI,q0t=2*z0t,o9=1e-6,mAe=q0t-o9;function yNt(i){this._+=i[0];for(let a=1,f=i.length;a<f;++a)this._+=arguments[a]+i[a]}function vAe(i){let a=Math.floor(i);if(!(a>=0))throw new Error(`invalid digits: ${i}`);if(a>15)return yNt;const f=10**a;return function(g){this._+=g[0];for(let w=1,v=g.length;w<v;++w)this._+=Math.round(arguments[w]*f)/f+g[w]}}let yAe=class{constructor(a){this._x0=this._y0=this._x1=this._y1=null,this._="",this._append=a==null?yNt:vAe(a)}moveTo(a,f){this._append`M${this._x0=this._x1=+a},${this._y0=this._y1=+f}`}closePath(){this._x1!==null&&(this._x1=this._x0,this._y1=this._y0,this._append`Z`)}lineTo(a,f){this._append`L${this._x1=+a},${this._y1=+f}`}quadraticCurveTo(a,f,g,w){this._append`Q${+a},${+f},${this._x1=+g},${this._y1=+w}`}bezierCurveTo(a,f,g,w,v,b){this._append`C${+a},${+f},${+g},${+w},${this._x1=+v},${this._y1=+b}`}arcTo(a,f,g,w,v){if(a=+a,f=+f,g=+g,w=+w,v=+v,v<0)throw new Error(`negative radius: ${v}`);let b=this._x1,E=this._y1,S=g-a,_=w-f,M=b-a,F=E-f,R=M*M+F*F;if(this._x1===null)this._append`M${this._x1=a},${this._y1=f}`;else if(R>o9)if(!(Math.abs(F*S-_*M)>o9)||!v)this._append`L${this._x1=a},${this._y1=f}`;else{let B=g-b,z=w-E,Y=S*S+_*_,nt=B*B+z*z,ot=Math.sqrt(Y),ft=Math.sqrt(R),wt=v*Math.tan((z0t-Math.acos((Y+R-nt)/(2*ot*ft)))/2),mt=wt/ft,ct=wt/ot;Math.abs(mt-1)>o9&&this._append`L${a+mt*M},${f+mt*F}`,this._append`A${v},${v},0,0,${+(F*B>M*z)},${this._x1=a+ct*S},${this._y1=f+ct*_}`}}arc(a,f,g,w,v,b){if(a=+a,f=+f,g=+g,b=!!b,g<0)throw new Error(`negative radius: ${g}`);let E=g*Math.cos(w),S=g*Math.sin(w),_=a+E,M=f+S,F=1^b,R=b?w-v:v-w;this._x1===null?this._append`M${_},${M}`:(Math.abs(this._x1-_)>o9||Math.abs(this._y1-M)>o9)&&this._append`L${_},${M}`,g&&(R<0&&(R=R%q0t+q0t),R>mAe?this._append`A${g},${g},0,1,${F},${a-E},${f-S}A${g},${g},0,1,${F},${this._x1=_},${this._y1=M}`:R>o9&&this._append`A${g},${g},0,${+(R>=z0t)},${F},${this._x1=a+g*Math.cos(v)},${this._y1=f+g*Math.sin(v)}`)}rect(a,f,g,w){this._append`M${this._x0=this._x1=+a},${this._y0=this._y1=+f}h${g=+g}v${+w}h${-g}Z`}toString(){return this._}};function xAe(i){if(!i.ok)throw new Error(i.status+" "+i.statusText);return i.text()}function kAe(i,a){return fetch(i,a).then(xAe)}function EAe(i){return(a,f)=>kAe(a,f).then(g=>new DOMParser().parseFromString(g,i))}var TAe=EAe("image/svg+xml");function CAe(i){return Math.abs(i=Math.round(i))>=1e21?i.toLocaleString("en").replace(/,/g,""):i.toString(10)}function CW(i,a){if((f=(i=a?i.toExponential(a-1):i.toExponential()).indexOf("e"))<0)return null;var f,g=i.slice(0,f);return[g.length>1?g[0]+g.slice(2):g,+i.slice(f+1)]}function qL(i){return i=CW(Math.abs(i)),i?i[1]:NaN}function SAe(i,a){return function(f,g){for(var w=f.length,v=[],b=0,E=i[0],S=0;w>0&&E>0&&(S+E+1>g&&(E=Math.max(1,g-S)),v.push(f.substring(w-=E,w+E)),!((S+=E+1)>g));)E=i[b=(b+1)%i.length];return v.reverse().join(a)}}function _Ae(i){return function(a){return a.replace(/[0-9]/g,function(f){return i[+f]})}}var AAe=/^(?:(.)?([<>=^]))?([+\-( ])?([$#])?(0)?(\d+)?(,)?(\.\d+)?(~)?([a-z%])?$/i;function SW(i){if(!(a=AAe.exec(i)))throw new Error("invalid format: "+i);var a;return new H0t({fill:a[1],align:a[2],sign:a[3],symbol:a[4],zero:a[5],width:a[6],comma:a[7],precision:a[8]&&a[8].slice(1),trim:a[9],type:a[10]})}SW.prototype=H0t.prototype;function H0t(i){this.fill=i.fill===void 0?" ":i.fill+"",this.align=i.align===void 0?">":i.align+"",this.sign=i.sign===void 0?"-":i.sign+"",this.symbol=i.symbol===void 0?"":i.symbol+"",this.zero=!!i.zero,this.width=i.width===void 0?void 0:+i.width,this.comma=!!i.comma,this.precision=i.precision===void 0?void 0:+i.precision,this.trim=!!i.trim,this.type=i.type===void 0?"":i.type+""}H0t.prototype.toString=function(){return this.fill+this.align+this.sign+this.symbol+(this.zero?"0":"")+(this.width===void 0?"":Math.max(1,this.width|0))+(this.comma?",":"")+(this.precision===void 0?"":"."+Math.max(0,this.precision|0))+(this.trim?"~":"")+this.type};function LAe(i){t:for(var a=i.length,f=1,g=-1,w;f<a;++f)switch(i[f]){case".":g=w=f;break;case"0":g===0&&(g=f),w=f;break;default:if(!+i[f])break t;g>0&&(g=0);break}return g>0?i.slice(0,g)+i.slice(w+1):i}var xNt;function DAe(i,a){var f=CW(i,a);if(!f)return i+"";var g=f[0],w=f[1],v=w-(xNt=Math.max(-8,Math.min(8,Math.floor(w/3)))*3)+1,b=g.length;return v===b?g:v>b?g+new Array(v-b+1).join("0"):v>0?g.slice(0,v)+"."+g.slice(v):"0."+new Array(1-v).join("0")+CW(i,Math.max(0,a+v-1))[0]}function kNt(i,a){var f=CW(i,a);if(!f)return i+"";var g=f[0],w=f[1];return w<0?"0."+new Array(-w).join("0")+g:g.length>w+1?g.slice(0,w+1)+"."+g.slice(w+1):g+new Array(w-g.length+2).join("0")}const ENt={"%":(i,a)=>(i*100).toFixed(a),b:i=>Math.round(i).toString(2),c:i=>i+"",d:CAe,e:(i,a)=>i.toExponential(a),f:(i,a)=>i.toFixed(a),g:(i,a)=>i.toPrecision(a),o:i=>Math.round(i).toString(8),p:(i,a)=>kNt(i*100,a),r:kNt,s:DAe,X:i=>Math.round(i).toString(16).toUpperCase(),x:i=>Math.round(i).toString(16)};function TNt(i){return i}var CNt=Array.prototype.map,SNt=["y","z","a","f","p","n","µ","m","","k","M","G","T","P","E","Z","Y"];function MAe(i){var a=i.grouping===void 0||i.thousands===void 0?TNt:SAe(CNt.call(i.grouping,Number),i.thousands+""),f=i.currency===void 0?"":i.currency[0]+"",g=i.currency===void 0?"":i.currency[1]+"",w=i.decimal===void 0?".":i.decimal+"",v=i.numerals===void 0?TNt:_Ae(CNt.call(i.numerals,String)),b=i.percent===void 0?"%":i.percent+"",E=i.minus===void 0?"−":i.minus+"",S=i.nan===void 0?"NaN":i.nan+"";function _(F){F=SW(F);var R=F.fill,B=F.align,z=F.sign,Y=F.symbol,nt=F.zero,ot=F.width,ft=F.comma,wt=F.precision,mt=F.trim,ct=F.type;ct==="n"?(ft=!0,ct="g"):ENt[ct]||(wt===void 0&&(wt=12),mt=!0,ct="g"),(nt||R==="0"&&B==="=")&&(nt=!0,R="0",B="=");var rt=Y==="$"?f:Y==="#"&&/[boxX]/.test(ct)?"0"+ct.toLowerCase():"",it=Y==="$"?g:/[%p]/.test(ct)?b:"",gt=ENt[ct],Q=/[defgprs%]/.test(ct);wt=wt===void 0?6:/[gprs]/.test(ct)?Math.max(1,Math.min(21,wt)):Math.max(0,Math.min(20,wt));function dt(K){var yt=rt,V=it,Ot,It,jt;if(ct==="c")V=gt(K)+V,K="";else{K=+K;var xt=K<0||1/K<0;if(K=isNaN(K)?S:gt(Math.abs(K),wt),mt&&(K=LAe(K)),xt&&+K==0&&z!=="+"&&(xt=!1),yt=(xt?z==="("?z:E:z==="-"||z==="("?"":z)+yt,V=(ct==="s"?SNt[8+xNt/3]:"")+V+(xt&&z==="("?")":""),Q){for(Ot=-1,It=K.length;++Ot<It;)if(jt=K.charCodeAt(Ot),48>jt||jt>57){V=(jt===46?w+K.slice(Ot+1):K.slice(Ot))+V,K=K.slice(0,Ot);break}}}ft&&!nt&&(K=a(K,1/0));var Ft=yt.length+K.length+V.length,Ct=Ft<ot?new Array(ot-Ft+1).join(R):"";switch(ft&&nt&&(K=a(Ct+K,Ct.length?ot-V.length:1/0),Ct=""),B){case"<":K=yt+K+V+Ct;break;case"=":K=yt+Ct+K+V;break;case"^":K=Ct.slice(0,Ft=Ct.length>>1)+yt+K+V+Ct.slice(Ft);break;default:K=Ct+yt+K+V;break}return v(K)}return dt.toString=function(){return F+""},dt}function M(F,R){var B=_((F=SW(F),F.type="f",F)),z=Math.max(-8,Math.min(8,Math.floor(qL(R)/3)))*3,Y=Math.pow(10,-z),nt=SNt[8+z/3];return function(ot){return B(Y*ot)+nt}}return{format:_,formatPrefix:M}}var _W,_Nt,ANt;IAe({thousands:",",grouping:[3],currency:["$",""]});function IAe(i){return _W=MAe(i),_Nt=_W.format,ANt=_W.formatPrefix,_W}function OAe(i){return Math.max(0,-qL(Math.abs(i)))}function NAe(i,a){return Math.max(0,Math.max(-8,Math.min(8,Math.floor(qL(a)/3)))*3-qL(Math.abs(i)))}function PAe(i,a){return i=Math.abs(i),a=Math.abs(a)-i,Math.max(0,qL(a)-qL(i))+1}function AW(i,a){switch(arguments.length){case 0:break;case 1:this.range(i);break;default:this.range(a).domain(i);break}return this}const LNt=Symbol("implicit");function oF(){var i=new xOt,a=[],f=[],g=LNt;function w(v){let b=i.get(v);if(b===void 0){if(g!==LNt)return g;i.set(v,b=a.push(v)-1)}return f[b%f.length]}return w.domain=function(v){if(!arguments.length)return a.slice();a=[],i=new xOt;for(const b of v)i.has(b)||i.set(b,a.push(b)-1);return w},w.range=function(v){return arguments.length?(f=Array.from(v),w):f.slice()},w.unknown=function(v){return arguments.length?(g=v,w):g},w.copy=function(){return oF(a,f).unknown(g)},AW.apply(w,arguments),w}function V0t(){var i=oF().unknown(void 0),a=i.domain,f=i.range,g=0,w=1,v,b,E=!1,S=0,_=0,M=.5;delete i.unknown;function F(){var R=a().length,B=w<g,z=B?w:g,Y=B?g:w;v=(Y-z)/Math.max(1,R-S+_*2),E&&(v=Math.floor(v)),z+=(Y-z-v*(R-S))*M,b=v*(1-S),E&&(z=Math.round(z),b=Math.round(b));var nt=R9e(R).map(function(ot){return z+v*ot});return f(B?nt.reverse():nt)}return i.domain=function(R){return arguments.length?(a(R),F()):a()},i.range=function(R){return arguments.length?([g,w]=R,g=+g,w=+w,F()):[g,w]},i.rangeRound=function(R){return[g,w]=R,g=+g,w=+w,E=!0,F()},i.bandwidth=function(){return b},i.step=function(){return v},i.round=function(R){return arguments.length?(E=!!R,F()):E},i.padding=function(R){return arguments.length?(S=Math.min(1,_=+R),F()):S},i.paddingInner=function(R){return arguments.length?(S=Math.min(1,R),F()):S},i.paddingOuter=function(R){return arguments.length?(_=+R,F()):_},i.align=function(R){return arguments.length?(M=Math.max(0,Math.min(1,R)),F()):M},i.copy=function(){return V0t(a(),[g,w]).round(E).paddingInner(S).paddingOuter(_).align(M)},AW.apply(F(),arguments)}function FAe(i){return function(){return i}}function BAe(i){return+i}var DNt=[0,1];function HL(i){return i}function U0t(i,a){return(a-=i=+i)?function(f){return(f-i)/a}:FAe(isNaN(a)?NaN:.5)}function RAe(i,a){var f;return i>a&&(f=i,i=a,a=f),function(g){return Math.max(i,Math.min(a,g))}}function jAe(i,a,f){var g=i[0],w=i[1],v=a[0],b=a[1];return w<g?(g=U0t(w,g),v=f(b,v)):(g=U0t(g,w),v=f(v,b)),function(E){return v(g(E))}}function $Ae(i,a,f){var g=Math.min(i.length,a.length)-1,w=new Array(g),v=new Array(g),b=-1;for(i[g]<i[0]&&(i=i.slice().reverse(),a=a.slice().reverse());++b<g;)w[b]=U0t(i[b],i[b+1]),v[b]=f(a[b],a[b+1]);return function(E){var S=A9e(i,E,1,g)-1;return v[S](w[S](E))}}function MNt(i,a){return a.domain(i.domain()).range(i.range()).interpolate(i.interpolate()).clamp(i.clamp()).unknown(i.unknown())}function zAe(){var i=DNt,a=DNt,f=O0t,g,w,v,b=HL,E,S,_;function M(){var R=Math.min(i.length,a.length);return b!==HL&&(b=RAe(i[0],i[R-1])),E=R>2?$Ae:jAe,S=_=null,F}function F(R){return R==null||isNaN(R=+R)?v:(S||(S=E(i.map(g),a,f)))(g(b(R)))}return F.invert=function(R){return b(w((_||(_=E(a,i.map(g),$v)))(R)))},F.domain=function(R){return arguments.length?(i=Array.from(R,BAe),M()):i.slice()},F.range=function(R){return arguments.length?(a=Array.from(R),M()):a.slice()},F.rangeRound=function(R){return a=Array.from(R),f=ZSe,M()},F.clamp=function(R){return arguments.length?(b=R?!0:HL,M()):b!==HL},F.interpolate=function(R){return arguments.length?(f=R,M()):f},F.unknown=function(R){return arguments.length?(v=R,F):v},function(R,B){return g=R,w=B,M()}}function INt(){return zAe()(HL,HL)}function qAe(i,a,f,g){var w=w0t(i,a,f),v;switch(g=SW(g??",f"),g.type){case"s":{var b=Math.max(Math.abs(i),Math.abs(a));return g.precision==null&&!isNaN(v=NAe(w,b))&&(g.precision=v),ANt(g,b)}case"":case"e":case"g":case"p":case"r":{g.precision==null&&!isNaN(v=PAe(w,Math.max(Math.abs(i),Math.abs(a))))&&(g.precision=v-(g.type==="e"));break}case"f":case"%":{g.precision==null&&!isNaN(v=OAe(w))&&(g.precision=v-(g.type==="%")*2);break}}return _Nt(g)}function HAe(i){var a=i.domain;return i.ticks=function(f){var g=a();return P9e(g[0],g[g.length-1],f??10)},i.tickFormat=function(f,g){var w=a();return qAe(w[0],w[w.length-1],f??10,g)},i.nice=function(f){f==null&&(f=10);var g=a(),w=0,v=g.length-1,b=g[w],E=g[v],S,_,M=10;for(E<b&&(_=b,b=E,E=_,_=w,w=v,v=_);M-- >0;){if(_=b0t(b,E,f),_===S)return g[w]=b,g[v]=E,a(g);if(_>0)b=Math.floor(b/_)*_,E=Math.ceil(E/_)*_;else if(_<0)b=Math.ceil(b*_)/_,E=Math.floor(E*_)/_;else break;S=_}return i},i}function VL(){var i=INt();return i.copy=function(){return MNt(i,VL())},AW.apply(i,arguments),HAe(i)}function VAe(i,a){i=i.slice();var f=0,g=i.length-1,w=i[f],v=i[g],b;return v<w&&(b=f,f=g,g=b,b=w,w=v,v=b),i[f]=a.floor(w),i[g]=a.ceil(v),i}const G0t=new Date,K0t=new Date;function R1(i,a,f,g){function w(v){return i(v=arguments.length===0?new Date:new Date(+v)),v}return w.floor=v=>(i(v=new Date(+v)),v),w.ceil=v=>(i(v=new Date(v-1)),a(v,1),i(v),v),w.round=v=>{const b=w(v),E=w.ceil(v);return v-b<E-v?b:E},w.offset=(v,b)=>(a(v=new Date(+v),b==null?1:Math.floor(b)),v),w.range=(v,b,E)=>{const S=[];if(v=w.ceil(v),E=E==null?1:Math.floor(E),!(v<b)||!(E>0))return S;let _;do S.push(_=new Date(+v)),a(v,E),i(v);while(_<v&&v<b);return S},w.filter=v=>R1(b=>{if(b>=b)for(;i(b),!v(b);)b.setTime(b-1)},(b,E)=>{if(b>=b)if(E<0)for(;++E<=0;)for(;a(b,-1),!v(b););else for(;--E>=0;)for(;a(b,1),!v(b););}),f&&(w.count=(v,b)=>(G0t.setTime(+v),K0t.setTime(+b),i(G0t),i(K0t),Math.floor(f(G0t,K0t))),w.every=v=>(v=Math.floor(v),!isFinite(v)||!(v>0)?null:v>1?w.filter(g?b=>g(b)%v===0:b=>w.count(0,b)%v===0):w)),w}const UL=R1(()=>{},(i,a)=>{i.setTime(+i+a)},(i,a)=>a-i);UL.every=i=>(i=Math.floor(i),!isFinite(i)||!(i>0)?null:i>1?R1(a=>{a.setTime(Math.floor(a/i)*i)},(a,f)=>{a.setTime(+a+f*i)},(a,f)=>(f-a)/i):UL),UL.range;const Tx=1e3,Kw=Tx*60,Cx=Kw*60,Sx=Cx*24,W0t=Sx*7,ONt=Sx*30,Y0t=Sx*365,f8=R1(i=>{i.setTime(i-i.getMilliseconds())},(i,a)=>{i.setTime(+i+a*Tx)},(i,a)=>(a-i)/Tx,i=>i.getUTCSeconds());f8.range;const cF=R1(i=>{i.setTime(i-i.getMilliseconds()-i.getSeconds()*Tx)},(i,a)=>{i.setTime(+i+a*Kw)},(i,a)=>(a-i)/Kw,i=>i.getMinutes());cF.range,R1(i=>{i.setUTCSeconds(0,0)},(i,a)=>{i.setTime(+i+a*Kw)},(i,a)=>(a-i)/Kw,i=>i.getUTCMinutes()).range;const uF=R1(i=>{i.setTime(i-i.getMilliseconds()-i.getSeconds()*Tx-i.getMinutes()*Kw)},(i,a)=>{i.setTime(+i+a*Cx)},(i,a)=>(a-i)/Cx,i=>i.getHours());uF.range,R1(i=>{i.setUTCMinutes(0,0,0)},(i,a)=>{i.setTime(+i+a*Cx)},(i,a)=>(a-i)/Cx,i=>i.getUTCHours()).range;const c9=R1(i=>i.setHours(0,0,0,0),(i,a)=>i.setDate(i.getDate()+a),(i,a)=>(a-i-(a.getTimezoneOffset()-i.getTimezoneOffset())*Kw)/Sx,i=>i.getDate()-1);c9.range;const X0t=R1(i=>{i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCDate(i.getUTCDate()+a)},(i,a)=>(a-i)/Sx,i=>i.getUTCDate()-1);X0t.range,R1(i=>{i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCDate(i.getUTCDate()+a)},(i,a)=>(a-i)/Sx,i=>Math.floor(i/Sx)).range;function u9(i){return R1(a=>{a.setDate(a.getDate()-(a.getDay()+7-i)%7),a.setHours(0,0,0,0)},(a,f)=>{a.setDate(a.getDate()+f*7)},(a,f)=>(f-a-(f.getTimezoneOffset()-a.getTimezoneOffset())*Kw)/W0t)}const lF=u9(0),hF=u9(1),NNt=u9(2),PNt=u9(3),l9=u9(4),FNt=u9(5),BNt=u9(6);lF.range,hF.range,NNt.range,PNt.range,l9.range,FNt.range,BNt.range;function h9(i){return R1(a=>{a.setUTCDate(a.getUTCDate()-(a.getUTCDay()+7-i)%7),a.setUTCHours(0,0,0,0)},(a,f)=>{a.setUTCDate(a.getUTCDate()+f*7)},(a,f)=>(f-a)/W0t)}const RNt=h9(0),LW=h9(1),UAe=h9(2),GAe=h9(3),GL=h9(4),KAe=h9(5),WAe=h9(6);RNt.range,LW.range,UAe.range,GAe.range,GL.range,KAe.range,WAe.range;const fF=R1(i=>{i.setDate(1),i.setHours(0,0,0,0)},(i,a)=>{i.setMonth(i.getMonth()+a)},(i,a)=>a.getMonth()-i.getMonth()+(a.getFullYear()-i.getFullYear())*12,i=>i.getMonth());fF.range,R1(i=>{i.setUTCDate(1),i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCMonth(i.getUTCMonth()+a)},(i,a)=>a.getUTCMonth()-i.getUTCMonth()+(a.getUTCFullYear()-i.getUTCFullYear())*12,i=>i.getUTCMonth()).range;const _x=R1(i=>{i.setMonth(0,1),i.setHours(0,0,0,0)},(i,a)=>{i.setFullYear(i.getFullYear()+a)},(i,a)=>a.getFullYear()-i.getFullYear(),i=>i.getFullYear());_x.every=i=>!isFinite(i=Math.floor(i))||!(i>0)?null:R1(a=>{a.setFullYear(Math.floor(a.getFullYear()/i)*i),a.setMonth(0,1),a.setHours(0,0,0,0)},(a,f)=>{a.setFullYear(a.getFullYear()+f*i)}),_x.range;const f9=R1(i=>{i.setUTCMonth(0,1),i.setUTCHours(0,0,0,0)},(i,a)=>{i.setUTCFullYear(i.getUTCFullYear()+a)},(i,a)=>a.getUTCFullYear()-i.getUTCFullYear(),i=>i.getUTCFullYear());f9.every=i=>!isFinite(i=Math.floor(i))||!(i>0)?null:R1(a=>{a.setUTCFullYear(Math.floor(a.getUTCFullYear()/i)*i),a.setUTCMonth(0,1),a.setUTCHours(0,0,0,0)},(a,f)=>{a.setUTCFullYear(a.getUTCFullYear()+f*i)}),f9.range;function YAe(i,a,f,g,w,v){const b=[[f8,1,Tx],[f8,5,5*Tx],[f8,15,15*Tx],[f8,30,30*Tx],[v,1,Kw],[v,5,5*Kw],[v,15,15*Kw],[v,30,30*Kw],[w,1,Cx],[w,3,3*Cx],[w,6,6*Cx],[w,12,12*Cx],[g,1,Sx],[g,2,2*Sx],[f,1,W0t],[a,1,ONt],[a,3,3*ONt],[i,1,Y0t]];function E(_,M,F){const R=M<_;R&&([_,M]=[M,_]);const B=F&&typeof F.range=="function"?F:S(_,M,F),z=B?B.range(_,+M+1):[];return R?z.reverse():z}function S(_,M,F){const R=Math.abs(M-_)/F,B=p0t(([,,nt])=>nt).right(b,R);if(B===b.length)return i.every(w0t(_/Y0t,M/Y0t,F));if(B===0)return UL.every(Math.max(w0t(_,M,F),1));const[z,Y]=b[R/b[B-1][2]<b[B][2]/R?B-1:B];return z.every(Y)}return[E,S]}const[XAe,QAe]=YAe(_x,fF,lF,c9,uF,cF);function Q0t(i){if(0<=i.y&&i.y<100){var a=new Date(-1,i.m,i.d,i.H,i.M,i.S,i.L);return a.setFullYear(i.y),a}return new Date(i.y,i.m,i.d,i.H,i.M,i.S,i.L)}function J0t(i){if(0<=i.y&&i.y<100){var a=new Date(Date.UTC(-1,i.m,i.d,i.H,i.M,i.S,i.L));return a.setUTCFullYear(i.y),a}return new Date(Date.UTC(i.y,i.m,i.d,i.H,i.M,i.S,i.L))}function dF(i,a,f){return{y:i,m:a,d:f,H:0,M:0,S:0,L:0}}function JAe(i){var a=i.dateTime,f=i.date,g=i.time,w=i.periods,v=i.days,b=i.shortDays,E=i.months,S=i.shortMonths,_=gF(w),M=pF(w),F=gF(v),R=pF(v),B=gF(b),z=pF(b),Y=gF(E),nt=pF(E),ot=gF(S),ft=pF(S),wt={a:xt,A:Ft,b:Ct,B:kt,c:null,d:VNt,e:VNt,f:xLe,g:MLe,G:OLe,H:mLe,I:vLe,j:yLe,L:UNt,m:kLe,M:ELe,p:Gt,q:Fe,Q:QNt,s:JNt,S:TLe,u:CLe,U:SLe,V:_Le,w:ALe,W:LLe,x:null,X:null,y:DLe,Y:ILe,Z:NLe,"%":XNt},mt={a:Mt,A:pn,b:Ae,B:ye,c:null,d:KNt,e:KNt,f:RLe,g:WLe,G:XLe,H:PLe,I:FLe,j:BLe,L:WNt,m:jLe,M:$Le,p:tn,q:sn,Q:QNt,s:JNt,S:zLe,u:qLe,U:HLe,V:VLe,w:ULe,W:GLe,x:null,X:null,y:KLe,Y:YLe,Z:QLe,"%":XNt},ct={a:dt,A:K,b:yt,B:V,c:Ot,d:qNt,e:qNt,f:gLe,g:zNt,G:$Nt,H:HNt,I:HNt,j:lLe,L:dLe,m:uLe,M:hLe,p:Q,q:cLe,Q:bLe,s:wLe,S:fLe,u:rLe,U:iLe,V:sLe,w:nLe,W:aLe,x:It,X:jt,y:zNt,Y:$Nt,Z:oLe,"%":pLe};wt.x=rt(f,wt),wt.X=rt(g,wt),wt.c=rt(a,wt),mt.x=rt(f,mt),mt.X=rt(g,mt),mt.c=rt(a,mt);function rt(be,Ne){return function(Xt){var _e=[],xe=-1,Mn=0,ce=be.length,Br,we,Fi;for(Xt instanceof Date||(Xt=new Date(+Xt));++xe<ce;)be.charCodeAt(xe)===37&&(_e.push(be.slice(Mn,xe)),(we=jNt[Br=be.charAt(++xe)])!=null?Br=be.charAt(++xe):we=Br==="e"?" ":"0",(Fi=Ne[Br])&&(Br=Fi(Xt,we)),_e.push(Br),Mn=xe+1);return _e.push(be.slice(Mn,xe)),_e.join("")}}function it(be,Ne){return function(Xt){var _e=dF(1900,void 0,1),xe=gt(_e,be,Xt+="",0),Mn,ce;if(xe!=Xt.length)return null;if("Q"in _e)return new Date(_e.Q);if("s"in _e)return new Date(_e.s*1e3+("L"in _e?_e.L:0));if(Ne&&!("Z"in _e)&&(_e.Z=0),"p"in _e&&(_e.H=_e.H%12+_e.p*12),_e.m===void 0&&(_e.m="q"in _e?_e.q:0),"V"in _e){if(_e.V<1||_e.V>53)return null;"w"in _e||(_e.w=1),"Z"in _e?(Mn=J0t(dF(_e.y,0,1)),ce=Mn.getUTCDay(),Mn=ce>4||ce===0?LW.ceil(Mn):LW(Mn),Mn=X0t.offset(Mn,(_e.V-1)*7),_e.y=Mn.getUTCFullYear(),_e.m=Mn.getUTCMonth(),_e.d=Mn.getUTCDate()+(_e.w+6)%7):(Mn=Q0t(dF(_e.y,0,1)),ce=Mn.getDay(),Mn=ce>4||ce===0?hF.ceil(Mn):hF(Mn),Mn=c9.offset(Mn,(_e.V-1)*7),_e.y=Mn.getFullYear(),_e.m=Mn.getMonth(),_e.d=Mn.getDate()+(_e.w+6)%7)}else("W"in _e||"U"in _e)&&("w"in _e||(_e.w="u"in _e?_e.u%7:"W"in _e?1:0),ce="Z"in _e?J0t(dF(_e.y,0,1)).getUTCDay():Q0t(dF(_e.y,0,1)).getDay(),_e.m=0,_e.d="W"in _e?(_e.w+6)%7+_e.W*7-(ce+5)%7:_e.w+_e.U*7-(ce+6)%7);return"Z"in _e?(_e.H+=_e.Z/100|0,_e.M+=_e.Z%100,J0t(_e)):Q0t(_e)}}function gt(be,Ne,Xt,_e){for(var xe=0,Mn=Ne.length,ce=Xt.length,Br,we;xe<Mn;){if(_e>=ce)return-1;if(Br=Ne.charCodeAt(xe++),Br===37){if(Br=Ne.charAt(xe++),we=ct[Br in jNt?Ne.charAt(xe++):Br],!we||(_e=we(be,Xt,_e))<0)return-1}else if(Br!=Xt.charCodeAt(_e++))return-1}return _e}function Q(be,Ne,Xt){var _e=_.exec(Ne.slice(Xt));return _e?(be.p=M.get(_e[0].toLowerCase()),Xt+_e[0].length):-1}function dt(be,Ne,Xt){var _e=B.exec(Ne.slice(Xt));return _e?(be.w=z.get(_e[0].toLowerCase()),Xt+_e[0].length):-1}function K(be,Ne,Xt){var _e=F.exec(Ne.slice(Xt));return _e?(be.w=R.get(_e[0].toLowerCase()),Xt+_e[0].length):-1}function yt(be,Ne,Xt){var _e=ot.exec(Ne.slice(Xt));return _e?(be.m=ft.get(_e[0].toLowerCase()),Xt+_e[0].length):-1}function V(be,Ne,Xt){var _e=Y.exec(Ne.slice(Xt));return _e?(be.m=nt.get(_e[0].toLowerCase()),Xt+_e[0].length):-1}function Ot(be,Ne,Xt){return gt(be,a,Ne,Xt)}function It(be,Ne,Xt){return gt(be,f,Ne,Xt)}function jt(be,Ne,Xt){return gt(be,g,Ne,Xt)}function xt(be){return b[be.getDay()]}function Ft(be){return v[be.getDay()]}function Ct(be){return S[be.getMonth()]}function kt(be){return E[be.getMonth()]}function Gt(be){return w[+(be.getHours()>=12)]}function Fe(be){return 1+~~(be.getMonth()/3)}function Mt(be){return b[be.getUTCDay()]}function pn(be){return v[be.getUTCDay()]}function Ae(be){return S[be.getUTCMonth()]}function ye(be){return E[be.getUTCMonth()]}function tn(be){return w[+(be.getUTCHours()>=12)]}function sn(be){return 1+~~(be.getUTCMonth()/3)}return{format:function(be){var Ne=rt(be+="",wt);return Ne.toString=function(){return be},Ne},parse:function(be){var Ne=it(be+="",!1);return Ne.toString=function(){return be},Ne},utcFormat:function(be){var Ne=rt(be+="",mt);return Ne.toString=function(){return be},Ne},utcParse:function(be){var Ne=it(be+="",!0);return Ne.toString=function(){return be},Ne}}}var jNt={"-":"",_:" ",0:"0"},Ad=/^\s*\d+/,ZAe=/^%/,tLe=/[\\^$*+?|[\]().{}]/g;function Jc(i,a,f){var g=i<0?"-":"",w=(g?-i:i)+"",v=w.length;return g+(v<f?new Array(f-v+1).join(a)+w:w)}function eLe(i){return i.replace(tLe,"\\$&")}function gF(i){return new RegExp("^(?:"+i.map(eLe).join("|")+")","i")}function pF(i){return new Map(i.map((a,f)=>[a.toLowerCase(),f]))}function nLe(i,a,f){var g=Ad.exec(a.slice(f,f+1));return g?(i.w=+g[0],f+g[0].length):-1}function rLe(i,a,f){var g=Ad.exec(a.slice(f,f+1));return g?(i.u=+g[0],f+g[0].length):-1}function iLe(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.U=+g[0],f+g[0].length):-1}function sLe(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.V=+g[0],f+g[0].length):-1}function aLe(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.W=+g[0],f+g[0].length):-1}function $Nt(i,a,f){var g=Ad.exec(a.slice(f,f+4));return g?(i.y=+g[0],f+g[0].length):-1}function zNt(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.y=+g[0]+(+g[0]>68?1900:2e3),f+g[0].length):-1}function oLe(i,a,f){var g=/^(Z)|([+-]\d\d)(?::?(\d\d))?/.exec(a.slice(f,f+6));return g?(i.Z=g[1]?0:-(g[2]+(g[3]||"00")),f+g[0].length):-1}function cLe(i,a,f){var g=Ad.exec(a.slice(f,f+1));return g?(i.q=g[0]*3-3,f+g[0].length):-1}function uLe(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.m=g[0]-1,f+g[0].length):-1}function qNt(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.d=+g[0],f+g[0].length):-1}function lLe(i,a,f){var g=Ad.exec(a.slice(f,f+3));return g?(i.m=0,i.d=+g[0],f+g[0].length):-1}function HNt(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.H=+g[0],f+g[0].length):-1}function hLe(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.M=+g[0],f+g[0].length):-1}function fLe(i,a,f){var g=Ad.exec(a.slice(f,f+2));return g?(i.S=+g[0],f+g[0].length):-1}function dLe(i,a,f){var g=Ad.exec(a.slice(f,f+3));return g?(i.L=+g[0],f+g[0].length):-1}function gLe(i,a,f){var g=Ad.exec(a.slice(f,f+6));return g?(i.L=Math.floor(g[0]/1e3),f+g[0].length):-1}function pLe(i,a,f){var g=ZAe.exec(a.slice(f,f+1));return g?f+g[0].length:-1}function bLe(i,a,f){var g=Ad.exec(a.slice(f));return g?(i.Q=+g[0],f+g[0].length):-1}function wLe(i,a,f){var g=Ad.exec(a.slice(f));return g?(i.s=+g[0],f+g[0].length):-1}function VNt(i,a){return Jc(i.getDate(),a,2)}function mLe(i,a){return Jc(i.getHours(),a,2)}function vLe(i,a){return Jc(i.getHours()%12||12,a,2)}function yLe(i,a){return Jc(1+c9.count(_x(i),i),a,3)}function UNt(i,a){return Jc(i.getMilliseconds(),a,3)}function xLe(i,a){return UNt(i,a)+"000"}function kLe(i,a){return Jc(i.getMonth()+1,a,2)}function ELe(i,a){return Jc(i.getMinutes(),a,2)}function TLe(i,a){return Jc(i.getSeconds(),a,2)}function CLe(i){var a=i.getDay();return a===0?7:a}function SLe(i,a){return Jc(lF.count(_x(i)-1,i),a,2)}function GNt(i){var a=i.getDay();return a>=4||a===0?l9(i):l9.ceil(i)}function _Le(i,a){return i=GNt(i),Jc(l9.count(_x(i),i)+(_x(i).getDay()===4),a,2)}function ALe(i){return i.getDay()}function LLe(i,a){return Jc(hF.count(_x(i)-1,i),a,2)}function DLe(i,a){return Jc(i.getFullYear()%100,a,2)}function MLe(i,a){return i=GNt(i),Jc(i.getFullYear()%100,a,2)}function ILe(i,a){return Jc(i.getFullYear()%1e4,a,4)}function OLe(i,a){var f=i.getDay();return i=f>=4||f===0?l9(i):l9.ceil(i),Jc(i.getFullYear()%1e4,a,4)}function NLe(i){var a=i.getTimezoneOffset();return(a>0?"-":(a*=-1,"+"))+Jc(a/60|0,"0",2)+Jc(a%60,"0",2)}function KNt(i,a){return Jc(i.getUTCDate(),a,2)}function PLe(i,a){return Jc(i.getUTCHours(),a,2)}function FLe(i,a){return Jc(i.getUTCHours()%12||12,a,2)}function BLe(i,a){return Jc(1+X0t.count(f9(i),i),a,3)}function WNt(i,a){return Jc(i.getUTCMilliseconds(),a,3)}function RLe(i,a){return WNt(i,a)+"000"}function jLe(i,a){return Jc(i.getUTCMonth()+1,a,2)}function $Le(i,a){return Jc(i.getUTCMinutes(),a,2)}function zLe(i,a){return Jc(i.getUTCSeconds(),a,2)}function qLe(i){var a=i.getUTCDay();return a===0?7:a}function HLe(i,a){return Jc(RNt.count(f9(i)-1,i),a,2)}function YNt(i){var a=i.getUTCDay();return a>=4||a===0?GL(i):GL.ceil(i)}function VLe(i,a){return i=YNt(i),Jc(GL.count(f9(i),i)+(f9(i).getUTCDay()===4),a,2)}function ULe(i){return i.getUTCDay()}function GLe(i,a){return Jc(LW.count(f9(i)-1,i),a,2)}function KLe(i,a){return Jc(i.getUTCFullYear()%100,a,2)}function WLe(i,a){return i=YNt(i),Jc(i.getUTCFullYear()%100,a,2)}function YLe(i,a){return Jc(i.getUTCFullYear()%1e4,a,4)}function XLe(i,a){var f=i.getUTCDay();return i=f>=4||f===0?GL(i):GL.ceil(i),Jc(i.getUTCFullYear()%1e4,a,4)}function QLe(){return"+0000"}function XNt(){return"%"}function QNt(i){return+i}function JNt(i){return Math.floor(+i/1e3)}var KL,DW;JLe({dateTime:"%x, %X",date:"%-m/%-d/%Y",time:"%-I:%M:%S %p",periods:["AM","PM"],days:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],shortDays:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],months:["January","February","March","April","May","June","July","August","September","October","November","December"],shortMonths:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"]});function JLe(i){return KL=JAe(i),DW=KL.format,KL.parse,KL.utcFormat,KL.utcParse,KL}function ZLe(i){return new Date(i)}function tDe(i){return i instanceof Date?+i:+new Date(+i)}function ZNt(i,a,f,g,w,v,b,E,S,_){var M=INt(),F=M.invert,R=M.domain,B=_(".%L"),z=_(":%S"),Y=_("%I:%M"),nt=_("%I %p"),ot=_("%a %d"),ft=_("%b %d"),wt=_("%B"),mt=_("%Y");function ct(rt){return(S(rt)<rt?B:E(rt)<rt?z:b(rt)<rt?Y:v(rt)<rt?nt:g(rt)<rt?w(rt)<rt?ot:ft:f(rt)<rt?wt:mt)(rt)}return M.invert=function(rt){return new Date(F(rt))},M.domain=function(rt){return arguments.length?R(Array.from(rt,tDe)):R().map(ZLe)},M.ticks=function(rt){var it=R();return i(it[0],it[it.length-1],rt??10)},M.tickFormat=function(rt,it){return it==null?ct:_(it)},M.nice=function(rt){var it=R();return(!rt||typeof rt.range!="function")&&(rt=a(it[0],it[it.length-1],rt??10)),rt?R(VAe(it,rt)):M},M.copy=function(){return MNt(M,ZNt(i,a,f,g,w,v,b,E,S,_))},M}function eDe(){return AW.apply(ZNt(XAe,QAe,_x,fF,lF,c9,uF,cF,f8,DW).domain([new Date(2e3,0,1),new Date(2e3,0,2)]),arguments)}function nDe(i){for(var a=i.length/6|0,f=new Array(a),g=0;g<a;)f[g]="#"+i.slice(g*6,++g*6);return f}const tPt=nDe("4e79a7f28e2ce1575976b7b259a14fedc949af7aa1ff9da79c755fbab0ab");function kf(i){return function(){return i}}const ePt=Math.abs,ng=Math.atan2,d9=Math.cos,rDe=Math.max,Z0t=Math.min,t4=Math.sin,WL=Math.sqrt,rg=1e-12,bF=Math.PI,MW=bF/2,IW=2*bF;function iDe(i){return i>1?0:i<-1?bF:Math.acos(i)}function nPt(i){return i>=1?MW:i<=-1?-MW:Math.asin(i)}function rPt(i){let a=3;return i.digits=function(f){if(!arguments.length)return a;if(f==null)a=null;else{const g=Math.floor(f);if(!(g>=0))throw new RangeError(`invalid digits: ${f}`);a=g}return i},()=>new yAe(a)}function sDe(i){return i.innerRadius}function aDe(i){return i.outerRadius}function oDe(i){return i.startAngle}function cDe(i){return i.endAngle}function uDe(i){return i&&i.padAngle}function lDe(i,a,f,g,w,v,b,E){var S=f-i,_=g-a,M=b-w,F=E-v,R=F*S-M*_;if(!(R*R<rg))return R=(M*(a-v)-F*(i-w))/R,[i+R*S,a+R*_]}function OW(i,a,f,g,w,v,b){var E=i-f,S=a-g,_=(b?v:-v)/WL(E*E+S*S),M=_*S,F=-_*E,R=i+M,B=a+F,z=f+M,Y=g+F,nt=(R+z)/2,ot=(B+Y)/2,ft=z-R,wt=Y-B,mt=ft*ft+wt*wt,ct=w-v,rt=R*Y-z*B,it=(wt<0?-1:1)*WL(rDe(0,ct*ct*mt-rt*rt)),gt=(rt*wt-ft*it)/mt,Q=(-rt*ft-wt*it)/mt,dt=(rt*wt+ft*it)/mt,K=(-rt*ft+wt*it)/mt,yt=gt-nt,V=Q-ot,Ot=dt-nt,It=K-ot;return yt*yt+V*V>Ot*Ot+It*It&&(gt=dt,Q=K),{cx:gt,cy:Q,x01:-M,y01:-F,x11:gt*(w/ct-1),y11:Q*(w/ct-1)}}function YL(){var i=sDe,a=aDe,f=kf(0),g=null,w=oDe,v=cDe,b=uDe,E=null,S=rPt(_);function _(){var M,F,R=+i.apply(this,arguments),B=+a.apply(this,arguments),z=w.apply(this,arguments)-MW,Y=v.apply(this,arguments)-MW,nt=ePt(Y-z),ot=Y>z;if(E||(E=M=S()),B<R&&(F=B,B=R,R=F),!(B>rg))E.moveTo(0,0);else if(nt>IW-rg)E.moveTo(B*d9(z),B*t4(z)),E.arc(0,0,B,z,Y,!ot),R>rg&&(E.moveTo(R*d9(Y),R*t4(Y)),E.arc(0,0,R,Y,z,ot));else{var ft=z,wt=Y,mt=z,ct=Y,rt=nt,it=nt,gt=b.apply(this,arguments)/2,Q=gt>rg&&(g?+g.apply(this,arguments):WL(R*R+B*B)),dt=Z0t(ePt(B-R)/2,+f.apply(this,arguments)),K=dt,yt=dt,V,Ot;if(Q>rg){var It=nPt(Q/R*t4(gt)),jt=nPt(Q/B*t4(gt));(rt-=It*2)>rg?(It*=ot?1:-1,mt+=It,ct-=It):(rt=0,mt=ct=(z+Y)/2),(it-=jt*2)>rg?(jt*=ot?1:-1,ft+=jt,wt-=jt):(it=0,ft=wt=(z+Y)/2)}var xt=B*d9(ft),Ft=B*t4(ft),Ct=R*d9(ct),kt=R*t4(ct);if(dt>rg){var Gt=B*d9(wt),Fe=B*t4(wt),Mt=R*d9(mt),pn=R*t4(mt),Ae;if(nt<bF)if(Ae=lDe(xt,Ft,Mt,pn,Gt,Fe,Ct,kt)){var ye=xt-Ae[0],tn=Ft-Ae[1],sn=Gt-Ae[0],be=Fe-Ae[1],Ne=1/t4(iDe((ye*sn+tn*be)/(WL(ye*ye+tn*tn)*WL(sn*sn+be*be)))/2),Xt=WL(Ae[0]*Ae[0]+Ae[1]*Ae[1]);K=Z0t(dt,(R-Xt)/(Ne-1)),yt=Z0t(dt,(B-Xt)/(Ne+1))}else K=yt=0}it>rg?yt>rg?(V=OW(Mt,pn,xt,Ft,B,yt,ot),Ot=OW(Gt,Fe,Ct,kt,B,yt,ot),E.moveTo(V.cx+V.x01,V.cy+V.y01),yt<dt?E.arc(V.cx,V.cy,yt,ng(V.y01,V.x01),ng(Ot.y01,Ot.x01),!ot):(E.arc(V.cx,V.cy,yt,ng(V.y01,V.x01),ng(V.y11,V.x11),!ot),E.arc(0,0,B,ng(V.cy+V.y11,V.cx+V.x11),ng(Ot.cy+Ot.y11,Ot.cx+Ot.x11),!ot),E.arc(Ot.cx,Ot.cy,yt,ng(Ot.y11,Ot.x11),ng(Ot.y01,Ot.x01),!ot))):(E.moveTo(xt,Ft),E.arc(0,0,B,ft,wt,!ot)):E.moveTo(xt,Ft),!(R>rg)||!(rt>rg)?E.lineTo(Ct,kt):K>rg?(V=OW(Ct,kt,Gt,Fe,R,-K,ot),Ot=OW(xt,Ft,Mt,pn,R,-K,ot),E.lineTo(V.cx+V.x01,V.cy+V.y01),K<dt?E.arc(V.cx,V.cy,K,ng(V.y01,V.x01),ng(Ot.y01,Ot.x01),!ot):(E.arc(V.cx,V.cy,K,ng(V.y01,V.x01),ng(V.y11,V.x11),!ot),E.arc(0,0,R,ng(V.cy+V.y11,V.cx+V.x11),ng(Ot.cy+Ot.y11,Ot.cx+Ot.x11),ot),E.arc(Ot.cx,Ot.cy,K,ng(Ot.y11,Ot.x11),ng(Ot.y01,Ot.x01),!ot))):E.arc(0,0,R,ct,mt,ot)}if(E.closePath(),M)return E=null,M+""||null}return _.centroid=function(){var M=(+i.apply(this,arguments)+ +a.apply(this,arguments))/2,F=(+w.apply(this,arguments)+ +v.apply(this,arguments))/2-bF/2;return[d9(F)*M,t4(F)*M]},_.innerRadius=function(M){return arguments.length?(i=typeof M=="function"?M:kf(+M),_):i},_.outerRadius=function(M){return arguments.length?(a=typeof M=="function"?M:kf(+M),_):a},_.cornerRadius=function(M){return arguments.length?(f=typeof M=="function"?M:kf(+M),_):f},_.padRadius=function(M){return arguments.length?(g=M==null?null:typeof M=="function"?M:kf(+M),_):g},_.startAngle=function(M){return arguments.length?(w=typeof M=="function"?M:kf(+M),_):w},_.endAngle=function(M){return arguments.length?(v=typeof M=="function"?M:kf(+M),_):v},_.padAngle=function(M){return arguments.length?(b=typeof M=="function"?M:kf(+M),_):b},_.context=function(M){return arguments.length?(E=M??null,_):E},_}function iPt(i){return typeof i=="object"&&"length"in i?i:Array.from(i)}function sPt(i){this._context=i}sPt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;default:this._context.lineTo(i,a);break}}};function Kg(i){return new sPt(i)}function hDe(i){return i[0]}function fDe(i){return i[1]}function Ax(i,a){var f=kf(!0),g=null,w=Kg,v=null,b=rPt(E);i=typeof i=="function"?i:i===void 0?hDe:kf(i),a=typeof a=="function"?a:a===void 0?fDe:kf(a);function E(S){var _,M=(S=iPt(S)).length,F,R=!1,B;for(g==null&&(v=w(B=b())),_=0;_<=M;++_)!(_<M&&f(F=S[_],_,S))===R&&((R=!R)?v.lineStart():v.lineEnd()),R&&v.point(+i(F,_,S),+a(F,_,S));if(B)return v=null,B+""||null}return E.x=function(S){return arguments.length?(i=typeof S=="function"?S:kf(+S),E):i},E.y=function(S){return arguments.length?(a=typeof S=="function"?S:kf(+S),E):a},E.defined=function(S){return arguments.length?(f=typeof S=="function"?S:kf(!!S),E):f},E.curve=function(S){return arguments.length?(w=S,g!=null&&(v=w(g)),E):w},E.context=function(S){return arguments.length?(S==null?g=v=null:v=w(g=S),E):g},E}function dDe(i,a){return a<i?-1:a>i?1:a>=i?0:NaN}function gDe(i){return i}function pDe(){var i=gDe,a=dDe,f=null,g=kf(0),w=kf(IW),v=kf(0);function b(E){var S,_=(E=iPt(E)).length,M,F,R=0,B=new Array(_),z=new Array(_),Y=+g.apply(this,arguments),nt=Math.min(IW,Math.max(-IW,w.apply(this,arguments)-Y)),ot,ft=Math.min(Math.abs(nt)/_,v.apply(this,arguments)),wt=ft*(nt<0?-1:1),mt;for(S=0;S<_;++S)(mt=z[B[S]=S]=+i(E[S],S,E))>0&&(R+=mt);for(a!=null?B.sort(function(ct,rt){return a(z[ct],z[rt])}):f!=null&&B.sort(function(ct,rt){return f(E[ct],E[rt])}),S=0,F=R?(nt-_*wt)/R:0;S<_;++S,Y=ot)M=B[S],mt=z[M],ot=Y+(mt>0?mt*F:0)+wt,z[M]={data:E[M],index:S,value:mt,startAngle:Y,endAngle:ot,padAngle:ft};return z}return b.value=function(E){return arguments.length?(i=typeof E=="function"?E:kf(+E),b):i},b.sortValues=function(E){return arguments.length?(a=E,f=null,b):a},b.sort=function(E){return arguments.length?(f=E,a=null,b):f},b.startAngle=function(E){return arguments.length?(g=typeof E=="function"?E:kf(+E),b):g},b.endAngle=function(E){return arguments.length?(w=typeof E=="function"?E:kf(+E),b):w},b.padAngle=function(E){return arguments.length?(v=typeof E=="function"?E:kf(+E),b):v},b}class aPt{constructor(a,f){this._context=a,this._x=f}areaStart(){this._line=0}areaEnd(){this._line=NaN}lineStart(){this._point=0}lineEnd(){(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line}point(a,f){switch(a=+a,f=+f,this._point){case 0:{this._point=1,this._line?this._context.lineTo(a,f):this._context.moveTo(a,f);break}case 1:this._point=2;default:{this._x?this._context.bezierCurveTo(this._x0=(this._x0+a)/2,this._y0,this._x0,f,a,f):this._context.bezierCurveTo(this._x0,this._y0=(this._y0+f)/2,a,this._y0,a,f);break}}this._x0=a,this._y0=f}}function bDe(i){return new aPt(i,!0)}function wDe(i){return new aPt(i,!1)}function d8(){}function NW(i,a,f){i._context.bezierCurveTo((2*i._x0+i._x1)/3,(2*i._y0+i._y1)/3,(i._x0+2*i._x1)/3,(i._y0+2*i._y1)/3,(i._x0+4*i._x1+a)/6,(i._y0+4*i._y1+f)/6)}function PW(i){this._context=i}PW.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){switch(this._point){case 3:NW(this,this._x1,this._y1);case 2:this._context.lineTo(this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3,this._context.lineTo((5*this._x0+this._x1)/6,(5*this._y0+this._y1)/6);default:NW(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function wF(i){return new PW(i)}function oPt(i){this._context=i}oPt.prototype={areaStart:d8,areaEnd:d8,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._y0=this._y1=this._y2=this._y3=this._y4=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x2,this._y2),this._context.closePath();break}case 2:{this._context.moveTo((this._x2+2*this._x3)/3,(this._y2+2*this._y3)/3),this._context.lineTo((this._x3+2*this._x2)/3,(this._y3+2*this._y2)/3),this._context.closePath();break}case 3:{this.point(this._x2,this._y2),this.point(this._x3,this._y3),this.point(this._x4,this._y4);break}}},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x2=i,this._y2=a;break;case 1:this._point=2,this._x3=i,this._y3=a;break;case 2:this._point=3,this._x4=i,this._y4=a,this._context.moveTo((this._x0+4*this._x1+i)/6,(this._y0+4*this._y1+a)/6);break;default:NW(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function mDe(i){return new oPt(i)}function cPt(i){this._context=i}cPt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3;var f=(this._x0+4*this._x1+i)/6,g=(this._y0+4*this._y1+a)/6;this._line?this._context.lineTo(f,g):this._context.moveTo(f,g);break;case 3:this._point=4;default:NW(this,i,a);break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a}};function vDe(i){return new cPt(i)}function uPt(i,a){this._basis=new PW(i),this._beta=a}uPt.prototype={lineStart:function(){this._x=[],this._y=[],this._basis.lineStart()},lineEnd:function(){var i=this._x,a=this._y,f=i.length-1;if(f>0)for(var g=i[0],w=a[0],v=i[f]-g,b=a[f]-w,E=-1,S;++E<=f;)S=E/f,this._basis.point(this._beta*i[E]+(1-this._beta)*(g+S*v),this._beta*a[E]+(1-this._beta)*(w+S*b));this._x=this._y=null,this._basis.lineEnd()},point:function(i,a){this._x.push(+i),this._y.push(+a)}};const yDe=function i(a){function f(g){return a===1?new PW(g):new uPt(g,a)}return f.beta=function(g){return i(+g)},f}(.85);function FW(i,a,f){i._context.bezierCurveTo(i._x1+i._k*(i._x2-i._x0),i._y1+i._k*(i._y2-i._y0),i._x2+i._k*(i._x1-a),i._y2+i._k*(i._y1-f),i._x2,i._y2)}function tgt(i,a){this._context=i,this._k=(1-a)/6}tgt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:FW(this,this._x1,this._y1);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2,this._x1=i,this._y1=a;break;case 2:this._point=3;default:FW(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const xDe=function i(a){function f(g){return new tgt(g,a)}return f.tension=function(g){return i(+g)},f}(0);function egt(i,a){this._context=i,this._k=(1-a)/6}egt.prototype={areaStart:d8,areaEnd:d8,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._x3=i,this._y3=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:FW(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const kDe=function i(a){function f(g){return new egt(g,a)}return f.tension=function(g){return i(+g)},f}(0);function ngt(i,a){this._context=i,this._k=(1-a)/6}ngt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:FW(this,i,a);break}this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const EDe=function i(a){function f(g){return new ngt(g,a)}return f.tension=function(g){return i(+g)},f}(0);function rgt(i,a,f){var g=i._x1,w=i._y1,v=i._x2,b=i._y2;if(i._l01_a>rg){var E=2*i._l01_2a+3*i._l01_a*i._l12_a+i._l12_2a,S=3*i._l01_a*(i._l01_a+i._l12_a);g=(g*E-i._x0*i._l12_2a+i._x2*i._l01_2a)/S,w=(w*E-i._y0*i._l12_2a+i._y2*i._l01_2a)/S}if(i._l23_a>rg){var _=2*i._l23_2a+3*i._l23_a*i._l12_a+i._l12_2a,M=3*i._l23_a*(i._l23_a+i._l12_a);v=(v*_+i._x1*i._l23_2a-a*i._l12_2a)/M,b=(b*_+i._y1*i._l23_2a-f*i._l12_2a)/M}i._context.bezierCurveTo(g,w,v,b,i._x2,i._y2)}function lPt(i,a){this._context=i,this._alpha=a}lPt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x2,this._y2);break;case 3:this.point(this._x2,this._y2);break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,g=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+g*g,this._alpha))}switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3;default:rgt(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const TDe=function i(a){function f(g){return a?new lPt(g,a):new tgt(g,0)}return f.alpha=function(g){return i(+g)},f}(.5);function hPt(i,a){this._context=i,this._alpha=a}hPt.prototype={areaStart:d8,areaEnd:d8,lineStart:function(){this._x0=this._x1=this._x2=this._x3=this._x4=this._x5=this._y0=this._y1=this._y2=this._y3=this._y4=this._y5=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){switch(this._point){case 1:{this._context.moveTo(this._x3,this._y3),this._context.closePath();break}case 2:{this._context.lineTo(this._x3,this._y3),this._context.closePath();break}case 3:{this.point(this._x3,this._y3),this.point(this._x4,this._y4),this.point(this._x5,this._y5);break}}},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,g=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+g*g,this._alpha))}switch(this._point){case 0:this._point=1,this._x3=i,this._y3=a;break;case 1:this._point=2,this._context.moveTo(this._x4=i,this._y4=a);break;case 2:this._point=3,this._x5=i,this._y5=a;break;default:rgt(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const CDe=function i(a){function f(g){return a?new hPt(g,a):new egt(g,0)}return f.alpha=function(g){return i(+g)},f}(.5);function fPt(i,a){this._context=i,this._alpha=a}fPt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._x2=this._y0=this._y1=this._y2=NaN,this._l01_a=this._l12_a=this._l23_a=this._l01_2a=this._l12_2a=this._l23_2a=this._point=0},lineEnd:function(){(this._line||this._line!==0&&this._point===3)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){if(i=+i,a=+a,this._point){var f=this._x2-i,g=this._y2-a;this._l23_a=Math.sqrt(this._l23_2a=Math.pow(f*f+g*g,this._alpha))}switch(this._point){case 0:this._point=1;break;case 1:this._point=2;break;case 2:this._point=3,this._line?this._context.lineTo(this._x2,this._y2):this._context.moveTo(this._x2,this._y2);break;case 3:this._point=4;default:rgt(this,i,a);break}this._l01_a=this._l12_a,this._l12_a=this._l23_a,this._l01_2a=this._l12_2a,this._l12_2a=this._l23_2a,this._x0=this._x1,this._x1=this._x2,this._x2=i,this._y0=this._y1,this._y1=this._y2,this._y2=a}};const SDe=function i(a){function f(g){return a?new fPt(g,a):new ngt(g,0)}return f.alpha=function(g){return i(+g)},f}(.5);function dPt(i){this._context=i}dPt.prototype={areaStart:d8,areaEnd:d8,lineStart:function(){this._point=0},lineEnd:function(){this._point&&this._context.closePath()},point:function(i,a){i=+i,a=+a,this._point?this._context.lineTo(i,a):(this._point=1,this._context.moveTo(i,a))}};function _De(i){return new dPt(i)}function gPt(i){return i<0?-1:1}function pPt(i,a,f){var g=i._x1-i._x0,w=a-i._x1,v=(i._y1-i._y0)/(g||w<0&&-0),b=(f-i._y1)/(w||g<0&&-0),E=(v*w+b*g)/(g+w);return(gPt(v)+gPt(b))*Math.min(Math.abs(v),Math.abs(b),.5*Math.abs(E))||0}function bPt(i,a){var f=i._x1-i._x0;return f?(3*(i._y1-i._y0)/f-a)/2:a}function igt(i,a,f){var g=i._x0,w=i._y0,v=i._x1,b=i._y1,E=(v-g)/3;i._context.bezierCurveTo(g+E,w+E*a,v-E,b-E*f,v,b)}function BW(i){this._context=i}BW.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x0=this._x1=this._y0=this._y1=this._t0=NaN,this._point=0},lineEnd:function(){switch(this._point){case 2:this._context.lineTo(this._x1,this._y1);break;case 3:igt(this,this._t0,bPt(this,this._t0));break}(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line=1-this._line},point:function(i,a){var f=NaN;if(i=+i,a=+a,!(i===this._x1&&a===this._y1)){switch(this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;break;case 2:this._point=3,igt(this,bPt(this,f=pPt(this,i,a)),f);break;default:igt(this,this._t0,f=pPt(this,i,a));break}this._x0=this._x1,this._x1=i,this._y0=this._y1,this._y1=a,this._t0=f}}};function wPt(i){this._context=new mPt(i)}(wPt.prototype=Object.create(BW.prototype)).point=function(i,a){BW.prototype.point.call(this,a,i)};function mPt(i){this._context=i}mPt.prototype={moveTo:function(i,a){this._context.moveTo(a,i)},closePath:function(){this._context.closePath()},lineTo:function(i,a){this._context.lineTo(a,i)},bezierCurveTo:function(i,a,f,g,w,v){this._context.bezierCurveTo(a,i,g,f,v,w)}};function ADe(i){return new BW(i)}function LDe(i){return new wPt(i)}function vPt(i){this._context=i}vPt.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=[],this._y=[]},lineEnd:function(){var i=this._x,a=this._y,f=i.length;if(f)if(this._line?this._context.lineTo(i[0],a[0]):this._context.moveTo(i[0],a[0]),f===2)this._context.lineTo(i[1],a[1]);else for(var g=yPt(i),w=yPt(a),v=0,b=1;b<f;++v,++b)this._context.bezierCurveTo(g[0][v],w[0][v],g[1][v],w[1][v],i[b],a[b]);(this._line||this._line!==0&&f===1)&&this._context.closePath(),this._line=1-this._line,this._x=this._y=null},point:function(i,a){this._x.push(+i),this._y.push(+a)}};function yPt(i){var a,f=i.length-1,g,w=new Array(f),v=new Array(f),b=new Array(f);for(w[0]=0,v[0]=2,b[0]=i[0]+2*i[1],a=1;a<f-1;++a)w[a]=1,v[a]=4,b[a]=4*i[a]+2*i[a+1];for(w[f-1]=2,v[f-1]=7,b[f-1]=8*i[f-1]+i[f],a=1;a<f;++a)g=w[a]/v[a-1],v[a]-=g,b[a]-=g*b[a-1];for(w[f-1]=b[f-1]/v[f-1],a=f-2;a>=0;--a)w[a]=(b[a]-w[a+1])/v[a];for(v[f-1]=(i[f]+w[f-1])/2,a=0;a<f-1;++a)v[a]=2*i[a+1]-w[a+1];return[w,v]}function DDe(i){return new vPt(i)}function RW(i,a){this._context=i,this._t=a}RW.prototype={areaStart:function(){this._line=0},areaEnd:function(){this._line=NaN},lineStart:function(){this._x=this._y=NaN,this._point=0},lineEnd:function(){0<this._t&&this._t<1&&this._point===2&&this._context.lineTo(this._x,this._y),(this._line||this._line!==0&&this._point===1)&&this._context.closePath(),this._line>=0&&(this._t=1-this._t,this._line=1-this._line)},point:function(i,a){switch(i=+i,a=+a,this._point){case 0:this._point=1,this._line?this._context.lineTo(i,a):this._context.moveTo(i,a);break;case 1:this._point=2;default:{if(this._t<=0)this._context.lineTo(this._x,a),this._context.lineTo(i,a);else{var f=this._x*(1-this._t)+i*this._t;this._context.lineTo(f,this._y),this._context.lineTo(f,a)}break}}this._x=i,this._y=a}};function MDe(i){return new RW(i,.5)}function IDe(i){return new RW(i,0)}function ODe(i){return new RW(i,1)}function mF(i,a,f){this.k=i,this.x=a,this.y=f}mF.prototype={constructor:mF,scale:function(i){return i===1?this:new mF(this.k*i,this.x,this.y)},translate:function(i,a){return i===0&a===0?this:new mF(this.k,this.x+this.k*i,this.y+this.k*a)},apply:function(i){return[i[0]*this.k+this.x,i[1]*this.k+this.y]},applyX:function(i){return i*this.k+this.x},applyY:function(i){return i*this.k+this.y},invert:function(i){return[(i[0]-this.x)/this.k,(i[1]-this.y)/this.k]},invertX:function(i){return(i-this.x)/this.k},invertY:function(i){return(i-this.y)/this.k},rescaleX:function(i){return i.copy().domain(i.range().map(this.invertX,this).map(i.invert,i))},rescaleY:function(i){return i.copy().domain(i.range().map(this.invertY,this).map(i.invert,i))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}},mF.prototype;/*! @license DOMPurify 3.0.5 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.0.5/LICENSE */const{entries:xPt,setPrototypeOf:kPt,isFrozen:NDe,getPrototypeOf:PDe,getOwnPropertyDescriptor:FDe}=Object;let{freeze:Wg,seal:qv,create:BDe}=Object,{apply:sgt,construct:agt}=typeof Reflect<"u"&&Reflect;sgt||(sgt=function(a,f,g){return a.apply(f,g)}),Wg||(Wg=function(a){return a}),qv||(qv=function(a){return a}),agt||(agt=function(a,f){return new a(...f)});const RDe=Ww(Array.prototype.forEach),EPt=Ww(Array.prototype.pop),vF=Ww(Array.prototype.push),jW=Ww(String.prototype.toLowerCase),ogt=Ww(String.prototype.toString),jDe=Ww(String.prototype.match),Hv=Ww(String.prototype.replace),$De=Ww(String.prototype.indexOf),zDe=Ww(String.prototype.trim),E2=Ww(RegExp.prototype.test),yF=qDe(TypeError);function Ww(i){return function(a){for(var f=arguments.length,g=new Array(f>1?f-1:0),w=1;w<f;w++)g[w-1]=arguments[w];return sgt(i,a,g)}}function qDe(i){return function(){for(var a=arguments.length,f=new Array(a),g=0;g<a;g++)f[g]=arguments[g];return agt(i,f)}}function Fo(i,a,f){var g;f=(g=f)!==null&&g!==void 0?g:jW,kPt&&kPt(i,null);let w=a.length;for(;w--;){let v=a[w];if(typeof v=="string"){const b=f(v);b!==v&&(NDe(a)||(a[w]=b),v=b)}i[v]=!0}return i}function XL(i){const a=BDe(null);for(const[f,g]of xPt(i))a[f]=g;return a}function $W(i,a){for(;i!==null;){const g=FDe(i,a);if(g){if(g.get)return Ww(g.get);if(typeof g.value=="function")return Ww(g.value)}i=PDe(i)}function f(g){return console.warn("fallback value for",g),null}return f}const TPt=Wg(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),cgt=Wg(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),ugt=Wg(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),HDe=Wg(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),lgt=Wg(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),VDe=Wg(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),CPt=Wg(["#text"]),SPt=Wg(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","xmlns","slot"]),hgt=Wg(["accent-height","accumulate","additive","alignment-baseline","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),_Pt=Wg(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),zW=Wg(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),UDe=qv(/\{\{[\w\W]*|[\w\W]*\}\}/gm),GDe=qv(/<%[\w\W]*|[\w\W]*%>/gm),KDe=qv(/\${[\w\W]*}/gm),WDe=qv(/^data-[\-\w.\u00B7-\uFFFF]/),YDe=qv(/^aria-[\-\w]+$/),APt=qv(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),XDe=qv(/^(?:\w+script|data):/i),QDe=qv(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),LPt=qv(/^html$/i);var DPt=Object.freeze({__proto__:null,MUSTACHE_EXPR:UDe,ERB_EXPR:GDe,TMPLIT_EXPR:KDe,DATA_ATTR:WDe,ARIA_ATTR:YDe,IS_ALLOWED_URI:APt,IS_SCRIPT_OR_DATA:XDe,ATTR_WHITESPACE:QDe,DOCTYPE_NAME:LPt});const JDe=()=>typeof window>"u"?null:window,ZDe=function(a,f){if(typeof a!="object"||typeof a.createPolicy!="function")return null;let g=null;const w="data-tt-policy-suffix";f&&f.hasAttribute(w)&&(g=f.getAttribute(w));const v="dompurify"+(g?"#"+g:"");try{return a.createPolicy(v,{createHTML(b){return b},createScriptURL(b){return b}})}catch{return console.warn("TrustedTypes policy "+v+" could not be created."),null}};function MPt(){let i=arguments.length>0&&arguments[0]!==void 0?arguments[0]:JDe();const a=Gi=>MPt(Gi);if(a.version="3.0.5",a.removed=[],!i||!i.document||i.document.nodeType!==9)return a.isSupported=!1,a;const f=i.document,g=f.currentScript;let{document:w}=i;const{DocumentFragment:v,HTMLTemplateElement:b,Node:E,Element:S,NodeFilter:_,NamedNodeMap:M=i.NamedNodeMap||i.MozNamedAttrMap,HTMLFormElement:F,DOMParser:R,trustedTypes:B}=i,z=S.prototype,Y=$W(z,"cloneNode"),nt=$W(z,"nextSibling"),ot=$W(z,"childNodes"),ft=$W(z,"parentNode");if(typeof b=="function"){const Gi=w.createElement("template");Gi.content&&Gi.content.ownerDocument&&(w=Gi.content.ownerDocument)}let wt,mt="";const{implementation:ct,createNodeIterator:rt,createDocumentFragment:it,getElementsByTagName:gt}=w,{importNode:Q}=f;let dt={};a.isSupported=typeof xPt=="function"&&typeof ft=="function"&&ct&&ct.createHTMLDocument!==void 0;const{MUSTACHE_EXPR:K,ERB_EXPR:yt,TMPLIT_EXPR:V,DATA_ATTR:Ot,ARIA_ATTR:It,IS_SCRIPT_OR_DATA:jt,ATTR_WHITESPACE:xt}=DPt;let{IS_ALLOWED_URI:Ft}=DPt,Ct=null;const kt=Fo({},[...TPt,...cgt,...ugt,...lgt,...CPt]);let Gt=null;const Fe=Fo({},[...SPt,...hgt,..._Pt,...zW]);let Mt=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),pn=null,Ae=null,ye=!0,tn=!0,sn=!1,be=!0,Ne=!1,Xt=!1,_e=!1,xe=!1,Mn=!1,ce=!1,Br=!1,we=!0,Fi=!1;const mi="user-content-";let ga=!0,Ss=!1,za={},br=null;const An=Fo({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]);let Nn=null;const Bn=Fo({},["audio","video","img","source","image","track"]);let ke=null;const pe=Fo({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Je="http://www.w3.org/1998/Math/MathML",an="http://www.w3.org/2000/svg",xn="http://www.w3.org/1999/xhtml";let qa=xn,xo=!1,ko=null;const va=Fo({},[Je,an,xn],ogt);let Ha;const ds=["application/xhtml+xml","text/html"],Fu="text/html";let Zs,d1=null;const I2=w.createElement("form"),ll=function(cn){return cn instanceof RegExp||cn instanceof Function},Ic=function(cn){if(!(d1&&d1===cn)){if((!cn||typeof cn!="object")&&(cn={}),cn=XL(cn),Ha=ds.indexOf(cn.PARSER_MEDIA_TYPE)===-1?Ha=Fu:Ha=cn.PARSER_MEDIA_TYPE,Zs=Ha==="application/xhtml+xml"?ogt:jW,Ct="ALLOWED_TAGS"in cn?Fo({},cn.ALLOWED_TAGS,Zs):kt,Gt="ALLOWED_ATTR"in cn?Fo({},cn.ALLOWED_ATTR,Zs):Fe,ko="ALLOWED_NAMESPACES"in cn?Fo({},cn.ALLOWED_NAMESPACES,ogt):va,ke="ADD_URI_SAFE_ATTR"in cn?Fo(XL(pe),cn.ADD_URI_SAFE_ATTR,Zs):pe,Nn="ADD_DATA_URI_TAGS"in cn?Fo(XL(Bn),cn.ADD_DATA_URI_TAGS,Zs):Bn,br="FORBID_CONTENTS"in cn?Fo({},cn.FORBID_CONTENTS,Zs):An,pn="FORBID_TAGS"in cn?Fo({},cn.FORBID_TAGS,Zs):{},Ae="FORBID_ATTR"in cn?Fo({},cn.FORBID_ATTR,Zs):{},za="USE_PROFILES"in cn?cn.USE_PROFILES:!1,ye=cn.ALLOW_ARIA_ATTR!==!1,tn=cn.ALLOW_DATA_ATTR!==!1,sn=cn.ALLOW_UNKNOWN_PROTOCOLS||!1,be=cn.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Ne=cn.SAFE_FOR_TEMPLATES||!1,Xt=cn.WHOLE_DOCUMENT||!1,Mn=cn.RETURN_DOM||!1,ce=cn.RETURN_DOM_FRAGMENT||!1,Br=cn.RETURN_TRUSTED_TYPE||!1,xe=cn.FORCE_BODY||!1,we=cn.SANITIZE_DOM!==!1,Fi=cn.SANITIZE_NAMED_PROPS||!1,ga=cn.KEEP_CONTENT!==!1,Ss=cn.IN_PLACE||!1,Ft=cn.ALLOWED_URI_REGEXP||APt,qa=cn.NAMESPACE||xn,Mt=cn.CUSTOM_ELEMENT_HANDLING||{},cn.CUSTOM_ELEMENT_HANDLING&&ll(cn.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Mt.tagNameCheck=cn.CUSTOM_ELEMENT_HANDLING.tagNameCheck),cn.CUSTOM_ELEMENT_HANDLING&&ll(cn.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Mt.attributeNameCheck=cn.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),cn.CUSTOM_ELEMENT_HANDLING&&typeof cn.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(Mt.allowCustomizedBuiltInElements=cn.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Ne&&(tn=!1),ce&&(Mn=!0),za&&(Ct=Fo({},[...CPt]),Gt=[],za.html===!0&&(Fo(Ct,TPt),Fo(Gt,SPt)),za.svg===!0&&(Fo(Ct,cgt),Fo(Gt,hgt),Fo(Gt,zW)),za.svgFilters===!0&&(Fo(Ct,ugt),Fo(Gt,hgt),Fo(Gt,zW)),za.mathMl===!0&&(Fo(Ct,lgt),Fo(Gt,_Pt),Fo(Gt,zW))),cn.ADD_TAGS&&(Ct===kt&&(Ct=XL(Ct)),Fo(Ct,cn.ADD_TAGS,Zs)),cn.ADD_ATTR&&(Gt===Fe&&(Gt=XL(Gt)),Fo(Gt,cn.ADD_ATTR,Zs)),cn.ADD_URI_SAFE_ATTR&&Fo(ke,cn.ADD_URI_SAFE_ATTR,Zs),cn.FORBID_CONTENTS&&(br===An&&(br=XL(br)),Fo(br,cn.FORBID_CONTENTS,Zs)),ga&&(Ct["#text"]=!0),Xt&&Fo(Ct,["html","head","body"]),Ct.table&&(Fo(Ct,["tbody"]),delete pn.tbody),cn.TRUSTED_TYPES_POLICY){if(typeof cn.TRUSTED_TYPES_POLICY.createHTML!="function")throw yF('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof cn.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw yF('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');wt=cn.TRUSTED_TYPES_POLICY,mt=wt.createHTML("")}else wt===void 0&&(wt=ZDe(B,g)),wt!==null&&typeof mt=="string"&&(mt=wt.createHTML(""));Wg&&Wg(cn),d1=cn}},wc=Fo({},["mi","mo","mn","ms","mtext"]),Ea=Fo({},["foreignobject","desc","title","annotation-xml"]),gu=Fo({},["title","style","font","a","script"]),ta=Fo({},cgt);Fo(ta,ugt),Fo(ta,HDe);const fo=Fo({},lgt);Fo(fo,VDe);const mc=function(cn){let Nr=ft(cn);(!Nr||!Nr.tagName)&&(Nr={namespaceURI:qa,tagName:"template"});const Si=jW(cn.tagName),vc=jW(Nr.tagName);return ko[cn.namespaceURI]?cn.namespaceURI===an?Nr.namespaceURI===xn?Si==="svg":Nr.namespaceURI===Je?Si==="svg"&&(vc==="annotation-xml"||wc[vc]):!!ta[Si]:cn.namespaceURI===Je?Nr.namespaceURI===xn?Si==="math":Nr.namespaceURI===an?Si==="math"&&Ea[vc]:!!fo[Si]:cn.namespaceURI===xn?Nr.namespaceURI===an&&!Ea[vc]||Nr.namespaceURI===Je&&!wc[vc]?!1:!fo[Si]&&(gu[Si]||!ta[Si]):!!(Ha==="application/xhtml+xml"&&ko[cn.namespaceURI]):!1},ca=function(cn){vF(a.removed,{element:cn});try{cn.parentNode.removeChild(cn)}catch{cn.remove()}},ya=function(cn,Nr){try{vF(a.removed,{attribute:Nr.getAttributeNode(cn),from:Nr})}catch{vF(a.removed,{attribute:null,from:Nr})}if(Nr.removeAttribute(cn),cn==="is"&&!Gt[cn])if(Mn||ce)try{ca(Nr)}catch{}else try{Nr.setAttribute(cn,"")}catch{}},ea=function(cn){let Nr,Si;if(xe)cn="<remove></remove>"+cn;else{const Eh=jDe(cn,/^[\r\n\t ]+/);Si=Eh&&Eh[0]}Ha==="application/xhtml+xml"&&qa===xn&&(cn='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+cn+"</body></html>");const vc=wt?wt.createHTML(cn):cn;if(qa===xn)try{Nr=new R().parseFromString(vc,Ha)}catch{}if(!Nr||!Nr.documentElement){Nr=ct.createDocument(qa,"template",null);try{Nr.documentElement.innerHTML=xo?mt:vc}catch{}}const Rc=Nr.body||Nr.documentElement;return cn&&Si&&Rc.insertBefore(w.createTextNode(Si),Rc.childNodes[0]||null),qa===xn?gt.call(Nr,Xt?"html":"body")[0]:Xt?Nr.documentElement:Rc},Zl=function(cn){return rt.call(cn.ownerDocument||cn,cn,_.SHOW_ELEMENT|_.SHOW_COMMENT|_.SHOW_TEXT,null,!1)},Uc=function(cn){return cn instanceof F&&(typeof cn.nodeName!="string"||typeof cn.textContent!="string"||typeof cn.removeChild!="function"||!(cn.attributes instanceof M)||typeof cn.removeAttribute!="function"||typeof cn.setAttribute!="function"||typeof cn.namespaceURI!="string"||typeof cn.insertBefore!="function"||typeof cn.hasChildNodes!="function")},rm=function(cn){return typeof E=="object"?cn instanceof E:cn&&typeof cn=="object"&&typeof cn.nodeType=="number"&&typeof cn.nodeName=="string"},kh=function(cn,Nr,Si){dt[cn]&&RDe(dt[cn],vc=>{vc.call(a,Nr,Si,d1)})},Md=function(cn){let Nr;if(kh("beforeSanitizeElements",cn,null),Uc(cn))return ca(cn),!0;const Si=Zs(cn.nodeName);if(kh("uponSanitizeElement",cn,{tagName:Si,allowedTags:Ct}),cn.hasChildNodes()&&!rm(cn.firstElementChild)&&(!rm(cn.content)||!rm(cn.content.firstElementChild))&&E2(/<[/\w]/g,cn.innerHTML)&&E2(/<[/\w]/g,cn.textContent))return ca(cn),!0;if(!Ct[Si]||pn[Si]){if(!pn[Si]&&Id(Si)&&(Mt.tagNameCheck instanceof RegExp&&E2(Mt.tagNameCheck,Si)||Mt.tagNameCheck instanceof Function&&Mt.tagNameCheck(Si)))return!1;if(ga&&!br[Si]){const vc=ft(cn)||cn.parentNode,Rc=ot(cn)||cn.childNodes;if(Rc&&vc){const Eh=Rc.length;for(let Zc=Eh-1;Zc>=0;--Zc)vc.insertBefore(Y(Rc[Zc],!0),nt(cn))}}return ca(cn),!0}return cn instanceof S&&!mc(cn)||(Si==="noscript"||Si==="noembed"||Si==="noframes")&&E2(/<\/no(script|embed|frames)/i,cn.innerHTML)?(ca(cn),!0):(Ne&&cn.nodeType===3&&(Nr=cn.textContent,Nr=Hv(Nr,K," "),Nr=Hv(Nr,yt," "),Nr=Hv(Nr,V," "),cn.textContent!==Nr&&(vF(a.removed,{element:cn.cloneNode()}),cn.textContent=Nr)),kh("afterSanitizeElements",cn,null),!1)},w0=function(cn,Nr,Si){if(we&&(Nr==="id"||Nr==="name")&&(Si in w||Si in I2))return!1;if(!(tn&&!Ae[Nr]&&E2(Ot,Nr))){if(!(ye&&E2(It,Nr))){if(!Gt[Nr]||Ae[Nr]){if(!(Id(cn)&&(Mt.tagNameCheck instanceof RegExp&&E2(Mt.tagNameCheck,cn)||Mt.tagNameCheck instanceof Function&&Mt.tagNameCheck(cn))&&(Mt.attributeNameCheck instanceof RegExp&&E2(Mt.attributeNameCheck,Nr)||Mt.attributeNameCheck instanceof Function&&Mt.attributeNameCheck(Nr))||Nr==="is"&&Mt.allowCustomizedBuiltInElements&&(Mt.tagNameCheck instanceof RegExp&&E2(Mt.tagNameCheck,Si)||Mt.tagNameCheck instanceof Function&&Mt.tagNameCheck(Si))))return!1}else if(!ke[Nr]){if(!E2(Ft,Hv(Si,xt,""))){if(!((Nr==="src"||Nr==="xlink:href"||Nr==="href")&&cn!=="script"&&$De(Si,"data:")===0&&Nn[cn])){if(!(sn&&!E2(jt,Hv(Si,xt,"")))){if(Si)return!1}}}}}}return!0},Id=function(cn){return cn.indexOf("-")>0},m0=function(cn){let Nr,Si,vc,Rc;kh("beforeSanitizeAttributes",cn,null);const{attributes:Eh}=cn;if(!Eh)return;const Zc={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Gt};for(Rc=Eh.length;Rc--;){Nr=Eh[Rc];const{name:Qh,namespaceURI:Od}=Nr;if(Si=Qh==="value"?Nr.value:zDe(Nr.value),vc=Zs(Qh),Zc.attrName=vc,Zc.attrValue=Si,Zc.keepAttr=!0,Zc.forceKeepAttr=void 0,kh("uponSanitizeAttribute",cn,Zc),Si=Zc.attrValue,Zc.forceKeepAttr||(ya(Qh,cn),!Zc.keepAttr))continue;if(!be&&E2(/\/>/i,Si)){ya(Qh,cn);continue}Ne&&(Si=Hv(Si,K," "),Si=Hv(Si,yt," "),Si=Hv(Si,V," "));const cs=Zs(cn.nodeName);if(w0(cs,vc,Si)){if(Fi&&(vc==="id"||vc==="name")&&(ya(Qh,cn),Si=mi+Si),wt&&typeof B=="object"&&typeof B.getAttributeType=="function"&&!Od)switch(B.getAttributeType(cs,vc)){case"TrustedHTML":{Si=wt.createHTML(Si);break}case"TrustedScriptURL":{Si=wt.createScriptURL(Si);break}}try{Od?cn.setAttributeNS(Od,Qh,Si):cn.setAttribute(Qh,Si),EPt(a.removed)}catch{}}}kh("afterSanitizeAttributes",cn,null)},hg=function Gi(cn){let Nr;const Si=Zl(cn);for(kh("beforeSanitizeShadowDOM",cn,null);Nr=Si.nextNode();)kh("uponSanitizeShadowNode",Nr,null),!Md(Nr)&&(Nr.content instanceof v&&Gi(Nr.content),m0(Nr));kh("afterSanitizeShadowDOM",cn,null)};return a.sanitize=function(Gi){let cn=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},Nr,Si,vc,Rc;if(xo=!Gi,xo&&(Gi="<!-->"),typeof Gi!="string"&&!rm(Gi))if(typeof Gi.toString=="function"){if(Gi=Gi.toString(),typeof Gi!="string")throw yF("dirty is not a string, aborting")}else throw yF("toString is not a function");if(!a.isSupported)return Gi;if(_e||Ic(cn),a.removed=[],typeof Gi=="string"&&(Ss=!1),Ss){if(Gi.nodeName){const Qh=Zs(Gi.nodeName);if(!Ct[Qh]||pn[Qh])throw yF("root node is forbidden and cannot be sanitized in-place")}}else if(Gi instanceof E)Nr=ea("<!---->"),Si=Nr.ownerDocument.importNode(Gi,!0),Si.nodeType===1&&Si.nodeName==="BODY"||Si.nodeName==="HTML"?Nr=Si:Nr.appendChild(Si);else{if(!Mn&&!Ne&&!Xt&&Gi.indexOf("<")===-1)return wt&&Br?wt.createHTML(Gi):Gi;if(Nr=ea(Gi),!Nr)return Mn?null:Br?mt:""}Nr&&xe&&ca(Nr.firstChild);const Eh=Zl(Ss?Gi:Nr);for(;vc=Eh.nextNode();)Md(vc)||(vc.content instanceof v&&hg(vc.content),m0(vc));if(Ss)return Gi;if(Mn){if(ce)for(Rc=it.call(Nr.ownerDocument);Nr.firstChild;)Rc.appendChild(Nr.firstChild);else Rc=Nr;return(Gt.shadowroot||Gt.shadowrootmode)&&(Rc=Q.call(f,Rc,!0)),Rc}let Zc=Xt?Nr.outerHTML:Nr.innerHTML;return Xt&&Ct["!doctype"]&&Nr.ownerDocument&&Nr.ownerDocument.doctype&&Nr.ownerDocument.doctype.name&&E2(LPt,Nr.ownerDocument.doctype.name)&&(Zc="<!DOCTYPE "+Nr.ownerDocument.doctype.name+`>
8 `);for(const[f,{detector:g}]of Object.entries(JL))if(g(i,a))return f;throw new VPt(`No diagram type detected matching given configuration for text: ${i}`)},UPt=(...i)=>{for(const{id:a,detector:f,loader:g}of i)GPt(a,f,g)},GPt=(i,a,f)=>{JL[i]?Kt.error(`Detector with key ${i} already exists`):JL[i]={detector:a,loader:f},Kt.debug(`Detector with key ${i} added${f?" with loader":""}`)},DMe=i=>JL[i].loader,ggt=(i,a,{depth:f=2,clobber:g=!1}={})=>{const w={depth:f,clobber:g};return Array.isArray(a)&&!Array.isArray(i)?(a.forEach(v=>ggt(i,v,w)),i):Array.isArray(a)&&Array.isArray(i)?(a.forEach(v=>{i.includes(v)||i.push(v)}),i):i===void 0||f<=0?i!=null&&typeof i=="object"&&typeof a=="object"?Object.assign(i,a):a:(a!==void 0&&typeof i=="object"&&typeof a=="object"&&Object.keys(a).forEach(v=>{typeof a[v]=="object"&&(i[v]===void 0||typeof i[v]=="object")?(i[v]===void 0&&(i[v]=Array.isArray(a[v])?[]:{}),i[v]=ggt(i[v],a[v],{depth:f-1,clobber:g})):(g||typeof i[v]!="object"&&typeof a[v]!="object")&&(i[v]=a[v])}),i)},Ld=ggt;var MMe=typeof global=="object"&&global&&global.Object===Object&&global;const KPt=MMe;var IMe=typeof self=="object"&&self&&self.Object===Object&&self,OMe=KPt||IMe||Function("return this")();const Uv=OMe;var NMe=Uv.Symbol;const Yw=NMe;var WPt=Object.prototype,PMe=WPt.hasOwnProperty,FMe=WPt.toString,CF=Yw?Yw.toStringTag:void 0;function BMe(i){var a=PMe.call(i,CF),f=i[CF];try{i[CF]=void 0;var g=!0}catch{}var w=FMe.call(i);return g&&(a?i[CF]=f:delete i[CF]),w}var RMe=Object.prototype,jMe=RMe.toString;function $Me(i){return jMe.call(i)}var zMe="[object Null]",qMe="[object Undefined]",YPt=Yw?Yw.toStringTag:void 0;function b9(i){return i==null?i===void 0?qMe:zMe:YPt&&YPt in Object(i)?BMe(i):$Me(i)}function T2(i){var a=typeof i;return i!=null&&(a=="object"||a=="function")}var HMe="[object AsyncFunction]",VMe="[object Function]",UMe="[object GeneratorFunction]",GMe="[object Proxy]";function ZL(i){if(!T2(i))return!1;var a=b9(i);return a==VMe||a==UMe||a==HMe||a==GMe}var KMe=Uv["__core-js_shared__"];const pgt=KMe;var XPt=function(){var i=/[^.]+$/.exec(pgt&&pgt.keys&&pgt.keys.IE_PROTO||"");return i?"Symbol(src)_1."+i:""}();function WMe(i){return!!XPt&&XPt in i}var YMe=Function.prototype,XMe=YMe.toString;function w9(i){if(i!=null){try{return XMe.call(i)}catch{}try{return i+""}catch{}}return""}var QMe=/[\\^$.*+?()[\]{}|]/g,JMe=/^\[object .+?Constructor\]$/,ZMe=Function.prototype,tIe=Object.prototype,eIe=ZMe.toString,nIe=tIe.hasOwnProperty,rIe=RegExp("^"+eIe.call(nIe).replace(QMe,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function iIe(i){if(!T2(i)||WMe(i))return!1;var a=ZL(i)?rIe:JMe;return a.test(w9(i))}function sIe(i,a){return i==null?void 0:i[a]}function m9(i,a){var f=sIe(i,a);return iIe(f)?f:void 0}var aIe=m9(Object,"create");const SF=aIe;function oIe(){this.__data__=SF?SF(null):{},this.size=0}function cIe(i){var a=this.has(i)&&delete this.__data__[i];return this.size-=a?1:0,a}var uIe="__lodash_hash_undefined__",lIe=Object.prototype,hIe=lIe.hasOwnProperty;function fIe(i){var a=this.__data__;if(SF){var f=a[i];return f===uIe?void 0:f}return hIe.call(a,i)?a[i]:void 0}var dIe=Object.prototype,gIe=dIe.hasOwnProperty;function pIe(i){var a=this.__data__;return SF?a[i]!==void 0:gIe.call(a,i)}var bIe="__lodash_hash_undefined__";function wIe(i,a){var f=this.__data__;return this.size+=this.has(i)?0:1,f[i]=SF&&a===void 0?bIe:a,this}function v9(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a<f;){var g=i[a];this.set(g[0],g[1])}}v9.prototype.clear=oIe,v9.prototype.delete=cIe,v9.prototype.get=fIe,v9.prototype.has=pIe,v9.prototype.set=wIe;function mIe(){this.__data__=[],this.size=0}function tD(i,a){return i===a||i!==i&&a!==a}function JW(i,a){for(var f=i.length;f--;)if(tD(i[f][0],a))return f;return-1}var vIe=Array.prototype,yIe=vIe.splice;function xIe(i){var a=this.__data__,f=JW(a,i);if(f<0)return!1;var g=a.length-1;return f==g?a.pop():yIe.call(a,f,1),--this.size,!0}function kIe(i){var a=this.__data__,f=JW(a,i);return f<0?void 0:a[f][1]}function EIe(i){return JW(this.__data__,i)>-1}function TIe(i,a){var f=this.__data__,g=JW(f,i);return g<0?(++this.size,f.push([i,a])):f[g][1]=a,this}function Mx(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a<f;){var g=i[a];this.set(g[0],g[1])}}Mx.prototype.clear=mIe,Mx.prototype.delete=xIe,Mx.prototype.get=kIe,Mx.prototype.has=EIe,Mx.prototype.set=TIe;var CIe=m9(Uv,"Map");const _F=CIe;function SIe(){this.size=0,this.__data__={hash:new v9,map:new(_F||Mx),string:new v9}}function _Ie(i){var a=typeof i;return a=="string"||a=="number"||a=="symbol"||a=="boolean"?i!=="__proto__":i===null}function ZW(i,a){var f=i.__data__;return _Ie(a)?f[typeof a=="string"?"string":"hash"]:f.map}function AIe(i){var a=ZW(this,i).delete(i);return this.size-=a?1:0,a}function LIe(i){return ZW(this,i).get(i)}function DIe(i){return ZW(this,i).has(i)}function MIe(i,a){var f=ZW(this,i),g=f.size;return f.set(i,a),this.size+=f.size==g?0:1,this}function Ix(i){var a=-1,f=i==null?0:i.length;for(this.clear();++a<f;){var g=i[a];this.set(g[0],g[1])}}Ix.prototype.clear=SIe,Ix.prototype.delete=AIe,Ix.prototype.get=LIe,Ix.prototype.has=DIe,Ix.prototype.set=MIe;var IIe="Expected a function";function eD(i,a){if(typeof i!="function"||a!=null&&typeof a!="function")throw new TypeError(IIe);var f=function(){var g=arguments,w=a?a.apply(this,g):g[0],v=f.cache;if(v.has(w))return v.get(w);var b=i.apply(this,g);return f.cache=v.set(w,b)||v,b};return f.cache=new(eD.Cache||Ix),f}eD.Cache=Ix;function OIe(){this.__data__=new Mx,this.size=0}function NIe(i){var a=this.__data__,f=a.delete(i);return this.size=a.size,f}function PIe(i){return this.__data__.get(i)}function FIe(i){return this.__data__.has(i)}var BIe=200;function RIe(i,a){var f=this.__data__;if(f instanceof Mx){var g=f.__data__;if(!_F||g.length<BIe-1)return g.push([i,a]),this.size=++f.size,this;f=this.__data__=new Ix(g)}return f.set(i,a),this.size=f.size,this}function Gv(i){var a=this.__data__=new Mx(i);this.size=a.size}Gv.prototype.clear=OIe,Gv.prototype.delete=NIe,Gv.prototype.get=PIe,Gv.prototype.has=FIe,Gv.prototype.set=RIe;var jIe=function(){try{var i=m9(Object,"defineProperty");return i({},"",{}),i}catch{}}();const tY=jIe;function eY(i,a,f){a=="__proto__"&&tY?tY(i,a,{configurable:!0,enumerable:!0,value:f,writable:!0}):i[a]=f}function bgt(i,a,f){(f!==void 0&&!tD(i[a],f)||f===void 0&&!(a in i))&&eY(i,a,f)}function $Ie(i){return function(a,f,g){for(var w=-1,v=Object(a),b=g(a),E=b.length;E--;){var S=b[i?E:++w];if(f(v[S],S,v)===!1)break}return a}}var zIe=$Ie();const wgt=zIe;var QPt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,JPt=QPt&&typeof module=="object"&&module&&!module.nodeType&&module,qIe=JPt&&JPt.exports===QPt,ZPt=qIe?Uv.Buffer:void 0,tFt=ZPt?ZPt.allocUnsafe:void 0;function eFt(i,a){if(a)return i.slice();var f=i.length,g=tFt?tFt(f):new i.constructor(f);return i.copy(g),g}var HIe=Uv.Uint8Array;const nY=HIe;function mgt(i){var a=new i.constructor(i.byteLength);return new nY(a).set(new nY(i)),a}function nFt(i,a){var f=a?mgt(i.buffer):i.buffer;return new i.constructor(f,i.byteOffset,i.length)}function rFt(i,a){var f=-1,g=i.length;for(a||(a=Array(g));++f<g;)a[f]=i[f];return a}var iFt=Object.create,VIe=function(){function i(){}return function(a){if(!T2(a))return{};if(iFt)return iFt(a);i.prototype=a;var f=new i;return i.prototype=void 0,f}}();const UIe=VIe;function sFt(i,a){return function(f){return i(a(f))}}var GIe=sFt(Object.getPrototypeOf,Object);const vgt=GIe;var KIe=Object.prototype;function rY(i){var a=i&&i.constructor,f=typeof a=="function"&&a.prototype||KIe;return i===f}function aFt(i){return typeof i.constructor=="function"&&!rY(i)?UIe(vgt(i)):{}}function e4(i){return i!=null&&typeof i=="object"}var WIe="[object Arguments]";function oFt(i){return e4(i)&&b9(i)==WIe}var cFt=Object.prototype,YIe=cFt.hasOwnProperty,XIe=cFt.propertyIsEnumerable,QIe=oFt(function(){return arguments}())?oFt:function(i){return e4(i)&&YIe.call(i,"callee")&&!XIe.call(i,"callee")};const nD=QIe;var JIe=Array.isArray;const s1=JIe;var ZIe=9007199254740991;function ygt(i){return typeof i=="number"&&i>-1&&i%1==0&&i<=ZIe}function p8(i){return i!=null&&ygt(i.length)&&!ZL(i)}function uFt(i){return e4(i)&&p8(i)}function tOe(){return!1}var lFt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,hFt=lFt&&typeof module=="object"&&module&&!module.nodeType&&module,eOe=hFt&&hFt.exports===lFt,fFt=eOe?Uv.Buffer:void 0,nOe=fFt?fFt.isBuffer:void 0,rOe=nOe||tOe;const rD=rOe;var iOe="[object Object]",sOe=Function.prototype,aOe=Object.prototype,dFt=sOe.toString,oOe=aOe.hasOwnProperty,cOe=dFt.call(Object);function gFt(i){if(!e4(i)||b9(i)!=iOe)return!1;var a=vgt(i);if(a===null)return!0;var f=oOe.call(a,"constructor")&&a.constructor;return typeof f=="function"&&f instanceof f&&dFt.call(f)==cOe}var uOe="[object Arguments]",lOe="[object Array]",hOe="[object Boolean]",fOe="[object Date]",dOe="[object Error]",gOe="[object Function]",pOe="[object Map]",bOe="[object Number]",wOe="[object Object]",mOe="[object RegExp]",vOe="[object Set]",yOe="[object String]",xOe="[object WeakMap]",kOe="[object ArrayBuffer]",EOe="[object DataView]",TOe="[object Float32Array]",COe="[object Float64Array]",SOe="[object Int8Array]",_Oe="[object Int16Array]",AOe="[object Int32Array]",LOe="[object Uint8Array]",DOe="[object Uint8ClampedArray]",MOe="[object Uint16Array]",IOe="[object Uint32Array]",Rl={};Rl[TOe]=Rl[COe]=Rl[SOe]=Rl[_Oe]=Rl[AOe]=Rl[LOe]=Rl[DOe]=Rl[MOe]=Rl[IOe]=!0,Rl[uOe]=Rl[lOe]=Rl[kOe]=Rl[hOe]=Rl[EOe]=Rl[fOe]=Rl[dOe]=Rl[gOe]=Rl[pOe]=Rl[bOe]=Rl[wOe]=Rl[mOe]=Rl[vOe]=Rl[yOe]=Rl[xOe]=!1;function OOe(i){return e4(i)&&ygt(i.length)&&!!Rl[b9(i)]}function iY(i){return function(a){return i(a)}}var pFt=typeof exports=="object"&&exports&&!exports.nodeType&&exports,AF=pFt&&typeof module=="object"&&module&&!module.nodeType&&module,NOe=AF&&AF.exports===pFt,xgt=NOe&&KPt.process,POe=function(){try{var i=AF&&AF.require&&AF.require("util").types;return i||xgt&&xgt.binding&&xgt.binding("util")}catch{}}();const iD=POe;var bFt=iD&&iD.isTypedArray,FOe=bFt?iY(bFt):OOe;const sY=FOe;function kgt(i,a){if(!(a==="constructor"&&typeof i[a]=="function")&&a!="__proto__")return i[a]}var BOe=Object.prototype,ROe=BOe.hasOwnProperty;function aY(i,a,f){var g=i[a];(!(ROe.call(i,a)&&tD(g,f))||f===void 0&&!(a in i))&&eY(i,a,f)}function LF(i,a,f,g){var w=!f;f||(f={});for(var v=-1,b=a.length;++v<b;){var E=a[v],S=g?g(f[E],i[E],E,f,i):void 0;S===void 0&&(S=i[E]),w?eY(f,E,S):aY(f,E,S)}return f}function jOe(i,a){for(var f=-1,g=Array(i);++f<i;)g[f]=a(f);return g}var $Oe=9007199254740991,zOe=/^(?:0|[1-9]\d*)$/;function oY(i,a){var f=typeof i;return a=a??$Oe,!!a&&(f=="number"||f!="symbol"&&zOe.test(i))&&i>-1&&i%1==0&&i<a}var qOe=Object.prototype,HOe=qOe.hasOwnProperty;function wFt(i,a){var f=s1(i),g=!f&&nD(i),w=!f&&!g&&rD(i),v=!f&&!g&&!w&&sY(i),b=f||g||w||v,E=b?jOe(i.length,String):[],S=E.length;for(var _ in i)(a||HOe.call(i,_))&&!(b&&(_=="length"||w&&(_=="offset"||_=="parent")||v&&(_=="buffer"||_=="byteLength"||_=="byteOffset")||oY(_,S)))&&E.push(_);return E}function VOe(i){var a=[];if(i!=null)for(var f in Object(i))a.push(f);return a}var UOe=Object.prototype,GOe=UOe.hasOwnProperty;function KOe(i){if(!T2(i))return VOe(i);var a=rY(i),f=[];for(var g in i)g=="constructor"&&(a||!GOe.call(i,g))||f.push(g);return f}function y9(i){return p8(i)?wFt(i,!0):KOe(i)}function WOe(i){return LF(i,y9(i))}function YOe(i,a,f,g,w,v,b){var E=kgt(i,f),S=kgt(a,f),_=b.get(S);if(_){bgt(i,f,_);return}var M=v?v(E,S,f+"",i,a,b):void 0,F=M===void 0;if(F){var R=s1(S),B=!R&&rD(S),z=!R&&!B&&sY(S);M=S,R||B||z?s1(E)?M=E:uFt(E)?M=rFt(E):B?(F=!1,M=eFt(S,!0)):z?(F=!1,M=nFt(S,!0)):M=[]:gFt(S)||nD(S)?(M=E,nD(E)?M=WOe(E):(!T2(E)||ZL(E))&&(M=aFt(S))):F=!1}F&&(b.set(S,M),w(M,S,g,v,b),b.delete(S)),bgt(i,f,M)}function mFt(i,a,f,g,w){i!==a&&wgt(a,function(v,b){if(w||(w=new Gv),T2(v))YOe(i,a,b,f,mFt,g,w);else{var E=g?g(kgt(i,b),v,b+"",i,a,w):void 0;E===void 0&&(E=v),bgt(i,b,E)}},y9)}function x9(i){return i}function XOe(i,a,f){switch(f.length){case 0:return i.call(a);case 1:return i.call(a,f[0]);case 2:return i.call(a,f[0],f[1]);case 3:return i.call(a,f[0],f[1],f[2])}return i.apply(a,f)}var vFt=Math.max;function yFt(i,a,f){return a=vFt(a===void 0?i.length-1:a,0),function(){for(var g=arguments,w=-1,v=vFt(g.length-a,0),b=Array(v);++w<v;)b[w]=g[a+w];w=-1;for(var E=Array(a+1);++w<a;)E[w]=g[w];return E[a]=f(b),XOe(i,this,E)}}function sD(i){return function(){return i}}var QOe=tY?function(i,a){return tY(i,"toString",{configurable:!0,enumerable:!1,value:sD(a),writable:!0})}:x9;const JOe=QOe;var ZOe=800,tNe=16,eNe=Date.now;function nNe(i){var a=0,f=0;return function(){var g=eNe(),w=tNe-(g-f);if(f=g,w>0){if(++a>=ZOe)return arguments[0]}else a=0;return i.apply(void 0,arguments)}}var rNe=nNe(JOe);const xFt=rNe;function cY(i,a){return xFt(yFt(i,a,x9),i+"")}function DF(i,a,f){if(!T2(f))return!1;var g=typeof a;return(g=="number"?p8(f)&&oY(a,f.length):g=="string"&&a in f)?tD(f[a],i):!1}function iNe(i){return cY(function(a,f){var g=-1,w=f.length,v=w>1?f[w-1]:void 0,b=w>2?f[2]:void 0;for(v=i.length>3&&typeof v=="function"?(w--,v):void 0,b&&DF(f[0],f[1],b)&&(v=w<3?void 0:v,w=1),a=Object(a);++g<w;){var E=f[g];E&&i(a,E,g,v)}return a})}var sNe=iNe(function(i,a,f){mFt(i,a,f)});const uY=sNe,kFt="​",aNe={curveBasis:wF,curveBasisClosed:mDe,curveBasisOpen:vDe,curveBumpX:bDe,curveBumpY:wDe,curveBundle:yDe,curveCardinalClosed:kDe,curveCardinalOpen:EDe,curveCardinal:xDe,curveCatmullRomClosed:CDe,curveCatmullRomOpen:SDe,curveCatmullRom:TDe,curveLinear:Kg,curveLinearClosed:_De,curveMonotoneX:ADe,curveMonotoneY:LDe,curveNatural:DDe,curveStep:MDe,curveStepAfter:ODe,curveStepBefore:IDe},oNe=/\s*(?:(\w+)(?=:):|(\w+))\s*(?:(\w+)|((?:(?!}%{2}).|\r?\n)*))?\s*(?:}%{2})?/gi,cNe=function(i,a){const f=EFt(i,/(?:init\b)|(?:initialize\b)/);let g={};if(Array.isArray(f)){const b=f.map(E=>E.args);XW(b),g=Ld(g,[...b])}else g=f.args;if(!g)return;let w=QW(i,a);const v="config";return g[v]!==void 0&&(w==="flowchart-v2"&&(w="flowchart"),g[w]=g[v],delete g[v]),g},EFt=function(i,a=null){try{const f=new RegExp(`[%]{2}(?![{]${oNe.source})(?=[}][%]{2}).*
92 `+this.showPosition(),{text:"",token:null,line:this.yylineno})},lex:function(){var Nn=this.next();return Nn||this.lex()},begin:function(Nn){this.conditionStack.push(Nn)},popState:function(){var Nn=this.conditionStack.length-1;return Nn>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(Nn){return Nn=this.conditionStack.length-1-Math.abs(Nn||0),Nn>=0?this.conditionStack[Nn]:"INITIAL"},pushState:function(Nn){this.begin(Nn)},stateStackSize:function(){return this.conditionStack.length},options:{},performAction:function(Nn,Bn,ke,pe){switch(ke){case 0:return 6;case 1:return 7;case 2:return 8;case 3:return 9;case 4:return 22;case 5:return 23;case 6:return this.begin("acc_title"),24;case 7:return this.popState(),"acc_title_value";case 8:return this.begin("acc_descr"),26;case 9:return this.popState(),"acc_descr_value";case 10:this.begin("acc_descr_multiline");break;case 11:this.popState();break;case 12:return"acc_descr_multiline_value";case 13:break;case 14:c;break;case 15:return 12;case 16:break;case 17:return 11;case 18:return 15;case 19:return 16;case 20:return 17;case 21:return 18;case 22:return this.begin("person_ext"),45;case 23:return this.begin("person"),44;case 24:return this.begin("system_ext_queue"),51;case 25:return this.begin("system_ext_db"),50;case 26:return this.begin("system_ext"),49;case 27:return this.begin("system_queue"),48;case 28:return this.begin("system_db"),47;case 29:return this.begin("system"),46;case 30:return this.begin("boundary"),37;case 31:return this.begin("enterprise_boundary"),34;case 32:return this.begin("system_boundary"),36;case 33:return this.begin("container_ext_queue"),57;case 34:return this.begin("container_ext_db"),56;case 35:return this.begin("container_ext"),55;case 36:return this.begin("container_queue"),54;case 37:return this.begin("container_db"),53;case 38:return this.begin("container"),52;case 39:return this.begin("container_boundary"),38;case 40:return this.begin("component_ext_queue"),63;case 41:return this.begin("component_ext_db"),62;case 42:return this.begin("component_ext"),61;case 43:return this.begin("component_queue"),60;case 44:return this.begin("component_db"),59;case 45:return this.begin("component"),58;case 46:return this.begin("node"),39;case 47:return this.begin("node"),39;case 48:return this.begin("node_l"),40;case 49:return this.begin("node_r"),41;case 50:return this.begin("rel"),64;case 51:return this.begin("birel"),65;case 52:return this.begin("rel_u"),66;case 53:return this.begin("rel_u"),66;case 54:return this.begin("rel_d"),67;case 55:return this.begin("rel_d"),67;case 56:return this.begin("rel_l"),68;case 57:return this.begin("rel_l"),68;case 58:return this.begin("rel_r"),69;case 59:return this.begin("rel_r"),69;case 60:return this.begin("rel_b"),70;case 61:return this.begin("rel_index"),71;case 62:return this.begin("update_el_style"),72;case 63:return this.begin("update_rel_style"),73;case 64:return this.begin("update_layout_config"),74;case 65:return"EOF_IN_STRUCT";case 66:return this.begin("attribute"),"ATTRIBUTE_EMPTY";case 67:this.begin("attribute");break;case 68:this.popState(),this.popState();break;case 69:return 80;case 70:break;case 71:return 80;case 72:this.begin("string");break;case 73:this.popState();break;case 74:return"STR";case 75:this.begin("string_kv");break;case 76:return this.begin("string_kv_key"),"STR_KEY";case 77:this.popState(),this.begin("string_kv_value");break;case 78:return"STR_VALUE";case 79:this.popState(),this.popState();break;case 80:return"STR";case 81:return"LBRACE";case 82:return"RBRACE";case 83:return"SPACE";case 84:return"EOL";case 85:return 14}},rules:[/^(?:.*direction\s+TB[^\n]*)/,/^(?:.*direction\s+BT[^\n]*)/,/^(?:.*direction\s+RL[^\n]*)/,/^(?:.*direction\s+LR[^\n]*)/,/^(?:title\s[^#\n;]+)/,/^(?:accDescription\s[^#\n;]+)/,/^(?:accTitle\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*:\s*)/,/^(?:(?!\n||)*[^\n]*)/,/^(?:accDescr\s*\{\s*)/,/^(?:[\}])/,/^(?:[^\}]*)/,/^(?:%%(?!\{)*[^\n]*(\r?\n?)+)/,/^(?:%%[^\n]*(\r?\n)*)/,/^(?:\s*(\r?\n)+)/,/^(?:\s+)/,/^(?:C4Context\b)/,/^(?:C4Container\b)/,/^(?:C4Component\b)/,/^(?:C4Dynamic\b)/,/^(?:C4Deployment\b)/,/^(?:Person_Ext\b)/,/^(?:Person\b)/,/^(?:SystemQueue_Ext\b)/,/^(?:SystemDb_Ext\b)/,/^(?:System_Ext\b)/,/^(?:SystemQueue\b)/,/^(?:SystemDb\b)/,/^(?:System\b)/,/^(?:Boundary\b)/,/^(?:Enterprise_Boundary\b)/,/^(?:System_Boundary\b)/,/^(?:ContainerQueue_Ext\b)/,/^(?:ContainerDb_Ext\b)/,/^(?:Container_Ext\b)/,/^(?:ContainerQueue\b)/,/^(?:ContainerDb\b)/,/^(?:Container\b)/,/^(?:Container_Boundary\b)/,/^(?:ComponentQueue_Ext\b)/,/^(?:ComponentDb_Ext\b)/,/^(?:Component_Ext\b)/,/^(?:ComponentQueue\b)/,/^(?:ComponentDb\b)/,/^(?:Component\b)/,/^(?:Deployment_Node\b)/,/^(?:Node\b)/,/^(?:Node_L\b)/,/^(?:Node_R\b)/,/^(?:Rel\b)/,/^(?:BiRel\b)/,/^(?:Rel_Up\b)/,/^(?:Rel_U\b)/,/^(?:Rel_Down\b)/,/^(?:Rel_D\b)/,/^(?:Rel_Left\b)/,/^(?:Rel_L\b)/,/^(?:Rel_Right\b)/,/^(?:Rel_R\b)/,/^(?:Rel_Back\b)/,/^(?:RelIndex\b)/,/^(?:UpdateElementStyle\b)/,/^(?:UpdateRelStyle\b)/,/^(?:UpdateLayoutConfig\b)/,/^(?:$)/,/^(?:[(][ ]*[,])/,/^(?:[(])/,/^(?:[)])/,/^(?:,,)/,/^(?:,)/,/^(?:[ ]*["]["])/,/^(?:[ ]*["])/,/^(?:["])/,/^(?:[^"]*)/,/^(?:[ ]*[\$])/,/^(?:[^=]*)/,/^(?:[=][ ]*["])/,/^(?:[^"]+)/,/^(?:["])/,/^(?:[^,]+)/,/^(?:\{)/,/^(?:\})/,/^(?:[\s]+)/,/^(?:[\n\r]+)/,/^(?:$)/],conditions:{acc_descr_multiline:{rules:[11,12],inclusive:!1},acc_descr:{rules:[9],inclusive:!1},acc_title:{rules:[7],inclusive:!1},string_kv_value:{rules:[78,79],inclusive:!1},string_kv_key:{rules:[77],inclusive:!1},string_kv:{rules:[76],inclusive:!1},string:{rules:[73,74],inclusive:!1},attribute:{rules:[68,69,70,71,72,75,80],inclusive:!1},update_layout_config:{rules:[65,66,67,68],inclusive:!1},update_rel_style:{rules:[65,66,67,68],inclusive:!1},update_el_style:{rules:[65,66,67,68],inclusive:!1},rel_b:{rules:[65,66,67,68],inclusive:!1},rel_r:{rules:[65,66,67,68],inclusive:!1},rel_l:{rules:[65,66,67,68],inclusive:!1},rel_d:{rules:[65,66,67,68],inclusive:!1},rel_u:{rules:[65,66,67,68],inclusive:!1},rel_bi:{rules:[],inclusive:!1},rel:{rules:[65,66,67,68],inclusive:!1},node_r:{rules:[65,66,67,68],inclusive:!1},node_l:{rules:[65,66,67,68],inclusive:!1},node:{rules:[65,66,67,68],inclusive:!1},index:{rules:[],inclusive:!1},rel_index:{rules:[65,66,67,68],inclusive:!1},component_ext_queue:{rules:[],inclusive:!1},component_ext_db:{rules:[65,66,67,68],inclusive:!1},component_ext:{rules:[65,66,67,68],inclusive:!1},component_queue:{rules:[65,66,67,68],inclusive:!1},component_db:{rules:[65,66,67,68],inclusive:!1},component:{rules:[65,66,67,68],inclusive:!1},container_boundary:{rules:[65,66,67,68],inclusive:!1},container_ext_queue:{rules:[65,66,67,68],inclusive:!1},container_ext_db:{rules:[65,66,67,68],inclusive:!1},container_ext:{rules:[65,66,67,68],inclusive:!1},container_queue:{rules:[65,66,67,68],inclusive:!1},container_db:{rules:[65,66,67,68],inclusive:!1},container:{rules:[65,66,67,68],inclusive:!1},birel:{rules:[65,66,67,68],inclusive:!1},system_boundary:{rules:[65,66,67,68],inclusive:!1},enterprise_boundary:{rules:[65,66,67,68],inclusive:!1},boundary:{rules:[65,66,67,68],inclusive:!1},system_ext_queue:{rules:[65,66,67,68],inclusive:!1},system_ext_db:{rules:[65,66,67,68],inclusive:!1},system_ext:{rules:[65,66,67,68],inclusive:!1},system_queue:{rules:[65,66,67,68],inclusive:!1},system_db:{rules:[65,66,67,68],inclusive:!1},system:{rules:[65,66,67,68],inclusive:!1},person_ext:{rules:[65,66,67,68],inclusive:!1},person:{rules:[65,66,67,68],inclusive:!1},INITIAL:{rules:[0,1,2,3,4,5,6,8,10,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,81,82,83,84,85],inclusive:!0}}};return br}();ga.lexer=Ss;function za(){this.yy={}}return za.prototype=ga,ga.Parser=za,new za}();SY.parser=SY;const xRe=SY;let Wv=[],y8=[""],ep="global",Yv="",i4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],jF=[],Qgt="",Jgt=!1,_Y=4,AY=2;var rRt;const kRe=function(){return rRt},ERe=function(i){rRt=Ef(i,Re())},TRe=function(i,a,f,g,w,v,b,E,S){if(i==null||a===void 0||a===null||f===void 0||f===null||g===void 0||g===null)return;let _={};const M=jF.find(F=>F.from===a&&F.to===f);if(M?_=M:jF.push(_),_.type=i,_.from=a,_.to=f,_.label={text:g},w==null)_.techn={text:""};else if(typeof w=="object"){let[F,R]=Object.entries(w)[0];_[F]={text:R}}else _.techn={text:w};if(v==null)_.descr={text:""};else if(typeof v=="object"){let[F,R]=Object.entries(v)[0];_[F]={text:R}}else _.descr={text:v};if(typeof b=="object"){let[F,R]=Object.entries(b)[0];_[F]=R}else _.sprite=b;if(typeof E=="object"){let[F,R]=Object.entries(E)[0];_[F]=R}else _.tags=E;if(typeof S=="object"){let[F,R]=Object.entries(S)[0];_[F]=R}else _.link=S;_.wrap=x8()},CRe=function(i,a,f,g,w,v,b){if(a===null||f===null)return;let E={};const S=Wv.find(_=>_.alias===a);if(S&&a===S.alias?E=S:(E.alias=a,Wv.push(E)),f==null?E.label={text:""}:E.label={text:f},g==null)E.descr={text:""};else if(typeof g=="object"){let[_,M]=Object.entries(g)[0];E[_]={text:M}}else E.descr={text:g};if(typeof w=="object"){let[_,M]=Object.entries(w)[0];E[_]=M}else E.sprite=w;if(typeof v=="object"){let[_,M]=Object.entries(v)[0];E[_]=M}else E.tags=v;if(typeof b=="object"){let[_,M]=Object.entries(b)[0];E[_]=M}else E.link=b;E.typeC4Shape={text:i},E.parentBoundary=ep,E.wrap=x8()},SRe=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=Wv.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,Wv.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.techn={text:""};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.techn={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof v=="object"){let[M,F]=Object.entries(v)[0];S[M]=F}else S.sprite=v;if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.wrap=x8(),S.typeC4Shape={text:i},S.parentBoundary=ep},_Re=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=Wv.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,Wv.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.techn={text:""};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.techn={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof v=="object"){let[M,F]=Object.entries(v)[0];S[M]=F}else S.sprite=v;if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.wrap=x8(),S.typeC4Shape={text:i},S.parentBoundary=ep},ARe=function(i,a,f,g,w){if(i===null||a===null)return;let v={};const b=i4.find(E=>E.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,i4.push(v)),a==null?v.label={text:""}:v.label={text:a},f==null)v.type={text:"system"};else if(typeof f=="object"){let[E,S]=Object.entries(f)[0];v[E]={text:S}}else v.type={text:f};if(typeof g=="object"){let[E,S]=Object.entries(g)[0];v[E]=S}else v.tags=g;if(typeof w=="object"){let[E,S]=Object.entries(w)[0];v[E]=S}else v.link=w;v.parentBoundary=ep,v.wrap=x8(),Yv=ep,ep=i,y8.push(Yv)},LRe=function(i,a,f,g,w){if(i===null||a===null)return;let v={};const b=i4.find(E=>E.alias===i);if(b&&i===b.alias?v=b:(v.alias=i,i4.push(v)),a==null?v.label={text:""}:v.label={text:a},f==null)v.type={text:"container"};else if(typeof f=="object"){let[E,S]=Object.entries(f)[0];v[E]={text:S}}else v.type={text:f};if(typeof g=="object"){let[E,S]=Object.entries(g)[0];v[E]=S}else v.tags=g;if(typeof w=="object"){let[E,S]=Object.entries(w)[0];v[E]=S}else v.link=w;v.parentBoundary=ep,v.wrap=x8(),Yv=ep,ep=i,y8.push(Yv)},DRe=function(i,a,f,g,w,v,b,E){if(a===null||f===null)return;let S={};const _=i4.find(M=>M.alias===a);if(_&&a===_.alias?S=_:(S.alias=a,i4.push(S)),f==null?S.label={text:""}:S.label={text:f},g==null)S.type={text:"node"};else if(typeof g=="object"){let[M,F]=Object.entries(g)[0];S[M]={text:F}}else S.type={text:g};if(w==null)S.descr={text:""};else if(typeof w=="object"){let[M,F]=Object.entries(w)[0];S[M]={text:F}}else S.descr={text:w};if(typeof b=="object"){let[M,F]=Object.entries(b)[0];S[M]=F}else S.tags=b;if(typeof E=="object"){let[M,F]=Object.entries(E)[0];S[M]=F}else S.link=E;S.nodeType=i,S.parentBoundary=ep,S.wrap=x8(),Yv=ep,ep=a,y8.push(Yv)},MRe=function(){ep=Yv,y8.pop(),Yv=y8.pop(),y8.push(Yv)},IRe=function(i,a,f,g,w,v,b,E,S,_,M){let F=Wv.find(R=>R.alias===a);if(!(F===void 0&&(F=i4.find(R=>R.alias===a),F===void 0))){if(f!=null)if(typeof f=="object"){let[R,B]=Object.entries(f)[0];F[R]=B}else F.bgColor=f;if(g!=null)if(typeof g=="object"){let[R,B]=Object.entries(g)[0];F[R]=B}else F.fontColor=g;if(w!=null)if(typeof w=="object"){let[R,B]=Object.entries(w)[0];F[R]=B}else F.borderColor=w;if(v!=null)if(typeof v=="object"){let[R,B]=Object.entries(v)[0];F[R]=B}else F.shadowing=v;if(b!=null)if(typeof b=="object"){let[R,B]=Object.entries(b)[0];F[R]=B}else F.shape=b;if(E!=null)if(typeof E=="object"){let[R,B]=Object.entries(E)[0];F[R]=B}else F.sprite=E;if(S!=null)if(typeof S=="object"){let[R,B]=Object.entries(S)[0];F[R]=B}else F.techn=S;if(_!=null)if(typeof _=="object"){let[R,B]=Object.entries(_)[0];F[R]=B}else F.legendText=_;if(M!=null)if(typeof M=="object"){let[R,B]=Object.entries(M)[0];F[R]=B}else F.legendSprite=M}},ORe=function(i,a,f,g,w,v,b){const E=jF.find(S=>S.from===a&&S.to===f);if(E!==void 0){if(g!=null)if(typeof g=="object"){let[S,_]=Object.entries(g)[0];E[S]=_}else E.textColor=g;if(w!=null)if(typeof w=="object"){let[S,_]=Object.entries(w)[0];E[S]=_}else E.lineColor=w;if(v!=null)if(typeof v=="object"){let[S,_]=Object.entries(v)[0];E[S]=parseInt(_)}else E.offsetX=parseInt(v);if(b!=null)if(typeof b=="object"){let[S,_]=Object.entries(b)[0];E[S]=parseInt(_)}else E.offsetY=parseInt(b)}},NRe=function(i,a,f){let g=_Y,w=AY;if(typeof a=="object"){const v=Object.values(a)[0];g=parseInt(v)}else g=parseInt(a);if(typeof f=="object"){const v=Object.values(f)[0];w=parseInt(v)}else w=parseInt(f);g>=1&&(_Y=g),w>=1&&(AY=w)},PRe=function(){return _Y},FRe=function(){return AY},BRe=function(){return ep},RRe=function(){return Yv},iRt=function(i){return i==null?Wv:Wv.filter(a=>a.parentBoundary===i)},jRe=function(i){return Wv.find(a=>a.alias===i)},$Re=function(i){return Object.keys(iRt(i))},zRe=function(i){return i==null?i4:i4.filter(a=>a.parentBoundary===i)},qRe=function(){return jF},HRe=function(){return Qgt},VRe=function(i){Jgt=i},x8=function(){return Jgt},Zgt={addPersonOrSystem:CRe,addPersonOrSystemBoundary:ARe,addContainer:SRe,addContainerBoundary:LRe,addComponent:_Re,addDeploymentNode:DRe,popBoundaryParseStack:MRe,addRel:TRe,updateElStyle:IRe,updateRelStyle:ORe,updateLayoutConfig:NRe,autoWrap:x8,setWrap:VRe,getC4ShapeArray:iRt,getC4Shape:jRe,getC4ShapeKeys:$Re,getBoundarys:zRe,getCurrentBoundaryParse:BRe,getParentBoundaryParse:RRe,getRels:qRe,getTitle:HRe,getC4Type:kRe,getC4ShapeInRow:PRe,getC4BoundaryInRow:FRe,setAccTitle:og,getAccTitle:Xg,getAccDescription:Jg,setAccDescription:Qg,getConfig:()=>Re().c4,clear:function(){Wv=[],i4=[{alias:"global",label:{text:"global"},type:{text:"global"},tags:null,link:null,parentBoundary:""}],Yv="",ep="global",y8=[""],jF=[],y8=[""],Qgt="",Jgt=!1,_Y=4,AY=2},LINETYPE:{SOLID:0,DOTTED:1,NOTE:2,SOLID_CROSS:3,DOTTED_CROSS:4,SOLID_OPEN:5,DOTTED_OPEN:6,LOOP_START:10,LOOP_END:11,ALT_START:12,ALT_ELSE:13,ALT_END:14,OPT_START:15,OPT_END:16,ACTIVE_START:17,ACTIVE_END:18,PAR_START:19,PAR_AND:20,PAR_END:21,RECT_START:22,RECT_END:23,SOLID_POINT:24,DOTTED_POINT:25},ARROWTYPE:{FILLED:0,OPEN:1},PLACEMENT:{LEFTOF:0,RIGHTOF:1,OVER:2},setTitle:function(i){Qgt=Ef(i,Re())},setC4Type:ERe},LY=(i,a)=>{const f=i.append("rect");if(f.attr("x",a.x),f.attr("y",a.y),f.attr("fill",a.fill),f.attr("stroke",a.stroke),f.attr("width",a.width),f.attr("height",a.height),a.rx!==void 0&&f.attr("rx",a.rx),a.ry!==void 0&&f.attr("ry",a.ry),a.attrs!==void 0)for(const g in a.attrs)f.attr(g,a.attrs[g]);return a.class!==void 0&&f.attr("class",a.class),f},sRt=(i,a)=>{const f={x:a.startx,y:a.starty,width:a.stopx-a.startx,height:a.stopy-a.starty,fill:a.fill,stroke:a.stroke,class:"rect"};LY(i,f).lower()},URe=(i,a)=>{const f=a.text.replace(xF," "),g=i.append("text");g.attr("x",a.x),g.attr("y",a.y),g.attr("class","legend"),g.style("text-anchor",a.anchor),a.class!==void 0&&g.attr("class",a.class);const w=g.append("tspan");return w.attr("x",a.x+a.textMargin*2),w.text(f),g},GRe=(i,a,f,g)=>{const w=i.append("image");w.attr("x",a),w.attr("y",f);const v=h8(g);w.attr("xlink:href",v)},KRe=(i,a,f,g)=>{const w=i.append("use");w.attr("x",a),w.attr("y",f);const v=h8(g);w.attr("xlink:href",`#${v}`)},_9=()=>({x:0,y:0,width:100,height:100,fill:"#EDF2AE",stroke:"#666",anchor:"start",rx:0,ry:0}),tpt=()=>({x:0,y:0,width:100,height:100,"text-anchor":"start",style:"#666",textMargin:0,rx:0,ry:0,tspan:!0}),ept=function(i,a){return LY(i,a)},aRt=function(i,a,f,g,w,v){const b=i.append("image");b.attr("width",a),b.attr("height",f),b.attr("x",g),b.attr("y",w);let E=v.startsWith("data:image/png;base64")?v:h8(v);b.attr("xlink:href",E)},WRe=(i,a,f)=>{const g=i.append("g");let w=0;for(let v of a){let b=v.textColor?v.textColor:"#444444",E=v.lineColor?v.lineColor:"#444444",S=v.offsetX?parseInt(v.offsetX):0,_=v.offsetY?parseInt(v.offsetY):0,M="";if(w===0){let R=g.append("line");R.attr("x1",v.startPoint.x),R.attr("y1",v.startPoint.y),R.attr("x2",v.endPoint.x),R.attr("y2",v.endPoint.y),R.attr("stroke-width","1"),R.attr("stroke",E),R.style("fill","none"),v.type!=="rel_b"&&R.attr("marker-end","url("+M+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+M+"#arrowend)"),w=-1}else{let R=g.append("path");R.attr("fill","none").attr("stroke-width","1").attr("stroke",E).attr("d","Mstartx,starty Qcontrolx,controly stopx,stopy ".replaceAll("startx",v.startPoint.x).replaceAll("starty",v.startPoint.y).replaceAll("controlx",v.startPoint.x+(v.endPoint.x-v.startPoint.x)/2-(v.endPoint.x-v.startPoint.x)/4).replaceAll("controly",v.startPoint.y+(v.endPoint.y-v.startPoint.y)/2).replaceAll("stopx",v.endPoint.x).replaceAll("stopy",v.endPoint.y)),v.type!=="rel_b"&&R.attr("marker-end","url("+M+"#arrowhead)"),(v.type==="birel"||v.type==="rel_b")&&R.attr("marker-start","url("+M+"#arrowend)")}let F=f.messageFont();Nx(f)(v.label.text,g,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+S,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+_,v.label.width,v.label.height,{fill:b},F),v.techn&&v.techn.text!==""&&(F=f.messageFont(),Nx(f)("["+v.techn.text+"]",g,Math.min(v.startPoint.x,v.endPoint.x)+Math.abs(v.endPoint.x-v.startPoint.x)/2+S,Math.min(v.startPoint.y,v.endPoint.y)+Math.abs(v.endPoint.y-v.startPoint.y)/2+f.messageFontSize+5+_,Math.max(v.label.width,v.techn.width),v.techn.height,{fill:b,"font-style":"italic"},F))}},YRe=function(i,a,f){const g=i.append("g");let w=a.bgColor?a.bgColor:"none",v=a.borderColor?a.borderColor:"#444444",b=a.fontColor?a.fontColor:"black",E={"stroke-width":1,"stroke-dasharray":"7.0,7.0"};a.nodeType&&(E={"stroke-width":1});let S={x:a.x,y:a.y,fill:w,stroke:v,width:a.width,height:a.height,rx:2.5,ry:2.5,attrs:E};ept(g,S);let _=f.boundaryFont();_.fontWeight="bold",_.fontSize=_.fontSize+2,_.fontColor=b,Nx(f)(a.label.text,g,a.x,a.y+a.label.Y,a.width,a.height,{fill:"#444444"},_),a.type&&a.type.text!==""&&(_=f.boundaryFont(),_.fontColor=b,Nx(f)(a.type.text,g,a.x,a.y+a.type.Y,a.width,a.height,{fill:"#444444"},_)),a.descr&&a.descr.text!==""&&(_=f.boundaryFont(),_.fontSize=_.fontSize-2,_.fontColor=b,Nx(f)(a.descr.text,g,a.x,a.y+a.descr.Y,a.width,a.height,{fill:"#444444"},_))},XRe=function(i,a,f){var F;let g=a.bgColor?a.bgColor:f[a.typeC4Shape.text+"_bg_color"],w=a.borderColor?a.borderColor:f[a.typeC4Shape.text+"_border_color"],v=a.fontColor?a.fontColor:"#FFFFFF",b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";switch(a.typeC4Shape.text){case"person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAACD0lEQVR4Xu2YoU4EMRCGT+4j8Ai8AhaH4QHgAUjQuFMECUgMIUgwJAgMhgQsAYUiJCiQIBBY+EITsjfTdme6V24v4c8vyGbb+ZjOtN0bNcvjQXmkH83WvYBWto6PLm6v7p7uH1/w2fXD+PBycX1Pv2l3IdDm/vn7x+dXQiAubRzoURa7gRZWd0iGRIiJbOnhnfYBQZNJjNbuyY2eJG8fkDE3bbG4ep6MHUAsgYxmE3nVs6VsBWJSGccsOlFPmLIViMzLOB7pCVO2AtHJMohH7Fh6zqitQK7m0rJvAVYgGcEpe//PLdDz65sM4pF9N7ICcXDKIB5Nv6j7tD0NoSdM2QrU9Gg0ewE1LqBhHR3BBdvj2vapnidjHxD/q6vd7Pvhr31AwcY8eXMTXAKECZZJFXuEq27aLgQK5uLMohCenGGuGewOxSjBvYBqeG6B+Nqiblggdjnc+ZXDy+FNFpFzw76O3UBAROuXh6FoiAcf5g9eTvUgzy0nWg6I8cXHRUpg5bOVBCo+KDpFajOf23GgPme7RSQ+lacIENUgJ6gg1k6HjgOlqnLqip4tEuhv0hNEMXUD0clyXE3p6pZA0S2nnvTlXwLJEZWlb7cTQH1+USgTN4VhAenm/wea1OCAOmqo6fE1WCb9WSKBah+rbUWPWAmE2Rvk0ApiB45eOyNAzU8xcTvj8KvkKEoOaIYeHNA3ZuygAvFMUO0AAAAASUVORK5CYII=";break;case"external_person":b="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAIAAADYYG7QAAAB6ElEQVR4Xu2YLY+EMBCG9+dWr0aj0Wg0Go1Go0+j8Xdv2uTCvv1gpt0ebHKPuhDaeW4605Z9mJvx4AdXUyTUdd08z+u6flmWZRnHsWkafk9DptAwDPu+f0eAYtu2PEaGWuj5fCIZrBAC2eLBAnRCsEkkxmeaJp7iDJ2QMDdHsLg8SxKFEJaAo8lAXnmuOFIhTMpxxKATebo4UiFknuNo4OniSIXQyRxEA3YsnjGCVEjVXD7yLUAqxBGUyPv/Y4W2beMgGuS7kVQIBycH0fD+oi5pezQETxdHKmQKGk1eQEYldK+jw5GxPfZ9z7Mk0Qnhf1W1m3w//EUn5BDmSZsbR44QQLBEqrBHqOrmSKaQAxdnLArCrxZcM7A7ZKs4ioRq8LFC+NpC3WCBJsvpVw5edm9iEXFuyNfxXAgSwfrFQ1c0iNda8AdejvUgnktOtJQQxmcfFzGglc5WVCj7oDgFqU18boeFSs52CUh8LE8BIVQDT1ABrB0HtgSEYlX5doJnCwv9TXocKCaKbnwhdDKPq4lf3SwU3HLq4V/+WYhHVMa/3b4IlfyikAduCkcBc7mQ3/z/Qq/cTuikhkzB12Ae/mcJC9U+Vo8Ej1gWAtgbeGgFsAMHr50BIWOLCbezvhpBFUdY6EJuJ/QDW0XoMX60zZ0AAAAASUVORK5CYII=";break}const E=i.append("g");E.attr("class","person-man");const S=_9();switch(a.typeC4Shape.text){case"person":case"external_person":case"system":case"external_system":case"container":case"external_container":case"component":case"external_component":S.x=a.x,S.y=a.y,S.fill=g,S.width=a.width,S.height=a.height,S.stroke=w,S.rx=2.5,S.ry=2.5,S.attrs={"stroke-width":.5},ept(E,S);break;case"system_db":case"external_system_db":case"container_db":case"external_container_db":case"component_db":case"external_component_db":E.append("path").attr("fill",g).attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc0,-10 half,-10 half,-10c0,0 half,0 half,10l0,heightc0,10 -half,10 -half,10c0,0 -half,0 -half,-10l0,-height".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2).replaceAll("height",a.height)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc0,10 half,10 half,10c0,0 half,0 half,-10".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("half",a.width/2));break;case"system_queue":case"external_system_queue":case"container_queue":case"external_container_queue":case"component_queue":case"external_component_queue":E.append("path").attr("fill",g).attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startylwidth,0c5,0 5,half 5,halfc0,0 0,half -5,halfl-width,0c-5,0 -5,-half -5,-halfc0,0 0,-half 5,-half".replaceAll("startx",a.x).replaceAll("starty",a.y).replaceAll("width",a.width).replaceAll("half",a.height/2)),E.append("path").attr("fill","none").attr("stroke-width","0.5").attr("stroke",w).attr("d","Mstartx,startyc-5,0 -5,half -5,halfc0,half 5,half 5,half".replaceAll("startx",a.x+a.width).replaceAll("starty",a.y).replaceAll("half",a.height/2));break}let _=sje(f,a.typeC4Shape.text);switch(E.append("text").attr("fill",v).attr("font-family",_.fontFamily).attr("font-size",_.fontSize-2).attr("font-style","italic").attr("lengthAdjust","spacing").attr("textLength",a.typeC4Shape.width).attr("x",a.x+a.width/2-a.typeC4Shape.width/2).attr("y",a.y+a.typeC4Shape.Y).text("<<"+a.typeC4Shape.text+">>"),a.typeC4Shape.text){case"person":case"external_person":aRt(E,48,48,a.x+a.width/2-24,a.y+a.image.Y,b);break}let M=f[a.typeC4Shape.text+"Font"]();return M.fontWeight="bold",M.fontSize=M.fontSize+2,M.fontColor=v,Nx(f)(a.label.text,E,a.x,a.y+a.label.Y,a.width,a.height,{fill:v},M),M=f[a.typeC4Shape.text+"Font"](),M.fontColor=v,a.techn&&((F=a.techn)==null?void 0:F.text)!==""?Nx(f)(a.techn.text,E,a.x,a.y+a.techn.Y,a.width,a.height,{fill:v,"font-style":"italic"},M):a.type&&a.type.text!==""&&Nx(f)(a.type.text,E,a.x,a.y+a.type.Y,a.width,a.height,{fill:v,"font-style":"italic"},M),a.descr&&a.descr.text!==""&&(M=f.personFont(),M.fontColor=v,Nx(f)(a.descr.text,E,a.x,a.y+a.descr.Y,a.width,a.height,{fill:v},M)),a.height},QRe=function(i){i.append("defs").append("symbol")
[all...]
/plugin/openlayersmap/ol7/
H A Dol.js.map
/plugin/dokuprism/prism/
H A Dprism.css3 code[class*=language-],pre[class*=language-]{color:#000;background:0 0;text-shadow:0 1px #fff;font-family:Consolas,Monaco,'Andale Mono','Ubuntu Mono',monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-moz-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-] ::-moz-selection,code[class*=language-]::-moz-selection,pre[class*=language-] ::-moz-selection,pre[class*=language-]::-moz-selection{text-shadow:none;background:#b3d4fc}code[class*=language-] ::selection,code[class*=language-]::selection,pre[class*=language-] ::selection,pre[class*=language-]::selection{text-shadow:none;background:#b3d4fc}@media print{code[class*=language-],pre[class*=language-]{text-shadow:none}}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto}:not(pre)>code[class*=language-],pre[class*=language-]{background:#f5f2f0}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em;white-space:normal}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#708090}.token.punctuation{color:#999}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#905}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string{color:#690}.language-css .token.string,.style .token.string,.token.entity,.token.operator,.token.url{color:#9a6e3a;background:hsla(0,0%,100%,.5)}.token.atrule,.token.attr-value,.token.keyword{color:#07a}.token.class-name,.token.function{color:#dd4a68}.token.important,.token.regex,.token.variable{color:#e90}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}
H A Dprism.js21 !function(t){var n={pattern:/(^[ \t]*)\[(?!\[)(?:(["'$`])(?:(?!\2)[^\\]|\\.)*\2|\[(?:[^\[\]\\]|\\.)*\]|[^\[\]\\"'$`]|\\.)*\]/m,lookbehind:!0,inside:{quoted:{pattern:/([$`])(?:(?!\1)[^\\]|\\.)*\1/,inside:{punctuation:/^[$`]|[$`]$/}},interpreted:{pattern:/'(?:[^'\\]|\\.)*'/,inside:{punctuation:/^'|'$/}},string:/"(?:[^"\\]|\\.)*"/,variable:/\w+(?==)/,punctuation:/^\[|\]$|,/,operator:/=/,"attr-value":/(?!^\s+$).+/}},i=t.languages.asciidoc={"comment-block":{pattern:/^(\/{4,})$[\s\S]*?^\1/m,alias:"comment"},table:{pattern:/^\|={3,}(?:(?:\r?\n|\r(?!\n)).*)*?(?:\r?\n|\r)\|={3,}$/m,inside:{specifiers:{pattern:/(?:(?:(?:\d+(?:\.\d+)?|\.\d+)[+*](?:[<^>](?:\.[<^>])?|\.[<^>])?|[<^>](?:\.[<^>])?|\.[<^>])[a-z]*|[a-z]+)(?=\|)/,alias:"attr-value"},punctuation:{pattern:/(^|[^\\])[|!]=*/,lookbehind:!0}}},"passthrough-block":{pattern:/^(\+{4,})$[\s\S]*?^\1$/m,inside:{punctuation:/^\++|\++$/}},"literal-block":{pattern:/^(-{4,}|\.{4,})$[\s\S]*?^\1$/m,inside:{punctuation:/^(?:-+|\.+)|(?:-+|\.+)$/}},"other-block":{pattern:/^(--|\*{4,}|_{4,}|={4,})$[\s\S]*?^\1$/m,inside:{punctuation:/^(?:-+|\*+|_+|=+)|(?:-+|\*+|_+|=+)$/}},"list-punctuation":{pattern:/(^[ \t]*)(?:-|\*{1,5}|\.{1,5}|(?:[a-z]|\d+)\.|[xvi]+\))(?= )/im,lookbehind:!0,alias:"punctuation"},"list-label":{pattern:/(^[ \t]*)[a-z\d].+(?::{2,4}|;;)(?=\s)/im,lookbehind:!0,alias:"symbol"},"indented-block":{pattern:/((\r?\n|\r)\2)([ \t]+)\S.*(?:(?:\r?\n|\r)\3.+)*(?=\2{2}|$)/,lookbehind:!0},comment:/^\/\/.*/m,title:{pattern:/^.+(?:\r?\n|\r)(?:={3,}|-{3,}|~{3,}|\^{3,}|\+{3,})$|^={1,5} .+|^\.(?![\s.]).*/m,alias:"important",inside:{punctuation:/^(?:\.|=+)|(?:=+|-+|~+|\^+|\++)$/}},"attribute-entry":{pattern:/^:[^:\r\n]+:(?: .*?(?: \+(?:\r?\n|\r).*?)*)?$/m,alias:"tag"},attributes:n,hr:{pattern:/^'{3,}$/m,alias:"punctuation"},"page-break":{pattern:/^<{3,}$/m,alias:"punctuation"},admonition:{pattern:/^(?:CAUTION|IMPORTANT|NOTE|TIP|WARNING):/m,alias:"keyword"},callout:[{pattern:/(^[ \t]*)<?\d*>/m,lookbehind:!0,alias:"symbol"},{pattern:/<\d+>/,alias:"symbol"}],macro:{pattern:/\b[a-z\d][a-z\d-]*::?(?:[^\s\[\]]*\[(?:[^\]\\"']|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:{function:/^[a-z\d-]+(?=:)/,punctuation:/^::?/,attributes:{pattern:/(?:\[(?:[^\]\\"']|(["'])(?:(?!\1)[^\\]|\\.)*\1|\\.)*\])/,inside:n.inside}}},inline:{pattern:/(^|[^\\])(?:(?:\B\[(?:[^\]\\"']|(["'])(?:(?!\2)[^\\]|\\.)*\2|\\.)*\])?(?:\b_(?!\s)(?: _|[^_\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: _|[^_\\\r\n]|\\.)+)*_\b|\B``(?!\s).+?(?:(?:\r?\n|\r).+?)*''\B|\B`(?!\s)(?:[^`'\s]|\s+\S)+['`]\B|\B(['*+#])(?!\s)(?: \3|(?!\3)[^\\\r\n]|\\.)+(?:(?:\r?\n|\r)(?: \3|(?!\3)[^\\\r\n]|\\.)+)*\3\B)|(?:\[(?:[^\]\\"']|(["'])(?:(?!\4)[^\\]|\\.)*\4|\\.)*\])?(?:(__|\*\*|\+\+\+?|##|\$\$|[~^]).+?(?:(?:\r?\n|\r).+?)*\5|\{[^}\r\n]+\}|\[\[\[?.+?(?:(?:\r?\n|\r).+?)*\]?\]\]|<<.+?(?:(?:\r?\n|\r).+?)*>>|\(\(\(?.+?(?:(?:\r?\n|\r).+?)*\)?\)\)))/m,lookbehind:!0,inside:{attributes:n,url:{pattern:/^(?:\[\[\[?.+?\]?\]\]|<<.+?>>)$/,inside:{punctuation:/^(?:\[\[\[?|<<)|(?:\]\]\]?|>>)$/}},"attribute-ref":{pattern:/^\{.+\}$/,inside:{variable:{pattern:/(^\{)[a-z\d,+_-]+/,lookbehind:!0},operator:/^[=?!#%@$]|!(?=[:}])/,punctuation:/^\{|\}$|::?/}},italic:{pattern:/^(['_])[\s\S]+\1$/,inside:{punctuation:/^(?:''?|__?)|(?:''?|__?)$/}},bold:{pattern:/^\*[\s\S]+\*$/,inside:{punctuation:/^\*\*?|\*\*?$/}},punctuation:/^(?:``?|\+{1,3}|##?|\$\$|[~^]|\(\(\(?)|(?:''?|\+{1,3}|##?|\$\$|[~^`]|\)?\)\))$/}},replacement:{pattern:/\((?:C|R|TM)\)/,alias:"builtin"},entity:/&#?[\da-z]{1,8};/i,"line-continuation":{pattern:/(^| )\+$/m,lookbehind:!0,alias:"punctuation"}};function e(t){for(var n={},e=0,a=(t=t.split(" ")).length;e<a;e++)n[t[e]]=i[t[e]];return n}n.inside.interpreted.inside.rest=e("macro inline replacement entity"),i["passthrough-block"].inside.rest=e("macro"),i["literal-block"].inside.rest=e("callout"),i.table.inside.rest=e("comment-block passthrough-block literal-block other-block list-punctuation indented-block comment title attribute-entry attributes hr page-break admonition list-label callout macro inline replacement entity line-continuation"),i["other-block"].inside.rest=e("table list-punctuation indented-block comment attribute-entry attributes hr page-break admonition list-label macro inline replacement entity line-continuation"),i.title.inside.rest=e("macro inline replacement entity"),t.hooks.add("wrap",(function(t){"entity"===t.type&&(t.attributes.title=t.content.replace(/&amp;/,"&"))})),t.languages.adoc=t.languages.asciidoc}(Prism);
25 Prism.languages.autohotkey={comment:[{pattern:/(^|\s);.*/,lookbehind:!0},{pattern:/(^[\t ]*)\/\*(?:[\r\n](?![ \t]*\*\/)|[^\r\n])*(?:[\r\n][ \t]*\*\/)?/m,lookbehind:!0,greedy:!0}],tag:{pattern:/^([ \t]*)[^\s,`":]+(?=:[ \t]*$)/m,lookbehind:!0},string:/"(?:[^"\n\r]|"")*"/,variable:/%\w+%/,number:/\b0x[\dA-Fa-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:[Ee]-?\d+)?/,operator:/\?|\/\/?=?|:=|\|[=|]?|&[=&]?|\+[=+]?|-[=-]?|\*[=*]?|<(?:<=?|>|=)?|>>?=?|[.^!=~]=?|\b(?:AND|NOT|OR)\b/,boolean:/\b(?:false|true)\b/,command:{pattern:/\b(?:AutoTrim|BlockInput|Break|Click|ClipWait|Continue|Control|ControlClick|ControlFocus|ControlGet|ControlGetFocus|ControlGetPos|ControlGetText|ControlMove|ControlSend|ControlSendRaw|ControlSetText|CoordMode|Critical|DetectHiddenText|DetectHiddenWindows|Drive|DriveGet|DriveSpaceFree|EnvAdd|EnvDiv|EnvGet|EnvMult|EnvSet|EnvSub|EnvUpdate|Exit|ExitApp|FileAppend|FileCopy|FileCopyDir|FileCreateDir|FileCreateShortcut|FileDelete|FileEncoding|FileGetAttrib|FileGetShortcut|FileGetSize|FileGetTime|FileGetVersion|FileInstall|FileMove|FileMoveDir|FileRead|FileReadLine|FileRecycle|FileRecycleEmpty|FileRemoveDir|FileSelectFile|FileSelectFolder|FileSetAttrib|FileSetTime|FormatTime|GetKeyState|Gosub|Goto|GroupActivate|GroupAdd|GroupClose|GroupDeactivate|Gui|GuiControl|GuiControlGet|Hotkey|ImageSearch|IniDelete|IniRead|IniWrite|Input|InputBox|KeyWait|ListHotkeys|ListLines|ListVars|Loop|Menu|MouseClick|MouseClickDrag|MouseGetPos|MouseMove|MsgBox|OnExit|OutputDebug|Pause|PixelGetColor|PixelSearch|PostMessage|Process|Progress|Random|RegDelete|RegRead|RegWrite|Reload|Repeat|Return|Run|RunAs|RunWait|Send|SendEvent|SendInput|SendMessage|SendMode|SendPlay|SendRaw|SetBatchLines|SetCapslockState|SetControlDelay|SetDefaultMouseSpeed|SetEnv|SetFormat|SetKeyDelay|SetMouseDelay|SetNumlockState|SetRegView|SetScrollLockState|SetStoreCapslockMode|SetTimer|SetTitleMatchMode|SetWinDelay|SetWorkingDir|Shutdown|Sleep|Sort|SoundBeep|SoundGet|SoundGetWaveVolume|SoundPlay|SoundSet|SoundSetWaveVolume|SplashImage|SplashTextOff|SplashTextOn|SplitPath|StatusBarGetText|StatusBarWait|StringCaseSense|StringGetPos|StringLeft|StringLen|StringLower|StringMid|StringReplace|StringRight|StringSplit|StringTrimLeft|StringTrimRight|StringUpper|Suspend|SysGet|Thread|ToolTip|Transform|TrayTip|URLDownloadToFile|WinActivate|WinActivateBottom|WinClose|WinGet|WinGetActiveStats|WinGetActiveTitle|WinGetClass|WinGetPos|WinGetText|WinGetTitle|WinHide|WinKill|WinMaximize|WinMenuSelectItem|WinMinimize|WinMinimizeAll|WinMinimizeAllUndo|WinMove|WinRestore|WinSet|WinSetTitle|WinShow|WinWait|WinWaitActive|WinWaitClose|WinWaitNotActive)\b/i,alias:"selector"},constant:/\b(?:a_ahkpath|a_ahkversion|a_appdata|a_appdatacommon|a_autotrim|a_batchlines|a_caretx|a_carety|a_computername|a_controldelay|a_cursor|a_dd|a_ddd|a_dddd|a_defaultmousespeed|a_desktop|a_desktopcommon|a_detecthiddentext|a_detecthiddenwindows|a_endchar|a_eventinfo|a_exitreason|a_fileencoding|a_formatfloat|a_formatinteger|a_gui|a_guicontrol|a_guicontrolevent|a_guievent|a_guiheight|a_guiwidth|a_guix|a_guiy|a_hour|a_iconfile|a_iconhidden|a_iconnumber|a_icontip|a_index|a_ipaddress1|a_ipaddress2|a_ipaddress3|a_ipaddress4|a_is64bitos|a_isadmin|a_iscompiled|a_iscritical|a_ispaused|a_issuspended|a_isunicode|a_keydelay|a_language|a_lasterror|a_linefile|a_linenumber|a_loopfield|a_loopfileattrib|a_loopfiledir|a_loopfileext|a_loopfilefullpath|a_loopfilelongpath|a_loopfilename|a_loopfileshortname|a_loopfileshortpath|a_loopfilesize|a_loopfilesizekb|a_loopfilesizemb|a_loopfiletimeaccessed|a_loopfiletimecreated|a_loopfiletimemodified|a_loopreadline|a_loopregkey|a_loopregname|a_loopregsubkey|a_loopregtimemodified|a_loopregtype|a_mday|a_min|a_mm|a_mmm|a_mmmm|a_mon|a_mousedelay|a_msec|a_mydocuments|a_now|a_nowutc|a_numbatchlines|a_ostype|a_osversion|a_priorhotkey|a_priorkey|a_programfiles|a_programs|a_programscommon|a_ptrsize|a_regview|a_screendpi|a_screenheight|a_screenwidth|a_scriptdir|a_scriptfullpath|a_scripthwnd|a_scriptname|a_sec|a_space|a_startmenu|a_startmenucommon|a_startup|a_startupcommon|a_stringcasesense|a_tab|a_temp|a_thisfunc|a_thishotkey|a_thislabel|a_thismenu|a_thismenuitem|a_thismenuitempos|a_tickcount|a_timeidle|a_timeidlephysical|a_timesincepriorhotkey|a_timesincethishotkey|a_titlematchmode|a_titlematchmodespeed|a_username|a_wday|a_windelay|a_windir|a_workingdir|a_yday|a_year|a_yweek|a_yyyy|clipboard|clipboardall|comspec|errorlevel|programfiles)\b/i,builtin:/\b(?:abs|acos|asc|asin|atan|ceil|chr|class|comobjactive|comobjarray|comobjconnect|comobjcreate|comobjerror|comobjflags|comobjget|comobjquery|comobjtype|comobjvalue|cos|dllcall|exp|fileexist|Fileopen|floor|format|il_add|il_create|il_destroy|instr|isfunc|islabel|IsObject|ln|log|ltrim|lv_add|lv_delete|lv_deletecol|lv_getcount|lv_getnext|lv_gettext|lv_insert|lv_insertcol|lv_modify|lv_modifycol|lv_setimagelist|mod|numget|numput|onmessage|regexmatch|regexreplace|registercallback|round|rtrim|sb_seticon|sb_setparts|sb_settext|sin|sqrt|strlen|strreplace|strsplit|substr|tan|tv_add|tv_delete|tv_get|tv_getchild|tv_getcount|tv_getnext|tv_getparent|tv_getprev|tv_getselection|tv_gettext|tv_modify|varsetcapacity|winactive|winexist|__Call|__Get|__New|__Set)\b/i,symbol:/\b(?:alt|altdown|altup|appskey|backspace|browser_back|browser_favorites|browser_forward|browser_home|browser_refresh|browser_search|browser_stop|bs|capslock|ctrl|ctrlbreak|ctrldown|ctrlup|del|delete|down|end|enter|esc|escape|f1|f10|f11|f12|f13|f14|f15|f16|f17|f18|f19|f2|f20|f21|f22|f23|f24|f3|f4|f5|f6|f7|f8|f9|home|ins|insert|joy1|joy10|joy11|joy12|joy13|joy14|joy15|joy16|joy17|joy18|joy19|joy2|joy20|joy21|joy22|joy23|joy24|joy25|joy26|joy27|joy28|joy29|joy3|joy30|joy31|joy32|joy4|joy5|joy6|joy7|joy8|joy9|joyaxes|joybuttons|joyinfo|joyname|joypov|joyr|joyu|joyv|joyx|joyy|joyz|lalt|launch_app1|launch_app2|launch_mail|launch_media|lbutton|lcontrol|lctrl|left|lshift|lwin|lwindown|lwinup|mbutton|media_next|media_play_pause|media_prev|media_stop|numlock|numpad0|numpad1|numpad2|numpad3|numpad4|numpad5|numpad6|numpad7|numpad8|numpad9|numpadadd|numpadclear|numpaddel|numpaddiv|numpaddot|numpaddown|numpadend|numpadenter|numpadhome|numpadins|numpadleft|numpadmult|numpadpgdn|numpadpgup|numpadright|numpadsub|numpadup|pgdn|pgup|printscreen|ralt|rbutton|rcontrol|rctrl|right|rshift|rwin|rwindown|rwinup|scrolllock|shift|shiftdown|shiftup|space|tab|up|volume_down|volume_mute|volume_up|wheeldown|wheelleft|wheelright|wheelup|xbutton1|xbutton2)\b/i,directive:{pattern:/#[a-z]+\b/i,alias:"important"},keyword:/\b(?:Abort|AboveNormal|Add|ahk_class|ahk_exe|ahk_group|ahk_id|ahk_pid|All|Alnum|Alpha|AltSubmit|AltTab|AltTabAndMenu|AltTabMenu|AltTabMenuDismiss|AlwaysOnTop|AutoSize|Background|BackgroundTrans|BelowNormal|between|BitAnd|BitNot|BitOr|BitShiftLeft|BitShiftRight|BitXOr|Bold|Border|Button|ByRef|Catch|Checkbox|Checked|CheckedGray|Choose|ChooseString|Close|Color|ComboBox|Contains|ControlList|Count|Date|DateTime|Days|DDL|Default|DeleteAll|Delimiter|Deref|Destroy|Digit|Disable|Disabled|DropDownList|Edit|Eject|Else|Enable|Enabled|Error|Exist|Expand|ExStyle|FileSystem|Finally|First|Flash|Float|FloatFast|Focus|Font|for|global|Grid|Group|GroupBox|GuiClose|GuiContextMenu|GuiDropFiles|GuiEscape|GuiSize|Hdr|Hidden|Hide|High|HKCC|HKCR|HKCU|HKEY_CLASSES_ROOT|HKEY_CURRENT_CONFIG|HKEY_CURRENT_USER|HKEY_LOCAL_MACHINE|HKEY_USERS|HKLM|HKU|Hours|HScroll|Icon|IconSmall|ID|IDLast|If|IfEqual|IfExist|IfGreater|IfGreaterOrEqual|IfInString|IfLess|IfLessOrEqual|IfMsgBox|IfNotEqual|IfNotExist|IfNotInString|IfWinActive|IfWinExist|IfWinNotActive|IfWinNotExist|Ignore|ImageList|in|Integer|IntegerFast|Interrupt|is|italic|Join|Label|LastFound|LastFoundExist|Limit|Lines|List|ListBox|ListView|local|Lock|Logoff|Low|Lower|Lowercase|MainWindow|Margin|Maximize|MaximizeBox|MaxSize|Minimize|MinimizeBox|MinMax|MinSize|Minutes|MonthCal|Mouse|Move|Multi|NA|No|NoActivate|NoDefault|NoHide|NoIcon|NoMainWindow|norm|Normal|NoSort|NoSortHdr|NoStandard|Not|NoTab|NoTimers|Number|Off|Ok|On|OwnDialogs|Owner|Parse|Password|Picture|Pixel|Pos|Pow|Priority|ProcessName|Radio|Range|Read|ReadOnly|Realtime|Redraw|Region|REG_BINARY|REG_DWORD|REG_EXPAND_SZ|REG_MULTI_SZ|REG_SZ|Relative|Rename|Report|Resize|Restore|Retry|RGB|Screen|Seconds|Section|Serial|SetLabel|ShiftAltTab|Show|Single|Slider|SortDesc|Standard|static|Status|StatusBar|StatusCD|strike|Style|Submit|SysMenu|Tab2|TabStop|Text|Theme|Throw|Tile|ToggleCheck|ToggleEnable|ToolWindow|Top|Topmost|TransColor|Transparent|Tray|TreeView|Try|TryAgain|Type|UnCheck|underline|Unicode|Unlock|Until|UpDown|Upper|Uppercase|UseErrorLevel|Vis|VisFirst|Visible|VScroll|Wait|WaitClose|WantCtrlA|WantF2|WantReturn|While|Wrap|Xdigit|xm|xp|xs|Yes|ym|yp|ys)\b/i,function:/[^(); \t,\n+*\-=?>:\\\/<&%\[\]]+(?=\()/,punctuation:/[{}[\]():,]/}; property in Prism.languages.autohotkey
37 Prism.languages.clojure={comment:{pattern:/;.*/,greedy:!0},string:{pattern:/"(?:[^"\\]|\\.)*"/,greedy:!0},char:/\\\w+/,symbol:{pattern:/(^|[\s()\[\]{},])::?[\w*+!?'<>=/.-]+/,lookbehind:!0},keyword:{pattern:/(\()(?:-|->|->>|\.|\.\.|\*|\/|\+|<|<=|=|==|>|>=|accessor|agent|agent-errors|aget|alength|all-ns|alter|and|append-child|apply|array-map|aset|aset-boolean|aset-byte|aset-char|aset-double|aset-float|aset-int|aset-long|aset-short|assert|assoc|await|await-for|bean|binding|bit-and|bit-not|bit-or|bit-shift-left|bit-shift-right|bit-xor|boolean|branch\?|butlast|byte|cast|char|children|class|clear-agent-errors|comment|commute|comp|comparator|complement|concat|cond|conj|cons|constantly|construct-proxy|contains\?|count|create-ns|create-struct|cycle|dec|declare|def|def-|definline|definterface|defmacro|defmethod|defmulti|defn|defn-|defonce|defproject|defprotocol|defrecord|defstruct|deftype|deref|difference|disj|dissoc|distinct|do|doall|doc|dorun|doseq|dosync|dotimes|doto|double|down|drop|drop-while|edit|end\?|ensure|eval|every\?|false\?|ffirst|file-seq|filter|find|find-doc|find-ns|find-var|first|float|flush|fn|fnseq|for|frest|gensym|get|get-proxy-class|hash-map|hash-set|identical\?|identity|if|if-let|if-not|import|in-ns|inc|index|insert-child|insert-left|insert-right|inspect-table|inspect-tree|instance\?|int|interleave|intersection|into|into-array|iterate|join|key|keys|keyword|keyword\?|last|lazy-cat|lazy-cons|left|lefts|let|line-seq|list|list\*|load|load-file|locking|long|loop|macroexpand|macroexpand-1|make-array|make-node|map|map-invert|map\?|mapcat|max|max-key|memfn|merge|merge-with|meta|min|min-key|monitor-enter|name|namespace|neg\?|new|newline|next|nil\?|node|not|not-any\?|not-every\?|not=|ns|ns-imports|ns-interns|ns-map|ns-name|ns-publics|ns-refers|ns-resolve|ns-unmap|nth|nthrest|or|parse|partial|path|peek|pop|pos\?|pr|pr-str|print|print-str|println|println-str|prn|prn-str|project|proxy|proxy-mappings|quot|quote|rand|rand-int|range|re-find|re-groups|re-matcher|re-matches|re-pattern|re-seq|read|read-line|recur|reduce|ref|ref-set|refer|rem|remove|remove-method|remove-ns|rename|rename-keys|repeat|replace|replicate|resolve|rest|resultset-seq|reverse|rfirst|right|rights|root|rrest|rseq|second|select|select-keys|send|send-off|seq|seq-zip|seq\?|set|set!|short|slurp|some|sort|sort-by|sorted-map|sorted-map-by|sorted-set|special-symbol\?|split-at|split-with|str|string\?|struct|struct-map|subs|subvec|symbol|symbol\?|sync|take|take-nth|take-while|test|throw|time|to-array|to-array-2d|tree-seq|true\?|try|union|up|update-proxy|val|vals|var|var-get|var-set|var\?|vector|vector-zip|vector\?|when|when-first|when-let|when-not|with-local-vars|with-meta|with-open|with-out-str|xml-seq|xml-zip|zero\?|zipmap|zipper)(?=[\s)]|$)/,lookbehind:!0},boolean:/\b(?:false|nil|true)\b/,number:{pattern:/(^|[^\w$@])(?:\d+(?:[/.]\d+)?(?:e[+-]?\d+)?|0x[a-f0-9]+|[1-9]\d?r[a-z0-9]+)[lmn]?(?![\w$@])/i,lookbehind:!0},function:{pattern:/((?:^|[^'])\()[\w*+!?'<>=/.-]+(?=[\s)]|$)/,lookbehind:!0},operator:/[#@^`~]/,punctuation:/[{}\[\](),]/}; class in Prism.languages.clojure
41 !function(e){e.languages.ruby=e.languages.extend("clike",{comment:{pattern:/#.*|^=begin\s[\s\S]*?^=end/m,greedy:!0},"class-name":{pattern:/(\b(?:class|module)\s+|\bcatch\s+\()[\w.\\]+|\b[A-Z_]\w*(?=\s*\.\s*new\b)/,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:BEGIN|END|alias|and|begin|break|case|class|def|define_method|defined|do|each|else|elsif|end|ensure|extend|for|if|in|include|module|new|next|nil|not|or|prepend|private|protected|public|raise|redo|require|rescue|retry|return|self|super|then|throw|undef|unless|until|when|while|yield)\b/,operator:/\.{2,3}|&\.|===|<?=>|[!=]?~|(?:&&|\|\||<<|>>|\*\*|[+\-*/%<>!^&|=])=?|[?:]/,punctuation:/[(){}[\].,;]/}),e.languages.insertBefore("ruby","operator",{"double-colon":{pattern:/::/,alias:"punctuation"}});var n={pattern:/((?:^|[^\\])(?:\\{2})*)#\{(?:[^{}]|\{[^{}]*\})*\}/,lookbehind:!0,inside:{content:{pattern:/^(#\{)[\s\S]+(?=\}$)/,lookbehind:!0,inside:e.languages.ruby},delimiter:{pattern:/^#\{|\}$/,alias:"punctuation"}}};delete e.languages.ruby.function;var t="(?:"+["([^a-zA-Z0-9\\s{(\\[<=])(?:(?!\\1)[^\\\\]|\\\\[^])*\\1","\\((?:[^()\\\\]|\\\\[^]|\\((?:[^()\\\\]|\\\\[^])*\\))*\\)","\\{(?:[^{}\\\\]|\\\\[^]|\\{(?:[^{}\\\\]|\\\\[^])*\\})*\\}","\\[(?:[^\\[\\]\\\\]|\\\\[^]|\\[(?:[^\\[\\]\\\\]|\\\\[^])*\\])*\\]","<(?:[^<>\\\\]|\\\\[^]|<(?:[^<>\\\\]|\\\\[^])*>)*>"].join("|")+")",i='(?:"(?:\\\\.|[^"\\\\\r\n])*"|(?:\\b[a-zA-Z_]\\w*|[^\\s\0-\\x7F]+)[?!]?|\\$.)';e.languages.insertBefore("ruby","keyword",{"regex-literal":[{pattern:RegExp("%r"+t+"[egimnosux]{0,6}"),greedy:!0,inside:{interpolation:n,regex:/[\s\S]+/}},{pattern:/(^|[^/])\/(?!\/)(?:\[[^\r\n\]]+\]|\\.|[^[/\\\r\n])+\/[egimnosux]{0,6}(?=\s*(?:$|[\r\n,.;})#]))/,lookbehind:!0,greedy:!0,inside:{interpolation:n,regex:/[\s\S]+/}}],variable:/[@$]+[a-zA-Z_]\w*(?:[?!]|\b)/,symbol:[{pattern:RegExp("(^|[^:]):"+i),lookbehind:!0,greedy:!0},{pattern:RegExp("([\r\n{(,][ \t]*)"+i+"(?=:(?!:))"),lookbehind:!0,greedy:!0}],"method-definition":{pattern:/(\bdef\s+)\w+(?:\s*\.\s*\w+)?/,lookbehind:!0,inside:{function:/\b\w+$/,keyword:/^self\b/,"class-name":/^\w+/,punctuation:/\./}}}),e.languages.insertBefore("ruby","string",{"string-literal":[{pattern:RegExp("%[qQiIwWs]?"+t),greedy:!0,inside:{interpolation:n,string:/[\s\S]+/}},{pattern:/("|')(?:#\{[^}]+\}|#(?!\{)|\\(?:\r\n|[\s\S])|(?!\1)[^\\#\r\n])*\1/,greedy:!0,inside:{interpolation:n,string:/[\s\S]+/}},{pattern:/<<[-~]?([a-z_]\w*)[\r\n](?:.*[\r\n])*?[\t ]*\1/i,alias:"heredoc-string",greedy:!0,inside:{delimiter:{pattern:/^<<[-~]?[a-z_]\w*|\b[a-z_]\w*$/i,inside:{symbol
101 !function(e){e.languages.scheme={comment:/;.*|#;\s*(?:\((?:[^()]|\([^()]*\))*\)|\[(?:[^\[\]]|\[[^\[\]]*\])*\])|#\|(?:[^#|]|#(?!\|)|\|(?!#)|#\|(?:[^#|]|#(?!\|)|\ global() class in e.languages.scheme
104 !function(e){function n(e){return RegExp("(\\()(?:"+e+")(?=[\\s\\)])")}function a(e){return RegExp("([\\s([])(?:"+e+")(?=[\\s)])")}var t="(?!\\d)[-+*/~!@$%^=<>{}\\w] global() property in s.string.inside
106 Prism.languages.lolcode={comment:[/\bOBTW\s[\s\S]*?\sTLDR\b/,/\bBTW.+/],string:{pattern:/"(?::.|[^":])*"/,inside:{variable:/:\{[^}]+\}/,symbol:[/:\([a-f\d]+\)/ global() class in Prism.languages.lolcode
138 Prism.languages.q={string:/"(?:\\.|[^"\\\r\n])*"/,comment:[{pattern:/([\t )\]}])\/.*/,lookbehind:!0,greedy:!0},{pattern:/(^|\r?\n|\r)\/[\t ]*(?:(?:\r?\n|\r) global() property in Prism.languages.q
148 Prism.languages.rip={comment:{pattern:/#.*/,greedy:!0},char:{pattern:/\B`[^\s`'",.:;#\/\\()<>\[\]{}]\b/,greedy:!0},string:{pattern:/("|')(?:\\.|(?!\1)[^\\\r\n] global() property in Prism.languages.rip
157 Prism.languages.smalltalk={comment:{pattern:/"(?:""|[^"])*"/,greedy:!0},char:{pattern:/\$./,greedy:!0},string:{pattern:/'(?:''|[^'])*'/,greedy:!0},symbol:/#[\da-z]+|#(?:-| global() property in Prism.languages.smalltalk
[all...]
/plugin/mikioplugin/icons/fontawesome5/css/
H A Dall.min.css5 .fa,.fab,.fad,.fal,.far,.fas{-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased;display:inline-block;font-style:normal;font-variant:normal;text-rendering:auto;line-height:1}.fa-lg{font-size:1.33333em;line-height:.75em;vertical-align:-.0667em}.fa-xs{font-size:.75em}.fa-sm{font-size:.875em}.fa-1x{font-size:1em}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-6x{font-size:6em}.fa-7x{font-size:7em}.fa-8x{font-size:8em}.fa-9x{font-size:9em}.fa-10x{font-size:10em}.fa-fw{text-align:center;width:1.25em}.fa-ul{list-style-type:none;margin-left:2.5em;padding-left:0}.fa-ul>li{position:relative}.fa-li{left:-2em;position:absolute;text-align:center;width:2em;line-height:inherit}.fa-border{border:.08em solid #eee;border-radius:.1em;padding:.2em .25em .15em}.fa-pull-left{float:left}.fa-pull-right{float:right}.fa.fa-pull-left,.fab.fa-pull-left,.fal.fa-pull-left,.far.fa-pull-left,.fas.fa-pull-left{margin-right:.3em}.fa.fa-pull-right,.fab.fa-pull-right,.fal.fa-pull-right,.far.fa-pull-right,.fas.fa-pull-right{margin-left:.3em}.fa-spin{-webkit-animation:fa-spin 2s linear infinite;animation:fa-spin 2s linear infinite}.fa-pulse{-webkit-animation:fa-spin 1s steps(8) infinite;animation:fa-spin 1s steps(8) infinite}@-webkit-keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes fa-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.fa-rotate-90{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=1)";-webkit-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2)";-webkit-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=3)";-webkit-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=0, mirror=1)";-webkit-transform:scaleX(-1);transform:scaleX(-1)}.fa-flip-vertical{-webkit-transform:scaleY(-1);transform:scaleY(-1)}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical,.fa-flip-vertical{-ms-filter:"progid:DXImageTransform.Microsoft.BasicImage(rotation=2, mirror=1)"}.fa-flip-both,.fa-flip-horizontal.fa-flip-vertical{-webkit-transform:scale(-1);transform:scale(-1)}:root .fa-flip-both,:root .fa-flip-horizontal,:root .fa-flip-vertical,:root .fa-rotate-90,:root .fa-rotate-180,:root .fa-rotate-270{-webkit-filter:none;filter:none}.fa-stack{display:inline-block;height:2em;line-height:2em;position:relative;vertical-align:middle;width:2.5em}.fa-stack-1x,.fa-stack-2x{left:0;position:absolute;text-align:center;width:100%}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-500px:before{content:"\f26e"}.fa-accessible-icon:before{content:"\f368"}.fa-accusoft:before{content:"\f369"}.fa-acquisitions-incorporated:before{content:"\f6af"}.fa-ad:before{content:"\f641"}.fa-address-book:before{content:"\f2b9"}.fa-address-card:before{content:"\f2bb"}.fa-adjust:before{content:"\f042"}.fa-adn:before{content:"\f170"}.fa-adobe:before{content:"\f778"}.fa-adversal:before{content:"\f36a"}.fa-affiliatetheme:before{content:"\f36b"}.fa-air-freshener:before{content:"\f5d0"}.fa-airbnb:before{content:"\f834"}.fa-algolia:before{content:"\f36c"}.fa-align-center:before{content:"\f037"}.fa-align-justify:before{content:"\f039"}.fa-align-left:before{content:"\f036"}.fa-align-right:before{content:"\f038"}.fa-alipay:before{content:"\f642"}.fa-allergies:before{content:"\f461"}.fa-amazon:before{content:"\f270"}.fa-amazon-pay:before{content:"\f42c"}.fa-ambulance:before{content:"\f0f9"}.fa-american-sign-language-interpreting:before{content:"\f2a3"}.fa-amilia:before{content:"\f36d"}.fa-anchor:before{content:"\f13d"}.fa-android:before{content:"\f17b"}.fa-angellist:before{content:"\f209"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-down:before{content:"\f107"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angry:before{content:"\f556"}.fa-angrycreative:before{content:"\f36e"}.fa-angular:before{content:"\f420"}.fa-ankh:before{content:"\f644"}.fa-app-store:before{content:"\f36f"}.fa-app-store-ios:before{content:"\f370"}.fa-apper:before{content:"\f371"}.fa-apple:before{content:"\f179"}.fa-apple-alt:before{content:"\f5d1"}.fa-apple-pay:before{content:"\f415"}.fa-archive:before{content:"\f187"}.fa-archway:before{content:"\f557"}.fa-arrow-alt-circle-down:before{content:"\f358"}.fa-arrow-alt-circle-left:before{content:"\f359"}.fa-arrow-alt-circle-right:before{content:"\f35a"}.fa-arrow-alt-circle-up:before{content:"\f35b"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-down:before{content:"\f063"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrows-alt:before{content:"\f0b2"}.fa-arrows-alt-h:before{content:"\f337"}.fa-arrows-alt-v:before{content:"\f338"}.fa-artstation:before{content:"\f77a"}.fa-assistive-listening-systems:before{content:"\f2a2"}.fa-asterisk:before{content:"\f069"}.fa-asymmetrik:before{content:"\f372"}.fa-at:before{content:"\f1fa"}.fa-atlas:before{content:"\f558"}.fa-atlassian:before{content:"\f77b"}.fa-atom:before{content:"\f5d2"}.fa-audible:before{content:"\f373"}.fa-audio-description:before{content:"\f29e"}.fa-autoprefixer:before{content:"\f41c"}.fa-avianex:before{content:"\f374"}.fa-aviato:before{content:"\f421"}.fa-award:before{content:"\f559"}.fa-aws:before{content:"\f375"}.fa-baby:before{content:"\f77c"}.fa-baby-carriage:before{content:"\f77d"}.fa-backspace:before{content:"\f55a"}.fa-backward:before{content:"\f04a"}.fa-bacon:before{content:"\f7e5"}.fa-bacteria:before{content:"\f959"}.fa-bacterium:before{content:"\f95a"}.fa-bahai:before{content:"\f666"}.fa-balance-scale:before{content:"\f24e"}.fa-balance-scale-left:before{content:"\f515"}.fa-balance-scale-right:before{content:"\f516"}.fa-ban:before{content:"\f05e"}.fa-band-aid:before{content:"\f462"}.fa-bandcamp:before{content:"\f2d5"}.fa-barcode:before{content:"\f02a"}.fa-bars:before{content:"\f0c9"}.fa-baseball-ball:before{content:"\f433"}.fa-basketball-ball:before{content:"\f434"}.fa-bath:before{content:"\f2cd"}.fa-battery-empty:before{content:"\f244"}.fa-battery-full:before{content:"\f240"}.fa-battery-half:before{content:"\f242"}.fa-battery-quarter:before{content:"\f243"}.fa-battery-three-quarters:before{content:"\f241"}.fa-battle-net:before{content:"\f835"}.fa-bed:before{content:"\f236"}.fa-beer:before{content:"\f0fc"}.fa-behance:before{content:"\f1b4"}.fa-behance-square:before{content:"\f1b5"}.fa-bell:before{content:"\f0f3"}.fa-bell-slash:before{content:"\f1f6"}.fa-bezier-curve:before{content:"\f55b"}.fa-bible:before{content:"\f647"}.fa-bicycle:before{content:"\f206"}.fa-biking:before{content:"\f84a"}.fa-bimobject:before{content:"\f378"}.fa-binoculars:before{content:"\f1e5"}.fa-biohazard:before{content:"\f780"}.fa-birthday-cake:before{content:"\f1fd"}.fa-bitbucket:before{content:"\f171"}.fa-bitcoin:before{content:"\f379"}.fa-bity:before{content:"\f37a"}.fa-black-tie:before{content:"\f27e"}.fa-blackberry:before{content:"\f37b"}.fa-blender:before{content:"\f517"}.fa-blender-phone:before{content:"\f6b6"}.fa-blind:before{content:"\f29d"}.fa-blog:before{content:"\f781"}.fa-blogger:before{content:"\f37c"}.fa-blogger-b:before{content:"\f37d"}.fa-bluetooth:before{content:"\f293"}.fa-bluetooth-b:before{content:"\f294"}.fa-bold:before{content:"\f032"}.fa-bolt:before{content:"\f0e7"}.fa-bomb:before{content:"\f1e2"}.fa-bone:before{content:"\f5d7"}.fa-bong:before{content:"\f55c"}.fa-book:before{content:"\f02d"}.fa-book-dead:before{content:"\f6b7"}.fa-book-medical:before{content:"\f7e6"}.fa-book-open:before{content:"\f518"}.fa-book-reader:before{content:"\f5da"}.fa-bookmark:before{content:"\f02e"}.fa-bootstrap:before{content:"\f836"}.fa-border-all:before{content:"\f84c"}.fa-border-none:before{content:"\f850"}.fa-border-style:before{content:"\f853"}.fa-bowling-ball:before{content:"\f436"}.fa-box:before{content:"\f466"}.fa-box-open:before{content:"\f49e"}.fa-box-tissue:before{content:"\f95b"}.fa-boxes:before{content:"\f468"}.fa-braille:before{content:"\f2a1"}.fa-brain:before{content:"\f5dc"}.fa-bread-slice:before{content:"\f7ec"}.fa-briefcase:before{content:"\f0b1"}.fa-briefcase-medical:before{content:"\f469"}.fa-broadcast-tower:before{content:"\f519"}.fa-broom:before{content:"\f51a"}.fa-brush:before{content:"\f55d"}.fa-btc:before{content:"\f15a"}.fa-buffer:before{content:"\f837"}.fa-bug:before{content:"\f188"}.fa-building:before{content:"\f1ad"}.fa-bullhorn:before{content:"\f0a1"}.fa-bullseye:before{content:"\f140"}.fa-burn:before{content:"\f46a"}.fa-buromobelexperte:before{content:"\f37f"}.fa-bus:before{content:"\f207"}.fa-bus-alt:before{content:"\f55e"}.fa-business-time:before{content:"\f64a"}.fa-buy-n-large:before{content:"\f8a6"}.fa-buysellads:before{content:"\f20d"}.fa-calculator:before{content:"\f1ec"}.fa-calendar:before{content:"\f133"}.fa-calendar-alt:before{content:"\f073"}.fa-calendar-check:before{content:"\f274"}.fa-calendar-day:before{content:"\f783"}.fa-calendar-minus:before{content:"\f272"}.fa-calendar-plus:before{content:"\f271"}.fa-calendar-times:before{content:"\f273"}.fa-calendar-week:before{content:"\f784"}.fa-camera:before{content:"\f030"}.fa-camera-retro:before{content:"\f083"}.fa-campground:before{content:"\f6bb"}.fa-canadian-maple-leaf:before{content:"\f785"}.fa-candy-cane:before{content:"\f786"}.fa-cannabis:before{content:"\f55f"}.fa-capsules:before{content:"\f46b"}.fa-car:before{content:"\f1b9"}.fa-car-alt:before{content:"\f5de"}.fa-car-battery:before{content:"\f5df"}.fa-car-crash:before{content:"\f5e1"}.fa-car-side:before{content:"\f5e4"}.fa-caravan:before{content:"\f8ff"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-caret-square-down:before{content:"\f150"}.fa-caret-square-left:before{content:"\f191"}.fa-caret-square-right:before{content:"\f152"}.fa-caret-square-up:before{content:"\f151"}.fa-caret-up:before{content:"\f0d8"}.fa-carrot:before{content:"\f787"}.fa-cart-arrow-down:before{content:"\f218"}.fa-cart-plus:before{content:"\f217"}.fa-cash-register:before{content:"\f788"}.fa-cat:before{content:"\f6be"}.fa-cc-amazon-pay:before{content:"\f42d"}.fa-cc-amex:before{content:"\f1f3"}.fa-cc-apple-pay:before{content:"\f416"}.fa-cc-diners-club:before{content:"\f24c"}.fa-cc-discover:before{content:"\f1f2"}.fa-cc-jcb:before{content:"\f24b"}.fa-cc-mastercard:before{content:"\f1f1"}.fa-cc-paypal:before{content:"\f1f4"}.fa-cc-stripe:before{content:"\f1f5"}.fa-cc-visa:before{content:"\f1f0"}.fa-centercode:before{content:"\f380"}.fa-centos:before{content:"\f789"}.fa-certificate:before{content:"\f0a3"}.fa-chair:before{content:"\f6c0"}.fa-chalkboard:before{content:"\f51b"}.fa-chalkboard-teacher:before{content:"\f51c"}.fa-charging-station:before{content:"\f5e7"}.fa-chart-area:before{content:"\f1fe"}.fa-chart-bar:before{content:"\f080"}.fa-chart-line:before{content:"\f201"}.fa-chart-pie:before{content:"\f200"}.fa-check:before{content:"\f00c"}.fa-check-circle:before{content:"\f058"}.fa-check-double:before{content:"\f560"}.fa-check-square:before{content:"\f14a"}.fa-cheese:before{content:"\f7ef"}.fa-chess:before{content:"\f439"}.fa-chess-bishop:before{content:"\f43a"}.fa-chess-board:before{content:"\f43c"}.fa-chess-king:before{content:"\f43f"}.fa-chess-knight:before{content:"\f441"}.fa-chess-pawn:before{content:"\f443"}.fa-chess-queen:before{content:"\f445"}.fa-chess-rook:before{content:"\f447"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-down:before{content:"\f078"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-chevron-up:before{content:"\f077"}.fa-child:before{content:"\f1ae"}.fa-chrome:before{content:"\f268"}.fa-chromecast:before{content:"\f838"}.fa-church:before{content:"\f51d"}.fa-circle:before{content:"\f111"}.fa-circle-notch:before{content:"\f1ce"}.fa-city:before{content:"\f64f"}.fa-clinic-medical:before{content:"\f7f2"}.fa-clipboard:before{content:"\f328"}.fa-clipboard-check:before{content:"\f46c"}.fa-clipboard-list:before{content:"\f46d"}.fa-clock:before{content:"\f017"}.fa-clone:before{content:"\f24d"}.fa-closed-captioning:before{content:"\f20a"}.fa-cloud:before{content:"\f0c2"}.fa-cloud-download-alt:before{content:"\f381"}.fa-cloud-meatball:before{content:"\f73b"}.fa-cloud-moon:before{content:"\f6c3"}.fa-cloud-moon-rain:before{content:"\f73c"}.fa-cloud-rain:before{content:"\f73d"}.fa-cloud-showers-heavy:before{content:"\f740"}.fa-cloud-sun:before{content:"\f6c4"}.fa-cloud-sun-rain:before{content:"\f743"}.fa-cloud-upload-alt:before{content:"\f382"}.fa-cloudscale:before{content:"\f383"}.fa-cloudsmith:before{content:"\f384"}.fa-cloudversify:before{content:"\f385"}.fa-cocktail:before{content:"\f561"}.fa-code:before{content:"\f121"}.fa-code-branch:before{content:"\f126"}.fa-codepen:before{content:"\f1cb"}.fa-codiepie:before{content:"\f284"}.fa-coffee:before{content:"\f0f4"}.fa-cog:before{content:"\f013"}.fa-cogs:before{content:"\f085"}.fa-coins:before{content:"\f51e"}.fa-columns:before{content:"\f0db"}.fa-comment:before{content:"\f075"}.fa-comment-alt:before{content:"\f27a"}.fa-comment-dollar:before{content:"\f651"}.fa-comment-dots:before{content:"\f4ad"}.fa-comment-medical:before{content:"\f7f5"}.fa-comment-slash:before{content:"\f4b3"}.fa-comments:before{content:"\f086"}.fa-comments-dollar:before{content:"\f653"}.fa-compact-disc:before{content:"\f51f"}.fa-compass:before{content:"\f14e"}.fa-compress:before{content:"\f066"}.fa-compress-alt:before{content:"\f422"}.fa-compress-arrows-alt:before{content:"\f78c"}.fa-concierge-bell:before{content:"\f562"}.fa-confluence:before{content:"\f78d"}.fa-connectdevelop:before{content:"\f20e"}.fa-contao:before{content:"\f26d"}.fa-cookie:before{content:"\f563"}.fa-cookie-bite:before{content:"\f564"}.fa-copy:before{content:"\f0c5"}.fa-copyright:before{content:"\f1f9"}.fa-cotton-bureau:before{content:"\f89e"}.fa-couch:before{content:"\f4b8"}.fa-cpanel:before{content:"\f388"}.fa-creative-commons:before{content:"\f25e"}.fa-creative-commons-by:before{content:"\f4e7"}.fa-creative-commons-nc:before{content:"\f4e8"}.fa-creative-commons-nc-eu:before{content:"\f4e9"}.fa-creative-commons-nc-jp:before{content:"\f4ea"}.fa-creative-commons-nd:before{content:"\f4eb"}.fa-creative-commons-pd:before{content:"\f4ec"}.fa-creative-commons-pd-alt:before{content:"\f4ed"}.fa-creative-commons-remix:before{content:"\f4ee"}.fa-creative-commons-sa:before{content:"\f4ef"}.fa-creative-commons-sampling:before{content:"\f4f0"}.fa-creative-commons-sampling-plus:before{content:"\f4f1"}.fa-creative-commons-share:before{content:"\f4f2"}.fa-creative-commons-zero:before{content:"\f4f3"}.fa-credit-card:before{content:"\f09d"}.fa-critical-role:before{content:"\f6c9"}.fa-crop:before{content:"\f125"}.fa-crop-alt:before{content:"\f565"}.fa-cross:before{content:"\f654"}.fa-crosshairs:before{content:"\f05b"}.fa-crow:before{content:"\f520"}.fa-crown:before{content:"\f521"}.fa-crutch:before{content:"\f7f7"}.fa-css3:before{content:"\f13c"}.fa-css3-alt:before{content:"\f38b"}.fa-cube:before{content:"\f1b2"}.fa-cubes:before{content:"\f1b3"}.fa-cut:before{content:"\f0c4"}.fa-cuttlefish:before{content:"\f38c"}.fa-d-and-d:before{content:"\f38d"}.fa-d-and-d-beyond:before{content:"\f6ca"}.fa-dailymotion:before{content:"\f952"}.fa-dashcube:before{content:"\f210"}.fa-database:before{content:"\f1c0"}.fa-deaf:before{content:"\f2a4"}.fa-deezer:before{content:"\f977"}.fa-delicious:before{content:"\f1a5"}.fa-democrat:before{content:"\f747"}.fa-deploydog:before{content:"\f38e"}.fa-deskpro:before{content:"\f38f"}.fa-desktop:before{content:"\f108"}.fa-dev:before{content:"\f6cc"}.fa-deviantart:before{content:"\f1bd"}.fa-dharmachakra:before{content:"\f655"}.fa-dhl:before{content:"\f790"}.fa-diagnoses:before{content:"\f470"}.fa-diaspora:before{content:"\f791"}.fa-dice:before{content:"\f522"}.fa-dice-d20:before{content:"\f6cf"}.fa-dice-d6:before{content:"\f6d1"}.fa-dice-five:before{content:"\f523"}.fa-dice-four:before{content:"\f524"}.fa-dice-one:before{content:"\f525"}.fa-dice-six:before{content:"\f526"}.fa-dice-three:before{content:"\f527"}.fa-dice-two:before{content:"\f528"}.fa-digg:before{content:"\f1a6"}.fa-digital-ocean:before{content:"\f391"}.fa-digital-tachograph:before{content:"\f566"}.fa-directions:before{content:"\f5eb"}.fa-discord:before{content:"\f392"}.fa-discourse:before{content:"\f393"}.fa-disease:before{content:"\f7fa"}.fa-divide:before{content:"\f529"}.fa-dizzy:before{content:"\f567"}.fa-dna:before{content:"\f471"}.fa-dochub:before{content:"\f394"}.fa-docker:before{content:"\f395"}.fa-dog:before{content:"\f6d3"}.fa-dollar-sign:before{content:"\f155"}.fa-dolly:before{content:"\f472"}.fa-dolly-flatbed:before{content:"\f474"}.fa-donate:before{content:"\f4b9"}.fa-door-closed:before{content:"\f52a"}.fa-door-open:before{content:"\f52b"}.fa-dot-circle:before{content:"\f192"}.fa-dove:before{content:"\f4ba"}.fa-download:before{content:"\f019"}.fa-draft2digital:before{content:"\f396"}.fa-drafting-compass:before{content:"\f568"}.fa-dragon:before{content:"\f6d5"}.fa-draw-polygon:before{content:"\f5ee"}.fa-dribbble:before{content:"\f17d"}.fa-dribbble-square:before{content:"\f397"}.fa-dropbox:before{content:"\f16b"}.fa-drum:before{content:"\f569"}.fa-drum-steelpan:before{content:"\f56a"}.fa-drumstick-bite:before{content:"\f6d7"}.fa-drupal:before{content:"\f1a9"}.fa-dumbbell:before{content:"\f44b"}.fa-dumpster:before{content:"\f793"}.fa-dumpster-fire:before{content:"\f794"}.fa-dungeon:before{content:"\f6d9"}.fa-dyalog:before{content:"\f399"}.fa-earlybirds:before{content:"\f39a"}.fa-ebay:before{content:"\f4f4"}.fa-edge:before{content:"\f282"}.fa-edge-legacy:before{content:"\f978"}.fa-edit:before{content:"\f044"}.fa-egg:before{content:"\f7fb"}.fa-eject:before{content:"\f052"}.fa-elementor:before{content:"\f430"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-ello:before{content:"\f5f1"}.fa-ember:before{content:"\f423"}.fa-empire:before{content:"\f1d1"}.fa-envelope:before{content:"\f0e0"}.fa-envelope-open:before{content:"\f2b6"}.fa-envelope-open-text:before{content:"\f658"}.fa-envelope-square:before{content:"\f199"}.fa-envira:before{content:"\f299"}.fa-equals:before{content:"\f52c"}.fa-eraser:before{content:"\f12d"}.fa-erlang:before{content:"\f39d"}.fa-ethereum:before{content:"\f42e"}.fa-ethernet:before{content:"\f796"}.fa-etsy:before{content:"\f2d7"}.fa-euro-sign:before{content:"\f153"}.fa-evernote:before{content:"\f839"}.fa-exchange-alt:before{content:"\f362"}.fa-exclamation:before{content:"\f12a"}.fa-exclamation-circle:before{content:"\f06a"}.fa-exclamation-triangle:before{content:"\f071"}.fa-expand:before{content:"\f065"}.fa-expand-alt:before{content:"\f424"}.fa-expand-arrows-alt:before{content:"\f31e"}.fa-expeditedssl:before{content:"\f23e"}.fa-external-link-alt:before{content:"\f35d"}.fa-external-link-square-alt:before{content:"\f360"}.fa-eye:before{content:"\f06e"}.fa-eye-dropper:before{content:"\f1fb"}.fa-eye-slash:before{content:"\f070"}.fa-facebook:before{content:"\f09a"}.fa-facebook-f:before{content:"\f39e"}.fa-facebook-messenger:before{content:"\f39f"}.fa-facebook-square:before{content:"\f082"}.fa-fan:before{content:"\f863"}.fa-fantasy-flight-games:before{content:"\f6dc"}.fa-fast-backward:before{content:"\f049"}.fa-fast-forward:before{content:"\f050"}.fa-faucet:before{content:"\f905"}.fa-fax:before{content:"\f1ac"}.fa-feather:before{content:"\f52d"}.fa-feather-alt:before{content:"\f56b"}.fa-fedex:before{content:"\f797"}.fa-fedora:before{content:"\f798"}.fa-female:before{content:"\f182"}.fa-fighter-jet:before{content:"\f0fb"}.fa-figma:before{content:"\f799"}.fa-file:before{content:"\f15b"}.fa-file-alt:before{content:"\f15c"}.fa-file-archive:before{content:"\f1c6"}.fa-file-audio:before{content:"\f1c7"}.fa-file-code:before{content:"\f1c9"}.fa-file-contract:before{content:"\f56c"}.fa-file-csv:before{content:"\f6dd"}.fa-file-download:before{content:"\f56d"}.fa-file-excel:before{content:"\f1c3"}.fa-file-export:before{content:"\f56e"}.fa-file-image:before{content:"\f1c5"}.fa-file-import:before{content:"\f56f"}.fa-file-invoice:before{content:"\f570"}.fa-file-invoice-dollar:before{content:"\f571"}.fa-file-medical:before{content:"\f477"}.fa-file-medical-alt:before{content:"\f478"}.fa-file-pdf:before{content:"\f1c1"}.fa-file-powerpoint:before{content:"\f1c4"}.fa-file-prescription:before{content:"\f572"}.fa-file-signature:before{content:"\f573"}.fa-file-upload:before{content:"\f574"}.fa-file-video:before{content:"\f1c8"}.fa-file-word:before{content:"\f1c2"}.fa-fill:before{content:"\f575"}.fa-fill-drip:before{content:"\f576"}.fa-film:before{content:"\f008"}.fa-filter:before{content:"\f0b0"}.fa-fingerprint:before{content:"\f577"}.fa-fire:before{content:"\f06d"}.fa-fire-alt:before{content:"\f7e4"}.fa-fire-extinguisher:before{content:"\f134"}.fa-firefox:before{content:"\f269"}.fa-firefox-browser:before{content:"\f907"}.fa-first-aid:before{content:"\f479"}.fa-first-order:before{content:"\f2b0"}.fa-first-order-alt:before{content:"\f50a"}.fa-firstdraft:before{content:"\f3a1"}.fa-fish:before{content:"\f578"}.fa-fist-raised:before{content:"\f6de"}.fa-flag:before{content:"\f024"}.fa-flag-checkered:before{content:"\f11e"}.fa-flag-usa:before{content:"\f74d"}.fa-flask:before{content:"\f0c3"}.fa-flickr:before{content:"\f16e"}.fa-flipboard:before{content:"\f44d"}.fa-flushed:before{content:"\f579"}.fa-fly:before{content:"\f417"}.fa-folder:before{content:"\f07b"}.fa-folder-minus:before{content:"\f65d"}.fa-folder-open:before{content:"\f07c"}.fa-folder-plus:before{content:"\f65e"}.fa-font:before{content:"\f031"}.fa-font-awesome:before{content:"\f2b4"}.fa-font-awesome-alt:before{content:"\f35c"}.fa-font-awesome-flag:before{content:"\f425"}.fa-font-awesome-logo-full:before{content:"\f4e6"}.fa-fonticons:before{content:"\f280"}.fa-fonticons-fi:before{content:"\f3a2"}.fa-football-ball:before{content:"\f44e"}.fa-fort-awesome:before{content:"\f286"}.fa-fort-awesome-alt:before{content:"\f3a3"}.fa-forumbee:before{content:"\f211"}.fa-forward:before{content:"\f04e"}.fa-foursquare:before{content:"\f180"}.fa-free-code-camp:before{content:"\f2c5"}.fa-freebsd:before{content:"\f3a4"}.fa-frog:before{content:"\f52e"}.fa-frown:before{content:"\f119"}.fa-frown-open:before{content:"\f57a"}.fa-fulcrum:before{content:"\f50b"}.fa-funnel-dollar:before{content:"\f662"}.fa-futbol:before{content:"\f1e3"}.fa-galactic-republic:before{content:"\f50c"}.fa-galactic-senate:before{content:"\f50d"}.fa-gamepad:before{content:"\f11b"}.fa-gas-pump:before{content:"\f52f"}.fa-gavel:before{content:"\f0e3"}.fa-gem:before{content:"\f3a5"}.fa-genderless:before{content:"\f22d"}.fa-get-pocket:before{content:"\f265"}.fa-gg:before{content:"\f260"}.fa-gg-circle:before{content:"\f261"}.fa-ghost:before{content:"\f6e2"}.fa-gift:before{content:"\f06b"}.fa-gifts:before{content:"\f79c"}.fa-git:before{content:"\f1d3"}.fa-git-alt:before{content:"\f841"}.fa-git-square:before{content:"\f1d2"}.fa-github:before{content:"\f09b"}.fa-github-alt:before{content:"\f113"}.fa-github-square:before{content:"\f092"}.fa-gitkraken:before{content:"\f3a6"}.fa-gitlab:before{content:"\f296"}.fa-gitter:before{content:"\f426"}.fa-glass-cheers:before{content:"\f79f"}.fa-glass-martini:before{content:"\f000"}.fa-glass-martini-alt:before{content:"\f57b"}.fa-glass-whiskey:before{content:"\f7a0"}.fa-glasses:before{content:"\f530"}.fa-glide:before{content:"\f2a5"}.fa-glide-g:before{content:"\f2a6"}.fa-globe:before{content:"\f0ac"}.fa-globe-africa:before{content:"\f57c"}.fa-globe-americas:before{content:"\f57d"}.fa-globe-asia:before{content:"\f57e"}.fa-globe-europe:before{content:"\f7a2"}.fa-gofore:before{content:"\f3a7"}.fa-golf-ball:before{content:"\f450"}.fa-goodreads:before{content:"\f3a8"}.fa-goodreads-g:before{content:"\f3a9"}.fa-google:before{content:"\f1a0"}.fa-google-drive:before{content:"\f3aa"}.fa-google-pay:before{content:"\f979"}.fa-google-play:before{content:"\f3ab"}.fa-google-plus:before{content:"\f2b3"}.fa-google-plus-g:before{content:"\f0d5"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-wallet:before{content:"\f1ee"}.fa-gopuram:before{content:"\f664"}.fa-graduation-cap:before{content:"\f19d"}.fa-gratipay:before{content:"\f184"}.fa-grav:before{content:"\f2d6"}.fa-greater-than:before{content:"\f531"}.fa-greater-than-equal:before{content:"\f532"}.fa-grimace:before{content:"\f57f"}.fa-grin:before{content:"\f580"}.fa-grin-alt:before{content:"\f581"}.fa-grin-beam:before{content:"\f582"}.fa-grin-beam-sweat:before{content:"\f583"}.fa-grin-hearts:before{content:"\f584"}.fa-grin-squint:before{content:"\f585"}.fa-grin-squint-tears:before{content:"\f586"}.fa-grin-stars:before{content:"\f587"}.fa-grin-tears:before{content:"\f588"}.fa-grin-tongue:before{content:"\f589"}.fa-grin-tongue-squint:before{content:"\f58a"}.fa-grin-tongue-wink:before{content:"\f58b"}.fa-grin-wink:before{content:"\f58c"}.fa-grip-horizontal:before{content:"\f58d"}.fa-grip-lines:before{content:"\f7a4"}.fa-grip-lines-vertical:before{content:"\f7a5"}.fa-grip-vertical:before{content:"\f58e"}.fa-gripfire:before{content:"\f3ac"}.fa-grunt:before{content:"\f3ad"}.fa-guitar:before{content:"\f7a6"}.fa-gulp:before{content:"\f3ae"}.fa-h-square:before{content:"\f0fd"}.fa-hacker-news:before{content:"\f1d4"}.fa-hacker-news-square:before{content:"\f3af"}.fa-hackerrank:before{content:"\f5f7"}.fa-hamburger:before{content:"\f805"}.fa-hammer:before{content:"\f6e3"}.fa-hamsa:before{content:"\f665"}.fa-hand-holding:before{content:"\f4bd"}.fa-hand-holding-heart:before{content:"\f4be"}.fa-hand-holding-medical:before{content:"\f95c"}.fa-hand-holding-usd:before{content:"\f4c0"}.fa-hand-holding-water:before{content:"\f4c1"}.fa-hand-lizard:before{content:"\f258"}.fa-hand-middle-finger:before{content:"\f806"}.fa-hand-paper:before{content:"\f256"}.fa-hand-peace:before{content:"\f25b"}.fa-hand-point-down:before{content:"\f0a7"}.fa-hand-point-left:before{content:"\f0a5"}.fa-hand-point-right:before{content:"\f0a4"}.fa-hand-point-up:before{content:"\f0a6"}.fa-hand-pointer:before{content:"\f25a"}.fa-hand-rock:before{content:"\f255"}.fa-hand-scissors:before{content:"\f257"}.fa-hand-sparkles:before{content:"\f95d"}.fa-hand-spock:before{content:"\f259"}.fa-hands:before{content:"\f4c2"}.fa-hands-helping:before{content:"\f4c4"}.fa-hands-wash:before{content:"\f95e"}.fa-handshake:before{content:"\f2b5"}.fa-handshake-alt-slash:before{content:"\f95f"}.fa-handshake-slash:before{content:"\f960"}.fa-hanukiah:before{content:"\f6e6"}.fa-hard-hat:before{content:"\f807"}.fa-hashtag:before{content:"\f292"}.fa-hat-cowboy:before{content:"\f8c0"}.fa-hat-cowboy-side:before{content:"\f8c1"}.fa-hat-wizard:before{content:"\f6e8"}.fa-hdd:before{content:"\f0a0"}.fa-head-side-cough:before{content:"\f961"}.fa-head-side-cough-slash:before{content:"\f962"}.fa-head-side-mask:before{content:"\f963"}.fa-head-side-virus:before{content:"\f964"}.fa-heading:before{content:"\f1dc"}.fa-headphones:before{content:"\f025"}.fa-headphones-alt:before{content:"\f58f"}.fa-headset:before{content:"\f590"}.fa-heart:before{content:"\f004"}.fa-heart-broken:before{content:"\f7a9"}.fa-heartbeat:before{content:"\f21e"}.fa-helicopter:before{content:"\f533"}.fa-highlighter:before{content:"\f591"}.fa-hiking:before{content:"\f6ec"}.fa-hippo:before{content:"\f6ed"}.fa-hips:before{content:"\f452"}.fa-hire-a-helper:before{content:"\f3b0"}.fa-history:before{content:"\f1da"}.fa-hockey-puck:before{content:"\f453"}.fa-holly-berry:before{content:"\f7aa"}.fa-home:before{content:"\f015"}.fa-hooli:before{content:"\f427"}.fa-hornbill:before{content:"\f592"}.fa-horse:before{content:"\f6f0"}.fa-horse-head:before{content:"\f7ab"}.fa-hospital:before{content:"\f0f8"}.fa-hospital-alt:before{content:"\f47d"}.fa-hospital-symbol:before{content:"\f47e"}.fa-hospital-user:before{content:"\f80d"}.fa-hot-tub:before{content:"\f593"}.fa-hotdog:before{content:"\f80f"}.fa-hotel:before{content:"\f594"}.fa-hotjar:before{content:"\f3b1"}.fa-hourglass:before{content:"\f254"}.fa-hourglass-end:before{content:"\f253"}.fa-hourglass-half:before{content:"\f252"}.fa-hourglass-start:before{content:"\f251"}.fa-house-damage:before{content:"\f6f1"}.fa-house-user:before{content:"\f965"}.fa-houzz:before{content:"\f27c"}.fa-hryvnia:before{content:"\f6f2"}.fa-html5:before{content:"\f13b"}.fa-hubspot:before{content:"\f3b2"}.fa-i-cursor:before{content:"\f246"}.fa-ice-cream:before{content:"\f810"}.fa-icicles:before{content:"\f7ad"}.fa-icons:before{content:"\f86d"}.fa-id-badge:before{content:"\f2c1"}.fa-id-card:before{content:"\f2c2"}.fa-id-card-alt:before{content:"\f47f"}.fa-ideal:before{content:"\f913"}.fa-igloo:before{content:"\f7ae"}.fa-image:before{content:"\f03e"}.fa-images:before{content:"\f302"}.fa-imdb:before{content:"\f2d8"}.fa-inbox:before{content:"\f01c"}.fa-indent:before{content:"\f03c"}.fa-industry:before{content:"\f275"}.fa-infinity:before{content:"\f534"}.fa-info:before{content:"\f129"}.fa-info-circle:before{content:"\f05a"}.fa-instagram:before{content:"\f16d"}.fa-instagram-square:before{content:"\f955"}.fa-intercom:before{content:"\f7af"}.fa-internet-explorer:before{content:"\f26b"}.fa-invision:before{content:"\f7b0"}.fa-ioxhost:before{content:"\f208"}.fa-italic:before{content:"\f033"}.fa-itch-io:before{content:"\f83a"}.fa-itunes:before{content:"\f3b4"}.fa-itunes-note:before{content:"\f3b5"}.fa-java:before{content:"\f4e4"}.fa-jedi:before{content:"\f669"}.fa-jedi-order:before{content:"\f50e"}.fa-jenkins:before{content:"\f3b6"}.fa-jira:before{content:"\f7b1"}.fa-joget:before{content:"\f3b7"}.fa-joint:before{content:"\f595"}.fa-joomla:before{content:"\f1aa"}.fa-journal-whills:before{content:"\f66a"}.fa-js:before{content:"\f3b8"}.fa-js-square:before{content:"\f3b9"}.fa-jsfiddle:before{content:"\f1cc"}.fa-kaaba:before{content:"\f66b"}.fa-kaggle:before{content:"\f5fa"}.fa-key:before{content:"\f084"}.fa-keybase:before{content:"\f4f5"}.fa-keyboard:before{content:"\f11c"}.fa-keycdn:before{content:"\f3ba"}.fa-khanda:before{content:"\f66d"}.fa-kickstarter:before{content:"\f3bb"}.fa-kickstarter-k:before{content:"\f3bc"}.fa-kiss:before{content:"\f596"}.fa-kiss-beam:before{content:"\f597"}.fa-kiss-wink-heart:before{content:"\f598"}.fa-kiwi-bird:before{content:"\f535"}.fa-korvue:before{content:"\f42f"}.fa-landmark:before{content:"\f66f"}.fa-language:before{content:"\f1ab"}.fa-laptop:before{content:"\f109"}.fa-laptop-code:before{content:"\f5fc"}.fa-laptop-house:before{content:"\f966"}.fa-laptop-medical:before{content:"\f812"}.fa-laravel:before{content:"\f3bd"}.fa-lastfm:before{content:"\f202"}.fa-lastfm-square:before{content:"\f203"}.fa-laugh:before{content:"\f599"}.fa-laugh-beam:before{content:"\f59a"}.fa-laugh-squint:before{content:"\f59b"}.fa-laugh-wink:before{content:"\f59c"}.fa-layer-group:before{content:"\f5fd"}.fa-leaf:before{content:"\f06c"}.fa-leanpub:before{content:"\f212"}.fa-lemon:before{content:"\f094"}.fa-less:before{content:"\f41d"}.fa-less-than:before{content:"\f536"}.fa-less-than-equal:before{content:"\f537"}.fa-level-down-alt:before{content:"\f3be"}.fa-level-up-alt:before{content:"\f3bf"}.fa-life-ring:before{content:"\f1cd"}.fa-lightbulb:before{content:"\f0eb"}.fa-line:before{content:"\f3c0"}.fa-link:before{content:"\f0c1"}.fa-linkedin:before{content:"\f08c"}.fa-linkedin-in:before{content:"\f0e1"}.fa-linode:before{content:"\f2b8"}.fa-linux:before{content:"\f17c"}.fa-lira-sign:before{content:"\f195"}.fa-list:before{content:"\f03a"}.fa-list-alt:before{content:"\f022"}.fa-list-ol:before{content:"\f0cb"}.fa-list-ul:before{content:"\f0ca"}.fa-location-arrow:before{content:"\f124"}.fa-lock:before{content:"\f023"}.fa-lock-open:before{content:"\f3c1"}.fa-long-arrow-alt-down:before{content:"\f309"}.fa-long-arrow-alt-left:before{content:"\f30a"}.fa-long-arrow-alt-right:before{content:"\f30b"}.fa-long-arrow-alt-up:before{content:"\f30c"}.fa-low-vision:before{content:"\f2a8"}.fa-luggage-cart:before{content:"\f59d"}.fa-lungs:before{content:"\f604"}.fa-lungs-virus:before{content:"\f967"}.fa-lyft:before{content:"\f3c3"}.fa-magento:before{content:"\f3c4"}.fa-magic:before{content:"\f0d0"}.fa-magnet:before{content:"\f076"}.fa-mail-bulk:before{content:"\f674"}.fa-mailchimp:before{content:"\f59e"}.fa-male:before{content:"\f183"}.fa-mandalorian:before{content:"\f50f"}.fa-map:before{content:"\f279"}.fa-map-marked:before{content:"\f59f"}.fa-map-marked-alt:before{content:"\f5a0"}.fa-map-marker:before{content:"\f041"}.fa-map-marker-alt:before{content:"\f3c5"}.fa-map-pin:before{content:"\f276"}.fa-map-signs:before{content:"\f277"}.fa-markdown:before{content:"\f60f"}.fa-marker:before{content:"\f5a1"}.fa-mars:before{content:"\f222"}.fa-mars-double:before{content:"\f227"}.fa-mars-stroke:before{content:"\f229"}.fa-mars-stroke-h:before{content:"\f22b"}.fa-mars-stroke-v:before{content:"\f22a"}.fa-mask:before{content:"\f6fa"}.fa-mastodon:before{content:"\f4f6"}.fa-maxcdn:before{content:"\f136"}.fa-mdb:before{content:"\f8ca"}.fa-medal:before{content:"\f5a2"}.fa-medapps:before{content:"\f3c6"}.fa-medium:before{content:"\f23a"}.fa-medium-m:before{content:"\f3c7"}.fa-medkit:before{content:"\f0fa"}.fa-medrt:before{content:"\f3c8"}.fa-meetup:before{content:"\f2e0"}.fa-megaport:before{content:"\f5a3"}.fa-meh:before{content:"\f11a"}.fa-meh-blank:before{content:"\f5a4"}.fa-meh-rolling-eyes:before{content:"\f5a5"}.fa-memory:before{content:"\f538"}.fa-mendeley:before{content:"\f7b3"}.fa-menorah:before{content:"\f676"}.fa-mercury:before{content:"\f223"}.fa-meteor:before{content:"\f753"}.fa-microblog:before{content:"\f91a"}.fa-microchip:before{content:"\f2db"}.fa-microphone:before{content:"\f130"}.fa-microphone-alt:before{content:"\f3c9"}.fa-microphone-alt-slash:before{content:"\f539"}.fa-microphone-slash:before{content:"\f131"}.fa-microscope:before{content:"\f610"}.fa-microsoft:before{content:"\f3ca"}.fa-minus:before{content:"\f068"}.fa-minus-circle:before{content:"\f056"}.fa-minus-square:before{content:"\f146"}.fa-mitten:before{content:"\f7b5"}.fa-mix:before{content:"\f3cb"}.fa-mixcloud:before{content:"\f289"}.fa-mixer:before{content:"\f956"}.fa-mizuni:before{content:"\f3cc"}.fa-mobile:before{content:"\f10b"}.fa-mobile-alt:before{content:"\f3cd"}.fa-modx:before{content:"\f285"}.fa-monero:before{content:"\f3d0"}.fa-money-bill:before{content:"\f0d6"}.fa-money-bill-alt:before{content:"\f3d1"}.fa-money-bill-wave:before{content:"\f53a"}.fa-money-bill-wave-alt:before{content:"\f53b"}.fa-money-check:before{content:"\f53c"}.fa-money-check-alt:before{content:"\f53d"}.fa-monument:before{content:"\f5a6"}.fa-moon:before{content:"\f186"}.fa-mortar-pestle:before{content:"\f5a7"}.fa-mosque:before{content:"\f678"}.fa-motorcycle:before{content:"\f21c"}.fa-mountain:before{content:"\f6fc"}.fa-mouse:before{content:"\f8cc"}.fa-mouse-pointer:before{content:"\f245"}.fa-mug-hot:before{content:"\f7b6"}.fa-music:before{content:"\f001"}.fa-napster:before{content:"\f3d2"}.fa-neos:before{content:"\f612"}.fa-network-wired:before{content:"\f6ff"}.fa-neuter:before{content:"\f22c"}.fa-newspaper:before{content:"\f1ea"}.fa-nimblr:before{content:"\f5a8"}.fa-node:before{content:"\f419"}.fa-node-js:before{content:"\f3d3"}.fa-not-equal:before{content:"\f53e"}.fa-notes-medical:before{content:"\f481"}.fa-npm:before{content:"\f3d4"}.fa-ns8:before{content:"\f3d5"}.fa-nutritionix:before{content:"\f3d6"}.fa-object-group:before{content:"\f247"}.fa-object-ungroup:before{content:"\f248"}.fa-odnoklassniki:before{content:"\f263"}.fa-odnoklassniki-square:before{content:"\f264"}.fa-oil-can:before{content:"\f613"}.fa-old-republic:before{content:"\f510"}.fa-om:before{content:"\f679"}.fa-opencart:before{content:"\f23d"}.fa-openid:before{content:"\f19b"}.fa-opera:before{content:"\f26a"}.fa-optin-monster:before{content:"\f23c"}.fa-orcid:before{content:"\f8d2"}.fa-osi:before{content:"\f41a"}.fa-otter:before{content:"\f700"}.fa-outdent:before{content:"\f03b"}.fa-page4:before{content:"\f3d7"}.fa-pagelines:before{content:"\f18c"}.fa-pager:before{content:"\f815"}.fa-paint-brush:before{content:"\f1fc"}.fa-paint-roller:before{content:"\f5aa"}.fa-palette:before{content:"\f53f"}.fa-palfed:before{content:"\f3d8"}.fa-pallet:before{content:"\f482"}.fa-paper-plane:before{content:"\f1d8"}.fa-paperclip:before{content:"\f0c6"}.fa-parachute-box:before{content:"\f4cd"}.fa-paragraph:before{content:"\f1dd"}.fa-parking:before{content:"\f540"}.fa-passport:before{content:"\f5ab"}.fa-pastafarianism:before{content:"\f67b"}.fa-paste:before{content:"\f0ea"}.fa-patreon:before{content:"\f3d9"}.fa-pause:before{content:"\f04c"}.fa-pause-circle:before{content:"\f28b"}.fa-paw:before{content:"\f1b0"}.fa-paypal:before{content:"\f1ed"}.fa-peace:before{content:"\f67c"}.fa-pen:before{content:"\f304"}.fa-pen-alt:before{content:"\f305"}.fa-pen-fancy:before{content:"\f5ac"}.fa-pen-nib:before{content:"\f5ad"}.fa-pen-square:before{content:"\f14b"}.fa-pencil-alt:before{content:"\f303"}.fa-pencil-ruler:before{content:"\f5ae"}.fa-penny-arcade:before{content:"\f704"}.fa-people-arrows:before{content:"\f968"}.fa-people-carry:before{content:"\f4ce"}.fa-pepper-hot:before{content:"\f816"}.fa-percent:before{content:"\f295"}.fa-percentage:before{content:"\f541"}.fa-periscope:before{content:"\f3da"}.fa-person-booth:before{content:"\f756"}.fa-phabricator:before{content:"\f3db"}.fa-phoenix-framework:before{content:"\f3dc"}.fa-phoenix-squadron:before{content:"\f511"}.fa-phone:before{content:"\f095"}.fa-phone-alt:before{content:"\f879"}.fa-phone-slash:before{content:"\f3dd"}.fa-phone-square:before{content:"\f098"}.fa-phone-square-alt:before{content:"\f87b"}.fa-phone-volume:before{content:"\f2a0"}.fa-photo-video:before{content:"\f87c"}.fa-php:before{content:"\f457"}.fa-pied-piper:before{content:"\f2ae"}.fa-pied-piper-alt:before{content:"\f1a8"}.fa-pied-piper-hat:before{content:"\f4e5"}.fa-pied-piper-pp:before{content:"\f1a7"}.fa-pied-piper-square:before{content:"\f91e"}.fa-piggy-bank:before{content:"\f4d3"}.fa-pills:before{content:"\f484"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-p:before{content:"\f231"}.fa-pinterest-square:before{content:"\f0d3"}.fa-pizza-slice:before{content:"\f818"}.fa-place-of-worship:before{content:"\f67f"}.fa-plane:before{content:"\f072"}.fa-plane-arrival:before{content:"\f5af"}.fa-plane-departure:before{content:"\f5b0"}.fa-plane-slash:before{content:"\f969"}.fa-play:before{content:"\f04b"}.fa-play-circle:before{content:"\f144"}.fa-playstation:before{content:"\f3df"}.fa-plug:before{content:"\f1e6"}.fa-plus:before{content:"\f067"}.fa-plus-circle:before{content:"\f055"}.fa-plus-square:before{content:"\f0fe"}.fa-podcast:before{content:"\f2ce"}.fa-poll:before{content:"\f681"}.fa-poll-h:before{content:"\f682"}.fa-poo:before{content:"\f2fe"}.fa-poo-storm:before{content:"\f75a"}.fa-poop:before{content:"\f619"}.fa-portrait:before{content:"\f3e0"}.fa-pound-sign:before{content:"\f154"}.fa-power-off:before{content:"\f011"}.fa-pray:before{content:"\f683"}.fa-praying-hands:before{content:"\f684"}.fa-prescription:before{content:"\f5b1"}.fa-prescription-bottle:before{content:"\f485"}.fa-prescription-bottle-alt:before{content:"\f486"}.fa-print:before{content:"\f02f"}.fa-procedures:before{content:"\f487"}.fa-product-hunt:before{content:"\f288"}.fa-project-diagram:before{content:"\f542"}.fa-pump-medical:before{content:"\f96a"}.fa-pump-soap:before{content:"\f96b"}.fa-pushed:before{content:"\f3e1"}.fa-puzzle-piece:before{content:"\f12e"}.fa-python:before{content:"\f3e2"}.fa-qq:before{content:"\f1d6"}.fa-qrcode:before{content:"\f029"}.fa-question:before{content:"\f128"}.fa-question-circle:before{content:"\f059"}.fa-quidditch:before{content:"\f458"}.fa-quinscape:before{content:"\f459"}.fa-quora:before{content:"\f2c4"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-quran:before{content:"\f687"}.fa-r-project:before{content:"\f4f7"}.fa-radiation:before{content:"\f7b9"}.fa-radiation-alt:before{content:"\f7ba"}.fa-rainbow:before{content:"\f75b"}.fa-random:before{content:"\f074"}.fa-raspberry-pi:before{content:"\f7bb"}.fa-ravelry:before{content:"\f2d9"}.fa-react:before{content:"\f41b"}.fa-reacteurope:before{content:"\f75d"}.fa-readme:before{content:"\f4d5"}.fa-rebel:before{content:"\f1d0"}.fa-receipt:before{content:"\f543"}.fa-record-vinyl:before{content:"\f8d9"}.fa-recycle:before{content:"\f1b8"}.fa-red-river:before{content:"\f3e3"}.fa-reddit:before{content:"\f1a1"}.fa-reddit-alien:before{content:"\f281"}.fa-reddit-square:before{content:"\f1a2"}.fa-redhat:before{content:"\f7bc"}.fa-redo:before{content:"\f01e"}.fa-redo-alt:before{content:"\f2f9"}.fa-registered:before{content:"\f25d"}.fa-remove-format:before{content:"\f87d"}.fa-renren:before{content:"\f18b"}.fa-reply:before{content:"\f3e5"}.fa-reply-all:before{content:"\f122"}.fa-replyd:before{content:"\f3e6"}.fa-republican:before{content:"\f75e"}.fa-researchgate:before{content:"\f4f8"}.fa-resolving:before{content:"\f3e7"}.fa-restroom:before{content:"\f7bd"}.fa-retweet:before{content:"\f079"}.fa-rev:before{content:"\f5b2"}.fa-ribbon:before{content:"\f4d6"}.fa-ring:before{content:"\f70b"}.fa-road:before{content:"\f018"}.fa-robot:before{content:"\f544"}.fa-rocket:before{content:"\f135"}.fa-rocketchat:before{content:"\f3e8"}.fa-rockrms:before{content:"\f3e9"}.fa-route:before{content:"\f4d7"}.fa-rss:before{content:"\f09e"}.fa-rss-square:before{content:"\f143"}.fa-ruble-sign:before{content:"\f158"}.fa-ruler:before{content:"\f545"}.fa-ruler-combined:before{content:"\f546"}.fa-ruler-horizontal:before{content:"\f547"}.fa-ruler-vertical:before{content:"\f548"}.fa-running:before{content:"\f70c"}.fa-rupee-sign:before{content:"\f156"}.fa-rust:before{content:"\f97a"}.fa-sad-cry:before{content:"\f5b3"}.fa-sad-tear:before{content:"\f5b4"}.fa-safari:before{content:"\f267"}.fa-salesforce:before{content:"\f83b"}.fa-sass:before{content:"\f41e"}.fa-satellite:before{content:"\f7bf"}.fa-satellite-dish:before{content:"\f7c0"}.fa-save:before{content:"\f0c7"}.fa-schlix:before{content:"\f3ea"}.fa-school:before{content:"\f549"}.fa-screwdriver:before{content:"\f54a"}.fa-scribd:before{content:"\f28a"}.fa-scroll:before{content:"\f70e"}.fa-sd-card:before{content:"\f7c2"}.fa-search:before{content:"\f002"}.fa-search-dollar:before{content:"\f688"}.fa-search-location:before{content:"\f689"}.fa-search-minus:before{content:"\f010"}.fa-search-plus:before{content:"\f00e"}.fa-searchengin:before{content:"\f3eb"}.fa-seedling:before{content:"\f4d8"}.fa-sellcast:before{content:"\f2da"}.fa-sellsy:before{content:"\f213"}.fa-server:before{content:"\f233"}.fa-servicestack:before{content:"\f3ec"}.fa-shapes:before{content:"\f61f"}.fa-share:before{content:"\f064"}.fa-share-alt:before{content:"\f1e0"}.fa-share-alt-square:before{content:"\f1e1"}.fa-share-square:before{content:"\f14d"}.fa-shekel-sign:before{content:"\f20b"}.fa-shield-alt:before{content:"\f3ed"}.fa-shield-virus:before{content:"\f96c"}.fa-ship:before{content:"\f21a"}.fa-shipping-fast:before{content:"\f48b"}.fa-shirtsinbulk:before{content:"\f214"}.fa-shoe-prints:before{content:"\f54b"}.fa-shopify:before{content:"\f957"}.fa-shopping-bag:before{content:"\f290"}.fa-shopping-basket:before{content:"\f291"}.fa-shopping-cart:before{content:"\f07a"}.fa-shopware:before{content:"\f5b5"}.fa-shower:before{content:"\f2cc"}.fa-shuttle-van:before{content:"\f5b6"}.fa-sign:before{content:"\f4d9"}.fa-sign-in-alt:before{content:"\f2f6"}.fa-sign-language:before{content:"\f2a7"}.fa-sign-out-alt:before{content:"\f2f5"}.fa-signal:before{content:"\f012"}.fa-signature:before{content:"\f5b7"}.fa-sim-card:before{content:"\f7c4"}.fa-simplybuilt:before{content:"\f215"}.fa-sink:before{content:"\f96d"}.fa-sistrix:before{content:"\f3ee"}.fa-sitemap:before{content:"\f0e8"}.fa-sith:before{content:"\f512"}.fa-skating:before{content:"\f7c5"}.fa-sketch:before{content:"\f7c6"}.fa-skiing:before{content:"\f7c9"}.fa-skiing-nordic:before{content:"\f7ca"}.fa-skull:before{content:"\f54c"}.fa-skull-crossbones:before{content:"\f714"}.fa-skyatlas:before{content:"\f216"}.fa-skype:before{content:"\f17e"}.fa-slack:before{content:"\f198"}.fa-slack-hash:before{content:"\f3ef"}.fa-slash:before{content:"\f715"}.fa-sleigh:before{content:"\f7cc"}.fa-sliders-h:before{content:"\f1de"}.fa-slideshare:before{content:"\f1e7"}.fa-smile:before{content:"\f118"}.fa-smile-beam:before{content:"\f5b8"}.fa-smile-wink:before{content:"\f4da"}.fa-smog:before{content:"\f75f"}.fa-smoking:before{content:"\f48d"}.fa-smoking-ban:before{content:"\f54d"}.fa-sms:before{content:"\f7cd"}.fa-snapchat:before{content:"\f2ab"}.fa-snapchat-ghost:before{content:"\f2ac"}.fa-snapchat-square:before{content:"\f2ad"}.fa-snowboarding:before{content:"\f7ce"}.fa-snowflake:before{content:"\f2dc"}.fa-snowman:before{content:"\f7d0"}.fa-snowplow:before{content:"\f7d2"}.fa-soap:before{content:"\f96e"}.fa-socks:before{content:"\f696"}.fa-solar-panel:before{content:"\f5ba"}.fa-sort:before{content:"\f0dc"}.fa-sort-alpha-down:before{content:"\f15d"}.fa-sort-alpha-down-alt:before{content:"\f881"}.fa-sort-alpha-up:before{content:"\f15e"}.fa-sort-alpha-up-alt:before{content:"\f882"}.fa-sort-amount-down:before{content:"\f160"}.fa-sort-amount-down-alt:before{content:"\f884"}.fa-sort-amount-up:before{content:"\f161"}.fa-sort-amount-up-alt:before{content:"\f885"}.fa-sort-down:before{content:"\f0dd"}.fa-sort-numeric-down:before{content:"\f162"}.fa-sort-numeric-down-alt:before{content:"\f886"}.fa-sort-numeric-up:before{content:"\f163"}.fa-sort-numeric-up-alt:before{content:"\f887"}.fa-sort-up:before{content:"\f0de"}.fa-soundcloud:before{content:"\f1be"}.fa-sourcetree:before{content:"\f7d3"}.fa-spa:before{content:"\f5bb"}.fa-space-shuttle:before{content:"\f197"}.fa-speakap:before{content:"\f3f3"}.fa-speaker-deck:before{content:"\f83c"}.fa-spell-check:before{content:"\f891"}.fa-spider:before{content:"\f717"}.fa-spinner:before{content:"\f110"}.fa-splotch:before{content:"\f5bc"}.fa-spotify:before{content:"\f1bc"}.fa-spray-can:before{content:"\f5bd"}.fa-square:before{content:"\f0c8"}.fa-square-full:before{content:"\f45c"}.fa-square-root-alt:before{content:"\f698"}.fa-squarespace:before{content:"\f5be"}.fa-stack-exchange:before{content:"\f18d"}.fa-stack-overflow:before{content:"\f16c"}.fa-stackpath:before{content:"\f842"}.fa-stamp:before{content:"\f5bf"}.fa-star:before{content:"\f005"}.fa-star-and-crescent:before{content:"\f699"}.fa-star-half:before{content:"\f089"}.fa-star-half-alt:before{content:"\f5c0"}.fa-star-of-david:before{content:"\f69a"}.fa-star-of-life:before{content:"\f621"}.fa-staylinked:before{content:"\f3f5"}.fa-steam:before{content:"\f1b6"}.fa-steam-square:before{content:"\f1b7"}.fa-steam-symbol:before{content:"\f3f6"}.fa-step-backward:before{content:"\f048"}.fa-step-forward:before{content:"\ (…)
/plugin/aichat/vendor/mehrab-wj/tiktoken-php/data/
H A Dvocab.bpe
/plugin/xlsx2dw/packages/exceljs/
H A Dexceljs.js41795 var symbol = Symbol();
41797 A[symbol] = 7;
43224 setInternalState(symbol, {
43230 return symbol;
43370 var symbol = $Symbol(string);
43371 StringToSymbolRegistry[string] = symbol;
43372 SymbolToStringRegistry[symbol] = string;
43373 return symbol;
43421 var symbol = $Symbol();
43423 return $stringify([symbol]) != '[null]'
[all …]
/plugin/xlsx2dw/packages/xlsx/
H A Dxlsx.mjs22034 case 'currency-symbol': // <number:currency-symbol> 16.29.9
22330 case 'currency-symbol': // <number:currency-symbol>
22774 … == "$") { payload += '<number:currency-symbol number:language="en" number:country="US">$</number:…
/plugin/combo/vendor/antlr/antlr4-php-runtime/src/Atn/Transitions/
H A DActionTransition.php33 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
H A DAtomTransition.php27 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
29 return $this->label === $symbol;
H A DEpsilonTransition.php34 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
H A DNotSetTransition.php9 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
11 return $symbol >= $minVocabSymbol && $symbol <= $maxVocabSymbol
12 && !parent::matches($symbol, $minVocabSymbol, $maxVocabSymbol);
H A DPrecedencePredicateTransition.php22 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
H A DPredicateTransition.php34 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
H A DSetTransition.php31 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
33 return $this->set->contains($symbol);
H A DRangeTransition.php32 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
34 return $symbol >= $this->from && $symbol <= $this->to;
H A DRuleTransition.php39 public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool argument
H A DTransition.php54 * consume an input symbol; otherwise, `false` if traversing
55 * this transition consumes (matches) an input symbol.
68 abstract public function matches(int $symbol, int $minVocabSymbol, int $maxVocabSymbol) : bool; argument
/plugin/combo/vendor/antlr/antlr4-php-runtime/src/Tree/
H A DTerminalNodeImpl.php14 public $symbol; variable in Antlr\\Antlr4\\Runtime\\Tree\\TerminalNodeImpl
19 public function __construct(Token $symbol) argument
21 $this->symbol = $symbol;
31 return $this->symbol;
49 return $this->symbol;
54 if ($this->symbol === null) {
58 $tokenIndex = $this->symbol->getTokenIndex();
75 return $this->symbol->getText();
88 if ($this->symbol
[all...]
/plugin/combo/resources/library/combo/
H A Dcombo.min.js.map1 {"mappings":"6DAAA,SAASA,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQC,EAAKC,GACpE,IACE,IAAIC,EAAOP,EAAIK,GAAKC,GAChBE,EAAQD,EAAKC,MACjB,MAAOC,GAEP,YADAP,EAAOO,GAILF,EAAKG,KACPT,EAAQO,GAERG,QAAQV,QAAQO,GAAOI,KAAKT,EAAOC,GAIxB,SAAAS,EAA2BC,GACxC,OAAO,WACL,IAAIC,EAAOC,KACTC,EAAOC,UACT,OAAO,IAAIP,SAAQ,SAAUV,EAASC,GACpC,IAAIF,EAAMc,EAAGK,MAAMJ,EAAME,GAEzB,SAASd,EAAMK,GACbT,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,OAAQI,GAGlE,SAASJ,EAAOgB,GACdrB,EAAmBC,EAAKC,EAASC,EAAQC,EAAOC,EAAQ,QAASgB,GAGnEjB,OAAMkB,OC/BG,SAAAC,EAAyBC,EAAUC,GAChD,KAAMD,aAAoBC,GACxB,MAAM,IAAIC,UAAU,qCCFxB,SAASC,EAAkBC,EAAQC,GACjC,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CACrC,IAAIE,EAAaH,EAAMC,GACvBE,EAAWC,WAAaD,EAAWC,aAAc,EACjDD,EAAWE,cAAe,EACtB,UAAWF,IAAYA,EAAWG,UAAW,GACjDC,OAAOC,eAAeT,EAAQI,EAAW1B,IAAK0B,IAInC,SAAAM,EAAsBb,EAAac,EAAYC,GAG5D,OAFID,GAAYZ,EAAkBF,EAAYgB,UAAWF,GACrDC,GAAab,EAAkBF,EAAae,GACzCf,ECbM,SAAAiB,EAAyBC,EAAKrC,EAAKG,GAYhD,OAXIH,KAAOqC,EACTP,OAAOC,eAAeM,EAAKrC,EAAK,CAC9BG,MAAOA,EACPwB,YAAY,EACZC,cAAc,EACdC,UAAU,IAGZQ,EAAIrC,GAAOG,EAGNkC,ECVM,ICDXC,EDCiBC,EAAN,iCAAMA,gCAEVvC,IAAA,kBAAP,SAAiBG,GACb,MAAqB,kBAAVA,EACAA,EAEO,SAAVA,QAND,GCGMqC,EAAN,iCAAMA,2BASjBxC,IAAA,cAAA,SAAMG,GACFsC,QAAQrC,MAAMD,QARXH,IAAA,kBAAP,WAII,YAHYgB,IAATsB,IACCA,EAAS,IAAIE,GAEVF,QANA,GCsBXI,EAAS,SAAAC,UAASC,OAAOC,gBAAgB,IAAIC,WAAWH,KAgBxDI,EAAiB,SAACC,EAAUC,UAfb,SAACD,EAAUC,EAAMC,GAClC,IAAIC,GAAQ,GAAMC,KAAKC,IAAIL,EAASvB,OAAS,GAAK2B,KAAKE,KAAQ,EAC3DC,KAAW,IAAMJ,EAAOF,EAAQD,EAASvB,QAC7C,OAAO,WAEL,IADA,IAAI+B,EAAK,KAIP,IAFA,IAAIb,EAAQO,EAAUK,GAClBE,EAAIF,EACDE,KAEL,IADAD,GAAMR,EAASL,EAAMc,GAAKN,IAAS,IAC5B1B,SAAWwB,EAAM,OAAOO,GAKEE,CAAaV,EAAUC,EAAMP,ICzCjDiB,EAAN,iCAAMA,gCAEV3D,IAAA,iBAAP,SAAgB4D,GAKZ,OAAOA,EACFC,WACAC,QAAO,eAAiB,QAG1B9D,IAAA,uBAAP,WAOI,OADe+C,EAAe,6BAA8B,GACrDgB,MAGJ/D,IAAA,mBAAP,SAAkBgE,GAEd,IADA,IAAIC,EAAW,GACNzC,EAAI,EAAGA,EAAIwC,EAAKvC,OAAQD,IAAK,CAClC,IAAI0C,EAAU,KAAuBC,OAAnBH,EAAKI,WAAW5C,GAAG,KACrCyC,EAASI,KAAKH,GAElB,OAAOD,EAASK,KAAK,UA5Bd,GCQMC,EAAN,iCAAMA,EAwBLC,aArBZpC,EAAAzB,KAAA,MAAM,WACNyB,EAAAzB,KAAA,WAAU,GACVyB,EAAAzB,KAAA,SAAS,IACTyB,EAAAzB,KAAA,gBAAgB,IAChByB,EAAAzB,KAAA,YAAW,GAaXyB,EAAAzB,KAAA,WAAW,IAKPA,KAAK6D,KAAOA,eAGhBxE,IAAA,uBAAA,WACI,QAAsBgB,IAAlBL,KAAK8D,eAAoDzD,IAA1BL,KAAK+D,iBACpC,OAAO/D,KAAKgE,WAEhB,IAAIC,EAAMjE,KAAK8D,SACf,YAAsBzD,IAAlBL,KAAK8D,UACLG,EAAM,IACE,+EAELT,OAD6DxD,KAAK+D,iBAAiB,qBACpEP,OAAfS,EAAI,aAAwFT,OAA7ExD,KAAK+D,iBAAiB,yDAAuEP,OAAhBxD,KAAKgE,WAAW,kBAGvG,YAA0BR,OAAfS,EAAI,aAA2GT,OAAhGxD,KAAK+D,iBAAiB,4EAA0FP,OAAhBxD,KAAKgE,WAAW,WAS1J3E,IAAA,gBAAA,SAAQ6E,GAEJ,OADAlE,KAAKkE,KAAOA,EACLlE,QASXX,IAAA,iBAAA,SAAS8E,GAEL,OADAnE,KAAKmE,MAAQA,EACNnE,QASXX,IAAA,eAAA,SAAO4E,GAEH,OADAjE,KAAKiE,IAAMA,EACJjE,QASXX,IAAA,iBAAA,SAASG,EAAO4E,GAGZ,OAFApE,KAAKqE,OAAOX,KAAKlE,GACjBQ,KAAKsE,cAAcZ,KAAKU,GACjBpE,QAIXX,IAAA,gBAAA,WACI,OAAOW,KAAKkE,QAGhB7E,IAAA,iBAAA,WACI,YAAmBgB,IAAfL,KAAKmE,MACEnE,KAAKuE,UACPC,MAAK,SACLC,KAAI,SAAAC,UAAQA,EAAKC,OAAO,GAAGC,cAAgBF,EAAKG,MAAM,MACtDlB,KAAK,KAEP3D,KAAKmE,SAGhB9E,IAAA,eAAA,WACI,OAAOW,KAAKiE,OAGhB5E,IAAA,gBAAA,WACI,OAAOW,KAAK6D,QAGhBxE,IAAA,uBAAA,WACI,OAAOW,KAAK8E,eAGhBzF,IAAA,eAAA,WACI,OAAOW,KAAK+E,OA2FhB1F,IAAA,oBAAA,SAAY2F,GAER,OADAhF,KAAKgF,SAAWA,EACThF,QAGXX,IAAA,kBAAA,SAAU4F,GAEN,OADAjF,KAAKiF,OAASA,EACPjF,QAYXX,IAAA,kBAAA,WACI,OAAOW,KAAKkF,WAGhB7F,IAAA,eAAA,SAAOG,GAEH,OADAQ,KAAK+E,IAAMvF,EACJQ,QAOXX,IAAA,mBAAA,SAAWG,GAEP,OADAQ,KAAKkF,QAAUtD,EAAQuD,UAAU3F,GAC1BQ,QAGXX,IAAA,uBAAA,SAAeG,GAEX,OADAQ,KAAK8E,YAActF,EACZQ,QAGXX,IAAA,wBAAA,WACI,OAAOW,KAAKsE,cAAc,MAG9BjF,IAAA,iBAAA,WACI,OAAOW,KAAKqE,OAAO,MAGvBhF,IAAA,wBAAA,WACI,OAAOW,KAAKoF,gBAGhB/F,IAAA,wBAAA,SAAgBG,GACZ,GAAK6F,MAAMC,QAAQ9F,GAKnB,OADAQ,KAAKoF,aAAe5F,EACbQ,KAJH8B,QAAQrC,MAAO,2CAAgD+D,OAANhE,EAAM,yBAYvEH,IAAA,wBAAA,SAAgBkG,GAEZ,OADAvF,KAAKuF,MAAQA,EACNvF,QAGXX,IAAA,wBAAA,WACI,YAAmBgB,IAAfL,KAAKuF,YAAuClF,IAAhBL,KAAKiF,OAC1B,GAAKjF,KAAKiF,OAAOO,cAAc1E,OAEnCd,KAAKuF,SAGhBlG,IAAA,kBAAA,WACI,OAAOW,KAAKqE,UAGhBhF,IAAA,yBAAA,WACI,OAAOW,KAAKsE,iBAWhBjF,IAAA,oBAAA,WACI,OAAO8B,OAAOkD,OAAOrE,KAAKyF,aAG9BpG,IAAA,iBAAA,SAASqG,GAEL,OADA1F,KAAKyF,SAASC,EAAMnB,WAAamB,EAC1B1F,QAGXX,IAAA,oBAAA,SAAYsG,EAAOC,GACf,IACIC,EADA1B,EAAQnE,KAAK8F,iBAUjB,OAPID,EADA7F,KAAK+F,YAAcnC,EAAcoC,QACpB,mBAEA,sBAES,IAAhBJ,IACNC,EAAa,GAAiBrC,OAAfoC,EAAY,KAAcpC,OAAXqC,IAE1B,eAA+BrC,OAAjBmC,EAAM,aAA0BnC,OAAfqC,EAAW,MAAUrC,OAANW,EAAM,eAGhE9E,IAAA,sBAAA,SAAcwD,OAKNoD,EACAC,EANU1G,EAAAU,UAAAY,OAAA,QAAA,IAAAZ,UAAA,GAAYA,UAAA,GAAJ,KAAMkE,EAAAlE,UAAAY,OAAA,QAAA,IAAAZ,UAAA,GAAmBA,UAAA,GAAJ,KAEvCiG,EAAenG,KAAK+F,UACpBb,EAAUlF,KAAKoG,YACfhB,EAAepF,KAAKqG,kBAOxB,QAAqBhG,IAAjB+E,EAA4B,CAM5Bc,EAAc,SACd,IAAII,EAAmB,QACFjG,IAAjB+D,IACAkC,EAAoB,KAAiB9C,OAAbY,EAAa,MAGzC,IAAIY,EAAW,GACXhF,KAAKuG,gBACLvB,EAAW,YAGfkB,EAAe,2CAAoE1C,OAA1BxD,KAAKgE,WAAW,YAAiCR,OAAvBxD,KAAKuE,UAAU,UAAef,OAAPX,EAAG,MAAaW,OAATwB,EAAS,KAC1H,IAAIwB,EAAW,GACD,OAAVhH,IACAgH,EAAW,YAEfN,GAAgB,oBAAsC1C,OAAnBgD,EAAS,YAA2BhD,OAAjB8C,EAAiB,iBAClEG,GAAe,EAAfC,GAAe,EAAfC,OAAetG,MAApB,IAAA,IAAKuG,EAAAC,EAAmBzB,EAAY0B,OAAAC,cAA/BN,GAAAG,EAAAC,EAAeG,QAAAtH,MAAf+G,GAAe,EAAkB,CAAjC,IAAIQ,EAAJL,EAAepH,MAEZgH,EADAS,IAAgBzH,EACL,WAEA,GAEf0G,GAAgB,kBAAiC1C,OAAhByD,EAAY,MAAgBzD,OAAZgD,EAAS,KAAehD,OAAZyD,EAAY,uBANxEP,GAAe,EAAfC,EAAevG,cAAfqG,GAAe,MAAfI,EAAeK,QAAfL,EAAeK,oBAAfR,QAAAC,GASL,OADAT,GAAgB,YAUhB,IAAIiB,EAAoB,WACpBjC,IACAiC,EAAoB,WAA0B3D,OAAhBxD,KAAKgE,aAGjC,MAAAI,IAGE+C,EAFwB,iBAAjB/C,GAA6BA,aAAwBgD,OAEzCpE,EAAKqE,WAAWjD,GAEhBA,GAG3B,IAGIkD,EAHAC,EAAmB,gBAAgC/D,OAAjB2D,EAAiB,KAEnDK,EAAY,GAEZ3D,EAAO7D,KAAKuE,UAMZ0B,OADY5F,IAAZ6E,IAAqC,IAAZA,EACd,WAEA,GAOf,IAAIuC,EAAU,QACVC,EAAY,eACZC,EAAU,GAIVC,EAAO,EAKX,OAAQzB,GACJ,KAAKvC,EAAciE,UACfP,EAAY,iBACE,OAAV9H,GACAA,EAAQA,EAAMqF,MAAM,EAAG,IACvB2C,EAAa,UAAehE,OAANhE,EAAM,MAEvB0F,GAA4B,OAAjBd,IACZA,EAAeA,EAAaS,MAAM,EAAG,IACrC2C,EAAa,UAAsBhE,OAAbY,EAAa,MAG3CmD,EAAkB,GAElB,MACJ,KAAK3D,EAAckE,UACfL,EAAU,WACI,OAAVjI,IACAA,EAAQwD,EAAKqE,WAAW7H,GACxBgI,EAAa,GAAQhE,OAANhE,IAEnB,MACJ,KAAKoE,EAAcmE,KACfN,EAAU,WACI,OAAVjI,IACoB,iBAAVA,IACNA,EAAQuI,KAAKC,UAAUxI,EAAO,KAAM,IAExCA,EAAQwD,EAAKqE,WAAW7H,GACxBgI,EAAa,GAAQhE,OAANhE,IAEnBoI,EAAO,GACP,MACJ,KAAKhE,EAAcoC,QACfsB,EAAY,WACZI,EAAY,mBACS,OAAjBtD,GACAoD,EAAa,UAAsBhE,OAAbY,EAAa,KAC/B5E,IAAU4E,IACVuD,EAAU,YAGA,OAAVnI,IACAmI,EAAU,WAIlBJ,EAAkB,GAClB,MACJ,QACID,EAAY,OACN,MAAA9H,IACFgI,EAAa,UAAehE,OAANhE,EAAM,MAIxC,GACS,aADDiI,EAEAvB,EAAe,iBAA6B1C,OAAbX,EAAG,YAA0BW,OAAhBK,EAAK,aAA+BL,OAApBkE,EAAU,YAAmBlE,OAAToE,EAAK,MAAuBpE,OAAnB+D,EAAgB,KAAe/D,OAAZyC,EAAS,KAAazC,OAAVgE,EAAU,oBAIlItB,EAAe,gBAAmC1C,OAApB8D,EAAU,YAA0B9D,OAAhBK,EAAK,aAA6BL,OAAlBkE,EAAU,UAAelE,OAAPX,EAAG,MAAuBW,OAAnB+D,EAAgB,KAAgB/D,OAAbgE,EAAU,KAAchE,OAAXmE,EAAQ,KAAYnE,OAATyC,EAAS,MAIvJ,OAAOC,KAUf7G,IAAA,2BAAA,WACI,MAAO,CACHwE,KAAQ7D,KAAKuE,UACbJ,MAASnE,KAAKgE,WACdE,KAAQlE,KAAK+F,UACbjB,YAAe9E,KAAK+D,iBACpBgB,IAAO/E,KAAKiI,SACZ/C,QAAWlF,KAAKoG,YAChB5G,MAASQ,KAAKkI,WACdC,QAAWnI,KAAKoI,kBAChBnE,IAAOjE,KAAK8D,aAIpBzE,IAAA,oBAAA,WACI,OAAOW,KAAKgF,cAnYT3F,IAAA,uBAAP,SAAsBgJ,OAAMpD,EAAA/E,UAAAY,OAAA,QAAA,IAAAZ,UAAA,GAAaA,UAAA,GAAJ,KAC5BmI,EAAKC,eAAe,SACrBzG,EAAO0G,YAAY9I,MAAM,gEAE7B,IAMID,EACAgJ,EAPA3E,EAAOwE,EAAW,KAClBI,EAAgB7E,EAAc8E,eAAe7E,GAOjD,IAAK,IAAI8E,KANK,MAAV1D,GACAwD,EAAcG,UAAU3D,GAKPoD,EACjB,GAAKA,EAAKC,eAAeK,GAAzB,CAGA,IAAIE,EAAYR,EAAKM,GACrB,OAAQA,GACJ,IAAK,OACD,SACJ,IAAK,QACDF,EAAcK,SAASD,GACvB,SACJ,IAAK,MACDJ,EAAcM,OAAOF,GACrB,SACJ,IAAK,OACDJ,EAAcO,QAAQH,GACtB,SACJ,IAAK,UACDJ,EAAcQ,WAAWJ,GACzB,SACJ,IAAK,cACDJ,EAAcS,eAAeL,GAC7B,SACJ,IAAK,MACDJ,EAAcU,OAAON,GACrB,SACJ,IAAK,QACDrJ,EAAQqJ,EACR,SACJ,IAAK,UACDL,EAAeK,EACf,SACJ,IAAK,gBACDJ,EAAcW,gBAAgBP,GAC9B,SACJ,IAAK,WACDJ,EAAcY,YAAYR,GAC1B,SACJ,IAAK,QACDJ,EAAca,gBAAgBT,GAC9B,SACJ,IAAK,WACD,IAAIU,EAAeV,EACnB,IAAK,IAAIW,KAAiBD,EACtB,GAAKA,EAAajB,eAAekB,GAAjC,CAGA,IAAI9D,EAAQ9B,EAAc6F,eAAeF,EAAaC,GAAgBf,GACtEA,EAAciB,SAAShE,GAE3B,SACJ,QACI7D,EAAO0G,YAAY9I,MAAO,iBAA0C+D,OAA1BmF,EAAS,mBAAsBnF,OAALK,EAAK,kBAerF,OAZKwB,MAAMC,QAAQ9F,GAGfA,EAAMmK,SAAQ,SAACC,EAASC,GACpB,IAAIC,EAAsBtB,EAAaqB,QACXxJ,IAAxByJ,EACArB,EAAcsB,SAASH,EAASE,GAEhCrB,EAAcsB,SAASH,MAP/BnB,EAAcsB,SAASvK,EAAOgJ,GAW3BC,KAkBJpJ,IAAA,uBAAP,SAAsBwE,GAClB,OAAO,IAAID,EAAcC,SA/NlB,GAeXpC,EAfiBmC,EAeV,eAAe,WACtBnC,EAhBiBmC,EAgBV,YAAY,YACnBnC,EAjBiBmC,EAiBV,YAAY,aACnBnC,EAlBiBmC,EAkBV,UAAU,WAGjBnC,EArBiBmC,EAqBV,OAAO,QC5BH,IAAMoG,EAAN,iCAAMA,EAGLnG,aACR7D,KAAK6D,KAAOA,eAGhBxE,IAAA,gBAAA,WACI,OAAOW,KAAK6D,QAGhBxE,IAAA,iBAAA,SAASkG,GACLvF,KAAKuF,MAAQA,KAMjBlG,IAAA,iBAAA,WACI,OAAOW,KAAKuF,SAiChBlG,IAAA,iBAAA,SAAS8E,GAEL,OADAnE,KAAKmE,MAAQA,EACNnE,QAGXX,IAAA,iBAAA,WACI,YAAgBgB,IAAbL,KAAKmE,MACGnE,KAAK6D,KAET7D,KAAKmE,SAGhB9E,IAAA,sBAAA,SAAckG,GAEV,OADAvF,KAAKiK,WAAa1E,EACXvF,QAGXX,IAAA,sBAAA,SAAckG,GAEV,OADAvF,KAAKkK,WAAa3E,EACXvF,QAGXX,IAAA,sBAAA,WACI,YAAqBgB,IAAlBL,KAAKkK,WACG,EAEJlK,KAAKkK,cAGhB7K,IAAA,sBAAA,WACI,YAAqBgB,IAAlBL,KAAKiK,WACG,GAAKjK,KAAKmK,gBAEdnK,KAAKiK,gBA/DT5K,IAAA,uBAAP,SAAsBgJ,GACbA,EAAKC,eAAe,SACrBzG,EAAO0G,YAAY9I,MAAM,uFAE7B,IAAIoE,EAAOwE,EAAW,KAClBtD,EAAM,IAAIiF,EAAYnG,GAC1B,IAAK,IAAI8E,KAAYN,EACjB,GAAKA,EAAKC,eAAeK,GAAzB,CAGA,IAAIE,EAAYR,EAAKM,GACrB,OAAQA,GACJ,IAAK,OACD,SACJ,IAAK,QACD5D,EAAI+D,SAASD,GACb,SACJ,IAAK,cACD9D,EAAIqF,cAAcvB,GAClB,SACJ,IAAK,cACD9D,EAAIsF,cAAcxB,GAClB,SACJ,QACIhH,EAAO0G,YAAY9I,MAAO,iBAAyC+D,OAAzBmF,EAAS,kBAAqBnF,OAALK,EAAK,kBAGpF,OAAOkB,KAuCJ1F,IAAA,uBAAP,SAAsBwE,GAClB,OAAO,IAAImG,EAAYnG,SAzFhB,GCQMyG,ECXlB,oBDWkBA,EAOLzH,GAER,aAPJpB,EAAAzB,KAAA,aAAa,IACbyB,EAAAzB,KAAA,OAAO,IACPyB,EAAAzB,KAAA,QAAQ,GAKM,MAAN6C,EACA,MAAM,IAAI0H,MAAM,yCAEpBvK,KAAK6D,KAAOhB,eAMhBxD,IAAA,iBAAA,WACI,OAAOW,KAAKmE,SAGhB9E,IAAA,eAAA,WACI,OAAOW,KAAKiE,OAGhB5E,IAAA,cAAA,WACI,OAAOW,KAAK6D,QAQhBxE,IAAA,wBAAA,WACI,OAAOW,KAAKuF,SAGhBlG,IAAA,sBAAA,WACI,OAAO,GAAKW,KAAKwK,qBAkErBnL,IAAA,qBAAA,SAAaoL,GAMT,OALAzK,KAAK0K,WAAWD,EAAUlG,WAAakG,EAElCzK,KAAK2K,KAAKrC,eAAemC,EAAUxC,YACpCjI,KAAK2K,KAAKF,EAAUxC,UAAY+B,EAAYtB,eAAe+B,EAAUxC,WAElEjI,QAOXX,IAAA,kBAAA,WACI,OAAO8B,OAAOkD,OAAOrE,KAAK0K,eAO9BrL,IAAA,gBAAA,WACI,OAAO8B,OAAOkD,OAAOrE,KAAK2K,SAG9BtL,IAAA,eAAA,SAAOuL,GACH5K,KAAK2K,KAAKC,EAAYrG,WAAaqG,KAGvCvL,IAAA,gBAAA,WACI,OAAOW,KAAK6K,WAGhBxL,IAAA,wBAAA,SAAgByL,GACZ,OAAO9K,KAAK+K,YAAYC,QAAO,SAAAC,UAAKA,EAAEhD,WAAa6C,QAGvDzL,IAAA,sBAAA,WAEI,IAOI6L,EACAC,EARAC,EAASpL,KAAK6K,QAMdQ,EAAc,iCAOlBrL,KAAKsL,aAAe,SAAUvG,GAC1B,IAAIwG,EAASvI,EAAKwI,SAASzG,EAAIR,WAC/B,MAAQ,GAAqBf,OAAnB4H,EAAO,cAAmB5H,OAAP+H,IAMjCvL,KAAKyL,YAAc,SAAoC1G,GACnD,IAAIwG,EAASvI,EAAKwI,SAASzG,EAAIR,WAC/B,MAAQ,GAAoBf,OAAlB4H,EAAO,aAAkB5H,OAAP+H,IAEhCvL,KAAK0L,aAAe,SAAU7I,GAC1B,IAAI0I,EAASvI,EAAKwI,SAAS3I,GAC3B,MAAQ,GAAoBW,OAAlB4H,EAAO,aAAkB5H,OAAP+H,IAEhC,IAAII,EAAW3L,KAAK4L,UAChBC,EAAaF,EAAS,GACrBlF,GAAO,EAAPC,GAAO,EAAPC,OAAOtG,MAAZ,IAAA,IAAKuG,EAAAC,EAAW8E,EAAQ7E,OAAAC,cAAnBN,GAAAG,EAAAC,EAAOG,QAAAtH,MAAP+G,GAAO,EAAc,CAArB,IAAIqF,EAAJlF,EAAOpH,MACJ2B,OAAO4K,GAAGD,EAAKD,IACfX,EAAc,SACdC,EAAe,SAEfD,EAAc,GACdC,EAAe,SAEnB,IAAIa,EAAWF,EAAI9H,WACfiI,EAAWjM,KAAKsL,aAAaQ,GAC7BI,EAAWlM,KAAKyL,YAAYK,GAChCT,GAAgB,yDAIlB7H,OADY0H,EAAY,eAIX1H,OAHb0I,EAAS,+DAII1I,OADA2H,EAAa,4BAGX3H,OAFFyI,EAAS,0DAEOzI,OAAdyI,EAAS,OAAczI,OAATwI,EAAS,oCArBnCtF,GAAO,EAAPC,EAAOvG,cAAPqG,GAAO,MAAPI,EAAOK,QAAPL,EAAOK,oBAAPR,QAAAC,GAyBL0E,GAAe,QAMf,IACIc,EACAC,EAFAC,EAAc,4BAGdC,EAAmB,EAClBC,GAAO,EAAPC,GAAO,EAAPC,OAAOpM,MAAZ,IAAA,IAAKqM,EAAAC,EAAWhB,EAAQ7E,OAAAC,cAAnBwF,GAAAG,EAAAC,EAAO3F,QAAAtH,MAAP6M,GAAO,EAAc,CAArB,IAAIK,EAAJF,EAAOlN,MACJqN,EAAY7M,KAAKsL,aAAasB,GAC9BE,EAAW9M,KAAKyL,YAAYmB,GAMhCP,GAAgB,wBAA2C7I,OAJvD0H,EADA0B,IAAQf,EACM,SAEA,GAEiC,UAAuDrI,OAA/CqJ,EAAU,uCAA8CrJ,OAATsJ,EAAS,MACnHV,EAAcQ,EAAIzC,gBAClBgC,EAAeS,EAAIG,gBAEnB,IAAIC,EAAehN,KAAKiN,gBAAgBL,EAAIrI,WAM5C,GAA4B,IAAxByI,EAAalM,OAAc,CAC3B,IAAI2J,EAAYuC,EAAa,GAC7B,GAAuC,IAAnCvC,EAAUjF,cAAc1E,OAAc,CACtCwL,IACA,IAAIY,EAAYlN,KAAK0L,aAAaY,GAC9Ba,EAAY1C,EAAU2C,YAAYF,GAClC1N,EAAQiL,EAAUvC,WAClB9D,EAAeqG,EAAUrC,kBACzBiF,EAAc5C,EAAU6C,cAAcJ,EAAW1N,EAAO4E,GAC5DiI,GAAgB,8DAEW7I,OADY2J,EAAU,+DACV3J,OAAZ6J,EAAY,kBAEvChB,GAAe,SACf,cAKHkB,GAAa,EAAbC,GAAa,EAAbC,OAAapN,MAAlB,IAAA,IAAKqN,EAAAC,EAAiBX,EAAYlG,OAAAC,cAA7BwG,GAAAG,EAAAC,EAAa3G,QAAAtH,MAAb6N,GAAa,EAAkB,CAA/B,IAAIK,EAAJF,EAAalO,MAGd,GACS,IAFMoO,EAAUpI,cACR1E,OACb,CACIwL,IACA,IAAIuB,EAAY7N,KAAK0L,aAAaY,GAC9BwB,EAAYF,EAAUR,YAAYS,EAAY,UAAqBrK,OAAZ4I,IACvD2B,EAAQH,EAAU1F,WAClB8F,EAAeJ,EAAUxF,kBACzB6F,EAAcL,EAAUN,cAAcO,EAAWE,EAAOC,GAC5D3B,GAAgB,iCAGf7I,OADnBsK,EAAU,6BAC0BtK,OAAjB2I,EAAa,MAAgB3I,OAAZyK,EAAY,wBAIlC,CACI,IAAIhK,EAAM2J,EAAU9H,iBACpBuG,GAAgB,qCAAwC7I,OAAJS,EAAI,UACxDoI,GAAgB,yBAChB,IAAIzE,EAAO,EACNsG,GAAW,EAAXC,GAAW,EAAXC,OAAW/N,MAAhB,IAAA,IAAKgO,EAAAC,EAAeV,EAAUpI,cAAasB,OAAAC,cAAtCmH,GAAAG,EAAAC,EAAWtH,QAAAtH,MAAXwO,GAAW,EAA6B,CAAxC,IAAMxI,EAAN2I,EAAW7O,MACR+F,GAAQG,EAAM8E,kBAClB6B,GAAgB,sBAA2B7I,OAAN+B,GAAM,kBAC3C8G,GAAe3G,EAAMI,iBACrBuG,GAAgB,SAChB,IAAIkC,GAAe7I,EAAM8I,YAAY1N,OACjCyN,GAAe3G,IACfA,EAAO2G,cAPVJ,GAAW,EAAXC,EAAWhO,cAAX8N,GAAW,MAAXI,EAAWpH,QAAXoH,EAAWpH,oBAAXiH,QAAAC,GAUL/B,GAAgB,SAEhB,IAAK,IAAIxL,GAAI,EAAGA,GAAI+G,EAAM/G,KAAK,CAC3BwL,GAAgB,6BACXoC,IAAW,EAAXC,IAAW,EAAXC,QAAWtO,MAAhB,IAAA,IAAKuO,GAAAC,GAAejB,EAAUpI,cAAasB,OAAAC,cAAtC0H,IAAAG,GAAAC,GAAW7H,QAAAtH,MAAX+O,IAAW,EAA6B,CAAxC,IAAMK,GAANF,GAAWpP,MACRuP,GAAQD,GAAMN,YAAY3N,IAC1BmO,GAAeF,GAAMG,mBAAmBpO,IAC5CyL,IACA,IAAI4C,GAAYlP,KAAK0L,aAAaY,GAC9B6C,GAAQL,GAAMtE,kBAClB6B,GAAgB,sBAA2B7I,OAAN2L,GAAM,MAC3C9C,GAAeyC,GAAMxB,cAAc4B,GAAWH,GAAOC,IACrD3C,GAAgB,mBARfqC,IAAW,EAAXC,GAAWvO,cAAXqO,IAAW,MAAXI,GAAW3H,QAAX2H,GAAW3H,oBAAXwH,SAAAC,IAULtC,GAAgB,qBA/C3BmB,GAAa,EAAbC,EAAarN,cAAbmN,GAAa,MAAbI,EAAazG,QAAbyG,EAAazG,oBAAbsG,QAAAC,GAuDLpB,GAAe,mBA5FdG,GAAO,EAAPC,EAAOrM,cAAPmM,GAAO,MAAPI,EAAOzF,QAAPyF,EAAOzF,oBAAPsF,QAAAC,GA8FLJ,GAAe,SAEf,IAAI+C,GAAOC,SAASC,cAAc,QAGlC,OAFAF,GAAKG,aAAa,KAAMnE,GACxBgE,GAAKI,UAAa,GAAiBhM,OAAf6H,EAAY,KAAe7H,OAAZ6I,GAC5B+C,MAIX/P,IAAA,wBAAA,SAAgBkG,GAEZ,OADAvF,KAAKuF,MAAQA,EACNvF,QAGXX,IAAA,iBAAA,SAAS8E,GACLnE,KAAKmE,MAAQA,KAGjB9E,IAAA,eAAA,SAAO4E,GACHjE,KAAKiE,IAAMA,OAlRR5E,IAAA,uBAAP,SAAsB+L,EAAQ/C,GAC1B,IAAI+G,EAAO9E,EAASmF,aAAarE,GACjC,IAAK,IAAIsE,KAAQrH,EACb,GAAKA,EAAKC,eAAeoH,GAAzB,CAGA,IAAIlQ,EAAQ6I,EAAKqH,GACjB,OAAQA,GACJ,IAAK,SACD,IAAIC,EAASnQ,EACb,IAAK,IAAIoQ,KAASD,EACVA,EAAOrH,eAAesH,IACtBR,EAAKS,aAAajM,EAAc6F,eAAekG,EAAOC,KAG9D,SACJ,IAAK,OACD,IAAIjF,EAAOnL,EACX,IAAK,IAAIuF,KAAO4F,EACRA,EAAKrC,eAAevD,IACpBqK,EAAKU,OAAO9F,EAAYP,eAAekB,EAAK5F,KAGpD,MACJ,IAAK,QACDqK,EAAK9F,gBAAgB9J,GACrB,MACJ,IAAK,QACD4P,EAAKtG,SAAStJ,GACd,MACJ,IAAK,MACD4P,EAAKjG,OAAO3J,GACZ,MACJ,QACIqC,EAAO0G,YAAY9I,MAAO,sBAA0B+D,OAALkM,EAAK,kBAKhE,OAAON,KAQJ/P,IAAA,qBAAP,SAAoBwD,GAChB,OAAO,IAAIyH,EAASzH,SC7GzB,QCAHkN,EAAeC,UCYf,IAAIC,EAAc,GAEGC,EAAN,iCAAMA,EAeLC,aAZZ1O,EAAAzB,KAAA,gBAAgB,IAChByB,EAAAzB,KAAA,SAAS,IACTyB,EAAAzB,KAAA,WAAU,GACVyB,EAAAzB,KAAA,aAAa,IACbyB,EAAAzB,KAAA,eAAe,IACfyB,EAAAzB,KAAA,cAAa,GACbyB,EAAAzB,KAAA,gBAAgB,IAQZA,KAAKmQ,QAAUA,EAMf,IAAIC,EAAef,SAASgB,eAAeF,GACtB,OAAjBC,GACAvO,EAAO0G,YAAY9I,MAAO,WAAkB+D,OAAR2M,EAAQ,4FAC5CnQ,KAAKsQ,qBAAuBF,EAC5BpQ,KAAKuQ,UAELvQ,KAAKsQ,qBAAuBjB,SAASC,cAAc,OACnDtP,KAAKsQ,qBAAqBf,aAAa,KAAMvP,KAAKmQ,SAClDnQ,KAAKsQ,qBAAqBE,UAAUC,IAAI,QAAS,QAGjDzQ,KAAKsQ,qBAAqBf,aAAa,cAAe,sBAK9DlQ,IAAA,kBAAA,SAAUqR,GAEN,OADA1Q,KAAK0Q,WAAaA,EACX1Q,QAOXX,IAAA,gBAAA,SAAQsR,GAGJ,OADA3Q,KAAK4Q,OAAOlN,KAAKiN,GACV3Q,QAIXX,IAAA,qBAAA,SAAasJ,EAAUnJ,GAGnB,OADAQ,KAAK6Q,WAAWlI,GAAYnJ,EACrBQ,QAIXX,IAAA,iBAAA,WAEI,OADAW,KAAK8Q,YAAa,EACX9Q,QAGXX,IAAA,uBAAA,SAAesJ,EAAUnJ,GAGrB,OADAQ,KAAK+Q,aAAapI,GAAYnJ,EACvBQ,QAIXX,IAAA,uBAAA,SAAeG,GAGX,OADAQ,KAAKgR,cAActN,KAAKlE,GACjBQ,QAOXX,IAAA,qBAAA,WAEI,OADAW,KAAKiR,gBAAiB,EACfjR,QAQXX,IAAA,wBAAA,SAAgB6R,GAGZ,OADAlR,KAAKmR,cAAczN,KAAKwN,GACjBlR,QAOXX,IAAA,6BAAA,eAAqB8E,EAAAjE,UAAAY,OAAA,QAAA,IAAAZ,UAAA,GAAeA,UAAA,GAAP,QACzBF,KAAKoR,YAAc/B,SAASC,cAAc,UAC1CtP,KAAKoR,YAAYZ,UAAUC,IAAI,MAAO,iBACtCzQ,KAAKoR,YAAY5B,UAAYrL,EAC7B,IAAIkN,EAAQrR,KAKZ,OAJAA,KAAKoR,YAAYE,iBAAiB,SAAS,WACvCD,EAAME,eAAeC,UAEzBxR,KAAKyR,gBAAgBzR,KAAKoR,aACnBpR,QAOXX,IAAA,iBAAA,WAEI,OADAW,KAAK0R,YAAa,EACX1R,QAGXX,IAAA,aAAA,WAEI,GAAiC,MAA7BW,KAAKsQ,qBACL,MAAM,IAAI/F,MAAM,4DAYpB,GATKvK,KAAK2R,SACN3R,KAAK4R,SAQmB,IAAxB5R,KAAKiR,eAAyB,CAC9B,IAAIY,EAAa7R,KACjBA,KAAK8R,aAAaR,iBAAiB,mBAAmB,WAIlDO,EAAWtB,WAOnB,QAAsBlQ,IAAlBL,KAAK+R,eACoB1R,IAArBL,KAAKoR,YAA2B,CAChC,IAAIC,EAAQrR,KACZA,KAAKoR,YAAYE,iBAAiB,SAAS,WAKvCD,EAAMW,cACNX,EAAMU,cAKlB/R,KAAKuR,eAAeU,UAKxB5S,IAAA,oBAAA,gBACgCgB,IAAxBL,KAAKuR,gBACLvR,KAAKuR,eAAeC,UAI5BnS,IAAA,mBAAA,WACI,OAAOW,KAAKmQ,WAOhB9Q,IAAA,2BAAA,SAAmB0S,GAEf,OADA/R,KAAK+R,SAAWA,EACT/R,QAsDXX,IAAA,mBAAA,WACI,OAAOW,KAAKsQ,wBAShBjR,IAAA,iBAAA,WACI,OAAOW,KAAK2R,WAGhBtS,IAAA,oBAAA,SAAY6S,GAER,OADAlS,KAAK0R,WAAaQ,EACXlS,QAEXX,IAAA,qBAAA,WAII,OAHIW,KAAKmS,YACLnS,KAAKuQ,QAEFvQ,QAGXX,IAAA,cAAA,WAGIW,KAAKsQ,qBAAqB8B,iBAAiB,0BAA0BzI,SAAQ,SAAA0I,GACzE,IAAItN,EAAMgL,EAAAuC,IAAIC,YAAYF,GACd,OAARtN,GAEAA,EAAIyN,kBASgBnS,IAAxBL,KAAKuR,gBACLvR,KAAKgS,cAEThS,KAAKsQ,qBAAqBd,UAAY,GAKtCxP,KAAK2R,SAAU,EACf3R,KAAK4Q,OAAS,GACd5Q,KAAKmR,cAAgB,GACrBnR,KAAK0Q,gBAAarQ,KAMtBhB,IAAA,cAAA,WAEIW,KAAK2R,SAAU,EAEftC,SAASoD,KAAKC,YAAY1S,KAAKsQ,sBAE/B,IAAMqC,EAAqBtD,SAASC,cAAc,OAalD,IAAK,IAAIsD,KAZTD,EAAmBnC,UAAUC,IACzB,eACA,0BACA,YACAzQ,KAAK0R,WACLiB,EAAmBnC,UAAUC,IAAI,0BAIjCkC,EAAmBE,MAAMC,YAAY,SAAU,aAC/CH,EAAmBE,MAAMC,YAAY,SAAU,sBAEvB9S,KAAK+Q,aACxB/Q,KAAK+Q,aAAazI,eAAesK,IAGtCD,EAAmBE,MAAMC,YAAYF,EAAiB5S,KAAK+Q,aAAa6B,IAE5E,IAAK,IAAIG,KAAe/S,KAAKgR,cACzB2B,EAAmBnC,UAAUC,IAAIsC,GASrC,IAAK,IAAIC,KAPThT,KAAKsQ,qBAAqBoC,YAAYC,GACtC3S,KAAKiT,aAAe5D,SAASC,cAAc,OAC3CtP,KAAKiT,aAAazC,UAAUC,IAAI,iBAChCkC,EAAmBD,YAAY1S,KAAKiT,cAEpCjT,KAAKkT,UAAY7D,SAASC,cAAc,OACxCtP,KAAKkT,UAAU1C,UAAUC,IAAI,cACHzQ,KAAK6Q,WACtB7Q,KAAK6Q,WAAWvI,eAAe0K,IAGpChT,KAAKkT,UAAUL,MAAMC,YAAYE,EAAehT,KAAK6Q,WAAWmC,IAWpE,GATAhT,KAAKiT,aAAaP,YAAY1S,KAAKkT,WAQnClT,KAAKuR,eAAiBxB,EAAAoD,MAAMZ,YAAYvS,KAAKsQ,sBACjB,OAAxBtQ,KAAKuR,eAAyB,CAU9BvR,KAAKuR,eAAiB,IAAIxB,EAAAoD,MAAMnT,KAAKsQ,qBALvB,CACV8C,UAAY,EACZC,UAAY,EACZC,OAAS,IAQjB,QAAwBjT,IAApBL,KAAK0Q,WAA0B,CAC/B,IAAI6C,EAAc,6DAEgB/P,OAAhBxD,KAAK0Q,WAAW,qHAIlC1Q,KAAKiT,aAAaO,mBAAmB,aAAcD,OCnY/B7R,EDyYnB+E,GAAQ,EAARC,GAAQ,EAARC,OAAQtG,MAAb,IAAA,IAAKuG,EAAAC,EAAY7G,KAAK4Q,OAAM9J,OAAAC,cAAvBN,GAAAG,EAAAC,EAAQG,QAAAtH,MAAR+G,GAAQ,EAAiB,CAAzB,IAAIgM,EAAJ7L,EAAQpH,MAET,GACS,iBAFa,IAAJiT,EAAI,aC1YF/Q,ED0YF+Q,ICxYZ/Q,EAAI+R,cAAgB3M,OAAS,gBAAkBpF,GD2Y7C1B,KAAKkT,UAAUM,mBAAmB,YAAaf,QAI/CzS,KAAKkT,UAAUR,YAAYD,aARlC/L,GAAQ,EAARC,EAAQvG,cAARqG,GAAQ,MAARI,EAAQK,QAARL,EAAQK,oBAARR,QAAAC,GAgBL,GAAG3G,KAAK8Q,WAAY,CAChB,IAAI4C,EAAcrE,SAASC,cAAc,OACzCoE,EAAYlD,UAAUC,IAAI,gBAC1BzQ,KAAKiT,aAAaP,YAAYgB,GAEI,IAA9B1T,KAAKmR,cAAcrQ,QACnBd,KAAK2T,2BAGJpH,GAAgB,EAAhBC,GAAgB,EAAhBC,OAAgBpM,MAArB,IAAA,IAAKqM,EAAAC,EAAoB3M,KAAKmR,cAAarK,OAAAC,cAAtCwF,GAAAG,EAAAC,EAAgB3F,QAAAtH,MAAhB6M,GAAgB,EAAA,CAAhB,IAAIqH,EAAJlH,EAAgBlN,MACW,iBAAjBoU,GAA6BA,aAAwBxM,OAC5DsM,EAAYF,mBAAmB,YAAaI,GAE5CF,EAAYhB,YAAYkB,aAJ3BpH,GAAgB,EAAhBC,EAAgBrM,cAAhBmM,GAAgB,MAAhBI,EAAgBzF,QAAhByF,EAAgBzF,oBAAhBsF,QAAAC,IAYT,IAAIoH,EAAmB,IAAgBrQ,OAAbxD,KAAKmQ,QAAQ,+BACvCd,SAAS+C,iBAAiByB,GAAiBlK,SAAQ,SAAAmK,UAAM,IAAI/D,EAAAgE,QAAQD,WA7NlEzU,IAAA,qBAAP,SAAoB8Q,GAChB,IAAIkB,EAAQ,IAAInB,EAAWC,GAE3B,OADAF,EAAYE,GAAWkB,EAChBA,KAuCJhS,IAAA,wBAAP,WACI,OAAOW,KAAKyP,aAAazM,EAAKgR,qBAsL3B3U,IAAA,oBAAP,SAAmB8Q,GACf,IAAIkB,EAAQnB,EAAW+D,SAAS9D,GAIhC,OAHc,OAAVkB,IACAA,EAAQnB,EAAWT,aAAaU,IAE7BkB,QA1aA,GA8MX5P,EA9MiByO,EA8MV,YAAW,SAAUC,GAExB,OAAIA,KAAWF,EACJA,EAAYE,GAEZ,QAOf1O,EA1NiByO,EA0NV,cAAa,WAChBpO,QAAQY,IAAIvB,OAAO+S,KAAKjE,GAAatM,KAAK,UAM9ClC,EAjOiByO,EAiOV,kBAAiB,WACpB,IAAK,IAAIR,KAAQO,EACb,GAAIA,EAAY3H,eAAeoH,GAAO,CACtBO,EAAYP,GAClBa,qBE5OlB4D,EAAW,SAAUC,GAGvB,IAEI/T,EAFAgU,EAAKlT,OAAOK,UACZ8S,EAASD,EAAG/L,eAEZiM,EAA4B,mBAAXzN,OAAwBA,OAAS,GAClD0N,EAAiBD,EAAQxN,UAAY,aACrC0N,EAAsBF,EAAQG,eAAiB,kBAC/CC,EAAoBJ,EAAQK,aAAe,gBAE/C,SAASC,EAAOnT,EAAKrC,EAAKG,GAOxB,OANA2B,OAAOC,eAAeM,EAAKrC,EAAK,CAC9BG,MAAOA,EACPwB,YAAY,EACZC,cAAc,EACdC,UAAU,IAELQ,EAAIrC,GAEb,IAEEwV,EAAO,GAAI,IACX,MAAOC,GACPD,EAAS,SAASnT,EAAKrC,EAAKG,GAC1B,OAAOkC,EAAIrC,GAAOG,GAItB,SAASuV,EAAKC,EAASC,EAASlV,EAAMmV,GAEpC,IAAIC,EAAiBF,GAAWA,EAAQzT,qBAAqB4T,EAAYH,EAAUG,EAC/EC,EAAYlU,OAAOmU,OAAOH,EAAe3T,WACzC+T,EAAU,IAAIC,EAAQN,GAAe,IAMzC,OAFAG,EAAUI,QAuMZ,SAA0BT,EAASjV,EAAMwV,GACvC,IAAIG,EAAQC,EAEZ,OAAO,SAAgBC,EAAQtW,GAC7B,GAAIoW,IAAUG,EACZ,MAAM,IAAItL,MAAM,gCAGlB,GAAImL,IAAUI,EAAmB,CAC/B,GAAe,UAAXF,EACF,MAAMtW,EAKR,OAAOyW,IAMT,IAHAR,EAAQK,OAASA,EACjBL,EAAQjW,IAAMA,IAED,CACX,IAAI0W,EAAWT,EAAQS,SACvB,GAAIA,EAAU,CACZ,IAAIC,EAAiBC,EAAoBF,EAAUT,GACnD,GAAIU,EAAgB,CAClB,GAAIA,IAAmBE,EAAkB,SACzC,OAAOF,GAIX,GAAuB,SAAnBV,EAAQK,OAGVL,EAAQa,KAAOb,EAAQc,MAAQd,EAAQjW,SAElC,GAAuB,UAAnBiW,EAAQK,OAAoB,CACrC,GAAIF,IAAUC,EAEZ,MADAD,EAAQI,EACFP,EAAQjW,IAGhBiW,EAAQe,kBAAkBf,EAAQjW,SAEN,WAAnBiW,EAAQK,QACjBL,EAAQgB,OAAO,SAAUhB,EAAQjW,KAGnCoW,EAAQG,EAER,IAAIW,EAASC,EAASzB,EAASjV,EAAMwV,GACrC,GAAoB,WAAhBiB,EAAOtS,KAAmB,CAO5B,GAJAwR,EAAQH,EAAQ7V,KACZoW,EACAY,EAEAF,EAAOlX,MAAQ6W,EACjB,SAGF,MAAO,CACL3W,MAAOgX,EAAOlX,IACdI,KAAM6V,EAAQ7V,MAGS,UAAhB8W,EAAOtS,OAChBwR,EAAQI,EAGRP,EAAQK,OAAS,QACjBL,EAAQjW,IAAMkX,EAAOlX,OA/QPqX,CAAiB3B,EAASjV,EAAMwV,GAE7CF,EAcT,SAASoB,EAAS3W,EAAI4B,EAAKpC,GACzB,IACE,MAAO,CAAE4E,KAAM,SAAU5E,IAAKQ,EAAG8W,KAAKlV,EAAKpC,IAC3C,MAAOc,GACP,MAAO,CAAE8D,KAAM,QAAS5E,IAAKc,IAhBjCgU,EAAQW,KAAOA,EAoBf,IAAIY,EAAyB,iBACzBe,EAAyB,iBACzBb,EAAoB,YACpBC,EAAoB,YAIpBK,EAAmB,GAMvB,SAASf,KACT,SAASyB,KACT,SAASC,KAIT,IAAIC,EAAoB,GACxBlC,EAAOkC,EAAmBvC,GAAgB,WACxC,OAAOxU,QAGT,IAAIgX,EAAW7V,OAAO8V,eAClBC,EAA0BF,GAAYA,EAASA,EAAS3S,EAAO,MAC/D6S,GACAA,IAA4B7C,GAC5BC,EAAOsC,KAAKM,EAAyB1C,KAGvCuC,EAAoBG,GAGtB,IAAIC,EAAKL,EAA2BtV,UAClC4T,EAAU5T,UAAYL,OAAOmU,OAAOyB,GAYtC,SAASK,EAAsB5V,GAC7B,CAAC,OAAQ,QAAS,UAAUmI,SAAQ,SAASiM,GAC3Cf,EAAOrT,EAAWoU,GAAQ,SAAStW,GACjC,OAAOU,KAAKyV,QAAQG,EAAQtW,SAkClC,SAAS+X,EAAchC,EAAWiC,GAChC,SAASC,EAAO3B,EAAQtW,EAAKL,EAASC,GACpC,IAAIsX,EAASC,EAASpB,EAAUO,GAASP,EAAW/V,GACpD,GAAoB,UAAhBkX,EAAOtS,KAEJ,CACL,IAAIsT,EAAShB,EAAOlX,IAChByO,EAAQyJ,EAAOhY,MACnB,OAAIuO,GACiB,iBAAVA,GACPuG,EAAOsC,KAAK7I,EAAO,WACduJ,EAAYrY,QAAQ8O,EAAM0J,SAAS7X,MAAK,SAASJ,GACtD+X,EAAO,OAAQ/X,EAAOP,EAASC,MAC9B,SAASkB,GACVmX,EAAO,QAASnX,EAAKnB,EAASC,MAI3BoY,EAAYrY,QAAQ8O,GAAOnO,MAAK,SAAS8X,GAI9CF,EAAOhY,MAAQkY,EACfzY,EAAQuY,MACP,SAAS/X,GAGV,OAAO8X,EAAO,QAAS9X,EAAOR,EAASC,MAvBzCA,EAAOsX,EAAOlX,KA4BlB,IAAIqY,EAgCJ3X,KAAKyV,QA9BL,SAAiBG,EAAQtW,GACvB,SAASsY,IACP,OAAO,IAAIN,GAAY,SAASrY,EAASC,GACvCqY,EAAO3B,EAAQtW,EAAKL,EAASC,MAIjC,OAAOyY,EAaLA,EAAkBA,EAAgB/X,KAChCgY,EAGAA,GACEA,KAkHV,SAAS1B,EAAoBF,EAAUT,GACrC,IAAIK,EAASI,EAASjP,SAASwO,EAAQK,QACvC,GAAIA,IAAWvV,EAAW,CAKxB,GAFAkV,EAAQS,SAAW,KAEI,UAAnBT,EAAQK,OAAoB,CAE9B,GAAII,EAASjP,SAAiB,SAG5BwO,EAAQK,OAAS,SACjBL,EAAQjW,IAAMe,EACd6V,EAAoBF,EAAUT,GAEP,UAAnBA,EAAQK,QAGV,OAAOO,EAIXZ,EAAQK,OAAS,QACjBL,EAAQjW,IAAM,IAAImB,UAChB,kDAGJ,OAAO0V,EAGT,IAAIK,EAASC,EAASb,EAAQI,EAASjP,SAAUwO,EAAQjW,KAEzD,GAAoB,UAAhBkX,EAAOtS,KAIT,OAHAqR,EAAQK,OAAS,QACjBL,EAAQjW,IAAMkX,EAAOlX,IACrBiW,EAAQS,SAAW,KACZG,EAGT,IAAI5W,EAAOiX,EAAOlX,IAElB,OAAMC,EAOFA,EAAKG,MAGP6V,EAAQS,EAAS6B,YAActY,EAAKC,MAGpC+V,EAAQvO,KAAOgP,EAAS8B,QAQD,WAAnBvC,EAAQK,SACVL,EAAQK,OAAS,OACjBL,EAAQjW,IAAMe,GAUlBkV,EAAQS,SAAW,KACZG,GANE5W,GA3BPgW,EAAQK,OAAS,QACjBL,EAAQjW,IAAM,IAAImB,UAAU,oCAC5B8U,EAAQS,SAAW,KACZG,GAoDX,SAAS4B,EAAaC,GACpB,IAAIC,EAAQ,CAAEC,OAAQF,EAAK,IAEvB,KAAKA,IACPC,EAAME,SAAWH,EAAK,IAGpB,KAAKA,IACPC,EAAMG,WAAaJ,EAAK,GACxBC,EAAMI,SAAWL,EAAK,IAGxBhY,KAAKsY,WAAW5U,KAAKuU,GAGvB,SAASM,EAAcN,GACrB,IAAIzB,EAASyB,EAAMO,YAAc,GACjChC,EAAOtS,KAAO,gBACPsS,EAAOlX,IACd2Y,EAAMO,WAAahC,EAGrB,SAAShB,EAAQN,GAIflV,KAAKsY,WAAa,CAAC,CAAEJ,OAAQ,SAC7BhD,EAAYvL,QAAQoO,EAAc/X,MAClCA,KAAKuQ,OAAM,GA8Bb,SAASlM,EAAOoU,GACd,GAAIA,EAAU,CACZ,IAAIC,EAAiBD,EAASjE,GAC9B,GAAIkE,EACF,OAAOA,EAAe9B,KAAK6B,GAG7B,GAA6B,mBAAlBA,EAASzR,KAClB,OAAOyR,EAGT,IAAKE,MAAMF,EAAS3X,QAAS,CAC3B,IAAID,GAAI,EAAI+X,EAAO,SAAS5R,IAC1B,OAASnG,EAAI4X,EAAS3X,WAChBwT,EAAOsC,KAAK6B,EAAU5X,GAGxB,OAFAmG,EAAKxH,MAAQiZ,EAAS5X,GACtBmG,EAAKtH,MAAO,EACLsH,EAOX,OAHAA,EAAKxH,MAAQa,EACb2G,EAAKtH,MAAO,EAELsH,GAGT,OAAO4R,EAAK5R,KAAO4R,GAKvB,MAAO,CAAE5R,KAAM+O,GAIjB,SAASA,IACP,MAAO,CAAEvW,MAAOa,EAAWX,MAAM,GA+MnC,OA7mBAmX,EAAkBrV,UAAYsV,EAC9BjC,EAAOsC,EAAI,cAAeL,GAC1BjC,EAAOiC,EAA4B,cAAeD,GAClDA,EAAkBgC,YAAchE,EAC9BiC,EACAnC,EACA,qBAaFP,EAAQ0E,oBAAsB,SAASC,GACrC,IAAIC,EAAyB,mBAAXD,GAAyBA,EAAOtF,YAClD,QAAOuF,IACHA,IAASnC,GAG2B,uBAAnCmC,EAAKH,aAAeG,EAAKnV,QAIhCuQ,EAAQ6E,KAAO,SAASF,GAQtB,OAPI5X,OAAO+X,eACT/X,OAAO+X,eAAeH,EAAQjC,IAE9BiC,EAAOI,UAAYrC,EACnBjC,EAAOkE,EAAQpE,EAAmB,sBAEpCoE,EAAOvX,UAAYL,OAAOmU,OAAO6B,GAC1B4B,GAOT3E,EAAQgF,MAAQ,SAAS9Z,GACvB,MAAO,CAAEmY,QAASnY,IAsEpB8X,EAAsBC,EAAc7V,WACpCqT,EAAOwC,EAAc7V,UAAWiT,GAAqB,WACnD,OAAOzU,QAEToU,EAAQiD,cAAgBA,EAKxBjD,EAAQiF,MAAQ,SAASrE,EAASC,EAASlV,EAAMmV,EAAaoC,QACxC,IAAhBA,IAAwBA,EAAc3X,SAE1C,IAAI2Z,EAAO,IAAIjC,EACbtC,EAAKC,EAASC,EAASlV,EAAMmV,GAC7BoC,GAGF,OAAOlD,EAAQ0E,oBAAoB7D,GAC/BqE,EACAA,EAAKtS,OAAOpH,MAAK,SAAS4X,GACxB,OAAOA,EAAO9X,KAAO8X,EAAOhY,MAAQ8Z,EAAKtS,WAuKjDoQ,EAAsBD,GAEtBtC,EAAOsC,EAAIxC,EAAmB,aAO9BE,EAAOsC,EAAI3C,GAAgB,WACzB,OAAOxU,QAGT6U,EAAOsC,EAAI,YAAY,WACrB,MAAO,wBAkCT/C,EAAQF,KAAO,SAASqF,GACtB,IAAIrF,EAAO,GACX,IAAK,IAAIsF,KAAOD,EACdrF,EAAKxQ,KAAK8V,GAMZ,OAJAtF,EAAKuF,UAIE,SAASzS,IACd,KAAOkN,EAAKpT,QAAQ,CAClB,IAAIzB,EAAM6U,EAAKwF,MACf,GAAIra,KAAOka,EAGT,OAFAvS,EAAKxH,MAAQH,EACb2H,EAAKtH,MAAO,EACLsH,EAQX,OADAA,EAAKtH,MAAO,EACLsH,IAsCXoN,EAAQ/P,OAASA,EAMjBmR,EAAQhU,UAAY,CAClBiS,YAAa+B,EAEbjF,MAAO,SAASoJ,GAcd,GAbA3Z,KAAK4Z,KAAO,EACZ5Z,KAAKgH,KAAO,EAGZhH,KAAKoW,KAAOpW,KAAKqW,MAAQhW,EACzBL,KAAKN,MAAO,EACZM,KAAKgW,SAAW,KAEhBhW,KAAK4V,OAAS,OACd5V,KAAKV,IAAMe,EAEXL,KAAKsY,WAAW3O,QAAQ4O,IAEnBoB,EACH,IAAK,IAAI9V,KAAQ7D,KAEQ,MAAnB6D,EAAKc,OAAO,IACZ2P,EAAOsC,KAAK5W,KAAM6D,KACjB8U,OAAO9U,EAAKgB,MAAM,MACrB7E,KAAK6D,GAAQxD,IAMrBwZ,KAAM,WACJ7Z,KAAKN,MAAO,EAEZ,IACIoa,EADY9Z,KAAKsY,WAAW,GACLE,WAC3B,GAAwB,UAApBsB,EAAW5V,KACb,MAAM4V,EAAWxa,IAGnB,OAAOU,KAAK+Z,MAGdzD,kBAAmB,SAAS0D,GAC1B,GAAIha,KAAKN,KACP,MAAMsa,EAGR,IAAIzE,EAAUvV,KACd,SAASia,EAAOC,EAAKC,GAYnB,OAXA3D,EAAOtS,KAAO,QACdsS,EAAOlX,IAAM0a,EACbzE,EAAQvO,KAAOkT,EAEXC,IAGF5E,EAAQK,OAAS,OACjBL,EAAQjW,IAAMe,KAGN8Z,EAGZ,IAAK,IAAItZ,EAAIb,KAAKsY,WAAWxX,OAAS,EAAGD,GAAK,IAAKA,EAAG,CACpD,IAAIoX,EAAQjY,KAAKsY,WAAWzX,GACxB2V,EAASyB,EAAMO,WAEnB,GAAqB,SAAjBP,EAAMC,OAIR,OAAO+B,EAAO,OAGhB,GAAIhC,EAAMC,QAAUlY,KAAK4Z,KAAM,CAC7B,IAAIQ,EAAW9F,EAAOsC,KAAKqB,EAAO,YAC9BoC,EAAa/F,EAAOsC,KAAKqB,EAAO,cAEpC,GAAImC,GAAYC,EAAY,CAC1B,GAAIra,KAAK4Z,KAAO3B,EAAME,SACpB,OAAO8B,EAAOhC,EAAME,UAAU,GACzB,GAAInY,KAAK4Z,KAAO3B,EAAMG,WAC3B,OAAO6B,EAAOhC,EAAMG,iBAGjB,GAAIgC,GACT,GAAIpa,KAAK4Z,KAAO3B,EAAME,SACpB,OAAO8B,EAAOhC,EAAME,UAAU,OAG3B,CAAA,IAAIkC,EAMT,MAAM,IAAI9P,MAAM,0CALhB,GAAIvK,KAAK4Z,KAAO3B,EAAMG,WACpB,OAAO6B,EAAOhC,EAAMG,gBAU9B7B,OAAQ,SAASrS,EAAM5E,GACrB,IAAK,IAAIuB,EAAIb,KAAKsY,WAAWxX,OAAS,EAAGD,GAAK,IAAKA,EAAG,CACpD,IAAIoX,EAAQjY,KAAKsY,WAAWzX,GAC5B,GAAIoX,EAAMC,QAAUlY,KAAK4Z,MACrBtF,EAAOsC,KAAKqB,EAAO,eACnBjY,KAAK4Z,KAAO3B,EAAMG,WAAY,CAChC,IAAIkC,EAAerC,EACnB,OAIAqC,IACU,UAATpW,GACS,aAATA,IACDoW,EAAapC,QAAU5Y,GACvBA,GAAOgb,EAAalC,aAGtBkC,EAAe,MAGjB,IAAI9D,EAAS8D,EAAeA,EAAa9B,WAAa,GAItD,OAHAhC,EAAOtS,KAAOA,EACdsS,EAAOlX,IAAMA,EAETgb,GACFta,KAAK4V,OAAS,OACd5V,KAAKgH,KAAOsT,EAAalC,WAClBjC,GAGFnW,KAAKua,SAAS/D,IAGvB+D,SAAU,SAAS/D,EAAQ6B,GACzB,GAAoB,UAAhB7B,EAAOtS,KACT,MAAMsS,EAAOlX,IAcf,MAXoB,UAAhBkX,EAAOtS,MACS,aAAhBsS,EAAOtS,KACTlE,KAAKgH,KAAOwP,EAAOlX,IACM,WAAhBkX,EAAOtS,MAChBlE,KAAK+Z,KAAO/Z,KAAKV,IAAMkX,EAAOlX,IAC9BU,KAAK4V,OAAS,SACd5V,KAAKgH,KAAO,OACa,WAAhBwP,EAAOtS,MAAqBmU,IACrCrY,KAAKgH,KAAOqR,GAGPlC,GAGTqE,OAAQ,SAASpC,GACf,IAAK,IAAIvX,EAAIb,KAAKsY,WAAWxX,OAAS,EAAGD,GAAK,IAAKA,EAAG,CACpD,IAAIoX,EAAQjY,KAAKsY,WAAWzX,GAC5B,GAAIoX,EAAMG,aAAeA,EAGvB,OAFApY,KAAKua,SAAStC,EAAMO,WAAYP,EAAMI,UACtCE,EAAcN,GACP9B,IAKbsE,MAAS,SAASvC,GAChB,IAAK,IAAIrX,EAAIb,KAAKsY,WAAWxX,OAAS,EAAGD,GAAK,IAAKA,EAAG,CACpD,IAAIoX,EAAQjY,KAAKsY,WAAWzX,GAC5B,GAAIoX,EAAMC,SAAWA,EAAQ,CAC3B,IAAI1B,EAASyB,EAAMO,WACnB,GAAoB,UAAhBhC,EAAOtS,KAAkB,CAC3B,IAAIwW,EAASlE,EAAOlX,IACpBiZ,EAAcN,GAEhB,OAAOyC,GAMX,MAAM,IAAInQ,MAAM,0BAGlBoQ,cAAe,SAASlC,EAAUZ,EAAYC,GAa5C,OAZA9X,KAAKgW,SAAW,CACdjP,SAAU1C,EAAOoU,GACjBZ,WAAYA,EACZC,QAASA,GAGS,SAAhB9X,KAAK4V,SAGP5V,KAAKV,IAAMe,GAGN8V,IAQJ/B,EA9sBM,CAqtBgBwG,GAG/B,IACEC,mBAAqB1G,EACrB,MAAO2G,GAWmB,iBAAfC,WACTA,WAAWF,mBAAqB1G,EAEhC6G,SAAS,IAAK,yBAAdA,CAAwC7G,GC7uB7B,IAAM8G,EAAN,iCAAMA,gCAQV5b,IAAA,uBAAP,SAAsBuK,GAClB,IAAI5J,KAAKkb,UAAUtR,GACf,MAAMW,MAAM,gCAIblL,IAAA,kBAAP,SAAiBuK,GACb,SAAUA,IACLA,EAAQuR,gBACRvR,EAAQuR,cAAcC,gBAGxB/b,IAAA,kBAAP,SAAiBuK,GAEb,OADA5J,KAAKqb,eAAezR,GACbA,EAAQuR,cAAcC,eAG1B/b,IAAA,yBAAP,SAAwBic,GACpB,IAAI5Z,EAAM,GACL+E,GAAS,EAATC,GAAS,EAATC,OAAStG,MAAd,IAAA,IAAKuG,EAAAC,EAAayU,EAAQxU,OAAAC,cAArBN,GAAAG,EAAAC,EAASG,QAAAtH,MAAT+G,GAAS,EAAc,CAAvB,IAAIwR,EAAJrR,EAASpH,MACNqE,EAAOoU,EAAM,GACbzY,EAAQyY,EAAM,GAClB,GAAGvW,EAAI4G,eAAezE,GAAM,CACxB,IAAI0X,EAAc7Z,EAAImC,GACnBwB,MAAMC,QAAQiW,GACb7Z,EAAImC,GAAMH,KAAKlE,GAEfkC,EAAImC,GAAQ,CAAC0X,EAAY/b,QAG7BkC,EAAImC,GAAQrE,YAXfkH,GAAS,EAATC,EAASvG,cAATqG,GAAS,MAATI,EAASK,QAATL,EAASK,oBAATR,QAAAC,GAcL,OAAOjF,QAzCA,GCWF8Z,EAAN,iCAAMA,EASGvX,aANZxC,EAAAzB,KAAA,SAAS,OAQLA,KAAKiE,IAAMA,eAIT5E,IAAA,gBAAN,6BAAAQ,EAAA4b,EAAAb,GAAA3B,MAAA,SAAAyC,QAEQC,oFAAiBC,EAAKC,wBAEF,OAFpBF,EAAQG,EAAA1F,MAEC2F,OAAc,yCAChB,oCAOJJ,EAAStT,kDAZpBxI,MAgBMR,IAAA,gBAAN,6BAAAQ,EAAA4b,EAAAb,GAAA3B,MAAA,SAAAyC,QAEQC,oFAAiBC,EAAKC,wBAEF,OAFpBF,EAAQG,EAAA1F,MAEC2F,OAAc,yCAChB,oCAOJJ,EAAStY,kDAZpBxD,MAoBAR,IAAA,kBAAA,SAAUuW,GAEN,OADA5V,KAAK4V,OAASA,EAAOhR,cACd5E,QAaXX,IAAA,2BAAA,SAAmBic,GAEf,OAAOU,MAAMhc,KAAKiE,IAAIf,WAAY,CAC9B0S,OAAQ5V,KAAK4V,OACbnD,KAAM1K,KAAKC,UAAUiT,EAAQgB,iBAAiBX,IAC9CY,QAAS,CACL,eAAgB,yBAMtB7c,IAAA,oBAAN,6BAAAQ,EAAA4b,EAAAb,GAAA3B,MAAA,SAAAyC,QAEQC,EAEItK,oFAFa2K,MAAMJ,EAAK3X,IAAIf,WAAY,CAAC0S,OAAQgG,EAAKhG,uBACtC,OADpB+F,EAAQG,EAAA1F,MACC2F,UACL1K,EAAQnB,EAAWiM,mBACjBC,QAAS,0BAAkC5Y,OAAToY,EAAK3X,IAAI,sDAAsD0X,EAASI,QAChH1K,EAAMY,0BAEH0J,6CARX9b,SA9EG,GCXMwc,EAAN,iCAAMA,EASGnY,GACR,iBAAQA,GACJ,KAAKmY,EAAQC,KACTtc,KAAKiE,IAAM,IAAIsY,IAAIC,UAAY,mBAAoBC,OAAOC,SAASC,MACnE3c,KAAKiE,IAAI2Y,aAAaC,IAAI,KAAMC,OAAOja,IACvC,MACJ,KAAKwZ,EAAQU,OACT/c,KAAKiE,IAAM,IAAIsY,IAAIC,UAAY,yBAA0BC,OAAOC,SAASC,MACzE3c,KAAKiE,IAAI2Y,aAAaC,IAAI,KAAMC,OAAOja,IACvC,MACJ,KAAKwZ,EAAQW,MACThd,KAAKiE,IAAM,IAAIsY,IAAIC,UAAY,oBAAqBC,OAAOC,SAASC,MACpE,MACJ,KAAKN,EAAQY,KACTjd,KAAKiE,IAAM,IAAIsY,IAAIC,UAAY,WAAYC,OAAOC,SAASC,MAC3D3c,KAAKiE,IAAI2Y,aAAaC,IAAI,KAAM,QAChC7c,KAAKiE,IAAI2Y,aAAaC,IAAI,KAAMC,OAAOja,IACvC,MACJ,KAAKwZ,EAAQa,KACTld,KAAKiE,IAAM,IAAIsY,IAAIC,UAAY,WAAYC,OAAOC,SAASC,MAC3D3c,KAAKiE,IAAI2Y,aAAaC,IAAI,KAAMC,OAAOja,kBAMnDxD,IAAA,oBAAA,SAAYA,EAAKG,GAEb,OADAQ,KAAKiE,IAAI2Y,aAAaC,IAAIxd,EAAKG,GACxBQ,QAGXX,IAAA,iBAAA,WACI,OAAOW,KAAKiE,IAAIf,cAGpB7D,IAAA,gBAAA,WACI,OAAOW,KAAKiE,IAAI2Y,aAAaO,IAAId,EAAQe,SAI7C/d,IAAA,kBAAA,WACI,OAAO,IAAImc,EAAYxb,KAAKiE,UAGzB5E,IAAA,mBAAP,SAAkBuX,GACd,OAAQ,IAAIyF,EAAQrc,KAAKsc,MACpBxJ,YAAYuJ,EAAQe,KAAMxG,MAG5BvX,IAAA,qBAAP,WACI,OAAO,IAAIgd,EAAQrc,KAAK+c,WAGrB1d,IAAA,oBAAP,SAAmBwD,EAAIwa,GACnB,IAAIC,EAAU,IAAIjB,EAAQrc,KAAKgd,OAC/B,QAAkB,IAAPna,EACP,MAAM,IAAI0H,MAAM,6BAMpB,OAJA+S,EAAQxK,YAAY,QAASjQ,QACR,IAAVwa,GACPC,EAAQxK,YAAY,QAASuK,GAE1BC,KAGJje,IAAA,mBAAP,SAAkBwD,GACd,IAAIya,EAAU,IAAIjB,EAAQrc,KAAKid,MAI/B,YAHkB,IAAPpa,GACPya,EAAQxK,YAAY,KAAMjQ,GAEvBya,QA/ER,GAEH7b,EAFS4a,EAEF,OAAO,QACd5a,EAHS4a,EAGF,SAAS,UAChB5a,EAJS4a,EAIF,OAAO,QACd5a,EALS4a,EAKF,OAAO,QACd5a,EANS4a,EAMF,OAAO,QACd5a,EAPS4a,EAOF,QAAQ,SCTJ,MAAMkB,EAAN,iCAAMA,EAELC,aACRxd,KAAKwd,KAAOA,eAShBne,IAAA,6BAAA,WACI,MAAQ,GAA6BmE,OAA3BxD,KAAKwd,KAAKC,cAAc,KAA6Dja,QAAzDxD,KAAKwd,KAAKE,WAAa,GAAGxa,WAAWya,SAAS,EAAG,KAAK,KAAsDna,OAAnDxD,KAAKwd,KAAKI,UAAU1a,WAAWya,SAAS,EAAG,KAAK,KAAuDna,OAApDxD,KAAKwd,KAAKK,WAAW3a,WAAWya,SAAS,EAAG,KAAK,KAAyDna,OAAtDxD,KAAKwd,KAAKM,aAAa5a,WAAWya,SAAS,EAAG,KAAK,KAAsDna,OAAnDxD,KAAKwd,KAAKO,aAAa7a,WAAWya,SAAS,EAAG,WANvSte,IAAA,sBAAP,SAAqB2e,GAEjB,OAAO,IAAIT,EADA,IAAIU,KAAKD,UARb,GCOfvB,OAAc,OAMVhb,EANWyc,EAAG,iCAAMC,gCAEb9e,IAAA,iBAAP,SAAgBwE,GACZ,OAAOb,EAAKwI,SAAS3H,MAMlBxE,IAAA,yBAAP,SAAwBwD,GACpB,OAAOqN,EAAWkO,YAAYvb,MAG3BxD,IAAA,wBAAP,WACI6Q,EAAWmO,oBAIRhf,IAAA,sBAAP,SAAqBif,GACjB,OAAOjC,EAAQkC,WAAWD,MAGvBjf,IAAA,qBAAP,WACI,OAAOgd,EAAQmC,kBAGZnf,IAAA,4BAAP,SAA2BwE,GACvB,OAAOD,EAAc8E,eAAe7E,MASjCxE,IAAA,2BAAP,SAA0B+L,EAAQ/C,GAC9B,OAAOiC,EAASb,eAAe2B,EAAQ/C,MAMpChJ,IAAA,6BAAP,WACI,OAAO6Q,EAAWiM,wBA5CR,GAMP,YAAYoB,GACnB9b,EAAAyc,EAAO,UAAU7B,GAAQ6B","sources":["node_modules/@swc/helpers/src/_async_to_generator.js","node_modules/@swc/helpers/src/_class_call_check.js","node_modules/@swc/helpers/src/_create_class.js","node_modules/@swc/helpers/src/_define_property.js","js/packages/combo/Boolean.js","js/packages/combo/Logger.js","node_modules/nanoid/index.browser.js","js/packages/combo/Html.js","js/packages/combo/FormMetaField.js","js/packages/combo/FormMetaTab.js","js/packages/combo/FormMeta.js","%3C%3Cjsx-config-pragma.js%3E%3E","bootstrap.js","js/packages/combo/ComboModal.js","node_modules/@swc/helpers/src/_type_of.js","node_modules/regenerator-runtime/runtime.js","js/packages/combo/Browser.js","js/packages/combo/DokuRequest.js","js/packages/combo/DokuUrl.js","js/packages/combo/ComboDate.js","js/packages/combo/combo.js"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n","\n\nexport default class Boolean {\n\n static toBoolean(value) {\n if (typeof value === \"boolean\") {\n return value;\n }\n return (value === 'true');\n }\n}\n","\nlet logger;\n\n// KISS for now\n// Otherwise, see https://datacadamia.com/web/javascript/logger#library\nexport default class Logger {\n\n static getLogger(){\n if(logger===undefined){\n logger = new Logger();\n }\n return logger;\n }\n\n error(value){\n console.error(value);\n /**\n * Removed by parcel when build\n * https://parceljs.org/features/production/#development-branch-removal\n * And set by Jest to test\n * https://jestjs.io/docs/environment-variables#node_env\n */\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(value);\n }\n }\n\n\n}\n","import { urlAlphabet } from './url-alphabet/index.js'\nif (process.env.NODE_ENV !== 'production') {\n if (\n typeof navigator !== 'undefined' &&\n navigator.product === 'ReactNative' &&\n typeof crypto === 'undefined'\n ) {\n throw new Error(\n 'React Native does not have a built-in secure random generator. ' +\n 'If you don’t need unpredictable IDs use `nanoid/non-secure`. ' +\n 'For secure IDs, import `react-native-get-random-values` ' +\n 'before Nano ID.'\n )\n }\n if (typeof msCrypto !== 'undefined' && typeof crypto === 'undefined') {\n throw new Error(\n 'Import file with `if (!window.crypto) window.crypto = window.msCrypto`' +\n ' before importing Nano ID to fix IE 11 support'\n )\n }\n if (typeof crypto === 'undefined') {\n throw new Error(\n 'Your browser does not have secure random generator. ' +\n 'If you don’t need unpredictable IDs, you can use nanoid/non-secure.'\n )\n }\n}\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, size, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * size) / alphabet.length)\n return () => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size) => customRandom(alphabet, size, random)\nlet nanoid = (size = 21) => {\n let id = ''\n let bytes = crypto.getRandomValues(new Uint8Array(size))\n while (size--) {\n let byte = bytes[size] & 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte < 63) {\n id += '_'\n } else {\n id += '-'\n }\n }\n return id\n}\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","import {customAlphabet} from \"nanoid\";\n\nexport default class Html {\n\n static toHtmlId(s) {\n /**\n * A point is also replaced otherwise you\n * can't use the id as selector in CSS\n */\n return s\n .toString() // in case of number\n .replace(/[_.\\s:\\/\\\\]/g, \"-\");\n }\n\n static createRandomId() {\n /**\n * Shorthand selector does not support numbers\n * as first position\n * The alphabet does not allow them then\n */\n const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz', 10)\n return nanoid();\n }\n\n static toEntities(text) {\n let entities = [];\n for (let i = 0; i < text.length; i++) {\n let entity = `&#${text.charCodeAt(i)};`\n entities.push(entity);\n }\n return entities.join('');\n }\n}\n","import Boolean from \"./Boolean\";\nimport Logger from \"./Logger\";\nimport Html from \"./Html\";\n\n\n/**\n * A form field may hold:\n * * a simple scalar value\n * * or a table (list of values)\n */\nexport default class FormMetaField {\n\n\n tab = \"unknown\";\n mutable = true;\n values = [];\n defaultValues = [];\n multiple = false;\n\n /**\n * Static const function\n * Waiting for the const keyword\n * to make them not mutable\n * @type {string}\n */\n static TABULAR_TYPE = \"tabular\";\n static DATE_TIME = \"datetime\";\n static PARAGRAPH = \"paragraph\";\n static BOOLEAN = \"boolean\";\n\n children = {};\n static JSON = \"json\";\n\n\n constructor(name) {\n this.name = name;\n }\n\n getLabelAnchor() {\n if (this.getUrl() === undefined && this.getDescription() === undefined) {\n return this.getLabel();\n }\n let url = this.getUrl();\n if (this.getUrl() === undefined) {\n url = \"#\";\n return `\n<span class=\"d-inline-block\" tabindex=\"0\" data-bs-toggle=\"tooltip\" title=\"${this.getDescription()}\">\n <a href=\"${url}\" title=\"${this.getDescription()}\" style=\"text-decoration:none;pointer-events: none;\">${this.getLabel()}</a>\n</span>`;\n } else {\n return `<a href=\"${url}\" title=\"${this.getDescription()}\" data-bs-toggle=\"tooltip\" style=\"text-decoration:none\" target=\"_blank\">${this.getLabel()}</a>`;\n }\n }\n\n /**\n * The form field type\n * @param {string} type\n * @return {FormMetaField}\n */\n setType(type) {\n this.type = type;\n return this;\n }\n\n /**\n * The global label\n * (should be not null in case of tabular data)\n * @param {string} label\n * @return {FormMetaField}\n */\n setLabel(label) {\n this.label = label;\n return this;\n }\n\n /**\n * The global Url\n * (should be not null in case of tabular data)\n * @param {string} url\n * @return {FormMetaField}\n */\n setUrl(url) {\n this.url = url;\n return this;\n }\n\n\n /**\n * @param value\n * @param defaultValue\n * @return {FormMetaField}\n */\n addValue(value, defaultValue) {\n this.values.push(value);\n this.defaultValues.push(defaultValue);\n return this;\n }\n\n\n getType() {\n return this.type;\n }\n\n getLabel() {\n if (this.label === undefined) {\n return this.getName()\n .split(/[_\\-]/)\n .map(word => word.charAt(0).toUpperCase() + word.slice(1))\n .join(\" \");\n }\n return this.label;\n }\n\n getUrl() {\n return this.url;\n }\n\n getName() {\n return this.name;\n }\n\n getDescription() {\n return this.description;\n }\n\n getTab() {\n return this.tab;\n }\n\n /**\n *\n * @param json\n * @param {FormMetaField} parent\n * @return {FormMetaField}\n */\n static createFromJson(json, parent = null) {\n if (!json.hasOwnProperty(\"name\")) {\n Logger.getLogger().error(\"To create a form meta field, the name property is mandatory.\");\n }\n let name = json[\"name\"];\n let formMetaField = FormMetaField.createFromName(name);\n if (parent != null) {\n formMetaField.setParent(parent);\n }\n\n let value;\n let valueDefault;\n for (let property in json) {\n if (!json.hasOwnProperty(property)) {\n continue;\n }\n let jsonValue = json[property];\n switch (property) {\n case \"name\":\n continue;\n case \"label\":\n formMetaField.setLabel(jsonValue);\n continue;\n case \"tab\":\n formMetaField.setTab(jsonValue);\n continue;\n case \"type\":\n formMetaField.setType(jsonValue);\n continue;\n case \"mutable\":\n formMetaField.setMutable(jsonValue);\n continue;\n case \"description\":\n formMetaField.setDescription(jsonValue);\n continue;\n case \"url\":\n formMetaField.setUrl(jsonValue);\n continue;\n case \"value\":\n value = jsonValue;\n continue;\n case \"default\":\n valueDefault = jsonValue;\n continue;\n case \"domain-values\":\n formMetaField.setDomainValues(jsonValue);\n continue;\n case \"multiple\":\n formMetaField.setMultiple(jsonValue);\n continue;\n case \"width\":\n formMetaField.setControlWidth(jsonValue);\n continue;\n case \"children\":\n let jsonChildren = jsonValue;\n for (let jsonChildProp in jsonChildren) {\n if (!jsonChildren.hasOwnProperty(jsonChildProp)) {\n continue;\n }\n let child = FormMetaField.createFromJson(jsonChildren[jsonChildProp], formMetaField);\n formMetaField.addChild(child);\n }\n continue;\n default:\n Logger.getLogger().error(`The property (${property}) of the form (${name}) is unknown`);\n }\n }\n if (!Array.isArray(value)) {\n formMetaField.addValue(value, valueDefault);\n } else {\n value.forEach((element, index) => {\n let valueDefaultElement = valueDefault[index];\n if (valueDefaultElement !== undefined) {\n formMetaField.addValue(element, valueDefaultElement);\n } else {\n formMetaField.addValue(element);\n }\n })\n }\n return formMetaField;\n }\n\n setMultiple(multiple) {\n this.multiple = multiple;\n return this;\n }\n\n setParent(parent) {\n this.parent = parent;\n return this;\n }\n\n /**\n *\n * @param name\n * @return {FormMetaField}\n */\n static createFromName(name) {\n return new FormMetaField(name);\n }\n\n isMutable() {\n return this.mutable;\n }\n\n setTab(value) {\n this.tab = value;\n return this;\n }\n\n /**\n *\n * @param {boolean} value\n */\n setMutable(value) {\n this.mutable = Boolean.toBoolean(value);\n return this;\n }\n\n setDescription(value) {\n this.description = value;\n return this;\n }\n\n getDefaultValue() {\n return this.defaultValues[0];\n }\n\n getValue() {\n return this.values[0];\n }\n\n getDomainValues() {\n return this.domainValues;\n }\n\n setDomainValues(value) {\n if (!Array.isArray(value)) {\n console.error(`The domains values should be an array. (${value}) is not an array`);\n return;\n }\n this.domainValues = value;\n return this;\n }\n\n /**\n *\n * @param width - the width of the control, not of the label as it can be derived - in a tabular form, there is none, otherwise the {@link FormMetaTab.getWidth total width} of the tab minus this control width)\n * @return {FormMetaField}\n */\n setControlWidth(width) {\n this.width = width;\n return this;\n }\n\n getControlWidth() {\n if (this.width === undefined && this.parent !== undefined) {\n return 12 / this.parent.getChildren().length;\n }\n return this.width;\n }\n\n getValues() {\n return this.values;\n }\n\n getDefaultValues() {\n return this.defaultValues;\n }\n\n /**\n *\n * @return {FormMetaField[]}\n *\n * See also the concept of list of objects\n * https://react-jsonschema-form.readthedocs.io/en/latest/usage/arrays/#arrays-of-objects\n *\n */\n getChildren() {\n return Object.values(this.children);\n }\n\n addChild(child) {\n this.children[child.getName()] = child;\n return this;\n }\n\n toHtmlLabel(forId, customClass) {\n let label = this.getLabelAnchor();\n let classLabel;\n if (this.getType() === FormMetaField.BOOLEAN) {\n classLabel = \"form-check-label\"\n } else {\n classLabel = \"col-form-label\";\n }\n if(typeof customClass !== 'undefined'){\n classLabel =`${customClass} ${classLabel}`\n }\n return `<label for=\"${forId}\" class=\"${classLabel}\">${label}</label>`\n }\n\n toHtmlControl(id, value = null, defaultValue = null) {\n\n let metadataType = this.getType();\n let mutable = this.isMutable();\n let domainValues = this.getDomainValues();\n let disabled;\n let htmlElement;\n\n /**\n * The creation of the form element\n */\n if (domainValues !== undefined) {\n\n /**\n * Select element\n * @type {string}\n */\n htmlElement = \"select\";\n let defaultValueHtml = \"\";\n if (defaultValue !== undefined) {\n defaultValueHtml = ` (${defaultValue})`;\n }\n\n let multiple = \"\";\n if (this.getMultiple()) {\n multiple = \"multiple\";\n }\n\n htmlElement = `<select class=\"form-select\" aria-label=\"${this.getLabel()}\" name=\"${this.getName()}\" id=\"${id}\" ${multiple}>`;\n let selected = \"\";\n if (value === null) {\n selected = \"selected\";\n }\n htmlElement += `<option value=\"\" ${selected}>Default${defaultValueHtml}</option>`;\n for (let selectValue of domainValues) {\n if (selectValue === value) {\n selected = \"selected\";\n } else {\n selected = \"\";\n }\n htmlElement += `<option value=\"${selectValue}\" ${selected}>${selectValue}</option>`;\n }\n htmlElement += `</select>`;\n return htmlElement;\n\n\n } else {\n\n /**\n * Placeholder default\n * @type {string}\n */\n let placeholderValue = `No value`;\n if (mutable) {\n placeholderValue = `Enter a ${this.getLabel()}`;\n }\n // value\n if (!(defaultValue === null || defaultValue === undefined)) {\n if (typeof defaultValue === 'string' || defaultValue instanceof String) {\n // json data for instance\n placeholderValue = Html.toEntities(defaultValue);\n } else {\n placeholderValue = defaultValue;\n }\n }\n let htmlPlaceholder = `placeholder=\"${placeholderValue}\"`;\n\n let htmlValue = \"\";\n let inputType;\n let name = this.getName();\n\n /**\n * With disable, the data is not in the form\n */\n if (mutable !== undefined && mutable === false) {\n disabled = \"disabled\";\n } else {\n disabled = \"\";\n }\n\n /**\n * Input Element\n * @type {string}\n */\n let htmlTag = \"input\";\n let htmlClass = \"form-control\";\n let checked = \"\";\n /**\n * Text area\n */\n let rows = 3;\n\n /**\n * Type ?\n */\n switch (metadataType) {\n case FormMetaField.DATE_TIME:\n inputType = \"datetime-local\";\n if (value !== null) {\n value = value.slice(0, 19);\n htmlValue = `value=\"${value}\"`;\n } else {\n if (!mutable && defaultValue !== null) {\n defaultValue = defaultValue.slice(0, 19);\n htmlValue = `value=\"${defaultValue}\"`;\n }\n }\n htmlPlaceholder = \"\"; // does not apply to local date time\n\n break;\n case FormMetaField.PARAGRAPH:\n htmlTag = \"textarea\";\n if (value !== null) {\n value = Html.toEntities(value);\n htmlValue = `${value}`;\n }\n break;\n case FormMetaField.JSON:\n htmlTag = \"textarea\";\n if (value !== null) {\n if(typeof value === 'object'){\n value = JSON.stringify(value, null, 2);\n }\n value = Html.toEntities(value);\n htmlValue = `${value}`;\n }\n rows = 15;\n break;\n case FormMetaField.BOOLEAN:\n inputType = \"checkbox\";\n htmlClass = \"form-check-input\";\n if (defaultValue !== null) {\n htmlValue = `value=\"${defaultValue}\"`;\n if (value === defaultValue) {\n checked = \"checked\"\n }\n } else {\n if (value === \"on\") {\n checked = \"checked\"\n }\n }\n\n htmlPlaceholder = \"\";\n break;\n default:\n inputType = \"text\";\n if (!(value === null || value === undefined)) {\n htmlValue = `value=\"${value}\"`;\n }\n }\n\n switch (htmlTag) {\n case \"textarea\":\n htmlElement = `<textarea id=\"${id}\" name=\"${name}\" class=\"${htmlClass}\" rows=\"${rows}\" ${htmlPlaceholder} ${disabled}>${htmlValue}</textarea>`;\n break;\n default:\n case \"input\":\n htmlElement = `<input type=\"${inputType}\" name=\"${name}\" class=\"${htmlClass}\" id=\"${id}\" ${htmlPlaceholder} ${htmlValue} ${checked} ${disabled}/>`;\n break;\n\n }\n return htmlElement;\n }\n\n }\n\n /**\n * Added to be able to add metadata to the returned Json Form\n * It has not yet all properties\n * @return\n */\n toJavascriptObject() {\n return {\n \"name\": this.getName(),\n \"label\": this.getLabel(),\n \"type\": this.getType(),\n \"description\": this.getDescription(),\n \"tab\": this.getTab(),\n \"mutable\": this.isMutable(),\n \"value\": this.getValue(),\n \"default\": this.getDefaultValue(),\n \"url\": this.getUrl()\n }\n }\n\n getMultiple() {\n return this.multiple;\n }\n}\n","import Logger from \"./Logger\";\n\n\nexport default class FormMetaTab {\n\n\n constructor(name) {\n this.name = name;\n }\n\n getName() {\n return this.name;\n }\n\n setWidth(width) {\n this.width = width;\n }\n\n /**\n * The width of the tab\n */\n getWidth() {\n return this.width;\n }\n\n static createFromJson(json) {\n if (!json.hasOwnProperty(\"name\")) {\n Logger.getLogger().error(\"A name property is mandatory to create a tab and was not found in the json provided\")\n }\n let name = json[\"name\"];\n let tab = new FormMetaTab(name);\n for (let property in json) {\n if (!json.hasOwnProperty(property)) {\n continue;\n }\n let jsonValue = json[property];\n switch (property) {\n case \"name\":\n continue;\n case \"label\":\n tab.setLabel(jsonValue);\n continue;\n case \"width-field\":\n tab.setWidthField(jsonValue);\n continue;\n case \"width-label\":\n tab.setWidthLabel(jsonValue);\n continue;\n default:\n Logger.getLogger().error(`The property (${property}) of the tab (${name}) is unknown`);\n }\n }\n return tab;\n }\n\n setLabel(label) {\n this.label = label;\n return this;\n }\n\n getLabel(){\n if(this.label===undefined){\n return this.name;\n }\n return this.label;\n }\n\n setWidthField(width) {\n this.widthField = width;\n return this;\n }\n\n setWidthLabel(width) {\n this.widthLabel = width;\n return this;\n }\n\n getLabelWidth(){\n if(this.widthLabel===undefined){\n return 3;\n }\n return this.widthLabel;\n }\n\n getFieldWidth(){\n if(this.widthField===undefined){\n return 12 - this.getLabelWidth();\n }\n return this.widthField;\n }\n\n static createFromName(name) {\n return new FormMetaTab(name);\n }\n}\n","'use strict';\n\nimport FormMetaField from \"./FormMetaField\";\nimport FormMetaTab from \"./FormMetaTab\";\nimport Html from \"./Html\";\nimport Logger from \"./Logger\";\n\n/**\n * Represent the top meta\n * data from a form\n */\nexport default class FormMeta {\n\n formFields = {};\n tabs = {};\n width = 8;\n\n\n constructor(id) {\n\n if (id == null) {\n throw new Error(\"The if of the form should not be null\");\n }\n this.name = id;\n }\n\n /**\n * @return string\n */\n getLabel() {\n return this.label;\n }\n\n getUrl() {\n return this.url;\n }\n\n getId() {\n return this.name;\n }\n\n /**\n * The width of the control\n * if there is no tab\n * @return {number|*}\n */\n getControlWidth() {\n return this.width;\n }\n\n getLabelWidth() {\n return 12 - this.getControlWidth();\n }\n\n\n /**\n *\n * @param {string} formId\n * @param {Object} json\n * @return {FormMeta}\n */\n static createFromJson(formId, json) {\n let form = FormMeta.createFromId(formId);\n for (let prop in json) {\n if (!json.hasOwnProperty(prop)) {\n continue;\n }\n let value = json[prop];\n switch (prop) {\n case \"fields\":\n let fields = value;\n for (let field in fields) {\n if (fields.hasOwnProperty(field)) {\n form.addFormField(FormMetaField.createFromJson(fields[field]));\n }\n }\n continue;\n case \"tabs\":\n let tabs = value;\n for (let tab in tabs) {\n if (tabs.hasOwnProperty(tab)) {\n form.addTab(FormMetaTab.createFromJson(tabs[tab]));\n }\n }\n break;\n case \"width\":\n form.setControlWidth(value);\n break;\n case \"label\":\n form.setLabel(value);\n break;\n case \"url\":\n form.setUrl(value);\n break;\n default:\n Logger.getLogger().error(`The form property (${prop}) is unknown`);\n }\n\n\n }\n return form;\n }\n\n /**\n *\n * @param id\n * @return {FormMeta}\n */\n static createFromId(id) {\n return new FormMeta(id);\n }\n\n /**\n *\n * @param {FormMetaField} formField\n * @return {FormMeta}\n */\n addFormField(formField) {\n this.formFields[formField.getName()] = formField;\n // Be sure to have a tab for each field\n if (!this.tabs.hasOwnProperty(formField.getTab())) {\n this.tabs[formField.getTab()] = FormMetaTab.createFromName(formField.getTab());\n }\n return this;\n }\n\n /**\n *\n * @return {FormMetaField[]}\n */\n getFields() {\n return Object.values(this.formFields);\n }\n\n /**\n *\n * @return {FormMetaTab[]}\n */\n getTabs() {\n return Object.values(this.tabs);\n }\n\n addTab(formMetaTab) {\n this.tabs[formMetaTab.getName()] = formMetaTab;\n }\n\n valueOf() {\n return this.getId();\n };\n\n getFieldsForTab(tabName) {\n return this.getFields().filter(e => e.getTab() === tabName);\n }\n\n toHtmlElement() {\n\n let formId = this.getId();\n\n /**\n * Creating the Body\n * (Starting with the tabs)\n */\n let htmlTabNavs = '<ul class=\"nav nav-tabs mb-3\">';\n let activeClass;\n let ariaSelected;\n /**\n * @param {FormMetaTab} tab\n * @return string\n */\n this.getTabPaneId = function (tab) {\n let htmlId = Html.toHtmlId(tab.getName());\n return `${formId}-tab-pane-${htmlId}`;\n }\n /**\n * @param {FormMetaTab} tab\n * @return string\n */\n this.getTabNavId = function (/** @type {FormMetaTab}*/ tab) {\n let htmlId = Html.toHtmlId(tab.getName());\n return `${formId}-tab-nav-${htmlId}`;\n }\n this.getControlId = function (id) {\n let htmlId = Html.toHtmlId(id);\n return `${formId}-control-${htmlId}`;\n }\n let tabsMeta = this.getTabs();\n let defaultTab = tabsMeta[0];\n for (let tab of tabsMeta) {\n if (Object.is(tab, defaultTab)) {\n activeClass = \"active\";\n ariaSelected = \"true\";\n } else {\n activeClass = \"\";\n ariaSelected = \"false\";\n }\n let tabLabel = tab.getLabel();\n let tabPanId = this.getTabPaneId(tab);\n let tabNavId = this.getTabNavId(tab);\n htmlTabNavs += `\n<li class=\"nav-item\">\n<button\n class=\"nav-link ${activeClass}\"\n id=\"${tabNavId}\"\n type=\"button\"\n role=\"tab\"\n aria-selected = \"${ariaSelected}\"\n aria-controls = \"${tabPanId}\"\n data-bs-toggle = \"tab\"\n data-bs-target = \"#${tabPanId}\" >${tabLabel}\n </button>\n</li>`\n }\n htmlTabNavs += '</ul>';\n\n /**\n * Creating the content\n * @type {string}\n */\n let htmlTabPans = \"<div class=\\\"tab-content\\\">\";\n let rightColSize;\n let leftColSize;\n let elementIdCounter = 0;\n for (let tab of tabsMeta) {\n let tabPaneId = this.getTabPaneId(tab);\n let tabNavId = this.getTabNavId(tab);\n if (tab === defaultTab) {\n activeClass = \"active\";\n } else {\n activeClass = \"\";\n }\n htmlTabPans += `<div class=\"tab-pane ${activeClass}\" id=\"${tabPaneId}\" role=\"tabpanel\" aria-labelledby=\"${tabNavId}\">`;\n leftColSize = tab.getLabelWidth();\n rightColSize = tab.getFieldWidth();\n\n let fieldsForTab = this.getFieldsForTab(tab.getName());\n\n /**\n * Case one field without children\n * It should take the whole space\n */\n if (fieldsForTab.length === 1) {\n let formField = fieldsForTab[0];\n if (formField.getChildren().length === 0) {\n elementIdCounter++;\n let elementId = this.getControlId(elementIdCounter);\n let labelHtml = formField.toHtmlLabel(elementId);\n let value = formField.getValue();\n let defaultValue = formField.getDefaultValue();\n let controlHtml = formField.toHtmlControl(elementId, value, defaultValue)\n htmlTabPans += `\n<div class=\"row mb-3 text-center\"><div class=\"col-sm-12\">${labelHtml}</div></div>\n<div class=\"row mb-3\"><div class=\"col-sm-12\">${controlHtml}</div></div>\n`;\n htmlTabPans += \"</div>\"; // close the pan\n continue;\n }\n\n }\n\n for (let formField of fieldsForTab) {\n\n let children = formField.getChildren();\n switch (children.length) {\n case 0:\n elementIdCounter++;\n let elementId = this.getControlId(elementIdCounter);\n let labelHtml = formField.toHtmlLabel(elementId, `col-sm-${leftColSize}`);\n let value = formField.getValue();\n let defaultValue = formField.getDefaultValue();\n let controlHtml = formField.toHtmlControl(elementId, value, defaultValue)\n htmlTabPans += `\n<div class=\"row mb-3\">\n ${labelHtml}\n <div class=\"col-sm-${rightColSize}\">${controlHtml}</div>\n</div>\n`;\n break;\n default:\n let url = formField.getLabelAnchor();\n htmlTabPans += `<div class=\"row mb-3 text-center\">${url}</div>`;\n htmlTabPans += `<div class=\"row mb-3\">`;\n let rows = 0;\n for (const child of formField.getChildren()) {\n let width = child.getControlWidth();\n htmlTabPans += `<div class=\"col-sm-${width} text-center\">`;\n htmlTabPans += child.getLabelAnchor();\n htmlTabPans += `</div>`;\n let valuesLength = child.getValues().length;\n if (valuesLength > rows) {\n rows = valuesLength;\n }\n }\n htmlTabPans += `</div>`;\n\n for (let i = 0; i < rows; i++) {\n htmlTabPans += `<div class=\"row mb-3\">`;\n for (const child of formField.getChildren()) {\n let value = child.getValues()[i];\n let defaultValue = child.getDefaultValues()[i];\n elementIdCounter++;\n let elementId = this.getControlId(elementIdCounter);\n let width = child.getControlWidth();\n htmlTabPans += `<div class=\"col-sm-${width}\">`;\n htmlTabPans += child.toHtmlControl(elementId, value, defaultValue);\n htmlTabPans += `</div>`;\n }\n htmlTabPans += `</div>`;\n }\n\n break;\n\n }\n\n }\n htmlTabPans += \"</div>\";\n }\n htmlTabPans += \"</div>\";\n\n let form = document.createElement(\"form\");\n form.setAttribute(\"id\", formId);\n form.innerHTML = `${htmlTabNavs} ${htmlTabPans}`;\n return form;\n }\n\n\n setControlWidth(width) {\n this.width = width;\n return this;\n }\n\n setLabel(label) {\n this.label = label;\n }\n\n setUrl(url) {\n this.url = url;\n }\n\n}\n",null,"module.exports=bootstrap;","/**\n * A pointer to the created modals\n * Private\n */\nimport Html from \"./Html\";\nimport {Modal, Tooltip, Tab} from \"bootstrap\";\nimport Logger from \"./Logger\";\n\n/**\n *\n * @type {Object.<string, ComboModal>}\n */\nlet comboModals = {};\n\nexport default class ComboModal {\n\n\n footerButtons = [];\n bodies = [];\n isBuild = false;\n bodyStyles = {};\n dialogStyles = {};\n showFooter = true;\n dialogClasses = [];\n\n /**\n * A valid HTML id\n * @param modalId\n */\n constructor(modalId) {\n\n this.modalId = modalId;\n /**\n * We create the modal root because developers may want to add\n * event on it right away\n * @type {HTMLDivElement}\n */\n let queryElement = document.getElementById(modalId);\n if (queryElement !== null) {\n Logger.getLogger().error(`The id (${modalId}) given to create a modal was already used by an element in the DOM. We have reused it.`)\n this.modalRootHtmlElement = queryElement;\n this.reset();\n } else {\n this.modalRootHtmlElement = document.createElement(\"div\");\n this.modalRootHtmlElement.setAttribute(\"id\", this.modalId);\n this.modalRootHtmlElement.classList.add(\"modal\", \"fade\");\n // Uncaught RangeError: Maximum call stack size exceeded caused by the tabindex\n // modalRoot.setAttribute(\"tabindex\", \"-1\");\n this.modalRootHtmlElement.setAttribute(\"aria-hidden\", \"true\");\n }\n\n }\n\n setHeader(headerText) {\n this.headerText = headerText;\n return this;\n }\n\n /**\n * @param htmlBody\n * @return {ComboModal}\n */\n addBody(htmlBody) {\n\n this.bodies.push(htmlBody);\n return this;\n\n }\n\n addBodyStyle(property, value) {\n\n this.bodyStyles[property] = value;\n return this;\n\n }\n\n noFooter() {\n this.showFooter = false;\n return this;\n }\n\n addDialogStyle(property, value) {\n\n this.dialogStyles[property] = value;\n return this;\n\n }\n\n addDialogClass(value) {\n\n this.dialogClasses.push(value);\n return this;\n\n }\n\n /**\n * @return {ComboModal}\n */\n resetOnClose() {\n this.isResetOnClose = true;\n return this;\n }\n\n\n /**\n *\n * @type HTMLButtonElement|string htmlFooter\n */\n addFooterButton(htmlFooter) {\n\n this.footerButtons.push(htmlFooter);\n return this;\n }\n\n /**\n *\n * @return HTMLButtonElement the close button\n */\n addFooterCloseButton(label = \"Close\") {\n this.closeButton = document.createElement(\"button\");\n this.closeButton.classList.add(\"btn\", \"btn-secondary\")\n this.closeButton.innerHTML = label;\n let modal = this;\n this.closeButton.addEventListener(\"click\", function () {\n modal.bootStrapModal.hide();\n });\n this.addFooterButton(this.closeButton);\n return this;\n }\n\n /**\n * Center the modal\n * @return {ComboModal}\n */\n centered() {\n this.isCentered = true;\n return this;\n }\n\n show() {\n\n if (this.modalRootHtmlElement == null) {\n throw new Error(\"This modal has no HTML element, you can't use it anymore\");\n }\n\n if (!this.isBuild) {\n this.build();\n }\n\n /**\n * Reset on close ?\n * Included tabs does not work anymore\n * for whatever reason\n */\n if (this.isResetOnClose === true) {\n let comboModal = this;\n this.getElement().addEventListener('hidden.bs.modal', function () {\n /**\n * the event is only dispatch on the root element, not all modal\n */\n comboModal.reset();\n });\n }\n\n /**\n * Callback (Parent Child Relationship)\n */\n if (this.callBack !== undefined) {\n if (this.closeButton !== undefined) {\n let modal = this;\n this.closeButton.addEventListener(\"click\", function () {\n /**\n * Two modals cannot be open at the same time\n * https://getbootstrap.com/docs/5.0/components/modal/#toggle-between-modals\n */\n modal.dismissHide();\n modal.callBack();\n });\n }\n }\n\n this.bootStrapModal.show();\n\n\n }\n\n dismissHide() {\n if (this.bootStrapModal !== undefined) {\n this.bootStrapModal.hide();\n }\n }\n\n getModalId() {\n return this.modalId;\n }\n\n /**\n *\n * @param {function} callBack\n */\n setCallBackOnClose(callBack) {\n this.callBack = callBack;\n return this;\n }\n\n\n /**\n * Create a modal and return the modal content element\n * @return ComboModal\n */\n static createFromId(modalId) {\n let modal = new ComboModal(modalId);\n comboModals[modalId] = modal;\n return modal;\n }\n\n /**\n * @param modalId\n * @return {ComboModal}\n */\n static getModal = function (modalId) {\n\n if (modalId in comboModals) {\n return comboModals[modalId];\n } else {\n return null;\n }\n }\n\n /**\n * List the managed modals\n */\n static listModals = function () {\n console.log(Object.keys(comboModals).join(\", \"));\n }\n\n /**\n * Delete all modals\n */\n static resetAllModals = function () {\n for (let prop in comboModals) {\n if (comboModals.hasOwnProperty(prop)) {\n let modal = comboModals[prop];\n modal.reset();\n }\n }\n }\n\n /**\n *\n * @return {ComboModal}\n */\n static createTemporary() {\n return this.createFromId(Html.createRandomId());\n }\n\n getElement() {\n return this.modalRootHtmlElement;\n }\n\n /**\n * Calling the {@link show} function will build the\n * modal, if this is the case, you can't build it anymore\n * you need to {@link reset} it and recreate it if needed\n * @return {boolean}\n */\n wasBuild() {\n return this.isBuild;\n }\n\n setCentered(bool){\n this.isCentered = bool;\n return this;\n }\n resetIfBuild() {\n if (this.wasBuild()) {\n this.reset();\n }\n return this;\n }\n\n reset() {\n\n // DOM\n this.modalRootHtmlElement.querySelectorAll('[data-bs-toggle=\"tab\"]').forEach(tabTriggerElement => {\n let tab = Tab.getInstance(tabTriggerElement);\n if (tab !== null) {\n // tab are only created when the user click on them\n tab.dispose();\n }\n })\n\n /**\n * Bootstrap Modal\n * dispose should delete the root element\n * but it does not\n */\n if (this.bootStrapModal !== undefined) {\n this.dismissHide();\n }\n this.modalRootHtmlElement.innerHTML = \"\";\n\n /**\n * Content\n */\n this.isBuild = false;\n this.bodies = [];\n this.footerButtons = [];\n this.headerText = undefined;\n }\n\n /**\n * Build the modal\n */\n build() {\n\n this.isBuild = true;\n\n document.body.appendChild(this.modalRootHtmlElement);\n\n const modalManagerDialog = document.createElement(\"div\");\n modalManagerDialog.classList.add(\n \"modal-dialog\",\n \"modal-dialog-scrollable\",\n \"modal-lg\");\n if (this.isCentered) {\n modalManagerDialog.classList.add(\"modal-dialog-centered\")\n } else {\n // Get the modal more central but fix as we have tab and\n // we want still the mouse below the tab to be at the same position when we click\n modalManagerDialog.style.setProperty(\"margin\", \"5rem auto\");\n modalManagerDialog.style.setProperty(\"height\", \"calc(100% - 9rem)\");\n }\n for (let dialogStyleName in this.dialogStyles) {\n if (!this.dialogStyles.hasOwnProperty(dialogStyleName)) {\n continue;\n }\n modalManagerDialog.style.setProperty(dialogStyleName, this.dialogStyles[dialogStyleName]);\n }\n for (let dialogClass in this.dialogClasses){\n modalManagerDialog.classList.add(dialogClass);\n }\n this.modalRootHtmlElement.appendChild(modalManagerDialog);\n this.modalContent = document.createElement(\"div\");\n this.modalContent.classList.add(\"modal-content\");\n modalManagerDialog.appendChild(this.modalContent);\n\n this.modalBody = document.createElement(\"div\");\n this.modalBody.classList.add(\"modal-body\");\n for (let bodyStyleName in this.bodyStyles) {\n if (!this.bodyStyles.hasOwnProperty(bodyStyleName)) {\n continue;\n }\n this.modalBody.style.setProperty(bodyStyleName, this.bodyStyles[bodyStyleName]);\n }\n this.modalContent.appendChild(this.modalBody);\n\n\n /**\n * No need to use the global variable access mode (ie `bootstrap.Modal`)\n * It's created at build time\n * @type {Modal}\n */\n this.bootStrapModal = Modal.getInstance(this.modalRootHtmlElement);\n if (this.bootStrapModal === null) {\n /**\n * The bootstrap modal function\n * can only be invoked when the body element has been defined\n */\n let options = {\n \"backdrop\": true,\n \"keyboard\": true,\n \"focus\": true\n };\n this.bootStrapModal = new Modal(this.modalRootHtmlElement, options);\n }\n\n /**\n * Building the header\n */\n if (this.headerText !== undefined) {\n let headerHtml = `\n<div class=\"modal-header\">\n <h5 class=\"modal-title\">${this.headerText}</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n</div>\n`;\n this.modalContent.insertAdjacentHTML('afterbegin', headerHtml);\n }\n\n /**\n * Building the body\n */\n for (let body of this.bodies) {\n let type = typeof body;\n switch (type) {\n case \"string\":\n this.modalBody.insertAdjacentHTML('beforeend', body);\n break;\n default:\n case \"object\":\n this.modalBody.appendChild(body);\n break;\n }\n }\n\n /**\n * Footer button\n */\n if(this.showFooter) {\n let modalFooter = document.createElement(\"div\");\n modalFooter.classList.add(\"modal-footer\");\n this.modalContent.appendChild(modalFooter);\n\n if (this.footerButtons.length === 0) {\n this.addFooterCloseButton();\n }\n\n for (let footerButton of this.footerButtons) {\n if (typeof footerButton === 'string' || footerButton instanceof String) {\n modalFooter.insertAdjacentHTML('beforeend', footerButton);\n } else {\n modalFooter.appendChild(footerButton);\n }\n }\n }\n\n /**\n * Init the tooltip if any\n */\n let tooltipSelector = `#${this.modalId} [data-bs-toggle=\"tooltip\"]`;\n document.querySelectorAll(tooltipSelector).forEach(el => new Tooltip(el));\n }\n\n\n static getOrCreate(modalId) {\n let modal = ComboModal.getModal(modalId);\n if (modal === null) {\n modal = ComboModal.createFromId(modalId);\n }\n return modal;\n }\n}\n","export default function _typeof(obj) {\n \"@swc/helpers - typeof\";\n return obj && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source cod (…)
/plugin/combo/resources/library/combo/dist/
H A Dcombo.min.js.map1 {"mappings":"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","sources":["node_modules/@swc/helpers/src/_async_to_generator.js","node_modules/@swc/helpers/src/_class_call_check.js","node_modules/@swc/helpers/src/_create_class.js","node_modules/@swc/helpers/src/_define_property.js","resources/library/combo/Boolean.js","resources/library/combo/Logger.js","node_modules/nanoid/index.browser.js","resources/library/combo/Html.js","resources/library/combo/FormMetaField.js","resources/library/combo/FormMetaTab.js","resources/library/combo/FormMeta.js","%3C%3Cjsx-config-pragma.js%3E%3E","bootstrap.js","resources/library/combo/ComboModal.js","node_modules/@swc/helpers/src/_type_of.js","node_modules/regenerator-runtime/runtime.js","resources/library/combo/Browser.js","resources/library/combo/DokuRequest.js","resources/library/combo/ComboDate.js","resources/library/combo/combo.js"],"sourcesContent":["function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {\n try {\n var info = gen[key](arg);\n var value = info.value;\n } catch (error) {\n reject(error);\n return;\n }\n\n if (info.done) {\n resolve(value);\n } else {\n Promise.resolve(value).then(_next, _throw);\n }\n}\n\nexport default function _asyncToGenerator(fn) {\n return function () {\n var self = this,\n args = arguments;\n return new Promise(function (resolve, reject) {\n var gen = fn.apply(self, args);\n\n function _next(value) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"next\", value);\n }\n\n function _throw(err) {\n asyncGeneratorStep(gen, resolve, reject, _next, _throw, \"throw\", err);\n }\n\n _next(undefined);\n });\n };\n}\n","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n","\n\nexport default class Boolean {\n\n static toBoolean(value) {\n if (typeof value === \"boolean\") {\n return value;\n }\n return (value === 'true');\n }\n}\n","\nlet logger;\n\n// KISS for now\n// Otherwise, see https://datacadamia.com/web/javascript/logger#library\nexport default class Logger {\n\n static getLogger(){\n if(logger===undefined){\n logger = new Logger();\n }\n return logger;\n }\n\n error(value){\n console.error(value);\n /**\n * Removed by parcel when build\n * https://parceljs.org/features/production/#development-branch-removal\n * And set by Jest to test\n * https://jestjs.io/docs/environment-variables#node_env\n */\n if (process.env.NODE_ENV !== 'production') {\n throw new Error(value);\n }\n }\n\n\n}\n","import { urlAlphabet } from './url-alphabet/index.js'\nif (process.env.NODE_ENV !== 'production') {\n if (\n typeof navigator !== 'undefined' &&\n navigator.product === 'ReactNative' &&\n typeof crypto === 'undefined'\n ) {\n throw new Error(\n 'React Native does not have a built-in secure random generator. ' +\n 'If you don’t need unpredictable IDs use `nanoid/non-secure`. ' +\n 'For secure IDs, import `react-native-get-random-values` ' +\n 'before Nano ID.'\n )\n }\n if (typeof msCrypto !== 'undefined' && typeof crypto === 'undefined') {\n throw new Error(\n 'Import file with `if (!window.crypto) window.crypto = window.msCrypto`' +\n ' before importing Nano ID to fix IE 11 support'\n )\n }\n if (typeof crypto === 'undefined') {\n throw new Error(\n 'Your browser does not have secure random generator. ' +\n 'If you don’t need unpredictable IDs, you can use nanoid/non-secure.'\n )\n }\n}\nlet random = bytes => crypto.getRandomValues(new Uint8Array(bytes))\nlet customRandom = (alphabet, size, getRandom) => {\n let mask = (2 << (Math.log(alphabet.length - 1) / Math.LN2)) - 1\n let step = -~((1.6 * mask * size) / alphabet.length)\n return () => {\n let id = ''\n while (true) {\n let bytes = getRandom(step)\n let j = step\n while (j--) {\n id += alphabet[bytes[j] & mask] || ''\n if (id.length === size) return id\n }\n }\n }\n}\nlet customAlphabet = (alphabet, size) => customRandom(alphabet, size, random)\nlet nanoid = (size = 21) => {\n let id = ''\n let bytes = crypto.getRandomValues(new Uint8Array(size))\n while (size--) {\n let byte = bytes[size] & 63\n if (byte < 36) {\n id += byte.toString(36)\n } else if (byte < 62) {\n id += (byte - 26).toString(36).toUpperCase()\n } else if (byte < 63) {\n id += '_'\n } else {\n id += '-'\n }\n }\n return id\n}\nexport { nanoid, customAlphabet, customRandom, urlAlphabet, random }\n","import {customAlphabet, nanoid} from \"nanoid\";\n\nexport default class Html {\n\n static toHtmlId(s) {\n /**\n * A point is also replaced otherwise you\n * can't use the id as selector in CSS\n */\n return s\n .toString() // in case of number\n .replace(/[_.\\s:\\/\\\\]/g, \"-\");\n }\n\n static createRandomId() {\n /**\n * Shorthand selector does not support numbers\n * as first position\n * The alphabet does not allow them then\n */\n const nanoid = customAlphabet('abcdefghijklmnopqrstuvwxyz', 10)\n return nanoid();\n }\n\n static toEntities(text) {\n let entities = [];\n for (let i = 0; i < text.length; i++) {\n let entity = `&#${text[i].charCodeAt()};`\n entities.push(entity);\n }\n return entities.join('');\n }\n}\n","import Boolean from \"./Boolean\";\nimport Logger from \"./Logger\";\nimport Html from \"./Html\";\n\n\n/**\n * A form field may hold:\n * * a simple scalar value\n * * or a table (list of values)\n */\nexport default class FormMetaField {\n\n\n tab = \"unknown\";\n mutable = true;\n values = [];\n defaultValues = [];\n multiple = false;\n\n /**\n * Static const function\n * Waiting for the const keyword\n * to make them not mutable\n * @type {string}\n */\n static TABULAR_TYPE = \"tabular\";\n static DATE_TIME = \"datetime\";\n static PARAGRAPH = \"paragraph\";\n static BOOLEAN = \"boolean\";\n\n children = {};\n static JSON = \"json\";\n\n\n constructor(name) {\n this.name = name;\n }\n\n getLabelAnchor() {\n if (this.getUrl() === undefined && this.getDescription() === undefined) {\n return this.getLabel();\n }\n let url = this.getUrl();\n if (this.getUrl() === undefined) {\n url = \"#\";\n return `\n<span class=\"d-inline-block\" tabindex=\"0\" data-bs-toggle=\"tooltip\" title=\"${this.getDescription()}\">\n <a href=\"${url}\" title=\"${this.getDescription()}\" style=\"text-decoration:none;pointer-events: none;\">${this.getLabel()}</a>\n</span>`;\n } else {\n return `<a href=\"${url}\" title=\"${this.getDescription()}\" data-bs-toggle=\"tooltip\" style=\"text-decoration:none\" target=\"_blank\">${this.getLabel()}</a>`;\n }\n }\n\n /**\n * The form field type\n * @param {string} type\n * @return {FormMetaField}\n */\n setType(type) {\n this.type = type;\n return this;\n }\n\n /**\n * The global label\n * (should be not null in case of tabular data)\n * @param {string} label\n * @return {FormMetaField}\n */\n setLabel(label) {\n this.label = label;\n return this;\n }\n\n /**\n * The global Url\n * (should be not null in case of tabular data)\n * @param {string} url\n * @return {FormMetaField}\n */\n setUrl(url) {\n this.url = url;\n return this;\n }\n\n\n /**\n * @param value\n * @param defaultValue\n * @return {FormMetaField}\n */\n addValue(value, defaultValue) {\n this.values.push(value);\n this.defaultValues.push(defaultValue);\n return this;\n }\n\n\n getType() {\n return this.type;\n }\n\n getLabel() {\n if (this.label === undefined) {\n return this.getName()\n .split(/_|-/)\n .map(word => word.charAt(0).toUpperCase() + word.slice(1))\n .join(\" \");\n }\n return this.label;\n }\n\n getUrl() {\n return this.url;\n }\n\n getName() {\n return this.name;\n }\n\n getDescription() {\n return this.description;\n }\n\n getTab() {\n return this.tab;\n }\n\n /**\n *\n * @param json\n * @param {FormMetaField} parent\n * @return {FormMetaField}\n */\n static createFromJson(json, parent = null) {\n if (!json.hasOwnProperty(\"name\")) {\n Logger.getLogger().error(\"To create a form meta field, the name property is mandatory.\");\n }\n let name = json[\"name\"];\n let formMetaField = FormMetaField.createFromName(name);\n if (parent != null) {\n formMetaField.setParent(parent);\n }\n\n let value;\n let valueDefault;\n for (let property in json) {\n if (!json.hasOwnProperty(property)) {\n continue;\n }\n let jsonValue = json[property];\n switch (property) {\n case \"name\":\n continue;\n case \"label\":\n formMetaField.setLabel(jsonValue);\n continue;\n case \"tab\":\n formMetaField.setTab(jsonValue);\n continue;\n case \"type\":\n formMetaField.setType(jsonValue);\n continue;\n case \"mutable\":\n formMetaField.setMutable(jsonValue);\n continue;\n case \"description\":\n formMetaField.setDescription(jsonValue);\n continue;\n case \"url\":\n formMetaField.setUrl(jsonValue);\n continue;\n case \"value\":\n value = jsonValue;\n continue;\n case \"default\":\n valueDefault = jsonValue;\n continue;\n case \"domain-values\":\n formMetaField.setDomainValues(jsonValue);\n continue;\n case \"multiple\":\n formMetaField.setMultiple(jsonValue);\n continue;\n case \"width\":\n formMetaField.setControlWidth(jsonValue);\n continue;\n case \"children\":\n let jsonChildren = jsonValue;\n for (let jsonChildProp in jsonChildren) {\n if (!jsonChildren.hasOwnProperty(jsonChildProp)) {\n continue;\n }\n let child = FormMetaField.createFromJson(jsonChildren[jsonChildProp], formMetaField);\n formMetaField.addChild(child);\n }\n continue;\n default:\n Logger.getLogger().error(`The property (${property}) of the form (${name}) is unknown`);\n }\n }\n if (!Array.isArray(value)) {\n formMetaField.addValue(value, valueDefault);\n } else {\n value.forEach((element, index) => {\n let valueDefaultElement = valueDefault[index];\n if (valueDefaultElement !== undefined) {\n formMetaField.addValue(element, valueDefaultElement);\n } else {\n formMetaField.addValue(element);\n }\n })\n }\n return formMetaField;\n }\n\n setMultiple(multiple) {\n this.multiple = multiple;\n return this;\n }\n\n setParent(parent) {\n this.parent = parent;\n return this;\n }\n\n /**\n *\n * @param name\n * @return {FormMetaField}\n */\n static createFromName(name) {\n return new FormMetaField(name);\n }\n\n isMutable() {\n return this.mutable;\n }\n\n setTab(value) {\n this.tab = value;\n return this;\n }\n\n /**\n *\n * @param {boolean} value\n */\n setMutable(value) {\n this.mutable = Boolean.toBoolean(value);\n return this;\n }\n\n setDescription(value) {\n this.description = value;\n return this;\n }\n\n getDefaultValue() {\n return this.defaultValues[0];\n }\n\n getValue() {\n return this.values[0];\n }\n\n getDomainValues() {\n return this.domainValues;\n }\n\n setDomainValues(value) {\n if (!Array.isArray(value)) {\n console.error(`The domains values should be an array. (${value}) is not an array`);\n return;\n }\n this.domainValues = value;\n return this;\n }\n\n /**\n *\n * @param width - the width of the control, not of the label as it can be derived - in a tabular form, there is none, otherwise the {@link FormMetaTab.getWidth total width} of the tab minus this control width)\n * @return {FormMetaField}\n */\n setControlWidth(width) {\n this.width = width;\n return this;\n }\n\n getControlWidth() {\n if (this.width === undefined && this.parent !== undefined) {\n return 12 / this.parent.getChildren().length;\n }\n return this.width;\n }\n\n getValues() {\n return this.values;\n }\n\n getDefaultValues() {\n return this.defaultValues;\n }\n\n /**\n *\n * @return {FormMetaField[]}\n *\n * See also the concept of list of objects\n * https://react-jsonschema-form.readthedocs.io/en/latest/usage/arrays/#arrays-of-objects\n *\n */\n getChildren() {\n return Object.values(this.children);\n }\n\n addChild(child) {\n this.children[child.getName()] = child;\n return this;\n }\n\n toHtmlLabel(forId, customClass) {\n let label = this.getLabelAnchor();\n let classLabel = \"\";\n if (this.getType() === FormMetaField.BOOLEAN) {\n classLabel = \"form-check-label\"\n } else {\n classLabel = \"col-form-label\";\n }\n if(typeof customClass !== 'undefined'){\n classLabel =`${customClass} ${classLabel}`\n }\n return `<label for=\"${forId}\" class=\"${classLabel}\">${label}</label>`\n }\n\n toHtmlControl(id, value = null, defaultValue = null) {\n\n let metadataType = this.getType();\n let mutable = this.isMutable();\n let domainValues = this.getDomainValues();\n let disabled;\n let htmlElement;\n\n /**\n * The creation of the form element\n */\n if (domainValues !== undefined) {\n\n /**\n * Select element\n * @type {string}\n */\n htmlElement = \"select\";\n let defaultValueHtml = \"\";\n if (defaultValue !== undefined) {\n defaultValueHtml = ` (${defaultValue})`;\n }\n\n let multiple = \"\";\n if (this.getMultiple()) {\n multiple = \"multiple\";\n }\n\n htmlElement = `<select class=\"form-select\" aria-label=\"${this.getLabel()}\" name=\"${this.getName()}\" id=\"${id}\" ${multiple}>`;\n let selected = \"\";\n if (value === null) {\n selected = \"selected\";\n }\n htmlElement += `<option value=\"\" ${selected}>Default${defaultValueHtml}</option>`;\n for (let selectValue of domainValues) {\n if (selectValue === value) {\n selected = \"selected\";\n } else {\n selected = \"\";\n }\n htmlElement += `<option value=\"${selectValue}\" ${selected}>${selectValue}</option>`;\n }\n htmlElement += `</select>`;\n return htmlElement;\n\n\n } else {\n\n /**\n * Placeholder default\n * @type {string}\n */\n let placeholderValue = `No value`;\n if (mutable) {\n placeholderValue = `Enter a ${this.getLabel()}`;\n }\n // value\n if (!(defaultValue === null || defaultValue === undefined)) {\n if (typeof defaultValue === 'string' || defaultValue instanceof String) {\n // json data for instance\n placeholderValue = Html.toEntities(defaultValue);\n } else {\n placeholderValue = defaultValue;\n }\n }\n let htmlPlaceholder = `placeholder=\"${placeholderValue}\"`;\n\n let htmlValue = \"\";\n let inputType;\n let name = this.getName();\n\n /**\n * With disable, the data is not in the form\n */\n if (mutable !== undefined && mutable === false) {\n disabled = \"disabled\";\n } else {\n disabled = \"\";\n }\n\n /**\n * Input Element\n * @type {string}\n */\n let htmlTag = \"input\";\n let htmlClass = \"form-control\";\n let checked = \"\";\n /**\n * Text area\n */\n let rows = 3;\n\n /**\n * Type ?\n */\n switch (metadataType) {\n case FormMetaField.DATE_TIME:\n inputType = \"datetime-local\";\n if (value !== null) {\n value = value.slice(0, 19);\n htmlValue = `value=\"${value}\"`;\n } else {\n if (!mutable && defaultValue !== null) {\n defaultValue = defaultValue.slice(0, 19);\n htmlValue = `value=\"${defaultValue}\"`;\n }\n }\n htmlPlaceholder = \"\"; // does not apply to local date time\n\n break;\n case FormMetaField.PARAGRAPH:\n htmlTag = \"textarea\";\n if (value !== null) {\n value = Html.toEntities(value);\n htmlValue = `${value}`;\n }\n break;\n case FormMetaField.JSON:\n htmlTag = \"textarea\";\n if (value !== null) {\n if(typeof value === 'object'){\n value = JSON.stringify(value, null, 2);\n }\n value = Html.toEntities(value);\n htmlValue = `${value}`;\n }\n rows = 15;\n break;\n case FormMetaField.BOOLEAN:\n inputType = \"checkbox\";\n htmlClass = \"form-check-input\";\n if (defaultValue !== null) {\n htmlValue = `value=\"${defaultValue}\"`;\n if (value === defaultValue) {\n checked = \"checked\"\n }\n } else {\n if (value === \"on\") {\n checked = \"checked\"\n }\n }\n\n htmlPlaceholder = \"\";\n break;\n default:\n inputType = \"text\";\n if (!(value === null || value === undefined)) {\n htmlValue = `value=\"${value}\"`;\n }\n }\n\n switch (htmlTag) {\n case \"textarea\":\n htmlElement = `<textarea id=\"${id}\" name=\"${name}\" class=\"${htmlClass}\" rows=\"${rows}\" ${htmlPlaceholder} ${disabled}>${htmlValue}</textarea>`;\n break;\n default:\n case \"input\":\n htmlElement = `<input type=\"${inputType}\" name=\"${name}\" class=\"${htmlClass}\" id=\"${id}\" ${htmlPlaceholder} ${htmlValue} ${checked} ${disabled}/>`;\n break;\n\n }\n return htmlElement;\n }\n\n }\n\n /**\n * Added to be able to add metadata to the returned Json Form\n * It has not yet all properties\n * @return\n */\n toJavascriptObject() {\n return {\n \"name\": this.getName(),\n \"label\": this.getLabel(),\n \"type\": this.getType(),\n \"description\": this.getDescription(),\n \"tab\": this.getTab(),\n \"mutable\": this.isMutable(),\n \"value\": this.getValue(),\n \"default\": this.getDefaultValue(),\n \"url\": this.getUrl()\n }\n }\n\n getMultiple() {\n return this.multiple;\n }\n}\n","import Logger from \"./Logger\";\n\n\nexport default class FormMetaTab {\n\n\n constructor(name) {\n this.name = name;\n }\n\n getName() {\n return this.name;\n }\n\n setWidth(width) {\n this.width = width;\n }\n\n /**\n * The width of the tab\n */\n getWidth() {\n return this.width;\n }\n\n static createFromJson(json) {\n if (!json.hasOwnProperty(\"name\")) {\n Logger.getLogger().error(\"A name property is mandatory to create a tab and was not found in the json provided\")\n }\n let name = json[\"name\"];\n let tab = new FormMetaTab(name);\n for (let property in json) {\n if (!json.hasOwnProperty(property)) {\n continue;\n }\n let jsonValue = json[property];\n switch (property) {\n case \"name\":\n continue;\n case \"label\":\n tab.setLabel(jsonValue);\n continue;\n case \"width-field\":\n tab.setWidthField(jsonValue);\n continue;\n case \"width-label\":\n tab.setWidthLabel(jsonValue);\n continue;\n default:\n Logger.getLogger().error(`The property (${property}) of the tab (${name}) is unknown`);\n }\n }\n return tab;\n }\n\n setLabel(label) {\n this.label = label;\n return this;\n }\n\n getLabel(){\n if(this.label===undefined){\n return this.name;\n }\n return this.label;\n }\n\n setWidthField(width) {\n this.widthField = width;\n return this;\n }\n\n setWidthLabel(width) {\n this.widthLabel = width;\n return this;\n }\n\n getLabelWidth(){\n if(this.widthLabel===undefined){\n return 3;\n }\n return this.widthLabel;\n }\n\n getFieldWidth(){\n if(this.widthField===undefined){\n return 12 - this.getLabelWidth();\n }\n return this.widthField;\n }\n\n static createFromName(name) {\n return new FormMetaTab(name);\n }\n}\n","'use strict';\n\nimport FormMetaField from \"./FormMetaField\";\nimport FormMetaTab from \"./FormMetaTab\";\nimport Html from \"./Html\";\nimport Logger from \"./Logger\";\n\n/**\n * Represent the top meta\n * data from a form\n */\nexport default class FormMeta {\n\n formFields = {};\n tabs = {};\n width = 8;\n\n\n constructor(id) {\n\n if (id == null) {\n throw new Error(\"The if of the form should not be null\");\n }\n this.name = id;\n }\n\n /**\n * @return string\n */\n getLabel() {\n return this.label;\n }\n\n getUrl() {\n return this.url;\n }\n\n getId() {\n return this.name;\n }\n\n /**\n * The width of the control\n * if there is no tab\n * @return {number|*}\n */\n getControlWidth() {\n return this.width;\n }\n\n getLabelWidth() {\n return 12 - this.getControlWidth();\n }\n\n\n /**\n *\n * @param {string} formId\n * @param {Object} json\n * @return {FormMeta}\n */\n static createFromJson(formId, json) {\n let form = FormMeta.createFromId(formId);\n for (let prop in json) {\n if (!json.hasOwnProperty(prop)) {\n continue;\n }\n let value = json[prop];\n switch (prop) {\n case \"fields\":\n let fields = value;\n for (let field in fields) {\n if (fields.hasOwnProperty(field)) {\n form.addFormField(FormMetaField.createFromJson(fields[field]));\n }\n }\n continue;\n case \"tabs\":\n let tabs = value;\n for (let tab in tabs) {\n if (tabs.hasOwnProperty(tab)) {\n form.addTab(FormMetaTab.createFromJson(tabs[tab]));\n }\n }\n break;\n case \"width\":\n form.setControlWidth(value);\n break;\n case \"label\":\n form.setLabel(value);\n break;\n case \"url\":\n form.setUrl(value);\n break;\n default:\n Logger.getLogger().error(`The form property (${prop}) is unknown`);\n }\n\n\n }\n return form;\n }\n\n /**\n *\n * @param id\n * @return {FormMeta}\n */\n static createFromId(id) {\n return new FormMeta(id);\n }\n\n /**\n *\n * @param {FormMetaField} formField\n * @return {FormMeta}\n */\n addFormField(formField) {\n this.formFields[formField.getName()] = formField;\n // Be sure to have a tab for each field\n if (!this.tabs.hasOwnProperty(formField.getTab())) {\n this.tabs[formField.getTab()] = FormMetaTab.createFromName(formField.getTab());\n }\n return this;\n }\n\n /**\n *\n * @return {FormMetaField[]}\n */\n getFields() {\n return Object.values(this.formFields);\n }\n\n /**\n *\n * @return {FormMetaTab[]}\n */\n getTabs() {\n return Object.values(this.tabs);\n }\n\n addTab(formMetaTab) {\n this.tabs[formMetaTab.getName()] = formMetaTab;\n }\n\n valueOf() {\n return this.getId();\n };\n\n getFieldsForTab(tabName) {\n return this.getFields().filter(e => e.getTab() === tabName);\n }\n\n toHtmlElement() {\n\n let formId = this.getId();\n\n /**\n * Creating the Body\n * (Starting with the tabs)\n */\n let htmlTabNavs = '<ul class=\"nav nav-tabs mb-3\">';\n let activeClass;\n let ariaSelected;\n /**\n * @param {FormMetaTab} tab\n * @return string\n */\n this.getTabPaneId = function (tab) {\n let htmlId = Html.toHtmlId(tab.getName());\n return `${formId}-tab-pane-${htmlId}`;\n }\n /**\n * @param {FormMetaTab} tab\n * @return string\n */\n this.getTabNavId = function (/** @type {FormMetaTab}*/ tab) {\n let htmlId = Html.toHtmlId(tab.getName());\n return `${formId}-tab-nav-${htmlId}`;\n }\n this.getControlId = function (id) {\n let htmlId = Html.toHtmlId(id);\n return `${formId}-control-${htmlId}`;\n }\n let tabsMeta = this.getTabs();\n let defaultTab = tabsMeta[0];\n for (let tab of tabsMeta) {\n if (Object.is(tab, defaultTab)) {\n activeClass = \"active\";\n ariaSelected = \"true\";\n } else {\n activeClass = \"\";\n ariaSelected = \"false\";\n }\n let tabLabel = tab.getLabel();\n let tabPanId = this.getTabPaneId(tab);\n let tabNavId = this.getTabNavId(tab);\n htmlTabNavs += `\n<li class=\"nav-item\">\n<button\n class=\"nav-link ${activeClass}\"\n id=\"${tabNavId}\"\n type=\"button\"\n role=\"tab\"\n aria-selected = \"${ariaSelected}\"\n aria-controls = \"${tabPanId}\"\n data-bs-toggle = \"tab\"\n data-bs-target = \"#${tabPanId}\" >${tabLabel}\n </button>\n</li>`\n }\n htmlTabNavs += '</ul>';\n\n /**\n * Creating the content\n * @type {string}\n */\n let htmlTabPans = \"<div class=\\\"tab-content\\\">\";\n let rightColSize;\n let leftColSize;\n let elementIdCounter = 0;\n for (let tab of tabsMeta) {\n let tabPaneId = this.getTabPaneId(tab);\n let tabNavId = this.getTabNavId(tab);\n if (tab === defaultTab) {\n activeClass = \"active\";\n } else {\n activeClass = \"\";\n }\n htmlTabPans += `<div class=\"tab-pane ${activeClass}\" id=\"${tabPaneId}\" role=\"tabpanel\" aria-labelledby=\"${tabNavId}\">`;\n leftColSize = tab.getLabelWidth();\n rightColSize = tab.getFieldWidth();\n\n let fieldsForTab = this.getFieldsForTab(tab.getName());\n\n /**\n * Case one field without children\n * It should take the whole space\n */\n if (fieldsForTab.length === 1) {\n let formField = fieldsForTab[0];\n if (formField.getChildren().length === 0) {\n elementIdCounter++;\n let elementId = this.getControlId(elementIdCounter);\n let labelHtml = formField.toHtmlLabel(elementId);\n let value = formField.getValue();\n let defaultValue = formField.getDefaultValue();\n let controlHtml = formField.toHtmlControl(elementId, value, defaultValue)\n htmlTabPans += `\n<div class=\"row mb-3 text-center\"><div class=\"col-sm-12\">${labelHtml}</div></div>\n<div class=\"row mb-3\"><div class=\"col-sm-12\">${controlHtml}</div></div>\n`;\n htmlTabPans += \"</div>\"; // close the pan\n continue;\n }\n\n }\n\n for (let formField of fieldsForTab) {\n\n let children = formField.getChildren();\n switch (children.length) {\n case 0:\n elementIdCounter++;\n let elementId = this.getControlId(elementIdCounter);\n let labelHtml = formField.toHtmlLabel(elementId, `col-sm-${leftColSize}`);\n let value = formField.getValue();\n let defaultValue = formField.getDefaultValue();\n let controlHtml = formField.toHtmlControl(elementId, value, defaultValue)\n htmlTabPans += `\n<div class=\"row mb-3\">\n ${labelHtml}\n <div class=\"col-sm-${rightColSize}\">${controlHtml}</div>\n</div>\n`;\n break;\n default:\n let url = formField.getLabelAnchor();\n htmlTabPans += `<div class=\"row mb-3 text-center\">${url}</div>`;\n htmlTabPans += `<div class=\"row mb-3\">`;\n let rows = 0;\n for (const child of formField.getChildren()) {\n let width = child.getControlWidth();\n htmlTabPans += `<div class=\"col-sm-${width} text-center\">`;\n htmlTabPans += child.getLabelAnchor();\n htmlTabPans += `</div>`;\n let valuesLength = child.getValues().length;\n if (valuesLength > rows) {\n rows = valuesLength;\n }\n }\n htmlTabPans += `</div>`;\n\n for (let i = 0; i < rows; i++) {\n htmlTabPans += `<div class=\"row mb-3\">`;\n for (const child of formField.getChildren()) {\n let value = child.getValues()[i];\n let defaultValue = child.getDefaultValues()[i];\n elementIdCounter++;\n let elementId = this.getControlId(elementIdCounter);\n let width = child.getControlWidth();\n htmlTabPans += `<div class=\"col-sm-${width}\">`;\n htmlTabPans += child.toHtmlControl(elementId, value, defaultValue);\n htmlTabPans += `</div>`;\n }\n htmlTabPans += `</div>`;\n }\n\n break;\n\n }\n\n }\n htmlTabPans += \"</div>\";\n }\n htmlTabPans += \"</div>\";\n\n let form = document.createElement(\"form\");\n form.setAttribute(\"id\", formId);\n form.innerHTML = `${htmlTabNavs} ${htmlTabPans}`;\n return form;\n }\n\n\n setControlWidth(width) {\n this.width = width;\n return this;\n }\n\n setLabel(label) {\n this.label = label;\n }\n\n setUrl(url) {\n this.url = url;\n }\n\n}\n",null,"module.exports=bootstrap;","/**\n * A pointer to the created modals\n * Private\n */\nimport Html from \"./Html\";\nimport {Modal, Tooltip, Tab} from \"bootstrap\";\nimport Logger from \"./Logger\";\n\n/**\n *\n * @type {Object.<string, ComboModal>}\n */\nlet comboModals = {};\n\nexport default class ComboModal {\n\n\n footerButtons = [];\n bodies = [];\n isBuild = false;\n bodyStyles = {};\n dialogStyles = {};\n showFooter = true;\n dialogClasses = [];\n\n /**\n * A valid HTML id\n * @param modalId\n */\n constructor(modalId) {\n\n this.modalId = modalId;\n /**\n * We create the modal root because developers may want to add\n * event on it right away\n * @type {HTMLDivElement}\n */\n let queryElement = document.getElementById(modalId);\n if (queryElement !== null) {\n Logger.getLogger().error(`The id (${modalId}) given to create a modal was already used by an element in the DOM. We have reused it.`)\n this.modalRootHtmlElement = queryElement;\n this.reset();\n } else {\n this.modalRootHtmlElement = document.createElement(\"div\");\n this.modalRootHtmlElement.setAttribute(\"id\", this.modalId);\n this.modalRootHtmlElement.classList.add(\"modal\", \"fade\");\n // Uncaught RangeError: Maximum call stack size exceeded caused by the tabindex\n // modalRoot.setAttribute(\"tabindex\", \"-1\");\n this.modalRootHtmlElement.setAttribute(\"aria-hidden\", \"true\");\n }\n\n }\n\n setHeader(headerText) {\n this.headerText = headerText;\n return this;\n }\n\n /**\n * @param htmlBody\n * @return {ComboModal}\n */\n addBody(htmlBody) {\n\n this.bodies.push(htmlBody);\n return this;\n\n }\n\n addBodyStyle(property, value) {\n\n this.bodyStyles[property] = value;\n return this;\n\n }\n\n noFooter() {\n this.showFooter = false;\n return this;\n }\n\n addDialogStyle(property, value) {\n\n this.dialogStyles[property] = value;\n return this;\n\n }\n\n addDialogClass(value) {\n\n this.dialogClasses.push(value);\n return this;\n\n }\n\n /**\n * @return {ComboModal}\n */\n resetOnClose() {\n this.isResetOnClose = true;\n return this;\n }\n\n\n /**\n *\n * @type HTMLButtonElement|string htmlFooter\n */\n addFooterButton(htmlFooter) {\n\n this.footerButtons.push(htmlFooter);\n return this;\n }\n\n /**\n *\n * @return HTMLButtonElement the close button\n */\n addFooterCloseButton(label = \"Close\") {\n this.closeButton = document.createElement(\"button\");\n this.closeButton.classList.add(\"btn\", \"btn-secondary\")\n this.closeButton.innerHTML = label;\n let modal = this;\n this.closeButton.addEventListener(\"click\", function () {\n modal.bootStrapModal.hide();\n });\n this.addFooterButton(this.closeButton);\n return this;\n }\n\n /**\n * Center the modal\n * @return {ComboModal}\n */\n centered() {\n this.isCentered = true;\n return this;\n }\n\n show() {\n\n if (this.modalRootHtmlElement == null) {\n throw new Error(\"This modal has no HTML element, you can't use it anymore\");\n }\n\n if (!this.isBuild) {\n this.build();\n }\n\n /**\n * Reset on close ?\n * Included tabs does not work anymore\n * for whatever reason\n */\n if (this.isResetOnClose === true) {\n let comboModal = this;\n this.getElement().addEventListener('hidden.bs.modal', function () {\n /**\n * the event is only dispatch on the root element, not all modal\n */\n comboModal.reset();\n });\n }\n\n /**\n * Callback (Parent Child Relationship)\n */\n if (this.callBack !== undefined) {\n if (this.closeButton !== undefined) {\n let modal = this;\n this.closeButton.addEventListener(\"click\", function () {\n /**\n * Two modals cannot be open at the same time\n * https://getbootstrap.com/docs/5.0/components/modal/#toggle-between-modals\n */\n modal.dismissHide();\n modal.callBack();\n });\n }\n }\n\n this.bootStrapModal.show();\n\n\n }\n\n dismissHide() {\n if (this.bootStrapModal !== undefined) {\n this.bootStrapModal.hide();\n }\n }\n\n getModalId() {\n return this.modalId;\n }\n\n /**\n *\n * @param {function} callBack\n */\n setCallBackOnClose(callBack) {\n this.callBack = callBack;\n return this;\n }\n\n\n /**\n * Create a modal and return the modal content element\n * @return ComboModal\n */\n static createFromId(modalId) {\n let modal = new ComboModal(modalId);\n comboModals[modalId] = modal;\n return modal;\n }\n\n /**\n * @param modalId\n * @return {ComboModal}\n */\n static getModal = function (modalId) {\n\n if (modalId in comboModals) {\n return comboModals[modalId];\n } else {\n return null;\n }\n }\n\n /**\n * List the managed modals\n */\n static listModals = function () {\n console.log(Object.keys(comboModals).join(\", \"));\n }\n\n /**\n * Delete all modals\n */\n static resetAllModals = function () {\n for (let prop in comboModals) {\n if (comboModals.hasOwnProperty(prop)) {\n let modal = comboModals[prop];\n modal.reset();\n }\n }\n }\n\n /**\n *\n * @return {ComboModal}\n */\n static createTemporary() {\n return this.createFromId(Html.createRandomId());\n }\n\n getElement() {\n return this.modalRootHtmlElement;\n }\n\n /**\n * Calling the {@link show} function will build the\n * modal, if this is the case, you can't build it anymore\n * you need to {@link reset} it and recreate it if needed\n * @return {boolean}\n */\n wasBuild() {\n return this.isBuild;\n }\n\n setCentered(bool){\n this.isCentered = bool;\n return this;\n }\n resetIfBuild() {\n if (this.wasBuild()) {\n this.reset();\n }\n return this;\n }\n\n reset() {\n\n // DOM\n this.modalRootHtmlElement.querySelectorAll('[data-bs-toggle=\"tab\"]').forEach(tabTriggerElement => {\n let tab = Tab.getInstance(tabTriggerElement);\n if (tab !== null) {\n // tab are only created when the user click on them\n tab.dispose();\n }\n })\n\n /**\n * Bootstrap Modal\n * dispose should delete the root element\n * but it does not\n */\n if (this.bootStrapModal !== undefined) {\n this.dismissHide();\n }\n this.modalRootHtmlElement.innerHTML = \"\";\n\n /**\n * Content\n */\n this.isBuild = false;\n this.bodies = [];\n this.footerButtons = [];\n this.headerText = undefined;\n }\n\n /**\n * Build the modal\n */\n build() {\n\n this.isBuild = true;\n\n document.body.appendChild(this.modalRootHtmlElement);\n\n const modalManagerDialog = document.createElement(\"div\");\n modalManagerDialog.classList.add(\n \"modal-dialog\",\n \"modal-dialog-scrollable\",\n \"modal-lg\");\n if (this.isCentered) {\n modalManagerDialog.classList.add(\"modal-dialog-centered\")\n } else {\n // Get the modal more central but fix as we have tab and\n // we want still the mouse below the tab to be at the same position when we click\n modalManagerDialog.style.setProperty(\"margin\", \"5rem auto\");\n modalManagerDialog.style.setProperty(\"height\", \"calc(100% - 9rem)\");\n }\n for (let dialogStyleName in this.dialogStyles) {\n if (!this.dialogStyles.hasOwnProperty(dialogStyleName)) {\n continue;\n }\n modalManagerDialog.style.setProperty(dialogStyleName, this.dialogStyles[dialogStyleName]);\n }\n for (let dialogClass in this.dialogClasses){\n modalManagerDialog.classList.add(dialogClass);\n }\n this.modalRootHtmlElement.appendChild(modalManagerDialog);\n this.modalContent = document.createElement(\"div\");\n this.modalContent.classList.add(\"modal-content\");\n modalManagerDialog.appendChild(this.modalContent);\n\n this.modalBody = document.createElement(\"div\");\n this.modalBody.classList.add(\"modal-body\");\n for (let bodyStyleName in this.bodyStyles) {\n if (!this.bodyStyles.hasOwnProperty(bodyStyleName)) {\n continue;\n }\n this.modalBody.style.setProperty(bodyStyleName, this.bodyStyles[bodyStyleName]);\n }\n this.modalContent.appendChild(this.modalBody);\n\n\n /**\n * No need to use the global variable access mode (ie `bootstrap.Modal`)\n * It's created at build time\n * @type {Modal}\n */\n this.bootStrapModal = Modal.getInstance(this.modalRootHtmlElement);\n if (this.bootStrapModal === null) {\n /**\n * The bootstrap modal function\n * can only be invoked when the body element has been defined\n */\n let options = {\n \"backdrop\": true,\n \"keyboard\": true,\n \"focus\": true\n };\n this.bootStrapModal = new Modal(this.modalRootHtmlElement, options);\n }\n\n /**\n * Building the header\n */\n if (this.headerText !== undefined) {\n let headerHtml = `\n<div class=\"modal-header\">\n <h5 class=\"modal-title\">${this.headerText}</h5>\n <button type=\"button\" class=\"btn-close\" data-bs-dismiss=\"modal\" aria-label=\"Close\"></button>\n</div>\n`;\n this.modalContent.insertAdjacentHTML('afterbegin', headerHtml);\n }\n\n /**\n * Building the body\n */\n for (let body of this.bodies) {\n let type = typeof body;\n switch (type) {\n case \"string\":\n this.modalBody.insertAdjacentHTML('beforeend', body);\n break;\n default:\n case \"object\":\n this.modalBody.appendChild(body);\n break;\n }\n }\n\n /**\n * Footer button\n */\n if(this.showFooter) {\n let modalFooter = document.createElement(\"div\");\n modalFooter.classList.add(\"modal-footer\");\n this.modalContent.appendChild(modalFooter);\n\n if (this.footerButtons.length === 0) {\n this.addFooterCloseButton();\n }\n\n for (let footerButton of this.footerButtons) {\n if (typeof footerButton === 'string' || footerButton instanceof String) {\n modalFooter.insertAdjacentHTML('beforeend', footerButton);\n } else {\n modalFooter.appendChild(footerButton);\n }\n }\n }\n\n /**\n * Init the tooltip if any\n */\n let tooltipSelector = `#${this.modalId} [data-bs-toggle=\"tooltip\"]`;\n document.querySelectorAll(tooltipSelector).forEach(el => new Tooltip(el));\n }\n\n\n static getOrCreate(modalId) {\n let modal = ComboModal.getModal(modalId);\n if (modal === null) {\n modal = ComboModal.createFromId(modalId);\n }\n return modal;\n }\n}\n","export default function _typeof(obj) {\n \"@swc/helpers - typeof\";\n return obj && obj.constructor === Symbol ? \"symbol\" : typeof obj;\n};\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source cod (…)
/plugin/combo/resources/library/rrdiagram/0.9.4.1/
H A Drrdiagram.js.map1 {"version":3,"sources":["webpack:///webpack/universalModuleDefinition","webpack:///webpack/bootstrap 584aa1e0b3855d207932","webpack:///rrdiagram.js","webpack:///../~/core-js/modules/_export.js","webpack:///../~/core-js/modules/_an-object.js","webpack:///../~/core-js/modules/_global.js","webpack:///../~/core-js/modules/_fails.js","webpack:///../~/core-js/modules/_is-object.js","webpack:///../~/core-js/modules/_wks.js","webpack:///../~/core-js/modules/_to-length.js","webpack:///../~/core-js/modules/_descriptors.js","webpack:///../~/core-js/modules/_object-dp.js","webpack:///../~/core-js/modules/_to-object.js","webpack:///../~/core-js/modules/_a-function.js","webpack:///./ui/rrelement.js","webpack:///../~/core-js/modules/_hide.js","webpack:///../~/core-js/modules/_redefine.js","webpack:///../~/core-js/modules/_string-html.js","webpack:///../~/core-js/modules/_has.js","webpack:///../~/core-js/modules/_object-gopd.js","webpack:///../~/core-js/modules/_object-gpo.js","webpack:///../~/core-js/modules/_to-iobject.js","webpack:///../~/core-js/modules/_cof.js","webpack:///../~/core-js/modules/_core.js","webpack:///../~/core-js/modules/_ctx.js","webpack:///../~/core-js/modules/_strict-method.js","webpack:///../~/core-js/modules/_to-integer.js","webpack:///./model/grammartobnf.js","webpack:///./model/grammartorrdiagram.js","webpack:///../~/core-js/modules/_array-methods.js","webpack:///../~/core-js/modules/_defined.js","webpack:///../~/core-js/modules/_object-sap.js","webpack:///../~/core-js/modules/_to-primitive.js","webpack:///../~/core-js/modules/_metadata.js","webpack:///../~/core-js/modules/_typed-array.js","webpack:///./model/expression.js","webpack:///../~/core-js/modules/_add-to-unscopables.js","webpack:///../~/core-js/modules/_library.js","webpack:///../~/core-js/modules/_meta.js","webpack:///../~/core-js/modules/_an-instance.js","webpack:///../~/core-js/modules/_for-of.js","webpack:///../~/core-js/modules/_object-create.js","webpack:///../~/core-js/modules/_object-gopn.js","webpack:///../~/core-js/modules/_object-keys.js","webpack:///../~/core-js/modules/_property-desc.js","webpack:///../~/core-js/modules/_redefine-all.js","webpack:///../~/core-js/modules/_set-species.js","webpack:///../~/core-js/modules/_to-absolute-index.js","webpack:///../~/core-js/modules/_uid.js","webpack:///../~/core-js/modules/_validate-collection.js","webpack:///../~/core-js/modules/_classof.js","webpack:///../~/core-js/modules/_iterators.js","webpack:///../~/core-js/modules/_set-to-string-tag.js","webpack:///../~/core-js/modules/_string-trim.js","webpack:///./ui/layoutinfo.js","webpack:///./ui/rrtext.js","webpack:///../~/core-js/modules/_flags.js","webpack:///../~/core-js/modules/_iobject.js","webpack:///../~/core-js/modules/_object-pie.js","webpack:///../~/core-js/modules/_shared.js","webpack:///../~/core-js/modules/_species-constructor.js","webpack:///./model/rule.js","webpack:///./ui/rrdiagram.js","webpack:///./ui/rrdiagramtosvg.js","webpack:///../~/core-js/modules/_array-includes.js","webpack:///../~/core-js/modules/_collection.js","webpack:///../~/core-js/modules/_fix-re-wks.js","webpack:///../~/core-js/modules/_is-array.js","webpack:///../~/core-js/modules/_is-regexp.js","webpack:///../~/core-js/modules/_iter-detect.js","webpack:///../~/core-js/modules/_object-forced-pam.js","webpack:///../~/core-js/modules/_object-gops.js","webpack:///../~/core-js/modules/_regexp-exec-abstract.js","webpack:///../~/core-js/modules/_set-collection-from.js","webpack:///../~/core-js/modules/_set-collection-of.js","webpack:///../~/core-js/modules/_string-at.js","webpack:///../~/core-js/modules/_typed.js","webpack:///../~/core-js/modules/_user-agent.js","webpack:///./model/grammar.js","webpack:///./model/literal.js","webpack:///./model/repetition.js","webpack:///./model/rulereference.js","webpack:///./model/sequence.js","webpack:///./ui/rrbreak.js","webpack:///./ui/rrchoice.js","webpack:///./ui/rrloop.js","webpack:///./ui/rrsequence.js","webpack:///./utils/utils.js","webpack:///../~/core-js/modules/_advance-string-index.js","webpack:///../~/core-js/modules/_array-fill.js","webpack:///../~/core-js/modules/_array-species-create.js","webpack:///../~/core-js/modules/_create-property.js","webpack:///../~/core-js/modules/_dom-create.js","webpack:///../~/core-js/modules/_enum-bug-keys.js","webpack:///../~/core-js/modules/_fails-is-regexp.js","webpack:///../~/core-js/modules/_html.js","webpack:///../~/core-js/modules/_inherit-if-required.js","webpack:///../~/core-js/modules/_is-array-iter.js","webpack:///../~/core-js/modules/_iter-create.js","webpack:///../~/core-js/modules/_iter-define.js","webpack:///../~/core-js/modules/_math-expm1.js","webpack:///../~/core-js/modules/_math-sign.js","webpack:///../~/core-js/modules/_microtask.js","webpack:///../~/core-js/modules/_new-promise-capability.js","webpack:///../~/core-js/modules/_regexp-exec.js","webpack:///../~/core-js/modules/_set-proto.js","webpack:///../~/core-js/modules/_shared-key.js","webpack:///../~/core-js/modules/_string-context.js","webpack:///../~/core-js/modules/_string-repeat.js","webpack:///../~/core-js/modules/_string-ws.js","webpack:///../~/core-js/modules/_task.js","webpack:///../~/core-js/modules/_typed-buffer.js","webpack:///../~/core-js/modules/_wks-define.js","webpack:///../~/core-js/modules/core.get-iterator-method.js","webpack:///../~/core-js/modules/es6.array.iterator.js","webpack:///./model/bnftogrammar.js","webpack:///./model/choice.js","webpack:///./model/specialsequence.js","webpack:///./ui/rrline.js","webpack:///../~/core-js/modules/_a-number-value.js","webpack:///../~/core-js/modules/_array-copy-within.js","webpack:///../~/core-js/modules/_array-from-iterable.js","webpack:///../~/core-js/modules/_array-reduce.js","webpack:///../~/core-js/modules/_bind.js","webpack:///../~/core-js/modules/_collection-strong.js","webpack:///../~/core-js/modules/_collection-to-json.js","webpack:///../~/core-js/modules/_collection-weak.js","webpack:///../~/core-js/modules/_flatten-into-array.js","webpack:///../~/core-js/modules/_ie8-dom-define.js","webpack:///../~/core-js/modules/_invoke.js","webpack:///../~/core-js/modules/_is-integer.js","webpack:///../~/core-js/modules/_iter-call.js","webpack:///../~/core-js/modules/_iter-step.js","webpack:///../~/core-js/modules/_math-fround.js","webpack:///../~/core-js/modules/_math-log1p.js","webpack:///../~/core-js/modules/_math-scale.js","webpack:///../~/core-js/modules/_object-assign.js","webpack:///../~/core-js/modules/_object-dps.js","webpack:///../~/core-js/modules/_object-gopn-ext.js","webpack:///../~/core-js/modules/_object-keys-internal.js","webpack:///../~/core-js/modules/_object-to-array.js","webpack:///../~/core-js/modules/_own-keys.js","webpack:///../~/core-js/modules/_parse-float.js","webpack:///../~/core-js/modules/_parse-int.js","webpack:///../~/core-js/modules/_perform.js","webpack:///../~/core-js/modules/_promise-resolve.js","webpack:///../~/core-js/modules/_same-value.js","webpack:///../~/core-js/modules/_string-pad.js","webpack:///../~/core-js/modules/_to-index.js","webpack:///../~/core-js/modules/_wks-ext.js","webpack:///../~/core-js/modules/es6.map.js","webpack:///../~/core-js/modules/es6.regexp.exec.js","webpack:///../~/core-js/modules/es6.regexp.flags.js","webpack:///../~/core-js/modules/es6.set.js","webpack:///../~/core-js/modules/es6.weak-map.js","webpack:///../~/webpack/buildin/global.js","webpack:///./main.js","webpack:///../~/babel-polyfill/lib/index.js","webpack:///./bnfdisplay/BNFDisplay.js","webpack:///./model/chunk.js","webpack:///./ui/svg/svgcontent.js","webpack:///./ui/svg/svgline.js","webpack:///./ui/svg/svgpath.js","webpack:///../~/core-js/fn/regexp/escape.js","webpack:///../~/core-js/modules/_array-species-constructor.js","webpack:///../~/core-js/modules/_date-to-iso-string.js","webpack:///../~/core-js/modules/_date-to-primitive.js","webpack:///../~/core-js/modules/_enum-keys.js","webpack:///../~/core-js/modules/_function-to-string.js","webpack:///../~/core-js/modules/_replacer.js","webpack:///../~/core-js/modules/core.regexp.escape.js","webpack:///../~/core-js/modules/es6.array.copy-within.js","webpack:///../~/core-js/modules/es6.array.every.js","webpack:///../~/core-js/modules/es6.array.fill.js","webpack:///../~/core-js/modules/es6.array.filter.js","webpack:///../~/core-js/modules/es6.array.find-index.js","webpack:///../~/core-js/modules/es6.array.find.js","webpack:///../~/core-js/modules/es6.array.for-each.js","webpack:///../~/core-js/modules/es6.array.from.js","webpack:///../~/core-js/modules/es6.array.index-of.js","webpack:///../~/core-js/modules/es6.array.is-array.js","webpack:///../~/core-js/modules/es6.array.join.js","webpack:///../~/core-js/modules/es6.array.last-index-of.js","webpack:///../~/core-js/modules/es6.array.map.js","webpack:///../~/core-js/modules/es6.array.of.js","webpack:///../~/core-js/modules/es6.array.reduce-right.js","webpack:///../~/core-js/modules/es6.array.reduce.js","webpack:///../~/core-js/modules/es6.array.slice.js","webpack:///../~/core-js/modules/es6.array.some.js","webpack:///../~/core-js/modules/es6.array.sort.js","webpack:///../~/core-js/modules/es6.array.species.js","webpack:///../~/core-js/modules/es6.date.now.js","webpack:///../~/core-js/modules/es6.date.to-iso-string.js","webpack:///../~/core-js/modules/es6.date.to-json.js","webpack:///../~/core-js/modules/es6.date.to-primitive.js","webpack:///../~/core-js/modules/es6.date.to-string.js","webpack:///../~/core-js/modules/es6.function.bind.js","webpack:///../~/core-js/modules/es6.function.has-instance.js","webpack:///../~/core-js/modules/es6.function.name.js","webpack:///../~/core-js/modules/es6.math.acosh.js","webpack:///../~/core-js/modules/es6.math.asinh.js","webpack:///../~/core-js/modules/es6.math.atanh.js","webpack:///../~/core-js/modules/es6.math.cbrt.js","webpack:///../~/core-js/modules/es6.math.clz32.js","webpack:///../~/core-js/modules/es6.math.cosh.js","webpack:///../~/core-js/modules/es6.math.expm1.js","webpack:///../~/core-js/modules/es6.math.fround.js","webpack:///../~/core-js/modules/es6.math.hypot.js","webpack:///../~/core-js/modules/es6.math.imul.js","webpack:///../~/core-js/modules/es6.math.log10.js","webpack:///../~/core-js/modules/es6.math.log1p.js","webpack:///../~/core-js/modules/es6.math.log2.js","webpack:///../~/core-js/modules/es6.math.sign.js","webpack:///../~/core-js/modules/es6.math.sinh.js","webpack:///../~/core-js/modules/es6.math.tanh.js","webpack:///../~/core-js/modules/es6.math.trunc.js","webpack:///../~/core-js/modules/es6.number.constructor.js","webpack:///../~/core-js/modules/es6.number.epsilon.js","webpack:///../~/core-js/modules/es6.number.is-finite.js","webpack:///../~/core-js/modules/es6.number.is-integer.js","webpack:///../~/core-js/modules/es6.number.is-nan.js","webpack:///../~/core-js/modules/es6.number.is-safe-integer.js","webpack:///../~/core-js/modules/es6.number.max-safe-integer.js","webpack:///../~/core-js/modules/es6.number.min-safe-integer.js","webpack:///../~/core-js/modules/es6.number.parse-float.js","webpack:///../~/core-js/modules/es6.number.parse-int.js","webpack:///../~/core-js/modules/es6.number.to-fixed.js","webpack:///../~/core-js/modules/es6.number.to-precision.js","webpack:///../~/core-js/modules/es6.object.assign.js","webpack:///../~/core-js/modules/es6.object.create.js","webpack:///../~/core-js/modules/es6.object.define-properties.js","webpack:///../~/core-js/modules/es6.object.define-property.js","webpack:///../~/core-js/modules/es6.object.freeze.js","webpack:///../~/core-js/modules/es6.object.get-own-property-descriptor.js","webpack:///../~/core-js/modules/es6.object.get-own-property-names.js","webpack:///../~/core-js/modules/es6.object.get-prototype-of.js","webpack:///../~/core-js/modules/es6.object.is-extensible.js","webpack:///../~/core-js/modules/es6.object.is-frozen.js","webpack:///../~/core-js/modules/es6.object.is-sealed.js","webpack:///../~/core-js/modules/es6.object.is.js","webpack:///../~/core-js/modules/es6.object.keys.js","webpack:///../~/core-js/modules/es6.object.prevent-extensions.js","webpack:///../~/core-js/modules/es6.object.seal.js","webpack:///../~/core-js/modules/es6.object.set-prototype-of.js","webpack:///../~/core-js/modules/es6.object.to-string.js","webpack:///../~/core-js/modules/es6.parse-float.js","webpack:///../~/core-js/modules/es6.parse-int.js","webpack:///../~/core-js/modules/es6.promise.js","webpack:///../~/core-js/modules/es6.reflect.apply.js","webpack:///../~/core-js/modules/es6.reflect.construct.js","webpack:///../~/core-js/modules/es6.reflect.define-property.js","webpack:///../~/core-js/modules/es6.reflect.delete-property.js","webpack:///../~/core-js/modules/es6.reflect.enumerate.js","webpack:///../~/core-js/modules/es6.reflect.get-own-property-descriptor.js","webpack:///../~/core-js/modules/es6.reflect.get-prototype-of.js","webpack:///../~/core-js/modules/es6.reflect.get.js","webpack:///../~/core-js/modules/es6.reflect.has.js","webpack:///../~/core-js/modules/es6.reflect.is-extensible.js","webpack:///../~/core-js/modules/es6.reflect.own-keys.js","webpack:///../~/core-js/modules/es6.reflect.prevent-extensions.js","webpack:///../~/core-js/modules/es6.reflect.set-prototype-of.js","webpack:///../~/core-js/modules/es6.reflect.set.js","webpack:///../~/core-js/modules/es6.regexp.constructor.js","webpack:///../~/core-js/modules/es6.regexp.match.js","webpack:///../~/core-js/modules/es6.regexp.replace.js","webpack:///../~/core-js/modules/es6.regexp.search.js","webpack:///../~/core-js/modules/es6.regexp.split.js","webpack:///../~/core-js/modules/es6.regexp.to-string.js","webpack:///../~/core-js/modules/es6.string.anchor.js","webpack:///../~/core-js/modules/es6.string.big.js","webpack:///../~/core-js/modules/es6.string.blink.js","webpack:///../~/core-js/modules/es6.string.bold.js","webpack:///../~/core-js/modules/es6.string.code-point-at.js","webpack:///../~/core-js/modules/es6.string.ends-with.js","webpack:///../~/core-js/modules/es6.string.fixed.js","webpack:///../~/core-js/modules/es6.string.fontcolor.js","webpack:///../~/core-js/modules/es6.string.fontsize.js","webpack:///../~/core-js/modules/es6.string.from-code-point.js","webpack:///../~/core-js/modules/es6.string.includes.js","webpack:///../~/core-js/modules/es6.string.italics.js","webpack:///../~/core-js/modules/es6.string.iterator.js","webpack:///../~/core-js/modules/es6.string.link.js","webpack:///../~/core-js/modules/es6.string.raw.js","webpack:///../~/core-js/modules/es6.string.repeat.js","webpack:///../~/core-js/modules/es6.string.small.js","webpack:///../~/core-js/modules/es6.string.starts-with.js","webpack:///../~/core-js/modules/es6.string.strike.js","webpack:///../~/core-js/modules/es6.string.sub.js","webpack:///../~/core-js/modules/es6.string.sup.js","webpack:///../~/core-js/modules/es6.string.trim.js","webpack:///../~/core-js/modules/es6.symbol.js","webpack:///../~/core-js/modules/es6.typed.array-buffer.js","webpack:///../~/core-js/modules/es6.typed.data-view.js","webpack:///../~/core-js/modules/es6.typed.float32-array.js","webpack:///../~/core-js/modules/es6.typed.float64-array.js","webpack:///../~/core-js/modules/es6.typed.int16-array.js","webpack:///../~/core-js/modules/es6.typed.int32-array.js","webpack:///../~/core-js/modules/es6.typed.int8-array.js","webpack:///../~/core-js/modules/es6.typed.uint16-array.js","webpack:///../~/core-js/modules/es6.typed.uint32-array.js","webpack:///../~/core-js/modules/es6.typed.uint8-array.js","webpack:///../~/core-js/modules/es6.typed.uint8-clamped-array.js","webpack:///../~/core-js/modules/es6.weak-set.js","webpack:///../~/core-js/modules/es7.array.flat-map.js","webpack:///../~/core-js/modules/es7.array.flatten.js","webpack:///../~/core-js/modules/es7.array.includes.js","webpack:///../~/core-js/modules/es7.asap.js","webpack:///../~/core-js/modules/es7.error.is-error.js","webpack:///../~/core-js/modules/es7.global.js","webpack:///../~/core-js/modules/es7.map.from.js","webpack:///../~/core-js/modules/es7.map.of.js","webpack:///../~/core-js/modules/es7.map.to-json.js","webpack:///../~/core-js/modules/es7.math.clamp.js","webpack:///../~/core-js/modules/es7.math.deg-per-rad.js","webpack:///../~/core-js/modules/es7.math.degrees.js","webpack:///../~/core-js/modules/es7.math.fscale.js","webpack:///../~/core-js/modules/es7.math.iaddh.js","webpack:///../~/core-js/modules/es7.math.imulh.js","webpack:///../~/core-js/modules/es7.math.isubh.js","webpack:///../~/core-js/modules/es7.math.rad-per-deg.js","webpack:///../~/core-js/modules/es7.math.radians.js","webpack:///../~/core-js/modules/es7.math.scale.js","webpack:///../~/core-js/modules/es7.math.signbit.js","webpack:///../~/core-js/modules/es7.math.umulh.js","webpack:///../~/core-js/modules/es7.object.define-getter.js","webpack:///../~/core-js/modules/es7.object.define-setter.js","webpack:///../~/core-js/modules/es7.object.entries.js","webpack:///../~/core-js/modules/es7.object.get-own-property-descriptors.js","webpack:///../~/core-js/modules/es7.object.lookup-getter.js","webpack:///../~/core-js/modules/es7.object.lookup-setter.js","webpack:///../~/core-js/modules/es7.object.values.js","webpack:///../~/core-js/modules/es7.observable.js","webpack:///../~/core-js/modules/es7.promise.finally.js","webpack:///../~/core-js/modules/es7.promise.try.js","webpack:///../~/core-js/modules/es7.reflect.define-metadata.js","webpack:///../~/core-js/modules/es7.reflect.delete-metadata.js","webpack:///../~/core-js/modules/es7.reflect.get-metadata-keys.js","webpack:///../~/core-js/modules/es7.reflect.get-metadata.js","webpack:///../~/core-js/modules/es7.reflect.get-own-metadata-keys.js","webpack:///../~/core-js/modules/es7.reflect.get-own-metadata.js","webpack:///../~/core-js/modules/es7.reflect.has-metadata.js","webpack:///../~/core-js/modules/es7.reflect.has-own-metadata.js","webpack:///../~/core-js/modules/es7.reflect.metadata.js","webpack:///../~/core-js/modules/es7.set.from.js","webpack:///../~/core-js/modules/es7.set.of.js","webpack:///../~/core-js/modules/es7.set.to-json.js","webpack:///../~/core-js/modules/es7.string.at.js","webpack:///../~/core-js/modules/es7.string.match-all.js","webpack:///../~/core-js/modules/es7.string.pad-end.js","webpack:///../~/core-js/modules/es7.string.pad-start.js","webpack:///../~/core-js/modules/es7.string.trim-left.js","webpack:///../~/core-js/modules/es7.string.trim-right.js","webpack:///../~/core-js/modules/es7.symbol.async-iterator.js","webpack:///../~/core-js/modules/es7.symbol.observable.js","webpack:///../~/core-js/modules/es7.system.global.js","webpack:///../~/core-js/modules/es7.weak-map.from.js","webpack:///../~/core-js/modules/es7.weak-map.of.js","webpack:///../~/core-js/modules/es7.weak-set.from.js","webpack:///../~/core-js/modules/es7.weak-set.of.js","webpack:///../~/core-js/modules/web.dom.iterable.js","webpack:///../~/core-js/modules/web.immediate.js","webpack:///../~/core-js/modules/web.timers.js","webpack:///../~/core-js/shim.js","webpack:///../~/regenerator-runtime/runtime.js"],"names":["root","factory","exports","module","define","amd","this","__webpack_require__","moduleId","installedModules","i","l","modules","call","m","c","value","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","global","core","hide","redefine","ctx","$export","type","source","key","own","out","exp","IS_FORCED","F","IS_GLOBAL","G","IS_STATIC","S","IS_PROTO","P","IS_BIND","B","target","expProto","undefined","Function","U","W","R","isObject","it","TypeError","window","Math","self","__g","exec","e","store","uid","Symbol","USE_SYMBOL","toInteger","min","a","anObject","IE8_DOM_DEFINE","toPrimitive","dP","f","O","Attributes","defined","_classCallCheck","instance","Constructor","_createClass","defineProperties","props","length","descriptor","writable","protoProps","staticProps","RRElement","layoutInfo","default","createDesc","has","SRC","$toString","TPL","split","inspectSource","val","safe","isFunction","join","String","fails","quot","createHTML","string","tag","attribute","p1","replace","NAME","test","toLowerCase","pIE","toIObject","gOPD","getOwnPropertyDescriptor","toObject","IE_PROTO","ObjectProto","getPrototypeOf","constructor","IObject","toString","slice","version","__e","aFunction","fn","that","b","apply","arguments","method","arg","ceil","floor","isNaN","RuleDefinitionSign","obj","_grammar","EQUAL","COLON_EQUAL","COLON_COLON_EQUAL","LiteralDefinitionSign","QUOTE","DOUBLE_QUOTE","GrammarToBNF","ruleDefinitionSign","literalDefinitionSign","isCommaSeparator","isUsingMultiplicationTokens","ruleConsideredAsLineBreak","grammar","toBNF","_interopRequireDefault","_rule","GrammarToRRDiagram","_rrdiagram","ruleLinkProvider","ruleName","rule","toRRDiagram","toLength","asc","TYPE","$create","IS_MAP","IS_FILTER","IS_SOME","IS_EVERY","IS_FIND_INDEX","NO_HOLES","create","$this","callbackfn","res","index","result","push","KEY","valueOf","Map","shared","getOrCreateMetadataMap","targetKey","targetMetadata","set","keyMetadata","ordinaryHasOwnMetadata","MetadataKey","metadataMap","ordinaryGetOwnMetadata","ordinaryDefineOwnMetadata","MetadataValue","ordinaryOwnMetadataKeys","keys","forEach","_","toMetaKey","map","LIBRARY","$typed","$buffer","anInstance","propertyDesc","redefineAll","toIndex","toAbsoluteIndex","classof","isArrayIter","gOPN","getIterFn","wks","createArrayMethod","createArrayIncludes","speciesConstructor","ArrayIterators","Iterators","$iterDetect","setSpecies","arrayFill","arrayCopyWithin","$DP","$GOPD","RangeError","Uint8Array","ArrayProto","Array","$ArrayBuffer","ArrayBuffer","$DataView","DataView","arrayForEach","arrayFilter","arraySome","arrayEvery","arrayFind","arrayFindIndex","arrayIncludes","arrayIndexOf","arrayValues","values","arrayKeys","arrayEntries","entries","arrayLastIndexOf","lastIndexOf","arrayReduce","reduce","arrayReduceRight","reduceRight","arrayJoin","arraySort","sort","arraySlice","arrayToString","arrayToLocaleString","toLocaleString","ITERATOR","TAG","TYPED_CONSTRUCTOR","DEF_CONSTRUCTOR","ALL_CONSTRUCTORS","CONSTR","TYPED_ARRAY","TYPED","VIEW","$map","allocate","LITTLE_ENDIAN","Uint16Array","buffer","FORCED_SET","toOffset","BYTES","offset","validate","C","speciesFromList","list","fromList","addGetter","internal","_d","$from","step","iterator","aLen","mapfn","mapping","iterFn","next","done","$of","TO_LOCALE_BUG","$toLocaleString","proto","copyWithin","start","every","fill","filter","find","predicate","findIndex","indexOf","searchElement","includes","separator","reverse","middle","some","comparefn","subarray","begin","end","$begin","byteOffset","BYTES_PER_ELEMENT","$slice","$set","arrayLike","src","len","$iterators","isTAIndex","$getDesc","$setDesc","desc","$TypedArrayPrototype$","wrapper","CLAMPED","GETTER","SETTER","TypedArray","Base","TAC","FORCED","ABV","TypedArrayPrototype","data","v","setter","round","addElement","$offset","$length","byteLength","klass","$len","iter","concat","$nativeIterator","CORRECT_ITER_NAME","$iterator","of","from","_grammartorrdiagram","_grammartobnf","_rrelement2","_rrelement","Expression","grammarToRRDiagram","grammarToBNF","sb","isNested","UNSCOPABLES","META","setDesc","id","isExtensible","FREEZE","preventExtensions","setMeta","w","fastKey","getWeak","onFreeze","meta","NEED","forbiddenField","BREAK","RETURN","iterable","dPs","enumBugKeys","Empty","createDict","iframeDocument","iframe","style","display","appendChild","contentWindow","document","open","write","lt","close","Properties","$keys","hiddenKeys","getOwnPropertyNames","bitmap","DESCRIPTORS","SPECIES","max","px","random","_t","cof","ARG","tryGet","T","callee","def","stat","spaces","space","non","ltrim","RegExp","rtrim","exporter","ALIAS","FORCE","trim","LayoutInfo","width","height","connectorOffset","_possibleConstructorReturn","ReferenceError","_inherits","subClass","superClass","setPrototypeOf","__proto__","_rrdiagramtosvg2","_rrdiagramtosvg","_layoutinfo2","_layoutinfo","Type","LITERAL","RULE","SPECIAL_SEQUENCE","RRText","text","link","fontInfo","_RRElement","rrDiagramToSVG","insets","top","left","bottom","right","cssTextClass","cssRuleTextClass","cssLiteralTextClass","cssSpecialSequenceTextClass","getFontInfo","textWidth","fontYOffset","descent","setLayoutInfo","xOffset","yOffset","svgContent","getLayoutInfo","getWidth","getHeight","escapeXml","cssClass","shape","cssRuleClass","ruleShape","cssLiteralClass","literalShape","cssSpecialSequenceClass","specialSequenceShape","RRDiagramToSVG","BoxShape","RECTANGLE","ROUNDED_RECTANGLE","rx","HEXAGON","getConnectorOffset","addLineConnector","textHeight","textXOffset","textYOffset","ignoreCase","multiline","unicode","sticky","propertyIsEnumerable","mode","copyright","D","_rrdiagram2","_grammartobnf2","_expression","Rule","expression","originalExpressionText","RRDiagram","toRRElement","_rrsequence2","_rrsequence","_svgcontent2","_svgcontent","_rrbreak2","_rrbreak","rrElement","rrElementList","RRSequence","cursorElementList","getRRElements","element","RRBreak","rrElement_","computeLayoutInfo","SvgContent","layoutInfo2","connectorOffset2","width2","height2","y1","toSVG","connectorElement","getConnectorElement","elements","getElements","_rrtext","cssConnectorClass","cssLoopCardinalitiesTextClass","rrDiagram","IS_INCLUDES","el","fromIndex","forOf","setToStringTag","inheritIfRequired","methods","common","IS_WEAK","ADDER","fixMethod","HASNT_CHAINING","THROWS_ON_PRIMITIVES","ACCEPT_ITERABLES","BUGGY_ZERO","$instance","clear","getConstructor","setStrong","regexpExec","REPLACE_SUPPORTS_NAMED_GROUPS","re","groups","SPLIT_WORKS_WITH_OVERWRITTEN_EXEC","originalExec","SYMBOL","DELEGATES_TO_SYMBOL","DELEGATES_TO_EXEC","execCalled","nativeRegExpMethod","fns","nativeMethod","regexp","str","arg2","forceStringMethod","strfn","rxfn","isArray","MATCH","isRegExp","SAFE_CLOSING","riter","skipClosing","arr","K","__defineSetter__","getOwnPropertySymbols","builtinExec","COLLECTION","A","cb","mapFn","nextItem","TO_STRING","pos","charCodeAt","charAt","Typed","TypedArrayConstructors","navigator","userAgent","Grammar","rules","_expression2","_rrtext2","Literal","_Expression","_rrchoice2","_rrchoice","_rrline2","_rrline","_rrloop2","_rrloop","Repetition","minRepetitionCount","maxRepetitionCount","RRChoice","RRLoop","RRLine","equals","RuleReference","_rulereference2","_rulereference","_repetition2","_repetition","_literal2","_literal","Sequence","expressions","repetition","repetitionExpression","getExpression","subExpressions","getExpressions","getMaxRepetitionCount","getMinRepetitionCount","ruleLink","getRuleName","rrElements","x1","x2","xOffset2","y2","yOffset2","addPathConnector","loopElement","IllegalArgumentException","cardinalitiesText","cardinalitiesWidth","layoutInfo1","width1","maxWidth","loopOffset","loopWidth","loopPathStartX","aboveConnector","belowConnector","widthOffset","unsafe","fontCssClass","container","body","testDiv","createElement","className","computedStyle","getComputedStyle","fontSize","getPropertyValue","fontFamily","removeChild","parent","image","textNode","createTextNode","offsetHeight","offsetWidth","forceWidth","cssText","offsetTop","at","endPos","original","$defineProperty","is","documentElement","IteratorPrototype","$iterCreate","BUGGY","returnThis","DEFAULT","IS_SET","getMethod","kind","DEF_VALUES","VALUES_BUG","$native","$default","$entries","$anyNative","$expm1","expm1","x","sign","macrotask","Observer","MutationObserver","WebKitMutationObserver","process","Promise","isNode","head","last","notify","flush","domain","exit","enter","nextTick","standalone","resolve","promise","then","toggle","node","observe","characterData","task","PromiseCapability","reject","$$resolve","$$reject","regexpFlags","nativeExec","nativeReplace","patchedExec","UPDATES_LAST_INDEX_WRONG","re1","re2","NPCG_INCLUDED","lastIndex","reCopy","match","check","buggy","searchString","count","Infinity","defer","channel","port","invoke","html","cel","setTask","setImmediate","clearTask","clearImmediate","MessageChannel","Dispatch","counter","queue","run","listener","event","args","now","port2","port1","onmessage","postMessage","addEventListener","importScripts","setTimeout","packIEEE754","mLen","nBytes","eLen","eMax","eBias","rt","pow","abs","log","LN2","unpackIEEE754","nBits","NaN","unpackI32","bytes","packI8","packI16","packI32","packF64","packF32","PROTOTYPE","view","isLittleEndian","numIndex","intIndex","$LENGTH","WRONG_INDEX","$BUFFER","_b","$OFFSET","pack","conversion","BaseBuffer","ArrayBufferProto","j","$setInt8","setInt8","getInt8","setUint8","bufferLength","getUint8","getInt16","getUint16","getInt32","getUint32","getFloat32","getFloat64","setInt16","setUint16","setInt32","setUint32","setFloat32","setFloat64","wksExt","$Symbol","getIteratorMethod","addToUnscopables","iterated","_i","_k","Arguments","createRule","chunk","prune","loadExpression","parentChunk","readNext","stopChar","expressionTextSB","lastChar","isFirst","isInSpecialGroup","specialGroupChar","isLiteral","getType","Chunk","ChunkType","setText","GROUP","setType","COMMENT","comment","content","addChunk","ALTERNATION","REPETITION_TOKEN","literalChunk","subExpressionText","groupChunk","optionChunk","OPTION","repetitionChunk","REPETITION","setMinCount","_chunk2","_chunk","_rule2","_grammar2","BNFToGrammar","char","ruleList","expressionText","endsWith","c2","_sequence2","_sequence","Choice","expressionList","hasNoop","SpecialSequence","msg","to","inc","memo","isRight","factories","construct","bind","partArgs","bound","$iterDefine","SIZE","getEntry","entry","_f","k","_l","r","prev","$has","uncaughtFrozenStore","UncaughtFrozenStore","findUncaughtFrozen","splice","ufstore","flattenIntoArray","sourceLen","depth","mapper","thisArg","spreadable","targetIndex","sourceIndex","IS_CONCAT_SPREADABLE","un","isFinite","ret","EPSILON","EPSILON32","MAX32","MIN32","roundTiesToEven","fround","$abs","$sign","log1p","scale","inLow","inHigh","outLow","outHigh","getKeys","gOPS","$assign","assign","getSymbols","isEnum","windowNames","getWindowNames","names","isEntries","Reflect","ownKeys","$parseFloat","parseFloat","$trim","$parseInt","parseInt","ws","hex","radix","newPromiseCapability","promiseCapability","y","repeat","maxLength","fillString","stringLength","fillStr","intMaxLength","fillLen","stringFiller","number","strong","forced","flags","add","InternalMap","each","weak","NATIVE_WEAK_MAP","IS_IE11","ActiveXObject","$WeakMap","g","eval","ui","model","bnfdisplay","_BNFDisplay2","_BNFDisplay","_bnftogrammar2","_bnftogrammar","_choice2","_choice","_grammartorrdiagram2","_specialsequence2","_specialsequence","BNFDisplay","DEFINE_PROPERTY","_babelPolyfill","Error","padStart","padEnd","bnfToGrammar","newClassName","getElementsByClassName","tagName","newElement","bnf","innerHTML","convert","getRules","svg","svgContainer","parentElement","replaceChild","isNoop","CHOICE","minCount","maxCount","chunkList","hasAlternation","previousChunk","multiplier","nextChunk","newChunk","setMaxCount","alternationSequenceList","choiceChunk","subList","hasLine","subChunk","cChunk","_svgline2","_svgline","_svgpath2","_svgpath","connectorList","path","SvgPath","addPath","svgLine","x1_","getX1","y1_","getY1","x2_","getX2","y2_","getY2","mergeLine","SvgLine","path0","connector","addLine","getPath","svgline","startX","startY","endX","endY","pathSB","svgPath","escape","getTime","Date","$toISOString","toISOString","lz","num","getUTCFullYear","getUTCMilliseconds","getUTCMonth","getUTCDate","getUTCHours","getUTCMinutes","getUTCSeconds","hint","symbols","regExp","replacer","part","$re","$every","$filter","$find","$forEach","STRICT","createProperty","$indexOf","NEGATIVE_ZERO","$reduce","upTo","size","cloned","$some","$sort","toJSON","pv","TO_PRIMITIVE","DateProto","HAS_INSTANCE","FunctionProto","FProto","nameRE","sqrt","$acosh","acosh","Number","MAX_VALUE","asinh","$asinh","$atanh","atanh","cbrt","clz32","LOG2E","cosh","hypot","value1","value2","div","sum","larg","$imul","imul","xn","yn","xl","yl","log10","LOG10E","log2","sinh","E","tanh","trunc","$Number","BROKEN_COF","TRIM","toNumber","argument","third","maxCode","first","code","digits","_isFinite","isInteger","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","aNumberValue","$toFixed","toFixed","ERROR","multiply","divide","numToString","t","acc","fractionDigits","z","$fails","$toPrecision","toPrecision","precision","$freeze","$getOwnPropertyDescriptor","$getPrototypeOf","$isExtensible","$isFrozen","$isSealed","$preventExtensions","$seal","Internal","newGenericPromiseCapability","OwnPromiseCapability","Wrapper","microtask","newPromiseCapabilityModule","perform","promiseResolve","versions","v8","$Promise","empty","USE_NATIVE","FakePromise","PromiseRejectionEvent","isThenable","isReject","_n","chain","_c","_v","ok","_s","reaction","exited","handler","fail","_h","onHandleUnhandled","onUnhandled","console","unhandled","isUnhandled","emit","onunhandledrejection","reason","error","_a","onrejectionhandled","$reject","_w","$resolve","executor","err","onFulfilled","onRejected","capability","all","remaining","$index","alreadyCalled","race","rApply","fApply","thisArgument","argumentsList","L","rConstruct","NEW_TARGET_BUG","ARGS_BUG","Target","newTarget","$args","propertyKey","attributes","deleteProperty","Enumerate","enumerate","getProto","receiver","setProto","V","existingDescriptor","ownDesc","$flags","$RegExp","CORRECT_NEW","tiRE","piRE","fiU","advanceStringIndex","regExpExec","$match","maybeCallNative","fullUnicode","matchStr","SUBSTITUTION_SYMBOLS","SUBSTITUTION_SYMBOLS_NO_NAMED","maybeToString","REPLACE","$replace","getSubstitution","matched","position","captures","namedCaptures","replacement","tailPos","ch","capture","searchValue","replaceValue","functionalReplace","results","accumulatedResult","nextSourcePosition","replacerArgs","sameValue","SEARCH","$search","previousLastIndex","callRegExpExec","$min","$push","LENGTH","SUPPORTS_Y","SPLIT","$split","internalSplit","limit","lastLength","output","lastLastIndex","splitLimit","separatorCopy","splitter","unicodeMatching","lim","q","$at","codePointAt","context","$endsWith","endPosition","search","color","fromCharCode","$fromCodePoint","fromCodePoint","point","url","raw","callSite","tpl","$startsWith","startsWith","wksDefine","enumKeys","_create","gOPNExt","$GOPS","$JSON","JSON","_stringify","stringify","HIDDEN","SymbolRegistry","AllSymbols","OPSymbols","QObject","findChild","setSymbolDesc","protoDesc","wrap","sym","isSymbol","$defineProperties","$propertyIsEnumerable","$getOwnPropertyNames","$getOwnPropertySymbols","IS_OP","es6Symbols","wellKnownSymbols","keyFor","useSetter","useSimple","FAILS_ON_PRIMITIVES","$replacer","$isView","isView","fin","viewS","viewT","init","arraySpeciesCreate","flatMap","flatten","depthArg","$includes","asap","isError","clamp","lower","upper","DEG_PER_RAD","PI","RAD_PER_DEG","degrees","radians","fscale","iaddh","x0","y0","$x0","$x1","$y0","imulh","u","$u","$v","u0","v0","u1","v1","isubh","signbit","umulh","__defineGetter__","getOwnPropertyDescriptors","getDesc","__lookupGetter__","__lookupSetter__","$values","OBSERVABLE","cleanupSubscription","subscription","cleanup","subscriptionClosed","_o","closeSubscription","Subscription","observer","subscriber","SubscriptionObserver","unsubscribe","complete","$Observable","subscribe","observable","items","Observable","onFinally","metadata","defineMetadata","metadataKey","metadataValue","deleteMetadata","Set","ordinaryMetadataKeys","oKeys","pKeys","getMetadataKeys","ordinaryGetMetadata","getMetadata","getOwnMetadataKeys","getOwnMetadata","ordinaryHasMetadata","hasMetadata","hasOwnMetadata","$metadata","getFlags","RegExpProto","$RegExpStringIterator","_r","matchAll","$pad","WEBKIT_BUG","TO_STRING_TAG","ArrayValues","DOMIterables","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","collections","explicit","Collection","$task","MSIE","time","boundArgs","setInterval","innerFn","outerFn","tryLocsList","protoGenerator","Generator","generator","Context","_invoke","makeInvokeMethod","tryCatch","GeneratorFunction","GeneratorFunctionPrototype","defineIteratorMethods","AsyncIterator","record","hasOwn","__await","unwrapped","enqueue","callInvokeWithMethodAndArg","previousPromise","state","GenStateSuspendedStart","GenStateExecuting","GenStateCompleted","doneResult","delegate","delegateResult","maybeInvokeDelegate","ContinueSentinel","sent","_sent","dispatchException","abrupt","GenStateSuspendedYield","return","info","resultName","nextLoc","pushTryEntry","locs","tryLoc","catchLoc","finallyLoc","afterLoc","tryEntries","resetTryEntry","completion","reset","iteratorMethod","iteratorSymbol","Op","asyncIteratorSymbol","asyncIterator","toStringTagSymbol","toStringTag","inModule","runtime","regeneratorRuntime","NativeIteratorPrototype","Gp","displayName","isGeneratorFunction","genFun","ctor","mark","awrap","async","pop","skipTempReset","stop","rootEntry","rootRecord","rval","exception","handle","loc","caught","hasCatch","hasFinally","finallyEntry","finish","thrown","delegateYield"],"mappings":"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","file":"rrdiagram.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"rrdiagram\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"rrdiagram\"] = factory();\n\telse\n\t\troot[\"rrdiagram\"] = factory();\n})(this, function() {\nreturn \n\n\n// WEBPACK FOOTER //\n// webpack/universalModuleDefinition"," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// identity function for calling harmony imports with the correct context\n \t__webpack_require__.i = function(value) { return value; };\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 361);\n\n\n\n// WEBPACK FOOTER //\n// webpack/bootstrap 584aa1e0b3855d207932","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"rrdiagram\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"rrdiagram\"] = factory();\n\telse\n\t\troot[\"rrdiagram\"] = factory();\n})(this, function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 361);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2);\nvar core = __webpack_require__(20);\nvar hide = __webpack_require__(12);\nvar redefine = __webpack_require__(13);\nvar ctx = __webpack_require__(21);\nvar PROTOTYPE = 'prototype';\n\nvar $export = function (type, name, source) {\n var IS_FORCED = type & $export.F;\n var IS_GLOBAL = type & $export.G;\n var IS_STATIC = type & $export.S;\n var IS_PROTO = type & $export.P;\n var IS_BIND = type & $export.B;\n var target = IS_GLOBAL ? global : IS_STATIC ? global[name] || (global[name] = {}) : (global[name] || {})[PROTOTYPE];\n var exports = IS_GLOBAL ? core : core[name] || (core[name] = {});\n var expProto = exports[PROTOTYPE] || (exports[PROTOTYPE] = {});\n var key, own, out, exp;\n if (IS_GLOBAL) source = name;\n for (key in source) {\n // contains in native\n own = !IS_FORCED && target && target[key] !== undefined;\n // export native or passed\n out = (own ? target : source)[key];\n // bind timers to global for call from export context\n exp = IS_BIND && own ? ctx(out, global) : IS_PROTO && typeof out == 'function' ? ctx(Function.call, out) : out;\n // extend global\n if (target) redefine(target, key, out, type & $export.U);\n // export\n if (exports[key] != out) hide(exports, key, exp);\n if (IS_PROTO && expProto[key] != out) expProto[key] = out;\n }\n};\nglobal.core = core;\n// type bitmap\n$export.F = 1; // forced\n$export.G = 2; // global\n$export.S = 4; // static\n$export.P = 8; // proto\n$export.B = 16; // bind\n$export.W = 32; // wrap\n$export.U = 64; // safe\n$export.R = 128; // real proto method for `library`\nmodule.exports = $export;\n\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(4);\nmodule.exports = function (it) {\n if (!isObject(it)) throw TypeError(it + ' is not an object!');\n return it;\n};\n\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports) {\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nvar global = module.exports = typeof window != 'undefined' && window.Math == Math\n ? window : typeof self != 'undefined' && self.Math == Math ? self\n // eslint-disable-next-line no-new-func\n : Function('return this')();\nif (typeof __g == 'number') __g = global; // eslint-disable-line no-undef\n\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (exec) {\n try {\n return !!exec();\n } catch (e) {\n return true;\n }\n};\n\n\n/***/ }),\n/* 4 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n\n\n/***/ }),\n/* 5 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar store = __webpack_require__(56)('wks');\nvar uid = __webpack_require__(45);\nvar Symbol = __webpack_require__(2).Symbol;\nvar USE_SYMBOL = typeof Symbol == 'function';\n\nvar $exports = module.exports = function (name) {\n return store[name] || (store[name] =\n USE_SYMBOL && Symbol[name] || (USE_SYMBOL ? Symbol : uid)('Symbol.' + name));\n};\n\n$exports.store = store;\n\n\n/***/ }),\n/* 6 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.15 ToLength\nvar toInteger = __webpack_require__(23);\nvar min = Math.min;\nmodule.exports = function (it) {\n return it > 0 ? min(toInteger(it), 0x1fffffffffffff) : 0; // pow(2, 53) - 1 == 9007199254740991\n};\n\n\n/***/ }),\n/* 7 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !__webpack_require__(3)(function () {\n return Object.defineProperty({}, 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n/* 8 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(1);\nvar IE8_DOM_DEFINE = __webpack_require__(125);\nvar toPrimitive = __webpack_require__(29);\nvar dP = Object.defineProperty;\n\nexports.f = __webpack_require__(7) ? Object.defineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return dP(O, P, Attributes);\n } catch (e) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported!');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n\n\n/***/ }),\n/* 9 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.13 ToObject(argument)\nvar defined = __webpack_require__(27);\nmodule.exports = function (it) {\n return Object(defined(it));\n};\n\n\n/***/ }),\n/* 10 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (it) {\n if (typeof it != 'function') throw TypeError(it + ' is not a function!');\n return it;\n};\n\n\n/***/ }),\n/* 11 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar RRElement = function () {\n function RRElement() {\n _classCallCheck(this, RRElement);\n\n this.layoutInfo = null;\n }\n\n _createClass(RRElement, [{\n key: \"setLayoutInfo\",\n value: function setLayoutInfo(layoutInfo) {\n this.layoutInfo = layoutInfo;\n }\n }, {\n key: \"getLayoutInfo\",\n value: function getLayoutInfo() {\n return this.layoutInfo;\n }\n }]);\n\n return RRElement;\n}();\n\nexports.default = RRElement;\n\n/***/ }),\n/* 12 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(8);\nvar createDesc = __webpack_require__(41);\nmodule.exports = __webpack_require__(7) ? function (object, key, value) {\n return dP.f(object, key, createDesc(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n\n\n/***/ }),\n/* 13 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2);\nvar hide = __webpack_require__(12);\nvar has = __webpack_require__(15);\nvar SRC = __webpack_require__(45)('src');\nvar $toString = __webpack_require__(165);\nvar TO_STRING = 'toString';\nvar TPL = ('' + $toString).split(TO_STRING);\n\n__webpack_require__(20).inspectSource = function (it) {\n return $toString.call(it);\n};\n\n(module.exports = function (O, key, val, safe) {\n var isFunction = typeof val == 'function';\n if (isFunction) has(val, 'name') || hide(val, 'name', key);\n if (O[key] === val) return;\n if (isFunction) has(val, SRC) || hide(val, SRC, O[key] ? '' + O[key] : TPL.join(String(key)));\n if (O === global) {\n O[key] = val;\n } else if (!safe) {\n delete O[key];\n hide(O, key, val);\n } else if (O[key]) {\n O[key] = val;\n } else {\n hide(O, key, val);\n }\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, TO_STRING, function toString() {\n return typeof this == 'function' && this[SRC] || $toString.call(this);\n});\n\n\n/***/ }),\n/* 14 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar fails = __webpack_require__(3);\nvar defined = __webpack_require__(27);\nvar quot = /\"/g;\n// B.2.3.2.1 CreateHTML(string, tag, attribute, value)\nvar createHTML = function (string, tag, attribute, value) {\n var S = String(defined(string));\n var p1 = '<' + tag;\n if (attribute !== '') p1 += ' ' + attribute + '=\"' + String(value).replace(quot, '&quot;') + '\"';\n return p1 + '>' + S + '</' + tag + '>';\n};\nmodule.exports = function (NAME, exec) {\n var O = {};\n O[NAME] = exec(createHTML);\n $export($export.P + $export.F * fails(function () {\n var test = ''[NAME]('\"');\n return test !== test.toLowerCase() || test.split('\"').length > 3;\n }), 'String', O);\n};\n\n\n/***/ }),\n/* 15 */\n/***/ (function(module, exports) {\n\nvar hasOwnProperty = {}.hasOwnProperty;\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n\n\n/***/ }),\n/* 16 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar pIE = __webpack_require__(55);\nvar createDesc = __webpack_require__(41);\nvar toIObject = __webpack_require__(18);\nvar toPrimitive = __webpack_require__(29);\nvar has = __webpack_require__(15);\nvar IE8_DOM_DEFINE = __webpack_require__(125);\nvar gOPD = Object.getOwnPropertyDescriptor;\n\nexports.f = __webpack_require__(7) ? gOPD : function getOwnPropertyDescriptor(O, P) {\n O = toIObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return gOPD(O, P);\n } catch (e) { /* empty */ }\n if (has(O, P)) return createDesc(!pIE.f.call(O, P), O[P]);\n};\n\n\n/***/ }),\n/* 17 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.9 / 15.2.3.2 Object.getPrototypeOf(O)\nvar has = __webpack_require__(15);\nvar toObject = __webpack_require__(9);\nvar IE_PROTO = __webpack_require__(103)('IE_PROTO');\nvar ObjectProto = Object.prototype;\n\nmodule.exports = Object.getPrototypeOf || function (O) {\n O = toObject(O);\n if (has(O, IE_PROTO)) return O[IE_PROTO];\n if (typeof O.constructor == 'function' && O instanceof O.constructor) {\n return O.constructor.prototype;\n } return O instanceof Object ? ObjectProto : null;\n};\n\n\n/***/ }),\n/* 18 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// to indexed object, toObject with fallback for non-array-like ES3 strings\nvar IObject = __webpack_require__(54);\nvar defined = __webpack_require__(27);\nmodule.exports = function (it) {\n return IObject(defined(it));\n};\n\n\n/***/ }),\n/* 19 */\n/***/ (function(module, exports) {\n\nvar toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n\n\n/***/ }),\n/* 20 */\n/***/ (function(module, exports) {\n\nvar core = module.exports = { version: '2.6.12' };\nif (typeof __e == 'number') __e = core; // eslint-disable-line no-undef\n\n\n/***/ }),\n/* 21 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// optional / simple context binding\nvar aFunction = __webpack_require__(10);\nmodule.exports = function (fn, that, length) {\n aFunction(fn);\n if (that === undefined) return fn;\n switch (length) {\n case 1: return function (a) {\n return fn.call(that, a);\n };\n case 2: return function (a, b) {\n return fn.call(that, a, b);\n };\n case 3: return function (a, b, c) {\n return fn.call(that, a, b, c);\n };\n }\n return function (/* ...args */) {\n return fn.apply(that, arguments);\n };\n};\n\n\n/***/ }),\n/* 22 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar fails = __webpack_require__(3);\n\nmodule.exports = function (method, arg) {\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call\n arg ? method.call(null, function () { /* empty */ }, 1) : method.call(null);\n });\n};\n\n\n/***/ }),\n/* 23 */\n/***/ (function(module, exports) {\n\n// 7.1.4 ToInteger\nvar ceil = Math.ceil;\nvar floor = Math.floor;\nmodule.exports = function (it) {\n return isNaN(it = +it) ? 0 : (it > 0 ? floor : ceil)(it);\n};\n\n\n/***/ }),\n/* 24 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _grammar = __webpack_require__(75);\n\nvar _grammar2 = _interopRequireDefault(_grammar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar RuleDefinitionSign = {\n EQUAL: 1,\n COLON_EQUAL: 2,\n COLON_COLON_EQUAL: 3\n};\n\nvar LiteralDefinitionSign = {\n QUOTE: 1,\n DOUBLE_QUOTE: 2\n};\n\nvar GrammarToBNF = function () {\n _createClass(GrammarToBNF, null, [{\n key: 'RuleDefinitionSign',\n get: function get() {\n return RuleDefinitionSign;\n }\n }, {\n key: 'LiteralDefinitionSign',\n get: function get() {\n return LiteralDefinitionSign;\n }\n }]);\n\n function GrammarToBNF() {\n _classCallCheck(this, GrammarToBNF);\n\n this.ruleDefinitionSign = RuleDefinitionSign.EQUAL;\n this.literalDefinitionSign = LiteralDefinitionSign.QUOTE;\n this.isCommaSeparator = false;\n this.isUsingMultiplicationTokens = false;\n this.ruleConsideredAsLineBreak = null;\n }\n\n /**\r\n * @param {Grammar} grammar \r\n * @return {string}\r\n */\n\n\n _createClass(GrammarToBNF, [{\n key: 'convert',\n value: function convert(grammar) {\n return grammar.toBNF(this);\n }\n }]);\n\n return GrammarToBNF;\n}();\n\nexports.default = GrammarToBNF;\n\n/***/ }),\n/* 25 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rule = __webpack_require__(58);\n\nvar _rule2 = _interopRequireDefault(_rule);\n\nvar _rrdiagram = __webpack_require__(59);\n\nvar _rrdiagram2 = _interopRequireDefault(_rrdiagram);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar GrammarToRRDiagram = function () {\n function GrammarToRRDiagram() {\n _classCallCheck(this, GrammarToRRDiagram);\n\n this.ruleLinkProvider = function (ruleName) {\n return '#' + ruleName;\n };\n this.ruleConsideredAsLineBreak = null;\n }\n\n /**\r\n * @param {Rule} rule \r\n * @return {RRDiagram}\r\n */\n\n\n _createClass(GrammarToRRDiagram, [{\n key: 'convert',\n value: function convert(rule) {\n return rule.toRRDiagram(this);\n }\n }]);\n\n return GrammarToRRDiagram;\n}();\n\nexports.default = GrammarToRRDiagram;\n\n/***/ }),\n/* 26 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 0 -> Array#forEach\n// 1 -> Array#map\n// 2 -> Array#filter\n// 3 -> Array#some\n// 4 -> Array#every\n// 5 -> Array#find\n// 6 -> Array#findIndex\nvar ctx = __webpack_require__(21);\nvar IObject = __webpack_require__(54);\nvar toObject = __webpack_require__(9);\nvar toLength = __webpack_require__(6);\nvar asc = __webpack_require__(87);\nmodule.exports = function (TYPE, $create) {\n var IS_MAP = TYPE == 1;\n var IS_FILTER = TYPE == 2;\n var IS_SOME = TYPE == 3;\n var IS_EVERY = TYPE == 4;\n var IS_FIND_INDEX = TYPE == 6;\n var NO_HOLES = TYPE == 5 || IS_FIND_INDEX;\n var create = $create || asc;\n return function ($this, callbackfn, that) {\n var O = toObject($this);\n var self = IObject(O);\n var f = ctx(callbackfn, that, 3);\n var length = toLength(self.length);\n var index = 0;\n var result = IS_MAP ? create($this, length) : IS_FILTER ? create($this, 0) : undefined;\n var val, res;\n for (;length > index; index++) if (NO_HOLES || index in self) {\n val = self[index];\n res = f(val, index, O);\n if (TYPE) {\n if (IS_MAP) result[index] = res; // map\n else if (res) switch (TYPE) {\n case 3: return true; // some\n case 5: return val; // find\n case 6: return index; // findIndex\n case 2: result.push(val); // filter\n } else if (IS_EVERY) return false; // every\n }\n }\n return IS_FIND_INDEX ? -1 : IS_SOME || IS_EVERY ? IS_EVERY : result;\n };\n};\n\n\n/***/ }),\n/* 27 */\n/***/ (function(module, exports) {\n\n// 7.2.1 RequireObjectCoercible(argument)\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n\n\n/***/ }),\n/* 28 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// most Object methods by ES6 should accept primitives\nvar $export = __webpack_require__(0);\nvar core = __webpack_require__(20);\nvar fails = __webpack_require__(3);\nmodule.exports = function (KEY, exec) {\n var fn = (core.Object || {})[KEY] || Object[KEY];\n var exp = {};\n exp[KEY] = exec(fn);\n $export($export.S + $export.F * fails(function () { fn(1); }), 'Object', exp);\n};\n\n\n/***/ }),\n/* 29 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.1.1 ToPrimitive(input [, PreferredType])\nvar isObject = __webpack_require__(4);\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (it, S) {\n if (!isObject(it)) return it;\n var fn, val;\n if (S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n if (typeof (fn = it.valueOf) == 'function' && !isObject(val = fn.call(it))) return val;\n if (!S && typeof (fn = it.toString) == 'function' && !isObject(val = fn.call(it))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n\n\n/***/ }),\n/* 30 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar Map = __webpack_require__(147);\nvar $export = __webpack_require__(0);\nvar shared = __webpack_require__(56)('metadata');\nvar store = shared.store || (shared.store = new (__webpack_require__(151))());\n\nvar getOrCreateMetadataMap = function (target, targetKey, create) {\n var targetMetadata = store.get(target);\n if (!targetMetadata) {\n if (!create) return undefined;\n store.set(target, targetMetadata = new Map());\n }\n var keyMetadata = targetMetadata.get(targetKey);\n if (!keyMetadata) {\n if (!create) return undefined;\n targetMetadata.set(targetKey, keyMetadata = new Map());\n } return keyMetadata;\n};\nvar ordinaryHasOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? false : metadataMap.has(MetadataKey);\n};\nvar ordinaryGetOwnMetadata = function (MetadataKey, O, P) {\n var metadataMap = getOrCreateMetadataMap(O, P, false);\n return metadataMap === undefined ? undefined : metadataMap.get(MetadataKey);\n};\nvar ordinaryDefineOwnMetadata = function (MetadataKey, MetadataValue, O, P) {\n getOrCreateMetadataMap(O, P, true).set(MetadataKey, MetadataValue);\n};\nvar ordinaryOwnMetadataKeys = function (target, targetKey) {\n var metadataMap = getOrCreateMetadataMap(target, targetKey, false);\n var keys = [];\n if (metadataMap) metadataMap.forEach(function (_, key) { keys.push(key); });\n return keys;\n};\nvar toMetaKey = function (it) {\n return it === undefined || typeof it == 'symbol' ? it : String(it);\n};\nvar exp = function (O) {\n $export($export.S, 'Reflect', O);\n};\n\nmodule.exports = {\n store: store,\n map: getOrCreateMetadataMap,\n has: ordinaryHasOwnMetadata,\n get: ordinaryGetOwnMetadata,\n set: ordinaryDefineOwnMetadata,\n keys: ordinaryOwnMetadataKeys,\n key: toMetaKey,\n exp: exp\n};\n\n\n/***/ }),\n/* 31 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nif (__webpack_require__(7)) {\n var LIBRARY = __webpack_require__(34);\n var global = __webpack_require__(2);\n var fails = __webpack_require__(3);\n var $export = __webpack_require__(0);\n var $typed = __webpack_require__(73);\n var $buffer = __webpack_require__(108);\n var ctx = __webpack_require__(21);\n var anInstance = __webpack_require__(36);\n var propertyDesc = __webpack_require__(41);\n var hide = __webpack_require__(12);\n var redefineAll = __webpack_require__(42);\n var toInteger = __webpack_require__(23);\n var toLength = __webpack_require__(6);\n var toIndex = __webpack_require__(145);\n var toAbsoluteIndex = __webpack_require__(44);\n var toPrimitive = __webpack_require__(29);\n var has = __webpack_require__(15);\n var classof = __webpack_require__(47);\n var isObject = __webpack_require__(4);\n var toObject = __webpack_require__(9);\n var isArrayIter = __webpack_require__(94);\n var create = __webpack_require__(38);\n var getPrototypeOf = __webpack_require__(17);\n var gOPN = __webpack_require__(39).f;\n var getIterFn = __webpack_require__(110);\n var uid = __webpack_require__(45);\n var wks = __webpack_require__(5);\n var createArrayMethod = __webpack_require__(26);\n var createArrayIncludes = __webpack_require__(61);\n var speciesConstructor = __webpack_require__(57);\n var ArrayIterators = __webpack_require__(111);\n var Iterators = __webpack_require__(48);\n var $iterDetect = __webpack_require__(66);\n var setSpecies = __webpack_require__(43);\n var arrayFill = __webpack_require__(86);\n var arrayCopyWithin = __webpack_require__(117);\n var $DP = __webpack_require__(8);\n var $GOPD = __webpack_require__(16);\n var dP = $DP.f;\n var gOPD = $GOPD.f;\n var RangeError = global.RangeError;\n var TypeError = global.TypeError;\n var Uint8Array = global.Uint8Array;\n var ARRAY_BUFFER = 'ArrayBuffer';\n var SHARED_BUFFER = 'Shared' + ARRAY_BUFFER;\n var BYTES_PER_ELEMENT = 'BYTES_PER_ELEMENT';\n var PROTOTYPE = 'prototype';\n var ArrayProto = Array[PROTOTYPE];\n var $ArrayBuffer = $buffer.ArrayBuffer;\n var $DataView = $buffer.DataView;\n var arrayForEach = createArrayMethod(0);\n var arrayFilter = createArrayMethod(2);\n var arraySome = createArrayMethod(3);\n var arrayEvery = createArrayMethod(4);\n var arrayFind = createArrayMethod(5);\n var arrayFindIndex = createArrayMethod(6);\n var arrayIncludes = createArrayIncludes(true);\n var arrayIndexOf = createArrayIncludes(false);\n var arrayValues = ArrayIterators.values;\n var arrayKeys = ArrayIterators.keys;\n var arrayEntries = ArrayIterators.entries;\n var arrayLastIndexOf = ArrayProto.lastIndexOf;\n var arrayReduce = ArrayProto.reduce;\n var arrayReduceRight = ArrayProto.reduceRight;\n var arrayJoin = ArrayProto.join;\n var arraySort = ArrayProto.sort;\n var arraySlice = ArrayProto.slice;\n var arrayToString = ArrayProto.toString;\n var arrayToLocaleString = ArrayProto.toLocaleString;\n var ITERATOR = wks('iterator');\n var TAG = wks('toStringTag');\n var TYPED_CONSTRUCTOR = uid('typed_constructor');\n var DEF_CONSTRUCTOR = uid('def_constructor');\n var ALL_CONSTRUCTORS = $typed.CONSTR;\n var TYPED_ARRAY = $typed.TYPED;\n var VIEW = $typed.VIEW;\n var WRONG_LENGTH = 'Wrong length!';\n\n var $map = createArrayMethod(1, function (O, length) {\n return allocate(speciesConstructor(O, O[DEF_CONSTRUCTOR]), length);\n });\n\n var LITTLE_ENDIAN = fails(function () {\n // eslint-disable-next-line no-undef\n return new Uint8Array(new Uint16Array([1]).buffer)[0] === 1;\n });\n\n var FORCED_SET = !!Uint8Array && !!Uint8Array[PROTOTYPE].set && fails(function () {\n new Uint8Array(1).set({});\n });\n\n var toOffset = function (it, BYTES) {\n var offset = toInteger(it);\n if (offset < 0 || offset % BYTES) throw RangeError('Wrong offset!');\n return offset;\n };\n\n var validate = function (it) {\n if (isObject(it) && TYPED_ARRAY in it) return it;\n throw TypeError(it + ' is not a typed array!');\n };\n\n var allocate = function (C, length) {\n if (!(isObject(C) && TYPED_CONSTRUCTOR in C)) {\n throw TypeError('It is not a typed array constructor!');\n } return new C(length);\n };\n\n var speciesFromList = function (O, list) {\n return fromList(speciesConstructor(O, O[DEF_CONSTRUCTOR]), list);\n };\n\n var fromList = function (C, list) {\n var index = 0;\n var length = list.length;\n var result = allocate(C, length);\n while (length > index) result[index] = list[index++];\n return result;\n };\n\n var addGetter = function (it, key, internal) {\n dP(it, key, { get: function () { return this._d[internal]; } });\n };\n\n var $from = function from(source /* , mapfn, thisArg */) {\n var O = toObject(source);\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var iterFn = getIterFn(O);\n var i, length, values, result, step, iterator;\n if (iterFn != undefined && !isArrayIter(iterFn)) {\n for (iterator = iterFn.call(O), values = [], i = 0; !(step = iterator.next()).done; i++) {\n values.push(step.value);\n } O = values;\n }\n if (mapping && aLen > 2) mapfn = ctx(mapfn, arguments[2], 2);\n for (i = 0, length = toLength(O.length), result = allocate(this, length); length > i; i++) {\n result[i] = mapping ? mapfn(O[i], i) : O[i];\n }\n return result;\n };\n\n var $of = function of(/* ...items */) {\n var index = 0;\n var length = arguments.length;\n var result = allocate(this, length);\n while (length > index) result[index] = arguments[index++];\n return result;\n };\n\n // iOS Safari 6.x fails here\n var TO_LOCALE_BUG = !!Uint8Array && fails(function () { arrayToLocaleString.call(new Uint8Array(1)); });\n\n var $toLocaleString = function toLocaleString() {\n return arrayToLocaleString.apply(TO_LOCALE_BUG ? arraySlice.call(validate(this)) : validate(this), arguments);\n };\n\n var proto = {\n copyWithin: function copyWithin(target, start /* , end */) {\n return arrayCopyWithin.call(validate(this), target, start, arguments.length > 2 ? arguments[2] : undefined);\n },\n every: function every(callbackfn /* , thisArg */) {\n return arrayEvery(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n fill: function fill(value /* , start, end */) { // eslint-disable-line no-unused-vars\n return arrayFill.apply(validate(this), arguments);\n },\n filter: function filter(callbackfn /* , thisArg */) {\n return speciesFromList(this, arrayFilter(validate(this), callbackfn,\n arguments.length > 1 ? arguments[1] : undefined));\n },\n find: function find(predicate /* , thisArg */) {\n return arrayFind(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n findIndex: function findIndex(predicate /* , thisArg */) {\n return arrayFindIndex(validate(this), predicate, arguments.length > 1 ? arguments[1] : undefined);\n },\n forEach: function forEach(callbackfn /* , thisArg */) {\n arrayForEach(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n indexOf: function indexOf(searchElement /* , fromIndex */) {\n return arrayIndexOf(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n includes: function includes(searchElement /* , fromIndex */) {\n return arrayIncludes(validate(this), searchElement, arguments.length > 1 ? arguments[1] : undefined);\n },\n join: function join(separator) { // eslint-disable-line no-unused-vars\n return arrayJoin.apply(validate(this), arguments);\n },\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex */) { // eslint-disable-line no-unused-vars\n return arrayLastIndexOf.apply(validate(this), arguments);\n },\n map: function map(mapfn /* , thisArg */) {\n return $map(validate(this), mapfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n reduce: function reduce(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduce.apply(validate(this), arguments);\n },\n reduceRight: function reduceRight(callbackfn /* , initialValue */) { // eslint-disable-line no-unused-vars\n return arrayReduceRight.apply(validate(this), arguments);\n },\n reverse: function reverse() {\n var that = this;\n var length = validate(that).length;\n var middle = Math.floor(length / 2);\n var index = 0;\n var value;\n while (index < middle) {\n value = that[index];\n that[index++] = that[--length];\n that[length] = value;\n } return that;\n },\n some: function some(callbackfn /* , thisArg */) {\n return arraySome(validate(this), callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n },\n sort: function sort(comparefn) {\n return arraySort.call(validate(this), comparefn);\n },\n subarray: function subarray(begin, end) {\n var O = validate(this);\n var length = O.length;\n var $begin = toAbsoluteIndex(begin, length);\n return new (speciesConstructor(O, O[DEF_CONSTRUCTOR]))(\n O.buffer,\n O.byteOffset + $begin * O.BYTES_PER_ELEMENT,\n toLength((end === undefined ? length : toAbsoluteIndex(end, length)) - $begin)\n );\n }\n };\n\n var $slice = function slice(start, end) {\n return speciesFromList(this, arraySlice.call(validate(this), start, end));\n };\n\n var $set = function set(arrayLike /* , offset */) {\n validate(this);\n var offset = toOffset(arguments[1], 1);\n var length = this.length;\n var src = toObject(arrayLike);\n var len = toLength(src.length);\n var index = 0;\n if (len + offset > length) throw RangeError(WRONG_LENGTH);\n while (index < len) this[offset + index] = src[index++];\n };\n\n var $iterators = {\n entries: function entries() {\n return arrayEntries.call(validate(this));\n },\n keys: function keys() {\n return arrayKeys.call(validate(this));\n },\n values: function values() {\n return arrayValues.call(validate(this));\n }\n };\n\n var isTAIndex = function (target, key) {\n return isObject(target)\n && target[TYPED_ARRAY]\n && typeof key != 'symbol'\n && key in target\n && String(+key) == String(key);\n };\n var $getDesc = function getOwnPropertyDescriptor(target, key) {\n return isTAIndex(target, key = toPrimitive(key, true))\n ? propertyDesc(2, target[key])\n : gOPD(target, key);\n };\n var $setDesc = function defineProperty(target, key, desc) {\n if (isTAIndex(target, key = toPrimitive(key, true))\n && isObject(desc)\n && has(desc, 'value')\n && !has(desc, 'get')\n && !has(desc, 'set')\n // TODO: add validation descriptor w/o calling accessors\n && !desc.configurable\n && (!has(desc, 'writable') || desc.writable)\n && (!has(desc, 'enumerable') || desc.enumerable)\n ) {\n target[key] = desc.value;\n return target;\n } return dP(target, key, desc);\n };\n\n if (!ALL_CONSTRUCTORS) {\n $GOPD.f = $getDesc;\n $DP.f = $setDesc;\n }\n\n $export($export.S + $export.F * !ALL_CONSTRUCTORS, 'Object', {\n getOwnPropertyDescriptor: $getDesc,\n defineProperty: $setDesc\n });\n\n if (fails(function () { arrayToString.call({}); })) {\n arrayToString = arrayToLocaleString = function toString() {\n return arrayJoin.call(this);\n };\n }\n\n var $TypedArrayPrototype$ = redefineAll({}, proto);\n redefineAll($TypedArrayPrototype$, $iterators);\n hide($TypedArrayPrototype$, ITERATOR, $iterators.values);\n redefineAll($TypedArrayPrototype$, {\n slice: $slice,\n set: $set,\n constructor: function () { /* noop */ },\n toString: arrayToString,\n toLocaleString: $toLocaleString\n });\n addGetter($TypedArrayPrototype$, 'buffer', 'b');\n addGetter($TypedArrayPrototype$, 'byteOffset', 'o');\n addGetter($TypedArrayPrototype$, 'byteLength', 'l');\n addGetter($TypedArrayPrototype$, 'length', 'e');\n dP($TypedArrayPrototype$, TAG, {\n get: function () { return this[TYPED_ARRAY]; }\n });\n\n // eslint-disable-next-line max-statements\n module.exports = function (KEY, BYTES, wrapper, CLAMPED) {\n CLAMPED = !!CLAMPED;\n var NAME = KEY + (CLAMPED ? 'Clamped' : '') + 'Array';\n var GETTER = 'get' + KEY;\n var SETTER = 'set' + KEY;\n var TypedArray = global[NAME];\n var Base = TypedArray || {};\n var TAC = TypedArray && getPrototypeOf(TypedArray);\n var FORCED = !TypedArray || !$typed.ABV;\n var O = {};\n var TypedArrayPrototype = TypedArray && TypedArray[PROTOTYPE];\n var getter = function (that, index) {\n var data = that._d;\n return data.v[GETTER](index * BYTES + data.o, LITTLE_ENDIAN);\n };\n var setter = function (that, index, value) {\n var data = that._d;\n if (CLAMPED) value = (value = Math.round(value)) < 0 ? 0 : value > 0xff ? 0xff : value & 0xff;\n data.v[SETTER](index * BYTES + data.o, value, LITTLE_ENDIAN);\n };\n var addElement = function (that, index) {\n dP(that, index, {\n get: function () {\n return getter(this, index);\n },\n set: function (value) {\n return setter(this, index, value);\n },\n enumerable: true\n });\n };\n if (FORCED) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME, '_d');\n var index = 0;\n var offset = 0;\n var buffer, byteLength, length, klass;\n if (!isObject(data)) {\n length = toIndex(data);\n byteLength = length * BYTES;\n buffer = new $ArrayBuffer(byteLength);\n } else if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n buffer = data;\n offset = toOffset($offset, BYTES);\n var $len = data.byteLength;\n if ($length === undefined) {\n if ($len % BYTES) throw RangeError(WRONG_LENGTH);\n byteLength = $len - offset;\n if (byteLength < 0) throw RangeError(WRONG_LENGTH);\n } else {\n byteLength = toLength($length) * BYTES;\n if (byteLength + offset > $len) throw RangeError(WRONG_LENGTH);\n }\n length = byteLength / BYTES;\n } else if (TYPED_ARRAY in data) {\n return fromList(TypedArray, data);\n } else {\n return $from.call(TypedArray, data);\n }\n hide(that, '_d', {\n b: buffer,\n o: offset,\n l: byteLength,\n e: length,\n v: new $DataView(buffer)\n });\n while (index < length) addElement(that, index++);\n });\n TypedArrayPrototype = TypedArray[PROTOTYPE] = create($TypedArrayPrototype$);\n hide(TypedArrayPrototype, 'constructor', TypedArray);\n } else if (!fails(function () {\n TypedArray(1);\n }) || !fails(function () {\n new TypedArray(-1); // eslint-disable-line no-new\n }) || !$iterDetect(function (iter) {\n new TypedArray(); // eslint-disable-line no-new\n new TypedArray(null); // eslint-disable-line no-new\n new TypedArray(1.5); // eslint-disable-line no-new\n new TypedArray(iter); // eslint-disable-line no-new\n }, true)) {\n TypedArray = wrapper(function (that, data, $offset, $length) {\n anInstance(that, TypedArray, NAME);\n var klass;\n // `ws` module bug, temporarily remove validation length for Uint8Array\n // https://github.com/websockets/ws/pull/645\n if (!isObject(data)) return new Base(toIndex(data));\n if (data instanceof $ArrayBuffer || (klass = classof(data)) == ARRAY_BUFFER || klass == SHARED_BUFFER) {\n return $length !== undefined\n ? new Base(data, toOffset($offset, BYTES), $length)\n : $offset !== undefined\n ? new Base(data, toOffset($offset, BYTES))\n : new Base(data);\n }\n if (TYPED_ARRAY in data) return fromList(TypedArray, data);\n return $from.call(TypedArray, data);\n });\n arrayForEach(TAC !== Function.prototype ? gOPN(Base).concat(gOPN(TAC)) : gOPN(Base), function (key) {\n if (!(key in TypedArray)) hide(TypedArray, key, Base[key]);\n });\n TypedArray[PROTOTYPE] = TypedArrayPrototype;\n if (!LIBRARY) TypedArrayPrototype.constructor = TypedArray;\n }\n var $nativeIterator = TypedArrayPrototype[ITERATOR];\n var CORRECT_ITER_NAME = !!$nativeIterator\n && ($nativeIterator.name == 'values' || $nativeIterator.name == undefined);\n var $iterator = $iterators.values;\n hide(TypedArray, TYPED_CONSTRUCTOR, true);\n hide(TypedArrayPrototype, TYPED_ARRAY, NAME);\n hide(TypedArrayPrototype, VIEW, true);\n hide(TypedArrayPrototype, DEF_CONSTRUCTOR, TypedArray);\n\n if (CLAMPED ? new TypedArray(1)[TAG] != NAME : !(TAG in TypedArrayPrototype)) {\n dP(TypedArrayPrototype, TAG, {\n get: function () { return NAME; }\n });\n }\n\n O[NAME] = TypedArray;\n\n $export($export.G + $export.W + $export.F * (TypedArray != Base), O);\n\n $export($export.S, NAME, {\n BYTES_PER_ELEMENT: BYTES\n });\n\n $export($export.S + $export.F * fails(function () { Base.of.call(TypedArray, 1); }), NAME, {\n from: $from,\n of: $of\n });\n\n if (!(BYTES_PER_ELEMENT in TypedArrayPrototype)) hide(TypedArrayPrototype, BYTES_PER_ELEMENT, BYTES);\n\n $export($export.P, NAME, proto);\n\n setSpecies(NAME);\n\n $export($export.P + $export.F * FORCED_SET, NAME, { set: $set });\n\n $export($export.P + $export.F * !CORRECT_ITER_NAME, NAME, $iterators);\n\n if (!LIBRARY && TypedArrayPrototype.toString != arrayToString) TypedArrayPrototype.toString = arrayToString;\n\n $export($export.P + $export.F * fails(function () {\n new TypedArray(1).slice();\n }), NAME, { slice: $slice });\n\n $export($export.P + $export.F * (fails(function () {\n return [1, 2].toLocaleString() != new TypedArray([1, 2]).toLocaleString();\n }) || !fails(function () {\n TypedArrayPrototype.toLocaleString.call([1, 2]);\n })), NAME, { toLocaleString: $toLocaleString });\n\n Iterators[NAME] = CORRECT_ITER_NAME ? $nativeIterator : $iterator;\n if (!LIBRARY && !CORRECT_ITER_NAME) hide(TypedArrayPrototype, ITERATOR, $iterator);\n };\n} else module.exports = function () { /* empty */ };\n\n\n/***/ }),\n/* 32 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Expression = function () {\n function Expression() {\n _classCallCheck(this, Expression);\n }\n\n _createClass(Expression, [{\n key: 'toRRElement',\n\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRElement}\r\n */\n value: function toRRElement(grammarToRRDiagram) {\n // Not reachable, we don't instanciate this class.\n return new _rrelement2.default();\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @param {string[]} sb \r\n * @param {boolean} isNested \r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF, sb, isNested) {}\n\n /**\r\n * @param {*} o \r\n * @return {boolean}\r\n */\n\n }, {\n key: 'equals',\n value: function equals(o) {}\n }]);\n\n return Expression;\n}();\n\nexports.default = Expression;\n\n/***/ }),\n/* 33 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 22.1.3.31 Array.prototype[@@unscopables]\nvar UNSCOPABLES = __webpack_require__(5)('unscopables');\nvar ArrayProto = Array.prototype;\nif (ArrayProto[UNSCOPABLES] == undefined) __webpack_require__(12)(ArrayProto, UNSCOPABLES, {});\nmodule.exports = function (key) {\n ArrayProto[UNSCOPABLES][key] = true;\n};\n\n\n/***/ }),\n/* 34 */\n/***/ (function(module, exports) {\n\nmodule.exports = false;\n\n\n/***/ }),\n/* 35 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar META = __webpack_require__(45)('meta');\nvar isObject = __webpack_require__(4);\nvar has = __webpack_require__(15);\nvar setDesc = __webpack_require__(8).f;\nvar id = 0;\nvar isExtensible = Object.isExtensible || function () {\n return true;\n};\nvar FREEZE = !__webpack_require__(3)(function () {\n return isExtensible(Object.preventExtensions({}));\n});\nvar setMeta = function (it) {\n setDesc(it, META, { value: {\n i: 'O' + ++id, // object ID\n w: {} // weak collections IDs\n } });\n};\nvar fastKey = function (it, create) {\n // return primitive with prefix\n if (!isObject(it)) return typeof it == 'symbol' ? it : (typeof it == 'string' ? 'S' : 'P') + it;\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return 'F';\n // not necessary to add metadata\n if (!create) return 'E';\n // add missing metadata\n setMeta(it);\n // return object ID\n } return it[META].i;\n};\nvar getWeak = function (it, create) {\n if (!has(it, META)) {\n // can't set metadata to uncaught frozen object\n if (!isExtensible(it)) return true;\n // not necessary to add metadata\n if (!create) return false;\n // add missing metadata\n setMeta(it);\n // return hash weak collections IDs\n } return it[META].w;\n};\n// add metadata on freeze-family methods calling\nvar onFreeze = function (it) {\n if (FREEZE && meta.NEED && isExtensible(it) && !has(it, META)) setMeta(it);\n return it;\n};\nvar meta = module.exports = {\n KEY: META,\n NEED: false,\n fastKey: fastKey,\n getWeak: getWeak,\n onFreeze: onFreeze\n};\n\n\n/***/ }),\n/* 36 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (it, Constructor, name, forbiddenField) {\n if (!(it instanceof Constructor) || (forbiddenField !== undefined && forbiddenField in it)) {\n throw TypeError(name + ': incorrect invocation!');\n } return it;\n};\n\n\n/***/ }),\n/* 37 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar ctx = __webpack_require__(21);\nvar call = __webpack_require__(128);\nvar isArrayIter = __webpack_require__(94);\nvar anObject = __webpack_require__(1);\nvar toLength = __webpack_require__(6);\nvar getIterFn = __webpack_require__(110);\nvar BREAK = {};\nvar RETURN = {};\nvar exports = module.exports = function (iterable, entries, fn, that, ITERATOR) {\n var iterFn = ITERATOR ? function () { return iterable; } : getIterFn(iterable);\n var f = ctx(fn, that, entries ? 2 : 1);\n var index = 0;\n var length, step, iterator, result;\n if (typeof iterFn != 'function') throw TypeError(iterable + ' is not iterable!');\n // fast case for arrays with default iterator\n if (isArrayIter(iterFn)) for (length = toLength(iterable.length); length > index; index++) {\n result = entries ? f(anObject(step = iterable[index])[0], step[1]) : f(iterable[index]);\n if (result === BREAK || result === RETURN) return result;\n } else for (iterator = iterFn.call(iterable); !(step = iterator.next()).done;) {\n result = call(iterator, f, step.value, entries);\n if (result === BREAK || result === RETURN) return result;\n }\n};\nexports.BREAK = BREAK;\nexports.RETURN = RETURN;\n\n\n/***/ }),\n/* 38 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\nvar anObject = __webpack_require__(1);\nvar dPs = __webpack_require__(134);\nvar enumBugKeys = __webpack_require__(90);\nvar IE_PROTO = __webpack_require__(103)('IE_PROTO');\nvar Empty = function () { /* empty */ };\nvar PROTOTYPE = 'prototype';\n\n// Create object with fake `null` prototype: use iframe Object with cleared prototype\nvar createDict = function () {\n // Thrash, waste and sodomy: IE GC bug\n var iframe = __webpack_require__(89)('iframe');\n var i = enumBugKeys.length;\n var lt = '<';\n var gt = '>';\n var iframeDocument;\n iframe.style.display = 'none';\n __webpack_require__(92).appendChild(iframe);\n iframe.src = 'javascript:'; // eslint-disable-line no-script-url\n // createDict = iframe.contentWindow.Object;\n // html.removeChild(iframe);\n iframeDocument = iframe.contentWindow.document;\n iframeDocument.open();\n iframeDocument.write(lt + 'script' + gt + 'document.F=Object' + lt + '/script' + gt);\n iframeDocument.close();\n createDict = iframeDocument.F;\n while (i--) delete createDict[PROTOTYPE][enumBugKeys[i]];\n return createDict();\n};\n\nmodule.exports = Object.create || function create(O, Properties) {\n var result;\n if (O !== null) {\n Empty[PROTOTYPE] = anObject(O);\n result = new Empty();\n Empty[PROTOTYPE] = null;\n // add \"__proto__\" for Object.getPrototypeOf polyfill\n result[IE_PROTO] = O;\n } else result = createDict();\n return Properties === undefined ? result : dPs(result, Properties);\n};\n\n\n/***/ }),\n/* 39 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.7 / 15.2.3.4 Object.getOwnPropertyNames(O)\nvar $keys = __webpack_require__(136);\nvar hiddenKeys = __webpack_require__(90).concat('length', 'prototype');\n\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return $keys(O, hiddenKeys);\n};\n\n\n/***/ }),\n/* 40 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 / 15.2.3.14 Object.keys(O)\nvar $keys = __webpack_require__(136);\nvar enumBugKeys = __webpack_require__(90);\n\nmodule.exports = Object.keys || function keys(O) {\n return $keys(O, enumBugKeys);\n};\n\n\n/***/ }),\n/* 41 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n\n\n/***/ }),\n/* 42 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar redefine = __webpack_require__(13);\nmodule.exports = function (target, src, safe) {\n for (var key in src) redefine(target, key, src[key], safe);\n return target;\n};\n\n\n/***/ }),\n/* 43 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar global = __webpack_require__(2);\nvar dP = __webpack_require__(8);\nvar DESCRIPTORS = __webpack_require__(7);\nvar SPECIES = __webpack_require__(5)('species');\n\nmodule.exports = function (KEY) {\n var C = global[KEY];\n if (DESCRIPTORS && C && !C[SPECIES]) dP.f(C, SPECIES, {\n configurable: true,\n get: function () { return this; }\n });\n};\n\n\n/***/ }),\n/* 44 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(23);\nvar max = Math.max;\nvar min = Math.min;\nmodule.exports = function (index, length) {\n index = toInteger(index);\n return index < 0 ? max(index + length, 0) : min(index, length);\n};\n\n\n/***/ }),\n/* 45 */\n/***/ (function(module, exports) {\n\nvar id = 0;\nvar px = Math.random();\nmodule.exports = function (key) {\n return 'Symbol('.concat(key === undefined ? '' : key, ')_', (++id + px).toString(36));\n};\n\n\n/***/ }),\n/* 46 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(4);\nmodule.exports = function (it, TYPE) {\n if (!isObject(it) || it._t !== TYPE) throw TypeError('Incompatible receiver, ' + TYPE + ' required!');\n return it;\n};\n\n\n/***/ }),\n/* 47 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// getting tag from 19.1.3.6 Object.prototype.toString()\nvar cof = __webpack_require__(19);\nvar TAG = __webpack_require__(5)('toStringTag');\n// ES3 wrong here\nvar ARG = cof(function () { return arguments; }()) == 'Arguments';\n\n// fallback for IE11 Script Access Denied error\nvar tryGet = function (it, key) {\n try {\n return it[key];\n } catch (e) { /* empty */ }\n};\n\nmodule.exports = function (it) {\n var O, T, B;\n return it === undefined ? 'Undefined' : it === null ? 'Null'\n // @@toStringTag case\n : typeof (T = tryGet(O = Object(it), TAG)) == 'string' ? T\n // builtinTag case\n : ARG ? cof(O)\n // ES3 arguments fallback\n : (B = cof(O)) == 'Object' && typeof O.callee == 'function' ? 'Arguments' : B;\n};\n\n\n/***/ }),\n/* 48 */\n/***/ (function(module, exports) {\n\nmodule.exports = {};\n\n\n/***/ }),\n/* 49 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar def = __webpack_require__(8).f;\nvar has = __webpack_require__(15);\nvar TAG = __webpack_require__(5)('toStringTag');\n\nmodule.exports = function (it, tag, stat) {\n if (it && !has(it = stat ? it : it.prototype, TAG)) def(it, TAG, { configurable: true, value: tag });\n};\n\n\n/***/ }),\n/* 50 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar defined = __webpack_require__(27);\nvar fails = __webpack_require__(3);\nvar spaces = __webpack_require__(106);\nvar space = '[' + spaces + ']';\nvar non = '\\u200b\\u0085';\nvar ltrim = RegExp('^' + space + space + '*');\nvar rtrim = RegExp(space + space + '*$');\n\nvar exporter = function (KEY, exec, ALIAS) {\n var exp = {};\n var FORCE = fails(function () {\n return !!spaces[KEY]() || non[KEY]() != non;\n });\n var fn = exp[KEY] = FORCE ? exec(trim) : spaces[KEY];\n if (ALIAS) exp[ALIAS] = fn;\n $export($export.P + $export.F * FORCE, 'String', exp);\n};\n\n// 1 -> String#trimLeft\n// 2 -> String#trimRight\n// 3 -> String#trim\nvar trim = exporter.trim = function (string, TYPE) {\n string = String(defined(string));\n if (TYPE & 1) string = string.replace(ltrim, '');\n if (TYPE & 2) string = string.replace(rtrim, '');\n return string;\n};\n\nmodule.exports = exporter;\n\n\n/***/ }),\n/* 51 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar LayoutInfo = function () {\n\n /**\r\n * @param {number} width \r\n * @param {number} height \r\n * @param {number} connectorOffset \r\n */\n function LayoutInfo(width, height, connectorOffset) {\n _classCallCheck(this, LayoutInfo);\n\n this.width = width;\n this.height = height;\n this.connectorOffset = connectorOffset;\n }\n\n /**\r\n * @return {number}\r\n */\n\n\n _createClass(LayoutInfo, [{\n key: \"getWidth\",\n value: function getWidth() {\n return this.width;\n }\n\n /**\r\n * @return {number}\r\n */\n\n }, {\n key: \"getHeight\",\n value: function getHeight() {\n return this.height;\n }\n\n /**\r\n * @return {number}\r\n */\n\n }, {\n key: \"getConnectorOffset\",\n value: function getConnectorOffset() {\n return this.connectorOffset;\n }\n }]);\n\n return LayoutInfo;\n}();\n\nexports.default = LayoutInfo;\n\n/***/ }),\n/* 52 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _rrdiagramtosvg = __webpack_require__(60);\n\nvar _rrdiagramtosvg2 = _interopRequireDefault(_rrdiagramtosvg);\n\nvar _layoutinfo = __webpack_require__(51);\n\nvar _layoutinfo2 = _interopRequireDefault(_layoutinfo);\n\nvar _utils = __webpack_require__(84);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Type = {\n LITERAL: 1,\n RULE: 2,\n SPECIAL_SEQUENCE: 3\n};\n\nvar RRText = function (_RRElement) {\n _inherits(RRText, _RRElement);\n\n _createClass(RRText, null, [{\n key: 'Type',\n get: function get() {\n return Type;\n }\n\n /**\r\n * \r\n * @param {Type} type \r\n * @param {string} text \r\n * @param {?string} link \r\n */\n\n }]);\n\n function RRText(type, text, link) {\n _classCallCheck(this, RRText);\n\n var _this = _possibleConstructorReturn(this, (RRText.__proto__ || Object.getPrototypeOf(RRText)).call(this));\n\n _this.type = type;\n _this.text = text;\n _this.link = link;\n _this.fontInfo = null;\n return _this;\n }\n\n _createClass(RRText, [{\n key: 'getType',\n value: function getType() {\n return this.type;\n }\n }, {\n key: 'getText',\n value: function getText() {\n return this.text;\n }\n }, {\n key: 'getLink',\n value: function getLink() {\n return this.link;\n }\n }, {\n key: 'computeLayoutInfo',\n value: function computeLayoutInfo(rrDiagramToSVG) {\n var insets = {\n top: 5,\n left: 10,\n bottom: 5,\n right: 10\n };\n var cssTextClass = void 0;\n if (this.type == Type.RULE) {\n cssTextClass = rrDiagramToSVG.cssRuleTextClass;\n } else if (this.type == Type.LITERAL) {\n cssTextClass = rrDiagramToSVG.cssLiteralTextClass;\n } else if (this.type == Type.SPECIAL_SEQUENCE) {\n cssTextClass = rrDiagramToSVG.cssSpecialSequenceTextClass;\n } else {\n throw 'Unknown type: type';\n }\n this.fontInfo = (0, _utils.getFontInfo)(this.text, cssTextClass);\n var width = this.fontInfo.textWidth;\n var height = this.fontInfo.height;\n var fontYOffset = this.fontInfo.descent;\n var connectorOffset = insets.top + height - fontYOffset;\n width += insets.left + insets.right;\n height += insets.top + insets.bottom;\n this.setLayoutInfo(new _layoutinfo2.default(width, height, connectorOffset));\n }\n }, {\n key: 'toSVG',\n value: function toSVG(rrDiagramToSVG, xOffset, yOffset, svgContent) {\n var insets = {\n top: 5,\n left: 10,\n bottom: 5,\n right: 10\n };\n var layoutInfo = this.getLayoutInfo();\n var width = layoutInfo.getWidth();\n var height = layoutInfo.getHeight();\n if (this.link != null) {\n svgContent.addElement(\"<a xlink:href=\\\"\" + (0, _utils.escapeXml)(this.link) /* + \"\\\" xlink:title=\\\"\" + escapeXml(this.text)*/ + \"\\\">\");\n }\n var cssClass = void 0;\n var cssTextClass = void 0;\n var shape = void 0;\n if (this.type == Type.RULE) {\n cssClass = rrDiagramToSVG.cssRuleClass;\n cssTextClass = rrDiagramToSVG.cssRuleTextClass;\n shape = rrDiagramToSVG.ruleShape;\n } else if (this.type == Type.LITERAL) {\n cssClass = rrDiagramToSVG.cssLiteralClass;\n cssTextClass = rrDiagramToSVG.cssLiteralTextClass;\n shape = rrDiagramToSVG.literalShape;\n } else if (this.type == Type.SPECIAL_SEQUENCE) {\n cssClass = rrDiagramToSVG.cssSpecialSequenceClass;\n cssTextClass = rrDiagramToSVG.cssSpecialSequenceTextClass;\n shape = rrDiagramToSVG.specialSequenceShape;\n } else {\n throw 'Unknown type: type';\n }\n if (shape == _rrdiagramtosvg2.default.BoxShape.RECTANGLE) {\n svgContent.addElement(\"<rect class=\\\"\" + cssClass + \"\\\" x=\\\"\" + xOffset + \"\\\" y=\\\"\" + yOffset + \"\\\" width=\\\"\" + width + \"\\\" height=\\\"\" + height + \"\\\"/>\");\n } else if (shape == _rrdiagramtosvg2.default.BoxShape.ROUNDED_RECTANGLE) {\n var rx = Math.floor((insets.left + insets.right + insets.top + insets.bottom) / 4);\n svgContent.addElement(\"<rect class=\\\"\" + cssClass + \"\\\" x=\\\"\" + xOffset + \"\\\" y=\\\"\" + yOffset + \"\\\" width=\\\"\" + width + \"\\\" height=\\\"\" + height + \"\\\" rx=\\\"\" + rx + \"\\\"/>\");\n } else if (shape == _rrdiagramtosvg2.default.BoxShape.HEXAGON) {\n // We don't calculate the exact length of the connector: it goes behind the shape.\n // We should calculate if we want to support transparent shapes.\n var connectorOffset = layoutInfo.getConnectorOffset();\n svgContent.addLineConnector(xOffset, yOffset + connectorOffset, xOffset + insets.left, yOffset + connectorOffset);\n svgContent.addElement(\"<polygon class=\\\"\" + (0, _utils.escapeXml)(cssClass) + \"\\\" points=\\\"\" + xOffset + \" \" + (yOffset + Math.floor(height / 2)) + \" \" + (xOffset + insets.left) + \" \" + yOffset + \" \" + (xOffset + width - insets.right) + \" \" + yOffset + \" \" + (xOffset + width) + \" \" + (yOffset + Math.floor(height / 2)) + \" \" + (xOffset + width - insets.right) + \" \" + (yOffset + height) + \" \" + (xOffset + insets.left) + \" \" + (yOffset + height) + \"\\\"/>\");\n svgContent.addLineConnector(xOffset + width, yOffset + connectorOffset, xOffset + width - insets.right, yOffset + connectorOffset);\n }\n var fontYOffset = this.fontInfo.descent;\n var textHeight = this.fontInfo.textHeight;\n var textXOffset = xOffset + insets.left;\n var textYOffset = yOffset + insets.top + textHeight - fontYOffset;\n svgContent.addElement(\"<text class=\\\"\" + (0, _utils.escapeXml)(cssTextClass) + \"\\\" x=\\\"\" + textXOffset + \"\\\" y=\\\"\" + textYOffset + \"\\\">\" + (0, _utils.escapeXml)(this.text) + \"</text>\");\n if (this.link != null) {\n svgContent.addElement(\"</a>\");\n }\n }\n }]);\n\n return RRText;\n}(_rrelement2.default);\n\nexports.default = RRText;\n\n/***/ }),\n/* 53 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 21.2.5.3 get RegExp.prototype.flags\nvar anObject = __webpack_require__(1);\nmodule.exports = function () {\n var that = anObject(this);\n var result = '';\n if (that.global) result += 'g';\n if (that.ignoreCase) result += 'i';\n if (that.multiline) result += 'm';\n if (that.unicode) result += 'u';\n if (that.sticky) result += 'y';\n return result;\n};\n\n\n/***/ }),\n/* 54 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nvar cof = __webpack_require__(19);\n// eslint-disable-next-line no-prototype-builtins\nmodule.exports = Object('z').propertyIsEnumerable(0) ? Object : function (it) {\n return cof(it) == 'String' ? it.split('') : Object(it);\n};\n\n\n/***/ }),\n/* 55 */\n/***/ (function(module, exports) {\n\nexports.f = {}.propertyIsEnumerable;\n\n\n/***/ }),\n/* 56 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar core = __webpack_require__(20);\nvar global = __webpack_require__(2);\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || (global[SHARED] = {});\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: core.version,\n mode: __webpack_require__(34) ? 'pure' : 'global',\n copyright: '© 2020 Denis Pushkarev (zloirock.ru)'\n});\n\n\n/***/ }),\n/* 57 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.3.20 SpeciesConstructor(O, defaultConstructor)\nvar anObject = __webpack_require__(1);\nvar aFunction = __webpack_require__(10);\nvar SPECIES = __webpack_require__(5)('species');\nmodule.exports = function (O, D) {\n var C = anObject(O).constructor;\n var S;\n return C === undefined || (S = anObject(C)[SPECIES]) == undefined ? D : aFunction(S);\n};\n\n\n/***/ }),\n/* 58 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrdiagram = __webpack_require__(59);\n\nvar _rrdiagram2 = _interopRequireDefault(_rrdiagram);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Rule = function () {\n\n /**\r\n * @param {string} name \r\n * @param {Expression} expression \r\n * @param {?string} originalExpressionText \r\n */\n function Rule(name, expression, originalExpressionText) {\n _classCallCheck(this, Rule);\n\n this.name = name;\n this.expression = expression;\n this.originalExpressionText = originalExpressionText;\n }\n\n /**\r\n * @return {string}\r\n */\n\n\n _createClass(Rule, [{\n key: 'getName',\n value: function getName() {\n return this.name;\n }\n\n /**\r\n * @return {?string}\r\n */\n\n }, {\n key: 'getOriginalExpressionText',\n value: function getOriginalExpressionText() {\n return this.originalExpressionText;\n }\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRDiagram}\r\n */\n\n }, {\n key: 'toRRDiagram',\n value: function toRRDiagram(grammarToRRDiagram) {\n return new _rrdiagram2.default(this.expression.toRRElement(grammarToRRDiagram));\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @return {string}\r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF) {\n var sb = [];\n sb.push(this.name, \" \");\n switch (grammarToBNF.ruleDefinitionSign) {\n case _grammartobnf2.default.RuleDefinitionSign.EQUAL:\n sb.push(\"=\");break;\n case _grammartobnf2.default.RuleDefinitionSign.COLON_EQUAL:\n sb.push(\":=\");break;\n case _grammartobnf2.default.RuleDefinitionSign.COLON_COLON_EQUAL:\n sb.push(\"::=\");break;\n }\n sb.push(\" \");\n this.expression.toBNF(grammarToBNF, sb, false);\n sb.push(\";\");\n return sb.join(\"\");\n }\n }]);\n\n return Rule;\n}();\n\nexports.default = Rule;\n\n/***/ }),\n/* 59 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _rrsequence = __webpack_require__(83);\n\nvar _rrsequence2 = _interopRequireDefault(_rrsequence);\n\nvar _svgcontent = __webpack_require__(157);\n\nvar _svgcontent2 = _interopRequireDefault(_svgcontent);\n\nvar _rrbreak = __webpack_require__(80);\n\nvar _rrbreak2 = _interopRequireDefault(_rrbreak);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar RRDiagram = function () {\n\n /**\r\n * @param {RRElement} rrElement \r\n */\n function RRDiagram(rrElement) {\n _classCallCheck(this, RRDiagram);\n\n this.rrElement = rrElement;\n }\n\n _createClass(RRDiagram, [{\n key: 'toSVG',\n value: function toSVG(rrDiagramToSVG) {\n var rrElementList = [];\n if (this.rrElement instanceof _rrsequence2.default) {\n var cursorElementList = [];\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = this.rrElement.getRRElements()[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var element = _step.value;\n\n if (element instanceof _rrbreak2.default) {\n if (cursorElementList.length != 0) {\n rrElementList.push(cursorElementList.length == 1 ? cursorElementList[0] : new _rrsequence2.default(cursorElementList.slice()));\n cursorElementList.length = 0;\n }\n } else {\n cursorElementList.push(element);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n if (cursorElementList.length != 0) {\n rrElementList.push(cursorElementList.length == 1 ? cursorElementList[0] : new _rrsequence2.default(cursorElementList.slice()));\n }\n } else {\n rrElementList.push(this.rrElement);\n }\n var width = 5;\n var height = 5;\n for (var i = 0; i < rrElementList.length; i++) {\n if (i > 0) {\n height += 5;\n }\n var rrElement_ = rrElementList[i];\n rrElement_.computeLayoutInfo(rrDiagramToSVG);\n var layoutInfo = rrElement_.getLayoutInfo();\n width = Math.max(width, 5 + layoutInfo.getWidth() + 5);\n height += layoutInfo.getHeight() + 5;\n }\n var svgContent = new _svgcontent2.default();\n // First, generate the XML for the elements, to know the usage.\n var xOffset = 0;\n var yOffset = 5;\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = rrElementList[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var _rrElement_ = _step2.value;\n\n var layoutInfo2 = _rrElement_.getLayoutInfo();\n var connectorOffset2 = layoutInfo2.getConnectorOffset();\n var width2 = layoutInfo2.getWidth();\n var height2 = layoutInfo2.getHeight();\n var y1 = yOffset + connectorOffset2;\n svgContent.addLineConnector(xOffset, y1, xOffset + 5, y1);\n // TODO: add decorations (like arrows)?\n _rrElement_.toSVG(rrDiagramToSVG, xOffset + 5, yOffset, svgContent);\n svgContent.addLineConnector(xOffset + 5 + width2, y1, xOffset + 5 + width2 + 5, y1);\n yOffset += height2 + 10;\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n var connectorElement = svgContent.getConnectorElement(rrDiagramToSVG);\n var elements = svgContent.getElements();\n // Then generate the rest (CSS and SVG container tags) based on that usage.\n var sb = [];\n sb.push(\"<svg version=\\\"1.1\\\" xmlns:xlink=\\\"http://www.w3.org/1999/xlink\\\" xmlns=\\\"http://www.w3.org/2000/svg\\\" width=\\\"\", width, \"\\\" height=\\\"\", height, \"\\\" viewbox=\\\"0 0 \" + width + \" \" + height + \"\\\">\");\n /* String styles = svgContent.getCSSStyles();\r\n if(styles.length() > 0) {\r\n sb.push(\"<defs><style type=\\\"text/css\\\">\");\r\n sb.push(styles);\r\n sb.push(\"</style></defs>\");\r\n }*/\n sb.push(connectorElement);\n sb.push(elements);\n sb.push(\"</svg>\");\n return sb.join(\"\");\n }\n }]);\n\n return RRDiagram;\n}();\n\nexports.default = RRDiagram;\n\n/***/ }),\n/* 60 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrtext = __webpack_require__(52);\n\nvar _rrtext2 = _interopRequireDefault(_rrtext);\n\nvar _rrdiagram = __webpack_require__(59);\n\nvar _rrdiagram2 = _interopRequireDefault(_rrdiagram);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar BoxShape = {\n RECTANGLE: 1,\n ROUNDED_RECTANGLE: 2,\n HEXAGON: 3\n};\n\nvar RRDiagramToSVG = function () {\n _createClass(RRDiagramToSVG, null, [{\n key: 'BoxShape',\n get: function get() {\n return BoxShape;\n }\n }]);\n\n function RRDiagramToSVG() {\n _classCallCheck(this, RRDiagramToSVG);\n\n this.cssConnectorClass = \"rrConnector\"; //{fill:none;stroke:#222222;}\n this.cssRuleClass = \"rrRule\"; //{fill:#d3f0ff;stroke:#222222;}\n this.cssRuleTextClass = \"rrRuleText\"; //{fill:#000000;font-family:Verdana,Sans-serif;font-size:12px;}\n this.cssLiteralClass = \"rrLiteral\"; //{fill:#90d9ff;stroke:#222222;}\n this.cssLiteralTextClass = \"rrLiteralText\"; //{fill:#000000;font-family:Verdana,Sans-serif;font-size:12px;}\n this.cssSpecialSequenceClass = \"rrSpecialSequence\"; //{fill:#e4f4ff;stroke:#222222;}\n this.cssSpecialSequenceTextClass = \"rrSpecialSequenceText\"; //{fill:#000000;font-family:Verdana,Sans-serif;font-size:12px;}\n this.cssLoopCardinalitiesTextClass = \"rrLoopCardinalities\"; //{fill:#000000;font-family:Verdana,Sans-serif;font-size:10px;}\n this.ruleShape = BoxShape.RECTANGLE;\n this.literalShape = BoxShape.ROUNDED_RECTANGLE;\n this.specialSequenceShape = BoxShape.HEXAGON;\n }\n\n /**\r\n * @param {RRDiagram} rrDiagram \r\n * @return {string}\r\n */\n\n\n _createClass(RRDiagramToSVG, [{\n key: 'convert',\n value: function convert(rrDiagram) {\n return rrDiagram.toSVG(this);\n }\n }]);\n\n return RRDiagramToSVG;\n}();\n\nexports.default = RRDiagramToSVG;\n\n/***/ }),\n/* 61 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// false -> Array#indexOf\n// true -> Array#includes\nvar toIObject = __webpack_require__(18);\nvar toLength = __webpack_require__(6);\nvar toAbsoluteIndex = __webpack_require__(44);\nmodule.exports = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) if (IS_INCLUDES || index in O) {\n if (O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\n\n/***/ }),\n/* 62 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar global = __webpack_require__(2);\nvar $export = __webpack_require__(0);\nvar redefine = __webpack_require__(13);\nvar redefineAll = __webpack_require__(42);\nvar meta = __webpack_require__(35);\nvar forOf = __webpack_require__(37);\nvar anInstance = __webpack_require__(36);\nvar isObject = __webpack_require__(4);\nvar fails = __webpack_require__(3);\nvar $iterDetect = __webpack_require__(66);\nvar setToStringTag = __webpack_require__(49);\nvar inheritIfRequired = __webpack_require__(93);\n\nmodule.exports = function (NAME, wrapper, methods, common, IS_MAP, IS_WEAK) {\n var Base = global[NAME];\n var C = Base;\n var ADDER = IS_MAP ? 'set' : 'add';\n var proto = C && C.prototype;\n var O = {};\n var fixMethod = function (KEY) {\n var fn = proto[KEY];\n redefine(proto, KEY,\n KEY == 'delete' ? function (a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'has' ? function has(a) {\n return IS_WEAK && !isObject(a) ? false : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'get' ? function get(a) {\n return IS_WEAK && !isObject(a) ? undefined : fn.call(this, a === 0 ? 0 : a);\n } : KEY == 'add' ? function add(a) { fn.call(this, a === 0 ? 0 : a); return this; }\n : function set(a, b) { fn.call(this, a === 0 ? 0 : a, b); return this; }\n );\n };\n if (typeof C != 'function' || !(IS_WEAK || proto.forEach && !fails(function () {\n new C().entries().next();\n }))) {\n // create collection constructor\n C = common.getConstructor(wrapper, NAME, IS_MAP, ADDER);\n redefineAll(C.prototype, methods);\n meta.NEED = true;\n } else {\n var instance = new C();\n // early implementations not supports chaining\n var HASNT_CHAINING = instance[ADDER](IS_WEAK ? {} : -0, 1) != instance;\n // V8 ~ Chromium 40- weak-collections throws on primitives, but should return false\n var THROWS_ON_PRIMITIVES = fails(function () { instance.has(1); });\n // most early implementations doesn't supports iterables, most modern - not close it correctly\n var ACCEPT_ITERABLES = $iterDetect(function (iter) { new C(iter); }); // eslint-disable-line no-new\n // for early implementations -0 and +0 not the same\n var BUGGY_ZERO = !IS_WEAK && fails(function () {\n // V8 ~ Chromium 42- fails only with 5+ elements\n var $instance = new C();\n var index = 5;\n while (index--) $instance[ADDER](index, index);\n return !$instance.has(-0);\n });\n if (!ACCEPT_ITERABLES) {\n C = wrapper(function (target, iterable) {\n anInstance(target, C, NAME);\n var that = inheritIfRequired(new Base(), target, C);\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n return that;\n });\n C.prototype = proto;\n proto.constructor = C;\n }\n if (THROWS_ON_PRIMITIVES || BUGGY_ZERO) {\n fixMethod('delete');\n fixMethod('has');\n IS_MAP && fixMethod('get');\n }\n if (BUGGY_ZERO || HASNT_CHAINING) fixMethod(ADDER);\n // weak collections should not contains .clear method\n if (IS_WEAK && proto.clear) delete proto.clear;\n }\n\n setToStringTag(C, NAME);\n\n O[NAME] = C;\n $export($export.G + $export.W + $export.F * (C != Base), O);\n\n if (!IS_WEAK) common.setStrong(C, NAME, IS_MAP);\n\n return C;\n};\n\n\n/***/ }),\n/* 63 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n__webpack_require__(148);\nvar redefine = __webpack_require__(13);\nvar hide = __webpack_require__(12);\nvar fails = __webpack_require__(3);\nvar defined = __webpack_require__(27);\nvar wks = __webpack_require__(5);\nvar regexpExec = __webpack_require__(101);\n\nvar SPECIES = wks('species');\n\nvar REPLACE_SUPPORTS_NAMED_GROUPS = !fails(function () {\n // #replace needs built-in support for named groups.\n // #match works fine because it just return the exec results, even if it has\n // a \"grops\" property.\n var re = /./;\n re.exec = function () {\n var result = [];\n result.groups = { a: '7' };\n return result;\n };\n return ''.replace(re, '$<a>') !== '7';\n});\n\nvar SPLIT_WORKS_WITH_OVERWRITTEN_EXEC = (function () {\n // Chrome 51 has a buggy \"split\" implementation when RegExp#exec !== nativeExec\n var re = /(?:)/;\n var originalExec = re.exec;\n re.exec = function () { return originalExec.apply(this, arguments); };\n var result = 'ab'.split(re);\n return result.length === 2 && result[0] === 'a' && result[1] === 'b';\n})();\n\nmodule.exports = function (KEY, length, exec) {\n var SYMBOL = wks(KEY);\n\n var DELEGATES_TO_SYMBOL = !fails(function () {\n // String methods call symbol-named RegEp methods\n var O = {};\n O[SYMBOL] = function () { return 7; };\n return ''[KEY](O) != 7;\n });\n\n var DELEGATES_TO_EXEC = DELEGATES_TO_SYMBOL ? !fails(function () {\n // Symbol-named RegExp methods call .exec\n var execCalled = false;\n var re = /a/;\n re.exec = function () { execCalled = true; return null; };\n if (KEY === 'split') {\n // RegExp[@@split] doesn't call the regex's exec method, but first creates\n // a new one. We need to return the patched regex when creating the new one.\n re.constructor = {};\n re.constructor[SPECIES] = function () { return re; };\n }\n re[SYMBOL]('');\n return !execCalled;\n }) : undefined;\n\n if (\n !DELEGATES_TO_SYMBOL ||\n !DELEGATES_TO_EXEC ||\n (KEY === 'replace' && !REPLACE_SUPPORTS_NAMED_GROUPS) ||\n (KEY === 'split' && !SPLIT_WORKS_WITH_OVERWRITTEN_EXEC)\n ) {\n var nativeRegExpMethod = /./[SYMBOL];\n var fns = exec(\n defined,\n SYMBOL,\n ''[KEY],\n function maybeCallNative(nativeMethod, regexp, str, arg2, forceStringMethod) {\n if (regexp.exec === regexpExec) {\n if (DELEGATES_TO_SYMBOL && !forceStringMethod) {\n // The native String method already delegates to @@method (this\n // polyfilled function), leasing to infinite recursion.\n // We avoid it by directly calling the native @@method method.\n return { done: true, value: nativeRegExpMethod.call(regexp, str, arg2) };\n }\n return { done: true, value: nativeMethod.call(str, regexp, arg2) };\n }\n return { done: false };\n }\n );\n var strfn = fns[0];\n var rxfn = fns[1];\n\n redefine(String.prototype, KEY, strfn);\n hide(RegExp.prototype, SYMBOL, length == 2\n // 21.2.5.8 RegExp.prototype[@@replace](string, replaceValue)\n // 21.2.5.11 RegExp.prototype[@@split](string, limit)\n ? function (string, arg) { return rxfn.call(string, this, arg); }\n // 21.2.5.6 RegExp.prototype[@@match](string)\n // 21.2.5.9 RegExp.prototype[@@search](string)\n : function (string) { return rxfn.call(string, this); }\n );\n }\n};\n\n\n/***/ }),\n/* 64 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.2.2 IsArray(argument)\nvar cof = __webpack_require__(19);\nmodule.exports = Array.isArray || function isArray(arg) {\n return cof(arg) == 'Array';\n};\n\n\n/***/ }),\n/* 65 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 7.2.8 IsRegExp(argument)\nvar isObject = __webpack_require__(4);\nvar cof = __webpack_require__(19);\nvar MATCH = __webpack_require__(5)('match');\nmodule.exports = function (it) {\n var isRegExp;\n return isObject(it) && ((isRegExp = it[MATCH]) !== undefined ? !!isRegExp : cof(it) == 'RegExp');\n};\n\n\n/***/ }),\n/* 66 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar ITERATOR = __webpack_require__(5)('iterator');\nvar SAFE_CLOSING = false;\n\ntry {\n var riter = [7][ITERATOR]();\n riter['return'] = function () { SAFE_CLOSING = true; };\n // eslint-disable-next-line no-throw-literal\n Array.from(riter, function () { throw 2; });\n} catch (e) { /* empty */ }\n\nmodule.exports = function (exec, skipClosing) {\n if (!skipClosing && !SAFE_CLOSING) return false;\n var safe = false;\n try {\n var arr = [7];\n var iter = arr[ITERATOR]();\n iter.next = function () { return { done: safe = true }; };\n arr[ITERATOR] = function () { return iter; };\n exec(arr);\n } catch (e) { /* empty */ }\n return safe;\n};\n\n\n/***/ }),\n/* 67 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// Forced replacement prototype accessors methods\nmodule.exports = __webpack_require__(34) || !__webpack_require__(3)(function () {\n var K = Math.random();\n // In FF throws only define methods\n // eslint-disable-next-line no-undef, no-useless-call\n __defineSetter__.call(null, K, function () { /* empty */ });\n delete __webpack_require__(2)[K];\n});\n\n\n/***/ }),\n/* 68 */\n/***/ (function(module, exports) {\n\nexports.f = Object.getOwnPropertySymbols;\n\n\n/***/ }),\n/* 69 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar classof = __webpack_require__(47);\nvar builtinExec = RegExp.prototype.exec;\n\n // `RegExpExec` abstract operation\n// https://tc39.github.io/ecma262/#sec-regexpexec\nmodule.exports = function (R, S) {\n var exec = R.exec;\n if (typeof exec === 'function') {\n var result = exec.call(R, S);\n if (typeof result !== 'object') {\n throw new TypeError('RegExp exec method returned something other than an Object or null');\n }\n return result;\n }\n if (classof(R) !== 'RegExp') {\n throw new TypeError('RegExp#exec called on incompatible receiver');\n }\n return builtinExec.call(R, S);\n};\n\n\n/***/ }),\n/* 70 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// https://tc39.github.io/proposal-setmap-offrom/\nvar $export = __webpack_require__(0);\nvar aFunction = __webpack_require__(10);\nvar ctx = __webpack_require__(21);\nvar forOf = __webpack_require__(37);\n\nmodule.exports = function (COLLECTION) {\n $export($export.S, COLLECTION, { from: function from(source /* , mapFn, thisArg */) {\n var mapFn = arguments[1];\n var mapping, A, n, cb;\n aFunction(this);\n mapping = mapFn !== undefined;\n if (mapping) aFunction(mapFn);\n if (source == undefined) return new this();\n A = [];\n if (mapping) {\n n = 0;\n cb = ctx(mapFn, arguments[2], 2);\n forOf(source, false, function (nextItem) {\n A.push(cb(nextItem, n++));\n });\n } else {\n forOf(source, false, A.push, A);\n }\n return new this(A);\n } });\n};\n\n\n/***/ }),\n/* 71 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// https://tc39.github.io/proposal-setmap-offrom/\nvar $export = __webpack_require__(0);\n\nmodule.exports = function (COLLECTION) {\n $export($export.S, COLLECTION, { of: function of() {\n var length = arguments.length;\n var A = new Array(length);\n while (length--) A[length] = arguments[length];\n return new this(A);\n } });\n};\n\n\n/***/ }),\n/* 72 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar toInteger = __webpack_require__(23);\nvar defined = __webpack_require__(27);\n// true -> String#at\n// false -> String#codePointAt\nmodule.exports = function (TO_STRING) {\n return function (that, pos) {\n var s = String(defined(that));\n var i = toInteger(pos);\n var l = s.length;\n var a, b;\n if (i < 0 || i >= l) return TO_STRING ? '' : undefined;\n a = s.charCodeAt(i);\n return a < 0xd800 || a > 0xdbff || i + 1 === l || (b = s.charCodeAt(i + 1)) < 0xdc00 || b > 0xdfff\n ? TO_STRING ? s.charAt(i) : a\n : TO_STRING ? s.slice(i, i + 2) : (a - 0xd800 << 10) + (b - 0xdc00) + 0x10000;\n };\n};\n\n\n/***/ }),\n/* 73 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2);\nvar hide = __webpack_require__(12);\nvar uid = __webpack_require__(45);\nvar TYPED = uid('typed_array');\nvar VIEW = uid('view');\nvar ABV = !!(global.ArrayBuffer && global.DataView);\nvar CONSTR = ABV;\nvar i = 0;\nvar l = 9;\nvar Typed;\n\nvar TypedArrayConstructors = (\n 'Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array'\n).split(',');\n\nwhile (i < l) {\n if (Typed = global[TypedArrayConstructors[i++]]) {\n hide(Typed.prototype, TYPED, true);\n hide(Typed.prototype, VIEW, true);\n } else CONSTR = false;\n}\n\nmodule.exports = {\n ABV: ABV,\n CONSTR: CONSTR,\n TYPED: TYPED,\n VIEW: VIEW\n};\n\n\n/***/ }),\n/* 74 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2);\nvar navigator = global.navigator;\n\nmodule.exports = navigator && navigator.userAgent || '';\n\n\n/***/ }),\n/* 75 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rule = __webpack_require__(58);\n\nvar _rule2 = _interopRequireDefault(_rule);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar Grammar = function () {\n function Grammar(rules) {\n _classCallCheck(this, Grammar);\n\n if (arguments.length == 0) {\n rules = [];\n } else if (rules.constructor !== Array) {\n rules = arguments;\n }\n this.rules = rules;\n }\n\n /**\r\n * @return {Rule[]}\r\n */\n\n\n _createClass(Grammar, [{\n key: 'getRules',\n value: function getRules() {\n return this.rules;\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @return {string}\r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF) {\n var sb = [];\n for (var i = 0; i < this.rules.length; i++) {\n if (i > 0) {\n sb.push(\"\\n\");\n }\n sb.push(this.rules[i].toBNF(grammarToBNF));\n }\n return sb.join(\"\");\n }\n }]);\n\n return Grammar;\n}();\n\nexports.default = Grammar;\n\n/***/ }),\n/* 76 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nvar _rrtext = __webpack_require__(52);\n\nvar _rrtext2 = _interopRequireDefault(_rrtext);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Literal = function (_Expression) {\n _inherits(Literal, _Expression);\n\n /**\r\n * @param {string} text \r\n */\n function Literal(text) {\n _classCallCheck(this, Literal);\n\n var _this = _possibleConstructorReturn(this, (Literal.__proto__ || Object.getPrototypeOf(Literal)).call(this));\n\n _this.text = text;\n return _this;\n }\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRElement}\r\n */\n\n\n _createClass(Literal, [{\n key: 'toRRElement',\n value: function toRRElement(grammarToRRDiagram) {\n return new _rrtext2.default(_rrtext2.default.Type.LITERAL, this.text, null);\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @param {string[]} sb \r\n * @param {boolean} isNested \r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF, sb, isNested) {\n var c = grammarToBNF.literalDefinitionSign == _grammartobnf2.default.LiteralDefinitionSign.DOUBLE_QUOTE ? '\"' : '\\'';\n sb.push(c);\n sb.push(this.text);\n sb.push(c);\n }\n\n /**\r\n * @param {*} o \r\n * @return {boolean}\r\n */\n\n }, {\n key: 'equals',\n value: function equals(o) {\n if (!(o instanceof Literal)) {\n return false;\n }\n return this.text == o.text;\n }\n }]);\n\n return Literal;\n}(_expression2.default);\n\nexports.default = Literal;\n\n/***/ }),\n/* 77 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nvar _rrchoice = __webpack_require__(81);\n\nvar _rrchoice2 = _interopRequireDefault(_rrchoice);\n\nvar _rrline = __webpack_require__(115);\n\nvar _rrline2 = _interopRequireDefault(_rrline);\n\nvar _rrloop = __webpack_require__(82);\n\nvar _rrloop2 = _interopRequireDefault(_rrloop);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Repetition = function (_Expression) {\n _inherits(Repetition, _Expression);\n\n /**\r\n * @param {Expression} expression \r\n * @param {number} minRepetitionCount \r\n * @param {?number} maxRepetitionCount \r\n */\n function Repetition(expression, minRepetitionCount, maxRepetitionCount) {\n _classCallCheck(this, Repetition);\n\n var _this = _possibleConstructorReturn(this, (Repetition.__proto__ || Object.getPrototypeOf(Repetition)).call(this));\n\n _this.expression = expression;\n _this.minRepetitionCount = minRepetitionCount | 0;\n _this.maxRepetitionCount = maxRepetitionCount;\n return _this;\n }\n\n /**\r\n * @return {Expression}\r\n */\n\n\n _createClass(Repetition, [{\n key: 'getExpression',\n value: function getExpression() {\n return this.expression;\n }\n\n /**\r\n * @return {number}\r\n */\n\n }, {\n key: 'getMinRepetitionCount',\n value: function getMinRepetitionCount() {\n return this.minRepetitionCount;\n }\n\n /**\r\n * @return {?number}\r\n */\n\n }, {\n key: 'getMaxRepetitionCount',\n value: function getMaxRepetitionCount() {\n return this.maxRepetitionCount;\n }\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRElement}\r\n */\n\n }, {\n key: 'toRRElement',\n value: function toRRElement(grammarToRRDiagram) {\n var rrElement = this.expression.toRRElement(grammarToRRDiagram);\n if (this.minRepetitionCount == 0) {\n if (this.maxRepetitionCount == null || this.maxRepetitionCount > 1) {\n return new _rrchoice2.default(new _rrloop2.default(rrElement, null, 0, this.maxRepetitionCount == null ? null : this.maxRepetitionCount - 1), new _rrline2.default());\n }\n return new _rrchoice2.default(rrElement, new _rrline2.default());\n }\n return new _rrloop2.default(rrElement, null, this.minRepetitionCount - 1, this.maxRepetitionCount == null ? null : this.maxRepetitionCount - 1);\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @param {string[]} sb \r\n * @param {boolean} isNested \r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF, sb, isNested) {\n var isUsingMultiplicationTokens = grammarToBNF.isUsingMultiplicationTokens;\n if (this.maxRepetitionCount == null) {\n if (this.minRepetitionCount > 0) {\n if (this.minRepetitionCount == 1 && isUsingMultiplicationTokens) {\n this.expression.toBNF(grammarToBNF, sb, true);\n sb.push(\"+\");\n } else {\n if (isNested) {\n sb.push(\"( \");\n }\n if (this.minRepetitionCount > 1) {\n sb.push(this.minRepetitionCount, \" * \");\n }\n this.expression.toBNF(grammarToBNF, sb, false);\n if (grammarToBNF.isCommaSeparator) {\n sb.push(\" ,\");\n }\n sb.push(\" \", \"{ \");\n this.expression.toBNF(grammarToBNF, sb, false);\n sb.push(\" }\");\n if (isNested) {\n sb.push(\" )\");\n }\n }\n } else {\n if (isUsingMultiplicationTokens) {\n this.expression.toBNF(grammarToBNF, sb, true);\n sb.push(\"*\");\n } else {\n sb.push(\"{ \");\n this.expression.toBNF(grammarToBNF, sb, false);\n sb.push(\" }\");\n }\n }\n } else {\n if (this.minRepetitionCount == 0) {\n if (this.maxRepetitionCount == 1 && isUsingMultiplicationTokens) {\n this.expression.toBNF(grammarToBNF, sb, true);\n sb.push(\"?\");\n } else {\n if (this.maxRepetitionCount > 1) {\n sb.push(this.maxRepetitionCount, \" * \");\n }\n sb.push(\"[ \");\n this.expression.toBNF(grammarToBNF, sb, false);\n sb.push(\" ]\");\n }\n } else {\n if (this.minRepetitionCount == this.maxRepetitionCount) {\n sb.push(this.minRepetitionCount, \" * \");\n this.expression.toBNF(grammarToBNF, sb, isNested);\n } else {\n if (isNested) {\n sb.push(\"( \");\n }\n sb.push(this.minRepetitionCount, \" * \");\n this.expression.toBNF(grammarToBNF, sb, false);\n if (grammarToBNF.isCommaSeparator) {\n sb.push(\" ,\");\n }\n sb.push(\" \", this.maxRepetitionCount - this.minRepetitionCount, \" * \", \"[ \");\n this.expression.toBNF(grammarToBNF, sb, false);\n sb.push(\" ]\");\n if (isNested) {\n sb.push(\" )\");\n }\n }\n }\n }\n }\n\n /**\r\n * @param {*} o \r\n * @return {boolean}\r\n */\n\n }, {\n key: 'equals',\n value: function equals(o) {\n if (!(o instanceof Repetition)) {\n return false;\n }\n return this.expression.equals(o.expression) && this.minRepetitionCount == o.minRepetitionCount && this.maxRepetitionCount == null ? o.maxRepetitionCount == null : this.maxRepetitionCount.equals(o.maxRepetitionCount);\n }\n }]);\n\n return Repetition;\n}(_expression2.default);\n\nexports.default = Repetition;\n\n/***/ }),\n/* 78 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nvar _rrbreak = __webpack_require__(80);\n\nvar _rrbreak2 = _interopRequireDefault(_rrbreak);\n\nvar _rrtext = __webpack_require__(52);\n\nvar _rrtext2 = _interopRequireDefault(_rrtext);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar RuleReference = function (_Expression) {\n _inherits(RuleReference, _Expression);\n\n /**\r\n * @param {string} ruleName \r\n */\n function RuleReference(ruleName) {\n _classCallCheck(this, RuleReference);\n\n var _this = _possibleConstructorReturn(this, (RuleReference.__proto__ || Object.getPrototypeOf(RuleReference)).call(this));\n\n _this.ruleName = ruleName;\n return _this;\n }\n\n _createClass(RuleReference, [{\n key: 'getRuleName',\n value: function getRuleName() {\n return this.ruleName;\n }\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRElement}\r\n */\n\n }, {\n key: 'toRRElement',\n value: function toRRElement(grammarToRRDiagram) {\n var ruleConsideredAsLineBreak = grammarToRRDiagram.ruleConsideredAsLineBreak;\n if (ruleConsideredAsLineBreak != null && ruleConsideredAsLineBreak === this.ruleName) {\n return new _rrbreak2.default();\n }\n var ruleLinkProvider = grammarToRRDiagram.ruleLinkProvider;\n return new _rrtext2.default(_rrtext2.default.Type.RULE, this.ruleName, ruleLinkProvider == null ? null : ruleLinkProvider(this.ruleName));\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @param {string[]} sb \r\n * @param {boolean} isNested \r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF, sb, isNested) {\n sb.push(this.ruleName);\n var ruleConsideredAsLineBreak = grammarToBNF.ruleConsideredAsLineBreak;\n if (ruleConsideredAsLineBreak != null && ruleConsideredAsLineBreak === this.ruleName) {\n sb.push(\"\\n\");\n }\n }\n\n /**\r\n * @param {*} o \r\n * @return {boolean}\r\n */\n\n }, {\n key: 'equals',\n value: function equals(o) {\n if (!(o instanceof RuleReference)) {\n return false;\n }\n return this.ruleName == o.ruleName;\n }\n }]);\n\n return RuleReference;\n}(_expression2.default);\n\nexports.default = RuleReference;\n\n/***/ }),\n/* 79 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nvar _rrloop = __webpack_require__(82);\n\nvar _rrloop2 = _interopRequireDefault(_rrloop);\n\nvar _rrsequence = __webpack_require__(83);\n\nvar _rrsequence2 = _interopRequireDefault(_rrsequence);\n\nvar _rulereference = __webpack_require__(78);\n\nvar _rulereference2 = _interopRequireDefault(_rulereference);\n\nvar _repetition = __webpack_require__(77);\n\nvar _repetition2 = _interopRequireDefault(_repetition);\n\nvar _literal = __webpack_require__(76);\n\nvar _literal2 = _interopRequireDefault(_literal);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Sequence = function (_Expression) {\n _inherits(Sequence, _Expression);\n\n /**\r\n * @param {(Expression | Expression[])} expressions \r\n */\n function Sequence(expressions) {\n _classCallCheck(this, Sequence);\n\n var _this = _possibleConstructorReturn(this, (Sequence.__proto__ || Object.getPrototypeOf(Sequence)).call(this));\n\n if (arguments.length == 0) {\n expressions = [];\n } else if (expressions.constructor !== Array) {\n expressions = arguments;\n }\n _this.expressions = expressions;\n return _this;\n }\n\n /**\r\n * @param {Expression[]}\r\n */\n\n\n _createClass(Sequence, [{\n key: 'getExpressions',\n value: function getExpressions() {\n return this.expressions;\n }\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRElement}\r\n */\n\n }, {\n key: 'toRRElement',\n value: function toRRElement(grammarToRRDiagram) {\n var rrElementList = [];\n for (var i = 0; i < this.expressions.length; i++) {\n var expression = this.expressions[i];\n var rrElement = expression.toRRElement(grammarToRRDiagram);\n // Treat special case of: \"a (',' a)*\" and \"a (a)*\"\n if (i < this.expressions.length - 1 && this.expressions[i + 1] instanceof _repetition2.default) {\n var repetition = this.expressions[i + 1];\n var repetitionExpression = repetition.getExpression();\n if (repetitionExpression instanceof Sequence) {\n // Treat special case of: \"expr (',' expr)*\"\n var subExpressions = repetitionExpression.getExpressions();\n if (subExpressions.length == 2 && subExpressions[0] instanceof _literal2.default) {\n if (expression.equals(subExpressions[1])) {\n var maxRepetitionCount = repetition.getMaxRepetitionCount();\n if (maxRepetitionCount == null || maxRepetitionCount > 1) {\n rrElement = new _rrloop2.default(expression.toRRElement(grammarToRRDiagram), subExpressions[0].toRRElement(grammarToRRDiagram), repetition.getMinRepetitionCount(), maxRepetitionCount == null ? null : maxRepetitionCount);\n i++;\n }\n }\n }\n } else if (expression instanceof _rulereference2.default) {\n var ruleLink = expression;\n // Treat special case of: a (a)*\n if (repetitionExpression instanceof _rulereference2.default && repetitionExpression.getRuleName().equals(ruleLink.getRuleName())) {\n var _maxRepetitionCount = repetition.getMaxRepetitionCount();\n if (_maxRepetitionCount == null || _maxRepetitionCount > 1) {\n rrElement = new _rrloop2.default(ruleLink.toRRElement(grammarToRRDiagram), null, repetition.getMinRepetitionCount(), _maxRepetitionCount == null ? null : _maxRepetitionCount);\n i++;\n }\n }\n }\n }\n rrElementList.push(rrElement);\n }\n return new _rrsequence2.default(rrElementList);\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @param {string[]} sb \r\n * @param {boolean} isNested \r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF, sb, isNested) {\n if (this.expressions.length == 0) {\n sb.push(\"( )\");\n return;\n }\n if (isNested && this.expressions.length > 1) {\n sb.push(\"( \");\n }\n var isCommaSeparator = grammarToBNF.isCommaSeparator;\n for (var i = 0; i < this.expressions.length; i++) {\n if (i > 0) {\n if (isCommaSeparator) {\n sb.push(\" ,\");\n }\n sb.push(\" \");\n }\n this.expressions[i].toBNF(grammarToBNF, sb, this.expressions.length == 1 && isNested || !isCommaSeparator);\n }\n if (isNested && this.expressions.length > 1) {\n sb.push(\" )\");\n }\n }\n\n /**\r\n * @param {*} o \r\n * @return {boolean}\r\n */\n\n }, {\n key: 'equals',\n value: function equals(o) {\n if (!(o instanceof Sequence)) {\n return false;\n }\n if (this.expressions.length != o.expressions.length) {\n return false;\n }\n for (var i = 0; i < this.expressions.length; i++) {\n if (!this.expressions[i].equals(o.expressions[i])) {\n return false;\n }\n }\n return true;\n }\n }]);\n\n return Sequence;\n}(_expression2.default);\n\nexports.default = Sequence;\n\n/***/ }),\n/* 80 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar RRBreak = function (_RRElement) {\n _inherits(RRBreak, _RRElement);\n\n function RRBreak() {\n _classCallCheck(this, RRBreak);\n\n return _possibleConstructorReturn(this, (RRBreak.__proto__ || Object.getPrototypeOf(RRBreak)).call(this));\n }\n\n _createClass(RRBreak, [{\n key: \"computeLayoutInfo\",\n value: function computeLayoutInfo(rrDiagramToSVG) {\n throw \"This element must not be nested and should have been processed before entering generation.\";\n }\n }, {\n key: \"toSVG\",\n value: function toSVG(rrDiagramToSVG, xOffset, yOffset, svgContent) {\n throw \"This element must not be nested and should have been processed before entering generation.\";\n }\n }]);\n\n return RRBreak;\n}(_rrelement2.default);\n\nexports.default = RRBreak;\n\n/***/ }),\n/* 81 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _layoutinfo = __webpack_require__(51);\n\nvar _layoutinfo2 = _interopRequireDefault(_layoutinfo);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar RRChoice = function (_RRElement) {\n _inherits(RRChoice, _RRElement);\n\n /**\r\n * @param {(RRElement[] | RRElement)} rrElements \r\n */\n function RRChoice(rrElements) {\n _classCallCheck(this, RRChoice);\n\n var _this = _possibleConstructorReturn(this, (RRChoice.__proto__ || Object.getPrototypeOf(RRChoice)).call(this));\n\n if (arguments.length == 0) {\n rrElements = [];\n } else if (rrElements.constructor !== Array) {\n rrElements = arguments;\n }\n _this.rrElements = rrElements;\n return _this;\n }\n\n _createClass(RRChoice, [{\n key: 'computeLayoutInfo',\n value: function computeLayoutInfo(rrDiagramToSVG) {\n var width = 0;\n var height = 0;\n var connectorOffset = 0;\n for (var i = 0; i < this.rrElements.length; i++) {\n var rrElement = this.rrElements[i];\n rrElement.computeLayoutInfo(rrDiagramToSVG);\n var layoutInfo = rrElement.getLayoutInfo();\n if (i == 0) {\n connectorOffset = layoutInfo.getConnectorOffset();\n } else {\n height += 5;\n }\n height += layoutInfo.getHeight();\n width = Math.max(width, layoutInfo.getWidth());\n }\n width += 20 + 20;\n this.setLayoutInfo(new _layoutinfo2.default(width, height, connectorOffset));\n }\n }, {\n key: 'toSVG',\n value: function toSVG(rrDiagramToSVG, xOffset, yOffset, svgContent) {\n var layoutInfo = this.getLayoutInfo();\n var y1 = yOffset + layoutInfo.getConnectorOffset();\n var x1 = xOffset + 10;\n var x2 = xOffset + layoutInfo.getWidth() - 10;\n var xOffset2 = xOffset + 20;\n var y2 = 0;\n var yOffset2 = yOffset;\n for (var i = 0; i < this.rrElements.length; i++) {\n var rrElement = this.rrElements[i];\n var layoutInfo2 = rrElement.getLayoutInfo();\n var width = layoutInfo2.getWidth();\n var height = layoutInfo2.getHeight();\n y2 = yOffset2 + layoutInfo2.getConnectorOffset();\n if (i == 0) {\n // Line to first element\n svgContent.addLineConnector(x1 - 10, y1, x1 + 10, y1);\n } else {\n if (i == this.rrElements.length - 1) {\n // Curve and vertical down\n svgContent.addPathConnector(x1 - 5, y1, \"q5 0 5 5\", x1, y1 + 5);\n svgContent.addLineConnector(x1, y1 + 5, x1, y2 - 5);\n }\n // Curve and horizontal line to element\n svgContent.addPathConnector(x1, y2 - 5, \"q0 5 5 5\", x1 + 5, y2);\n svgContent.addLineConnector(x1 + 5, y2, xOffset2, y2);\n }\n rrElement.toSVG(rrDiagramToSVG, xOffset2, yOffset2, svgContent);\n if (i == 0) {\n // Line to first element\n svgContent.addLineConnector(xOffset2 + width, y2, x2 + 10, y2);\n } else {\n // Horizontal line to element and curve\n svgContent.addLineConnector(x2 - 5, y2, xOffset2 + width, y2);\n svgContent.addPathConnector(x2 - 5, y2, \"q5 0 5-5\", x2, y2 - 5);\n if (i == this.rrElements.length - 1) {\n // Vertical up and curve\n svgContent.addLineConnector(x2, y2 - 5, x2, y1 + 5);\n svgContent.addPathConnector(x2, y1 + 5, \"q0-5 5-5\", x2 + 5, y1);\n }\n }\n yOffset2 += height + 5;\n }\n }\n }]);\n\n return RRChoice;\n}(_rrelement2.default);\n\nexports.default = RRChoice;\n\n/***/ }),\n/* 82 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _rrdiagramtosvg = __webpack_require__(60);\n\nvar _rrdiagramtosvg2 = _interopRequireDefault(_rrdiagramtosvg);\n\nvar _layoutinfo = __webpack_require__(51);\n\nvar _layoutinfo2 = _interopRequireDefault(_layoutinfo);\n\nvar _utils = __webpack_require__(84);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar RRLoop = function (_RRElement) {\n _inherits(RRLoop, _RRElement);\n\n /**\r\n * @param {RRElement} rrElement \r\n * @param {RRElement} loopElement \r\n * @param {?number} minRepetitionCount \r\n * @param {?number} maxRepetitionCount \r\n */\n function RRLoop(rrElement, loopElement, minRepetitionCount, maxRepetitionCount) {\n _classCallCheck(this, RRLoop);\n\n var _this = _possibleConstructorReturn(this, (RRLoop.__proto__ || Object.getPrototypeOf(RRLoop)).call(this));\n\n _this.rrElement = rrElement;\n _this.loopElement = loopElement;\n if (minRepetitionCount < 0) {\n throw new IllegalArgumentException(\"Minimum repetition must be positive!\");\n }\n if (maxRepetitionCount != null && maxRepetitionCount < minRepetitionCount) {\n throw new IllegalArgumentException(\"Maximum repetition must not be smaller than minimum!\");\n }\n _this.minRepetitionCount = minRepetitionCount;\n _this.maxRepetitionCount = maxRepetitionCount;\n _this.cardinalitiesText = null;\n _this.cardinalitiesWidth = null;\n _this.fontYOffset = null;\n return _this;\n }\n\n _createClass(RRLoop, [{\n key: 'computeLayoutInfo',\n value: function computeLayoutInfo(rrDiagramToSVG) {\n this.cardinalitiesText = null;\n this.cardinalitiesWidth = 0;\n this.fontYOffset = 0;\n if (this.minRepetitionCount > 0 || this.maxRepetitionCount != null) {\n this.cardinalitiesText = this.minRepetitionCount + \"..\" + (this.maxRepetitionCount == null ? \"N\" : this.maxRepetitionCount);\n // TODO: get font from CSS tag.\n var fontInfo = (0, _utils.getFontInfo)(this.cardinalitiesText, rrDiagramToSVG.cssLoopCardinalitiesTextClass);\n this.fontYOffset = fontInfo.descent;\n this.cardinalitiesWidth = fontInfo.textWidth + 2;\n }\n this.rrElement.computeLayoutInfo(rrDiagramToSVG);\n var layoutInfo1 = this.rrElement.getLayoutInfo();\n var width = layoutInfo1.getWidth();\n var height = layoutInfo1.getHeight();\n var connectorOffset = layoutInfo1.getConnectorOffset();\n if (this.loopElement != null) {\n this.loopElement.computeLayoutInfo(rrDiagramToSVG);\n var layoutInfo2 = this.loopElement.getLayoutInfo();\n width = Math.max(width, layoutInfo2.getWidth());\n var height2 = layoutInfo2.getHeight();\n height += 5 + height2;\n connectorOffset += 5 + height2;\n } else {\n height += 15;\n connectorOffset += 15;\n }\n width += 20 + 20 + this.cardinalitiesWidth;\n this.setLayoutInfo(new _layoutinfo2.default(width, height, connectorOffset));\n }\n }, {\n key: 'toSVG',\n value: function toSVG(rrDiagramToSVG, xOffset, yOffset, svgContent) {\n var layoutInfo1 = this.rrElement.getLayoutInfo();\n var width1 = layoutInfo1.getWidth();\n var maxWidth = width1;\n var yOffset2 = yOffset;\n var layoutInfo = this.getLayoutInfo();\n var connectorOffset = layoutInfo.getConnectorOffset();\n var y1 = yOffset;\n var loopOffset = 0;\n var loopWidth = 0;\n if (this.loopElement != null) {\n var layoutInfo2 = this.loopElement.getLayoutInfo();\n loopWidth = layoutInfo2.getWidth();\n maxWidth = Math.max(maxWidth, loopWidth);\n loopOffset = xOffset + 20 + Math.floor((maxWidth - loopWidth) / 2);\n yOffset2 += 5 + layoutInfo2.getHeight();\n y1 += layoutInfo2.getConnectorOffset();\n } else {\n yOffset2 += 15;\n y1 += 5;\n }\n var x1 = xOffset + 10;\n var x2 = xOffset + 20 + maxWidth + 10 + this.cardinalitiesWidth;\n var y2 = yOffset + connectorOffset;\n svgContent.addLineConnector(x1 - 10, y2, x1 + 10 + Math.floor((maxWidth - width1) / 2), y2);\n var loopPathStartX = x1 + 5;\n svgContent.addPathConnector(x1 + 5, y2, \"q-5 0-5-5\", x1, y2 - 5);\n svgContent.addLineConnector(x1, y2 - 5, x1, y1 + 5);\n svgContent.addPathConnector(x1, y1 + 5, \"q0-5 5-5\", x1 + 5, y1);\n if (this.loopElement != null) {\n svgContent.addLineConnector(x1 + 5, y1, loopOffset, y1);\n this.loopElement.toSVG(rrDiagramToSVG, loopOffset, yOffset, svgContent);\n loopPathStartX = loopOffset + loopWidth;\n }\n svgContent.addLineConnector(loopPathStartX, y1, x2 - 5, y1);\n svgContent.addPathConnector(x2 - 5, y1, \"q5 0 5 5\", x2, y1 + 5);\n svgContent.addLineConnector(x2, y1 + 5, x2, y2 - 5);\n svgContent.addPathConnector(x2, y2 - 5, \"q0 5-5 5\", x2 - 5, y2);\n if (this.cardinalitiesText != null) {\n svgContent.addElement(\"<text class=\\\"\" + (0, _utils.escapeXml)(rrDiagramToSVG.cssLoopCardinalitiesTextClass) + \"\\\" x=\\\"\" + (x2 - this.cardinalitiesWidth) + \"\\\" y=\\\"\" + (y2 - this.fontYOffset - 5) + \"\\\">\" + (0, _utils.escapeXml)(this.cardinalitiesText) + \"</text>\");\n }\n this.rrElement.toSVG(rrDiagramToSVG, xOffset + 20 + Math.floor((maxWidth - width1) / 2), yOffset2, svgContent);\n svgContent.addLineConnector(x2 - this.cardinalitiesWidth - 10 - Math.floor((maxWidth - width1) / 2), y2, xOffset + layoutInfo.getWidth(), y2);\n }\n }]);\n\n return RRLoop;\n}(_rrelement2.default);\n\nexports.default = RRLoop;\n\n/***/ }),\n/* 83 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _layoutinfo = __webpack_require__(51);\n\nvar _layoutinfo2 = _interopRequireDefault(_layoutinfo);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar RRSequence = function (_RRElement) {\n _inherits(RRSequence, _RRElement);\n\n /**\r\n * @param {(RRElement | RRElement[])} rrElements \r\n */\n function RRSequence(rrElements) {\n _classCallCheck(this, RRSequence);\n\n var _this = _possibleConstructorReturn(this, (RRSequence.__proto__ || Object.getPrototypeOf(RRSequence)).call(this));\n\n if (arguments.length == 0) {\n rrElements = [];\n } else if (rrElements.constructor !== Array) {\n rrElements = arguments;\n }\n _this.rrElements = rrElements;\n return _this;\n }\n\n _createClass(RRSequence, [{\n key: 'getRRElements',\n value: function getRRElements() {\n return this.rrElements;\n }\n }, {\n key: 'computeLayoutInfo',\n value: function computeLayoutInfo(rrDiagramToSVG) {\n var width = 0;\n var aboveConnector = 0;\n var belowConnector = 0;\n for (var i = 0; i < this.rrElements.length; i++) {\n var rrElement = this.rrElements[i];\n rrElement.computeLayoutInfo(rrDiagramToSVG);\n if (i > 0) {\n width += 10;\n }\n var layoutInfo = rrElement.getLayoutInfo();\n width += layoutInfo.getWidth();\n var height = layoutInfo.getHeight();\n var connectorOffset = layoutInfo.getConnectorOffset();\n aboveConnector = Math.max(aboveConnector, connectorOffset);\n belowConnector = Math.max(belowConnector, height - connectorOffset);\n }\n this.setLayoutInfo(new _layoutinfo2.default(width, aboveConnector + belowConnector, aboveConnector));\n }\n }, {\n key: 'toSVG',\n value: function toSVG(rrDiagramToSVG, xOffset, yOffset, svgContent) {\n var layoutInfo = this.getLayoutInfo();\n var connectorOffset = layoutInfo.getConnectorOffset();\n var widthOffset = 0;\n for (var i = 0; i < this.rrElements.length; i++) {\n var rrElement = this.rrElements[i];\n var layoutInfo2 = rrElement.getLayoutInfo();\n var width2 = layoutInfo2.getWidth();\n var connectorOffset2 = layoutInfo2.getConnectorOffset();\n var xOffset2 = widthOffset + xOffset;\n var yOffset2 = yOffset + connectorOffset - connectorOffset2;\n if (i > 0) {\n svgContent.addLineConnector(xOffset2 - 10, yOffset + connectorOffset, xOffset2, yOffset + connectorOffset);\n }\n rrElement.toSVG(rrDiagramToSVG, xOffset2, yOffset2, svgContent);\n widthOffset += 10;\n widthOffset += width2;\n }\n }\n }]);\n\n return RRSequence;\n}(_rrelement2.default);\n\nexports.default = RRSequence;\n\n/***/ }),\n/* 84 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.escapeXml = escapeXml;\nexports.getFontInfo = getFontInfo;\n/**\r\n * @param {string} unsafe \r\n * @return {string}\r\n */\nfunction escapeXml(unsafe) {\n return unsafe.replace(/[<>&'\"]/g, function (c) {\n switch (c) {\n case '<':\n return '&lt;';\n case '>':\n return '&gt;';\n case '&':\n return '&amp;';\n case '\\'':\n return '&apos;';\n case '\"':\n return '&quot;';\n }\n });\n}\n\n/**\r\n * @param {string} text\r\n * @param {string} fontCssClass\r\n * @return {{textWidth: number, textHeight: number, descent: number, height: number}}\r\n */\nfunction getFontInfo(text, fontCssClass) {\n // TODO: add caching of fontInfo per CssClass\n // Code inspired from: https://galactic.ink/journal/2011/01/html5-typographic-metrics/\n var container = document.body;\n var testDiv = document.createElement(\"div\");\n testDiv.className = fontCssClass;\n container.appendChild(testDiv);\n var computedStyle = window.getComputedStyle(testDiv, null);\n var fontSize = computedStyle.getPropertyValue('font-size');\n var fontFamily = computedStyle.getPropertyValue('font-family');\n container.removeChild(testDiv);\n var parent = document.createElement(\"div\");\n parent.style.fontFamily = fontFamily;\n parent.style.fontSize = fontSize;\n var image = document.createElement(\"img\");\n image.width = 1;\n image.height = 1;\n //image.src = \"./media/1x1.png\";\n image.src = 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAAAAAA6fptVAAAACklEQVR4nGP6DwABBQECz6AuzQAAAABJRU5ErkJggg==';\n var sampleHeight = 500;\n var textNode = document.createTextNode(text);\n parent.appendChild(textNode);\n parent.appendChild(image);\n container.appendChild(parent);\n // getting css equivalent of ctx.measureText()\n image.style.display = \"none\";\n parent.style.display = \"inline\";\n var textHeight = parent.offsetHeight;\n var textWidth = parent.offsetWidth;\n // making sure super-wide text stays in-bounds\n image.style.display = \"inline\";\n var forceWidth = textWidth + image.offsetWidth;\n // capturing the \"top\" and \"bottom\" baseline\n parent.style.cssText = \"margin: \" + sampleHeight + \"px 0; display: block; width: \" + forceWidth + \"px; white-space: nowrap; overflow: hidden; position: absolute; top: 0;\";\n parent.style.fontFamily = fontFamily;\n parent.style.fontSize = fontSize;\n var descent = textHeight - image.offsetTop;\n var height = parent.offsetHeight;\n var fontInfo = {\n textWidth: textWidth,\n textHeight: textHeight,\n descent: descent,\n height: height\n };\n container.removeChild(parent);\n return fontInfo;\n}\n\n/***/ }),\n/* 85 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar at = __webpack_require__(72)(true);\n\n // `AdvanceStringIndex` abstract operation\n// https://tc39.github.io/ecma262/#sec-advancestringindex\nmodule.exports = function (S, index, unicode) {\n return index + (unicode ? at(S, index).length : 1);\n};\n\n\n/***/ }),\n/* 86 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\n\nvar toObject = __webpack_require__(9);\nvar toAbsoluteIndex = __webpack_require__(44);\nvar toLength = __webpack_require__(6);\nmodule.exports = function fill(value /* , start = 0, end = @length */) {\n var O = toObject(this);\n var length = toLength(O.length);\n var aLen = arguments.length;\n var index = toAbsoluteIndex(aLen > 1 ? arguments[1] : undefined, length);\n var end = aLen > 2 ? arguments[2] : undefined;\n var endPos = end === undefined ? length : toAbsoluteIndex(end, length);\n while (endPos > index) O[index++] = value;\n return O;\n};\n\n\n/***/ }),\n/* 87 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 9.4.2.3 ArraySpeciesCreate(originalArray, length)\nvar speciesConstructor = __webpack_require__(161);\n\nmodule.exports = function (original, length) {\n return new (speciesConstructor(original))(length);\n};\n\n\n/***/ }),\n/* 88 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $defineProperty = __webpack_require__(8);\nvar createDesc = __webpack_require__(41);\n\nmodule.exports = function (object, index, value) {\n if (index in object) $defineProperty.f(object, index, createDesc(0, value));\n else object[index] = value;\n};\n\n\n/***/ }),\n/* 89 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(4);\nvar document = __webpack_require__(2).document;\n// typeof document.createElement is 'object' in old IE\nvar is = isObject(document) && isObject(document.createElement);\nmodule.exports = function (it) {\n return is ? document.createElement(it) : {};\n};\n\n\n/***/ }),\n/* 90 */\n/***/ (function(module, exports) {\n\n// IE 8- don't enum bug keys\nmodule.exports = (\n 'constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf'\n).split(',');\n\n\n/***/ }),\n/* 91 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar MATCH = __webpack_require__(5)('match');\nmodule.exports = function (KEY) {\n var re = /./;\n try {\n '/./'[KEY](re);\n } catch (e) {\n try {\n re[MATCH] = false;\n return !'/./'[KEY](re);\n } catch (f) { /* empty */ }\n } return true;\n};\n\n\n/***/ }),\n/* 92 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar document = __webpack_require__(2).document;\nmodule.exports = document && document.documentElement;\n\n\n/***/ }),\n/* 93 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(4);\nvar setPrototypeOf = __webpack_require__(102).set;\nmodule.exports = function (that, target, C) {\n var S = target.constructor;\n var P;\n if (S !== C && typeof S == 'function' && (P = S.prototype) !== C.prototype && isObject(P) && setPrototypeOf) {\n setPrototypeOf(that, P);\n } return that;\n};\n\n\n/***/ }),\n/* 94 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// check on default Array iterator\nvar Iterators = __webpack_require__(48);\nvar ITERATOR = __webpack_require__(5)('iterator');\nvar ArrayProto = Array.prototype;\n\nmodule.exports = function (it) {\n return it !== undefined && (Iterators.Array === it || ArrayProto[ITERATOR] === it);\n};\n\n\n/***/ }),\n/* 95 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar create = __webpack_require__(38);\nvar descriptor = __webpack_require__(41);\nvar setToStringTag = __webpack_require__(49);\nvar IteratorPrototype = {};\n\n// 25.1.2.1.1 %IteratorPrototype%[@@iterator]()\n__webpack_require__(12)(IteratorPrototype, __webpack_require__(5)('iterator'), function () { return this; });\n\nmodule.exports = function (Constructor, NAME, next) {\n Constructor.prototype = create(IteratorPrototype, { next: descriptor(1, next) });\n setToStringTag(Constructor, NAME + ' Iterator');\n};\n\n\n/***/ }),\n/* 96 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar LIBRARY = __webpack_require__(34);\nvar $export = __webpack_require__(0);\nvar redefine = __webpack_require__(13);\nvar hide = __webpack_require__(12);\nvar Iterators = __webpack_require__(48);\nvar $iterCreate = __webpack_require__(95);\nvar setToStringTag = __webpack_require__(49);\nvar getPrototypeOf = __webpack_require__(17);\nvar ITERATOR = __webpack_require__(5)('iterator');\nvar BUGGY = !([].keys && 'next' in [].keys()); // Safari has buggy iterators w/o `next`\nvar FF_ITERATOR = '@@iterator';\nvar KEYS = 'keys';\nvar VALUES = 'values';\n\nvar returnThis = function () { return this; };\n\nmodule.exports = function (Base, NAME, Constructor, next, DEFAULT, IS_SET, FORCED) {\n $iterCreate(Constructor, NAME, next);\n var getMethod = function (kind) {\n if (!BUGGY && kind in proto) return proto[kind];\n switch (kind) {\n case KEYS: return function keys() { return new Constructor(this, kind); };\n case VALUES: return function values() { return new Constructor(this, kind); };\n } return function entries() { return new Constructor(this, kind); };\n };\n var TAG = NAME + ' Iterator';\n var DEF_VALUES = DEFAULT == VALUES;\n var VALUES_BUG = false;\n var proto = Base.prototype;\n var $native = proto[ITERATOR] || proto[FF_ITERATOR] || DEFAULT && proto[DEFAULT];\n var $default = $native || getMethod(DEFAULT);\n var $entries = DEFAULT ? !DEF_VALUES ? $default : getMethod('entries') : undefined;\n var $anyNative = NAME == 'Array' ? proto.entries || $native : $native;\n var methods, key, IteratorPrototype;\n // Fix native\n if ($anyNative) {\n IteratorPrototype = getPrototypeOf($anyNative.call(new Base()));\n if (IteratorPrototype !== Object.prototype && IteratorPrototype.next) {\n // Set @@toStringTag to native iterators\n setToStringTag(IteratorPrototype, TAG, true);\n // fix for some old engines\n if (!LIBRARY && typeof IteratorPrototype[ITERATOR] != 'function') hide(IteratorPrototype, ITERATOR, returnThis);\n }\n }\n // fix Array#{values, @@iterator}.name in V8 / FF\n if (DEF_VALUES && $native && $native.name !== VALUES) {\n VALUES_BUG = true;\n $default = function values() { return $native.call(this); };\n }\n // Define iterator\n if ((!LIBRARY || FORCED) && (BUGGY || VALUES_BUG || !proto[ITERATOR])) {\n hide(proto, ITERATOR, $default);\n }\n // Plug for library\n Iterators[NAME] = $default;\n Iterators[TAG] = returnThis;\n if (DEFAULT) {\n methods = {\n values: DEF_VALUES ? $default : getMethod(VALUES),\n keys: IS_SET ? $default : getMethod(KEYS),\n entries: $entries\n };\n if (FORCED) for (key in methods) {\n if (!(key in proto)) redefine(proto, key, methods[key]);\n } else $export($export.P + $export.F * (BUGGY || VALUES_BUG), NAME, methods);\n }\n return methods;\n};\n\n\n/***/ }),\n/* 97 */\n/***/ (function(module, exports) {\n\n// 20.2.2.14 Math.expm1(x)\nvar $expm1 = Math.expm1;\nmodule.exports = (!$expm1\n // Old FF bug\n || $expm1(10) > 22025.465794806719 || $expm1(10) < 22025.4657948067165168\n // Tor Browser bug\n || $expm1(-2e-17) != -2e-17\n) ? function expm1(x) {\n return (x = +x) == 0 ? x : x > -1e-6 && x < 1e-6 ? x + x * x / 2 : Math.exp(x) - 1;\n} : $expm1;\n\n\n/***/ }),\n/* 98 */\n/***/ (function(module, exports) {\n\n// 20.2.2.28 Math.sign(x)\nmodule.exports = Math.sign || function sign(x) {\n // eslint-disable-next-line no-self-compare\n return (x = +x) == 0 || x != x ? x : x < 0 ? -1 : 1;\n};\n\n\n/***/ }),\n/* 99 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2);\nvar macrotask = __webpack_require__(107).set;\nvar Observer = global.MutationObserver || global.WebKitMutationObserver;\nvar process = global.process;\nvar Promise = global.Promise;\nvar isNode = __webpack_require__(19)(process) == 'process';\n\nmodule.exports = function () {\n var head, last, notify;\n\n var flush = function () {\n var parent, fn;\n if (isNode && (parent = process.domain)) parent.exit();\n while (head) {\n fn = head.fn;\n head = head.next;\n try {\n fn();\n } catch (e) {\n if (head) notify();\n else last = undefined;\n throw e;\n }\n } last = undefined;\n if (parent) parent.enter();\n };\n\n // Node.js\n if (isNode) {\n notify = function () {\n process.nextTick(flush);\n };\n // browsers with MutationObserver, except iOS Safari - https://github.com/zloirock/core-js/issues/339\n } else if (Observer && !(global.navigator && global.navigator.standalone)) {\n var toggle = true;\n var node = document.createTextNode('');\n new Observer(flush).observe(node, { characterData: true }); // eslint-disable-line no-new\n notify = function () {\n node.data = toggle = !toggle;\n };\n // environments with maybe non-completely correct, but existent Promise\n } else if (Promise && Promise.resolve) {\n // Promise.resolve without an argument throws an error in LG WebOS 2\n var promise = Promise.resolve(undefined);\n notify = function () {\n promise.then(flush);\n };\n // for other environments - macrotask based on:\n // - setImmediate\n // - MessageChannel\n // - window.postMessag\n // - onreadystatechange\n // - setTimeout\n } else {\n notify = function () {\n // strange IE + webpack dev server bug - use .call(global)\n macrotask.call(global, flush);\n };\n }\n\n return function (fn) {\n var task = { fn: fn, next: undefined };\n if (last) last.next = task;\n if (!head) {\n head = task;\n notify();\n } last = task;\n };\n};\n\n\n/***/ }),\n/* 100 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 25.4.1.5 NewPromiseCapability(C)\nvar aFunction = __webpack_require__(10);\n\nfunction PromiseCapability(C) {\n var resolve, reject;\n this.promise = new C(function ($$resolve, $$reject) {\n if (resolve !== undefined || reject !== undefined) throw TypeError('Bad Promise constructor');\n resolve = $$resolve;\n reject = $$reject;\n });\n this.resolve = aFunction(resolve);\n this.reject = aFunction(reject);\n}\n\nmodule.exports.f = function (C) {\n return new PromiseCapability(C);\n};\n\n\n/***/ }),\n/* 101 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar regexpFlags = __webpack_require__(53);\n\nvar nativeExec = RegExp.prototype.exec;\n// This always refers to the native implementation, because the\n// String#replace polyfill uses ./fix-regexp-well-known-symbol-logic.js,\n// which loads this file before patching the method.\nvar nativeReplace = String.prototype.replace;\n\nvar patchedExec = nativeExec;\n\nvar LAST_INDEX = 'lastIndex';\n\nvar UPDATES_LAST_INDEX_WRONG = (function () {\n var re1 = /a/,\n re2 = /b*/g;\n nativeExec.call(re1, 'a');\n nativeExec.call(re2, 'a');\n return re1[LAST_INDEX] !== 0 || re2[LAST_INDEX] !== 0;\n})();\n\n// nonparticipating capturing group, copied from es5-shim's String#split patch.\nvar NPCG_INCLUDED = /()??/.exec('')[1] !== undefined;\n\nvar PATCH = UPDATES_LAST_INDEX_WRONG || NPCG_INCLUDED;\n\nif (PATCH) {\n patchedExec = function exec(str) {\n var re = this;\n var lastIndex, reCopy, match, i;\n\n if (NPCG_INCLUDED) {\n reCopy = new RegExp('^' + re.source + '$(?!\\\\s)', regexpFlags.call(re));\n }\n if (UPDATES_LAST_INDEX_WRONG) lastIndex = re[LAST_INDEX];\n\n match = nativeExec.call(re, str);\n\n if (UPDATES_LAST_INDEX_WRONG && match) {\n re[LAST_INDEX] = re.global ? match.index + match[0].length : lastIndex;\n }\n if (NPCG_INCLUDED && match && match.length > 1) {\n // Fix browsers whose `exec` methods don't consistently return `undefined`\n // for NPCG, like IE8. NOTE: This doesn' work for /(.?)?/\n // eslint-disable-next-line no-loop-func\n nativeReplace.call(match[0], reCopy, function () {\n for (i = 1; i < arguments.length - 2; i++) {\n if (arguments[i] === undefined) match[i] = undefined;\n }\n });\n }\n\n return match;\n };\n}\n\nmodule.exports = patchedExec;\n\n\n/***/ }),\n/* 102 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// Works with __proto__ only. Old v8 can't work with null proto objects.\n/* eslint-disable no-proto */\nvar isObject = __webpack_require__(4);\nvar anObject = __webpack_require__(1);\nvar check = function (O, proto) {\n anObject(O);\n if (!isObject(proto) && proto !== null) throw TypeError(proto + \": can't set as prototype!\");\n};\nmodule.exports = {\n set: Object.setPrototypeOf || ('__proto__' in {} ? // eslint-disable-line\n function (test, buggy, set) {\n try {\n set = __webpack_require__(21)(Function.call, __webpack_require__(16).f(Object.prototype, '__proto__').set, 2);\n set(test, []);\n buggy = !(test instanceof Array);\n } catch (e) { buggy = true; }\n return function setPrototypeOf(O, proto) {\n check(O, proto);\n if (buggy) O.__proto__ = proto;\n else set(O, proto);\n return O;\n };\n }({}, false) : undefined),\n check: check\n};\n\n\n/***/ }),\n/* 103 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar shared = __webpack_require__(56)('keys');\nvar uid = __webpack_require__(45);\nmodule.exports = function (key) {\n return shared[key] || (shared[key] = uid(key));\n};\n\n\n/***/ }),\n/* 104 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// helper for String#{startsWith, endsWith, includes}\nvar isRegExp = __webpack_require__(65);\nvar defined = __webpack_require__(27);\n\nmodule.exports = function (that, searchString, NAME) {\n if (isRegExp(searchString)) throw TypeError('String#' + NAME + \" doesn't accept regex!\");\n return String(defined(that));\n};\n\n\n/***/ }),\n/* 105 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar toInteger = __webpack_require__(23);\nvar defined = __webpack_require__(27);\n\nmodule.exports = function repeat(count) {\n var str = String(defined(this));\n var res = '';\n var n = toInteger(count);\n if (n < 0 || n == Infinity) throw RangeError(\"Count can't be negative\");\n for (;n > 0; (n >>>= 1) && (str += str)) if (n & 1) res += str;\n return res;\n};\n\n\n/***/ }),\n/* 106 */\n/***/ (function(module, exports) {\n\nmodule.exports = '\\x09\\x0A\\x0B\\x0C\\x0D\\x20\\xA0\\u1680\\u180E\\u2000\\u2001\\u2002\\u2003' +\n '\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200A\\u202F\\u205F\\u3000\\u2028\\u2029\\uFEFF';\n\n\n/***/ }),\n/* 107 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar ctx = __webpack_require__(21);\nvar invoke = __webpack_require__(126);\nvar html = __webpack_require__(92);\nvar cel = __webpack_require__(89);\nvar global = __webpack_require__(2);\nvar process = global.process;\nvar setTask = global.setImmediate;\nvar clearTask = global.clearImmediate;\nvar MessageChannel = global.MessageChannel;\nvar Dispatch = global.Dispatch;\nvar counter = 0;\nvar queue = {};\nvar ONREADYSTATECHANGE = 'onreadystatechange';\nvar defer, channel, port;\nvar run = function () {\n var id = +this;\n // eslint-disable-next-line no-prototype-builtins\n if (queue.hasOwnProperty(id)) {\n var fn = queue[id];\n delete queue[id];\n fn();\n }\n};\nvar listener = function (event) {\n run.call(event.data);\n};\n// Node.js 0.9+ & IE10+ has setImmediate, otherwise:\nif (!setTask || !clearTask) {\n setTask = function setImmediate(fn) {\n var args = [];\n var i = 1;\n while (arguments.length > i) args.push(arguments[i++]);\n queue[++counter] = function () {\n // eslint-disable-next-line no-new-func\n invoke(typeof fn == 'function' ? fn : Function(fn), args);\n };\n defer(counter);\n return counter;\n };\n clearTask = function clearImmediate(id) {\n delete queue[id];\n };\n // Node.js 0.8-\n if (__webpack_require__(19)(process) == 'process') {\n defer = function (id) {\n process.nextTick(ctx(run, id, 1));\n };\n // Sphere (JS game engine) Dispatch API\n } else if (Dispatch && Dispatch.now) {\n defer = function (id) {\n Dispatch.now(ctx(run, id, 1));\n };\n // Browsers with MessageChannel, includes WebWorkers\n } else if (MessageChannel) {\n channel = new MessageChannel();\n port = channel.port2;\n channel.port1.onmessage = listener;\n defer = ctx(port.postMessage, port, 1);\n // Browsers with postMessage, skip WebWorkers\n // IE8 has postMessage, but it's sync & typeof its postMessage is 'object'\n } else if (global.addEventListener && typeof postMessage == 'function' && !global.importScripts) {\n defer = function (id) {\n global.postMessage(id + '', '*');\n };\n global.addEventListener('message', listener, false);\n // IE8-\n } else if (ONREADYSTATECHANGE in cel('script')) {\n defer = function (id) {\n html.appendChild(cel('script'))[ONREADYSTATECHANGE] = function () {\n html.removeChild(this);\n run.call(id);\n };\n };\n // Rest old browsers\n } else {\n defer = function (id) {\n setTimeout(ctx(run, id, 1), 0);\n };\n }\n}\nmodule.exports = {\n set: setTask,\n clear: clearTask\n};\n\n\n/***/ }),\n/* 108 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar global = __webpack_require__(2);\nvar DESCRIPTORS = __webpack_require__(7);\nvar LIBRARY = __webpack_require__(34);\nvar $typed = __webpack_require__(73);\nvar hide = __webpack_require__(12);\nvar redefineAll = __webpack_require__(42);\nvar fails = __webpack_require__(3);\nvar anInstance = __webpack_require__(36);\nvar toInteger = __webpack_require__(23);\nvar toLength = __webpack_require__(6);\nvar toIndex = __webpack_require__(145);\nvar gOPN = __webpack_require__(39).f;\nvar dP = __webpack_require__(8).f;\nvar arrayFill = __webpack_require__(86);\nvar setToStringTag = __webpack_require__(49);\nvar ARRAY_BUFFER = 'ArrayBuffer';\nvar DATA_VIEW = 'DataView';\nvar PROTOTYPE = 'prototype';\nvar WRONG_LENGTH = 'Wrong length!';\nvar WRONG_INDEX = 'Wrong index!';\nvar $ArrayBuffer = global[ARRAY_BUFFER];\nvar $DataView = global[DATA_VIEW];\nvar Math = global.Math;\nvar RangeError = global.RangeError;\n// eslint-disable-next-line no-shadow-restricted-names\nvar Infinity = global.Infinity;\nvar BaseBuffer = $ArrayBuffer;\nvar abs = Math.abs;\nvar pow = Math.pow;\nvar floor = Math.floor;\nvar log = Math.log;\nvar LN2 = Math.LN2;\nvar BUFFER = 'buffer';\nvar BYTE_LENGTH = 'byteLength';\nvar BYTE_OFFSET = 'byteOffset';\nvar $BUFFER = DESCRIPTORS ? '_b' : BUFFER;\nvar $LENGTH = DESCRIPTORS ? '_l' : BYTE_LENGTH;\nvar $OFFSET = DESCRIPTORS ? '_o' : BYTE_OFFSET;\n\n// IEEE754 conversions based on https://github.com/feross/ieee754\nfunction packIEEE754(value, mLen, nBytes) {\n var buffer = new Array(nBytes);\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var rt = mLen === 23 ? pow(2, -24) - pow(2, -77) : 0;\n var i = 0;\n var s = value < 0 || value === 0 && 1 / value < 0 ? 1 : 0;\n var e, m, c;\n value = abs(value);\n // eslint-disable-next-line no-self-compare\n if (value != value || value === Infinity) {\n // eslint-disable-next-line no-self-compare\n m = value != value ? 1 : 0;\n e = eMax;\n } else {\n e = floor(log(value) / LN2);\n if (value * (c = pow(2, -e)) < 1) {\n e--;\n c *= 2;\n }\n if (e + eBias >= 1) {\n value += rt / c;\n } else {\n value += rt * pow(2, 1 - eBias);\n }\n if (value * c >= 2) {\n e++;\n c /= 2;\n }\n if (e + eBias >= eMax) {\n m = 0;\n e = eMax;\n } else if (e + eBias >= 1) {\n m = (value * c - 1) * pow(2, mLen);\n e = e + eBias;\n } else {\n m = value * pow(2, eBias - 1) * pow(2, mLen);\n e = 0;\n }\n }\n for (; mLen >= 8; buffer[i++] = m & 255, m /= 256, mLen -= 8);\n e = e << mLen | m;\n eLen += mLen;\n for (; eLen > 0; buffer[i++] = e & 255, e /= 256, eLen -= 8);\n buffer[--i] |= s * 128;\n return buffer;\n}\nfunction unpackIEEE754(buffer, mLen, nBytes) {\n var eLen = nBytes * 8 - mLen - 1;\n var eMax = (1 << eLen) - 1;\n var eBias = eMax >> 1;\n var nBits = eLen - 7;\n var i = nBytes - 1;\n var s = buffer[i--];\n var e = s & 127;\n var m;\n s >>= 7;\n for (; nBits > 0; e = e * 256 + buffer[i], i--, nBits -= 8);\n m = e & (1 << -nBits) - 1;\n e >>= -nBits;\n nBits += mLen;\n for (; nBits > 0; m = m * 256 + buffer[i], i--, nBits -= 8);\n if (e === 0) {\n e = 1 - eBias;\n } else if (e === eMax) {\n return m ? NaN : s ? -Infinity : Infinity;\n } else {\n m = m + pow(2, mLen);\n e = e - eBias;\n } return (s ? -1 : 1) * m * pow(2, e - mLen);\n}\n\nfunction unpackI32(bytes) {\n return bytes[3] << 24 | bytes[2] << 16 | bytes[1] << 8 | bytes[0];\n}\nfunction packI8(it) {\n return [it & 0xff];\n}\nfunction packI16(it) {\n return [it & 0xff, it >> 8 & 0xff];\n}\nfunction packI32(it) {\n return [it & 0xff, it >> 8 & 0xff, it >> 16 & 0xff, it >> 24 & 0xff];\n}\nfunction packF64(it) {\n return packIEEE754(it, 52, 8);\n}\nfunction packF32(it) {\n return packIEEE754(it, 23, 4);\n}\n\nfunction addGetter(C, key, internal) {\n dP(C[PROTOTYPE], key, { get: function () { return this[internal]; } });\n}\n\nfunction get(view, bytes, index, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = store.slice(start, start + bytes);\n return isLittleEndian ? pack : pack.reverse();\n}\nfunction set(view, bytes, index, conversion, value, isLittleEndian) {\n var numIndex = +index;\n var intIndex = toIndex(numIndex);\n if (intIndex + bytes > view[$LENGTH]) throw RangeError(WRONG_INDEX);\n var store = view[$BUFFER]._b;\n var start = intIndex + view[$OFFSET];\n var pack = conversion(+value);\n for (var i = 0; i < bytes; i++) store[start + i] = pack[isLittleEndian ? i : bytes - i - 1];\n}\n\nif (!$typed.ABV) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer, ARRAY_BUFFER);\n var byteLength = toIndex(length);\n this._b = arrayFill.call(new Array(byteLength), 0);\n this[$LENGTH] = byteLength;\n };\n\n $DataView = function DataView(buffer, byteOffset, byteLength) {\n anInstance(this, $DataView, DATA_VIEW);\n anInstance(buffer, $ArrayBuffer, DATA_VIEW);\n var bufferLength = buffer[$LENGTH];\n var offset = toInteger(byteOffset);\n if (offset < 0 || offset > bufferLength) throw RangeError('Wrong offset!');\n byteLength = byteLength === undefined ? bufferLength - offset : toLength(byteLength);\n if (offset + byteLength > bufferLength) throw RangeError(WRONG_LENGTH);\n this[$BUFFER] = buffer;\n this[$OFFSET] = offset;\n this[$LENGTH] = byteLength;\n };\n\n if (DESCRIPTORS) {\n addGetter($ArrayBuffer, BYTE_LENGTH, '_l');\n addGetter($DataView, BUFFER, '_b');\n addGetter($DataView, BYTE_LENGTH, '_l');\n addGetter($DataView, BYTE_OFFSET, '_o');\n }\n\n redefineAll($DataView[PROTOTYPE], {\n getInt8: function getInt8(byteOffset) {\n return get(this, 1, byteOffset)[0] << 24 >> 24;\n },\n getUint8: function getUint8(byteOffset) {\n return get(this, 1, byteOffset)[0];\n },\n getInt16: function getInt16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return (bytes[1] << 8 | bytes[0]) << 16 >> 16;\n },\n getUint16: function getUint16(byteOffset /* , littleEndian */) {\n var bytes = get(this, 2, byteOffset, arguments[1]);\n return bytes[1] << 8 | bytes[0];\n },\n getInt32: function getInt32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1]));\n },\n getUint32: function getUint32(byteOffset /* , littleEndian */) {\n return unpackI32(get(this, 4, byteOffset, arguments[1])) >>> 0;\n },\n getFloat32: function getFloat32(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 4, byteOffset, arguments[1]), 23, 4);\n },\n getFloat64: function getFloat64(byteOffset /* , littleEndian */) {\n return unpackIEEE754(get(this, 8, byteOffset, arguments[1]), 52, 8);\n },\n setInt8: function setInt8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setUint8: function setUint8(byteOffset, value) {\n set(this, 1, byteOffset, packI8, value);\n },\n setInt16: function setInt16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setUint16: function setUint16(byteOffset, value /* , littleEndian */) {\n set(this, 2, byteOffset, packI16, value, arguments[2]);\n },\n setInt32: function setInt32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setUint32: function setUint32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packI32, value, arguments[2]);\n },\n setFloat32: function setFloat32(byteOffset, value /* , littleEndian */) {\n set(this, 4, byteOffset, packF32, value, arguments[2]);\n },\n setFloat64: function setFloat64(byteOffset, value /* , littleEndian */) {\n set(this, 8, byteOffset, packF64, value, arguments[2]);\n }\n });\n} else {\n if (!fails(function () {\n $ArrayBuffer(1);\n }) || !fails(function () {\n new $ArrayBuffer(-1); // eslint-disable-line no-new\n }) || fails(function () {\n new $ArrayBuffer(); // eslint-disable-line no-new\n new $ArrayBuffer(1.5); // eslint-disable-line no-new\n new $ArrayBuffer(NaN); // eslint-disable-line no-new\n return $ArrayBuffer.name != ARRAY_BUFFER;\n })) {\n $ArrayBuffer = function ArrayBuffer(length) {\n anInstance(this, $ArrayBuffer);\n return new BaseBuffer(toIndex(length));\n };\n var ArrayBufferProto = $ArrayBuffer[PROTOTYPE] = BaseBuffer[PROTOTYPE];\n for (var keys = gOPN(BaseBuffer), j = 0, key; keys.length > j;) {\n if (!((key = keys[j++]) in $ArrayBuffer)) hide($ArrayBuffer, key, BaseBuffer[key]);\n }\n if (!LIBRARY) ArrayBufferProto.constructor = $ArrayBuffer;\n }\n // iOS Safari 7.x bug\n var view = new $DataView(new $ArrayBuffer(2));\n var $setInt8 = $DataView[PROTOTYPE].setInt8;\n view.setInt8(0, 2147483648);\n view.setInt8(1, 2147483649);\n if (view.getInt8(0) || !view.getInt8(1)) redefineAll($DataView[PROTOTYPE], {\n setInt8: function setInt8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n },\n setUint8: function setUint8(byteOffset, value) {\n $setInt8.call(this, byteOffset, value << 24 >> 24);\n }\n }, true);\n}\nsetToStringTag($ArrayBuffer, ARRAY_BUFFER);\nsetToStringTag($DataView, DATA_VIEW);\nhide($DataView[PROTOTYPE], $typed.VIEW, true);\nexports[ARRAY_BUFFER] = $ArrayBuffer;\nexports[DATA_VIEW] = $DataView;\n\n\n/***/ }),\n/* 109 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2);\nvar core = __webpack_require__(20);\nvar LIBRARY = __webpack_require__(34);\nvar wksExt = __webpack_require__(146);\nvar defineProperty = __webpack_require__(8).f;\nmodule.exports = function (name) {\n var $Symbol = core.Symbol || (core.Symbol = LIBRARY ? {} : global.Symbol || {});\n if (name.charAt(0) != '_' && !(name in $Symbol)) defineProperty($Symbol, name, { value: wksExt.f(name) });\n};\n\n\n/***/ }),\n/* 110 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar classof = __webpack_require__(47);\nvar ITERATOR = __webpack_require__(5)('iterator');\nvar Iterators = __webpack_require__(48);\nmodule.exports = __webpack_require__(20).getIteratorMethod = function (it) {\n if (it != undefined) return it[ITERATOR]\n || it['@@iterator']\n || Iterators[classof(it)];\n};\n\n\n/***/ }),\n/* 111 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar addToUnscopables = __webpack_require__(33);\nvar step = __webpack_require__(129);\nvar Iterators = __webpack_require__(48);\nvar toIObject = __webpack_require__(18);\n\n// 22.1.3.4 Array.prototype.entries()\n// 22.1.3.13 Array.prototype.keys()\n// 22.1.3.29 Array.prototype.values()\n// 22.1.3.30 Array.prototype[@@iterator]()\nmodule.exports = __webpack_require__(96)(Array, 'Array', function (iterated, kind) {\n this._t = toIObject(iterated); // target\n this._i = 0; // next index\n this._k = kind; // kind\n// 22.1.5.2.1 %ArrayIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var kind = this._k;\n var index = this._i++;\n if (!O || index >= O.length) {\n this._t = undefined;\n return step(1);\n }\n if (kind == 'keys') return step(0, index);\n if (kind == 'values') return step(0, O[index]);\n return step(0, [index, O[index]]);\n}, 'values');\n\n// argumentsList[@@iterator] is %ArrayProto_values% (9.4.4.6, 9.4.4.7)\nIterators.Arguments = Iterators.Array;\n\naddToUnscopables('keys');\naddToUnscopables('values');\naddToUnscopables('entries');\n\n\n/***/ }),\n/* 112 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _chunk = __webpack_require__(156);\n\nvar _chunk2 = _interopRequireDefault(_chunk);\n\nvar _rule = __webpack_require__(58);\n\nvar _rule2 = _interopRequireDefault(_rule);\n\nvar _grammar = __webpack_require__(75);\n\nvar _grammar2 = _interopRequireDefault(_grammar);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n/**\r\n * @param {string} name\r\n * @param {Chunk} chunk\r\n * @param {string} originalExpressionText\r\n */\nfunction createRule(name, chunk, originalExpressionText) {\n chunk.prune();\n var expression = chunk.getExpression();\n var rule = new _rule2.default(name, expression, originalExpressionText);\n return rule;\n}\n\n/**\r\n * @param {Chunk} parentChunk\r\n * @param {function(): string} readNext\r\n * @param {string} stopChar\r\n * @return {string}\r\n */\nfunction loadExpression(parentChunk, readNext, stopChar) {\n var expressionTextSB = [];\n var lastChar = 0;\n var sb = [];\n var isFirst = true;\n var isInSpecialGroup = false;\n var specialGroupChar = 0;\n var isLiteral = parentChunk.getType() == _chunk2.default.ChunkType.LITERAL;\n for (var c; (c = readNext()) != -1;) {\n expressionTextSB.push(c);\n if (isLiteral) {\n if (c == stopChar) {\n var s = sb.join(\"\");\n parentChunk.setText(s);\n return expressionTextSB.join(\"\");\n }\n sb.push(c);\n } else {\n if (isFirst && parentChunk.getType() == _chunk2.default.ChunkType.GROUP) {\n switch (c) {\n case '*':\n isInSpecialGroup = true;\n specialGroupChar = c;\n break;\n case '?':\n isInSpecialGroup = true;\n specialGroupChar = c;\n break;\n }\n }\n isFirst = false;\n if (isInSpecialGroup) {\n if (c == ')' && lastChar == specialGroupChar) {\n // Mutate parent group\n switch (specialGroupChar) {\n case '*':\n parentChunk.setType(_chunk2.default.ChunkType.COMMENT);break;\n case '?':\n parentChunk.setType(_chunk2.default.ChunkType.SPECIAL_SEQUENCE);break;\n }\n var comment = sb.join(\"\");\n comment = comment.slice(1, comment.length - 1).trim();\n parentChunk.setText(comment);\n return expressionTextSB.join(\"\");\n }\n if (sb.length > 0 || !/\\s/.test(c)) {\n sb.push(c);\n }\n } else {\n if (c == stopChar) {\n var content = sb.join(\"\").trim();\n if (content.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, content));\n }\n return expressionTextSB.join(\"\");\n }\n switch (c) {\n case ',':\n case ' ':\n case '\\n':\n case '\\r':\n case '\\t':\n {\n var _content = sb.join(\"\").trim();\n if (_content.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content));\n }\n sb.length = 0;\n // parentChunk.addChunk(new Chunk(Chunk.ChunkType.CONCATENATION));\n break;\n }\n case '|':\n {\n var _content2 = sb.join(\"\").trim();\n if (_content2.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content2));\n }\n sb.length = 0;\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.ALTERNATION));\n break;\n }\n case '*':\n case '+':\n case '?':\n {\n var _content3 = sb.join(\"\").trim();\n if (_content3.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content3));\n }\n sb.length = 0;\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.REPETITION_TOKEN, c));\n break;\n }\n case '\\\"':\n {\n var _content4 = sb.join(\"\").trim();\n if (_content4.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content4));\n }\n sb.length = 0;\n var literalChunk = new _chunk2.default(_chunk2.default.ChunkType.LITERAL);\n var subExpressionText = loadExpression(literalChunk, readNext, '\\\"');\n expressionTextSB.push(subExpressionText);\n parentChunk.addChunk(literalChunk);\n break;\n }\n case '\\'':\n {\n var _content5 = sb.join(\"\").trim();\n if (_content5.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content5));\n }\n sb.length = 0;\n var _literalChunk = new _chunk2.default(_chunk2.default.ChunkType.LITERAL);\n var _subExpressionText = loadExpression(_literalChunk, readNext, '\\'');\n expressionTextSB.push(_subExpressionText);\n parentChunk.addChunk(_literalChunk);\n break;\n }\n case '(':\n {\n var _content6 = sb.join(\"\").trim();\n if (_content6.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content6));\n }\n sb.length = 0;\n var groupChunk = new _chunk2.default(_chunk2.default.ChunkType.GROUP);\n var _subExpressionText2 = loadExpression(groupChunk, readNext, ')');\n expressionTextSB.push(_subExpressionText2);\n parentChunk.addChunk(groupChunk);\n break;\n }\n case '[':\n {\n var _content7 = sb.join(\"\").trim();\n if (_content7.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content7));\n }\n sb.length = 0;\n var optionChunk = new _chunk2.default(_chunk2.default.ChunkType.OPTION);\n var _subExpressionText3 = loadExpression(optionChunk, readNext, ']');\n expressionTextSB.push(_subExpressionText3);\n parentChunk.addChunk(optionChunk);\n break;\n }\n case '{':\n {\n var _content8 = sb.join(\"\").trim();\n if (_content8.length > 0) {\n parentChunk.addChunk(new _chunk2.default(_chunk2.default.ChunkType.RULE, _content8));\n }\n sb.length = 0;\n var repetitionChunk = new _chunk2.default(_chunk2.default.ChunkType.REPETITION);\n repetitionChunk.setMinCount(0);\n var _subExpressionText4 = loadExpression(repetitionChunk, readNext, '}');\n expressionTextSB.push(_subExpressionText4);\n parentChunk.addChunk(repetitionChunk);\n break;\n }\n default:\n {\n if (sb.length > 0 || !/\\s/.test(c)) {\n sb.push(c);\n }\n break;\n }\n }\n }\n lastChar = c;\n }\n }\n return expressionTextSB.join(\"\");\n}\n\nvar BNFToGrammar = function () {\n function BNFToGrammar() {\n _classCallCheck(this, BNFToGrammar);\n }\n\n _createClass(BNFToGrammar, [{\n key: 'convert',\n\n\n /**\r\n * @param {string} text \r\n * @return {Grammar}\r\n */\n value: function convert(text) {\n var readNext = function () {\n // all your code here\n var index = 0;\n return function () {\n if (index < text.length) {\n var char = text[index];\n index++;\n return char;\n }\n return -1;\n };\n }();\n var sb = [];\n var ruleList = [];\n for (var c; (c = readNext()) != -1;) {\n switch (c) {\n case '=':\n {\n var chunk = new _chunk2.default(_chunk2.default.ChunkType.GROUP);\n var expressionText = loadExpression(chunk, readNext, ';');\n if (expressionText.endsWith(\";\")) {\n expressionText = expressionText.slice(0, expressionText.length - 1);\n }\n var ruleName = sb.join(\"\");\n sb.length = 0;\n if (ruleName.endsWith(\":\")) {\n ruleName = ruleName.slice(0, ruleName.length - 1);\n if (ruleName.endsWith(\":\")) {\n ruleName = ruleName.slice(0, ruleName.length - 1);\n }\n }\n ruleName = ruleName.trim();\n var rule = createRule(ruleName, chunk, expressionText);\n ruleList.push(rule);\n break;\n }\n // Consider that '(' in rule name is start of a comment.\n case '(':\n {\n if (readNext() != '*') {\n throw \"Expecting start of a comment after '(' but could not find '*'!\";\n }\n var lastChar = 0;\n for (var c2; (c2 = readNext()) != -1;) {\n if (c2 == ')' && lastChar == '*') {\n break;\n }\n lastChar = c2;\n }\n break;\n }\n default:\n {\n if (!/\\s/.test(c) || sb.length > 0) {\n sb.push(c);\n }\n break;\n }\n }\n }\n return new _grammar2.default(ruleList);\n }\n }]);\n\n return BNFToGrammar;\n}();\n\nexports.default = BNFToGrammar;\n\n/***/ }),\n/* 113 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nvar _sequence = __webpack_require__(79);\n\nvar _sequence2 = _interopRequireDefault(_sequence);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nvar _rrchoice = __webpack_require__(81);\n\nvar _rrchoice2 = _interopRequireDefault(_rrchoice);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar Choice = function (_Expression) {\n _inherits(Choice, _Expression);\n\n /**\r\n * @param {Expression | Expression[]} expressions \r\n */\n function Choice(expressions) {\n _classCallCheck(this, Choice);\n\n var _this = _possibleConstructorReturn(this, (Choice.__proto__ || Object.getPrototypeOf(Choice)).call(this));\n\n if (arguments.length == 0) {\n expressions = [];\n } else if (expressions.constructor !== Array) {\n expressions = arguments;\n }\n _this.expressions = expressions;\n return _this;\n }\n\n /**\r\n * @return {Expression[]}\r\n */\n\n\n _createClass(Choice, [{\n key: 'getExpressions',\n value: function getExpressions() {\n return this.expressions;\n }\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRElement}\r\n */\n\n }, {\n key: 'toRRElement',\n value: function toRRElement(grammarToRRDiagram) {\n var rrElements = [];\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = this.expressions[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var expression = _step.value;\n\n rrElements.push(expression.toRRElement(grammarToRRDiagram));\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return new _rrchoice2.default(rrElements);\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @param {string[]} sb \r\n * @param {boolean} isNested \r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF, sb, isNested) {\n var expressionList = [];\n var hasNoop = false;\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = this.expressions[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var expression = _step2.value;\n\n if (expression instanceof _sequence2.default && expression.getExpressions().length == 0) {\n hasNoop = true;\n } else {\n expressionList.push(expression);\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n if (expressionList.length == 0) {\n sb.push(\"( )\");\n } else if (hasNoop && expressionList.length == 1) {\n var isUsingMultiplicationTokens = grammarToBNF.isUsingMultiplicationTokens;\n if (!isUsingMultiplicationTokens) {\n sb.push(\"[ \");\n }\n expressionList[0].toBNF(grammarToBNF, sb, isUsingMultiplicationTokens);\n if (!isUsingMultiplicationTokens) {\n sb.push(\" ]\");\n }\n } else {\n var _isUsingMultiplicationTokens = grammarToBNF.isUsingMultiplicationTokens;\n if (hasNoop && !_isUsingMultiplicationTokens) {\n sb.push(\"[ \");\n } else if (hasNoop || isNested && expressionList.length > 1) {\n sb.push(\"( \");\n }\n var count = expressionList.length;\n for (var i = 0; i < count; i++) {\n if (i > 0) {\n sb.push(\" | \");\n }\n expressionList[i].toBNF(grammarToBNF, sb, false);\n }\n if (hasNoop && !_isUsingMultiplicationTokens) {\n sb.push(\" ]\");\n } else if (hasNoop || isNested && expressionList.length > 1) {\n sb.push(\" )\");\n if (hasNoop) {\n sb.push(\"?\");\n }\n }\n }\n }\n\n /**\r\n * @param {*} o \r\n * @return {boolean}\r\n */\n\n }, {\n key: 'equals',\n value: function equals(o) {\n if (!(o instanceof Choice)) {\n return false;\n }\n if (this.expressions.length != o.expressions.length) {\n return false;\n }\n for (var i = 0; i < this.expressions.length; i++) {\n if (!this.expressions[i].equals(o.expressions[i])) {\n return false;\n }\n }\n return true;\n }\n }]);\n\n return Choice;\n}(_expression2.default);\n\nexports.default = Choice;\n\n/***/ }),\n/* 114 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nvar _rrtext = __webpack_require__(52);\n\nvar _rrtext2 = _interopRequireDefault(_rrtext);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar SpecialSequence = function (_Expression) {\n _inherits(SpecialSequence, _Expression);\n\n /**\r\n * @param {string} text \r\n */\n function SpecialSequence(text) {\n _classCallCheck(this, SpecialSequence);\n\n var _this = _possibleConstructorReturn(this, (SpecialSequence.__proto__ || Object.getPrototypeOf(SpecialSequence)).call(this));\n\n _this.text = text;\n return _this;\n }\n\n /**\r\n * @param {GrammarToRRDiagram} grammarToRRDiagram \r\n * @return {RRElement}\r\n */\n\n\n _createClass(SpecialSequence, [{\n key: 'toRRElement',\n value: function toRRElement(grammarToRRDiagram) {\n return new _rrtext2.default(_rrtext2.default.Type.SPECIAL_SEQUENCE, this.text, null);\n }\n\n /**\r\n * @param {GrammarToBNF} grammarToBNF \r\n * @param {string[]} sb \r\n * @param {boolean} isNested \r\n */\n\n }, {\n key: 'toBNF',\n value: function toBNF(grammarToBNF, sb, isNested) {\n sb.push(\"(? \");\n sb.push(this.text);\n sb.push(\" ?)\");\n }\n\n /**\r\n * @param {*} o \r\n * @return {boolean}\r\n */\n\n }, {\n key: 'equals',\n value: function equals(o) {\n if (!(o instanceof SpecialSequence)) {\n return false;\n }\n return this.text == o.text;\n }\n }]);\n\n return SpecialSequence;\n}(_expression2.default);\n\nexports.default = SpecialSequence;\n\n/***/ }),\n/* 115 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _rrelement = __webpack_require__(11);\n\nvar _rrelement2 = _interopRequireDefault(_rrelement);\n\nvar _layoutinfo = __webpack_require__(51);\n\nvar _layoutinfo2 = _interopRequireDefault(_layoutinfo);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar RRLine = function (_RRElement) {\n _inherits(RRLine, _RRElement);\n\n function RRLine() {\n _classCallCheck(this, RRLine);\n\n return _possibleConstructorReturn(this, (RRLine.__proto__ || Object.getPrototypeOf(RRLine)).call(this));\n }\n\n _createClass(RRLine, [{\n key: 'computeLayoutInfo',\n value: function computeLayoutInfo(rrDiagramToSVG) {\n this.setLayoutInfo(new _layoutinfo2.default(0, 10, 5));\n }\n }, {\n key: 'toSVG',\n value: function toSVG(rrDiagramToSVG, xOffset, yOffset, svgContent) {}\n }]);\n\n return RRLine;\n}(_rrelement2.default);\n\nexports.default = RRLine;\n\n/***/ }),\n/* 116 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar cof = __webpack_require__(19);\nmodule.exports = function (it, msg) {\n if (typeof it != 'number' && cof(it) != 'Number') throw TypeError(msg);\n return +it;\n};\n\n\n/***/ }),\n/* 117 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\n\nvar toObject = __webpack_require__(9);\nvar toAbsoluteIndex = __webpack_require__(44);\nvar toLength = __webpack_require__(6);\n\nmodule.exports = [].copyWithin || function copyWithin(target /* = 0 */, start /* = 0, end = @length */) {\n var O = toObject(this);\n var len = toLength(O.length);\n var to = toAbsoluteIndex(target, len);\n var from = toAbsoluteIndex(start, len);\n var end = arguments.length > 2 ? arguments[2] : undefined;\n var count = Math.min((end === undefined ? len : toAbsoluteIndex(end, len)) - from, len - to);\n var inc = 1;\n if (from < to && to < from + count) {\n inc = -1;\n from += count - 1;\n to += count - 1;\n }\n while (count-- > 0) {\n if (from in O) O[to] = O[from];\n else delete O[to];\n to += inc;\n from += inc;\n } return O;\n};\n\n\n/***/ }),\n/* 118 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar forOf = __webpack_require__(37);\n\nmodule.exports = function (iter, ITERATOR) {\n var result = [];\n forOf(iter, false, result.push, result, ITERATOR);\n return result;\n};\n\n\n/***/ }),\n/* 119 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar aFunction = __webpack_require__(10);\nvar toObject = __webpack_require__(9);\nvar IObject = __webpack_require__(54);\nvar toLength = __webpack_require__(6);\n\nmodule.exports = function (that, callbackfn, aLen, memo, isRight) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IObject(O);\n var length = toLength(O.length);\n var index = isRight ? length - 1 : 0;\n var i = isRight ? -1 : 1;\n if (aLen < 2) for (;;) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (isRight ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;isRight ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n};\n\n\n/***/ }),\n/* 120 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar aFunction = __webpack_require__(10);\nvar isObject = __webpack_require__(4);\nvar invoke = __webpack_require__(126);\nvar arraySlice = [].slice;\nvar factories = {};\n\nvar construct = function (F, len, args) {\n if (!(len in factories)) {\n for (var n = [], i = 0; i < len; i++) n[i] = 'a[' + i + ']';\n // eslint-disable-next-line no-new-func\n factories[len] = Function('F,a', 'return new F(' + n.join(',') + ')');\n } return factories[len](F, args);\n};\n\nmodule.exports = Function.bind || function bind(that /* , ...args */) {\n var fn = aFunction(this);\n var partArgs = arraySlice.call(arguments, 1);\n var bound = function (/* args... */) {\n var args = partArgs.concat(arraySlice.call(arguments));\n return this instanceof bound ? construct(fn, args.length, args) : invoke(fn, args, that);\n };\n if (isObject(fn.prototype)) bound.prototype = fn.prototype;\n return bound;\n};\n\n\n/***/ }),\n/* 121 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar dP = __webpack_require__(8).f;\nvar create = __webpack_require__(38);\nvar redefineAll = __webpack_require__(42);\nvar ctx = __webpack_require__(21);\nvar anInstance = __webpack_require__(36);\nvar forOf = __webpack_require__(37);\nvar $iterDefine = __webpack_require__(96);\nvar step = __webpack_require__(129);\nvar setSpecies = __webpack_require__(43);\nvar DESCRIPTORS = __webpack_require__(7);\nvar fastKey = __webpack_require__(35).fastKey;\nvar validate = __webpack_require__(46);\nvar SIZE = DESCRIPTORS ? '_s' : 'size';\n\nvar getEntry = function (that, key) {\n // fast case\n var index = fastKey(key);\n var entry;\n if (index !== 'F') return that._i[index];\n // frozen object case\n for (entry = that._f; entry; entry = entry.n) {\n if (entry.k == key) return entry;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = create(null); // index\n that._f = undefined; // first entry\n that._l = undefined; // last entry\n that[SIZE] = 0; // size\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.1.3.1 Map.prototype.clear()\n // 23.2.3.2 Set.prototype.clear()\n clear: function clear() {\n for (var that = validate(this, NAME), data = that._i, entry = that._f; entry; entry = entry.n) {\n entry.r = true;\n if (entry.p) entry.p = entry.p.n = undefined;\n delete data[entry.i];\n }\n that._f = that._l = undefined;\n that[SIZE] = 0;\n },\n // 23.1.3.3 Map.prototype.delete(key)\n // 23.2.3.4 Set.prototype.delete(value)\n 'delete': function (key) {\n var that = validate(this, NAME);\n var entry = getEntry(that, key);\n if (entry) {\n var next = entry.n;\n var prev = entry.p;\n delete that._i[entry.i];\n entry.r = true;\n if (prev) prev.n = next;\n if (next) next.p = prev;\n if (that._f == entry) that._f = next;\n if (that._l == entry) that._l = prev;\n that[SIZE]--;\n } return !!entry;\n },\n // 23.2.3.6 Set.prototype.forEach(callbackfn, thisArg = undefined)\n // 23.1.3.5 Map.prototype.forEach(callbackfn, thisArg = undefined)\n forEach: function forEach(callbackfn /* , that = undefined */) {\n validate(this, NAME);\n var f = ctx(callbackfn, arguments.length > 1 ? arguments[1] : undefined, 3);\n var entry;\n while (entry = entry ? entry.n : this._f) {\n f(entry.v, entry.k, this);\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n }\n },\n // 23.1.3.7 Map.prototype.has(key)\n // 23.2.3.7 Set.prototype.has(value)\n has: function has(key) {\n return !!getEntry(validate(this, NAME), key);\n }\n });\n if (DESCRIPTORS) dP(C.prototype, 'size', {\n get: function () {\n return validate(this, NAME)[SIZE];\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var entry = getEntry(that, key);\n var prev, index;\n // change existing entry\n if (entry) {\n entry.v = value;\n // create new entry\n } else {\n that._l = entry = {\n i: index = fastKey(key, true), // <- index\n k: key, // <- key\n v: value, // <- value\n p: prev = that._l, // <- previous entry\n n: undefined, // <- next entry\n r: false // <- removed\n };\n if (!that._f) that._f = entry;\n if (prev) prev.n = entry;\n that[SIZE]++;\n // add to index\n if (index !== 'F') that._i[index] = entry;\n } return that;\n },\n getEntry: getEntry,\n setStrong: function (C, NAME, IS_MAP) {\n // add .keys, .values, .entries, [@@iterator]\n // 23.1.3.4, 23.1.3.8, 23.1.3.11, 23.1.3.12, 23.2.3.5, 23.2.3.8, 23.2.3.10, 23.2.3.11\n $iterDefine(C, NAME, function (iterated, kind) {\n this._t = validate(iterated, NAME); // target\n this._k = kind; // kind\n this._l = undefined; // previous\n }, function () {\n var that = this;\n var kind = that._k;\n var entry = that._l;\n // revert to the last existing entry\n while (entry && entry.r) entry = entry.p;\n // get next entry\n if (!that._t || !(that._l = entry = entry ? entry.n : that._t._f)) {\n // or finish the iteration\n that._t = undefined;\n return step(1);\n }\n // return step by kind\n if (kind == 'keys') return step(0, entry.k);\n if (kind == 'values') return step(0, entry.v);\n return step(0, [entry.k, entry.v]);\n }, IS_MAP ? 'entries' : 'values', !IS_MAP, true);\n\n // add [@@species], 23.1.2.2, 23.2.2.2\n setSpecies(NAME);\n }\n};\n\n\n/***/ }),\n/* 122 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// https://github.com/DavidBruant/Map-Set.prototype.toJSON\nvar classof = __webpack_require__(47);\nvar from = __webpack_require__(118);\nmodule.exports = function (NAME) {\n return function toJSON() {\n if (classof(this) != NAME) throw TypeError(NAME + \"#toJSON isn't generic\");\n return from(this);\n };\n};\n\n\n/***/ }),\n/* 123 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar redefineAll = __webpack_require__(42);\nvar getWeak = __webpack_require__(35).getWeak;\nvar anObject = __webpack_require__(1);\nvar isObject = __webpack_require__(4);\nvar anInstance = __webpack_require__(36);\nvar forOf = __webpack_require__(37);\nvar createArrayMethod = __webpack_require__(26);\nvar $has = __webpack_require__(15);\nvar validate = __webpack_require__(46);\nvar arrayFind = createArrayMethod(5);\nvar arrayFindIndex = createArrayMethod(6);\nvar id = 0;\n\n// fallback for uncaught frozen keys\nvar uncaughtFrozenStore = function (that) {\n return that._l || (that._l = new UncaughtFrozenStore());\n};\nvar UncaughtFrozenStore = function () {\n this.a = [];\n};\nvar findUncaughtFrozen = function (store, key) {\n return arrayFind(store.a, function (it) {\n return it[0] === key;\n });\n};\nUncaughtFrozenStore.prototype = {\n get: function (key) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) return entry[1];\n },\n has: function (key) {\n return !!findUncaughtFrozen(this, key);\n },\n set: function (key, value) {\n var entry = findUncaughtFrozen(this, key);\n if (entry) entry[1] = value;\n else this.a.push([key, value]);\n },\n 'delete': function (key) {\n var index = arrayFindIndex(this.a, function (it) {\n return it[0] === key;\n });\n if (~index) this.a.splice(index, 1);\n return !!~index;\n }\n};\n\nmodule.exports = {\n getConstructor: function (wrapper, NAME, IS_MAP, ADDER) {\n var C = wrapper(function (that, iterable) {\n anInstance(that, C, NAME, '_i');\n that._t = NAME; // collection type\n that._i = id++; // collection id\n that._l = undefined; // leak store for uncaught frozen objects\n if (iterable != undefined) forOf(iterable, IS_MAP, that[ADDER], that);\n });\n redefineAll(C.prototype, {\n // 23.3.3.2 WeakMap.prototype.delete(key)\n // 23.4.3.3 WeakSet.prototype.delete(value)\n 'delete': function (key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME))['delete'](key);\n return data && $has(data, this._i) && delete data[this._i];\n },\n // 23.3.3.4 WeakMap.prototype.has(key)\n // 23.4.3.4 WeakSet.prototype.has(value)\n has: function has(key) {\n if (!isObject(key)) return false;\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, NAME)).has(key);\n return data && $has(data, this._i);\n }\n });\n return C;\n },\n def: function (that, key, value) {\n var data = getWeak(anObject(key), true);\n if (data === true) uncaughtFrozenStore(that).set(key, value);\n else data[that._i] = value;\n return that;\n },\n ufstore: uncaughtFrozenStore\n};\n\n\n/***/ }),\n/* 124 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// https://tc39.github.io/proposal-flatMap/#sec-FlattenIntoArray\nvar isArray = __webpack_require__(64);\nvar isObject = __webpack_require__(4);\nvar toLength = __webpack_require__(6);\nvar ctx = __webpack_require__(21);\nvar IS_CONCAT_SPREADABLE = __webpack_require__(5)('isConcatSpreadable');\n\nfunction flattenIntoArray(target, original, source, sourceLen, start, depth, mapper, thisArg) {\n var targetIndex = start;\n var sourceIndex = 0;\n var mapFn = mapper ? ctx(mapper, thisArg, 3) : false;\n var element, spreadable;\n\n while (sourceIndex < sourceLen) {\n if (sourceIndex in source) {\n element = mapFn ? mapFn(source[sourceIndex], sourceIndex, original) : source[sourceIndex];\n\n spreadable = false;\n if (isObject(element)) {\n spreadable = element[IS_CONCAT_SPREADABLE];\n spreadable = spreadable !== undefined ? !!spreadable : isArray(element);\n }\n\n if (spreadable && depth > 0) {\n targetIndex = flattenIntoArray(target, original, element, toLength(element.length), targetIndex, depth - 1) - 1;\n } else {\n if (targetIndex >= 0x1fffffffffffff) throw TypeError();\n target[targetIndex] = element;\n }\n\n targetIndex++;\n }\n sourceIndex++;\n }\n return targetIndex;\n}\n\nmodule.exports = flattenIntoArray;\n\n\n/***/ }),\n/* 125 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = !__webpack_require__(7) && !__webpack_require__(3)(function () {\n return Object.defineProperty(__webpack_require__(89)('div'), 'a', { get: function () { return 7; } }).a != 7;\n});\n\n\n/***/ }),\n/* 126 */\n/***/ (function(module, exports) {\n\n// fast apply, http://jsperf.lnkit.com/fast-apply/5\nmodule.exports = function (fn, args, that) {\n var un = that === undefined;\n switch (args.length) {\n case 0: return un ? fn()\n : fn.call(that);\n case 1: return un ? fn(args[0])\n : fn.call(that, args[0]);\n case 2: return un ? fn(args[0], args[1])\n : fn.call(that, args[0], args[1]);\n case 3: return un ? fn(args[0], args[1], args[2])\n : fn.call(that, args[0], args[1], args[2]);\n case 4: return un ? fn(args[0], args[1], args[2], args[3])\n : fn.call(that, args[0], args[1], args[2], args[3]);\n } return fn.apply(that, args);\n};\n\n\n/***/ }),\n/* 127 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.3 Number.isInteger(number)\nvar isObject = __webpack_require__(4);\nvar floor = Math.floor;\nmodule.exports = function isInteger(it) {\n return !isObject(it) && isFinite(it) && floor(it) === it;\n};\n\n\n/***/ }),\n/* 128 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// call something on iterator step with safe closing on error\nvar anObject = __webpack_require__(1);\nmodule.exports = function (iterator, fn, value, entries) {\n try {\n return entries ? fn(anObject(value)[0], value[1]) : fn(value);\n // 7.4.6 IteratorClose(iterator, completion)\n } catch (e) {\n var ret = iterator['return'];\n if (ret !== undefined) anObject(ret.call(iterator));\n throw e;\n }\n};\n\n\n/***/ }),\n/* 129 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (done, value) {\n return { value: value, done: !!done };\n};\n\n\n/***/ }),\n/* 130 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.16 Math.fround(x)\nvar sign = __webpack_require__(98);\nvar pow = Math.pow;\nvar EPSILON = pow(2, -52);\nvar EPSILON32 = pow(2, -23);\nvar MAX32 = pow(2, 127) * (2 - EPSILON32);\nvar MIN32 = pow(2, -126);\n\nvar roundTiesToEven = function (n) {\n return n + 1 / EPSILON - 1 / EPSILON;\n};\n\nmodule.exports = Math.fround || function fround(x) {\n var $abs = Math.abs(x);\n var $sign = sign(x);\n var a, result;\n if ($abs < MIN32) return $sign * roundTiesToEven($abs / MIN32 / EPSILON32) * MIN32 * EPSILON32;\n a = (1 + EPSILON32 / EPSILON) * $abs;\n result = a - (a - $abs);\n // eslint-disable-next-line no-self-compare\n if (result > MAX32 || result != result) return $sign * Infinity;\n return $sign * result;\n};\n\n\n/***/ }),\n/* 131 */\n/***/ (function(module, exports) {\n\n// 20.2.2.20 Math.log1p(x)\nmodule.exports = Math.log1p || function log1p(x) {\n return (x = +x) > -1e-8 && x < 1e-8 ? x - x * x / 2 : Math.log(1 + x);\n};\n\n\n/***/ }),\n/* 132 */\n/***/ (function(module, exports) {\n\n// https://rwaldron.github.io/proposal-math-extensions/\nmodule.exports = Math.scale || function scale(x, inLow, inHigh, outLow, outHigh) {\n if (\n arguments.length === 0\n // eslint-disable-next-line no-self-compare\n || x != x\n // eslint-disable-next-line no-self-compare\n || inLow != inLow\n // eslint-disable-next-line no-self-compare\n || inHigh != inHigh\n // eslint-disable-next-line no-self-compare\n || outLow != outLow\n // eslint-disable-next-line no-self-compare\n || outHigh != outHigh\n ) return NaN;\n if (x === Infinity || x === -Infinity) return x;\n return (x - inLow) * (outHigh - outLow) / (inHigh - inLow) + outLow;\n};\n\n\n/***/ }),\n/* 133 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 19.1.2.1 Object.assign(target, source, ...)\nvar DESCRIPTORS = __webpack_require__(7);\nvar getKeys = __webpack_require__(40);\nvar gOPS = __webpack_require__(68);\nvar pIE = __webpack_require__(55);\nvar toObject = __webpack_require__(9);\nvar IObject = __webpack_require__(54);\nvar $assign = Object.assign;\n\n// should work with symbols and should have deterministic property order (V8 bug)\nmodule.exports = !$assign || __webpack_require__(3)(function () {\n var A = {};\n var B = {};\n // eslint-disable-next-line no-undef\n var S = Symbol();\n var K = 'abcdefghijklmnopqrst';\n A[S] = 7;\n K.split('').forEach(function (k) { B[k] = k; });\n return $assign({}, A)[S] != 7 || Object.keys($assign({}, B)).join('') != K;\n}) ? function assign(target, source) { // eslint-disable-line no-unused-vars\n var T = toObject(target);\n var aLen = arguments.length;\n var index = 1;\n var getSymbols = gOPS.f;\n var isEnum = pIE.f;\n while (aLen > index) {\n var S = IObject(arguments[index++]);\n var keys = getSymbols ? getKeys(S).concat(getSymbols(S)) : getKeys(S);\n var length = keys.length;\n var j = 0;\n var key;\n while (length > j) {\n key = keys[j++];\n if (!DESCRIPTORS || isEnum.call(S, key)) T[key] = S[key];\n }\n } return T;\n} : $assign;\n\n\n/***/ }),\n/* 134 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(8);\nvar anObject = __webpack_require__(1);\nvar getKeys = __webpack_require__(40);\n\nmodule.exports = __webpack_require__(7) ? Object.defineProperties : function defineProperties(O, Properties) {\n anObject(O);\n var keys = getKeys(Properties);\n var length = keys.length;\n var i = 0;\n var P;\n while (length > i) dP.f(O, P = keys[i++], Properties[P]);\n return O;\n};\n\n\n/***/ }),\n/* 135 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// fallback for IE11 buggy Object.getOwnPropertyNames with iframe and window\nvar toIObject = __webpack_require__(18);\nvar gOPN = __webpack_require__(39).f;\nvar toString = {}.toString;\n\nvar windowNames = typeof window == 'object' && window && Object.getOwnPropertyNames\n ? Object.getOwnPropertyNames(window) : [];\n\nvar getWindowNames = function (it) {\n try {\n return gOPN(it);\n } catch (e) {\n return windowNames.slice();\n }\n};\n\nmodule.exports.f = function getOwnPropertyNames(it) {\n return windowNames && toString.call(it) == '[object Window]' ? getWindowNames(it) : gOPN(toIObject(it));\n};\n\n\n/***/ }),\n/* 136 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar has = __webpack_require__(15);\nvar toIObject = __webpack_require__(18);\nvar arrayIndexOf = __webpack_require__(61)(false);\nvar IE_PROTO = __webpack_require__(103)('IE_PROTO');\n\nmodule.exports = function (object, names) {\n var O = toIObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) if (key != IE_PROTO) has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~arrayIndexOf(result, key) || result.push(key);\n }\n return result;\n};\n\n\n/***/ }),\n/* 137 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar DESCRIPTORS = __webpack_require__(7);\nvar getKeys = __webpack_require__(40);\nvar toIObject = __webpack_require__(18);\nvar isEnum = __webpack_require__(55).f;\nmodule.exports = function (isEntries) {\n return function (it) {\n var O = toIObject(it);\n var keys = getKeys(O);\n var length = keys.length;\n var i = 0;\n var result = [];\n var key;\n while (length > i) {\n key = keys[i++];\n if (!DESCRIPTORS || isEnum.call(O, key)) {\n result.push(isEntries ? [key, O[key]] : O[key]);\n }\n }\n return result;\n };\n};\n\n\n/***/ }),\n/* 138 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// all object keys, includes non-enumerable and symbols\nvar gOPN = __webpack_require__(39);\nvar gOPS = __webpack_require__(68);\nvar anObject = __webpack_require__(1);\nvar Reflect = __webpack_require__(2).Reflect;\nmodule.exports = Reflect && Reflect.ownKeys || function ownKeys(it) {\n var keys = gOPN.f(anObject(it));\n var getSymbols = gOPS.f;\n return getSymbols ? keys.concat(getSymbols(it)) : keys;\n};\n\n\n/***/ }),\n/* 139 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $parseFloat = __webpack_require__(2).parseFloat;\nvar $trim = __webpack_require__(50).trim;\n\nmodule.exports = 1 / $parseFloat(__webpack_require__(106) + '-0') !== -Infinity ? function parseFloat(str) {\n var string = $trim(String(str), 3);\n var result = $parseFloat(string);\n return result === 0 && string.charAt(0) == '-' ? -0 : result;\n} : $parseFloat;\n\n\n/***/ }),\n/* 140 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $parseInt = __webpack_require__(2).parseInt;\nvar $trim = __webpack_require__(50).trim;\nvar ws = __webpack_require__(106);\nvar hex = /^[-+]?0[xX]/;\n\nmodule.exports = $parseInt(ws + '08') !== 8 || $parseInt(ws + '0x16') !== 22 ? function parseInt(str, radix) {\n var string = $trim(String(str), 3);\n return $parseInt(string, (radix >>> 0) || (hex.test(string) ? 16 : 10));\n} : $parseInt;\n\n\n/***/ }),\n/* 141 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (exec) {\n try {\n return { e: false, v: exec() };\n } catch (e) {\n return { e: true, v: e };\n }\n};\n\n\n/***/ }),\n/* 142 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar anObject = __webpack_require__(1);\nvar isObject = __webpack_require__(4);\nvar newPromiseCapability = __webpack_require__(100);\n\nmodule.exports = function (C, x) {\n anObject(C);\n if (isObject(x) && x.constructor === C) return x;\n var promiseCapability = newPromiseCapability.f(C);\n var resolve = promiseCapability.resolve;\n resolve(x);\n return promiseCapability.promise;\n};\n\n\n/***/ }),\n/* 143 */\n/***/ (function(module, exports) {\n\n// 7.2.9 SameValue(x, y)\nmodule.exports = Object.is || function is(x, y) {\n // eslint-disable-next-line no-self-compare\n return x === y ? x !== 0 || 1 / x === 1 / y : x != x && y != y;\n};\n\n\n/***/ }),\n/* 144 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// https://github.com/tc39/proposal-string-pad-start-end\nvar toLength = __webpack_require__(6);\nvar repeat = __webpack_require__(105);\nvar defined = __webpack_require__(27);\n\nmodule.exports = function (that, maxLength, fillString, left) {\n var S = String(defined(that));\n var stringLength = S.length;\n var fillStr = fillString === undefined ? ' ' : String(fillString);\n var intMaxLength = toLength(maxLength);\n if (intMaxLength <= stringLength || fillStr == '') return S;\n var fillLen = intMaxLength - stringLength;\n var stringFiller = repeat.call(fillStr, Math.ceil(fillLen / fillStr.length));\n if (stringFiller.length > fillLen) stringFiller = stringFiller.slice(0, fillLen);\n return left ? stringFiller + S : S + stringFiller;\n};\n\n\n/***/ }),\n/* 145 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// https://tc39.github.io/ecma262/#sec-toindex\nvar toInteger = __webpack_require__(23);\nvar toLength = __webpack_require__(6);\nmodule.exports = function (it) {\n if (it === undefined) return 0;\n var number = toInteger(it);\n var length = toLength(number);\n if (number !== length) throw RangeError('Wrong length!');\n return length;\n};\n\n\n/***/ }),\n/* 146 */\n/***/ (function(module, exports, __webpack_require__) {\n\nexports.f = __webpack_require__(5);\n\n\n/***/ }),\n/* 147 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar strong = __webpack_require__(121);\nvar validate = __webpack_require__(46);\nvar MAP = 'Map';\n\n// 23.1 Map Objects\nmodule.exports = __webpack_require__(62)(MAP, function (get) {\n return function Map() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.1.3.6 Map.prototype.get(key)\n get: function get(key) {\n var entry = strong.getEntry(validate(this, MAP), key);\n return entry && entry.v;\n },\n // 23.1.3.9 Map.prototype.set(key, value)\n set: function set(key, value) {\n return strong.def(validate(this, MAP), key === 0 ? 0 : key, value);\n }\n}, strong, true);\n\n\n/***/ }),\n/* 148 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar regexpExec = __webpack_require__(101);\n__webpack_require__(0)({\n target: 'RegExp',\n proto: true,\n forced: regexpExec !== /./.exec\n}, {\n exec: regexpExec\n});\n\n\n/***/ }),\n/* 149 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 21.2.5.3 get RegExp.prototype.flags()\nif (__webpack_require__(7) && /./g.flags != 'g') __webpack_require__(8).f(RegExp.prototype, 'flags', {\n configurable: true,\n get: __webpack_require__(53)\n});\n\n\n/***/ }),\n/* 150 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar strong = __webpack_require__(121);\nvar validate = __webpack_require__(46);\nvar SET = 'Set';\n\n// 23.2 Set Objects\nmodule.exports = __webpack_require__(62)(SET, function (get) {\n return function Set() { return get(this, arguments.length > 0 ? arguments[0] : undefined); };\n}, {\n // 23.2.3.1 Set.prototype.add(value)\n add: function add(value) {\n return strong.def(validate(this, SET), value = value === 0 ? 0 : value, value);\n }\n}, strong);\n\n\n/***/ }),\n/* 151 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar global = __webpack_require__(2);\nvar each = __webpack_require__(26)(0);\nvar redefine = __webpack_require__(13);\nvar meta = __webpack_require__(35);\nvar assign = __webpack_require__(133);\nvar weak = __webpack_require__(123);\nvar isObject = __webpack_require__(4);\nvar validate = __webpack_require__(46);\nvar NATIVE_WEAK_MAP = __webpack_require__(46);\nvar IS_IE11 = !global.ActiveXObject && 'ActiveXObject' in global;\nvar WEAK_MAP = 'WeakMap';\nvar getWeak = meta.getWeak;\nvar isExtensible = Object.isExtensible;\nvar uncaughtFrozenStore = weak.ufstore;\nvar InternalMap;\n\nvar wrapper = function (get) {\n return function WeakMap() {\n return get(this, arguments.length > 0 ? arguments[0] : undefined);\n };\n};\n\nvar methods = {\n // 23.3.3.3 WeakMap.prototype.get(key)\n get: function get(key) {\n if (isObject(key)) {\n var data = getWeak(key);\n if (data === true) return uncaughtFrozenStore(validate(this, WEAK_MAP)).get(key);\n return data ? data[this._i] : undefined;\n }\n },\n // 23.3.3.5 WeakMap.prototype.set(key, value)\n set: function set(key, value) {\n return weak.def(validate(this, WEAK_MAP), key, value);\n }\n};\n\n// 23.3 WeakMap Objects\nvar $WeakMap = module.exports = __webpack_require__(62)(WEAK_MAP, wrapper, methods, weak, true, true);\n\n// IE11 WeakMap frozen keys fix\nif (NATIVE_WEAK_MAP && IS_IE11) {\n InternalMap = weak.getConstructor(wrapper, WEAK_MAP);\n assign(InternalMap.prototype, methods);\n meta.NEED = true;\n each(['delete', 'has', 'get', 'set'], function (key) {\n var proto = $WeakMap.prototype;\n var method = proto[key];\n redefine(proto, key, function (a, b) {\n // store frozen objects on internal weakmap shim\n if (isObject(a) && !isExtensible(a)) {\n if (!this._f) this._f = new InternalMap();\n var result = this._f[key](a, b);\n return key == 'set' ? this : result;\n // store all the rest on native weakmap\n } return method.call(this, a, b);\n });\n });\n}\n\n\n/***/ }),\n/* 152 */\n/***/ (function(module, exports) {\n\nvar g;\r\n\r\n// This works in non-strict mode\r\ng = (function() {\r\n\treturn this;\r\n})();\r\n\r\ntry {\r\n\t// This works if eval is allowed (see CSP)\r\n\tg = g || Function(\"return this\")() || (1,eval)(\"this\");\r\n} catch(e) {\r\n\t// This works if the window reference is available\r\n\tif(typeof window === \"object\")\r\n\t\tg = window;\r\n}\r\n\r\n// g can still be undefined, but nothing to do about it...\r\n// We return undefined, instead of nothing here, so it's\r\n// easier to handle this case. if(!global) { ...}\r\n\r\nmodule.exports = g;\r\n\n\n/***/ }),\n/* 153 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ui = exports.model = exports.bnfdisplay = undefined;\n\nvar _BNFDisplay = __webpack_require__(155);\n\nvar _BNFDisplay2 = _interopRequireDefault(_BNFDisplay);\n\nvar _bnftogrammar = __webpack_require__(112);\n\nvar _bnftogrammar2 = _interopRequireDefault(_bnftogrammar);\n\nvar _choice = __webpack_require__(113);\n\nvar _choice2 = _interopRequireDefault(_choice);\n\nvar _grammar = __webpack_require__(75);\n\nvar _grammar2 = _interopRequireDefault(_grammar);\n\nvar _grammartobnf = __webpack_require__(24);\n\nvar _grammartobnf2 = _interopRequireDefault(_grammartobnf);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _literal = __webpack_require__(76);\n\nvar _literal2 = _interopRequireDefault(_literal);\n\nvar _repetition = __webpack_require__(77);\n\nvar _repetition2 = _interopRequireDefault(_repetition);\n\nvar _rule = __webpack_require__(58);\n\nvar _rule2 = _interopRequireDefault(_rule);\n\nvar _rulereference = __webpack_require__(78);\n\nvar _rulereference2 = _interopRequireDefault(_rulereference);\n\nvar _sequence = __webpack_require__(79);\n\nvar _sequence2 = _interopRequireDefault(_sequence);\n\nvar _specialsequence = __webpack_require__(114);\n\nvar _specialsequence2 = _interopRequireDefault(_specialsequence);\n\nvar _rrbreak = __webpack_require__(80);\n\nvar _rrbreak2 = _interopRequireDefault(_rrbreak);\n\nvar _rrchoice = __webpack_require__(81);\n\nvar _rrchoice2 = _interopRequireDefault(_rrchoice);\n\nvar _rrdiagram = __webpack_require__(59);\n\nvar _rrdiagram2 = _interopRequireDefault(_rrdiagram);\n\nvar _rrdiagramtosvg = __webpack_require__(60);\n\nvar _rrdiagramtosvg2 = _interopRequireDefault(_rrdiagramtosvg);\n\nvar _rrline = __webpack_require__(115);\n\nvar _rrline2 = _interopRequireDefault(_rrline);\n\nvar _rrloop = __webpack_require__(82);\n\nvar _rrloop2 = _interopRequireDefault(_rrloop);\n\nvar _rrsequence = __webpack_require__(83);\n\nvar _rrsequence2 = _interopRequireDefault(_rrsequence);\n\nvar _rrtext = __webpack_require__(52);\n\nvar _rrtext2 = _interopRequireDefault(_rrtext);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar bnfdisplay = exports.bnfdisplay = {\n BNFDisplay: _BNFDisplay2.default\n};\n\nvar model = exports.model = {\n BNFToGrammar: _bnftogrammar2.default,\n Choice: _choice2.default,\n Grammar: _grammar2.default,\n GrammarToBNF: _grammartobnf2.default,\n GrammarToRRDiagram: _grammartorrdiagram2.default,\n Literal: _literal2.default,\n Repetition: _repetition2.default,\n Rule: _rule2.default,\n RuleReference: _rulereference2.default,\n Sequence: _sequence2.default,\n SpecialSequence: _specialsequence2.default\n};\n\nvar ui = exports.ui = {\n RRBreak: _rrbreak2.default,\n RRChoice: _rrchoice2.default,\n RRDiagram: _rrdiagram2.default,\n RRDiagramToSVG: _rrdiagramtosvg2.default,\n RRLine: _rrline2.default,\n RRLoop: _rrloop2.default,\n RRSequence: _rrsequence2.default,\n RRText: _rrtext2.default\n};\n\n/***/ }),\n/* 154 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n/* WEBPACK VAR INJECTION */(function(global) {\n\n__webpack_require__(359);\n\n__webpack_require__(360);\n\n__webpack_require__(160);\n\nif (global._babelPolyfill) {\n throw new Error(\"only one instance of babel-polyfill is allowed\");\n}\nglobal._babelPolyfill = true;\n\nvar DEFINE_PROPERTY = \"defineProperty\";\nfunction define(O, key, value) {\n O[key] || Object[DEFINE_PROPERTY](O, key, {\n writable: true,\n configurable: true,\n value: value\n });\n}\n\ndefine(String.prototype, \"padLeft\", \"\".padStart);\ndefine(String.prototype, \"padRight\", \"\".padEnd);\n\n\"pop,reverse,shift,keys,values,entries,indexOf,every,some,forEach,map,filter,find,findIndex,includes,join,slice,concat,push,splice,unshift,sort,lastIndexOf,reduce,reduceRight,copyWithin,fill\".split(\",\").forEach(function (key) {\n [][key] && define(Array, key, Function.call.bind([][key]));\n});\n/* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(152)))\n\n/***/ }),\n/* 155 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _bnftogrammar = __webpack_require__(112);\n\nvar _bnftogrammar2 = _interopRequireDefault(_bnftogrammar);\n\nvar _grammartorrdiagram = __webpack_require__(25);\n\nvar _grammartorrdiagram2 = _interopRequireDefault(_grammartorrdiagram);\n\nvar _rrdiagramtosvg = __webpack_require__(60);\n\nvar _rrdiagramtosvg2 = _interopRequireDefault(_rrdiagramtosvg);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar BNFDisplay = function () {\n function BNFDisplay() {\n _classCallCheck(this, BNFDisplay);\n\n this.bnfToGrammar = new _bnftogrammar2.default();\n this.grammarToRRDiagram = new _grammartorrdiagram2.default();\n this.grammarToRRDiagram.ruleConsideredAsLineBreak = \"\\\\\";\n this.rrDiagramToSVG = new _rrdiagramtosvg2.default();\n }\n\n /**\r\n * @return {BNFToGrammar}\r\n */\n\n\n _createClass(BNFDisplay, [{\n key: 'getBNFToGrammar',\n value: function getBNFToGrammar() {\n return this.bnfToGrammar;\n }\n\n /**\r\n * @return {GrammarToRRDiagram}\r\n */\n\n }, {\n key: 'getGrammarToRRDiagram',\n value: function getGrammarToRRDiagram() {\n return this.grammarToRRDiagram;\n }\n\n /**\r\n * @return {RRDiagramToSVG}\r\n */\n\n }, {\n key: 'getRRDiagramToSVG',\n value: function getRRDiagramToSVG() {\n return this.rrDiagramToSVG;\n }\n\n /**\r\n * @param {string} className\r\n * @param {string} newClassName\r\n */\n\n }, {\n key: 'replaceBNF',\n value: function replaceBNF(className, newClassName) {\n var elements = Array.from(document.getElementsByClassName(className));\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = elements[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var element = _step.value;\n\n if (element.tagName.toLowerCase() === 'pre') {\n var newElement = document.createElement('div');\n // Give a dummy rule definition to satisfy parser.\n var bnf = element.innerHTML;\n var grammar = this.bnfToGrammar.convert('a = ' + bnf);\n var rules = grammar.getRules();\n if (rules.length == 1) {\n var rule = rules[0];\n var rrDiagram = this.grammarToRRDiagram.convert(rule);\n var svg = this.rrDiagramToSVG.convert(rrDiagram);\n var svgContainer = document.createElement('div');\n svgContainer.className = newClassName;\n svgContainer.innerHTML = svg;\n newElement.appendChild(svgContainer);\n } else {\n newElement.appendChild(document.createTextNode('Error while loading BNF: ' + bnf));\n }\n element.parentElement.replaceChild(newElement, element);\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n }]);\n\n return BNFDisplay;\n}();\n\nexports.default = BNFDisplay;\n\n/***/ }),\n/* 156 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _sequence = __webpack_require__(79);\n\nvar _sequence2 = _interopRequireDefault(_sequence);\n\nvar _specialsequence = __webpack_require__(114);\n\nvar _specialsequence2 = _interopRequireDefault(_specialsequence);\n\nvar _repetition = __webpack_require__(77);\n\nvar _repetition2 = _interopRequireDefault(_repetition);\n\nvar _rulereference = __webpack_require__(78);\n\nvar _rulereference2 = _interopRequireDefault(_rulereference);\n\nvar _choice = __webpack_require__(113);\n\nvar _choice2 = _interopRequireDefault(_choice);\n\nvar _literal = __webpack_require__(76);\n\nvar _literal2 = _interopRequireDefault(_literal);\n\nvar _expression = __webpack_require__(32);\n\nvar _expression2 = _interopRequireDefault(_expression);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar ChunkType = {\n RULE: 'RULE',\n REPETITION_TOKEN: 'REPETITION_TOKEN',\n // CONCATENATION: 'CONCATENATION',\n ALTERNATION: 'ALTERNATION',\n GROUP: 'GROUP',\n COMMENT: 'COMMENT',\n SPECIAL_SEQUENCE: 'SPECIAL_SEQUENCE',\n LITERAL: 'LITERAL',\n OPTION: 'OPTION',\n REPETITION: 'REPETITION',\n CHOICE: 'CHOICE'\n};\n\n/**\r\n * @param {Expression} expression \r\n * @return {boolean}\r\n */\nfunction isNoop(expression) {\n return expression instanceof _sequence2.default && expression.getExpressions().length == 0;\n}\n\nvar Chunk = function () {\n _createClass(Chunk, null, [{\n key: 'ChunkType',\n get: function get() {\n return ChunkType;\n }\n }]);\n\n function Chunk(type, text) {\n _classCallCheck(this, Chunk);\n\n this.type = type;\n this.text = text;\n this.minCount = 0;\n this.maxCount = null;\n this.chunkList = null;\n }\n\n _createClass(Chunk, [{\n key: 'getType',\n value: function getType() {\n return this.type;\n }\n }, {\n key: 'setType',\n value: function setType(type) {\n this.type = type;\n }\n }, {\n key: 'setText',\n value: function setText(text) {\n this.text = text;\n }\n }, {\n key: 'setMinCount',\n value: function setMinCount(minCount) {\n this.minCount = minCount;\n }\n }, {\n key: 'setMaxCount',\n value: function setMaxCount(maxCount) {\n this.maxCount = maxCount;\n }\n }, {\n key: 'addChunk',\n value: function addChunk(chunk) {\n if (this.chunkList == null) {\n this.chunkList = [];\n }\n this.chunkList.push(chunk);\n }\n }, {\n key: 'prune',\n value: function prune() {\n var hasAlternation = false;\n for (var i = this.chunkList.length - 1; i >= 0; i--) {\n var chunk = this.chunkList[i];\n switch (chunk.getType()) {\n case ChunkType.REPETITION_TOKEN:\n {\n if (\"*\" === chunk.text) {\n this.chunkList.splice(i, 1);\n var previousChunk = this.chunkList[i - 1];\n var multiplier = null;\n // Case of: 3 * expression\n if (previousChunk.getType() == ChunkType.RULE) {\n multiplier = +previousChunk.text;\n if (isNaN(multiplier)) {\n multiplier = null;\n }\n }\n if (multiplier != null) {\n // The current one is removed, so next one is at index i.\n var nextChunk = this.chunkList[i];\n if (nextChunk.getType() == ChunkType.OPTION) {\n var newChunk = new Chunk(ChunkType.REPETITION);\n newChunk.setMinCount(0);\n newChunk.setMaxCount(multiplier);\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = nextChunk.chunkList[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var c = _step.value;\n\n newChunk.addChunk(c);\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n this.chunkList.splice(i, 1);\n this.chunkList[i - 1] = newChunk;\n } else {\n var _newChunk = new Chunk(ChunkType.REPETITION);\n _newChunk.setMinCount(multiplier);\n _newChunk.setMaxCount(multiplier);\n _newChunk.addChunk(nextChunk);\n this.chunkList.splice(i, 1);\n this.chunkList[i - 1] = _newChunk;\n }\n } else {\n var _newChunk2 = new Chunk(ChunkType.REPETITION);\n _newChunk2.setMinCount(0);\n _newChunk2.addChunk(previousChunk);\n this.chunkList[i - 1] = _newChunk2;\n }\n } else if (\"+\" === chunk.text) {\n this.chunkList.splice(i, 1);\n var _newChunk3 = new Chunk(ChunkType.REPETITION);\n _newChunk3.setMinCount(1);\n var _previousChunk = this.chunkList[i - 1];\n _newChunk3.addChunk(_previousChunk);\n this.chunkList[i - 1] = _newChunk3;\n } else if (\"?\" === chunk.text) {\n this.chunkList.splice(i, 1);\n var _newChunk4 = new Chunk(ChunkType.OPTION);\n var _previousChunk2 = this.chunkList[i - 1];\n _newChunk4.addChunk(_previousChunk2);\n this.chunkList[i - 1] = _newChunk4;\n }\n break;\n }\n case ChunkType.COMMENT:\n {\n // For now, nothing to do\n this.chunkList.splice(i, 1);\n }\n case ChunkType.ALTERNATION:\n {\n hasAlternation = true;\n break;\n }\n case ChunkType.GROUP:\n {\n // Group could be empty\n if (chunk.chunkList != null) {\n chunk.prune();\n if (chunk.chunkList.length == 1) {\n this.chunkList[i] = chunk.chunkList[0];\n }\n }\n break;\n }\n case ChunkType.OPTION:\n case ChunkType.REPETITION:\n {\n chunk.prune();\n break;\n }\n }\n }\n if (hasAlternation) {\n var alternationSequenceList = [];\n alternationSequenceList.push([]);\n var _iteratorNormalCompletion2 = true;\n var _didIteratorError2 = false;\n var _iteratorError2 = undefined;\n\n try {\n for (var _iterator2 = this.chunkList[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {\n var _chunk = _step2.value;\n\n if (_chunk.getType() == ChunkType.ALTERNATION) {\n alternationSequenceList.push([]);\n } else {\n var list = alternationSequenceList[alternationSequenceList.length - 1];\n list.push(_chunk);\n }\n }\n } catch (err) {\n _didIteratorError2 = true;\n _iteratorError2 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion2 && _iterator2.return) {\n _iterator2.return();\n }\n } finally {\n if (_didIteratorError2) {\n throw _iteratorError2;\n }\n }\n }\n\n var choiceChunk = new Chunk(ChunkType.CHOICE);\n var _iteratorNormalCompletion3 = true;\n var _didIteratorError3 = false;\n var _iteratorError3 = undefined;\n\n try {\n for (var _iterator3 = alternationSequenceList[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {\n var subList = _step3.value;\n\n if (subList.length == 1) {\n choiceChunk.addChunk(subList[0]);\n } else {\n var groupChunk = new Chunk(ChunkType.GROUP);\n var _iteratorNormalCompletion4 = true;\n var _didIteratorError4 = false;\n var _iteratorError4 = undefined;\n\n try {\n for (var _iterator4 = subList[Symbol.iterator](), _step4; !(_iteratorNormalCompletion4 = (_step4 = _iterator4.next()).done); _iteratorNormalCompletion4 = true) {\n var _c = _step4.value;\n\n groupChunk.addChunk(_c);\n }\n } catch (err) {\n _didIteratorError4 = true;\n _iteratorError4 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion4 && _iterator4.return) {\n _iterator4.return();\n }\n } finally {\n if (_didIteratorError4) {\n throw _iteratorError4;\n }\n }\n }\n\n choiceChunk.addChunk(groupChunk);\n }\n }\n } catch (err) {\n _didIteratorError3 = true;\n _iteratorError3 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion3 && _iterator3.return) {\n _iterator3.return();\n }\n } finally {\n if (_didIteratorError3) {\n throw _iteratorError3;\n }\n }\n }\n\n this.chunkList.length = 0;\n this.chunkList.push(choiceChunk);\n }\n }\n }, {\n key: 'getExpression',\n value: function getExpression() {\n switch (this.type) {\n case ChunkType.GROUP:\n {\n if (this.chunkList == null) {\n // Group is empty.\n return new _sequence2.default();\n }\n if (this.chunkList.length == 1) {\n return this.chunkList[0].getExpression();\n }\n var expressionList = [];\n var _iteratorNormalCompletion5 = true;\n var _didIteratorError5 = false;\n var _iteratorError5 = undefined;\n\n try {\n for (var _iterator5 = this.chunkList[Symbol.iterator](), _step5; !(_iteratorNormalCompletion5 = (_step5 = _iterator5.next()).done); _iteratorNormalCompletion5 = true) {\n var chunk = _step5.value;\n\n expressionList.push(chunk.getExpression());\n }\n } catch (err) {\n _didIteratorError5 = true;\n _iteratorError5 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion5 && _iterator5.return) {\n _iterator5.return();\n }\n } finally {\n if (_didIteratorError5) {\n throw _iteratorError5;\n }\n }\n }\n\n return new _sequence2.default(expressionList);\n }\n case ChunkType.CHOICE:\n {\n if (this.chunkList.length == 1) {\n return this.chunkList[0].getExpression();\n }\n var _expressionList = [];\n var hasLine = false;\n var _iteratorNormalCompletion6 = true;\n var _didIteratorError6 = false;\n var _iteratorError6 = undefined;\n\n try {\n for (var _iterator6 = this.chunkList[Symbol.iterator](), _step6; !(_iteratorNormalCompletion6 = (_step6 = _iterator6.next()).done); _iteratorNormalCompletion6 = true) {\n var _chunk2 = _step6.value;\n\n var expression = _chunk2.getExpression();\n if (expression instanceof _repetition2.default) {\n var repetition = expression;\n if (repetition.getMinRepetitionCount() == 0) {\n if (repetition.getMaxRepetitionCount() == null || repetition.getMaxRepetitionCount() != 1) {\n expression = new _repetition2.default(repetition.getExpression(), 1, repetition.getMaxRepetitionCount());\n } else {\n expression = repetition.getExpression();\n }\n hasLine = true;\n }\n }\n if (expression instanceof _choice2.default) {\n var _iteratorNormalCompletion7 = true;\n var _didIteratorError7 = false;\n var _iteratorError7 = undefined;\n\n try {\n for (var _iterator7 = expression.getExpressions()[Symbol.iterator](), _step7; !(_iteratorNormalCompletion7 = (_step7 = _iterator7.next()).done); _iteratorNormalCompletion7 = true) {\n var exp = _step7.value;\n\n _expressionList.push(exp);\n }\n } catch (err) {\n _didIteratorError7 = true;\n _iteratorError7 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion7 && _iterator7.return) {\n _iterator7.return();\n }\n } finally {\n if (_didIteratorError7) {\n throw _iteratorError7;\n }\n }\n }\n } else {\n _expressionList.push(expression);\n }\n }\n } catch (err) {\n _didIteratorError6 = true;\n _iteratorError6 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion6 && _iterator6.return) {\n _iterator6.return();\n }\n } finally {\n if (_didIteratorError6) {\n throw _iteratorError6;\n }\n }\n }\n\n if (hasLine && (_expressionList.length == 0 || !isNoop(_expressionList[_expressionList.length - 1]))) {\n _expressionList.push(new _sequence2.default());\n }\n return new _choice2.default(_expressionList);\n }\n case ChunkType.RULE:\n {\n return new _rulereference2.default(this.text);\n }\n case ChunkType.LITERAL:\n {\n return new _literal2.default(this.text);\n }\n case ChunkType.SPECIAL_SEQUENCE:\n {\n return new _specialsequence2.default(this.text);\n }\n case ChunkType.OPTION:\n {\n if (this.chunkList.length == 1) {\n var subChunk = this.chunkList[0];\n if (subChunk.getType() == ChunkType.CHOICE) {\n var newChunk = new Chunk(ChunkType.CHOICE);\n var _iteratorNormalCompletion8 = true;\n var _didIteratorError8 = false;\n var _iteratorError8 = undefined;\n\n try {\n for (var _iterator8 = subChunk.chunkList[Symbol.iterator](), _step8; !(_iteratorNormalCompletion8 = (_step8 = _iterator8.next()).done); _iteratorNormalCompletion8 = true) {\n var cChunk = _step8.value;\n\n newChunk.addChunk(cChunk);\n }\n } catch (err) {\n _didIteratorError8 = true;\n _iteratorError8 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion8 && _iterator8.return) {\n _iterator8.return();\n }\n } finally {\n if (_didIteratorError8) {\n throw _iteratorError8;\n }\n }\n }\n\n newChunk.addChunk(new Chunk(ChunkType.GROUP));\n return newChunk.getExpression();\n }\n return new _repetition2.default(subChunk.getExpression(), 0, 1);\n }\n var _expressionList2 = [];\n var _iteratorNormalCompletion9 = true;\n var _didIteratorError9 = false;\n var _iteratorError9 = undefined;\n\n try {\n for (var _iterator9 = this.chunkList[Symbol.iterator](), _step9; !(_iteratorNormalCompletion9 = (_step9 = _iterator9.next()).done); _iteratorNormalCompletion9 = true) {\n var _chunk3 = _step9.value;\n\n _expressionList2.push(_chunk3.getExpression());\n }\n } catch (err) {\n _didIteratorError9 = true;\n _iteratorError9 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion9 && _iterator9.return) {\n _iterator9.return();\n }\n } finally {\n if (_didIteratorError9) {\n throw _iteratorError9;\n }\n }\n }\n\n return new _repetition2.default(new _sequence2.default(_expressionList2), 0, 1);\n }\n case ChunkType.REPETITION:\n {\n if (this.chunkList.length == 1) {\n return new _repetition2.default(this.chunkList[0].getExpression(), this.minCount, this.maxCount);\n }\n var _expressionList3 = [];\n var _iteratorNormalCompletion10 = true;\n var _didIteratorError10 = false;\n var _iteratorError10 = undefined;\n\n try {\n for (var _iterator10 = this.chunkList[Symbol.iterator](), _step10; !(_iteratorNormalCompletion10 = (_step10 = _iterator10.next()).done); _iteratorNormalCompletion10 = true) {\n var _chunk4 = _step10.value;\n\n _expressionList3.push(_chunk4.getExpression());\n }\n } catch (err) {\n _didIteratorError10 = true;\n _iteratorError10 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion10 && _iterator10.return) {\n _iterator10.return();\n }\n } finally {\n if (_didIteratorError10) {\n throw _iteratorError10;\n }\n }\n }\n\n return new _repetition2.default(new _sequence2.default(_expressionList3), this.minCount, this.maxCount);\n }\n }\n throw \"Type should not be reachable: \" + this.type;\n }\n }, {\n key: 'toString',\n value: function toString() {\n var s = \"\" + this.type;\n if (this.text != null) {\n s += \" (\" + this.text + \")\";\n }\n return s;\n }\n }]);\n\n return Chunk;\n}();\n\nexports.default = Chunk;\n\n/***/ }),\n/* 157 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _utils = __webpack_require__(84);\n\nvar _svgline = __webpack_require__(158);\n\nvar _svgline2 = _interopRequireDefault(_svgline);\n\nvar _svgpath = __webpack_require__(159);\n\nvar _svgpath2 = _interopRequireDefault(_svgpath);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar SvgContent = function () {\n function SvgContent() {\n _classCallCheck(this, SvgContent);\n\n this.connectorList = [];\n this.elements = [];\n }\n\n _createClass(SvgContent, [{\n key: 'addPathConnector',\n value: function addPathConnector(x1, y1, path, x2, y2) {\n var c = this.connectorList.length == 0 ? null : this.connectorList[this.connectorList.length - 1];\n if (c != null) {\n if (c instanceof _svgpath2.default) {\n c.addPath(new _svgpath2.default(x1, y1, path, x2, y2));\n } else {\n var svgLine = c;\n var x1_ = svgLine.getX1();\n var y1_ = svgLine.getY1();\n var x2_ = svgLine.getX2();\n var y2_ = svgLine.getY2();\n if (x1_ == x2_ && x1 == x1_) {\n if (y2_ == y1 - 1) {\n svgLine.mergeLine(x1_, y1_, x2_, y2_ + 1);\n } else if (y1_ == y1 + 1) {\n svgLine.mergeLine(x1_, y1_ - 1, x2_, y2_);\n }\n } else if (y1_ == y2_ && y1 == y1_) {\n if (x2_ == x1 - 1) {\n svgLine.mergeLine(x1_, y1_, x2_ + 1, y2_);\n } else if (x1_ == x1 + 1) {\n svgLine.mergeLine(x1_ - 1, y1_, x2_, y2_);\n }\n }\n this.connectorList.push(new _svgpath2.default(x1, y1, path, x2, y2));\n }\n } else {\n this.connectorList.push(new _svgpath2.default(x1, y1, path, x2, y2));\n }\n }\n }, {\n key: 'addLineConnector',\n value: function addLineConnector(x1, y1, x2, y2) {\n var x1_ = Math.min(x1, x2);\n var y1_ = Math.min(y1, y2);\n var x2_ = Math.max(x1, x2);\n var y2_ = Math.max(y1, y2);\n var c = this.connectorList.length == 0 ? null : this.connectorList[this.connectorList.length - 1];\n if (c == null || !(c instanceof _svgline2.default) || !c.mergeLine(x1_, y1_, x2_, y2_)) {\n this.connectorList.push(new _svgline2.default(x1_, y1_, x2_, y2_));\n }\n }\n }, {\n key: 'getConnectorElement',\n value: function getConnectorElement(rrDiagramToSVG) {\n if (this.connectorList.length == 0) {\n return \"\";\n }\n var path0 = null;\n var _iteratorNormalCompletion = true;\n var _didIteratorError = false;\n var _iteratorError = undefined;\n\n try {\n for (var _iterator = this.connectorList[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var connector = _step.value;\n\n if (path0 == null) {\n if (connector instanceof _svgpath2.default) {\n path0 = connector;\n } else {\n var svgLine = connector;\n var x1 = svgLine.getX1();\n var y1 = svgLine.getY1();\n path0 = new _svgpath2.default(x1, y1, \"M\" + x1 + (y1 < 0 ? y1 : \" \" + y1), x1, y1);\n path0.addLine(svgLine);\n }\n } else {\n if (connector instanceof _svgpath2.default) {\n path0.addPath(connector);\n } else {\n path0.addLine(connector);\n }\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n\n return \"<path class=\\\"\" + (0, _utils.escapeXml)(rrDiagramToSVG.cssConnectorClass) + \"\\\" d=\\\"\" + path0.getPath() + \"\\\"/>\";\n }\n }, {\n key: 'addElement',\n value: function addElement(element) {\n this.elements.push(element);\n }\n }, {\n key: 'getElements',\n value: function getElements() {\n return this.elements;\n }\n }]);\n\n return SvgContent;\n}();\n\nexports.default = SvgContent;\n\n/***/ }),\n/* 158 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar svgline = function () {\n function svgline(x1, y1, x2, y2) {\n _classCallCheck(this, svgline);\n\n this.x1 = x1;\n this.y1 = y1;\n this.x2 = x2;\n this.y2 = y2;\n }\n\n _createClass(svgline, [{\n key: \"getX1\",\n value: function getX1() {\n return this.x1;\n }\n }, {\n key: \"getY1\",\n value: function getY1() {\n return this.y1;\n }\n }, {\n key: \"getX2\",\n value: function getX2() {\n return this.x2;\n }\n }, {\n key: \"getY2\",\n value: function getY2() {\n return this.y2;\n }\n }, {\n key: \"mergeLine\",\n value: function mergeLine(x1, y1, x2, y2) {\n if (x1 == x2 && this.x1 == this.x2 && x1 == this.x1) {\n if (y2 >= this.y1 - 1 && y1 <= this.y2 + 1) {\n this.y1 = Math.min(this.y1, y1);\n this.y2 = Math.max(this.y2, y2);\n return true;\n }\n } else if (y1 == y2 && this.y1 == this.y2 && y1 == this.y1) {\n if (x2 >= this.x1 - 1 && x1 <= this.x2 + 1) {\n this.x1 = Math.min(this.x1, x1);\n this.x2 = Math.max(this.x2, x2);\n return true;\n }\n }\n return false;\n }\n }]);\n\n return svgline;\n}();\n\nexports.default = svgline;\n\n/***/ }),\n/* 159 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar SvgPath = function () {\n function SvgPath(startX, startY, path, endX, endY) {\n _classCallCheck(this, SvgPath);\n\n this.pathSB = [];\n this.startX = startX;\n this.startY = startY;\n this.pathSB.push(path);\n this.endX = endX;\n this.endY = endY;\n }\n\n _createClass(SvgPath, [{\n key: \"addPath\",\n value: function addPath(svgPath) {\n var x1 = svgPath.startX;\n var y1 = svgPath.startY;\n var path = svgPath.getPath();\n var x2 = svgPath.endX;\n var y2 = svgPath.endY;\n if (x1 != this.endX || y1 != this.endY) {\n if (x1 == this.endX && y1 == this.endY + 1) {\n this.pathSB.push(\"v\", y1 - y2);\n } else if (y1 == this.endY && x1 == this.endX + 1) {\n this.pathSB.push(\"h\", x1 - x2);\n } else {\n this.pathSB.push(\"m\", x1 - this.endX);\n if (y1 - this.endY >= 0) {\n this.pathSB.push(\" \");\n }\n this.pathSB.push(y1 - this.endY);\n }\n }\n this.pathSB.push(path);\n this.endX = x2;\n this.endY = y2;\n }\n }, {\n key: \"addLine\",\n value: function addLine(svgLine) {\n var x1 = svgLine.getX1();\n var y1 = svgLine.getY1();\n var x2 = svgLine.getX2();\n var y2 = svgLine.getY2();\n if (x1 == x2 && this.endX == x1) {\n if (this.endY == y1 || this.endY == y1 - 1) {\n this.pathSB.push(\"v\", y2 - this.endY);\n this.endY = y2;\n return;\n }\n if (this.endY == y2 || this.endY == y2 + 1) {\n this.pathSB.push(\"v\", y1 - this.endY);\n this.endY = y1;\n return;\n }\n } else if (y1 == y2 && this.endY == y1) {\n if (this.endX == x1 || this.endX == x1 - 1) {\n this.pathSB.push(\"h\", x2 - this.endX);\n this.endX = x2;\n return;\n }\n if (this.endX == x2 || this.endX == x2 + 1) {\n this.pathSB.push(\"h\", x1 - this.endX);\n this.endX = x1;\n return;\n }\n }\n this.pathSB.push(\"m\", x1 - this.endX);\n if (y1 - this.endY >= 0) {\n this.pathSB.push(\" \");\n }\n this.pathSB.push(y1 - this.endY);\n if (x1 == x2) {\n this.pathSB.push(\"v\", y2 - y1);\n } else if (y1 == y2) {\n this.pathSB.push(\"h\", x2 - x1);\n } else {\n this.pathSB.push(\"l\", x2 - x1);\n if (y2 - y1 >= 0) {\n this.pathSB.push(\" \");\n }\n this.pathSB.push(y2 - y1);\n }\n this.endX = x2;\n this.endY = y2;\n }\n }, {\n key: \"getPath\",\n value: function getPath() {\n return this.pathSB.join(\"\");\n }\n }]);\n\n return SvgPath;\n}();\n\nexports.default = SvgPath;\n\n/***/ }),\n/* 160 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(167);\nmodule.exports = __webpack_require__(20).RegExp.escape;\n\n\n/***/ }),\n/* 161 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar isObject = __webpack_require__(4);\nvar isArray = __webpack_require__(64);\nvar SPECIES = __webpack_require__(5)('species');\n\nmodule.exports = function (original) {\n var C;\n if (isArray(original)) {\n C = original.constructor;\n // cross-realm fallback\n if (typeof C == 'function' && (C === Array || isArray(C.prototype))) C = undefined;\n if (isObject(C)) {\n C = C[SPECIES];\n if (C === null) C = undefined;\n }\n } return C === undefined ? Array : C;\n};\n\n\n/***/ }),\n/* 162 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar fails = __webpack_require__(3);\nvar getTime = Date.prototype.getTime;\nvar $toISOString = Date.prototype.toISOString;\n\nvar lz = function (num) {\n return num > 9 ? num : '0' + num;\n};\n\n// PhantomJS / old WebKit has a broken implementations\nmodule.exports = (fails(function () {\n return $toISOString.call(new Date(-5e13 - 1)) != '0385-07-25T07:06:39.999Z';\n}) || !fails(function () {\n $toISOString.call(new Date(NaN));\n})) ? function toISOString() {\n if (!isFinite(getTime.call(this))) throw RangeError('Invalid time value');\n var d = this;\n var y = d.getUTCFullYear();\n var m = d.getUTCMilliseconds();\n var s = y < 0 ? '-' : y > 9999 ? '+' : '';\n return s + ('00000' + Math.abs(y)).slice(s ? -6 : -4) +\n '-' + lz(d.getUTCMonth() + 1) + '-' + lz(d.getUTCDate()) +\n 'T' + lz(d.getUTCHours()) + ':' + lz(d.getUTCMinutes()) +\n ':' + lz(d.getUTCSeconds()) + '.' + (m > 99 ? m : '0' + lz(m)) + 'Z';\n} : $toISOString;\n\n\n/***/ }),\n/* 163 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar anObject = __webpack_require__(1);\nvar toPrimitive = __webpack_require__(29);\nvar NUMBER = 'number';\n\nmodule.exports = function (hint) {\n if (hint !== 'string' && hint !== NUMBER && hint !== 'default') throw TypeError('Incorrect hint');\n return toPrimitive(anObject(this), hint != NUMBER);\n};\n\n\n/***/ }),\n/* 164 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// all enumerable object keys, includes symbols\nvar getKeys = __webpack_require__(40);\nvar gOPS = __webpack_require__(68);\nvar pIE = __webpack_require__(55);\nmodule.exports = function (it) {\n var result = getKeys(it);\n var getSymbols = gOPS.f;\n if (getSymbols) {\n var symbols = getSymbols(it);\n var isEnum = pIE.f;\n var i = 0;\n var key;\n while (symbols.length > i) if (isEnum.call(it, key = symbols[i++])) result.push(key);\n } return result;\n};\n\n\n/***/ }),\n/* 165 */\n/***/ (function(module, exports, __webpack_require__) {\n\nmodule.exports = __webpack_require__(56)('native-function-to-string', Function.toString);\n\n\n/***/ }),\n/* 166 */\n/***/ (function(module, exports) {\n\nmodule.exports = function (regExp, replace) {\n var replacer = replace === Object(replace) ? function (part) {\n return replace[part];\n } : replace;\n return function (it) {\n return String(it).replace(regExp, replacer);\n };\n};\n\n\n/***/ }),\n/* 167 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// https://github.com/benjamingr/RexExp.escape\nvar $export = __webpack_require__(0);\nvar $re = __webpack_require__(166)(/[\\\\^$*+?.()|[\\]{}]/g, '\\\\$&');\n\n$export($export.S, 'RegExp', { escape: function escape(it) { return $re(it); } });\n\n\n/***/ }),\n/* 168 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 22.1.3.3 Array.prototype.copyWithin(target, start, end = this.length)\nvar $export = __webpack_require__(0);\n\n$export($export.P, 'Array', { copyWithin: __webpack_require__(117) });\n\n__webpack_require__(33)('copyWithin');\n\n\n/***/ }),\n/* 169 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $every = __webpack_require__(26)(4);\n\n$export($export.P + $export.F * !__webpack_require__(22)([].every, true), 'Array', {\n // 22.1.3.5 / 15.4.4.16 Array.prototype.every(callbackfn [, thisArg])\n every: function every(callbackfn /* , thisArg */) {\n return $every(this, callbackfn, arguments[1]);\n }\n});\n\n\n/***/ }),\n/* 170 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 22.1.3.6 Array.prototype.fill(value, start = 0, end = this.length)\nvar $export = __webpack_require__(0);\n\n$export($export.P, 'Array', { fill: __webpack_require__(86) });\n\n__webpack_require__(33)('fill');\n\n\n/***/ }),\n/* 171 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $filter = __webpack_require__(26)(2);\n\n$export($export.P + $export.F * !__webpack_require__(22)([].filter, true), 'Array', {\n // 22.1.3.7 / 15.4.4.20 Array.prototype.filter(callbackfn [, thisArg])\n filter: function filter(callbackfn /* , thisArg */) {\n return $filter(this, callbackfn, arguments[1]);\n }\n});\n\n\n/***/ }),\n/* 172 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 22.1.3.9 Array.prototype.findIndex(predicate, thisArg = undefined)\nvar $export = __webpack_require__(0);\nvar $find = __webpack_require__(26)(6);\nvar KEY = 'findIndex';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n__webpack_require__(33)(KEY);\n\n\n/***/ }),\n/* 173 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 22.1.3.8 Array.prototype.find(predicate, thisArg = undefined)\nvar $export = __webpack_require__(0);\nvar $find = __webpack_require__(26)(5);\nvar KEY = 'find';\nvar forced = true;\n// Shouldn't skip holes\nif (KEY in []) Array(1)[KEY](function () { forced = false; });\n$export($export.P + $export.F * forced, 'Array', {\n find: function find(callbackfn /* , that = undefined */) {\n return $find(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n__webpack_require__(33)(KEY);\n\n\n/***/ }),\n/* 174 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $forEach = __webpack_require__(26)(0);\nvar STRICT = __webpack_require__(22)([].forEach, true);\n\n$export($export.P + $export.F * !STRICT, 'Array', {\n // 22.1.3.10 / 15.4.4.18 Array.prototype.forEach(callbackfn [, thisArg])\n forEach: function forEach(callbackfn /* , thisArg */) {\n return $forEach(this, callbackfn, arguments[1]);\n }\n});\n\n\n/***/ }),\n/* 175 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar ctx = __webpack_require__(21);\nvar $export = __webpack_require__(0);\nvar toObject = __webpack_require__(9);\nvar call = __webpack_require__(128);\nvar isArrayIter = __webpack_require__(94);\nvar toLength = __webpack_require__(6);\nvar createProperty = __webpack_require__(88);\nvar getIterFn = __webpack_require__(110);\n\n$export($export.S + $export.F * !__webpack_require__(66)(function (iter) { Array.from(iter); }), 'Array', {\n // 22.1.2.1 Array.from(arrayLike, mapfn = undefined, thisArg = undefined)\n from: function from(arrayLike /* , mapfn = undefined, thisArg = undefined */) {\n var O = toObject(arrayLike);\n var C = typeof this == 'function' ? this : Array;\n var aLen = arguments.length;\n var mapfn = aLen > 1 ? arguments[1] : undefined;\n var mapping = mapfn !== undefined;\n var index = 0;\n var iterFn = getIterFn(O);\n var length, result, step, iterator;\n if (mapping) mapfn = ctx(mapfn, aLen > 2 ? arguments[2] : undefined, 2);\n // if object isn't iterable or it's array with default iterator - use simple case\n if (iterFn != undefined && !(C == Array && isArrayIter(iterFn))) {\n for (iterator = iterFn.call(O), result = new C(); !(step = iterator.next()).done; index++) {\n createProperty(result, index, mapping ? call(iterator, mapfn, [step.value, index], true) : step.value);\n }\n } else {\n length = toLength(O.length);\n for (result = new C(length); length > index; index++) {\n createProperty(result, index, mapping ? mapfn(O[index], index) : O[index]);\n }\n }\n result.length = index;\n return result;\n }\n});\n\n\n/***/ }),\n/* 176 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $indexOf = __webpack_require__(61)(false);\nvar $native = [].indexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].indexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(22)($native)), 'Array', {\n // 22.1.3.11 / 15.4.4.14 Array.prototype.indexOf(searchElement [, fromIndex])\n indexOf: function indexOf(searchElement /* , fromIndex = 0 */) {\n return NEGATIVE_ZERO\n // convert -0 to +0\n ? $native.apply(this, arguments) || 0\n : $indexOf(this, searchElement, arguments[1]);\n }\n});\n\n\n/***/ }),\n/* 177 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 22.1.2.2 / 15.4.3.2 Array.isArray(arg)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Array', { isArray: __webpack_require__(64) });\n\n\n/***/ }),\n/* 178 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 22.1.3.13 Array.prototype.join(separator)\nvar $export = __webpack_require__(0);\nvar toIObject = __webpack_require__(18);\nvar arrayJoin = [].join;\n\n// fallback for not array-like strings\n$export($export.P + $export.F * (__webpack_require__(54) != Object || !__webpack_require__(22)(arrayJoin)), 'Array', {\n join: function join(separator) {\n return arrayJoin.call(toIObject(this), separator === undefined ? ',' : separator);\n }\n});\n\n\n/***/ }),\n/* 179 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar toIObject = __webpack_require__(18);\nvar toInteger = __webpack_require__(23);\nvar toLength = __webpack_require__(6);\nvar $native = [].lastIndexOf;\nvar NEGATIVE_ZERO = !!$native && 1 / [1].lastIndexOf(1, -0) < 0;\n\n$export($export.P + $export.F * (NEGATIVE_ZERO || !__webpack_require__(22)($native)), 'Array', {\n // 22.1.3.14 / 15.4.4.15 Array.prototype.lastIndexOf(searchElement [, fromIndex])\n lastIndexOf: function lastIndexOf(searchElement /* , fromIndex = @[*-1] */) {\n // convert -0 to +0\n if (NEGATIVE_ZERO) return $native.apply(this, arguments) || 0;\n var O = toIObject(this);\n var length = toLength(O.length);\n var index = length - 1;\n if (arguments.length > 1) index = Math.min(index, toInteger(arguments[1]));\n if (index < 0) index = length + index;\n for (;index >= 0; index--) if (index in O) if (O[index] === searchElement) return index || 0;\n return -1;\n }\n});\n\n\n/***/ }),\n/* 180 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $map = __webpack_require__(26)(1);\n\n$export($export.P + $export.F * !__webpack_require__(22)([].map, true), 'Array', {\n // 22.1.3.15 / 15.4.4.19 Array.prototype.map(callbackfn [, thisArg])\n map: function map(callbackfn /* , thisArg */) {\n return $map(this, callbackfn, arguments[1]);\n }\n});\n\n\n/***/ }),\n/* 181 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar createProperty = __webpack_require__(88);\n\n// WebKit Array.of isn't generic\n$export($export.S + $export.F * __webpack_require__(3)(function () {\n function F() { /* empty */ }\n return !(Array.of.call(F) instanceof F);\n}), 'Array', {\n // 22.1.2.3 Array.of( ...items)\n of: function of(/* ...args */) {\n var index = 0;\n var aLen = arguments.length;\n var result = new (typeof this == 'function' ? this : Array)(aLen);\n while (aLen > index) createProperty(result, index, arguments[index++]);\n result.length = aLen;\n return result;\n }\n});\n\n\n/***/ }),\n/* 182 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $reduce = __webpack_require__(119);\n\n$export($export.P + $export.F * !__webpack_require__(22)([].reduceRight, true), 'Array', {\n // 22.1.3.19 / 15.4.4.22 Array.prototype.reduceRight(callbackfn [, initialValue])\n reduceRight: function reduceRight(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], true);\n }\n});\n\n\n/***/ }),\n/* 183 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $reduce = __webpack_require__(119);\n\n$export($export.P + $export.F * !__webpack_require__(22)([].reduce, true), 'Array', {\n // 22.1.3.18 / 15.4.4.21 Array.prototype.reduce(callbackfn [, initialValue])\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments[1], false);\n }\n});\n\n\n/***/ }),\n/* 184 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar html = __webpack_require__(92);\nvar cof = __webpack_require__(19);\nvar toAbsoluteIndex = __webpack_require__(44);\nvar toLength = __webpack_require__(6);\nvar arraySlice = [].slice;\n\n// fallback for not array-like ES3 strings and DOM objects\n$export($export.P + $export.F * __webpack_require__(3)(function () {\n if (html) arraySlice.call(html);\n}), 'Array', {\n slice: function slice(begin, end) {\n var len = toLength(this.length);\n var klass = cof(this);\n end = end === undefined ? len : end;\n if (klass == 'Array') return arraySlice.call(this, begin, end);\n var start = toAbsoluteIndex(begin, len);\n var upTo = toAbsoluteIndex(end, len);\n var size = toLength(upTo - start);\n var cloned = new Array(size);\n var i = 0;\n for (; i < size; i++) cloned[i] = klass == 'String'\n ? this.charAt(start + i)\n : this[start + i];\n return cloned;\n }\n});\n\n\n/***/ }),\n/* 185 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $some = __webpack_require__(26)(3);\n\n$export($export.P + $export.F * !__webpack_require__(22)([].some, true), 'Array', {\n // 22.1.3.23 / 15.4.4.17 Array.prototype.some(callbackfn [, thisArg])\n some: function some(callbackfn /* , thisArg */) {\n return $some(this, callbackfn, arguments[1]);\n }\n});\n\n\n/***/ }),\n/* 186 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar aFunction = __webpack_require__(10);\nvar toObject = __webpack_require__(9);\nvar fails = __webpack_require__(3);\nvar $sort = [].sort;\nvar test = [1, 2, 3];\n\n$export($export.P + $export.F * (fails(function () {\n // IE8-\n test.sort(undefined);\n}) || !fails(function () {\n // V8 bug\n test.sort(null);\n // Old WebKit\n}) || !__webpack_require__(22)($sort)), 'Array', {\n // 22.1.3.25 Array.prototype.sort(comparefn)\n sort: function sort(comparefn) {\n return comparefn === undefined\n ? $sort.call(toObject(this))\n : $sort.call(toObject(this), aFunction(comparefn));\n }\n});\n\n\n/***/ }),\n/* 187 */\n/***/ (function(module, exports, __webpack_require__) {\n\n__webpack_require__(43)('Array');\n\n\n/***/ }),\n/* 188 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.3.3.1 / 15.9.4.4 Date.now()\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Date', { now: function () { return new Date().getTime(); } });\n\n\n/***/ }),\n/* 189 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.3.4.36 / 15.9.5.43 Date.prototype.toISOString()\nvar $export = __webpack_require__(0);\nvar toISOString = __webpack_require__(162);\n\n// PhantomJS / old WebKit has a broken implementations\n$export($export.P + $export.F * (Date.prototype.toISOString !== toISOString), 'Date', {\n toISOString: toISOString\n});\n\n\n/***/ }),\n/* 190 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar toObject = __webpack_require__(9);\nvar toPrimitive = __webpack_require__(29);\n\n$export($export.P + $export.F * __webpack_require__(3)(function () {\n return new Date(NaN).toJSON() !== null\n || Date.prototype.toJSON.call({ toISOString: function () { return 1; } }) !== 1;\n}), 'Date', {\n // eslint-disable-next-line no-unused-vars\n toJSON: function toJSON(key) {\n var O = toObject(this);\n var pv = toPrimitive(O);\n return typeof pv == 'number' && !isFinite(pv) ? null : O.toISOString();\n }\n});\n\n\n/***/ }),\n/* 191 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar TO_PRIMITIVE = __webpack_require__(5)('toPrimitive');\nvar proto = Date.prototype;\n\nif (!(TO_PRIMITIVE in proto)) __webpack_require__(12)(proto, TO_PRIMITIVE, __webpack_require__(163));\n\n\n/***/ }),\n/* 192 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar DateProto = Date.prototype;\nvar INVALID_DATE = 'Invalid Date';\nvar TO_STRING = 'toString';\nvar $toString = DateProto[TO_STRING];\nvar getTime = DateProto.getTime;\nif (new Date(NaN) + '' != INVALID_DATE) {\n __webpack_require__(13)(DateProto, TO_STRING, function toString() {\n var value = getTime.call(this);\n // eslint-disable-next-line no-self-compare\n return value === value ? $toString.call(this) : INVALID_DATE;\n });\n}\n\n\n/***/ }),\n/* 193 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.2.3.2 / 15.3.4.5 Function.prototype.bind(thisArg, args...)\nvar $export = __webpack_require__(0);\n\n$export($export.P, 'Function', { bind: __webpack_require__(120) });\n\n\n/***/ }),\n/* 194 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar isObject = __webpack_require__(4);\nvar getPrototypeOf = __webpack_require__(17);\nvar HAS_INSTANCE = __webpack_require__(5)('hasInstance');\nvar FunctionProto = Function.prototype;\n// 19.2.3.6 Function.prototype[@@hasInstance](V)\nif (!(HAS_INSTANCE in FunctionProto)) __webpack_require__(8).f(FunctionProto, HAS_INSTANCE, { value: function (O) {\n if (typeof this != 'function' || !isObject(O)) return false;\n if (!isObject(this.prototype)) return O instanceof this;\n // for environment w/o native `@@hasInstance` logic enough `instanceof`, but add this:\n while (O = getPrototypeOf(O)) if (this.prototype === O) return true;\n return false;\n} });\n\n\n/***/ }),\n/* 195 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar dP = __webpack_require__(8).f;\nvar FProto = Function.prototype;\nvar nameRE = /^\\s*function ([^ (]*)/;\nvar NAME = 'name';\n\n// 19.2.4.2 name\nNAME in FProto || __webpack_require__(7) && dP(FProto, NAME, {\n configurable: true,\n get: function () {\n try {\n return ('' + this).match(nameRE)[1];\n } catch (e) {\n return '';\n }\n }\n});\n\n\n/***/ }),\n/* 196 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.3 Math.acosh(x)\nvar $export = __webpack_require__(0);\nvar log1p = __webpack_require__(131);\nvar sqrt = Math.sqrt;\nvar $acosh = Math.acosh;\n\n$export($export.S + $export.F * !($acosh\n // V8 bug: https://code.google.com/p/v8/issues/detail?id=3509\n && Math.floor($acosh(Number.MAX_VALUE)) == 710\n // Tor Browser bug: Math.acosh(Infinity) -> NaN\n && $acosh(Infinity) == Infinity\n), 'Math', {\n acosh: function acosh(x) {\n return (x = +x) < 1 ? NaN : x > 94906265.62425156\n ? Math.log(x) + Math.LN2\n : log1p(x - 1 + sqrt(x - 1) * sqrt(x + 1));\n }\n});\n\n\n/***/ }),\n/* 197 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.5 Math.asinh(x)\nvar $export = __webpack_require__(0);\nvar $asinh = Math.asinh;\n\nfunction asinh(x) {\n return !isFinite(x = +x) || x == 0 ? x : x < 0 ? -asinh(-x) : Math.log(x + Math.sqrt(x * x + 1));\n}\n\n// Tor Browser bug: Math.asinh(0) -> -0\n$export($export.S + $export.F * !($asinh && 1 / $asinh(0) > 0), 'Math', { asinh: asinh });\n\n\n/***/ }),\n/* 198 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.7 Math.atanh(x)\nvar $export = __webpack_require__(0);\nvar $atanh = Math.atanh;\n\n// Tor Browser bug: Math.atanh(-0) -> 0\n$export($export.S + $export.F * !($atanh && 1 / $atanh(-0) < 0), 'Math', {\n atanh: function atanh(x) {\n return (x = +x) == 0 ? x : Math.log((1 + x) / (1 - x)) / 2;\n }\n});\n\n\n/***/ }),\n/* 199 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.9 Math.cbrt(x)\nvar $export = __webpack_require__(0);\nvar sign = __webpack_require__(98);\n\n$export($export.S, 'Math', {\n cbrt: function cbrt(x) {\n return sign(x = +x) * Math.pow(Math.abs(x), 1 / 3);\n }\n});\n\n\n/***/ }),\n/* 200 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.11 Math.clz32(x)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Math', {\n clz32: function clz32(x) {\n return (x >>>= 0) ? 31 - Math.floor(Math.log(x + 0.5) * Math.LOG2E) : 32;\n }\n});\n\n\n/***/ }),\n/* 201 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.12 Math.cosh(x)\nvar $export = __webpack_require__(0);\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n cosh: function cosh(x) {\n return (exp(x = +x) + exp(-x)) / 2;\n }\n});\n\n\n/***/ }),\n/* 202 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.14 Math.expm1(x)\nvar $export = __webpack_require__(0);\nvar $expm1 = __webpack_require__(97);\n\n$export($export.S + $export.F * ($expm1 != Math.expm1), 'Math', { expm1: $expm1 });\n\n\n/***/ }),\n/* 203 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.16 Math.fround(x)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Math', { fround: __webpack_require__(130) });\n\n\n/***/ }),\n/* 204 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.17 Math.hypot([value1[, value2[, … ]]])\nvar $export = __webpack_require__(0);\nvar abs = Math.abs;\n\n$export($export.S, 'Math', {\n hypot: function hypot(value1, value2) { // eslint-disable-line no-unused-vars\n var sum = 0;\n var i = 0;\n var aLen = arguments.length;\n var larg = 0;\n var arg, div;\n while (i < aLen) {\n arg = abs(arguments[i++]);\n if (larg < arg) {\n div = larg / arg;\n sum = sum * div * div + 1;\n larg = arg;\n } else if (arg > 0) {\n div = arg / larg;\n sum += div * div;\n } else sum += arg;\n }\n return larg === Infinity ? Infinity : larg * Math.sqrt(sum);\n }\n});\n\n\n/***/ }),\n/* 205 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.18 Math.imul(x, y)\nvar $export = __webpack_require__(0);\nvar $imul = Math.imul;\n\n// some WebKit versions fails with big numbers, some has wrong arity\n$export($export.S + $export.F * __webpack_require__(3)(function () {\n return $imul(0xffffffff, 5) != -5 || $imul.length != 2;\n}), 'Math', {\n imul: function imul(x, y) {\n var UINT16 = 0xffff;\n var xn = +x;\n var yn = +y;\n var xl = UINT16 & xn;\n var yl = UINT16 & yn;\n return 0 | xl * yl + ((UINT16 & xn >>> 16) * yl + xl * (UINT16 & yn >>> 16) << 16 >>> 0);\n }\n});\n\n\n/***/ }),\n/* 206 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.21 Math.log10(x)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Math', {\n log10: function log10(x) {\n return Math.log(x) * Math.LOG10E;\n }\n});\n\n\n/***/ }),\n/* 207 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.20 Math.log1p(x)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Math', { log1p: __webpack_require__(131) });\n\n\n/***/ }),\n/* 208 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.22 Math.log2(x)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Math', {\n log2: function log2(x) {\n return Math.log(x) / Math.LN2;\n }\n});\n\n\n/***/ }),\n/* 209 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.28 Math.sign(x)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Math', { sign: __webpack_require__(98) });\n\n\n/***/ }),\n/* 210 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.30 Math.sinh(x)\nvar $export = __webpack_require__(0);\nvar expm1 = __webpack_require__(97);\nvar exp = Math.exp;\n\n// V8 near Chromium 38 has a problem with very small numbers\n$export($export.S + $export.F * __webpack_require__(3)(function () {\n return !Math.sinh(-2e-17) != -2e-17;\n}), 'Math', {\n sinh: function sinh(x) {\n return Math.abs(x = +x) < 1\n ? (expm1(x) - expm1(-x)) / 2\n : (exp(x - 1) - exp(-x - 1)) * (Math.E / 2);\n }\n});\n\n\n/***/ }),\n/* 211 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.33 Math.tanh(x)\nvar $export = __webpack_require__(0);\nvar expm1 = __webpack_require__(97);\nvar exp = Math.exp;\n\n$export($export.S, 'Math', {\n tanh: function tanh(x) {\n var a = expm1(x = +x);\n var b = expm1(-x);\n return a == Infinity ? 1 : b == Infinity ? -1 : (a - b) / (exp(x) + exp(-x));\n }\n});\n\n\n/***/ }),\n/* 212 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.2.2.34 Math.trunc(x)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Math', {\n trunc: function trunc(it) {\n return (it > 0 ? Math.floor : Math.ceil)(it);\n }\n});\n\n\n/***/ }),\n/* 213 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar global = __webpack_require__(2);\nvar has = __webpack_require__(15);\nvar cof = __webpack_require__(19);\nvar inheritIfRequired = __webpack_require__(93);\nvar toPrimitive = __webpack_require__(29);\nvar fails = __webpack_require__(3);\nvar gOPN = __webpack_require__(39).f;\nvar gOPD = __webpack_require__(16).f;\nvar dP = __webpack_require__(8).f;\nvar $trim = __webpack_require__(50).trim;\nvar NUMBER = 'Number';\nvar $Number = global[NUMBER];\nvar Base = $Number;\nvar proto = $Number.prototype;\n// Opera ~12 has broken Object#toString\nvar BROKEN_COF = cof(__webpack_require__(38)(proto)) == NUMBER;\nvar TRIM = 'trim' in String.prototype;\n\n// 7.1.3 ToNumber(argument)\nvar toNumber = function (argument) {\n var it = toPrimitive(argument, false);\n if (typeof it == 'string' && it.length > 2) {\n it = TRIM ? it.trim() : $trim(it, 3);\n var first = it.charCodeAt(0);\n var third, radix, maxCode;\n if (first === 43 || first === 45) {\n third = it.charCodeAt(2);\n if (third === 88 || third === 120) return NaN; // Number('+0x1') should be NaN, old V8 fix\n } else if (first === 48) {\n switch (it.charCodeAt(1)) {\n case 66: case 98: radix = 2; maxCode = 49; break; // fast equal /^0b[01]+$/i\n case 79: case 111: radix = 8; maxCode = 55; break; // fast equal /^0o[0-7]+$/i\n default: return +it;\n }\n for (var digits = it.slice(2), i = 0, l = digits.length, code; i < l; i++) {\n code = digits.charCodeAt(i);\n // parseInt parses a string to a first unavailable symbol\n // but ToNumber should return NaN if a string contains unavailable symbols\n if (code < 48 || code > maxCode) return NaN;\n } return parseInt(digits, radix);\n }\n } return +it;\n};\n\nif (!$Number(' 0o1') || !$Number('0b1') || $Number('+0x1')) {\n $Number = function Number(value) {\n var it = arguments.length < 1 ? 0 : value;\n var that = this;\n return that instanceof $Number\n // check on 1..constructor(foo) case\n && (BROKEN_COF ? fails(function () { proto.valueOf.call(that); }) : cof(that) != NUMBER)\n ? inheritIfRequired(new Base(toNumber(it)), that, $Number) : toNumber(it);\n };\n for (var keys = __webpack_require__(7) ? gOPN(Base) : (\n // ES3:\n 'MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,' +\n // ES6 (in case, if modules with ES6 Number statics required before):\n 'EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,' +\n 'MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger'\n ).split(','), j = 0, key; keys.length > j; j++) {\n if (has(Base, key = keys[j]) && !has($Number, key)) {\n dP($Number, key, gOPD(Base, key));\n }\n }\n $Number.prototype = proto;\n proto.constructor = $Number;\n __webpack_require__(13)(global, NUMBER, $Number);\n}\n\n\n/***/ }),\n/* 214 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.1 Number.EPSILON\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Number', { EPSILON: Math.pow(2, -52) });\n\n\n/***/ }),\n/* 215 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.2 Number.isFinite(number)\nvar $export = __webpack_require__(0);\nvar _isFinite = __webpack_require__(2).isFinite;\n\n$export($export.S, 'Number', {\n isFinite: function isFinite(it) {\n return typeof it == 'number' && _isFinite(it);\n }\n});\n\n\n/***/ }),\n/* 216 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.3 Number.isInteger(number)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Number', { isInteger: __webpack_require__(127) });\n\n\n/***/ }),\n/* 217 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.4 Number.isNaN(number)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Number', {\n isNaN: function isNaN(number) {\n // eslint-disable-next-line no-self-compare\n return number != number;\n }\n});\n\n\n/***/ }),\n/* 218 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.5 Number.isSafeInteger(number)\nvar $export = __webpack_require__(0);\nvar isInteger = __webpack_require__(127);\nvar abs = Math.abs;\n\n$export($export.S, 'Number', {\n isSafeInteger: function isSafeInteger(number) {\n return isInteger(number) && abs(number) <= 0x1fffffffffffff;\n }\n});\n\n\n/***/ }),\n/* 219 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.6 Number.MAX_SAFE_INTEGER\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Number', { MAX_SAFE_INTEGER: 0x1fffffffffffff });\n\n\n/***/ }),\n/* 220 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 20.1.2.10 Number.MIN_SAFE_INTEGER\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Number', { MIN_SAFE_INTEGER: -0x1fffffffffffff });\n\n\n/***/ }),\n/* 221 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar $parseFloat = __webpack_require__(139);\n// 20.1.2.12 Number.parseFloat(string)\n$export($export.S + $export.F * (Number.parseFloat != $parseFloat), 'Number', { parseFloat: $parseFloat });\n\n\n/***/ }),\n/* 222 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar $parseInt = __webpack_require__(140);\n// 20.1.2.13 Number.parseInt(string, radix)\n$export($export.S + $export.F * (Number.parseInt != $parseInt), 'Number', { parseInt: $parseInt });\n\n\n/***/ }),\n/* 223 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar toInteger = __webpack_require__(23);\nvar aNumberValue = __webpack_require__(116);\nvar repeat = __webpack_require__(105);\nvar $toFixed = 1.0.toFixed;\nvar floor = Math.floor;\nvar data = [0, 0, 0, 0, 0, 0];\nvar ERROR = 'Number.toFixed: incorrect invocation!';\nvar ZERO = '0';\n\nvar multiply = function (n, c) {\n var i = -1;\n var c2 = c;\n while (++i < 6) {\n c2 += n * data[i];\n data[i] = c2 % 1e7;\n c2 = floor(c2 / 1e7);\n }\n};\nvar divide = function (n) {\n var i = 6;\n var c = 0;\n while (--i >= 0) {\n c += data[i];\n data[i] = floor(c / n);\n c = (c % n) * 1e7;\n }\n};\nvar numToString = function () {\n var i = 6;\n var s = '';\n while (--i >= 0) {\n if (s !== '' || i === 0 || data[i] !== 0) {\n var t = String(data[i]);\n s = s === '' ? t : s + repeat.call(ZERO, 7 - t.length) + t;\n }\n } return s;\n};\nvar pow = function (x, n, acc) {\n return n === 0 ? acc : n % 2 === 1 ? pow(x, n - 1, acc * x) : pow(x * x, n / 2, acc);\n};\nvar log = function (x) {\n var n = 0;\n var x2 = x;\n while (x2 >= 4096) {\n n += 12;\n x2 /= 4096;\n }\n while (x2 >= 2) {\n n += 1;\n x2 /= 2;\n } return n;\n};\n\n$export($export.P + $export.F * (!!$toFixed && (\n 0.00008.toFixed(3) !== '0.000' ||\n 0.9.toFixed(0) !== '1' ||\n 1.255.toFixed(2) !== '1.25' ||\n 1000000000000000128.0.toFixed(0) !== '1000000000000000128'\n) || !__webpack_require__(3)(function () {\n // V8 ~ Android 4.3-\n $toFixed.call({});\n})), 'Number', {\n toFixed: function toFixed(fractionDigits) {\n var x = aNumberValue(this, ERROR);\n var f = toInteger(fractionDigits);\n var s = '';\n var m = ZERO;\n var e, z, j, k;\n if (f < 0 || f > 20) throw RangeError(ERROR);\n // eslint-disable-next-line no-self-compare\n if (x != x) return 'NaN';\n if (x <= -1e21 || x >= 1e21) return String(x);\n if (x < 0) {\n s = '-';\n x = -x;\n }\n if (x > 1e-21) {\n e = log(x * pow(2, 69, 1)) - 69;\n z = e < 0 ? x * pow(2, -e, 1) : x / pow(2, e, 1);\n z *= 0x10000000000000;\n e = 52 - e;\n if (e > 0) {\n multiply(0, z);\n j = f;\n while (j >= 7) {\n multiply(1e7, 0);\n j -= 7;\n }\n multiply(pow(10, j, 1), 0);\n j = e - 1;\n while (j >= 23) {\n divide(1 << 23);\n j -= 23;\n }\n divide(1 << j);\n multiply(1, 1);\n divide(2);\n m = numToString();\n } else {\n multiply(0, z);\n multiply(1 << -e, 0);\n m = numToString() + repeat.call(ZERO, f);\n }\n }\n if (f > 0) {\n k = m.length;\n m = s + (k <= f ? '0.' + repeat.call(ZERO, f - k) + m : m.slice(0, k - f) + '.' + m.slice(k - f));\n } else {\n m = s + m;\n } return m;\n }\n});\n\n\n/***/ }),\n/* 224 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $fails = __webpack_require__(3);\nvar aNumberValue = __webpack_require__(116);\nvar $toPrecision = 1.0.toPrecision;\n\n$export($export.P + $export.F * ($fails(function () {\n // IE7-\n return $toPrecision.call(1, undefined) !== '1';\n}) || !$fails(function () {\n // V8 ~ Android 4.3-\n $toPrecision.call({});\n})), 'Number', {\n toPrecision: function toPrecision(precision) {\n var that = aNumberValue(this, 'Number#toPrecision: incorrect invocation!');\n return precision === undefined ? $toPrecision.call(that) : $toPrecision.call(that, precision);\n }\n});\n\n\n/***/ }),\n/* 225 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.3.1 Object.assign(target, source)\nvar $export = __webpack_require__(0);\n\n$export($export.S + $export.F, 'Object', { assign: __webpack_require__(133) });\n\n\n/***/ }),\n/* 226 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\n// 19.1.2.2 / 15.2.3.5 Object.create(O [, Properties])\n$export($export.S, 'Object', { create: __webpack_require__(38) });\n\n\n/***/ }),\n/* 227 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\n// 19.1.2.3 / 15.2.3.7 Object.defineProperties(O, Properties)\n$export($export.S + $export.F * !__webpack_require__(7), 'Object', { defineProperties: __webpack_require__(134) });\n\n\n/***/ }),\n/* 228 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\n// 19.1.2.4 / 15.2.3.6 Object.defineProperty(O, P, Attributes)\n$export($export.S + $export.F * !__webpack_require__(7), 'Object', { defineProperty: __webpack_require__(8).f });\n\n\n/***/ }),\n/* 229 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.5 Object.freeze(O)\nvar isObject = __webpack_require__(4);\nvar meta = __webpack_require__(35).onFreeze;\n\n__webpack_require__(28)('freeze', function ($freeze) {\n return function freeze(it) {\n return $freeze && isObject(it) ? $freeze(meta(it)) : it;\n };\n});\n\n\n/***/ }),\n/* 230 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.6 Object.getOwnPropertyDescriptor(O, P)\nvar toIObject = __webpack_require__(18);\nvar $getOwnPropertyDescriptor = __webpack_require__(16).f;\n\n__webpack_require__(28)('getOwnPropertyDescriptor', function () {\n return function getOwnPropertyDescriptor(it, key) {\n return $getOwnPropertyDescriptor(toIObject(it), key);\n };\n});\n\n\n/***/ }),\n/* 231 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.7 Object.getOwnPropertyNames(O)\n__webpack_require__(28)('getOwnPropertyNames', function () {\n return __webpack_require__(135).f;\n});\n\n\n/***/ }),\n/* 232 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.9 Object.getPrototypeOf(O)\nvar toObject = __webpack_require__(9);\nvar $getPrototypeOf = __webpack_require__(17);\n\n__webpack_require__(28)('getPrototypeOf', function () {\n return function getPrototypeOf(it) {\n return $getPrototypeOf(toObject(it));\n };\n});\n\n\n/***/ }),\n/* 233 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.11 Object.isExtensible(O)\nvar isObject = __webpack_require__(4);\n\n__webpack_require__(28)('isExtensible', function ($isExtensible) {\n return function isExtensible(it) {\n return isObject(it) ? $isExtensible ? $isExtensible(it) : true : false;\n };\n});\n\n\n/***/ }),\n/* 234 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.12 Object.isFrozen(O)\nvar isObject = __webpack_require__(4);\n\n__webpack_require__(28)('isFrozen', function ($isFrozen) {\n return function isFrozen(it) {\n return isObject(it) ? $isFrozen ? $isFrozen(it) : false : true;\n };\n});\n\n\n/***/ }),\n/* 235 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.13 Object.isSealed(O)\nvar isObject = __webpack_require__(4);\n\n__webpack_require__(28)('isSealed', function ($isSealed) {\n return function isSealed(it) {\n return isObject(it) ? $isSealed ? $isSealed(it) : false : true;\n };\n});\n\n\n/***/ }),\n/* 236 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.3.10 Object.is(value1, value2)\nvar $export = __webpack_require__(0);\n$export($export.S, 'Object', { is: __webpack_require__(143) });\n\n\n/***/ }),\n/* 237 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.14 Object.keys(O)\nvar toObject = __webpack_require__(9);\nvar $keys = __webpack_require__(40);\n\n__webpack_require__(28)('keys', function () {\n return function keys(it) {\n return $keys(toObject(it));\n };\n});\n\n\n/***/ }),\n/* 238 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.15 Object.preventExtensions(O)\nvar isObject = __webpack_require__(4);\nvar meta = __webpack_require__(35).onFreeze;\n\n__webpack_require__(28)('preventExtensions', function ($preventExtensions) {\n return function preventExtensions(it) {\n return $preventExtensions && isObject(it) ? $preventExtensions(meta(it)) : it;\n };\n});\n\n\n/***/ }),\n/* 239 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.2.17 Object.seal(O)\nvar isObject = __webpack_require__(4);\nvar meta = __webpack_require__(35).onFreeze;\n\n__webpack_require__(28)('seal', function ($seal) {\n return function seal(it) {\n return $seal && isObject(it) ? $seal(meta(it)) : it;\n };\n});\n\n\n/***/ }),\n/* 240 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 19.1.3.19 Object.setPrototypeOf(O, proto)\nvar $export = __webpack_require__(0);\n$export($export.S, 'Object', { setPrototypeOf: __webpack_require__(102).set });\n\n\n/***/ }),\n/* 241 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 19.1.3.6 Object.prototype.toString()\nvar classof = __webpack_require__(47);\nvar test = {};\ntest[__webpack_require__(5)('toStringTag')] = 'z';\nif (test + '' != '[object z]') {\n __webpack_require__(13)(Object.prototype, 'toString', function toString() {\n return '[object ' + classof(this) + ']';\n }, true);\n}\n\n\n/***/ }),\n/* 242 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar $parseFloat = __webpack_require__(139);\n// 18.2.4 parseFloat(string)\n$export($export.G + $export.F * (parseFloat != $parseFloat), { parseFloat: $parseFloat });\n\n\n/***/ }),\n/* 243 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar $parseInt = __webpack_require__(140);\n// 18.2.5 parseInt(string, radix)\n$export($export.G + $export.F * (parseInt != $parseInt), { parseInt: $parseInt });\n\n\n/***/ }),\n/* 244 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar LIBRARY = __webpack_require__(34);\nvar global = __webpack_require__(2);\nvar ctx = __webpack_require__(21);\nvar classof = __webpack_require__(47);\nvar $export = __webpack_require__(0);\nvar isObject = __webpack_require__(4);\nvar aFunction = __webpack_require__(10);\nvar anInstance = __webpack_require__(36);\nvar forOf = __webpack_require__(37);\nvar speciesConstructor = __webpack_require__(57);\nvar task = __webpack_require__(107).set;\nvar microtask = __webpack_require__(99)();\nvar newPromiseCapabilityModule = __webpack_require__(100);\nvar perform = __webpack_require__(141);\nvar userAgent = __webpack_require__(74);\nvar promiseResolve = __webpack_require__(142);\nvar PROMISE = 'Promise';\nvar TypeError = global.TypeError;\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8 || '';\nvar $Promise = global[PROMISE];\nvar isNode = classof(process) == 'process';\nvar empty = function () { /* empty */ };\nvar Internal, newGenericPromiseCapability, OwnPromiseCapability, Wrapper;\nvar newPromiseCapability = newGenericPromiseCapability = newPromiseCapabilityModule.f;\n\nvar USE_NATIVE = !!function () {\n try {\n // correct subclassing with @@species support\n var promise = $Promise.resolve(1);\n var FakePromise = (promise.constructor = {})[__webpack_require__(5)('species')] = function (exec) {\n exec(empty, empty);\n };\n // unhandled rejections tracking support, NodeJS Promise without it fails @@species test\n return (isNode || typeof PromiseRejectionEvent == 'function')\n && promise.then(empty) instanceof FakePromise\n // v8 6.6 (Node 10 and Chrome 66) have a bug with resolving custom thenables\n // https://bugs.chromium.org/p/chromium/issues/detail?id=830565\n // we can't detect it synchronously, so just check versions\n && v8.indexOf('6.6') !== 0\n && userAgent.indexOf('Chrome/66') === -1;\n } catch (e) { /* empty */ }\n}();\n\n// helpers\nvar isThenable = function (it) {\n var then;\n return isObject(it) && typeof (then = it.then) == 'function' ? then : false;\n};\nvar notify = function (promise, isReject) {\n if (promise._n) return;\n promise._n = true;\n var chain = promise._c;\n microtask(function () {\n var value = promise._v;\n var ok = promise._s == 1;\n var i = 0;\n var run = function (reaction) {\n var handler = ok ? reaction.ok : reaction.fail;\n var resolve = reaction.resolve;\n var reject = reaction.reject;\n var domain = reaction.domain;\n var result, then, exited;\n try {\n if (handler) {\n if (!ok) {\n if (promise._h == 2) onHandleUnhandled(promise);\n promise._h = 1;\n }\n if (handler === true) result = value;\n else {\n if (domain) domain.enter();\n result = handler(value); // may throw\n if (domain) {\n domain.exit();\n exited = true;\n }\n }\n if (result === reaction.promise) {\n reject(TypeError('Promise-chain cycle'));\n } else if (then = isThenable(result)) {\n then.call(result, resolve, reject);\n } else resolve(result);\n } else reject(value);\n } catch (e) {\n if (domain && !exited) domain.exit();\n reject(e);\n }\n };\n while (chain.length > i) run(chain[i++]); // variable length - can't use forEach\n promise._c = [];\n promise._n = false;\n if (isReject && !promise._h) onUnhandled(promise);\n });\n};\nvar onUnhandled = function (promise) {\n task.call(global, function () {\n var value = promise._v;\n var unhandled = isUnhandled(promise);\n var result, handler, console;\n if (unhandled) {\n result = perform(function () {\n if (isNode) {\n process.emit('unhandledRejection', value, promise);\n } else if (handler = global.onunhandledrejection) {\n handler({ promise: promise, reason: value });\n } else if ((console = global.console) && console.error) {\n console.error('Unhandled promise rejection', value);\n }\n });\n // Browsers should not trigger `rejectionHandled` event if it was handled here, NodeJS - should\n promise._h = isNode || isUnhandled(promise) ? 2 : 1;\n } promise._a = undefined;\n if (unhandled && result.e) throw result.v;\n });\n};\nvar isUnhandled = function (promise) {\n return promise._h !== 1 && (promise._a || promise._c).length === 0;\n};\nvar onHandleUnhandled = function (promise) {\n task.call(global, function () {\n var handler;\n if (isNode) {\n process.emit('rejectionHandled', promise);\n } else if (handler = global.onrejectionhandled) {\n handler({ promise: promise, reason: promise._v });\n }\n });\n};\nvar $reject = function (value) {\n var promise = this;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n promise._v = value;\n promise._s = 2;\n if (!promise._a) promise._a = promise._c.slice();\n notify(promise, true);\n};\nvar $resolve = function (value) {\n var promise = this;\n var then;\n if (promise._d) return;\n promise._d = true;\n promise = promise._w || promise; // unwrap\n try {\n if (promise === value) throw TypeError(\"Promise can't be resolved itself\");\n if (then = isThenable(value)) {\n microtask(function () {\n var wrapper = { _w: promise, _d: false }; // wrap\n try {\n then.call(value, ctx($resolve, wrapper, 1), ctx($reject, wrapper, 1));\n } catch (e) {\n $reject.call(wrapper, e);\n }\n });\n } else {\n promise._v = value;\n promise._s = 1;\n notify(promise, false);\n }\n } catch (e) {\n $reject.call({ _w: promise, _d: false }, e); // wrap\n }\n};\n\n// constructor polyfill\nif (!USE_NATIVE) {\n // 25.4.3.1 Promise(executor)\n $Promise = function Promise(executor) {\n anInstance(this, $Promise, PROMISE, '_h');\n aFunction(executor);\n Internal.call(this);\n try {\n executor(ctx($resolve, this, 1), ctx($reject, this, 1));\n } catch (err) {\n $reject.call(this, err);\n }\n };\n // eslint-disable-next-line no-unused-vars\n Internal = function Promise(executor) {\n this._c = []; // <- awaiting reactions\n this._a = undefined; // <- checked in isUnhandled reactions\n this._s = 0; // <- state\n this._d = false; // <- done\n this._v = undefined; // <- value\n this._h = 0; // <- rejection state, 0 - default, 1 - handled, 2 - unhandled\n this._n = false; // <- notify\n };\n Internal.prototype = __webpack_require__(42)($Promise.prototype, {\n // 25.4.5.3 Promise.prototype.then(onFulfilled, onRejected)\n then: function then(onFulfilled, onRejected) {\n var reaction = newPromiseCapability(speciesConstructor(this, $Promise));\n reaction.ok = typeof onFulfilled == 'function' ? onFulfilled : true;\n reaction.fail = typeof onRejected == 'function' && onRejected;\n reaction.domain = isNode ? process.domain : undefined;\n this._c.push(reaction);\n if (this._a) this._a.push(reaction);\n if (this._s) notify(this, false);\n return reaction.promise;\n },\n // 25.4.5.1 Promise.prototype.catch(onRejected)\n 'catch': function (onRejected) {\n return this.then(undefined, onRejected);\n }\n });\n OwnPromiseCapability = function () {\n var promise = new Internal();\n this.promise = promise;\n this.resolve = ctx($resolve, promise, 1);\n this.reject = ctx($reject, promise, 1);\n };\n newPromiseCapabilityModule.f = newPromiseCapability = function (C) {\n return C === $Promise || C === Wrapper\n ? new OwnPromiseCapability(C)\n : newGenericPromiseCapability(C);\n };\n}\n\n$export($export.G + $export.W + $export.F * !USE_NATIVE, { Promise: $Promise });\n__webpack_require__(49)($Promise, PROMISE);\n__webpack_require__(43)(PROMISE);\nWrapper = __webpack_require__(20)[PROMISE];\n\n// statics\n$export($export.S + $export.F * !USE_NATIVE, PROMISE, {\n // 25.4.4.5 Promise.reject(r)\n reject: function reject(r) {\n var capability = newPromiseCapability(this);\n var $$reject = capability.reject;\n $$reject(r);\n return capability.promise;\n }\n});\n$export($export.S + $export.F * (LIBRARY || !USE_NATIVE), PROMISE, {\n // 25.4.4.6 Promise.resolve(x)\n resolve: function resolve(x) {\n return promiseResolve(LIBRARY && this === Wrapper ? $Promise : this, x);\n }\n});\n$export($export.S + $export.F * !(USE_NATIVE && __webpack_require__(66)(function (iter) {\n $Promise.all(iter)['catch'](empty);\n})), PROMISE, {\n // 25.4.4.1 Promise.all(iterable)\n all: function all(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var resolve = capability.resolve;\n var reject = capability.reject;\n var result = perform(function () {\n var values = [];\n var index = 0;\n var remaining = 1;\n forOf(iterable, false, function (promise) {\n var $index = index++;\n var alreadyCalled = false;\n values.push(undefined);\n remaining++;\n C.resolve(promise).then(function (value) {\n if (alreadyCalled) return;\n alreadyCalled = true;\n values[$index] = value;\n --remaining || resolve(values);\n }, reject);\n });\n --remaining || resolve(values);\n });\n if (result.e) reject(result.v);\n return capability.promise;\n },\n // 25.4.4.4 Promise.race(iterable)\n race: function race(iterable) {\n var C = this;\n var capability = newPromiseCapability(C);\n var reject = capability.reject;\n var result = perform(function () {\n forOf(iterable, false, function (promise) {\n C.resolve(promise).then(capability.resolve, reject);\n });\n });\n if (result.e) reject(result.v);\n return capability.promise;\n }\n});\n\n\n/***/ }),\n/* 245 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.1 Reflect.apply(target, thisArgument, argumentsList)\nvar $export = __webpack_require__(0);\nvar aFunction = __webpack_require__(10);\nvar anObject = __webpack_require__(1);\nvar rApply = (__webpack_require__(2).Reflect || {}).apply;\nvar fApply = Function.apply;\n// MS Edge argumentsList argument is optional\n$export($export.S + $export.F * !__webpack_require__(3)(function () {\n rApply(function () { /* empty */ });\n}), 'Reflect', {\n apply: function apply(target, thisArgument, argumentsList) {\n var T = aFunction(target);\n var L = anObject(argumentsList);\n return rApply ? rApply(T, thisArgument, L) : fApply.call(T, thisArgument, L);\n }\n});\n\n\n/***/ }),\n/* 246 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.2 Reflect.construct(target, argumentsList [, newTarget])\nvar $export = __webpack_require__(0);\nvar create = __webpack_require__(38);\nvar aFunction = __webpack_require__(10);\nvar anObject = __webpack_require__(1);\nvar isObject = __webpack_require__(4);\nvar fails = __webpack_require__(3);\nvar bind = __webpack_require__(120);\nvar rConstruct = (__webpack_require__(2).Reflect || {}).construct;\n\n// MS Edge supports only 2 arguments and argumentsList argument is optional\n// FF Nightly sets third argument as `new.target`, but does not create `this` from it\nvar NEW_TARGET_BUG = fails(function () {\n function F() { /* empty */ }\n return !(rConstruct(function () { /* empty */ }, [], F) instanceof F);\n});\nvar ARGS_BUG = !fails(function () {\n rConstruct(function () { /* empty */ });\n});\n\n$export($export.S + $export.F * (NEW_TARGET_BUG || ARGS_BUG), 'Reflect', {\n construct: function construct(Target, args /* , newTarget */) {\n aFunction(Target);\n anObject(args);\n var newTarget = arguments.length < 3 ? Target : aFunction(arguments[2]);\n if (ARGS_BUG && !NEW_TARGET_BUG) return rConstruct(Target, args, newTarget);\n if (Target == newTarget) {\n // w/o altered newTarget, optimization for 0-4 arguments\n switch (args.length) {\n case 0: return new Target();\n case 1: return new Target(args[0]);\n case 2: return new Target(args[0], args[1]);\n case 3: return new Target(args[0], args[1], args[2]);\n case 4: return new Target(args[0], args[1], args[2], args[3]);\n }\n // w/o altered newTarget, lot of arguments case\n var $args = [null];\n $args.push.apply($args, args);\n return new (bind.apply(Target, $args))();\n }\n // with altered newTarget, not support built-in constructors\n var proto = newTarget.prototype;\n var instance = create(isObject(proto) ? proto : Object.prototype);\n var result = Function.apply.call(Target, instance, args);\n return isObject(result) ? result : instance;\n }\n});\n\n\n/***/ }),\n/* 247 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.3 Reflect.defineProperty(target, propertyKey, attributes)\nvar dP = __webpack_require__(8);\nvar $export = __webpack_require__(0);\nvar anObject = __webpack_require__(1);\nvar toPrimitive = __webpack_require__(29);\n\n// MS Edge has broken Reflect.defineProperty - throwing instead of returning false\n$export($export.S + $export.F * __webpack_require__(3)(function () {\n // eslint-disable-next-line no-undef\n Reflect.defineProperty(dP.f({}, 1, { value: 1 }), 1, { value: 2 });\n}), 'Reflect', {\n defineProperty: function defineProperty(target, propertyKey, attributes) {\n anObject(target);\n propertyKey = toPrimitive(propertyKey, true);\n anObject(attributes);\n try {\n dP.f(target, propertyKey, attributes);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n\n\n/***/ }),\n/* 248 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.4 Reflect.deleteProperty(target, propertyKey)\nvar $export = __webpack_require__(0);\nvar gOPD = __webpack_require__(16).f;\nvar anObject = __webpack_require__(1);\n\n$export($export.S, 'Reflect', {\n deleteProperty: function deleteProperty(target, propertyKey) {\n var desc = gOPD(anObject(target), propertyKey);\n return desc && !desc.configurable ? false : delete target[propertyKey];\n }\n});\n\n\n/***/ }),\n/* 249 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 26.1.5 Reflect.enumerate(target)\nvar $export = __webpack_require__(0);\nvar anObject = __webpack_require__(1);\nvar Enumerate = function (iterated) {\n this._t = anObject(iterated); // target\n this._i = 0; // next index\n var keys = this._k = []; // keys\n var key;\n for (key in iterated) keys.push(key);\n};\n__webpack_require__(95)(Enumerate, 'Object', function () {\n var that = this;\n var keys = that._k;\n var key;\n do {\n if (that._i >= keys.length) return { value: undefined, done: true };\n } while (!((key = keys[that._i++]) in that._t));\n return { value: key, done: false };\n});\n\n$export($export.S, 'Reflect', {\n enumerate: function enumerate(target) {\n return new Enumerate(target);\n }\n});\n\n\n/***/ }),\n/* 250 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.7 Reflect.getOwnPropertyDescriptor(target, propertyKey)\nvar gOPD = __webpack_require__(16);\nvar $export = __webpack_require__(0);\nvar anObject = __webpack_require__(1);\n\n$export($export.S, 'Reflect', {\n getOwnPropertyDescriptor: function getOwnPropertyDescriptor(target, propertyKey) {\n return gOPD.f(anObject(target), propertyKey);\n }\n});\n\n\n/***/ }),\n/* 251 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.8 Reflect.getPrototypeOf(target)\nvar $export = __webpack_require__(0);\nvar getProto = __webpack_require__(17);\nvar anObject = __webpack_require__(1);\n\n$export($export.S, 'Reflect', {\n getPrototypeOf: function getPrototypeOf(target) {\n return getProto(anObject(target));\n }\n});\n\n\n/***/ }),\n/* 252 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.6 Reflect.get(target, propertyKey [, receiver])\nvar gOPD = __webpack_require__(16);\nvar getPrototypeOf = __webpack_require__(17);\nvar has = __webpack_require__(15);\nvar $export = __webpack_require__(0);\nvar isObject = __webpack_require__(4);\nvar anObject = __webpack_require__(1);\n\nfunction get(target, propertyKey /* , receiver */) {\n var receiver = arguments.length < 3 ? target : arguments[2];\n var desc, proto;\n if (anObject(target) === receiver) return target[propertyKey];\n if (desc = gOPD.f(target, propertyKey)) return has(desc, 'value')\n ? desc.value\n : desc.get !== undefined\n ? desc.get.call(receiver)\n : undefined;\n if (isObject(proto = getPrototypeOf(target))) return get(proto, propertyKey, receiver);\n}\n\n$export($export.S, 'Reflect', { get: get });\n\n\n/***/ }),\n/* 253 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.9 Reflect.has(target, propertyKey)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Reflect', {\n has: function has(target, propertyKey) {\n return propertyKey in target;\n }\n});\n\n\n/***/ }),\n/* 254 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.10 Reflect.isExtensible(target)\nvar $export = __webpack_require__(0);\nvar anObject = __webpack_require__(1);\nvar $isExtensible = Object.isExtensible;\n\n$export($export.S, 'Reflect', {\n isExtensible: function isExtensible(target) {\n anObject(target);\n return $isExtensible ? $isExtensible(target) : true;\n }\n});\n\n\n/***/ }),\n/* 255 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.11 Reflect.ownKeys(target)\nvar $export = __webpack_require__(0);\n\n$export($export.S, 'Reflect', { ownKeys: __webpack_require__(138) });\n\n\n/***/ }),\n/* 256 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.12 Reflect.preventExtensions(target)\nvar $export = __webpack_require__(0);\nvar anObject = __webpack_require__(1);\nvar $preventExtensions = Object.preventExtensions;\n\n$export($export.S, 'Reflect', {\n preventExtensions: function preventExtensions(target) {\n anObject(target);\n try {\n if ($preventExtensions) $preventExtensions(target);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n\n\n/***/ }),\n/* 257 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.14 Reflect.setPrototypeOf(target, proto)\nvar $export = __webpack_require__(0);\nvar setProto = __webpack_require__(102);\n\nif (setProto) $export($export.S, 'Reflect', {\n setPrototypeOf: function setPrototypeOf(target, proto) {\n setProto.check(target, proto);\n try {\n setProto.set(target, proto);\n return true;\n } catch (e) {\n return false;\n }\n }\n});\n\n\n/***/ }),\n/* 258 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// 26.1.13 Reflect.set(target, propertyKey, V [, receiver])\nvar dP = __webpack_require__(8);\nvar gOPD = __webpack_require__(16);\nvar getPrototypeOf = __webpack_require__(17);\nvar has = __webpack_require__(15);\nvar $export = __webpack_require__(0);\nvar createDesc = __webpack_require__(41);\nvar anObject = __webpack_require__(1);\nvar isObject = __webpack_require__(4);\n\nfunction set(target, propertyKey, V /* , receiver */) {\n var receiver = arguments.length < 4 ? target : arguments[3];\n var ownDesc = gOPD.f(anObject(target), propertyKey);\n var existingDescriptor, proto;\n if (!ownDesc) {\n if (isObject(proto = getPrototypeOf(target))) {\n return set(proto, propertyKey, V, receiver);\n }\n ownDesc = createDesc(0);\n }\n if (has(ownDesc, 'value')) {\n if (ownDesc.writable === false || !isObject(receiver)) return false;\n if (existingDescriptor = gOPD.f(receiver, propertyKey)) {\n if (existingDescriptor.get || existingDescriptor.set || existingDescriptor.writable === false) return false;\n existingDescriptor.value = V;\n dP.f(receiver, propertyKey, existingDescriptor);\n } else dP.f(receiver, propertyKey, createDesc(0, V));\n return true;\n }\n return ownDesc.set === undefined ? false : (ownDesc.set.call(receiver, V), true);\n}\n\n$export($export.S, 'Reflect', { set: set });\n\n\n/***/ }),\n/* 259 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar global = __webpack_require__(2);\nvar inheritIfRequired = __webpack_require__(93);\nvar dP = __webpack_require__(8).f;\nvar gOPN = __webpack_require__(39).f;\nvar isRegExp = __webpack_require__(65);\nvar $flags = __webpack_require__(53);\nvar $RegExp = global.RegExp;\nvar Base = $RegExp;\nvar proto = $RegExp.prototype;\nvar re1 = /a/g;\nvar re2 = /a/g;\n// \"new\" creates a new object, old webkit buggy here\nvar CORRECT_NEW = new $RegExp(re1) !== re1;\n\nif (__webpack_require__(7) && (!CORRECT_NEW || __webpack_require__(3)(function () {\n re2[__webpack_require__(5)('match')] = false;\n // RegExp constructor can alter flags and IsRegExp works correct with @@match\n return $RegExp(re1) != re1 || $RegExp(re2) == re2 || $RegExp(re1, 'i') != '/a/i';\n}))) {\n $RegExp = function RegExp(p, f) {\n var tiRE = this instanceof $RegExp;\n var piRE = isRegExp(p);\n var fiU = f === undefined;\n return !tiRE && piRE && p.constructor === $RegExp && fiU ? p\n : inheritIfRequired(CORRECT_NEW\n ? new Base(piRE && !fiU ? p.source : p, f)\n : Base((piRE = p instanceof $RegExp) ? p.source : p, piRE && fiU ? $flags.call(p) : f)\n , tiRE ? this : proto, $RegExp);\n };\n var proxy = function (key) {\n key in $RegExp || dP($RegExp, key, {\n configurable: true,\n get: function () { return Base[key]; },\n set: function (it) { Base[key] = it; }\n });\n };\n for (var keys = gOPN(Base), i = 0; keys.length > i;) proxy(keys[i++]);\n proto.constructor = $RegExp;\n $RegExp.prototype = proto;\n __webpack_require__(13)(global, 'RegExp', $RegExp);\n}\n\n__webpack_require__(43)('RegExp');\n\n\n/***/ }),\n/* 260 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar anObject = __webpack_require__(1);\nvar toLength = __webpack_require__(6);\nvar advanceStringIndex = __webpack_require__(85);\nvar regExpExec = __webpack_require__(69);\n\n// @@match logic\n__webpack_require__(63)('match', 1, function (defined, MATCH, $match, maybeCallNative) {\n return [\n // `String.prototype.match` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.match\n function match(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[MATCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[MATCH](String(O));\n },\n // `RegExp.prototype[@@match]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@match\n function (regexp) {\n var res = maybeCallNative($match, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n if (!rx.global) return regExpExec(rx, S);\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n var A = [];\n var n = 0;\n var result;\n while ((result = regExpExec(rx, S)) !== null) {\n var matchStr = String(result[0]);\n A[n] = matchStr;\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n n++;\n }\n return n === 0 ? null : A;\n }\n ];\n});\n\n\n/***/ }),\n/* 261 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar anObject = __webpack_require__(1);\nvar toObject = __webpack_require__(9);\nvar toLength = __webpack_require__(6);\nvar toInteger = __webpack_require__(23);\nvar advanceStringIndex = __webpack_require__(85);\nvar regExpExec = __webpack_require__(69);\nvar max = Math.max;\nvar min = Math.min;\nvar floor = Math.floor;\nvar SUBSTITUTION_SYMBOLS = /\\$([$&`']|\\d\\d?|<[^>]*>)/g;\nvar SUBSTITUTION_SYMBOLS_NO_NAMED = /\\$([$&`']|\\d\\d?)/g;\n\nvar maybeToString = function (it) {\n return it === undefined ? it : String(it);\n};\n\n// @@replace logic\n__webpack_require__(63)('replace', 2, function (defined, REPLACE, $replace, maybeCallNative) {\n return [\n // `String.prototype.replace` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.replace\n function replace(searchValue, replaceValue) {\n var O = defined(this);\n var fn = searchValue == undefined ? undefined : searchValue[REPLACE];\n return fn !== undefined\n ? fn.call(searchValue, O, replaceValue)\n : $replace.call(String(O), searchValue, replaceValue);\n },\n // `RegExp.prototype[@@replace]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@replace\n function (regexp, replaceValue) {\n var res = maybeCallNative($replace, regexp, this, replaceValue);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var functionalReplace = typeof replaceValue === 'function';\n if (!functionalReplace) replaceValue = String(replaceValue);\n var global = rx.global;\n if (global) {\n var fullUnicode = rx.unicode;\n rx.lastIndex = 0;\n }\n var results = [];\n while (true) {\n var result = regExpExec(rx, S);\n if (result === null) break;\n results.push(result);\n if (!global) break;\n var matchStr = String(result[0]);\n if (matchStr === '') rx.lastIndex = advanceStringIndex(S, toLength(rx.lastIndex), fullUnicode);\n }\n var accumulatedResult = '';\n var nextSourcePosition = 0;\n for (var i = 0; i < results.length; i++) {\n result = results[i];\n var matched = String(result[0]);\n var position = max(min(toInteger(result.index), S.length), 0);\n var captures = [];\n // NOTE: This is equivalent to\n // captures = result.slice(1).map(maybeToString)\n // but for some reason `nativeSlice.call(result, 1, result.length)` (called in\n // the slice polyfill when slicing native arrays) \"doesn't work\" in safari 9 and\n // causes a crash (https://pastebin.com/N21QzeQA) when trying to debug it.\n for (var j = 1; j < result.length; j++) captures.push(maybeToString(result[j]));\n var namedCaptures = result.groups;\n if (functionalReplace) {\n var replacerArgs = [matched].concat(captures, position, S);\n if (namedCaptures !== undefined) replacerArgs.push(namedCaptures);\n var replacement = String(replaceValue.apply(undefined, replacerArgs));\n } else {\n replacement = getSubstitution(matched, S, position, captures, namedCaptures, replaceValue);\n }\n if (position >= nextSourcePosition) {\n accumulatedResult += S.slice(nextSourcePosition, position) + replacement;\n nextSourcePosition = position + matched.length;\n }\n }\n return accumulatedResult + S.slice(nextSourcePosition);\n }\n ];\n\n // https://tc39.github.io/ecma262/#sec-getsubstitution\n function getSubstitution(matched, str, position, captures, namedCaptures, replacement) {\n var tailPos = position + matched.length;\n var m = captures.length;\n var symbols = SUBSTITUTION_SYMBOLS_NO_NAMED;\n if (namedCaptures !== undefined) {\n namedCaptures = toObject(namedCaptures);\n symbols = SUBSTITUTION_SYMBOLS;\n }\n return $replace.call(replacement, symbols, function (match, ch) {\n var capture;\n switch (ch.charAt(0)) {\n case '$': return '$';\n case '&': return matched;\n case '`': return str.slice(0, position);\n case \"'\": return str.slice(tailPos);\n case '<':\n capture = namedCaptures[ch.slice(1, -1)];\n break;\n default: // \\d\\d?\n var n = +ch;\n if (n === 0) return match;\n if (n > m) {\n var f = floor(n / 10);\n if (f === 0) return match;\n if (f <= m) return captures[f - 1] === undefined ? ch.charAt(1) : captures[f - 1] + ch.charAt(1);\n return match;\n }\n capture = captures[n - 1];\n }\n return capture === undefined ? '' : capture;\n });\n }\n});\n\n\n/***/ }),\n/* 262 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar anObject = __webpack_require__(1);\nvar sameValue = __webpack_require__(143);\nvar regExpExec = __webpack_require__(69);\n\n// @@search logic\n__webpack_require__(63)('search', 1, function (defined, SEARCH, $search, maybeCallNative) {\n return [\n // `String.prototype.search` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.search\n function search(regexp) {\n var O = defined(this);\n var fn = regexp == undefined ? undefined : regexp[SEARCH];\n return fn !== undefined ? fn.call(regexp, O) : new RegExp(regexp)[SEARCH](String(O));\n },\n // `RegExp.prototype[@@search]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@search\n function (regexp) {\n var res = maybeCallNative($search, regexp, this);\n if (res.done) return res.value;\n var rx = anObject(regexp);\n var S = String(this);\n var previousLastIndex = rx.lastIndex;\n if (!sameValue(previousLastIndex, 0)) rx.lastIndex = 0;\n var result = regExpExec(rx, S);\n if (!sameValue(rx.lastIndex, previousLastIndex)) rx.lastIndex = previousLastIndex;\n return result === null ? -1 : result.index;\n }\n ];\n});\n\n\n/***/ }),\n/* 263 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar isRegExp = __webpack_require__(65);\nvar anObject = __webpack_require__(1);\nvar speciesConstructor = __webpack_require__(57);\nvar advanceStringIndex = __webpack_require__(85);\nvar toLength = __webpack_require__(6);\nvar callRegExpExec = __webpack_require__(69);\nvar regexpExec = __webpack_require__(101);\nvar fails = __webpack_require__(3);\nvar $min = Math.min;\nvar $push = [].push;\nvar $SPLIT = 'split';\nvar LENGTH = 'length';\nvar LAST_INDEX = 'lastIndex';\nvar MAX_UINT32 = 0xffffffff;\n\n// babel-minify transpiles RegExp('x', 'y') -> /x/y and it causes SyntaxError\nvar SUPPORTS_Y = !fails(function () { RegExp(MAX_UINT32, 'y'); });\n\n// @@split logic\n__webpack_require__(63)('split', 2, function (defined, SPLIT, $split, maybeCallNative) {\n var internalSplit;\n if (\n 'abbc'[$SPLIT](/(b)*/)[1] == 'c' ||\n 'test'[$SPLIT](/(?:)/, -1)[LENGTH] != 4 ||\n 'ab'[$SPLIT](/(?:ab)*/)[LENGTH] != 2 ||\n '.'[$SPLIT](/(.?)(.?)/)[LENGTH] != 4 ||\n '.'[$SPLIT](/()()/)[LENGTH] > 1 ||\n ''[$SPLIT](/.?/)[LENGTH]\n ) {\n // based on es5-shim implementation, need to rework it\n internalSplit = function (separator, limit) {\n var string = String(this);\n if (separator === undefined && limit === 0) return [];\n // If `separator` is not a regex, use native split\n if (!isRegExp(separator)) return $split.call(string, separator, limit);\n var output = [];\n var flags = (separator.ignoreCase ? 'i' : '') +\n (separator.multiline ? 'm' : '') +\n (separator.unicode ? 'u' : '') +\n (separator.sticky ? 'y' : '');\n var lastLastIndex = 0;\n var splitLimit = limit === undefined ? MAX_UINT32 : limit >>> 0;\n // Make `global` and avoid `lastIndex` issues by working with a copy\n var separatorCopy = new RegExp(separator.source, flags + 'g');\n var match, lastIndex, lastLength;\n while (match = regexpExec.call(separatorCopy, string)) {\n lastIndex = separatorCopy[LAST_INDEX];\n if (lastIndex > lastLastIndex) {\n output.push(string.slice(lastLastIndex, match.index));\n if (match[LENGTH] > 1 && match.index < string[LENGTH]) $push.apply(output, match.slice(1));\n lastLength = match[0][LENGTH];\n lastLastIndex = lastIndex;\n if (output[LENGTH] >= splitLimit) break;\n }\n if (separatorCopy[LAST_INDEX] === match.index) separatorCopy[LAST_INDEX]++; // Avoid an infinite loop\n }\n if (lastLastIndex === string[LENGTH]) {\n if (lastLength || !separatorCopy.test('')) output.push('');\n } else output.push(string.slice(lastLastIndex));\n return output[LENGTH] > splitLimit ? output.slice(0, splitLimit) : output;\n };\n // Chakra, V8\n } else if ('0'[$SPLIT](undefined, 0)[LENGTH]) {\n internalSplit = function (separator, limit) {\n return separator === undefined && limit === 0 ? [] : $split.call(this, separator, limit);\n };\n } else {\n internalSplit = $split;\n }\n\n return [\n // `String.prototype.split` method\n // https://tc39.github.io/ecma262/#sec-string.prototype.split\n function split(separator, limit) {\n var O = defined(this);\n var splitter = separator == undefined ? undefined : separator[SPLIT];\n return splitter !== undefined\n ? splitter.call(separator, O, limit)\n : internalSplit.call(String(O), separator, limit);\n },\n // `RegExp.prototype[@@split]` method\n // https://tc39.github.io/ecma262/#sec-regexp.prototype-@@split\n //\n // NOTE: This cannot be properly polyfilled in engines that don't support\n // the 'y' flag.\n function (regexp, limit) {\n var res = maybeCallNative(internalSplit, regexp, this, limit, internalSplit !== $split);\n if (res.done) return res.value;\n\n var rx = anObject(regexp);\n var S = String(this);\n var C = speciesConstructor(rx, RegExp);\n\n var unicodeMatching = rx.unicode;\n var flags = (rx.ignoreCase ? 'i' : '') +\n (rx.multiline ? 'm' : '') +\n (rx.unicode ? 'u' : '') +\n (SUPPORTS_Y ? 'y' : 'g');\n\n // ^(? + rx + ) is needed, in combination with some S slicing, to\n // simulate the 'y' flag.\n var splitter = new C(SUPPORTS_Y ? rx : '^(?:' + rx.source + ')', flags);\n var lim = limit === undefined ? MAX_UINT32 : limit >>> 0;\n if (lim === 0) return [];\n if (S.length === 0) return callRegExpExec(splitter, S) === null ? [S] : [];\n var p = 0;\n var q = 0;\n var A = [];\n while (q < S.length) {\n splitter.lastIndex = SUPPORTS_Y ? q : 0;\n var z = callRegExpExec(splitter, SUPPORTS_Y ? S : S.slice(q));\n var e;\n if (\n z === null ||\n (e = $min(toLength(splitter.lastIndex + (SUPPORTS_Y ? 0 : q)), S.length)) === p\n ) {\n q = advanceStringIndex(S, q, unicodeMatching);\n } else {\n A.push(S.slice(p, q));\n if (A.length === lim) return A;\n for (var i = 1; i <= z.length - 1; i++) {\n A.push(z[i]);\n if (A.length === lim) return A;\n }\n q = p = e;\n }\n }\n A.push(S.slice(p));\n return A;\n }\n ];\n});\n\n\n/***/ }),\n/* 264 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n__webpack_require__(149);\nvar anObject = __webpack_require__(1);\nvar $flags = __webpack_require__(53);\nvar DESCRIPTORS = __webpack_require__(7);\nvar TO_STRING = 'toString';\nvar $toString = /./[TO_STRING];\n\nvar define = function (fn) {\n __webpack_require__(13)(RegExp.prototype, TO_STRING, fn, true);\n};\n\n// 21.2.5.14 RegExp.prototype.toString()\nif (__webpack_require__(3)(function () { return $toString.call({ source: 'a', flags: 'b' }) != '/a/b'; })) {\n define(function toString() {\n var R = anObject(this);\n return '/'.concat(R.source, '/',\n 'flags' in R ? R.flags : !DESCRIPTORS && R instanceof RegExp ? $flags.call(R) : undefined);\n });\n// FF44- RegExp#toString has a wrong name\n} else if ($toString.name != TO_STRING) {\n define(function toString() {\n return $toString.call(this);\n });\n}\n\n\n/***/ }),\n/* 265 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.2 String.prototype.anchor(name)\n__webpack_require__(14)('anchor', function (createHTML) {\n return function anchor(name) {\n return createHTML(this, 'a', 'name', name);\n };\n});\n\n\n/***/ }),\n/* 266 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.3 String.prototype.big()\n__webpack_require__(14)('big', function (createHTML) {\n return function big() {\n return createHTML(this, 'big', '', '');\n };\n});\n\n\n/***/ }),\n/* 267 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.4 String.prototype.blink()\n__webpack_require__(14)('blink', function (createHTML) {\n return function blink() {\n return createHTML(this, 'blink', '', '');\n };\n});\n\n\n/***/ }),\n/* 268 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.5 String.prototype.bold()\n__webpack_require__(14)('bold', function (createHTML) {\n return function bold() {\n return createHTML(this, 'b', '', '');\n };\n});\n\n\n/***/ }),\n/* 269 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $export = __webpack_require__(0);\nvar $at = __webpack_require__(72)(false);\n$export($export.P, 'String', {\n // 21.1.3.3 String.prototype.codePointAt(pos)\n codePointAt: function codePointAt(pos) {\n return $at(this, pos);\n }\n});\n\n\n/***/ }),\n/* 270 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 21.1.3.6 String.prototype.endsWith(searchString [, endPosition])\n\nvar $export = __webpack_require__(0);\nvar toLength = __webpack_require__(6);\nvar context = __webpack_require__(104);\nvar ENDS_WITH = 'endsWith';\nvar $endsWith = ''[ENDS_WITH];\n\n$export($export.P + $export.F * __webpack_require__(91)(ENDS_WITH), 'String', {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = context(this, searchString, ENDS_WITH);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = toLength(that.length);\n var end = endPosition === undefined ? len : Math.min(toLength(endPosition), len);\n var search = String(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n\n\n/***/ }),\n/* 271 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.6 String.prototype.fixed()\n__webpack_require__(14)('fixed', function (createHTML) {\n return function fixed() {\n return createHTML(this, 'tt', '', '');\n };\n});\n\n\n/***/ }),\n/* 272 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.7 String.prototype.fontcolor(color)\n__webpack_require__(14)('fontcolor', function (createHTML) {\n return function fontcolor(color) {\n return createHTML(this, 'font', 'color', color);\n };\n});\n\n\n/***/ }),\n/* 273 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.8 String.prototype.fontsize(size)\n__webpack_require__(14)('fontsize', function (createHTML) {\n return function fontsize(size) {\n return createHTML(this, 'font', 'size', size);\n };\n});\n\n\n/***/ }),\n/* 274 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar toAbsoluteIndex = __webpack_require__(44);\nvar fromCharCode = String.fromCharCode;\nvar $fromCodePoint = String.fromCodePoint;\n\n// length should be 1, old FF problem\n$export($export.S + $export.F * (!!$fromCodePoint && $fromCodePoint.length != 1), 'String', {\n // 21.1.2.2 String.fromCodePoint(...codePoints)\n fromCodePoint: function fromCodePoint(x) { // eslint-disable-line no-unused-vars\n var res = [];\n var aLen = arguments.length;\n var i = 0;\n var code;\n while (aLen > i) {\n code = +arguments[i++];\n if (toAbsoluteIndex(code, 0x10ffff) !== code) throw RangeError(code + ' is not a valid code point');\n res.push(code < 0x10000\n ? fromCharCode(code)\n : fromCharCode(((code -= 0x10000) >> 10) + 0xd800, code % 0x400 + 0xdc00)\n );\n } return res.join('');\n }\n});\n\n\n/***/ }),\n/* 275 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 21.1.3.7 String.prototype.includes(searchString, position = 0)\n\nvar $export = __webpack_require__(0);\nvar context = __webpack_require__(104);\nvar INCLUDES = 'includes';\n\n$export($export.P + $export.F * __webpack_require__(91)(INCLUDES), 'String', {\n includes: function includes(searchString /* , position = 0 */) {\n return !!~context(this, searchString, INCLUDES)\n .indexOf(searchString, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n\n/***/ }),\n/* 276 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.9 String.prototype.italics()\n__webpack_require__(14)('italics', function (createHTML) {\n return function italics() {\n return createHTML(this, 'i', '', '');\n };\n});\n\n\n/***/ }),\n/* 277 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\nvar $at = __webpack_require__(72)(true);\n\n// 21.1.3.27 String.prototype[@@iterator]()\n__webpack_require__(96)(String, 'String', function (iterated) {\n this._t = String(iterated); // target\n this._i = 0; // next index\n// 21.1.5.2.1 %StringIteratorPrototype%.next()\n}, function () {\n var O = this._t;\n var index = this._i;\n var point;\n if (index >= O.length) return { value: undefined, done: true };\n point = $at(O, index);\n this._i += point.length;\n return { value: point, done: false };\n});\n\n\n/***/ }),\n/* 278 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.10 String.prototype.link(url)\n__webpack_require__(14)('link', function (createHTML) {\n return function link(url) {\n return createHTML(this, 'a', 'href', url);\n };\n});\n\n\n/***/ }),\n/* 279 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\nvar toIObject = __webpack_require__(18);\nvar toLength = __webpack_require__(6);\n\n$export($export.S, 'String', {\n // 21.1.2.4 String.raw(callSite, ...substitutions)\n raw: function raw(callSite) {\n var tpl = toIObject(callSite.raw);\n var len = toLength(tpl.length);\n var aLen = arguments.length;\n var res = [];\n var i = 0;\n while (len > i) {\n res.push(String(tpl[i++]));\n if (i < aLen) res.push(String(arguments[i]));\n } return res.join('');\n }\n});\n\n\n/***/ }),\n/* 280 */\n/***/ (function(module, exports, __webpack_require__) {\n\nvar $export = __webpack_require__(0);\n\n$export($export.P, 'String', {\n // 21.1.3.13 String.prototype.repeat(count)\n repeat: __webpack_require__(105)\n});\n\n\n/***/ }),\n/* 281 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.11 String.prototype.small()\n__webpack_require__(14)('small', function (createHTML) {\n return function small() {\n return createHTML(this, 'small', '', '');\n };\n});\n\n\n/***/ }),\n/* 282 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n// 21.1.3.18 String.prototype.startsWith(searchString [, position ])\n\nvar $export = __webpack_require__(0);\nvar toLength = __webpack_require__(6);\nvar context = __webpack_require__(104);\nvar STARTS_WITH = 'startsWith';\nvar $startsWith = ''[STARTS_WITH];\n\n$export($export.P + $export.F * __webpack_require__(91)(STARTS_WITH), 'String', {\n startsWith: function startsWith(searchString /* , position = 0 */) {\n var that = context(this, searchString, STARTS_WITH);\n var index = toLength(Math.min(arguments.length > 1 ? arguments[1] : undefined, that.length));\n var search = String(searchString);\n return $startsWith\n ? $startsWith.call(that, search, index)\n : that.slice(index, index + search.length) === search;\n }\n});\n\n\n/***/ }),\n/* 283 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.12 String.prototype.strike()\n__webpack_require__(14)('strike', function (createHTML) {\n return function strike() {\n return createHTML(this, 'strike', '', '');\n };\n});\n\n\n/***/ }),\n/* 284 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.13 String.prototype.sub()\n__webpack_require__(14)('sub', function (createHTML) {\n return function sub() {\n return createHTML(this, 'sub', '', '');\n };\n});\n\n\n/***/ }),\n/* 285 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// B.2.3.14 String.prototype.sup()\n__webpack_require__(14)('sup', function (createHTML) {\n return function sup() {\n return createHTML(this, 'sup', '', '');\n };\n});\n\n\n/***/ }),\n/* 286 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// 21.1.3.25 String.prototype.trim()\n__webpack_require__(50)('trim', function ($trim) {\n return function trim() {\n return $trim(this, 3);\n };\n});\n\n\n/***/ }),\n/* 287 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n// ECMAScript 6 symbols shim\nvar global = __webpack_require__(2);\nvar has = __webpack_require__(15);\nvar DESCRIPTORS = __webpack_require__(7);\nvar $export = __webpack_require__(0);\nvar redefine = __webpack_require__(13);\nvar META = __webpack_require__(35).KEY;\nvar $fails = __webpack_require__(3);\nvar shared = __webpack_require__(56);\nvar setToStringTag = __webpack_require__(49);\nvar uid = __webpack_require__(45);\nvar wks = __webpack_require__(5);\nvar wksExt = __webpack_require__(146);\nvar wksDefine = __webpack_require__(109);\nvar enumKeys = __webpack_require__(164);\nvar isArray = __webpack_require__(64);\nvar anObject = __webpack_require__(1);\nvar isObject = __webpack_require__(4);\nvar toObject = __webpack_require__(9);\nvar toIObject = __webpack_require__(18);\nvar toPrimitive = __webpack_require__(29);\nvar createDesc = __webpack_require__(41);\nvar _create = __webpack_require__(38);\nvar gOPNExt = __webpack_require__(135);\nvar $GOPD = __webpack_require__(16);\nvar $GOPS = __webpack_require__(68);\nvar $DP = __webpack_require__(8);\nvar $keys = __webpack_require__(40);\nvar gOPD = $GOPD.f;\nvar dP = $DP.f;\nvar gOPN = gOPNExt.f;\nvar $Symbol = global.Symbol;\nvar $JSON = global.JSON;\nvar _stringify = $JSON && $JSON.stringify;\nvar PROTOTYPE = 'prototype';\nvar HIDDEN = wks('_hidden');\nvar TO_PRIMITIVE = wks('toPrimitive');\nvar isEnum = {}.propertyIsEnumerable;\nvar SymbolRegistry = shared('symbol
[all...]
/plugin/combo/vendor/antlr/antlr4-php-runtime/src/Error/
H A DDefaultErrorStrategy.php200 * that the current lookahead symbol is consistent with what were expecting
392 * erroneous symbol is current `LT(1)` symbol and has not yet been
549 * checking if the `LA(1)` input symbol could be successfully matched
550 * if it were instead the `LA(2)` symbol. If this method returns
641 * symbols. But, actions might refer to that missing symbol.
746 protected function getSymbolText(Token $symbol) : ?string argument
748 return $symbol->getText();
751 protected function getSymbolType(Token $symbol) : int argument
753 return $symbol
[all...]
/plugin/combo/vendor/antlr/antlr4-php-runtime/src/
H A DParser.php150 * Match current input symbol against `ttype`. If the symbol type matches,
154 * If the symbol type does not match, {@see ANTLRErrorStrategy::recoverInline()}
157 * of the symbol returned by {@see ANTLRErrorStrategy::recoverInline()}
158 * is -1, the symbol is added to the parse tree by calling
164 * @return Token the matched symbol
167 * @throws RecognitionException If the current input symbol did not match
169 * from the mismatched symbol.
188 // if it's not the current symbol
197 * Match current input symbol a
778 isExpectedToken(int $symbol) global() argument
[all...]
/plugin/combo/
H A Dyarn.lock143 symbol-tree "^3.2.4"
219 symbol-tree@^3.2.4:
221 resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2"

12345678910