/plugin/jdraw/lib/ |
H A D | apache-mime4j-0.6.jar | ... PositionInputStream extends java.io.FilterInputStream {
protected long position
private long markedPosition
public void <init> (java ... |
/plugin/chordsheets/js/ |
H A D | raphael.js | 1 …position=v.dx*p+c+v.dy*p),s.fillsize&&(m.size=s.fillsize[0]*l(e)+c+s.fillsize[1]*l(r)),u.appendChi…
|
/plugin/sequencediagram/bower_components/raphael/ |
H A D | raphael.min.js | 1 …position=v.dx*p+c+v.dy*p),s.fillsize&&(m.size=s.fillsize[0]*l(e)+c+s.fillsize[1]*l(r)),u.appendChi…
|
/plugin/flowchartjs/ |
H A D | raphael.min.js | 1 !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.Raphael=e():t.Raphael=e()}(window,function(){return function(t){var e={};function r(i){if(e[i])return e[i].exports;var n=e[i]={i:i,l:!1,exports:{}};return t[i].call(n.exports,n,n.exports,r),n.l=!0,n.exports}return r.m=t,r.c=e,r.d=function(t,e,i){r.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},r.r=function(t){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(t,"__esModule",{value:!0})},r.t=function(t,e){if(1&e&&(t=r(t)),8&e)return t;if(4&e&&"object"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(r.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:t}),2&e&&"string"!=typeof t)for(var n in t)r.d(i,n,function(e){return t[e]}.bind(null,n));return i},r.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return r.d(e,"a",e),e},r.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},r.p="",r(r.s=1)}([function(t,e,r){var i,n;i=[r(2)],void 0===(n=function(t){function e(i){if(e.is(i,"function"))return r?i():t.on("raphael.DOMload",i);if(e.is(i,A))return e._engine.create[c](e,i.splice(0,3+e.is(i[0],T))).add(i);var n=Array.prototype.slice.call(arguments,0);if(e.is(n[n.length-1],"function")){var a=n.pop();return r?a.call(e._engine.create[c](e,n)):t.on("raphael.DOMload",function(){a.call(e._engine.create[c](e,n))})}return e._engine.create[c](e,arguments)}e.version="2.3.0",e.eve=t;var r,i,n=/[, ]+/,a={circle:1,rect:1,path:1,ellipse:1,text:1,image:1},s=/\{(\d+)\}/g,o="hasOwnProperty",l={doc:document,win:window},h={was:Object.prototype[o].call(l.win,"Raphael"),is:l.win.Raphael},u=function(){this.ca=this.customAttributes={}},c="apply",f="concat",p="ontouchstart"in window||window.TouchEvent||window.DocumentTouch&&document instanceof DocumentTouch,d="",g=" ",x=String,v="split",y="click dblclick mousedown mousemove mouseout mouseover mouseup touchstart touchmove touchend touchcancel"[v](g),m={mousedown:"touchstart",mousemove:"touchmove",mouseup:"touchend"},b=x.prototype.toLowerCase,_=Math,w=_.max,k=_.min,B=_.abs,C=_.pow,S=_.PI,T="number",A="array",M=Object.prototype.toString,E=(e._ISURL=/^url\(['"]?(.+?)['"]?\)$/i,/^\s*((#[a-f\d]{6})|(#[a-f\d]{3})|rgba?\(\s*([\d\.]+%?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+%?(?:\s*,\s*[\d\.]+%?)?)\s*\)|hsba?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\)|hsla?\(\s*([\d\.]+(?:deg|\xb0|%)?\s*,\s*[\d\.]+%?\s*,\s*[\d\.]+(?:%?\s*,\s*[\d\.]+)?)%?\s*\))\s*$/i),N={NaN:1,Infinity:1,"-Infinity":1},L=/^(?:cubic-)?bezier\(([^,]+),([^,]+),([^,]+),([^\)]+)\)/,P=_.round,z=parseFloat,F=parseInt,R=x.prototype.toUpperCase,j=e._availableAttrs={"arrow-end":"none","arrow-start":"none",blur:0,"clip-rect":"0 0 1e9 1e9",cursor:"default",cx:0,cy:0,fill:"#fff","fill-opacity":1,font:'10px "Arial"',"font-family":'"Arial"',"font-size":"10","font-style":"normal","font-weight":400,gradient:0,height:0,href:"http://raphaeljs.com/","letter-spacing":0,opacity:1,path:"M0,0",r:0,rx:0,ry:0,src:"",stroke:"#000","stroke-dasharray":"","stroke-linecap":"butt","stroke-linejoin":"butt","stroke-miterlimit":0,"stroke-opacity":1,"stroke-width":1,target:"_blank","text-anchor":"middle",title:"Raphael",transform:"",width:0,x:0,y:0,class:""},I=e._availableAnimAttrs={blur:T,"clip-rect":"csv",cx:T,cy:T,fill:"colour","fill-opacity":T,"font-size":T,height:T,opacity:T,path:"path",r:T,rx:T,ry:T,stroke:"colour","stroke-opacity":T,"stroke-width":T,transform:"transform",width:T,x:T,y:T},D=/[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/,q={hs:1,rg:1},O=/,?([achlmqrstvxz]),?/gi,V=/([achlmrqstvz])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/gi,W=/([rstm])[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029,]*((-?\d*\.?\d*(?:e[\-+]?\d+)?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*)+)/gi,Y=/(-?\d*\.?\d*(?:e[\-+]?\d+)?)[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,?[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*/gi,G=(e._radial_gradient=/^r(?:\(([^,]+?)[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*,[\x09\x0a\x0b\x0c\x0d\x20\xa0\u1680\u180e\u2000\u2001\u2002\u2003\u2004\u2005\u2006\u2007\u2008\u2009\u200a\u202f\u205f\u3000\u2028\u2029]*([^\)]+?)\))?/,{}),H=function(t,e){return z(t)-z(e)},X=function(t){return t},U=e._rectPath=function(t,e,r,i,n){return n?[["M",t+n,e],["l",r-2*n,0],["a",n,n,0,0,1,n,n],["l",0,i-2*n],["a",n,n,0,0,1,-n,n],["l",2*n-r,0],["a",n,n,0,0,1,-n,-n],["l",0,2*n-i],["a",n,n,0,0,1,n,-n],["z"]]:[["M",t,e],["l",r,0],["l",0,i],["l",-r,0],["z"]]},$=function(t,e,r,i){return null==i&&(i=r),[["M",t,e],["m",0,-i],["a",r,i,0,1,1,0,2*i],["a",r,i,0,1,1,0,-2*i],["z"]]},Z=e._getPath={path:function(t){return t.attr("path")},circle:function(t){var e=t.attrs;return $(e.cx,e.cy,e.r)},ellipse:function(t){var e=t.attrs;return $(e.cx,e.cy,e.rx,e.ry)},rect:function(t){var e=t.attrs;return U(e.x,e.y,e.width,e.height,e.r)},image:function(t){var e=t.attrs;return U(e.x,e.y,e.width,e.height)},text:function(t){var e=t._getBBox();return U(e.x,e.y,e.width,e.height)},set:function(t){var e=t._getBBox();return U(e.x,e.y,e.width,e.height)}},Q=e.mapPath=function(t,e){if(!e)return t;var r,i,n,a,s,o,l;for(n=0,s=(t=Tt(t)).length;n<s;n++)for(a=1,o=(l=t[n]).length;a<o;a+=2)r=e.x(l[a],l[a+1]),i=e.y(l[a],l[a+1]),l[a]=r,l[a+1]=i;return t};if(e._g=l,e.type=l.win.SVGAngle||l.doc.implementation.hasFeature("http://www.w3.org/TR/SVG11/feature#BasicStructure","1.1")?"SVG":"VML","VML"==e.type){var J,K=l.doc.createElement("div");if(K.innerHTML='<v:shape adj="1"/>',(J=K.firstChild).style.behavior="url(#default#VML)",!J||"object"!=typeof J.adj)return e.type=d;K=null}function tt(t){if("function"==typeof t||Object(t)!==t)return t;var e=new t.constructor;for(var r in t)t[o](r)&&(e[r]=tt(t[r]));return e}e.svg=!(e.vml="VML"==e.type),e._Paper=u,e.fn=i=u.prototype=e.prototype,e._id=0,e.is=function(t,e){return"finite"==(e=b.call(e))?!N[o](+t):"array"==e?t instanceof Array:"null"==e&&null===t||e==typeof t&&null!==t||"object"==e&&t===Object(t)||"array"==e&&Array.isArray&&Array.isArray(t)||M.call(t).slice(8,-1).toLowerCase()==e},e.angle=function(t,r,i,n,a,s){if(null==a){var o=t-i,l=r-n;return o||l?(180+180*_.atan2(-l,-o)/S+360)%360:0}return e.angle(t,r,a,s)-e.angle(i,n,a,s)},e.rad=function(t){return t%360*S/180},e.deg=function(t){return Math.round(180*t/S%360*1e3)/1e3},e.snapTo=function(t,r,i){if(i=e.is(i,"finite")?i:10,e.is(t,A)){for(var n=t.length;n--;)if(B(t[n]-r)<=i)return t[n]}else{var a=r%(t=+t);if(a<i)return r-a;if(a>t-i)return r-a+t}return r};var et,rt;e.createUUID=(et=/[xy]/g,rt=function(t){var e=16*_.random()|0;return("x"==t?e:3&e|8).toString(16)},function(){return"xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(et,rt).toUpperCase()});e.setWindow=function(r){t("raphael.setWindow",e,l.win,r),l.win=r,l.doc=l.win.document,e._engine.initWin&&e._engine.initWin(l.win)};var it=function(t){if(e.vml){var r,i=/^\s+|\s+$/g;try{var n=new ActiveXObject("htmlfile");n.write("<body>"),n.close(),r=n.body}catch(t){r=createPopup().document.body}var a=r.createTextRange();it=ht(function(t){try{r.style.color=x(t).replace(i,d);var e=a.queryCommandValue("ForeColor");return"#"+("000000"+(e=(255&e)<<16|65280&e|(16711680&e)>>>16).toString(16)).slice(-6)}catch(t){return"none"}})}else{var s=l.doc.createElement("i");s.title="Raphaël Colour Picker",s.style.display="none",l.doc.body.appendChild(s),it=ht(function(t){return s.style.color=t,l.doc.defaultView.getComputedStyle(s,d).getPropertyValue("color")})}return it(t)},nt=function(){return"hsb("+[this.h,this.s,this.b]+")"},at=function(){return"hsl("+[this.h,this.s,this.l]+")"},st=function(){return this.hex},ot=function(t,r,i){if(null==r&&e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t&&(i=t.b,r=t.g,t=t.r),null==r&&e.is(t,"string")){var n=e.getRGB(t);t=n.r,r=n.g,i=n.b}return(t>1||r>1||i>1)&&(t/=255,r/=255,i/=255),[t,r,i]},lt=function(t,r,i,n){var a={r:t*=255,g:r*=255,b:i*=255,hex:e.rgb(t,r,i),toString:st};return e.is(n,"finite")&&(a.opacity=n),a};function ht(t,e,r){return function i(){var n=Array.prototype.slice.call(arguments,0),a=n.join("␀"),s=i.cache=i.cache||{},l=i.count=i.count||[];return s[o](a)?(function(t,e){for(var r=0,i=t.length;r<i;r++)if(t[r]===e)return t.push(t.splice(r,1)[0])}(l,a),r?r(s[a]):s[a]):(l.length>=1e3&&delete s[l.shift()],l.push(a),s[a]=t[c](e,n),r?r(s[a]):s[a])}}e.color=function(t){var r;return e.is(t,"object")&&"h"in t&&"s"in t&&"b"in t?(r=e.hsb2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):e.is(t,"object")&&"h"in t&&"s"in t&&"l"in t?(r=e.hsl2rgb(t),t.r=r.r,t.g=r.g,t.b=r.b,t.hex=r.hex):(e.is(t,"string")&&(t=e.getRGB(t)),e.is(t,"object")&&"r"in t&&"g"in t&&"b"in t?(r=e.rgb2hsl(t),t.h=r.h,t.s=r.s,t.l=r.l,r=e.rgb2hsb(t),t.v=r.b):(t={hex:"none"}).r=t.g=t.b=t.h=t.s=t.v=t.l=-1),t.toString=st,t},e.hsb2rgb=function(t,e,r,i){var n,a,s,o,l;return this.is(t,"object")&&"h"in t&&"s"in t&&"b"in t&&(r=t.b,e=t.s,i=t.o,t=t.h),o=(l=r*e)*(1-B((t=(t*=360)%360/60)%2-1)),n=a=s=r-l,lt(n+=[l,o,0,0,o,l][t=~~t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],i)},e.hsl2rgb=function(t,e,r,i){var n,a,s,o,l;return this.is(t,"object")&&"h"in t&&"s"in t&&"l"in t&&(r=t.l,e=t.s,t=t.h),(t>1||e>1||r>1)&&(t/=360,e/=100,r/=100),o=(l=2*e*(r<.5?r:1-r))*(1-B((t=(t*=360)%360/60)%2-1)),n=a=s=r-l/2,lt(n+=[l,o,0,0,o,l][t=~~t],a+=[o,l,l,o,0,0][t],s+=[0,0,o,l,l,o][t],i)},e.rgb2hsb=function(t,e,r){var i,n;return t=(r=ot(t,e,r))[0],e=r[1],r=r[2],{h:((0==(n=(i=w(t,e,r))-k(t,e,r))?null:i==t?(e-r)/n:i==e?(r-t)/n+2:(t-e)/n+4)+360)%6*60/360,s:0==n?0:n/i,b:i,toString:nt}},e.rgb2hsl=function(t,e,r){var i,n,a,s;return t=(r=ot(t,e,r))[0],e=r[1],r=r[2],i=((n=w(t,e,r))+(a=k(t,e,r)))/2,{h:((0==(s=n-a)?null:n==t?(e-r)/s:n==e?(r-t)/s+2:(t-e)/s+4)+360)%6*60/360,s:0==s?0:i<.5?s/(2*i):s/(2-2*i),l:i,toString:at}},e._path2string=function(){return this.join(",").replace(O,"$1")};e._preload=function(t,e){var r=l.doc.createElement("img");r.style.cssText="position:absolute;left:-9999em;top:-9999em",r.onload=function(){e.call(this),this.onload=null,l.doc.body.removeChild(this)},r.onerror=function(){l.doc.body.removeChild(this)},l.doc.body.appendChild(r),r.src=t};function ut(){return this.hex}function ct(t,e){for(var r=[],i=0,n=t.length;n-2*!e>i;i+=2){var a=[{x:+t[i-2],y:+t[i-1]},{x:+t[i],y:+t[i+1]},{x:+t[i+2],y:+t[i+3]},{x:+t[i+4],y:+t[i+5]}];e?i?n-4==i?a[3]={x:+t[0],y:+t[1]}:n-2==i&&(a[2]={x:+t[0],y:+t[1]},a[3]={x:+t[2],y:+t[3]}):a[0]={x:+t[n-2],y:+t[n-1]}:n-4==i?a[3]=a[2]:i||(a[0]={x:+t[i],y:+t[i+1]}),r.push(["C",(-a[0].x+6*a[1].x+a[2].x)/6,(-a[0].y+6*a[1].y+a[2].y)/6,(a[1].x+6*a[2].x-a[3].x)/6,(a[1].y+6*a[2].y-a[3].y)/6,a[2].x,a[2].y])}return r}e.getRGB=ht(function(t){if(!t||(t=x(t)).indexOf("-")+1)return{r:-1,g:-1,b:-1,hex:"none",error:1,toString:ut};if("none"==t)return{r:-1,g:-1,b:-1,hex:"none",toString:ut};!q[o](t.toLowerCase().substring(0,2))&&"#"!=t.charAt()&&(t=it(t));var r,i,n,a,s,l,h=t.match(E);return h?(h[2]&&(n=F(h[2].substring(5),16),i=F(h[2].substring(3,5),16),r=F(h[2].substring(1,3),16)),h[3]&&(n=F((s=h[3].charAt(3))+s,16),i=F((s=h[3].charAt(2))+s,16),r=F((s=h[3].charAt(1))+s,16)),h[4]&&(l=h[4][v](D),r=z(l[0]),"%"==l[0].slice(-1)&&(r*=2.55),i=z(l[1]),"%"==l[1].slice(-1)&&(i*=2.55),n=z(l[2]),"%"==l[2].slice(-1)&&(n*=2.55),"rgba"==h[1].toLowerCase().slice(0,4)&&(a=z(l[3])),l[3]&&"%"==l[3].slice(-1)&&(a/=100)),h[5]?(l=h[5][v](D),r=z(l[0]),"%"==l[0].slice(-1)&&(r*=2.55),i=z(l[1]),"%"==l[1].slice(-1)&&(i*=2.55),n=z(l[2]),"%"==l[2].slice(-1)&&(n*=2.55),("deg"==l[0].slice(-3)||"°"==l[0].slice(-1))&&(r/=360),"hsba"==h[1].toLowerCase().slice(0,4)&&(a=z(l[3])),l[3]&&"%"==l[3].slice(-1)&&(a/=100),e.hsb2rgb(r,i,n,a)):h[6]?(l=h[6][v](D),r=z(l[0]),"%"==l[0].slice(-1)&&(r*=2.55),i=z(l[1]),"%"==l[1].slice(-1)&&(i*=2.55),n=z(l[2]),"%"==l[2].slice(-1)&&(n*=2.55),("deg"==l[0].slice(-3)||"°"==l[0].slice(-1))&&(r/=360),"hsla"==h[1].toLowerCase().slice(0,4)&&(a=z(l[3])),l[3]&&"%"==l[3].slice(-1)&&(a/=100),e.hsl2rgb(r,i,n,a)):((h={r:r,g:i,b:n,toString:ut}).hex="#"+(16777216|n|i<<8|r<<16).toString(16).slice(1),e.is(a,"finite")&&(h.opacity=a),h)):{r:-1,g:-1,b:-1,hex:"none",error:1,toString:ut}},e),e.hsb=ht(function(t,r,i){return e.hsb2rgb(t,r,i).hex}),e.hsl=ht(function(t,r,i){return e.hsl2rgb(t,r,i).hex}),e.rgb=ht(function(t,e,r){function i(t){return t+.5|0}return"#"+(16777216|i(r)|i(e)<<8|i(t)<<16).toString(16).slice(1)}),e.getColor=function(t){var e=this.getColor.start=this.getColor.start||{h:0,s:1,b:t||.75},r=this.hsb2rgb(e.h,e.s,e.b);return e.h+=.075,e.h>1&&(e.h=0,e.s-=.2,e.s<=0&&(this.getColor.start={h:0,s:1,b:e.b})),r.hex},e.getColor.reset=function(){delete this.start},e.parsePathString=function(t){if(!t)return null;var r=ft(t);if(r.arr)return mt(r.arr);var i={a:7,c:6,h:1,l:2,m:2,r:4,q:4,s:4,t:2,v:1,z:0},n=[];return e.is(t,A)&&e.is(t[0],A)&&(n=mt(t)),n.length||x(t).replace(V,function(t,e,r){var a=[],s=e.toLowerCase();if(r.replace(Y,function(t,e){e&&a.push(+e)}),"m"==s&&a.length>2&&(n.push([e][f](a.splice(0,2))),s="l",e="m"==e?"l":"L"),"r"==s)n.push([e][f](a));else for(;a.length>=i[s]&&(n.push([e][f](a.splice(0,i[s]))),i[s]););}),n.toString=e._path2string,r.arr=mt(n),n},e.parseTransformString=ht(function(t){if(!t)return null;var r=[];return e.is(t,A)&&e.is(t[0],A)&&(r=mt(t)),r.length||x(t).replace(W,function(t,e,i){var n=[];b.call(e);i.replace(Y,function(t,e){e&&n.push(+e)}),r.push([e][f](n))}),r.toString=e._path2string,r},this,function(t){if(!t)return t;for(var e=[],r=0;r<t.length;r++){for(var i=[],n=0;n<t[r].length;n++)i.push(t[r][n]);e.push(i)}return e});var ft=function(t){var e=ft.ps=ft.ps||{};return e[t]?e[t].sleep=100:e[t]={sleep:100},setTimeout(function(){for(var r in e)e[o](r)&&r!=t&&(e[r].sleep--,!e[r].sleep&&delete e[r])}),e[t]};function pt(t,e,r,i,n){return t*(t*(-3*e+9*r-9*i+3*n)+6*e-12*r+6*i)-3*e+3*r}function dt(t,e,r,i,n,a,s,o,l){null==l&&(l=1);for(var h=(l=l>1?1:l<0?0:l)/2,u=[-.1252,.1252,-.3678,.3678,-.5873,.5873,-.7699,.7699,-.9041,.9041,-.9816,.9816],c=[.2491,.2491,.2335,.2335,.2032,.2032,.1601,.1601,.1069,.1069,.0472,.0472],f=0,p=0;p<12;p++){var d=h*u[p]+h,g=pt(d,t,r,n,s),x=pt(d,e,i,a,o),v=g*g+x*x;f+=c[p]*_.sqrt(v)}return h*f}function gt(t,e,r,i,n,a,s,o){if(!(w(t,r)<k(n,s)||k(t,r)>w(n,s)||w(e,i)<k(a,o)||k(e,i)>w(a,o))){var l=(t-r)*(a-o)-(e-i)*(n-s);if(l){var h=((t*i-e*r)*(n-s)-(t-r)*(n*o-a*s))/l,u=((t*i-e*r)*(a-o)-(e-i)*(n*o-a*s))/l,c=+h.toFixed(2),f=+u.toFixed(2);if(!(c<+k(t,r).toFixed(2)||c>+w(t,r).toFixed(2)||c<+k(n,s).toFixed(2)||c>+w(n,s).toFixed(2)||f<+k(e,i).toFixed(2)||f>+w(e,i).toFixed(2)||f<+k(a,o).toFixed(2)||f>+w(a,o).toFixed(2)))return{x:h,y:u}}}}function xt(t,r,i){var n=e.bezierBBox(t),a=e.bezierBBox(r);if(!e.isBBoxIntersect(n,a))return i?0:[];for(var s=dt.apply(0,t),o=dt.apply(0,r),l=w(~~(s/5),1),h=w(~~(o/5),1),u=[],c=[],f={},p=i?0:[],d=0;d<l+1;d++){var g=e.findDotsAtSegment.apply(e,t.concat(d/l));u.push({x:g.x,y:g.y,t:d/l})}for(d=0;d<h+1;d++)g=e.findDotsAtSegment.apply(e,r.concat(d/h)),c.push({x:g.x,y:g.y,t:d/h});for(d=0;d<l;d++)for(var x=0;x<h;x++){var v=u[d],y=u[d+1],m=c[x],b=c[x+1],_=B(y.x-v.x)<.001?"y":"x",C=B(b.x-m.x)<.001?"y":"x",S=gt(v.x,v.y,y.x,y.y,m.x,m.y,b.x,b.y);if(S){if(f[S.x.toFixed(4)]==S.y.toFixed(4))continue;f[S.x.toFixed(4)]=S.y.toFixed(4);var T=v.t+B((S[_]-v[_])/(y[_]-v[_]))*(y.t-v.t),A=m.t+B((S[C]-m[C])/(b[C]-m[C]))*(b.t-m.t);T>=0&&T<=1.001&&A>=0&&A<=1.001&&(i?p++:p.push({x:S.x,y:S.y,t1:k(T,1),t2:k(A,1)}))}}return p}function vt(t,r,i){t=e._path2curve(t),r=e._path2curve(r);for(var n,a,s,o,l,h,u,c,f,p,d=i?0:[],g=0,x=t.length;g<x;g++){var v=t[g];if("M"==v[0])n=l=v[1],a=h=v[2];else{"C"==v[0]?(f=[n,a].concat(v.slice(1)),n=f[6],a=f[7]):(f=[n,a,n,a,l,h,l,h],n=l,a=h);for(var y=0,m=r.length;y<m;y++){var b=r[y];if("M"==b[0])s=u=b[1],o=c=b[2];else{"C"==b[0]?(p=[s,o].concat(b.slice(1)),s=p[6],o=p[7]):(p=[s,o,s,o,u,c,u,c],s=u,o=c);var _=xt(f,p,i);if(i)d+=_;else{for(var w=0,k=_.length;w<k;w++)_[w].segment1=g,_[w].segment2=y,_[w].bez1=f,_[w].bez2=p;d=d.concat(_)}}}}}return d}e.findDotsAtSegment=function(t,e,r,i,n,a,s,o,l){var h=1-l,u=C(h,3),c=C(h,2),f=l*l,p=f*l,d=u*t+3*c*l*r+3*h*l*l*n+p*s,g=u*e+3*c*l*i+3*h*l*l*a+p*o,x=t+2*l*(r-t)+f*(n-2*r+t),v=e+2*l*(i-e)+f*(a-2*i+e),y=r+2*l*(n-r)+f*(s-2*n+r),m=i+2*l*(a-i)+f*(o-2*a+i),b=h*t+l*r,w=h*e+l*i,k=h*n+l*s,B=h*a+l*o,T=90-180*_.atan2(x-y,v-m)/S;return(x>y||v<m)&&(T+=180),{x:d,y:g,m:{x:x,y:v},n:{x:y,y:m},start:{x:b,y:w},end:{x:k,y:B},alpha:T}},e.bezierBBox=function(t,r,i,n,a,s,o,l){e.is(t,"array")||(t=[t,r,i,n,a,s,o,l]);var h=St.apply(null,t);return{x:h.min.x,y:h.min.y,x2:h.max.x,y2:h.max.y,width:h.max.x-h.min.x,height:h.max.y-h.min.y}},e.isPointInsideBBox=function(t,e,r){return e>=t.x&&e<=t.x2&&r>=t.y&&r<=t.y2},e.isBBoxIntersect=function(t,r){var i=e.isPointInsideBBox;return i(r,t.x,t.y)||i(r,t.x2,t.y)||i(r,t.x,t.y2)||i(r,t.x2,t.y2)||i(t,r.x,r.y)||i(t,r.x2,r.y)||i(t,r.x,r.y2)||i(t,r.x2,r.y2)||(t.x<r.x2&&t.x>r.x||r.x<t.x2&&r.x>t.x)&&(t.y<r.y2&&t.y>r.y||r.y<t.y2&&r.y>t.y)},e.pathIntersection=function(t,e){return vt(t,e)},e.pathIntersectionNumber=function(t,e){return vt(t,e,1)},e.isPointInsidePath=function(t,r,i){var n=e.pathBBox(t);return e.isPointInsideBBox(n,r,i)&&vt(t,[["M",r,i],["H",n.x2+10]],1)%2==1},e._removedFactory=function(e){return function(){t("raphael.log",null,"Raphaël: you are calling to method “"+e+"” of removed object",e)}};var yt=e.pathBBox=function(t){var e=ft(t);if(e.bbox)return tt(e.bbox);if(!t)return{x:0,y:0,width:0,height:0,x2:0,y2:0};for(var r,i=0,n=0,a=[],s=[],o=0,l=(t=Tt(t)).length;o<l;o++)if("M"==(r=t[o])[0])i=r[1],n=r[2],a.push(i),s.push(n);else{var h=St(i,n,r[1],r[2],r[3],r[4],r[5],r[6]);a=a[f](h.min.x,h.max.x),s=s[f](h.min.y,h.max.y),i=r[5],n=r[6]}var u=k[c](0,a),p=k[c](0,s),d=w[c](0,a),g=w[c](0,s),x=d-u,v=g-p,y={x:u,y:p,x2:d,y2:g,width:x,height:v,cx:u+x/2,cy:p+v/2};return e.bbox=tt(y),y},mt=function(t){var r=tt(t);return r.toString=e._path2string,r},bt=e._pathToRelative=function(t){var r=ft(t);if(r.rel)return mt(r.rel);e.is(t,A)&&e.is(t&&t[0],A)||(t=e.parsePathString(t));var i=[],n=0,a=0,s=0,o=0,l=0;"M"==t[0][0]&&(s=n=t[0][1],o=a=t[0][2],l++,i.push(["M",n,a]));for(var h=l,u=t.length;h<u;h++){var c=i[h]=[],f=t[h];if(f[0]!=b.call(f[0]))switch(c[0]=b.call(f[0]),c[0]){case"a":c[1]=f[1],c[2]=f[2],c[3]=f[3],c[4]=f[4],c[5]=f[5],c[6]=+(f[6]-n).toFixed(3),c[7]=+(f[7]-a).toFixed(3);break;case"v":c[1]=+(f[1]-a).toFixed(3);break;case"m":s=f[1],o=f[2];default:for(var p=1,d=f.length;p<d;p++)c[p]=+(f[p]-(p%2?n:a)).toFixed(3)}else{c=i[h]=[],"m"==f[0]&&(s=f[1]+n,o=f[2]+a);for(var g=0,x=f.length;g<x;g++)i[h][g]=f[g]}var v=i[h].length;switch(i[h][0]){case"z":n=s,a=o;break;case"h":n+=+i[h][v-1];break;case"v":a+=+i[h][v-1];break;default:n+=+i[h][v-2],a+=+i[h][v-1]}}return i.toString=e._path2string,r.rel=mt(i),i},_t=e._pathToAbsolute=function(t){var r=ft(t);if(r.abs)return mt(r.abs);if(e.is(t,A)&&e.is(t&&t[0],A)||(t=e.parsePathString(t)),!t||!t.length)return[["M",0,0]];var i=[],n=0,a=0,s=0,o=0,l=0;"M"==t[0][0]&&(s=n=+t[0][1],o=a=+t[0][2],l++,i[0]=["M",n,a]);for(var h,u,c=3==t.length&&"M"==t[0][0]&&"R"==t[1][0].toUpperCase()&&"Z"==t[2][0].toUpperCase(),p=l,d=t.length;p<d;p++){if(i.push(h=[]),(u=t[p])[0]!=R.call(u[0]))switch(h[0]=R.call(u[0]),h[0]){case"A":h[1]=u[1],h[2]=u[2],h[3]=u[3],h[4]=u[4],h[5]=u[5],h[6]=+(u[6]+n),h[7]=+(u[7]+a);break;case"V":h[1]=+u[1]+a;break;case"H":h[1]=+u[1]+n;break;case"R":for(var g=[n,a][f](u.slice(1)),x=2,v=g.length;x<v;x++)g[x]=+g[x]+n,g[++x]=+g[x]+a;i.pop(),i=i[f](ct(g,c));break;case"M":s=+u[1]+n,o=+u[2]+a;default:for(x=1,v=u.length;x<v;x++)h[x]=+u[x]+(x%2?n:a)}else if("R"==u[0])g=[n,a][f](u.slice(1)),i.pop(),i=i[f](ct(g,c)),h=["R"][f](u.slice(-2));else for(var y=0,m=u.length;y<m;y++)h[y]=u[y];switch(h[0]){case"Z":n=s,a=o;break;case"H":n=h[1];break;case"V":a=h[1];break;case"M":s=h[h.length-2],o=h[h.length-1];default:n=h[h.length-2],a=h[h.length-1]}}return i.toString=e._path2string,r.abs=mt(i),i},wt=function(t,e,r,i){return[t,e,r,i,r,i]},kt=function(t,e,r,i,n,a){return[1/3*t+2/3*r,1/3*e+2/3*i,1/3*n+2/3*r,1/3*a+2/3*i,n,a]},Bt=function(t,e,r,i,n,a,s,o,l,h){var u,c=120*S/180,p=S/180*(+n||0),d=[],g=ht(function(t,e,r){return{x:t*_.cos(r)-e*_.sin(r),y:t*_.sin(r)+e*_.cos(r)}});if(h)A=h[0],M=h[1],C=h[2],T=h[3];else{t=(u=g(t,e,-p)).x,e=u.y,o=(u=g(o,l,-p)).x,l=u.y;_.cos(S/180*n),_.sin(S/180*n);var x=(t-o)/2,y=(e-l)/2,m=x*x/(r*r)+y*y/(i*i);m>1&&(r*=m=_.sqrt(m),i*=m);var b=r*r,w=i*i,k=(a==s?-1:1)*_.sqrt(B((b*w-b*y*y-w*x*x)/(b*y*y+w*x*x))),C=k*r*y/i+(t+o)/2,T=k*-i*x/r+(e+l)/2,A=_.asin(((e-T)/i).toFixed(9)),M=_.asin(((l-T)/i).toFixed(9));(A=t<C?S-A:A)<0&&(A=2*S+A),(M=o<C?S-M:M)<0&&(M=2*S+M),s&&A>M&&(A-=2*S),!s&&M>A&&(M-=2*S)}var E=M-A;if(B(E)>c){var N=M,L=o,P=l;M=A+c*(s&&M>A?1:-1),o=C+r*_.cos(M),l=T+i*_.sin(M),d=Bt(o,l,r,i,n,0,s,L,P,[M,N,C,T])}E=M-A;var z=_.cos(A),F=_.sin(A),R=_.cos(M),j=_.sin(M),I=_.tan(E/4),D=4/3*r*I,q=4/3*i*I,O=[t,e],V=[t+D*F,e-q*z],W=[o+D*j,l-q*R],Y=[o,l];if(V[0]=2*O[0]-V[0],V[1]=2*O[1]-V[1],h)return[V,W,Y][f](d);for(var G=[],H=0,X=(d=[V,W,Y][f](d).join()[v](",")).length;H<X;H++)G[H]=H%2?g(d[H-1],d[H],p).y:g(d[H],d[H+1],p).x;return G},Ct=function(t,e,r,i,n,a,s,o,l){var h=1-l;return{x:C(h,3)*t+3*C(h,2)*l*r+3*h*l*l*n+C(l,3)*s,y:C(h,3)*e+3*C(h,2)*l*i+3*h*l*l*a+C(l,3)*o}},St=ht(function(t,e,r,i,n,a,s,o){var l,h=n-2*r+t-(s-2*n+r),u=2*(r-t)-2*(n-r),f=t-r,p=(-u+_.sqrt(u*u-4*h*f))/2/h,d=(-u-_.sqrt(u*u-4*h*f))/2/h,g=[e,o],x=[t,s];return B(p)>"1e12"&&(p=.5),B(d)>"1e12"&&(d=.5),p>0&&p<1&&(l=Ct(t,e,r,i,n,a,s,o,p),x.push(l.x),g.push(l.y)),d>0&&d<1&&(l=Ct(t,e,r,i,n,a,s,o,d),x.push(l.x),g.push(l.y)),h=a-2*i+e-(o-2*a+i),f=e-i,p=(-(u=2*(i-e)-2*(a-i))+_.sqrt(u*u-4*h*f))/2/h,d=(-u-_.sqrt(u*u-4*h*f))/2/h,B(p)>"1e12"&&(p=.5),B(d)>"1e12"&&(d=.5),p>0&&p<1&&(l=Ct(t,e,r,i,n,a,s,o,p),x.push(l.x),g.push(l.y)),d>0&&d<1&&(l=Ct(t,e,r,i,n,a,s,o,d),x.push(l.x),g.push(l.y)),{min:{x:k[c](0,x),y:k[c](0,g)},max:{x:w[c](0,x),y:w[c](0,g)}}}),Tt=e._path2curve=ht(function(t,e){var r=!e&&ft(t);if(!e&&r.curve)return mt(r.curve);for(var i=_t(t),n=e&&_t(e),a={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},s={x:0,y:0,bx:0,by:0,X:0,Y:0,qx:null,qy:null},o=function(t,e,r){var i,n;if(!t)return["C",e.x,e.y,e.x,e.y,e.x,e.y];switch(!(t[0]in{T:1,Q:1})&&(e.qx=e.qy=null),t[0]){case"M":e.X=t[1],e.Y=t[2];break;case"A":t=["C"][f](Bt[c](0,[e.x,e.y][f](t.slice(1))));break;case"S":"C"==r||"S"==r?(i=2*e.x-e.bx,n=2*e.y-e.by):(i=e.x,n=e.y),t=["C",i,n][f](t.slice(1));break;case"T":"Q"==r||"T"==r?(e.qx=2*e.x-e.qx,e.qy=2*e.y-e.qy):(e.qx=e.x,e.qy=e.y),t=["C"][f](kt(e.x,e.y,e.qx,e.qy,t[1],t[2]));break;case"Q":e.qx=t[1],e.qy=t[2],t=["C"][f](kt(e.x,e.y,t[1],t[2],t[3],t[4]));break;case"L":t=["C"][f](wt(e.x,e.y,t[1],t[2]));break;case"H":t=["C"][f](wt(e.x,e.y,t[1],e.y));break;case"V":t=["C"][f](wt(e.x,e.y,e.x,t[1]));break;case"Z":t=["C"][f](wt(e.x,e.y,e.X,e.Y))}return t},l=function(t,e){if(t[e].length>7){t[e].shift();for(var r=t[e];r.length;)u[e]="A",n&&(p[e]="A"),t.splice(e++,0,["C"][f](r.splice(0,6)));t.splice(e,1),v=w(i.length,n&&n.length||0)}},h=function(t,e,r,a,s){t&&e&&"M"==t[s][0]&&"M"!=e[s][0]&&(e.splice(s,0,["M",a.x,a.y]),r.bx=0,r.by=0,r.x=t[s][1],r.y=t[s][2],v=w(i.length,n&&n.length||0))},u=[],p=[],d="",g="",x=0,v=w(i.length,n&&n.length||0);x<v;x++){i[x]&&(d=i[x][0]),"C"!=d&&(u[x]=d,x&&(g=u[x-1])),i[x]=o(i[x],a,g),"A"!=u[x]&&"C"==d&&(u[x]="C"),l(i,x),n&&(n[x]&&(d=n[x][0]),"C"!=d&&(p[x]=d,x&&(g=p[x-1])),n[x]=o(n[x],s,g),"A"!=p[x]&&"C"==d&&(p[x]="C"),l(n,x)),h(i,n,a,s,x),h(n,i,s,a,x);var y=i[x],m=n&&n[x],b=y.length,_=n&&m.length;a.x=y[b-2],a.y=y[b-1],a.bx=z(y[b-4])||a.x,a.by=z(y[b-3])||a.y,s.bx=n&&(z(m[_-4])||s.x),s.by=n&&(z(m[_-3])||s.y),s.x=n&&m[_-2],s.y=n&&m[_-1]}return n||(r.curve=mt(i)),n?[i,n]:i},null,mt),At=(e._parseDots=ht(function(t){for(var r=[],i=0,n=t.length;i<n;i++){var a={},s=t[i].match(/^([^:]*):?([\d\.]*)/);if(a.color=e.getRGB(s[1]),a.color.error)return null;a.opacity=a.color.opacity,a.color=a.color.hex,s[2]&&(a.offset=s[2]+"%"),r.push(a)}for(i=1,n=r.length-1;i<n;i++)if(!r[i].offset){for(var o=z(r[i-1].offset||0),l=0,h=i+1;h<n;h++)if(r[h].offset){l=r[h].offset;break}l||(l=100,h=n);for(var u=((l=z(l))-o)/(h-i+1);i<h;i++)o+=u,r[i].offset=o+"%"}return r}),e._tear=function(t,e){t==e.top&&(e.top=t.prev),t==e.bottom&&(e.bottom=t.next),t.next&&(t.next.prev=t.prev),t.prev&&(t.prev.next=t.next)}),Mt=(e._tofront=function(t,e){e.top!==t&&(At(t,e),t.next=null,t.prev=e.top,e.top.next=t,e.top=t)},e._toback=function(t,e){e.bottom!==t&&(At(t,e),t.next=e.bottom,t.prev=null,e.bottom.prev=t,e.bottom=t)},e._insertafter=function(t,e,r){At(t,r),e==r.top&&(r.top=t),e.next&&(e.next.prev=t),t.next=e.next,t.prev=e,e.next=t},e._insertbefore=function(t,e,r){At(t,r),e==r.bottom&&(r.bottom=t),e.prev&&(e.prev.next=t),t.prev=e.prev,e.prev=t,t.next=e},e.toMatrix=function(t,e){var r=yt(t),i={_:{transform:d},getBBox:function(){return r}};return Et(i,e),i.matrix}),Et=(e.transformPath=function(t,e){return Q(t,Mt(t,e))},e._extractTransform=function(t,r){if(null==r)return t._.transform;r=x(r).replace(/\.{3}|\u2026/g,t._.transform||d);var i,n,a=e.parseTransformString(r),s=0,o=1,l=1,h=t._,u=new Pt;if(h.transform=a||[],a)for(var c=0,f=a.length;c<f;c++){var p,g,v,y,m,b=a[c],_=b.length,w=x(b[0]).toLowerCase(),k=b[0]!=w,B=k?u.invert():0;"t"==w&&3==_?k?(p=B.x(0,0),g=B.y(0,0),v=B.x(b[1],b[2]),y=B.y(b[1],b[2]),u.translate(v-p,y-g)):u.translate(b[1],b[2]):"r"==w?2==_?(m=m||t.getBBox(1),u.rotate(b[1],m.x+m.width/2,m.y+m.height/2),s+=b[1]):4==_&&(k?(v=B.x(b[2],b[3]),y=B.y(b[2],b[3]),u.rotate(b[1],v,y)):u.rotate(b[1],b[2],b[3]),s+=b[1]):"s"==w?2==_||3==_?(m=m||t.getBBox(1),u.scale(b[1],b[_-1],m.x+m.width/2,m.y+m.height/2),o*=b[1],l*=b[_-1]):5==_&&(k?(v=B.x(b[3],b[4]),y=B.y(b[3],b[4]),u.scale(b[1],b[2],v,y)):u.scale(b[1],b[2],b[3],b[4]),o*=b[1],l*=b[2]):"m"==w&&7==_&&u.add(b[1],b[2],b[3],b[4],b[5],b[6]),h.dirtyT=1,t.matrix=u}t.matrix=u,h.sx=o,h.sy=l,h.deg=s,h.dx=i=u.e,h.dy=n=u.f,1==o&&1==l&&!s&&h.bbox?(h.bbox.x+=+i,h.bbox.y+=+n):h.dirtyT=1}),Nt=function(t){var e=t[0];switch(e.toLowerCase()){case"t":return[e,0,0];case"m":return[e,1,0,0,1,0,0];case"r":return 4==t.length?[e,0,t[2],t[3]]:[e,0];case"s":return 5==t.length?[e,1,1,t[3],t[4]]:3==t.length?[e,1,1]:[e,1]}},Lt=e._equaliseTransform=function(t,r){r=x(r).replace(/\.{3}|\u2026/g,t),t=e.parseTransformString(t)||[],r=e.parseTransformString(r)||[];for(var i,n,a,s,o=w(t.length,r.length),l=[],h=[],u=0;u<o;u++){if(a=t[u]||Nt(r[u]),s=r[u]||Nt(a),a[0]!=s[0]||"r"==a[0].toLowerCase()&&(a[2]!=s[2]||a[3]!=s[3])||"s"==a[0].toLowerCase()&&(a[3]!=s[3]||a[4]!=s[4]))return;for(l[u]=[],h[u]=[],i=0,n=w(a.length,s.length);i<n;i++)i in a&&(l[u][i]=a[i]),i in s&&(h[u][i]=s[i])}return{from:l,to:h}};function Pt(t,e,r,i,n,a){null!=t?(this.a=+t,this.b=+e,this.c=+r,this.d=+i,this.e=+n,this.f=+a):(this.a=1,this.b=0,this.c=0,this.d=1,this.e=0,this.f=0)}e._getContainer=function(t,r,i,n){var a;if(null!=(a=null!=n||e.is(t,"object")?t:l.doc.getElementById(t)))return a.tagName?null==r?{container:a,width:a.style.pixelWidth||a.offsetWidth,height:a.style.pixelHeight||a.offsetHeight}:{container:a,width:r,height:i}:{container:1,x:t,y:r,width:i,height:n}},e.pathToRelative=bt,e._engine={},e.path2curve=Tt,e.matrix=function(t,e,r,i,n,a){return new Pt(t,e,r,i,n,a)},function(t){function r(t){return t[0]*t[0]+t[1]*t[1]}function i(t){var e=_.sqrt(r(t));t[0]&&(t[0]/=e),t[1]&&(t[1]/=e)}t.add=function(t,e,r,i,n,a){var s,o,l,h,u=[[],[],[]],c=[[this.a,this.c,this.e],[this.b,this.d,this.f],[0,0,1]],f=[[t,r,n],[e,i,a],[0,0,1]];for(t&&t instanceof Pt&&(f=[[t.a,t.c,t.e],[t.b,t.d,t.f],[0,0,1]]),s=0;s<3;s++)for(o=0;o<3;o++){for(h=0,l=0;l<3;l++)h+=c[s][l]*f[l][o];u[s][o]=h}this.a=u[0][0],this.b=u[1][0],this.c=u[0][1],this.d=u[1][1],this.e=u[0][2],this.f=u[1][2]},t.invert=function(){var t=this,e=t.a*t.d-t.b*t.c;return new Pt(t.d/e,-t.b/e,-t.c/e,t.a/e,(t.c*t.f-t.d*t.e)/e,(t.b*t.e-t.a*t.f)/e)},t.clone=function(){return new Pt(this.a,this.b,this.c,this.d,this.e,this.f)},t.translate=function(t,e){this.add(1,0,0,1,t,e)},t.scale=function(t,e,r,i){null==e&&(e=t),(r||i)&&this.add(1,0,0,1,r,i),this.add(t,0,0,e,0,0),(r||i)&&this.add(1,0,0,1,-r,-i)},t.rotate=function(t,r,i){t=e.rad(t),r=r||0,i=i||0;var n=+_.cos(t).toFixed(9),a=+_.sin(t).toFixed(9);this.add(n,a,-a,n,r,i),this.add(1,0,0,1,-r,-i)},t.x=function(t,e){return t*this.a+e*this.c+this.e},t.y=function(t,e){return t*this.b+e*this.d+this.f},t.get=function(t){return+this[x.fromCharCode(97+t)].toFixed(4)},t.toString=function(){return e.svg?"matrix("+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)].join()+")":[this.get(0),this.get(2),this.get(1),this.get(3),0,0].join()},t.toFilter=function(){return"progid:DXImageTransform.Microsoft.Matrix(M11="+this.get(0)+", M12="+this.get(2)+", M21="+this.get(1)+", M22="+this.get(3)+", Dx="+this.get(4)+", Dy="+this.get(5)+", sizingmethod='auto expand')"},t.offset=function(){return[this.e.toFixed(4),this.f.toFixed(4)]},t.split=function(){var t={};t.dx=this.e,t.dy=this.f;var n=[[this.a,this.c],[this.b,this.d]];t.scalex=_.sqrt(r(n[0])),i(n[0]),t.shear=n[0][0]*n[1][0]+n[0][1]*n[1][1],n[1]=[n[1][0]-n[0][0]*t.shear,n[1][1]-n[0][1]*t.shear],t.scaley=_.sqrt(r(n[1])),i(n[1]),t.shear/=t.scaley;var a=-n[0][1],s=n[1][1];return s<0?(t.rotate=e.deg(_.acos(s)),a<0&&(t.rotate=360-t.rotate)):t.rotate=e.deg(_.asin(a)),t.isSimple=!(+t.shear.toFixed(9)||t.scalex.toFixed(9)!=t.scaley.toFixed(9)&&t.rotate),t.isSuperSimple=!+t.shear.toFixed(9)&&t.scalex.toFixed(9)==t.scaley.toFixed(9)&&!t.rotate,t.noRotation=!+t.shear.toFixed(9)&&!t.rotate,t},t.toTransformString=function(t){var e=t||this[v]();return e.isSimple?(e.scalex=+e.scalex.toFixed(4),e.scaley=+e.scaley.toFixed(4),e.rotate=+e.rotate.toFixed(4),(e.dx||e.dy?"t"+[e.dx,e.dy]:d)+(1!=e.scalex||1!=e.scaley?"s"+[e.scalex,e.scaley,0,0]:d)+(e.rotate?"r"+[e.rotate,0,0]:d)):"m"+[this.get(0),this.get(1),this.get(2),this.get(3),this.get(4),this.get(5)]}}(Pt.prototype);for(var zt=function(){this.returnValue=!1},Ft=function(){return this.originalEvent.preventDefault()},Rt=function(){this.cancelBubble=!0},jt=function(){return this.originalEvent.stopPropagation()},It=function(t){var e=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,r=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft;return{x:t.clientX+r,y:t.clientY+e}},Dt=l.doc.addEventListener?function(t,e,r,i){var n=function(t){var e=It(t);return r.call(i,t,e.x,e.y)};if(t.addEventListener(e,n,!1),p&&m[e]){var a=function(e){for(var n=It(e),a=e,s=0,o=e.targetTouches&&e.targetTouches.length;s<o;s++)if(e.targetTouches[s].target==t){(e=e.targetTouches[s]).originalEvent=a,e.preventDefault=Ft,e.stopPropagation=jt;break}return r.call(i,e,n.x,n.y)};t.addEventListener(m[e],a,!1)}return function(){return t.removeEventListener(e,n,!1),p&&m[e]&&t.removeEventListener(m[e],a,!1),!0}}:l.doc.attachEvent?function(t,e,r,i){var n=function(t){t=t||l.win.event;var e=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,n=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft,a=t.clientX+n,s=t.clientY+e;return t.preventDefault=t.preventDefault||zt,t.stopPropagation=t.stopPropagation||Rt,r.call(i,t,a,s)};return t.attachEvent("on"+e,n),function(){return t.detachEvent("on"+e,n),!0}}:void 0,qt=[],Ot=function(e){for(var r,i=e.clientX,n=e.clientY,a=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,s=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft,o=qt.length;o--;){if(r=qt[o],p&&e.touches){for(var h,u=e.touches.length;u--;)if((h=e.touches[u]).identifier==r.el._drag.id){i=h.clientX,n=h.clientY,(e.originalEvent?e.originalEvent:e).preventDefault();break}}else e.preventDefault();var c,f=r.el.node,d=f.nextSibling,g=f.parentNode,x=f.style.display;l.win.opera&&g.removeChild(f),f.style.display="none",c=r.el.paper.getElementByPoint(i,n),f.style.display=x,l.win.opera&&(d?g.insertBefore(f,d):g.appendChild(f)),c&&t("raphael.drag.over."+r.el.id,r.el,c),i+=s,n+=a,t("raphael.drag.move."+r.el.id,r.move_scope||r.el,i-r.el._drag.x,n-r.el._drag.y,i,n,e)}},Vt=function(r){e.unmousemove(Ot).unmouseup(Vt);for(var i,n=qt.length;n--;)(i=qt[n]).el._drag={},t("raphael.drag.end."+i.el.id,i.end_scope||i.start_scope||i.move_scope||i.el,r);qt=[]},Wt=e.el={},Yt=y.length;Yt--;)!function(t){e[t]=Wt[t]=function(r,i){return e.is(r,"function")&&(this.events=this.events||[],this.events.push({name:t,f:r,unbind:Dt(this.shape||this.node||l.doc,t,r,i||this)})),this},e["un"+t]=Wt["un"+t]=function(r){for(var i=this.events||[],n=i.length;n--;)i[n].name!=t||!e.is(r,"undefined")&&i[n].f!=r||(i[n].unbind(),i.splice(n,1),!i.length&&delete this.events);return this}}(y[Yt]);Wt.data=function(r,i){var n=G[this.id]=G[this.id]||{};if(0==arguments.length)return n;if(1==arguments.length){if(e.is(r,"object")){for(var a in r)r[o](a)&&this.data(a,r[a]);return this}return t("raphael.data.get."+this.id,this,n[r],r),n[r]}return n[r]=i,t("raphael.data.set."+this.id,this,i,r),this},Wt.removeData=function(t){return null==t?delete G[this.id]:G[this.id]&&delete G[this.id][t],this},Wt.getData=function(){return tt(G[this.id]||{})},Wt.hover=function(t,e,r,i){return this.mouseover(t,r).mouseout(e,i||r)},Wt.unhover=function(t,e){return this.unmouseover(t).unmouseout(e)};var Gt=[];Wt.drag=function(r,i,n,a,s,o){function h(h){(h.originalEvent||h).preventDefault();var u=h.clientX,c=h.clientY,f=l.doc.documentElement.scrollTop||l.doc.body.scrollTop,d=l.doc.documentElement.scrollLeft||l.doc.body.scrollLeft;if(this._drag.id=h.identifier,p&&h.touches)for(var g,x=h.touches.length;x--;)if(g=h.touches[x],this._drag.id=g.identifier,g.identifier==this._drag.id){u=g.clientX,c=g.clientY;break}this._drag.x=u+d,this._drag.y=c+f,!qt.length&&e.mousemove(Ot).mouseup(Vt),qt.push({el:this,move_scope:a,start_scope:s,end_scope:o}),i&&t.on("raphael.drag.start."+this.id,i),r&&t.on("raphael.drag.move."+this.id,r),n&&t.on("raphael.drag.end."+this.id,n),t("raphael.drag.start."+this.id,s||a||this,this._drag.x,this._drag.y,h)}return this._drag={},Gt.push({el:this,start:h}),this.mousedown(h),this},Wt.onDragOver=function(e){e?t.on("raphael.drag.over."+this.id,e):t.unbind("raphael.drag.over."+this.id)},Wt.undrag=function(){for(var r=Gt.length;r--;)Gt[r].el==this&&(this.unmousedown(Gt[r].start),Gt.splice(r,1),t.unbind("raphael.drag.*."+this.id));!Gt.length&&e.unmousemove(Ot).unmouseup(Vt),qt=[]},i.circle=function(t,r,i){var n=e._engine.circle(this,t||0,r||0,i||0);return this.__set__&&this.__set__.push(n),n},i.rect=function(t,r,i,n,a){var s=e._engine.rect(this,t||0,r||0,i||0,n||0,a||0);return this.__set__&&this.__set__.push(s),s},i.ellipse=function(t,r,i,n){var a=e._engine.ellipse(this,t||0,r||0,i||0,n||0);return this.__set__&&this.__set__.push(a),a},i.path=function(t){t&&!e.is(t,"string")&&!e.is(t[0],A)&&(t+=d);var r=e._engine.path(e.format[c](e,arguments),this);return this.__set__&&this.__set__.push(r),r},i.image=function(t,r,i,n,a){var s=e._engine.image(this,t||"about:blank",r||0,i||0,n||0,a||0);return this.__set__&&this.__set__.push(s),s},i.text=function(t,r,i){var n=e._engine.text(this,t||0,r||0,x(i));return this.__set__&&this.__set__.push(n),n},i.set=function(t){!e.is(t,"array")&&(t=Array.prototype.splice.call(arguments,0,arguments.length));var r=new ce(t);return this.__set__&&this.__set__.push(r),r.paper=this,r.type="set",r},i.setStart=function(t){this.__set__=t||this.set()},i.setFinish=function(t){var e=this.__set__;return delete this.__set__,e},i.getSize=function(){var t=this.canvas.parentNode;return{width:t.offsetWidth,height:t.offsetHeight}},i.setSize=function(t,r){return e._engine.setSize.call(this,t,r)},i.setViewBox=function(t,r,i,n,a){return e._engine.setViewBox.call(this,t,r,i,n,a)},i.top=i.bottom=null,i.raphael=e;function Ht(){return this.x+g+this.y+g+this.width+" × "+this.height}i.getElementByPoint=function(t,e){var r,i,n,a,s,o,h,u=this.canvas,c=l.doc.elementFromPoint(t,e);if(l.win.opera&&"svg"==c.tagName){var f=(i=(r=u).getBoundingClientRect(),n=r.ownerDocument,a=n.body,s=n.documentElement,o=s.clientTop||a.clientTop||0,h=s.clientLeft||a.clientLeft||0,{y:i.top+(l.win.pageYOffset||s.scrollTop||a.scrollTop)-o,x:i.left+(l.win.pageXOffset||s.scrollLeft||a.scrollLeft)-h}),p=u.createSVGRect();p.x=t-f.x,p.y=e-f.y,p.width=p.height=1;var d=u.getIntersectionList(p,null);d.length&&(c=d[d.length-1])}if(!c)return null;for(;c.parentNode&&c!=u.parentNode&&!c.raphael;)c=c.parentNode;return c==this.canvas.parentNode&&(c=u),c=c&&c.raphael?this.getById(c.raphaelid):null},i.getElementsByBBox=function(t){var r=this.set();return this.forEach(function(i){e.isBBoxIntersect(i.getBBox(),t)&&r.push(i)}),r},i.getById=function(t){for(var e=this.bottom;e;){if(e.id==t)return e;e=e.next}return null},i.forEach=function(t,e){for(var r=this.bottom;r;){if(!1===t.call(e,r))return this;r=r.next}return this},i.getElementsByPoint=function(t,e){var r=this.set();return this.forEach(function(i){i.isPointInside(t,e)&&r.push(i)}),r},Wt.isPointInside=function(t,r){var i=this.realPath=Z[this.type](this);return this.attr("transform")&&this.attr("transform").length&&(i=e.transformPath(i,this.attr("transform"))),e.isPointInsidePath(i,t,r)},Wt.getBBox=function(t){if(this.removed)return{};var e=this._;return t?(!e.dirty&&e.bboxwt||(this.realPath=Z[this.type](this),e.bboxwt=yt(this.realPath),e.bboxwt.toString=Ht,e.dirty=0),e.bboxwt):((e.dirty||e.dirtyT||!e.bbox)&&(!e.dirty&&this.realPath||(e.bboxwt=0,this.realPath=Z[this.type](this)),e.bbox=yt(Q(this.realPath,this.matrix)),e.bbox.toString=Ht,e.dirty=e.dirtyT=0),e.bbox)},Wt.clone=function(){if(this.removed)return null;var t=this.paper[this.type]().attr(this.attr());return this.__set__&&this.__set__.push(t),t},Wt.glow=function(t){if("text"==this.type)return null;var e={width:((t=t||{}).width||10)+(+this.attr("stroke-width")||1),fill:t.fill||!1,opacity:null==t.opacity?.5:t.opacity,offsetx:t.offsetx||0,offsety:t.offsety||0,color:t.color||"#000"},r=e.width/2,i=this.paper,n=i.set(),a=this.realPath||Z[this.type](this);a=this.matrix?Q(a,this.matrix):a;for(var s=1;s<r+1;s++)n.push(i.path(a).attr({stroke:e.color,fill:e.fill?e.color:"none","stroke-linejoin":"round","stroke-linecap":"round","stroke-width":+(e.width/r*s).toFixed(3),opacity:+(e.opacity/r).toFixed(3)}));return n.insertBefore(this).translate(e.offsetx,e.offsety)};var Xt=function(t,r,i,n,a,s,o,l,h){return null==h?dt(t,r,i,n,a,s,o,l):e.findDotsAtSegment(t,r,i,n,a,s,o,l,function(t,e,r,i,n,a,s,o,l){if(!(l<0||dt(t,e,r,i,n,a,s,o)<l)){var h,u=.5,c=1-u;for(h=dt(t,e,r,i,n,a,s,o,c);B(h-l)>.01;)h=dt(t,e,r,i,n,a,s,o,c+=(h<l?1:-1)*(u/=2));return c}}(t,r,i,n,a,s,o,l,h))},Ut=function(t,r){return function(i,n,a){for(var s,o,l,h,u,c="",f={},p=0,d=0,g=(i=Tt(i)).length;d<g;d++){if("M"==(l=i[d])[0])s=+l[1],o=+l[2];else{if(p+(h=Xt(s,o,l[1],l[2],l[3],l[4],l[5],l[6]))>n){if(r&&!f.start){if(c+=["C"+(u=Xt(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p)).start.x,u.start.y,u.m.x,u.m.y,u.x,u.y],a)return c;f.start=c,c=["M"+u.x,u.y+"C"+u.n.x,u.n.y,u.end.x,u.end.y,l[5],l[6]].join(),p+=h,s=+l[5],o=+l[6];continue}if(!t&&!r)return{x:(u=Xt(s,o,l[1],l[2],l[3],l[4],l[5],l[6],n-p)).x,y:u.y,alpha:u.alpha}}p+=h,s=+l[5],o=+l[6]}c+=l.shift()+l}return f.end=c,(u=t?p:r?f:e.findDotsAtSegment(s,o,l[0],l[1],l[2],l[3],l[4],l[5],1)).alpha&&(u={x:u.x,y:u.y,alpha:u.alpha}),u}},$t=Ut(1),Zt=Ut(),Qt=Ut(0,1);e.getTotalLength=$t,e.getPointAtLength=Zt,e.getSubpath=function(t,e,r){if(this.getTotalLength(t)-r<1e-6)return Qt(t,e).end;var i=Qt(t,r,1);return e?Qt(i,e).end:i},Wt.getTotalLength=function(){var t=this.getPath();if(t)return this.node.getTotalLength?this.node.getTotalLength():$t(t)},Wt.getPointAtLength=function(t){var e=this.getPath();if(e)return Zt(e,t)},Wt.getPath=function(){var t,r=e._getPath[this.type];if("text"!=this.type&&"set"!=this.type)return r&&(t=r(this)),t},Wt.getSubpath=function(t,r){var i=this.getPath();if(i)return e.getSubpath(i,t,r)};var Jt=e.easing_formulas={linear:function(t){return t},"<":function(t){return C(t,1.7)},">":function(t){return C(t,.48)},"<>":function(t){var e=.48-t/1.04,r=_.sqrt(.1734+e*e),i=r-e,n=-r-e,a=C(B(i),1/3)*(i<0?-1:1)+C(B(n),1/3)*(n<0?-1:1)+.5;return 3*(1-a)*a*a+a*a*a},backIn:function(t){var e=1.70158;return t*t*((e+1)*t-e)},backOut:function(t){var e=1.70158;return(t-=1)*t*((e+1)*t+e)+1},elastic:function(t){return t==!!t?t:C(2,-10*t)*_.sin(2*S*(t-.075)/.3)+1},bounce:function(t){var e=7.5625,r=2.75;return t<1/r?e*t*t:t<2/r?e*(t-=1.5/r)*t+.75:t<2.5/r?e*(t-=2.25/r)*t+.9375:e*(t-=2.625/r)*t+.984375}};Jt.easeIn=Jt["ease-in"]=Jt["<"],Jt.easeOut=Jt["ease-out"]=Jt[">"],Jt.easeInOut=Jt["ease-in-out"]=Jt["<>"],Jt["back-in"]=Jt.backIn,Jt["back-out"]=Jt.backOut;var Kt=[],te=window.requestAnimationFrame||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||window.oRequestAnimationFrame||window.msRequestAnimationFrame||function(t){setTimeout(t,16)},ee=function(){for(var r=+new Date,i=0;i<Kt.length;i++){var n=Kt[i];if(!n.el.removed&&!n.paused){var a,s,l=r-n.start,h=n.ms,u=n.easing,c=n.from,p=n.diff,d=n.to,x=(n.t,n.el),v={},y={};if(n.initstatus?(l=(n.initstatus*n.anim.top-n.prev)/(n.percent-n.prev)*h,n.status=n.initstatus,delete n.initstatus,n.stop&&Kt.splice(i--,1)):n.status=(n.prev+(n.percent-n.prev)*(l/h))/n.anim.top,!(l<0))if(l<h){var m=u(l/h);for(var b in c)if(c[o](b)){switch(I[b]){case T:a=+c[b]+m*h*p[b];break;case"colour":a="rgb("+[re(P(c[b].r+m*h*p[b].r)),re(P(c[b].g+m*h*p[b].g)),re(P(c[b].b+m*h*p[b].b))].join(",")+")";break;case"path":a=[];for(var _=0,w=c[b].length;_<w;_++){a[_]=[c[b][_][0]];for(var k=1,B=c[b][_].length;k<B;k++)a[_][k]=+c[b][_][k]+m*h*p[b][_][k];a[_]=a[_].join(g)}a=a.join(g);break;case"transform":if(p[b].real)for(a=[],_=0,w=c[b].length;_<w;_++)for(a[_]=[c[b][_][0]],k=1,B=c[b][_].length;k<B;k++)a[_][k]=c[b][_][k]+m*h*p[b][_][k];else{var C=function(t){return+c[b][t]+m*h*p[b][t]};a=[["m",C(0),C(1),C(2),C(3),C(4),C(5)]]}break;case"csv":if("clip-rect"==b)for(a=[],_=4;_--;)a[_]=+c[b][_]+m*h*p[b][_];break;default:var S=[][f](c[b]);for(a=[],_=x.paper.customAttributes[b].length;_--;)a[_]=+S[_]+m*h*p[b][_]}v[b]=a}x.attr(v),function(e,r,i){setTimeout(function(){t("raphael.anim.frame."+e,r,i)})}(x.id,x,n.anim)}else{if(function(r,i,n){setTimeout(function(){t("raphael.anim.frame."+i.id,i,n),t("raphael.anim.finish."+i.id,i,n),e.is(r,"function")&&r.call(i)})}(n.callback,x,n.anim),x.attr(d),Kt.splice(i--,1),n.repeat>1&&!n.next){for(s in d)d[o](s)&&(y[s]=n.totalOrigin[s]);n.el.attr(y),ae(n.anim,n.el,n.anim.percents[0],null,n.totalOrigin,n.repeat-1)}n.next&&!n.stop&&ae(n.anim,n.el,n.next,null,n.totalOrigin,n.repeat)}}}Kt.length&&te(ee)},re=function(t){return t>255?255:t<0?0:t};function ie(t,e,r,i,n,a){var s=3*e,o=3*(i-e)-s,l=1-s-o,h=3*r,u=3*(n-r)-h,c=1-h-u;function f(t){return((l*t+o)*t+s)*t}return function(t,e){var r=function(t,e){var r,i,n,a,h,u;for(n=t,u=0;u<8;u++){if(a=f(n)-t,B(a)<e)return n;if(B(h=(3*l*n+2*o)*n+s)<1e-6)break;n-=a/h}if(i=1,(n=t)<(r=0))return r;if(n>i)return i;for(;r<i;){if(a=f(n),B(a-t)<e)return n;t>a?r=n:i=n,n=(i-r)/2+r}return n}(t,e);return((c*r+u)*r+h)*r}(t,1/(200*a))}function ne(t,e){var r=[],i={};if(this.ms=e,this.times=1,t){for(var n in t)t[o](n)&&(i[z(n)]=t[n],r.push(z(n)));r.sort(H)}this.anim=i,this.top=r[r.length-1],this.percents=r}function ae(r,i,a,s,l,h){a=z(a);var u,c,p,d,g,y,m=r.ms,b={},_={},w={};if(s)for(B=0,C=Kt.length;B<C;B++){var k=Kt[B];if(k.el.id==i.id&&k.anim==r){k.percent!=a?(Kt.splice(B,1),p=1):c=k,i.attr(k.totalOrigin);break}}else s=+_;for(var B=0,C=r.percents.length;B<C;B++){if(r.percents[B]==a||r.percents[B]>s*r.top){a=r.percents[B],g=r.percents[B-1]||0,m=m/r.top*(a-g),d=r.percents[B+1],u=r.anim[a];break}s&&i.attr(r.anim[r.percents[B]])}if(u){if(c)c.initstatus=s,c.start=new Date-c.ms*s;else{for(var S in u)if(u[o](S)&&(I[o](S)||i.paper.customAttributes[o](S)))switch(b[S]=i.attr(S),null==b[S]&&(b[S]=j[S]),_[S]=u[S],I[S]){case T:w[S]=(_[S]-b[S])/m;break;case"colour":b[S]=e.getRGB(b[S]);var A=e.getRGB(_[S]);w[S]={r:(A.r-b[S].r)/m,g:(A.g-b[S].g)/m,b:(A.b-b[S].b)/m};break;case"path":var M=Tt(b[S],_[S]),E=M[1];for(b[S]=M[0],w[S]=[],B=0,C=b[S].length;B<C;B++){w[S][B]=[0];for(var N=1,P=b[S][B].length;N<P;N++)w[S][B][N]=(E[B][N]-b[S][B][N])/m}break;case"transform":var F=i._,R=Lt(F[S],_[S]);if(R)for(b[S]=R.from,_[S]=R.to,w[S]=[],w[S].real=!0,B=0,C=b[S].length;B<C;B++)for(w[S][B]=[b[S][B][0]],N=1,P=b[S][B].length;N<P;N++)w[S][B][N]=(_[S][B][N]-b[S][B][N])/m;else{var D=i.matrix||new Pt,q={_:{transform:F.transform},getBBox:function(){return i.getBBox(1)}};b[S]=[D.a,D.b,D.c,D.d,D.e,D.f],Et(q,_[S]),_[S]=q._.transform,w[S]=[(q.matrix.a-D.a)/m,(q.matrix.b-D.b)/m,(q.matrix.c-D.c)/m,(q.matrix.d-D.d)/m,(q.matrix.e-D.e)/m,(q.matrix.f-D.f)/m]}break;case"csv":var O=x(u[S])[v](n),V=x(b[S])[v](n);if("clip-rect"==S)for(b[S]=V,w[S]=[],B=V.length;B--;)w[S][B]=(O[B]-b[S][B])/m;_[S]=O;break;default:for(O=[][f](u[S]),V=[][f](b[S]),w[S]=[],B=i.paper.customAttributes[S].length;B--;)w[S][B]=((O[B]||0)-(V[B]||0))/m}var W=u.easing,Y=e.easing_formulas[W];if(!Y)if((Y=x(W).match(L))&&5==Y.length){var G=Y;Y=function(t){return ie(t,+G[1],+G[2],+G[3],+G[4],m)}}else Y=X;if(k={anim:r,percent:a,timestamp:y=u.start||r.start||+new Date,start:y+(r.del||0),status:0,initstatus:s||0,stop:!1,ms:m,easing:Y,from:b,diff:w,to:_,el:i,callback:u.callback,prev:g,next:d,repeat:h||r.times,origin:i.attr(),totalOrigin:l},Kt.push(k),s&&!c&&!p&&(k.stop=!0,k.start=new Date-m*s,1==Kt.length))return ee();p&&(k.start=new Date-k.ms*s),1==Kt.length&&te(ee)}t("raphael.anim.start."+i.id,i,r)}}function se(t){for(var e=0;e<Kt.length;e++)Kt[e].el.paper==t&&Kt.splice(e--,1)}Wt.animateWith=function(t,r,i,n,a,s){if(this.removed)return s&&s.call(this),this;var o=i instanceof ne?i:e.animation(i,n,a,s);ae(o,this,o.percents[0],null,this.attr());for(var l=0,h=Kt.length;l<h;l++)if(Kt[l].anim==r&&Kt[l].el==t){Kt[h-1].start=Kt[l].start;break}return this},Wt.onAnimation=function(e){return e?t.on("raphael.anim.frame."+this.id,e):t.unbind("raphael.anim.frame."+this.id),this},ne.prototype.delay=function(t){var e=new ne(this.anim,this.ms);return e.times=this.times,e.del=+t||0,e},ne.prototype.repeat=function(t){var e=new ne(this.anim,this.ms);return e.del=this.del,e.times=_.floor(w(t,0))||1,e},e.animation=function(t,r,i,n){if(t instanceof ne)return t;!e.is(i,"function")&&i||(n=n||i||null,i=null),t=Object(t),r=+r||0;var a,s,l={};for(s in t)t[o](s)&&z(s)!=s&&z(s)+"%"!=s&&(a=!0,l[s]=t[s]);if(a)return i&&(l.easing=i),n&&(l.callback=n),new ne({100:l},r);if(n){var h=0;for(var u in t){var c=F(u);t[o](u)&&c>h&&(h=c)}!t[h+="%"].callback&&(t[h].callback=n)}return new ne(t,r)},Wt.animate=function(t,r,i,n){if(this.removed)return n&&n.call(this),this;var a=t instanceof ne?t:e.animation(t,r,i,n);return ae(a,this,a.percents[0],null,this.attr()),this},Wt.setTime=function(t,e){return t&&null!=e&&this.status(t,k(e,t.ms)/t.ms),this},Wt.status=function(t,e){var r,i,n=[],a=0;if(null!=e)return ae(t,this,-1,k(e,1)),this;for(r=Kt.length;a<r;a++)if((i=Kt[a]).el.id==this.id&&(!t||i.anim==t)){if(t)return i.status;n.push({anim:i.anim,status:i.status})}return t?0:n},Wt.pause=function(e){for(var r=0;r<Kt.length;r++)Kt[r].el.id!=this.id||e&&Kt[r].anim!=e||!1!==t("raphael.anim.pause."+this.id,this,Kt[r].anim)&&(Kt[r].paused=!0);return this},Wt.resume=function(e){for(var r=0;r<Kt.length;r++)if(Kt[r].el.id==this.id&&(!e||Kt[r].anim==e)){var i=Kt[r];!1!==t("raphael.anim.resume."+this.id,this,i.anim)&&(delete i.paused,this.status(i.anim,i.status))}return this},Wt.stop=function(e){for(var r=0;r<Kt.length;r++)Kt[r].el.id!=this.id||e&&Kt[r].anim!=e||!1!==t("raphael.anim.stop."+this.id,this,Kt[r].anim)&&Kt.splice(r--,1);return this},t.on("raphael.remove",se),t.on("raphael.clear",se),Wt.toString=function(){return"Raphaël’s object"};var oe,le,he,ue,ce=function(t){if(this.items=[],this.length=0,this.type="set",t)for(var e=0,r=t.length;e<r;e++)!t[e]||t[e].constructor!=Wt.constructor&&t[e].constructor!=ce||(this[this.items.length]=this.items[this.items.length]=t[e],this.length++)},fe=ce.prototype;for(var pe in fe.push=function(){for(var t,e,r=0,i=arguments.length;r<i;r++)!(t=arguments[r])||t.constructor!=Wt.constructor&&t.constructor!=ce||(this[e=this.items.length]=this.items[e]=t,this.length++);return this},fe.pop=function(){return this.length&&delete this[this.length--],this.items.pop()},fe.forEach=function(t,e){for(var r=0,i=this.items.length;r<i;r++)if(!1===t.call(e,this.items[r],r))return this;return this},Wt)Wt[o](pe)&&(fe[pe]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t][c](r,e)})}}(pe));return fe.attr=function(t,r){if(t&&e.is(t,A)&&e.is(t[0],"object"))for(var i=0,n=t.length;i<n;i++)this.items[i].attr(t[i]);else for(var a=0,s=this.items.length;a<s;a++)this.items[a].attr(t,r);return this},fe.clear=function(){for(;this.length;)this.pop()},fe.splice=function(t,e,r){t=t<0?w(this.length+t,0):t,e=w(0,k(this.length-t,e));var i,n=[],a=[],s=[];for(i=2;i<arguments.length;i++)s.push(arguments[i]);for(i=0;i<e;i++)a.push(this[t+i]);for(;i<this.length-t;i++)n.push(this[t+i]);var o=s.length;for(i=0;i<o+n.length;i++)this.items[t+i]=this[t+i]=i<o?s[i]:n[i-o];for(i=this.items.length=this.length-=e-o;this[i];)delete this[i++];return new ce(a)},fe.exclude=function(t){for(var e=0,r=this.length;e<r;e++)if(this[e]==t)return this.splice(e,1),!0},fe.animate=function(t,r,i,n){(e.is(i,"function")||!i)&&(n=i||null);var a,s,o=this.items.length,l=o,h=this;if(!o)return this;n&&(s=function(){!--o&&n.call(h)}),i=e.is(i,"string")?i:s;var u=e.animation(t,r,i,s);for(a=this.items[--l].animate(u);l--;)this.items[l]&&!this.items[l].removed&&this.items[l].animateWith(a,u,u),this.items[l]&&!this.items[l].removed||o--;return this},fe.insertAfter=function(t){for(var e=this.items.length;e--;)this.items[e].insertAfter(t);return this},fe.getBBox=function(){for(var t=[],e=[],r=[],i=[],n=this.items.length;n--;)if(!this.items[n].removed){var a=this.items[n].getBBox();t.push(a.x),e.push(a.y),r.push(a.x+a.width),i.push(a.y+a.height)}return{x:t=k[c](0,t),y:e=k[c](0,e),x2:r=w[c](0,r),y2:i=w[c](0,i),width:r-t,height:i-e}},fe.clone=function(t){t=this.paper.set();for(var e=0,r=this.items.length;e<r;e++)t.push(this.items[e].clone());return t},fe.toString=function(){return"Raphaël‘s set"},fe.glow=function(t){var e=this.paper.set();return this.forEach(function(r,i){var n=r.glow(t);null!=n&&n.forEach(function(t,r){e.push(t)})}),e},fe.isPointInside=function(t,e){var r=!1;return this.forEach(function(i){if(i.isPointInside(t,e))return r=!0,!1}),r},e.registerFont=function(t){if(!t.face)return t;this.fonts=this.fonts||{};var e={w:t.w,face:{},glyphs:{}},r=t.face["font-family"];for(var i in t.face)t.face[o](i)&&(e.face[i]=t.face[i]);if(this.fonts[r]?this.fonts[r].push(e):this.fonts[r]=[e],!t.svg)for(var n in e.face["units-per-em"]=F(t.face["units-per-em"],10),t.glyphs)if(t.glyphs[o](n)){var a=t.glyphs[n];if(e.glyphs[n]={w:a.w,k:{},d:a.d&&"M"+a.d.replace(/[mlcxtrv]/g,function(t){return{l:"L",c:"C",x:"z",t:"m",r:"l",v:"c"}[t]||"M"})+"z"},a.k)for(var s in a.k)a[o](s)&&(e.glyphs[n].k[s]=a.k[s])}return t},i.getFont=function(t,r,i,n){if(n=n||"normal",i=i||"normal",r=+r||{normal:400,bold:700,lighter:300,bolder:800}[r]||400,e.fonts){var a,s=e.fonts[t];if(!s){var l=new RegExp("(^|\\s)"+t.replace(/[^\w\d\s+!~.:_-]/g,d)+"(\\s|$)","i");for(var h in e.fonts)if(e.fonts[o](h)&&l.test(h)){s=e.fonts[h];break}}if(s)for(var u=0,c=s.length;u<c&&((a=s[u]).face["font-weight"]!=r||a.face["font-style"]!=i&&a.face["font-style"]||a.face["font-stretch"]!=n);u++);return a}},i.print=function(t,r,i,a,s,o,l,h){o=o||"middle",l=w(k(l||0,1),-1),h=w(k(h||1,3),1);var u,c=x(i)[v](d),f=0,p=0,g=d;if(e.is(a,"string")&&(a=this.getFont(a)),a){u=(s||16)/a.face["units-per-em"];for(var y=a.face.bbox[v](n),m=+y[0],b=y[3]-y[1],_=0,B=+y[1]+("baseline"==o?b+ +a.face.descent:b/2),C=0,S=c.length;C<S;C++){if("\n"==c[C])f=0,A=0,p=0,_+=b*h;else{var T=p&&a.glyphs[c[C-1]]||{},A=a.glyphs[c[C]];f+=p?(T.w||a.w)+(T.k&&T.k[c[C]]||0)+a.w*l:0,p=1}A&&A.d&&(g+=e.transformPath(A.d,["t",f*u,_*u,"s",u,u,m,B,"t",(t-m)/u,(r-B)/u]))}}return this.path(g).attr({fill:"#000",stroke:"none"})},i.add=function(t){if(e.is(t,"array"))for(var r,i=this.set(),n=0,s=t.length;n<s;n++)r=t[n]||{},a[o](r.type)&&i.push(this[r.type]().attr(r));return i},e.format=function(t,r){var i=e.is(r,A)?[0][f](r):arguments;return t&&e.is(t,"string")&&i.length-1&&(t=t.replace(s,function(t,e){return null==i[++e]?d:i[e]})),t||d},e.fullfill=(oe=/\{([^\}]+)\}/g,le=/(?:(?:^|\.)(.+?)(?=\[|\.|$|\()|\[('|")(.+?)\2\])(\(\))?/g,function(t,e){return String(t).replace(oe,function(t,r){return function(t,e,r){var i=r;return e.replace(le,function(t,e,r,n,a){e=e||n,i&&(e in i&&(i=i[e]),"function"==typeof i&&a&&(i=i()))}),i=(null==i||i==r?t:i)+""}(t,r,e)})}),e.ninja=function(){if(h.was)l.win.Raphael=h.is;else{window.Raphael=void 0;try{delete window.Raphael}catch(t){}}return e},e.st=fe,t.on("raphael.DOMload",function(){r=!0}),null==(he=document).readyState&&he.addEventListener&&(he.addEventListener("DOMContentLoaded",ue=function(){he.removeEventListener("DOMContentLoaded",ue,!1),he.readyState="complete"},!1),he.readyState="loading"),function t(){/in/.test(he.readyState)?setTimeout(t,9):e.eve("raphael.DOMload")}(),e}.apply(e,i))||(t.exports=n)},function(t,e,r){var i,n;i=[r(0),r(3),r(4)],void 0===(n=function(t){return t}.apply(e,i))||(t.exports=n)},function(t,e,r){var i,n,a,s,o,l,h,u,c,f,p,d,g,x;s="hasOwnProperty",o=/[\.\/]/,l=/\s*,\s*/,h=function(t,e){return t-e},u={n:{}},c=function(){for(var t=0,e=this.length;t<e;t++)if(void 0!==this[t])return this[t]},f=function(){for(var t=this.length;--t;)if(void 0!==this[t])return this[t]},p=Object.prototype.toString,d=String,g=Array.isArray||function(t){return t instanceof Array||"[object Array]"==p.call(t)},(x=function(t,e){var r,i=a,s=Array.prototype.slice.call(arguments,2),o=x.listeners(t),l=0,u=[],p={},d=[],g=n;d.firstDefined=c,d.lastDefined=f,n=t,a=0;for(var v=0,y=o.length;v<y;v++)"zIndex"in o[v]&&(u.push(o[v].zIndex),o[v].zIndex<0&&(p[o[v].zIndex]=o[v]));for(u.sort(h);u[l]<0;)if(r=p[u[l++]],d.push(r.apply(e,s)),a)return a=i,d;for(v=0;v<y;v++)if("zIndex"in(r=o[v]))if(r.zIndex==u[l]){if(d.push(r.apply(e,s)),a)break;do{if((r=p[u[++l]])&&d.push(r.apply(e,s)),a)break}while(r)}else p[r.zIndex]=r;else if(d.push(r.apply(e,s)),a)break;return a=i,n=g,d})._events=u,x.listeners=function(t){var e,r,i,n,a,s,l,h,c=g(t)?t:t.split(o),f=u,p=[f],d=[];for(n=0,a=c.length;n<a;n++){for(h=[],s=0,l=p.length;s<l;s++)for(r=[(f=p[s].n)[c[n]],f["*"]],i=2;i--;)(e=r[i])&&(h.push(e),d=d.concat(e.f||[]));p=h}return d},x.separator=function(t){t?(t="["+(t=d(t).replace(/(?=[\.\^\]\[\-])/g,"\\"))+"]",o=new RegExp(t)):o=/[\.\/]/},x.on=function(t,e){if("function"!=typeof e)return function(){};for(var r=g(t)?g(t[0])?t:[t]:d(t).split(l),i=0,n=r.length;i<n;i++)!function(t){for(var r,i=g(t)?t:d(t).split(o),n=u,a=0,s=i.length;a<s;a++)n=(n=n.n).hasOwnProperty(i[a])&&n[i[a]]||(n[i[a]]={n:{}});for(n.f=n.f||[],a=0,s=n.f.length;a<s;a++)if(n.f[a]==e){r=!0;break}!r&&n.f.push(e)}(r[i]);return function(t){+t==+t&&(e.zIndex=+t)}},x.f=function(t){var e=[].slice.call(arguments,1);return function(){x.apply(null,[t,null].concat(e).concat([].slice.call(arguments,0)))}},x.stop=function(){a=1},x.nt=function(t){var e=g(n)?n.join("."):n;return t?new RegExp("(?:\\.|\\/|^)"+t+"(?:\\.|\\/|$)").test(e):e},x.nts=function(){return g(n)?n:n.split(o)},x.off=x.unbind=function(t,e){if(t){var r=g(t)?g(t[0])?t:[t]:d(t).split(l);if(r.length>1)for(var i=0,n=r.length;i<n;i++)x.off(r[i],e);else{r=g(t)?t:d(t).split(o);var a,h,c,f,p,v=[u];for(i=0,n=r.length;i<n;i++)for(f=0;f<v.length;f+=c.length-2){if(c=[f,1],a=v[f].n,"*"!=r[i])a[r[i]]&&c.push(a[r[i]]);else for(h in a)a[s](h)&&c.push(a[h]);v.splice.apply(v,c)}for(i=0,n=v.length;i<n;i++)for(a=v[i];a.n;){if(e){if(a.f){for(f=0,p=a.f.length;f<p;f++)if(a.f[f]==e){a.f.splice(f,1);break}!a.f.length&&delete a.f}for(h in a.n)if(a.n[s](h)&&a.n[h].f){var y=a.n[h].f;for(f=0,p=y.length;f<p;f++)if(y[f]==e){y.splice(f,1);break}!y.length&&delete a.n[h].f}}else for(h in delete a.f,a.n)a.n[s](h)&&a.n[h].f&&delete a.n[h].f;a=a.n}}}else x._events=u={n:{}}},x.once=function(t,e){var r=function(){return x.off(t,r),e.apply(this,arguments)};return x.on(t,r)},x.version="0.5.0",x.toString=function(){return"You are running Eve 0.5.0"},t.exports?t.exports=x:void 0===(i=function(){return x}.apply(e,[]))||(t.exports=i)},function(t,e,r){var i,n;i=[r(0)],void 0===(n=function(t){if(!t||t.svg){var e="hasOwnProperty",r=String,i=parseFloat,n=parseInt,a=Math,s=a.max,o=a.abs,l=a.pow,h=/[, ]+/,u=t.eve,c="",f=" ",p="http://www.w3.org/1999/xlink",d={block:"M5,0 0,2.5 5,5z",classic:"M5,0 0,2.5 5,5 3.5,3 3.5,2z",diamond:"M2.5,0 5,2.5 2.5,5 0,2.5z",open:"M6,1 1,3.5 6,6",oval:"M2.5,0A2.5,2.5,0,0,1,2.5,5 2.5,2.5,0,0,1,2.5,0z"},g={};t.toString=function(){return"Your browser supports SVG.\nYou are running Raphaël "+this.version};var x=function(i,n){if(n)for(var a in"string"==typeof i&&(i=x(i)),n)n[e](a)&&("xlink:"==a.substring(0,6)?i.setAttributeNS(p,a.substring(6),r(n[a])):i.setAttribute(a,r(n[a])));else(i=t._g.doc.createElementNS("http://www.w3.org/2000/svg",i)).style&&(i.style.webkitTapHighlightColor="rgba(0,0,0,0)");return i},v=function(e,n){var h="linear",u=e.id+n,f=.5,p=.5,d=e.node,g=e.paper,v=d.style,m=t._g.doc.getElementById(u);if(!m){if(n=(n=r(n).replace(t._radial_gradient,function(t,e,r){if(h="radial",e&&r){f=i(e);var n=2*((p=i(r))>.5)-1;l(f-.5,2)+l(p-.5,2)>.25&&(p=a.sqrt(.25-l(f-.5,2))*n+.5)&&.5!=p&&(p=p.toFixed(5)-1e-5*n)}return c})).split(/\s*\-\s*/),"linear"==h){var b=n.shift();if(b=-i(b),isNaN(b))return null;var _=[0,0,a.cos(t.rad(b)),a.sin(t.rad(b))],w=1/(s(o(_[2]),o(_[3]))||1);_[2]*=w,_[3]*=w,_[2]<0&&(_[0]=-_[2],_[2]=0),_[3]<0&&(_[1]=-_[3],_[3]=0)}var k=t._parseDots(n);if(!k)return null;if(u=u.replace(/[\(\)\s,\xb0#]/g,"_"),e.gradient&&u!=e.gradient.id&&(g.defs.removeChild(e.gradient),delete e.gradient),!e.gradient){m=x(h+"Gradient",{id:u}),e.gradient=m,x(m,"radial"==h?{fx:f,fy:p}:{x1:_[0],y1:_[1],x2:_[2],y2:_[3],gradientTransform:e.matrix.invert()}),g.defs.appendChild(m);for(var B=0,C=k.length;B<C;B++)m.appendChild(x("stop",{offset:k[B].offset?k[B].offset:B?"100%":"0%","stop-color":k[B].color||"#fff","stop-opacity":isFinite(k[B].opacity)?k[B].opacity:1}))}}return x(d,{fill:y(u),opacity:1,"fill-opacity":1}),v.fill=c,v.opacity=1,v.fillOpacity=1,1},y=function(t){if((e=document.documentMode)&&(9===e||10===e))return"url('#"+t+"')";var e,r=document.location;return"url('"+(r.protocol+"//"+r.host+r.pathname+r.search)+"#"+t+"')"},m=function(t){var e=t.getBBox(1);x(t.pattern,{patternTransform:t.matrix.invert()+" translate("+e.x+","+e.y+")"})},b=function(i,n,a){if("path"==i.type){for(var s,o,l,h,u,f=r(n).toLowerCase().split("-"),p=i.paper,v=a?"end":"start",y=i.node,m=i.attrs,b=m["stroke-width"],_=f.length,w="classic",k=3,B=3,C=5;_--;)switch(f[_]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":w=f[_];break;case"wide":B=5;break;case"narrow":B=2;break;case"long":k=5;break;case"short":k=2}if("open"==w?(k+=2,B+=2,C+=2,l=1,h=a?4:1,u={fill:"none",stroke:m.stroke}):(h=l=k/2,u={fill:m.stroke,stroke:"none"}),i._.arrows?a?(i._.arrows.endPath&&g[i._.arrows.endPath]--,i._.arrows.endMarker&&g[i._.arrows.endMarker]--):(i._.arrows.startPath&&g[i._.arrows.startPath]--,i._.arrows.startMarker&&g[i._.arrows.startMarker]--):i._.arrows={},"none"!=w){var S="raphael-marker-"+w,T="raphael-marker-"+v+w+k+B+"-obj"+i.id;t._g.doc.getElementById(S)?g[S]++:(p.defs.appendChild(x(x("path"),{"stroke-linecap":"round",d:d[w],id:S})),g[S]=1);var A,M=t._g.doc.getElementById(T);M?(g[T]++,A=M.getElementsByTagName("use")[0]):(M=x(x("marker"),{id:T,markerHeight:B,markerWidth:k,orient:"auto",refX:h,refY:B/2}),A=x(x("use"),{"xlink:href":"#"+S,transform:(a?"rotate(180 "+k/2+" "+B/2+") ":c)+"scale("+k/C+","+B/C+")","stroke-width":(1/((k/C+B/C)/2)).toFixed(4)}),M.appendChild(A),p.defs.appendChild(M),g[T]=1),x(A,u);var E=l*("diamond"!=w&&"oval"!=w);a?(s=i._.arrows.startdx*b||0,o=t.getTotalLength(m.path)-E*b):(s=E*b,o=t.getTotalLength(m.path)-(i._.arrows.enddx*b||0)),(u={})["marker-"+v]="url(#"+T+")",(o||s)&&(u.d=t.getSubpath(m.path,s,o)),x(y,u),i._.arrows[v+"Path"]=S,i._.arrows[v+"Marker"]=T,i._.arrows[v+"dx"]=E,i._.arrows[v+"Type"]=w,i._.arrows[v+"String"]=n}else a?(s=i._.arrows.startdx*b||0,o=t.getTotalLength(m.path)-s):(s=0,o=t.getTotalLength(m.path)-(i._.arrows.enddx*b||0)),i._.arrows[v+"Path"]&&x(y,{d:t.getSubpath(m.path,s,o)}),delete i._.arrows[v+"Path"],delete i._.arrows[v+"Marker"],delete i._.arrows[v+"dx"],delete i._.arrows[v+"Type"],delete i._.arrows[v+"String"];for(u in g)if(g[e](u)&&!g[u]){var N=t._g.doc.getElementById(u);N&&N.parentNode.removeChild(N)}}},_={"-":[3,1],".":[1,1],"-.":[3,1,1,1],"-..":[3,1,1,1,1,1],". ":[1,3],"- ":[4,3],"--":[8,3],"- .":[4,3,1,3],"--.":[8,3,1,3],"--..":[8,3,1,3,1,3]},w=function(t,e,i){if(e=_[r(e).toLowerCase()]){for(var n=t.attrs["stroke-width"]||"1",a={round:n,square:n,butt:0}[t.attrs["stroke-linecap"]||i["stroke-linecap"]]||0,s=[],o=e.length;o--;)s[o]=e[o]*n+(o%2?1:-1)*a;x(t.node,{"stroke-dasharray":s.join(",")})}else x(t.node,{"stroke-dasharray":"none"})},k=function(i,a){var l=i.node,u=i.attrs,f=l.style.visibility;for(var d in l.style.visibility="hidden",a)if(a[e](d)){if(!t._availableAttrs[e](d))continue;var g=a[d];switch(u[d]=g,d){case"blur":i.blur(g);break;case"title":var y=l.getElementsByTagName("title");if(y.length&&(y=y[0]))y.firstChild.nodeValue=g;else{y=x("title");var _=t._g.doc.createTextNode(g);y.appendChild(_),l.appendChild(y)}break;case"href":case"target":var k=l.parentNode;if("a"!=k.tagName.toLowerCase()){var C=x("a");k.insertBefore(C,l),C.appendChild(l),k=C}"target"==d?k.setAttributeNS(p,"show","blank"==g?"new":g):k.setAttributeNS(p,d,g);break;case"cursor":l.style.cursor=g;break;case"transform":i.transform(g);break;case"arrow-start":b(i,g);break;case"arrow-end":b(i,g,1);break;case"clip-rect":var S=r(g).split(h);if(4==S.length){i.clip&&i.clip.parentNode.parentNode.removeChild(i.clip.parentNode);var T=x("clipPath"),A=x("rect");T.id=t.createUUID(),x(A,{x:S[0],y:S[1],width:S[2],height:S[3]}),T.appendChild(A),i.paper.defs.appendChild(T),x(l,{"clip-path":"url(#"+T.id+")"}),i.clip=A}if(!g){var M=l.getAttribute("clip-path");if(M){var E=t._g.doc.getElementById(M.replace(/(^url\(#|\)$)/g,c));E&&E.parentNode.removeChild(E),x(l,{"clip-path":c}),delete i.clip}}break;case"path":"path"==i.type&&(x(l,{d:g?u.path=t._pathToAbsolute(g):"M0,0"}),i._.dirty=1,i._.arrows&&("startString"in i._.arrows&&b(i,i._.arrows.startString),"endString"in i._.arrows&&b(i,i._.arrows.endString,1)));break;case"width":if(l.setAttribute(d,g),i._.dirty=1,!u.fx)break;d="x",g=u.x;case"x":u.fx&&(g=-u.x-(u.width||0));case"rx":if("rx"==d&&"rect"==i.type)break;case"cx":l.setAttribute(d,g),i.pattern&&m(i),i._.dirty=1;break;case"height":if(l.setAttribute(d,g),i._.dirty=1,!u.fy)break;d="y",g=u.y;case"y":u.fy&&(g=-u.y-(u.height||0));case"ry":if("ry"==d&&"rect"==i.type)break;case"cy":l.setAttribute(d,g),i.pattern&&m(i),i._.dirty=1;break;case"r":"rect"==i.type?x(l,{rx:g,ry:g}):l.setAttribute(d,g),i._.dirty=1;break;case"src":"image"==i.type&&l.setAttributeNS(p,"href",g);break;case"stroke-width":1==i._.sx&&1==i._.sy||(g/=s(o(i._.sx),o(i._.sy))||1),l.setAttribute(d,g),u["stroke-dasharray"]&&w(i,u["stroke-dasharray"],a),i._.arrows&&("startString"in i._.arrows&&b(i,i._.arrows.startString),"endString"in i._.arrows&&b(i,i._.arrows.endString,1));break;case"stroke-dasharray":w(i,g,a);break;case"fill":var N=r(g).match(t._ISURL);if(N){T=x("pattern");var L=x("image");T.id=t.createUUID(),x(T,{x:0,y:0,patternUnits:"userSpaceOnUse",height:1,width:1}),x(L,{x:0,y:0,"xlink:href":N[1]}),T.appendChild(L),function(e){t._preload(N[1],function(){var t=this.offsetWidth,r=this.offsetHeight;x(e,{width:t,height:r}),x(L,{width:t,height:r})})}(T),i.paper.defs.appendChild(T),x(l,{fill:"url(#"+T.id+")"}),i.pattern=T,i.pattern&&m(i);break}var P=t.getRGB(g);if(P.error){if(("circle"==i.type||"ellipse"==i.type||"r"!=r(g).charAt())&&v(i,g)){if("opacity"in u||"fill-opacity"in u){var z=t._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g,c));if(z){var F=z.getElementsByTagName("stop");x(F[F.length-1],{"stop-opacity":("opacity"in u?u.opacity:1)*("fill-opacity"in u?u["fill-opacity"]:1)})}}u.gradient=g,u.fill="none";break}}else delete a.gradient,delete u.gradient,!t.is(u.opacity,"undefined")&&t.is(a.opacity,"undefined")&&x(l,{opacity:u.opacity}),!t.is(u["fill-opacity"],"undefined")&&t.is(a["fill-opacity"],"undefined")&&x(l,{"fill-opacity":u["fill-opacity"]});P[e]("opacity")&&x(l,{"fill-opacity":P.opacity>1?P.opacity/100:P.opacity});case"stroke":P=t.getRGB(g),l.setAttribute(d,P.hex),"stroke"==d&&P[e]("opacity")&&x(l,{"stroke-opacity":P.opacity>1?P.opacity/100:P.opacity}),"stroke"==d&&i._.arrows&&("startString"in i._.arrows&&b(i,i._.arrows.startString),"endString"in i._.arrows&&b(i,i._.arrows.endString,1));break;case"gradient":("circle"==i.type||"ellipse"==i.type||"r"!=r(g).charAt())&&v(i,g);break;case"opacity":u.gradient&&!u[e]("stroke-opacity")&&x(l,{"stroke-opacity":g>1?g/100:g});case"fill-opacity":if(u.gradient){(z=t._g.doc.getElementById(l.getAttribute("fill").replace(/^url\(#|\)$/g,c)))&&(F=z.getElementsByTagName("stop"),x(F[F.length-1],{"stop-opacity":g}));break}default:"font-size"==d&&(g=n(g,10)+"px");var R=d.replace(/(\-.)/g,function(t){return t.substring(1).toUpperCase()});l.style[R]=g,i._.dirty=1,l.setAttribute(d,g)}}B(i,a),l.style.visibility=f},B=function(i,a){if("text"==i.type&&(a[e]("text")||a[e]("font")||a[e]("font-size")||a[e]("x")||a[e]("y"))){var s=i.attrs,o=i.node,l=o.firstChild?n(t._g.doc.defaultView.getComputedStyle(o.firstChild,c).getPropertyValue("font-size"),10):10;if(a[e]("text")){for(s.text=a.text;o.firstChild;)o.removeChild(o.firstChild);for(var h,u=r(a.text).split("\n"),f=[],p=0,d=u.length;p<d;p++)h=x("tspan"),p&&x(h,{dy:1.2*l,x:s.x}),h.appendChild(t._g.doc.createTextNode(u[p])),o.appendChild(h),f[p]=h}else for(p=0,d=(f=o.getElementsByTagName("tspan")).length;p<d;p++)p?x(f[p],{dy:1.2*l,x:s.x}):x(f[0],{dy:0});x(o,{x:s.x,y:s.y}),i._.dirty=1;var g=i._getBBox(),v=s.y-(g.y+g.height/2);v&&t.is(v,"finite")&&x(f[0],{dy:v})}},C=function(t){return t.parentNode&&"a"===t.parentNode.tagName.toLowerCase()?t.parentNode:t},S=function(e,r){this[0]=this.node=e,e.raphael=!0,this.id=("0000"+(Math.random()*Math.pow(36,5)<<0).toString(36)).slice(-5),e.raphaelid=this.id,this.matrix=t.matrix(),this.realPath=null,this.paper=r,this.attrs=this.attrs||{},this._={transform:[],sx:1,sy:1,deg:0,dx:0,dy:0,dirty:1},!r.bottom&&(r.bottom=this),this.prev=r.top,r.top&&(r.top.next=this),r.top=this,this.next=null},T=t.el;S.prototype=T,T.constructor=S,t._engine.path=function(t,e){var r=x("path");e.canvas&&e.canvas.appendChild(r);var i=new S(r,e);return i.type="path",k(i,{fill:"none",stroke:"#000",path:t}),i},T.rotate=function(t,e,n){if(this.removed)return this;if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2])),t=i(t[0]),null==n&&(e=n),null==e||null==n){var a=this.getBBox(1);e=a.x+a.width/2,n=a.y+a.height/2}return this.transform(this._.transform.concat([["r",t,e,n]])),this},T.scale=function(t,e,n,a){if(this.removed)return this;if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2]),a=i(t[3])),t=i(t[0]),null==e&&(e=t),null==a&&(n=a),null==n||null==a)var s=this.getBBox(1);return n=null==n?s.x+s.width/2:n,a=null==a?s.y+s.height/2:a,this.transform(this._.transform.concat([["s",t,e,n,a]])),this},T.translate=function(t,e){return this.removed?this:((t=r(t).split(h)).length-1&&(e=i(t[1])),t=i(t[0])||0,e=+e||0,this.transform(this._.transform.concat([["t",t,e]])),this)},T.transform=function(r){var i=this._;if(null==r)return i.transform;if(t._extractTransform(this,r),this.clip&&x(this.clip,{transform:this.matrix.invert()}),this.pattern&&m(this),this.node&&x(this.node,{transform:this.matrix}),1!=i.sx||1!=i.sy){var n=this.attrs[e]("stroke-width")?this.attrs["stroke-width"]:1;this.attr({"stroke-width":n})}return this},T.hide=function(){return this.removed||(this.node.style.display="none"),this},T.show=function(){return this.removed||(this.node.style.display=""),this},T.remove=function(){var e=C(this.node);if(!this.removed&&e.parentNode){var r=this.paper;for(var i in r.__set__&&r.__set__.exclude(this),u.unbind("raphael.*.*."+this.id),this.gradient&&r.defs.removeChild(this.gradient),t._tear(this,r),e.parentNode.removeChild(e),this.removeData(),this)this[i]="function"==typeof this[i]?t._removedFactory(i):null;this.removed=!0}},T._getBBox=function(){if("none"==this.node.style.display){this.show();var t=!0}var e,r=!1;this.paper.canvas.parentElement?e=this.paper.canvas.parentElement.style:this.paper.canvas.parentNode&&(e=this.paper.canvas.parentNode.style),e&&"none"==e.display&&(r=!0,e.display="");var i={};try{i=this.node.getBBox()}catch(t){i={x:this.node.clientLeft,y:this.node.clientTop,width:this.node.clientWidth,height:this.node.clientHeight}}finally{i=i||{},r&&(e.display="none")}return t&&this.hide(),i},T.attr=function(r,i){if(this.removed)return this;if(null==r){var n={};for(var a in this.attrs)this.attrs[e](a)&&(n[a]=this.attrs[a]);return n.gradient&&"none"==n.fill&&(n.fill=n.gradient)&&delete n.gradient,n.transform=this._.transform,n}if(null==i&&t.is(r,"string")){if("fill"==r&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;if("transform"==r)return this._.transform;for(var s=r.split(h),o={},l=0,c=s.length;l<c;l++)(r=s[l])in this.attrs?o[r]=this.attrs[r]:t.is(this.paper.customAttributes[r],"function")?o[r]=this.paper.customAttributes[r].def:o[r]=t._availableAttrs[r];return c-1?o:o[s[0]]}if(null==i&&t.is(r,"array")){for(o={},l=0,c=r.length;l<c;l++)o[r[l]]=this.attr(r[l]);return o}if(null!=i){var f={};f[r]=i}else null!=r&&t.is(r,"object")&&(f=r);for(var p in f)u("raphael.attr."+p+"."+this.id,this,f[p]);for(p in this.paper.customAttributes)if(this.paper.customAttributes[e](p)&&f[e](p)&&t.is(this.paper.customAttributes[p],"function")){var d=this.paper.customAttributes[p].apply(this,[].concat(f[p]));for(var g in this.attrs[p]=f[p],d)d[e](g)&&(f[g]=d[g])}return k(this,f),this},T.toFront=function(){if(this.removed)return this;var e=C(this.node);e.parentNode.appendChild(e);var r=this.paper;return r.top!=this&&t._tofront(this,r),this},T.toBack=function(){if(this.removed)return this;var e=C(this.node),r=e.parentNode;r.insertBefore(e,r.firstChild),t._toback(this,this.paper);this.paper;return this},T.insertAfter=function(e){if(this.removed||!e)return this;var r=C(this.node),i=C(e.node||e[e.length-1].node);return i.nextSibling?i.parentNode.insertBefore(r,i.nextSibling):i.parentNode.appendChild(r),t._insertafter(this,e,this.paper),this},T.insertBefore=function(e){if(this.removed||!e)return this;var r=C(this.node),i=C(e.node||e[0].node);return i.parentNode.insertBefore(r,i),t._insertbefore(this,e,this.paper),this},T.blur=function(e){var r=this;if(0!=+e){var i=x("filter"),n=x("feGaussianBlur");r.attrs.blur=e,i.id=t.createUUID(),x(n,{stdDeviation:+e||1.5}),i.appendChild(n),r.paper.defs.appendChild(i),r._blur=i,x(r.node,{filter:"url(#"+i.id+")"})}else r._blur&&(r._blur.parentNode.removeChild(r._blur),delete r._blur,delete r.attrs.blur),r.node.removeAttribute("filter");return r},t._engine.circle=function(t,e,r,i){var n=x("circle");t.canvas&&t.canvas.appendChild(n);var a=new S(n,t);return a.attrs={cx:e,cy:r,r:i,fill:"none",stroke:"#000"},a.type="circle",x(n,a.attrs),a},t._engine.rect=function(t,e,r,i,n,a){var s=x("rect");t.canvas&&t.canvas.appendChild(s);var o=new S(s,t);return o.attrs={x:e,y:r,width:i,height:n,rx:a||0,ry:a||0,fill:"none",stroke:"#000"},o.type="rect",x(s,o.attrs),o},t._engine.ellipse=function(t,e,r,i,n){var a=x("ellipse");t.canvas&&t.canvas.appendChild(a);var s=new S(a,t);return s.attrs={cx:e,cy:r,rx:i,ry:n,fill:"none",stroke:"#000"},s.type="ellipse",x(a,s.attrs),s},t._engine.image=function(t,e,r,i,n,a){var s=x("image");x(s,{x:r,y:i,width:n,height:a,preserveAspectRatio:"none"}),s.setAttributeNS(p,"href",e),t.canvas&&t.canvas.appendChild(s);var o=new S(s,t);return o.attrs={x:r,y:i,width:n,height:a,src:e},o.type="image",o},t._engine.text=function(e,r,i,n){var a=x("text");e.canvas&&e.canvas.appendChild(a);var s=new S(a,e);return s.attrs={x:r,y:i,"text-anchor":"middle",text:n,"font-family":t._availableAttrs["font-family"],"font-size":t._availableAttrs["font-size"],stroke:"none",fill:"#000"},s.type="text",k(s,s.attrs),s},t._engine.setSize=function(t,e){return this.width=t||this.width,this.height=e||this.height,this.canvas.setAttribute("width",this.width),this.canvas.setAttribute("height",this.height),this._viewBox&&this.setViewBox.apply(this,this._viewBox),this},t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e&&e.container;if(!r)throw new Error("SVG container not found.");var i,n=e.x,a=e.y,s=e.width,o=e.height,l=x("svg"),h="overflow:hidden;";return n=n||0,a=a||0,x(l,{height:o=o||342,version:1.1,width:s=s||512,xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink"}),1==r?(l.style.cssText=h+"position:absolute;left:"+n+"px;top:"+a+"px",t._g.doc.body.appendChild(l),i=1):(l.style.cssText=h+"position:relative",r.firstChild?r.insertBefore(l,r.firstChild):r.appendChild(l)),(r=new t._Paper).width=s,r.height=o,r.canvas=l,r.clear(),r._left=r._top=0,i&&(r.renderfix=function(){}),r.renderfix(),r},t._engine.setViewBox=function(t,e,r,i,n){u("raphael.setViewBox",this,this._viewBox,[t,e,r,i,n]);var a,o,l=this.getSize(),h=s(r/l.width,i/l.height),c=this.top,p=n?"xMidYMid meet":"xMinYMin";for(null==t?(this._vbSize&&(h=1),delete this._vbSize,a="0 0 "+this.width+f+this.height):(this._vbSize=h,a=t+f+e+f+r+f+i),x(this.canvas,{viewBox:a,preserveAspectRatio:p});h&&c;)o="stroke-width"in c.attrs?c.attrs["stroke-width"]:1,c.attr({"stroke-width":o}),c._.dirty=1,c._.dirtyT=1,c=c.prev;return this._viewBox=[t,e,r,i,!!n],this},t.prototype.renderfix=function(){var t,e=this.canvas,r=e.style;try{t=e.getScreenCTM()||e.createSVGMatrix()}catch(r){t=e.createSVGMatrix()}var i=-t.e%1,n=-t.f%1;(i||n)&&(i&&(this._left=(this._left+i)%1,r.left=this._left+"px"),n&&(this._top=(this._top+n)%1,r.top=this._top+"px"))},t.prototype.clear=function(){t.eve("raphael.clear",this);for(var e=this.canvas;e.firstChild;)e.removeChild(e.firstChild);this.bottom=this.top=null,(this.desc=x("desc")).appendChild(t._g.doc.createTextNode("Created with Raphaël "+t.version)),e.appendChild(this.desc),e.appendChild(this.defs=x("defs"))},t.prototype.remove=function(){for(var e in u("raphael.remove",this),this.canvas.parentNode&&this.canvas.parentNode.removeChild(this.canvas),this)this[e]="function"==typeof this[e]?t._removedFactory(e):null};var A=t.st;for(var M in T)T[e](M)&&!A[e](M)&&(A[M]=function(t){return function(){var e=arguments;return this.forEach(function(r){r[t].apply(r,e)})}}(M))}}.apply(e,i))||(t.exports=n)},function(t,e,r){var i,n;i=[r(0)],void 0===(n=function(t){if(!t||t.vml){var e="hasOwnProperty",r=String,i=parseFloat,n=Math,a=n.round,s=n.max,o=n.min,l=n.abs,h=/[, ]+/,u=t.eve,c=" ",f="",p={M:"m",L:"l",C:"c",Z:"x",m:"t",l:"r",c:"v",z:"x"},d=/([clmz]),?([^clmz]*)/gi,g=/ progid:\S+Blur\([^\)]+\)/g,x=/-?[^,\s-]+/g,v="position:absolute;left:0;top:0;width:1px;height:1px;behavior:url(#default#VML)",y=21600,m={path:1,rect:1,image:1},b={circle:1,ellipse:1},_=function(e,r,i){var n=t.matrix();return n.rotate(-e,.5,.5),{dx:n.x(r,i),dy:n.y(r,i)}},w=function(t,e,r,i,n,a){var s=t._,o=t.matrix,h=s.fillpos,u=t.node,f=u.style,p=1,d="",g=y/e,x=y/r;if(f.visibility="hidden",e&&r){if(u.coordsize=l(g)+c+l(x),f.rotation=a*(e*r<0?-1:1),a){var v=_(a,i,n);i=v.dx,n=v.dy}if(e<0&&(d+="x"),r<0&&(d+=" y")&&(p=-1),f.flip=d,u.coordorigin=i*-g+c+n*-x,h||s.fillsize){var m=u.getElementsByTagName("fill");m=m&&m[0],u.removeChild(m),h&&(v=_(a,o.x(h[0],h[1]),o.y(h[0],h[1])),m.position=v.dx*p+c+v.dy*p),s.fillsize&&(m.size=s.fillsize[0]*l(e)+c+s.fillsize[1]*l(r)),u.appendChild(m)}f.visibility="visible"}};t.toString=function(){return"Your browser doesn’t support SVG. Falling down to VML.\nYou are running Raphaël "+this.version};var k,B=function(t,e,i){for(var n=r(e).toLowerCase().split("-"),a=i?"end":"start",s=n.length,o="classic",l="medium",h="medium";s--;)switch(n[s]){case"block":case"classic":case"oval":case"diamond":case"open":case"none":o=n[s];break;case"wide":case"narrow":h=n[s];break;case"long":case"short":l=n[s]}var u=t.node.getElementsByTagName("stroke")[0];u[a+"arrow"]=o,u[a+"arrowlength"]=l,u[a+"arrowwidth"]=h},C=function(n,l){n.attrs=n.attrs||{};var u=n.node,g=n.attrs,v=u.style,_=m[n.type]&&(l.x!=g.x||l.y!=g.y||l.width!=g.width||l.height!=g.height||l.cx!=g.cx||l.cy!=g.cy||l.rx!=g.rx||l.ry!=g.ry||l.r!=g.r),C=b[n.type]&&(g.cx!=l.cx||g.cy!=l.cy||g.r!=l.r||g.rx!=l.rx||g.ry!=l.ry),T=n;for(var A in l)l[e](A)&&(g[A]=l[A]);if(_&&(g.path=t._getPath[n.type](n),n._.dirty=1),l.href&&(u.href=l.href),l.title&&(u.title=l.title),l.target&&(u.target=l.target),l.cursor&&(v.cursor=l.cursor),"blur"in l&&n.blur(l.blur),(l.path&&"path"==n.type||_)&&(u.path=function(e){var i=/[ahqstv]/gi,n=t._pathToAbsolute;if(r(e).match(i)&&(n=t._path2curve),i=/[clmz]/g,n==t._pathToAbsolute&&!r(e).match(i)){var s=r(e).replace(d,function(t,e,r){var i=[],n="m"==e.toLowerCase(),s=p[e];return r.replace(x,function(t){n&&2==i.length&&(s+=i+p["m"==e?"l":"L"],i=[]),i.push(a(t*y))}),s+i});return s}var o,l,h=n(e);s=[];for(var u=0,g=h.length;u<g;u++){o=h[u],"z"==(l=h[u][0].toLowerCase())&&(l="x");for(var v=1,m=o.length;v<m;v++)l+=a(o[v]*y)+(v!=m-1?",":f);s.push(l)}return s.join(c)}(~r(g.path).toLowerCase().indexOf("r")?t._pathToAbsolute(g.path):g.path),n._.dirty=1,"image"==n.type&&(n._.fillpos=[g.x,g.y],n._.fillsize=[g.width,g.height],w(n,1,1,0,0,0))),"transform"in l&&n.transform(l.transform),C){var M=+g.cx,E=+g.cy,N=+g.rx||+g.r||0,L=+g.ry||+g.r||0;u.path=t.format("ar{0},{1},{2},{3},{4},{1},{4},{1}x",a((M-N)*y),a((E-L)*y),a((M+N)*y),a((E+L)*y),a(M*y)),n._.dirty=1}if("clip-rect"in l){var P=r(l["clip-rect"]).split(h);if(4==P.length){P[2]=+P[2]+ +P[0],P[3]=+P[3]+ +P[1];var z=u.clipRect||t._g.doc.createElement("div"),F=z.style;F.clip=t.format("rect({1}px {2}px {3}px {0}px)",P),u.clipRect||(F.position="absolute",F.top=0,F.left=0,F.width=n.paper.width+"px",F.height=n.paper.height+"px",u.parentNode.insertBefore(z,u),z.appendChild(u),u.clipRect=z)}l["clip-rect"]||u.clipRect&&(u.clipRect.style.clip="auto")}if(n.textpath){var R=n.textpath.style;l.font&&(R.font=l.font),l["font-family"]&&(R.fontFamily='"'+l["font-family"].split(",")[0].replace(/^['"]+|['"]+$/g,f)+'"'),l["font-size"]&&(R.fontSize=l["font-size"]),l["font-weight"]&&(R.fontWeight=l["font-weight"]),l["font-style"]&&(R.fontStyle=l["font-style"])}if("arrow-start"in l&&B(T,l["arrow-start"]),"arrow-end"in l&&B(T,l["arrow-end"],1),null!=l.opacity||null!=l.fill||null!=l.src||null!=l.stroke||null!=l["stroke-width"]||null!=l["stroke-opacity"]||null!=l["fill-opacity"]||null!=l["stroke-dasharray"]||null!=l["stroke-miterlimit"]||null!=l["stroke-linejoin"]||null!=l["stroke-linecap"]){var j=u.getElementsByTagName("fill");if(!(j=j&&j[0])&&(j=k("fill")),"image"==n.type&&l.src&&(j.src=l.src),l.fill&&(j.on=!0),null!=j.on&&"none"!=l.fill&&null!==l.fill||(j.on=!1),j.on&&l.fill){var I=r(l.fill).match(t._ISURL);if(I){j.parentNode==u&&u.removeChild(j),j.rotate=!0,j.src=I[1],j.type="tile";var D=n.getBBox(1);j.position=D.x+c+D.y,n._.fillpos=[D.x,D.y],t._preload(I[1],function(){n._.fillsize=[this.offsetWidth,this.offsetHeight]})}else j.color=t.getRGB(l.fill).hex,j.src=f,j.type="solid",t.getRGB(l.fill).error&&(T.type in{circle:1,ellipse:1}||"r"!=r(l.fill).charAt())&&S(T,l.fill,j)&&(g.fill="none",g.gradient=l.fill,j.rotate=!1)}if("fill-opacity"in l||"opacity"in l){var q=((+g["fill-opacity"]+1||2)-1)*((+g.opacity+1||2)-1)*((+t.getRGB(l.fill).o+1||2)-1);q=o(s(q,0),1),j.opacity=q,j.src&&(j.color="none")}u.appendChild(j);var O=u.getElementsByTagName("stroke")&&u.getElementsByTagName("stroke")[0],V=!1;!O&&(V=O=k("stroke")),(l.stroke&&"none"!=l.stroke||l["stroke-width"]||null!=l["stroke-opacity"]||l["stroke-dasharray"]||l["stroke-miterlimit"]||l["stroke-linejoin"]||l["stroke-linecap"])&&(O.on=!0),("none"==l.stroke||null===l.stroke||null==O.on||0==l.stroke||0==l["stroke-width"])&&(O.on=!1);var W=t.getRGB(l.stroke);O.on&&l.stroke&&(O.color=W.hex),q=((+g["stroke-opacity"]+1||2)-1)*((+g.opacity+1||2)-1)*((+W.o+1||2)-1);var Y=.75*(i(l["stroke-width"])||1);if(q=o(s(q,0),1),null==l["stroke-width"]&&(Y=g["stroke-width"]),l["stroke-width"]&&(O.weight=Y),Y&&Y<1&&(q*=Y)&&(O.weight=1),O.opacity=q,l["stroke-linejoin"]&&(O.joinstyle=l["stroke-linejoin"]||"miter"),O.miterlimit=l["stroke-miterlimit"]||8,l["stroke-linecap"]&&(O.endcap="butt"==l["stroke-linecap"]?"flat":"square"==l["stroke-linecap"]?"square":"round"),"stroke-dasharray"in l){var G={"-":"shortdash",".":"shortdot","-.":"shortdashdot","-..":"shortdashdotdot",". ":"dot","- ":"dash","--":"longdash","- .":"dashdot","--.":"longdashdot","--..":"longdashdotdot"};O.dashstyle=G[e](l["stroke-dasharray"])?G[l["stroke-dasharray"]]:f}V&&u.appendChild(O)}if("text"==T.type){T.paper.canvas.style.display=f;var H=T.paper.span,X=g.font&&g.font.match(/\d+(?:\.\d*)?(?=px)/);v=H.style,g.font&&(v.font=g.font),g["font-family"]&&(v.fontFamily=g["font-family"]),g["font-weight"]&&(v.fontWeight=g["font-weight"]),g["font-style"]&&(v.fontStyle=g["font-style"]),X=i(g["font-size"]||X&&X[0])||10,v.fontSize=100*X+"px",T.textpath.string&&(H.innerHTML=r(T.textpath.string).replace(/</g,"<").replace(/&/g,"&").replace(/\n/g,"<br>"));var U=H.getBoundingClientRect();T.W=g.w=(U.right-U.left)/100,T.H=g.h=(U.bottom-U.top)/100,T.X=g.x,T.Y=g.y+T.H/2,("x"in l||"y"in l)&&(T.path.v=t.format("m{0},{1}l{2},{1}",a(g.x*y),a(g.y*y),a(g.x*y)+1));for(var $=["x","y","text","font","font-family","font-weight","font-style","font-size"],Z=0,Q=$.length;Z<Q;Z++)if($[Z]in l){T._.dirty=1;break}switch(g["text-anchor"]){case"start":T.textpath.style["v-text-align"]="left",T.bbx=T.W/2;break;case"end":T.textpath.style["v-text-align"]="right",T.bbx=-T.W/2;break;default:T.textpath.style["v-text-align"]="center",T.bbx=0}T.textpath.style["v-text-kern"]=!0}},S=function(e,a,s){e.attrs=e.attrs||{};e.attrs;var o=Math.pow,l="linear",h=".5 .5";if(e.attrs.gradient=a,a=(a=r(a).replace(t._radial_gradient,function(t,e,r){return l="radial",e&&r&&(e=i(e),r=i(r),o(e-.5,2)+o(r-.5,2)>.25&&(r=n.sqrt(.25-o(e-.5,2))*(2*(r>.5)-1)+.5),h=e+c+r),f})).split(/\s*\-\s*/),"linear"==l){var u=a.shift();if(u=-i(u),isNaN(u))return null}var p=t._parseDots(a);if(!p)return null;if(e=e.shape||e.node,p.length){e.removeChild(s),s.on=!0,s.method="none",s.color=p[0].color,s.color2=p[p.length-1].color;for(var d=[],g=0,x=p.length;g<x;g++)p[g].offset&&d.push(p[g].offset+c+p[g].color);s.colors=d.length?d.join():"0% "+s.color,"radial"==l?(s.type="gradientTitle",s.focus="100%",s.focussize="0 0",s.focusposition=h,s.angle=0):(s.type="gradient",s.angle=(270-u)%360),e.appendChild(s)}return 1},T=function(e,r){this[0]=this.node=e,e.raphael=!0,this.id=t._oid++,e.raphaelid=this.id,this.X=0,this.Y=0,this.attrs={},this.paper=r,this.matrix=t.matrix(),this._={transform:[],sx:1,sy:1,dx:0,dy:0,deg:0,dirty:1,dirtyT:1},!r.bottom&&(r.bottom=this),this.prev=r.top,r.top&&(r.top.next=this),r.top=this,this.next=null},A=t.el;T.prototype=A,A.constructor=T,A.transform=function(e){if(null==e)return this._.transform;var i,n=this.paper._viewBoxShift,a=n?"s"+[n.scale,n.scale]+"-1-1t"+[n.dx,n.dy]:f;n&&(i=e=r(e).replace(/\.{3}|\u2026/g,this._.transform||f)),t._extractTransform(this,a+e);var s,o=this.matrix.clone(),l=this.skew,h=this.node,u=~r(this.attrs.fill).indexOf("-"),p=!r(this.attrs.fill).indexOf("url(");if(o.translate(1,1),p||u||"image"==this.type)if(l.matrix="1 0 0 1",l.offset="0 0",s=o.split(),u&&s.noRotation||!s.isSimple){h.style.filter=o.toFilter();var d=this.getBBox(),g=this.getBBox(1),x=d.x-g.x,v=d.y-g.y;h.coordorigin=x*-y+c+v*-y,w(this,1,1,x,v,0)}else h.style.filter=f,w(this,s.scalex,s.scaley,s.dx,s.dy,s.rotate);else h.style.filter=f,l.matrix=r(o),l.offset=o.offset();return null!==i&&(this._.transform=i,t._extractTransform(this,i)),this},A.rotate=function(t,e,n){if(this.removed)return this;if(null!=t){if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2])),t=i(t[0]),null==n&&(e=n),null==e||null==n){var a=this.getBBox(1);e=a.x+a.width/2,n=a.y+a.height/2}return this._.dirtyT=1,this.transform(this._.transform.concat([["r",t,e,n]])),this}},A.translate=function(t,e){return this.removed?this:((t=r(t).split(h)).length-1&&(e=i(t[1])),t=i(t[0])||0,e=+e||0,this._.bbox&&(this._.bbox.x+=t,this._.bbox.y+=e),this.transform(this._.transform.concat([["t",t,e]])),this)},A.scale=function(t,e,n,a){if(this.removed)return this;if((t=r(t).split(h)).length-1&&(e=i(t[1]),n=i(t[2]),a=i(t[3]),isNaN(n)&&(n=null),isNaN(a)&&(a=null)),t=i(t[0]),null==e&&(e=t),null==a&&(n=a),null==n||null==a)var s=this.getBBox(1);return n=null==n?s.x+s.width/2:n,a=null==a?s.y+s.height/2:a,this.transform(this._.transform.concat([["s",t,e,n,a]])),this._.dirtyT=1,this},A.hide=function(){return!this.removed&&(this.node.style.display="none"),this},A.show=function(){return!this.removed&&(this.node.style.display=f),this},A.auxGetBBox=t.el.getBBox,A.getBBox=function(){var t=this.auxGetBBox();if(this.paper&&this.paper._viewBoxShift){var e={},r=1/this.paper._viewBoxShift.scale;return e.x=t.x-this.paper._viewBoxShift.dx,e.x*=r,e.y=t.y-this.paper._viewBoxShift.dy,e.y*=r,e.width=t.width*r,e.height=t.height*r,e.x2=e.x+e.width,e.y2=e.y+e.height,e}return t},A._getBBox=function(){return this.removed?{}:{x:this.X+(this.bbx||0)-this.W/2,y:this.Y-this.H,width:this.W,height:this.H}},A.remove=function(){if(!this.removed&&this.node.parentNode){for(var e in this.paper.__set__&&this.paper.__set__.exclude(this),t.eve.unbind("raphael.*.*."+this.id),t._tear(this,this.paper),this.node.parentNode.removeChild(this.node),this.shape&&this.shape.parentNode.removeChild(this.shape),this)this[e]="function"==typeof this[e]?t._removedFactory(e):null;this.removed=!0}},A.attr=function(r,i){if(this.removed)return this;if(null==r){var n={};for(var a in this.attrs)this.attrs[e](a)&&(n[a]=this.attrs[a]);return n.gradient&&"none"==n.fill&&(n.fill=n.gradient)&&delete n.gradient,n.transform=this._.transform,n}if(null==i&&t.is(r,"string")){if("fill"==r&&"none"==this.attrs.fill&&this.attrs.gradient)return this.attrs.gradient;for(var s=r.split(h),o={},l=0,c=s.length;l<c;l++)(r=s[l])in this.attrs?o[r]=this.attrs[r]:t.is(this.paper.customAttributes[r],"function")?o[r]=this.paper.customAttributes[r].def:o[r]=t._availableAttrs[r];return c-1?o:o[s[0]]}if(this.attrs&&null==i&&t.is(r,"array")){for(o={},l=0,c=r.length;l<c;l++)o[r[l]]=this.attr(r[l]);return o}var f;for(var p in null!=i&&((f={})[r]=i),null==i&&t.is(r,"object")&&(f=r),f)u("raphael.attr."+p+"."+this.id,this,f[p]);if(f){for(p in this.paper.customAttributes)if(this.paper.customAttributes[e](p)&&f[e](p)&&t.is(this.paper.customAttributes[p],"function")){var d=this.paper.customAttributes[p].apply(this,[].concat(f[p]));for(var g in this.attrs[p]=f[p],d)d[e](g)&&(f[g]=d[g])}f.text&&"text"==this.type&&(this.textpath.string=f.text),C(this,f)}return this},A.toFront=function(){return!this.removed&&this.node.parentNode.appendChild(this.node),this.paper&&this.paper.top!=this&&t._tofront(this,this.paper),this},A.toBack=function(){return this.removed?this:(this.node.parentNode.firstChild!=this.node&&(this.node.parentNode.insertBefore(this.node,this.node.parentNode.firstChild),t._toback(this,this.paper)),this)},A.insertAfter=function(e){return this.removed?this:(e.constructor==t.st.constructor&&(e=e[e.length-1]),e.node.nextSibling?e.node.parentNode.insertBefore(this.node,e.node.nextSibling):e.node.parentNode.appendChild(this.node),t._insertafter(this,e,this.paper),this)},A.insertBefore=function(e){return this.removed?this:(e.constructor==t.st.constructor&&(e=e[0]),e.node.parentNode.insertBefore(this.node,e.node),t._insertbefore(this,e,this.paper),this)},A.blur=function(e){var r=this.node.runtimeStyle,i=r.filter;return i=i.replace(g,f),0!=+e?(this.attrs.blur=e,r.filter=i+c+" progid:DXImageTransform.Microsoft.Blur(pixelradius="+(+e||1.5)+")",r.margin=t.format("-{0}px 0 0 -{0}px",a(+e||1.5))):(r.filter=i,r.margin=0,delete this.attrs.blur),this},t._engine.path=function(t,e){var r=k("shape");r.style.cssText=v,r.coordsize=y+c+y,r.coordorigin=e.coordorigin;var i=new T(r,e),n={fill:"none",stroke:"#000"};t&&(n.path=t),i.type="path",i.path=[],i.Path=f,C(i,n),e.canvas&&e.canvas.appendChild(r);var a=k("skew");return a.on=!0,r.appendChild(a),i.skew=a,i.transform(f),i},t._engine.rect=function(e,r,i,n,a,s){var o=t._rectPath(r,i,n,a,s),l=e.path(o),h=l.attrs;return l.X=h.x=r,l.Y=h.y=i,l.W=h.width=n,l.H=h.height=a,h.r=s,h.path=o,l.type="rect",l},t._engine.ellipse=function(t,e,r,i,n){var a=t.path();a.attrs;return a.X=e-i,a.Y=r-n,a.W=2*i,a.H=2*n,a.type="ellipse",C(a,{cx:e,cy:r,rx:i,ry:n}),a},t._engine.circle=function(t,e,r,i){var n=t.path();n.attrs;return n.X=e-i,n.Y=r-i,n.W=n.H=2*i,n.type="circle",C(n,{cx:e,cy:r,r:i}),n},t._engine.image=function(e,r,i,n,a,s){var o=t._rectPath(i,n,a,s),l=e.path(o).attr({stroke:"none"}),h=l.attrs,u=l.node,c=u.getElementsByTagName("fill")[0];return h.src=r,l.X=h.x=i,l.Y=h.y=n,l.W=h.width=a,l.H=h.height=s,h.path=o,l.type="image",c.parentNode==u&&u.removeChild(c),c.rotate=!0,c.src=r,c.type="tile",l._.fillpos=[i,n],l._.fillsize=[a,s],u.appendChild(c),w(l,1,1,0,0,0),l},t._engine.text=function(e,i,n,s){var o=k("shape"),l=k("path"),h=k("textpath");i=i||0,n=n||0,s=s||"",l.v=t.format("m{0},{1}l{2},{1}",a(i*y),a(n*y),a(i*y)+1),l.textpathok=!0,h.string=r(s),h.on=!0,o.style.cssText=v,o.coordsize=y+c+y,o.coordorigin="0 0";var u=new T(o,e),p={fill:"#000",stroke:"none",font:t._availableAttrs.font,text:s};u.shape=o,u.path=l,u.textpath=h,u.type="text",u.attrs.text=r(s),u.attrs.x=i,u.attrs.y=n,u.attrs.w=1,u.attrs.h=1,C(u,p),o.appendChild(h),o.appendChild(l),e.canvas.appendChild(o);var d=k("skew");return d.on=!0,o.appendChild(d),u.skew=d,u.transform(f),u},t._engine.setSize=function(e,r){var i=this.canvas.style;return this.width=e,this.height=r,e==+e&&(e+="px"),r==+r&&(r+="px"),i.width=e,i.height=r,i.clip="rect(0 "+e+" "+r+" 0)",this._viewBox&&t._engine.setViewBox.apply(this,this._viewBox),this},t._engine.setViewBox=function(e,r,i,n,a){t.eve("raphael.setViewBox",this,this._viewBox,[e,r,i,n,a]);var s,o,l=this.getSize(),h=l.width,u=l.height;return a&&(i*(s=u/n)<h&&(e-=(h-i*s)/2/s),n*(o=h/i)<u&&(r-=(u-n*o)/2/o)),this._viewBox=[e,r,i,n,!!a],this._viewBoxShift={dx:-e,dy:-r,scale:l},this.forEach(function(t){t.transform("...")}),this},t._engine.initWin=function(t){var e=t.document;e.styleSheets.length<31?e.createStyleSheet().addRule(".rvml","behavior:url(#default#VML)"):e.styleSheets[0].addRule(".rvml","behavior:url(#default#VML)");try{!e.namespaces.rvml&&e.namespaces.add("rvml","urn:schemas-microsoft-com:vml"),k=function(t){return e.createElement("<rvml:"+t+' class="rvml">')}}catch(t){k=function(t){return e.createElement("<"+t+' xmlns="urn:schemas-microsoft.com:vml" class="rvml">')}}},t._engine.initWin(t._g.win),t._engine.create=function(){var e=t._getContainer.apply(0,arguments),r=e.container,i=e.height,n=e.width,a=e.x,s=e.y;if(!r)throw new Error("VML container not found.");var o=new t._Paper,l=o.canvas=t._g.doc.createElement("div"),h=l.style;return a=a||0,s=s||0,n=n||512,i=i||342,o.width=n,o.height=i,n==+n&&(n+="px"),i==+i&&(i+="px"),o.coordsize=216e5+c+216e5,o.coordorigin="0 0",o.span=t._g.doc.createElement("span"),o.span.style.cssText="position:absolute;left:-9999em;top:-9999em;padding:0;margin:0;line-height:1;",l.appendChild(o.span),h.cssText=t.format("top:0;left:0;width:{0};height:{1};display:inline-block;position:relative;clip:rect(0 {0} {1} 0);overflow:hidden",n,i),1==r?(t._g.doc.body.appendChild(l),h.left=a+"px",h.top=s+"px",h.position [all...] |
/plugin/jquery-syntax/ |
H A D | jquery-1.6.min.js | 16 …position");d==="static"&&(a.style.position="relative");var e=f(a),g=e.offset(),h=f.css(a,"top"),i=… property in bu
|
/plugin/amcharts/assets/amcharts/plugins/responsive/ |
H A D | responsive.min.js.map | 7 …,"maxWidth","minHeight","maxHeight","rotate","legendPosition","legend","position","overrides","gan…
|
/plugin/diagramsnet/lib/resources/ |
H A D | dia_ar.txt | 587 position=وضع
|
/plugin/pdfjs/pdfjs/build/ |
H A D | pdf.js | 15931 var position = this.getCanvasPosition(0, 0); 15934 left: position[0], 15935 top: position[1], 16114 var position = this.getCanvasPosition(0, -height); 16117 left: position[0], 16118 top: position[1], 16142 var position = this.getCanvasPosition(entry.x, entry.y); 16145 left: position[0], 16146 top: position[1],
|
/plugin/wysiwyg/fckeditor/editor/js/ |
H A D | fckeditorcode_ie.js | 33 …{A=document.createElement('DIV');A.id='___FCKHiddenDiv';var B=A.style;B.position='absolute';B.visi… 78 …rFrameStyles=FCKTools.SaveStyles(A);var H=FCKTools.GetViewPaneSize(C);B.position="absolute";B.zInd… 86 …'0';C.scrolling='no';C.width=C.height=0;FCKDomTools.SetElementStyles(C,{position:'absolute',zIndex… 96 …position='absolute';C.style.top='0px';var D=this.LineImg=C.appendChild(B.Document.createElement('I…
|
H A D | fckeditorcode_gecko.js | 37 …GetElementWindow(A);var E=null;while (A){var F=D.getComputedStyle(A,'').position;if (F&&F!='static… 77 …rFrameStyles=FCKTools.SaveStyles(A);var H=FCKTools.GetViewPaneSize(C);B.position="absolute";B.zInd… 85 …'0';C.scrolling='no';C.width=C.height=0;FCKDomTools.SetElementStyles(C,{position:'absolute',zIndex… 95 …position='absolute';C.style.top='0px';var D=this.LineImg=C.appendChild(B.Document.createElement('I…
|
/plugin/diagramsnet/lib/WEB-INF/lib/ |
H A D | httpclient-4.5.5.jar | META-INF/MANIFEST.MF
META-INF/
org/
org/apache/
org/ ... |
/plugin/yuriigantt/3rd/dhtmlxgantt/ |
H A D | dhtmlxgantt.js.map | 1 …position","wrapper","drag_progress","isReadonly","drag","markerPos","_render_task_progress","task_…
|
/plugin/dokumicrobugtracker/js/ |
H A D | jquery.dataTables.js | 3860 nScrollHead.style.position = "relative"; 6561 style.position = "absolute";
|
H A D | jquery.dataTables.min.js.gz |
|
H A D | jquery.dataTables.min.js | 70 …me=r.sScrollFootInner;if(a.oScroll.bAutoCss){c.style.overflow="hidden";c.style.position="relative"; 118 …height="200px";b.padding="0px";var c=p.createElement("div");b=c.style;b.position="absolute";b.top=…
|
/plugin/codemirror/dist/modes/ |
H A D | soy.min.js.map | 1 … (match) {\n // We don't use backUp because it backs up just the position, not the state.\n…
|
/plugin/dirtylittlehelper/mermaid/editor/docs/ |
H A D | 40.40.js.map | 1 …ery',\n 'point',\n 'polygon',\n 'popen',\n 'position',\n 'power…
|
/plugin/mdpage/vendor/cebe/markdown/tests/markdown-data/ |
H A D | specs.md | 736 To produce a literal asterisk or underscore at a position where it
|
/plugin/sequencediagram/bower_components/underscore/ |
H A D | underscore-min.map | 1 …lingContext","self","TypeError","bound","concat","partial","boundArgs","position","bindAll","Error…
|
/plugin/diagramsnet/lib/js/sanitizer/ |
H A D | sanitizer.min.js | 26 position:{cssPropBits:0,cssLitGroup:[J[23]],cssFns:[]},quotes:{cssPropBits:8,cssLitGroup:[J[71]],cs… class in L
|
/plugin/combo/resources/library/bootstrap/5.0.1/ |
H A D | bootstrap.min.js.map | 1 {"version":3,"sources":["../../js/src/dom/selector-engine.js","../../js/src/util/index.js","../../js/src/dom/data.js","../../js/src/dom/event-handler.js","../../js/src/base-component.js","../../js/src/alert.js","../../js/src/button.js","../../js/src/dom/manipulator.js","../../js/src/carousel.js","../../js/src/collapse.js","../../js/src/dropdown.js","../../js/src/util/scrollbar.js","../../js/src/util/backdrop.js","../../js/src/modal.js","../../js/src/offcanvas.js","../../js/src/util/sanitizer.js","../../js/src/tooltip.js","../../js/src/popover.js","../../js/src/scrollspy.js","../../js/src/tab.js","../../js/src/toast.js","../../js/index.umd.js"],"names":["SelectorEngine","find","selector","element","document","documentElement","concat","Element","prototype","querySelectorAll","call","findOne","querySelector","children","filter","child","matches","parents","ancestor","parentNode","nodeType","Node","ELEMENT_NODE","push","prev","previous","previousElementSibling","next","nextElementSibling","getUID","prefix","Math","floor","random","getElementById","getSelector","getAttribute","hrefAttr","includes","startsWith","split","trim","getSelectorFromElement","getElementFromSelector","getTransitionDurationFromElement","transitionDuration","transitionDelay","window","getComputedStyle","floatTransitionDuration","Number","parseFloat","floatTransitionDelay","triggerTransitionEnd","dispatchEvent","Event","isElement","obj","jquery","getElement","length","emulateTransitionEnd","duration","called","emulatedDuration","addEventListener","listener","removeEventListener","setTimeout","typeCheckConfig","componentName","config","configTypes","Object","keys","forEach","property","expectedTypes","value","valueType","toString","match","toLowerCase","RegExp","test","TypeError","toUpperCase","isVisible","style","elementStyle","parentNodeStyle","display","visibility","isDisabled","classList","contains","disabled","hasAttribute","findShadowRoot","attachShadow","getRootNode","root","ShadowRoot","noop","reflow","offsetHeight","getjQuery","jQuery","body","isRTL","dir","defineJQueryPlugin","plugin","callback","$","name","NAME","JQUERY_NO_CONFLICT","fn","jQueryInterface","Constructor","noConflict","readyState","execute","elementMap","Map","Data","set","key","instance","has","instanceMap","get","size","console","error","Array","from","remove","delete","namespaceRegex","stripNameRegex","stripUidRegex","eventRegistry","uidEvent","customEvents","mouseenter","mouseleave","customEventsRegex","nativeEvents","Set","getUidEvent","uid","getEvent","findHandler","events","handler","delegationSelector","uidEventList","i","len","event","originalHandler","normalizeParams","originalTypeEvent","delegationFn","delegation","typeEvent","getTypeEvent","addHandler","oneOff","wrapFn","relatedTarget","delegateTarget","this","handlers","previousFn","replace","domElements","target","EventHandler","off","type","apply","bootstrapDelegationHandler","bootstrapHandler","removeHandler","Boolean","on","one","inNamespace","isNamespace","elementEvent","namespace","storeElementEvent","handlerKey","removeNamespacedHandlers","slice","keyHandlers","trigger","args","isNative","jQueryEvent","bubbles","nativeDispatch","defaultPrevented","evt","isPropagationStopped","isImmediatePropagationStopped","isDefaultPrevented","createEvent","initEvent","CustomEvent","cancelable","defineProperty","preventDefault","BaseComponent","constructor","_element","DATA_KEY","dispose","EVENT_KEY","getOwnPropertyNames","propertyName","_queueCallback","isAnimated","[object Object]","VERSION","Error","Alert","close","rootElement","_getRootElement","customEvent","_triggerCloseEvent","_removeElement","closest","_destroyElement","removeChild","each","data","alertInstance","handleDismiss","Button","toggle","setAttribute","normalizeData","val","normalizeDataKey","chr","button","Manipulator","setDataAttribute","removeDataAttribute","removeAttribute","getDataAttributes","attributes","dataset","pureKey","charAt","getDataAttribute","offset","rect","getBoundingClientRect","top","scrollTop","left","scrollLeft","position","offsetTop","offsetLeft","Default","interval","keyboard","slide","pause","wrap","touch","DefaultType","ORDER_NEXT","ORDER_PREV","DIRECTION_LEFT","DIRECTION_RIGHT","Carousel","super","_items","_interval","_activeElement","_isPaused","_isSliding","touchTimeout","touchStartX","touchDeltaX","_config","_getConfig","_indicatorsElement","_touchSupported","navigator","maxTouchPoints","_pointerEvent","PointerEvent","_addEventListeners","_slide","nextWhenVisible","hidden","cycle","clearInterval","_updateInterval","setInterval","visibilityState","bind","to","index","activeIndex","_getItemIndex","order","_handleSwipe","absDeltax","abs","direction","_keydown","_addTouchEventListeners","start","pointerType","touches","clientX","move","end","clearTimeout","itemImg","e","add","tagName","indexOf","_getItemByOrder","activeElement","isNext","isPrev","lastItemIndex","itemIndex","_triggerSlideEvent","eventDirectionName","targetIndex","fromIndex","_setActiveIndicatorElement","activeIndicator","indicators","parseInt","elementInterval","defaultInterval","directionOrOrder","_directionToOrder","activeElementIndex","nextElement","nextElementIndex","isCycling","directionalClassName","orderClassName","_orderToDirection","triggerSlidEvent","completeCallBack","action","ride","carouselInterface","slideIndex","dataApiClickHandler","carousels","parent","Collapse","_isTransitioning","_triggerArray","id","toggleList","elem","filterElement","foundElem","_selector","_parent","_getParent","_addAriaAndCollapsedClass","hide","show","actives","activesData","container","tempActiveData","elemActive","collapseInterface","dimension","_getDimension","setTransitioning","scrollSize","triggerArrayLength","isTransitioning","selected","triggerArray","isOpen","triggerData","REGEXP_KEYDOWN","PLACEMENT_TOP","PLACEMENT_TOPEND","PLACEMENT_BOTTOM","PLACEMENT_BOTTOMEND","PLACEMENT_RIGHT","PLACEMENT_LEFT","boundary","reference","popperConfig","autoClose","Dropdown","_popper","_menu","_getMenuElement","_inNavbar","_detectNavbar","getParentFromElement","Popper","referenceElement","_getPopperConfig","isDisplayStatic","modifiers","modifier","enabled","createPopper","focus","_completeHide","destroy","update","_getPlacement","parentDropdown","isEnd","getPropertyValue","_getOffset","map","popperData","defaultBsPopperConfig","placement","options","_selectMenuItem","items","dropdownInterface","toggles","context","composedPath","isMenuTarget","clickEvent","isActive","stopPropagation","getToggleButton","clearMenus","getInstance","click","dataApiKeydownHandler","getWidth","documentWidth","clientWidth","innerWidth","width","_disableOverFlow","_setElementAttributes","calculatedValue","actualValue","overflow","styleProp","scrollbarWidth","reset","_resetElementAttributes","removeProperty","clickCallback","Backdrop","_isAppended","_append","_getElement","_emulateAnimation","backdrop","createElement","className","appendChild","backdropTransitionDuration","Modal","_dialog","_backdrop","_initializeBackDrop","_isShown","_ignoreBackdropClick","_isAnimated","showEvent","scrollBarHide","_adjustDialog","_setEscapeEvent","_setResizeEvent","_showBackdrop","_showElement","_hideModal","htmlElement","handleUpdate","modalBody","_enforceFocus","_triggerBackdropTransition","_resetAdjustments","scrollBarReset","currentTarget","isModalOverflowing","scrollHeight","clientHeight","overflowY","modalTransitionDuration","getScrollBarWidth","isBodyOverflowing","paddingLeft","paddingRight","scroll","Offcanvas","_enforceFocusOnElement","blur","undefined","allReadyOpen","el","uriAttrs","SAFE_URL_PATTERN","DATA_URL_PATTERN","allowedAttribute","attr","allowedAttributeList","attrName","nodeName","nodeValue","regExp","attrRegex","sanitizeHtml","unsafeHtml","allowList","sanitizeFn","createdDocument","DOMParser","parseFromString","allowlistKeys","elements","elName","attributeList","allowedAttributes","innerHTML","BSCLS_PREFIX_REGEX","DISALLOWED_ATTRIBUTES","animation","template","title","delay","html","fallbackPlacements","customClass","sanitize","AttachmentMap","AUTO","TOP","RIGHT","BOTTOM","LEFT","*","a","area","b","br","col","code","div","em","hr","h1","h2","h3","h4","h5","h6","img","li","ol","p","pre","s","small","span","sub","sup","strong","u","ul","HIDE","HIDDEN","SHOW","SHOWN","INSERTED","CLICK","FOCUSIN","FOCUSOUT","MOUSEENTER","MOUSELEAVE","Tooltip","_isEnabled","_timeout","_hoverState","_activeTrigger","tip","_setListeners","enable","disable","toggleEnabled","_initializeOnDelegatedTarget","_isWithActiveTrigger","_enter","_leave","getTipElement","_hideModalHandler","isWithContent","shadowRoot","isInTheDom","ownerDocument","tipId","setContent","attachment","_getAttachment","_addAttachmentClass","prevHoverState","_cleanTipClass","getTitle","setElementContent","content","textContent","updateAttachment","dataKey","_getDelegateConfig","phase","_handlePopperPlacementChange","onFirstUpdate","eventIn","eventOut","_fixTitle","originalTitleType","dataAttributes","dataAttr","tabClass","token","tClass","state","popper","Popover","_getContent","method","ScrollSpy","_scrollElement","_offsets","_targets","_activeTarget","_scrollHeight","_process","refresh","autoMethod","offsetMethod","offsetBase","_getScrollTop","_getScrollHeight","targetSelector","targetBCR","height","item","sort","pageYOffset","max","_getOffsetHeight","innerHeight","maxScroll","_activate","_clear","queries","link","join","listGroup","navItem","node","spy","Tab","listElement","itemSelector","hideEvent","complete","active","_transitionComplete","dropdownChild","dropdownElement","dropdown","autohide","Toast","_hasMouseInteraction","_hasKeyboardInteraction","_clearTimeout","_maybeScheduleHide","_onInteraction","isInteracting"],"mappings":"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","sourcesContent":["/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): dom/selector-engine.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NODE_TEXT = 3\n\nconst SelectorEngine = {\n find(selector, element = document.documentElement) {\n return [].concat(...Element.prototype.querySelectorAll.call(element, selector))\n },\n\n findOne(selector, element = document.documentElement) {\n return Element.prototype.querySelector.call(element, selector)\n },\n\n children(element, selector) {\n return [].concat(...element.children)\n .filter(child => child.matches(selector))\n },\n\n parents(element, selector) {\n const parents = []\n\n let ancestor = element.parentNode\n\n while (ancestor && ancestor.nodeType === Node.ELEMENT_NODE && ancestor.nodeType !== NODE_TEXT) {\n if (ancestor.matches(selector)) {\n parents.push(ancestor)\n }\n\n ancestor = ancestor.parentNode\n }\n\n return parents\n },\n\n prev(element, selector) {\n let previous = element.previousElementSibling\n\n while (previous) {\n if (previous.matches(selector)) {\n return [previous]\n }\n\n previous = previous.previousElementSibling\n }\n\n return []\n },\n\n next(element, selector) {\n let next = element.nextElementSibling\n\n while (next) {\n if (next.matches(selector)) {\n return [next]\n }\n\n next = next.nextElementSibling\n }\n\n return []\n }\n}\n\nexport default SelectorEngine\n","import SelectorEngine from '../dom/selector-engine'\n\n/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): util/index.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst MAX_UID = 1000000\nconst MILLISECONDS_MULTIPLIER = 1000\nconst TRANSITION_END = 'transitionend'\n\n// Shoutout AngusCroll (https://goo.gl/pxwQGp)\nconst toType = obj => {\n if (obj === null || obj === undefined) {\n return `${obj}`\n }\n\n return {}.toString.call(obj).match(/\\s([a-z]+)/i)[1].toLowerCase()\n}\n\n/**\n * --------------------------------------------------------------------------\n * Public Util Api\n * --------------------------------------------------------------------------\n */\n\nconst getUID = prefix => {\n do {\n prefix += Math.floor(Math.random() * MAX_UID)\n } while (document.getElementById(prefix))\n\n return prefix\n}\n\nconst getSelector = element => {\n let selector = element.getAttribute('data-bs-target')\n\n if (!selector || selector === '#') {\n let hrefAttr = element.getAttribute('href')\n\n // The only valid content that could double as a selector are IDs or classes,\n // so everything starting with `#` or `.`. If a \"real\" URL is used as the selector,\n // `document.querySelector` will rightfully complain it is invalid.\n // See https://github.com/twbs/bootstrap/issues/32273\n if (!hrefAttr || (!hrefAttr.includes('#') && !hrefAttr.startsWith('.'))) {\n return null\n }\n\n // Just in case some CMS puts out a full URL with the anchor appended\n if (hrefAttr.includes('#') && !hrefAttr.startsWith('#')) {\n hrefAttr = `#${hrefAttr.split('#')[1]}`\n }\n\n selector = hrefAttr && hrefAttr !== '#' ? hrefAttr.trim() : null\n }\n\n return selector\n}\n\nconst getSelectorFromElement = element => {\n const selector = getSelector(element)\n\n if (selector) {\n return document.querySelector(selector) ? selector : null\n }\n\n return null\n}\n\nconst getElementFromSelector = element => {\n const selector = getSelector(element)\n\n return selector ? document.querySelector(selector) : null\n}\n\nconst getTransitionDurationFromElement = element => {\n if (!element) {\n return 0\n }\n\n // Get transition-duration of the element\n let { transitionDuration, transitionDelay } = window.getComputedStyle(element)\n\n const floatTransitionDuration = Number.parseFloat(transitionDuration)\n const floatTransitionDelay = Number.parseFloat(transitionDelay)\n\n // Return 0 if element or transition duration is not found\n if (!floatTransitionDuration && !floatTransitionDelay) {\n return 0\n }\n\n // If multiple durations are defined, take the first\n transitionDuration = transitionDuration.split(',')[0]\n transitionDelay = transitionDelay.split(',')[0]\n\n return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER\n}\n\nconst triggerTransitionEnd = element => {\n element.dispatchEvent(new Event(TRANSITION_END))\n}\n\nconst isElement = obj => {\n if (!obj || typeof obj !== 'object') {\n return false\n }\n\n if (typeof obj.jquery !== 'undefined') {\n obj = obj[0]\n }\n\n return typeof obj.nodeType !== 'undefined'\n}\n\nconst getElement = obj => {\n if (isElement(obj)) { // it's a jQuery object or a node element\n return obj.jquery ? obj[0] : obj\n }\n\n if (typeof obj === 'string' && obj.length > 0) {\n return SelectorEngine.findOne(obj)\n }\n\n return null\n}\n\nconst emulateTransitionEnd = (element, duration) => {\n let called = false\n const durationPadding = 5\n const emulatedDuration = duration + durationPadding\n\n function listener() {\n called = true\n element.removeEventListener(TRANSITION_END, listener)\n }\n\n element.addEventListener(TRANSITION_END, listener)\n setTimeout(() => {\n if (!called) {\n triggerTransitionEnd(element)\n }\n }, emulatedDuration)\n}\n\nconst typeCheckConfig = (componentName, config, configTypes) => {\n Object.keys(configTypes).forEach(property => {\n const expectedTypes = configTypes[property]\n const value = config[property]\n const valueType = value && isElement(value) ? 'element' : toType(value)\n\n if (!new RegExp(expectedTypes).test(valueType)) {\n throw new TypeError(\n `${componentName.toUpperCase()}: Option \"${property}\" provided type \"${valueType}\" but expected type \"${expectedTypes}\".`\n )\n }\n })\n}\n\nconst isVisible = element => {\n if (!element) {\n return false\n }\n\n if (element.style && element.parentNode && element.parentNode.style) {\n const elementStyle = getComputedStyle(element)\n const parentNodeStyle = getComputedStyle(element.parentNode)\n\n return elementStyle.display !== 'none' &&\n parentNodeStyle.display !== 'none' &&\n elementStyle.visibility !== 'hidden'\n }\n\n return false\n}\n\nconst isDisabled = element => {\n if (!element || element.nodeType !== Node.ELEMENT_NODE) {\n return true\n }\n\n if (element.classList.contains('disabled')) {\n return true\n }\n\n if (typeof element.disabled !== 'undefined') {\n return element.disabled\n }\n\n return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false'\n}\n\nconst findShadowRoot = element => {\n if (!document.documentElement.attachShadow) {\n return null\n }\n\n // Can find the shadow root otherwise it'll return the document\n if (typeof element.getRootNode === 'function') {\n const root = element.getRootNode()\n return root instanceof ShadowRoot ? root : null\n }\n\n if (element instanceof ShadowRoot) {\n return element\n }\n\n // when we don't find a shadow root\n if (!element.parentNode) {\n return null\n }\n\n return findShadowRoot(element.parentNode)\n}\n\nconst noop = () => {}\n\nconst reflow = element => element.offsetHeight\n\nconst getjQuery = () => {\n const { jQuery } = window\n\n if (jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {\n return jQuery\n }\n\n return null\n}\n\nconst onDOMContentLoaded = callback => {\n if (document.readyState === 'loading') {\n document.addEventListener('DOMContentLoaded', callback)\n } else {\n callback()\n }\n}\n\nconst isRTL = () => document.documentElement.dir === 'rtl'\n\nconst defineJQueryPlugin = plugin => {\n onDOMContentLoaded(() => {\n const $ = getjQuery()\n /* istanbul ignore if */\n if ($) {\n const name = plugin.NAME\n const JQUERY_NO_CONFLICT = $.fn[name]\n $.fn[name] = plugin.jQueryInterface\n $.fn[name].Constructor = plugin\n $.fn[name].noConflict = () => {\n $.fn[name] = JQUERY_NO_CONFLICT\n return plugin.jQueryInterface\n }\n }\n })\n}\n\nconst execute = callback => {\n if (typeof callback === 'function') {\n callback()\n }\n}\n\nexport {\n getElement,\n getUID,\n getSelectorFromElement,\n getElementFromSelector,\n getTransitionDurationFromElement,\n triggerTransitionEnd,\n isElement,\n emulateTransitionEnd,\n typeCheckConfig,\n isVisible,\n isDisabled,\n findShadowRoot,\n noop,\n reflow,\n getjQuery,\n onDOMContentLoaded,\n isRTL,\n defineJQueryPlugin,\n execute\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): dom/data.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst elementMap = new Map()\n\nexport default {\n set(element, key, instance) {\n if (!elementMap.has(element)) {\n elementMap.set(element, new Map())\n }\n\n const instanceMap = elementMap.get(element)\n\n // make it clear we only want one instance per element\n // can be removed later when multiple key/instances are fine to be used\n if (!instanceMap.has(key) && instanceMap.size !== 0) {\n // eslint-disable-next-line no-console\n console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`)\n return\n }\n\n instanceMap.set(key, instance)\n },\n\n get(element, key) {\n if (elementMap.has(element)) {\n return elementMap.get(element).get(key) || null\n }\n\n return null\n },\n\n remove(element, key) {\n if (!elementMap.has(element)) {\n return\n }\n\n const instanceMap = elementMap.get(element)\n\n instanceMap.delete(key)\n\n // free up element references if there are no instances left for an element\n if (instanceMap.size === 0) {\n elementMap.delete(element)\n }\n }\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): dom/event-handler.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { getjQuery } from '../util/index'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst namespaceRegex = /[^.]*(?=\\..*)\\.|.*/\nconst stripNameRegex = /\\..*/\nconst stripUidRegex = /::\\d+$/\nconst eventRegistry = {} // Events storage\nlet uidEvent = 1\nconst customEvents = {\n mouseenter: 'mouseover',\n mouseleave: 'mouseout'\n}\nconst customEventsRegex = /^(mouseenter|mouseleave)/i\nconst nativeEvents = new Set([\n 'click',\n 'dblclick',\n 'mouseup',\n 'mousedown',\n 'contextmenu',\n 'mousewheel',\n 'DOMMouseScroll',\n 'mouseover',\n 'mouseout',\n 'mousemove',\n 'selectstart',\n 'selectend',\n 'keydown',\n 'keypress',\n 'keyup',\n 'orientationchange',\n 'touchstart',\n 'touchmove',\n 'touchend',\n 'touchcancel',\n 'pointerdown',\n 'pointermove',\n 'pointerup',\n 'pointerleave',\n 'pointercancel',\n 'gesturestart',\n 'gesturechange',\n 'gestureend',\n 'focus',\n 'blur',\n 'change',\n 'reset',\n 'select',\n 'submit',\n 'focusin',\n 'focusout',\n 'load',\n 'unload',\n 'beforeunload',\n 'resize',\n 'move',\n 'DOMContentLoaded',\n 'readystatechange',\n 'error',\n 'abort',\n 'scroll'\n])\n\n/**\n * ------------------------------------------------------------------------\n * Private methods\n * ------------------------------------------------------------------------\n */\n\nfunction getUidEvent(element, uid) {\n return (uid && `${uid}::${uidEvent++}`) || element.uidEvent || uidEvent++\n}\n\nfunction getEvent(element) {\n const uid = getUidEvent(element)\n\n element.uidEvent = uid\n eventRegistry[uid] = eventRegistry[uid] || {}\n\n return eventRegistry[uid]\n}\n\nfunction bootstrapHandler(element, fn) {\n return function handler(event) {\n event.delegateTarget = element\n\n if (handler.oneOff) {\n EventHandler.off(element, event.type, fn)\n }\n\n return fn.apply(element, [event])\n }\n}\n\nfunction bootstrapDelegationHandler(element, selector, fn) {\n return function handler(event) {\n const domElements = element.querySelectorAll(selector)\n\n for (let { target } = event; target && target !== this; target = target.parentNode) {\n for (let i = domElements.length; i--;) {\n if (domElements[i] === target) {\n event.delegateTarget = target\n\n if (handler.oneOff) {\n // eslint-disable-next-line unicorn/consistent-destructuring\n EventHandler.off(element, event.type, selector, fn)\n }\n\n return fn.apply(target, [event])\n }\n }\n }\n\n // To please ESLint\n return null\n }\n}\n\nfunction findHandler(events, handler, delegationSelector = null) {\n const uidEventList = Object.keys(events)\n\n for (let i = 0, len = uidEventList.length; i < len; i++) {\n const event = events[uidEventList[i]]\n\n if (event.originalHandler === handler && event.delegationSelector === delegationSelector) {\n return event\n }\n }\n\n return null\n}\n\nfunction normalizeParams(originalTypeEvent, handler, delegationFn) {\n const delegation = typeof handler === 'string'\n const originalHandler = delegation ? delegationFn : handler\n\n let typeEvent = getTypeEvent(originalTypeEvent)\n const isNative = nativeEvents.has(typeEvent)\n\n if (!isNative) {\n typeEvent = originalTypeEvent\n }\n\n return [delegation, originalHandler, typeEvent]\n}\n\nfunction addHandler(element, originalTypeEvent, handler, delegationFn, oneOff) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n if (!handler) {\n handler = delegationFn\n delegationFn = null\n }\n\n // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position\n // this prevents the handler from being dispatched the same way as mouseover or mouseout does\n if (customEventsRegex.test(originalTypeEvent)) {\n const wrapFn = fn => {\n return function (event) {\n if (!event.relatedTarget || (event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget))) {\n return fn.call(this, event)\n }\n }\n }\n\n if (delegationFn) {\n delegationFn = wrapFn(delegationFn)\n } else {\n handler = wrapFn(handler)\n }\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const events = getEvent(element)\n const handlers = events[typeEvent] || (events[typeEvent] = {})\n const previousFn = findHandler(handlers, originalHandler, delegation ? handler : null)\n\n if (previousFn) {\n previousFn.oneOff = previousFn.oneOff && oneOff\n\n return\n }\n\n const uid = getUidEvent(originalHandler, originalTypeEvent.replace(namespaceRegex, ''))\n const fn = delegation ?\n bootstrapDelegationHandler(element, handler, delegationFn) :\n bootstrapHandler(element, handler)\n\n fn.delegationSelector = delegation ? handler : null\n fn.originalHandler = originalHandler\n fn.oneOff = oneOff\n fn.uidEvent = uid\n handlers[uid] = fn\n\n element.addEventListener(typeEvent, fn, delegation)\n}\n\nfunction removeHandler(element, events, typeEvent, handler, delegationSelector) {\n const fn = findHandler(events[typeEvent], handler, delegationSelector)\n\n if (!fn) {\n return\n }\n\n element.removeEventListener(typeEvent, fn, Boolean(delegationSelector))\n delete events[typeEvent][fn.uidEvent]\n}\n\nfunction removeNamespacedHandlers(element, events, typeEvent, namespace) {\n const storeElementEvent = events[typeEvent] || {}\n\n Object.keys(storeElementEvent).forEach(handlerKey => {\n if (handlerKey.includes(namespace)) {\n const event = storeElementEvent[handlerKey]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n}\n\nfunction getTypeEvent(event) {\n // allow to get the native events from namespaced events ('click.bs.button' --> 'click')\n event = event.replace(stripNameRegex, '')\n return customEvents[event] || event\n}\n\nconst EventHandler = {\n on(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, false)\n },\n\n one(element, event, handler, delegationFn) {\n addHandler(element, event, handler, delegationFn, true)\n },\n\n off(element, originalTypeEvent, handler, delegationFn) {\n if (typeof originalTypeEvent !== 'string' || !element) {\n return\n }\n\n const [delegation, originalHandler, typeEvent] = normalizeParams(originalTypeEvent, handler, delegationFn)\n const inNamespace = typeEvent !== originalTypeEvent\n const events = getEvent(element)\n const isNamespace = originalTypeEvent.startsWith('.')\n\n if (typeof originalHandler !== 'undefined') {\n // Simplest case: handler is passed, remove that listener ONLY.\n if (!events || !events[typeEvent]) {\n return\n }\n\n removeHandler(element, events, typeEvent, originalHandler, delegation ? handler : null)\n return\n }\n\n if (isNamespace) {\n Object.keys(events).forEach(elementEvent => {\n removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1))\n })\n }\n\n const storeElementEvent = events[typeEvent] || {}\n Object.keys(storeElementEvent).forEach(keyHandlers => {\n const handlerKey = keyHandlers.replace(stripUidRegex, '')\n\n if (!inNamespace || originalTypeEvent.includes(handlerKey)) {\n const event = storeElementEvent[keyHandlers]\n\n removeHandler(element, events, typeEvent, event.originalHandler, event.delegationSelector)\n }\n })\n },\n\n trigger(element, event, args) {\n if (typeof event !== 'string' || !element) {\n return null\n }\n\n const $ = getjQuery()\n const typeEvent = getTypeEvent(event)\n const inNamespace = event !== typeEvent\n const isNative = nativeEvents.has(typeEvent)\n\n let jQueryEvent\n let bubbles = true\n let nativeDispatch = true\n let defaultPrevented = false\n let evt = null\n\n if (inNamespace && $) {\n jQueryEvent = $.Event(event, args)\n\n $(element).trigger(jQueryEvent)\n bubbles = !jQueryEvent.isPropagationStopped()\n nativeDispatch = !jQueryEvent.isImmediatePropagationStopped()\n defaultPrevented = jQueryEvent.isDefaultPrevented()\n }\n\n if (isNative) {\n evt = document.createEvent('HTMLEvents')\n evt.initEvent(typeEvent, bubbles, true)\n } else {\n evt = new CustomEvent(event, {\n bubbles,\n cancelable: true\n })\n }\n\n // merge custom information in our event\n if (typeof args !== 'undefined') {\n Object.keys(args).forEach(key => {\n Object.defineProperty(evt, key, {\n get() {\n return args[key]\n }\n })\n })\n }\n\n if (defaultPrevented) {\n evt.preventDefault()\n }\n\n if (nativeDispatch) {\n element.dispatchEvent(evt)\n }\n\n if (evt.defaultPrevented && typeof jQueryEvent !== 'undefined') {\n jQueryEvent.preventDefault()\n }\n\n return evt\n }\n}\n\nexport default EventHandler\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): base-component.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport Data from './dom/data'\nimport {\n emulateTransitionEnd,\n execute,\n getElement,\n getTransitionDurationFromElement\n} from './util/index'\nimport EventHandler from './dom/event-handler'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst VERSION = '5.0.1'\n\nclass BaseComponent {\n constructor(element) {\n element = getElement(element)\n\n if (!element) {\n return\n }\n\n this._element = element\n Data.set(this._element, this.constructor.DATA_KEY, this)\n }\n\n dispose() {\n Data.remove(this._element, this.constructor.DATA_KEY)\n EventHandler.off(this._element, this.constructor.EVENT_KEY)\n\n Object.getOwnPropertyNames(this).forEach(propertyName => {\n this[propertyName] = null\n })\n }\n\n _queueCallback(callback, element, isAnimated = true) {\n if (!isAnimated) {\n execute(callback)\n return\n }\n\n const transitionDuration = getTransitionDurationFromElement(element)\n EventHandler.one(element, 'transitionend', () => execute(callback))\n\n emulateTransitionEnd(element, transitionDuration)\n }\n\n /** Static */\n\n static getInstance(element) {\n return Data.get(element, this.DATA_KEY)\n }\n\n static get VERSION() {\n return VERSION\n }\n\n static get NAME() {\n throw new Error('You have to implement the static method \"NAME\", for each component!')\n }\n\n static get DATA_KEY() {\n return `bs.${this.NAME}`\n }\n\n static get EVENT_KEY() {\n return `.${this.DATA_KEY}`\n }\n}\n\nexport default BaseComponent\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): alert.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'alert'\nconst DATA_KEY = 'bs.alert'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst SELECTOR_DISMISS = '[data-bs-dismiss=\"alert\"]'\n\nconst EVENT_CLOSE = `close${EVENT_KEY}`\nconst EVENT_CLOSED = `closed${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_ALERT = 'alert'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Alert extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n close(element) {\n const rootElement = element ? this._getRootElement(element) : this._element\n const customEvent = this._triggerCloseEvent(rootElement)\n\n if (customEvent === null || customEvent.defaultPrevented) {\n return\n }\n\n this._removeElement(rootElement)\n }\n\n // Private\n\n _getRootElement(element) {\n return getElementFromSelector(element) || element.closest(`.${CLASS_NAME_ALERT}`)\n }\n\n _triggerCloseEvent(element) {\n return EventHandler.trigger(element, EVENT_CLOSE)\n }\n\n _removeElement(element) {\n element.classList.remove(CLASS_NAME_SHOW)\n\n const isAnimated = element.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(() => this._destroyElement(element), element, isAnimated)\n }\n\n _destroyElement(element) {\n if (element.parentNode) {\n element.parentNode.removeChild(element)\n }\n\n EventHandler.trigger(element, EVENT_CLOSED)\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.get(this, DATA_KEY)\n\n if (!data) {\n data = new Alert(this)\n }\n\n if (config === 'close') {\n data[config](this)\n }\n })\n }\n\n static handleDismiss(alertInstance) {\n return function (event) {\n if (event) {\n event.preventDefault()\n }\n\n alertInstance.close(this)\n }\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DISMISS, Alert.handleDismiss(new Alert()))\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Alert to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Alert)\n\nexport default Alert\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): button.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'button'\nconst DATA_KEY = 'bs.button'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"button\"]'\n\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Button extends BaseComponent {\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method\n this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.get(this, DATA_KEY)\n\n if (!data) {\n data = new Button(this)\n }\n\n if (config === 'toggle') {\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, event => {\n event.preventDefault()\n\n const button = event.target.closest(SELECTOR_DATA_TOGGLE)\n\n let data = Data.get(button, DATA_KEY)\n if (!data) {\n data = new Button(button)\n }\n\n data.toggle()\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Button to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Button)\n\nexport default Button\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): dom/manipulator.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nfunction normalizeData(val) {\n if (val === 'true') {\n return true\n }\n\n if (val === 'false') {\n return false\n }\n\n if (val === Number(val).toString()) {\n return Number(val)\n }\n\n if (val === '' || val === 'null') {\n return null\n }\n\n return val\n}\n\nfunction normalizeDataKey(key) {\n return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`)\n}\n\nconst Manipulator = {\n setDataAttribute(element, key, value) {\n element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value)\n },\n\n removeDataAttribute(element, key) {\n element.removeAttribute(`data-bs-${normalizeDataKey(key)}`)\n },\n\n getDataAttributes(element) {\n if (!element) {\n return {}\n }\n\n const attributes = {}\n\n Object.keys(element.dataset)\n .filter(key => key.startsWith('bs'))\n .forEach(key => {\n let pureKey = key.replace(/^bs/, '')\n pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length)\n attributes[pureKey] = normalizeData(element.dataset[key])\n })\n\n return attributes\n },\n\n getDataAttribute(element, key) {\n return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`))\n },\n\n offset(element) {\n const rect = element.getBoundingClientRect()\n\n return {\n top: rect.top + document.body.scrollTop,\n left: rect.left + document.body.scrollLeft\n }\n },\n\n position(element) {\n return {\n top: element.offsetTop,\n left: element.offsetLeft\n }\n }\n}\n\nexport default Manipulator\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): carousel.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isRTL,\n isVisible,\n reflow,\n triggerTransitionEnd,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'carousel'\nconst DATA_KEY = 'bs.carousel'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ARROW_LEFT_KEY = 'ArrowLeft'\nconst ARROW_RIGHT_KEY = 'ArrowRight'\nconst TOUCHEVENT_COMPAT_WAIT = 500 // Time for mouse compat events to fire after touch\nconst SWIPE_THRESHOLD = 40\n\nconst Default = {\n interval: 5000,\n keyboard: true,\n slide: false,\n pause: 'hover',\n wrap: true,\n touch: true\n}\n\nconst DefaultType = {\n interval: '(number|boolean)',\n keyboard: 'boolean',\n slide: '(boolean|string)',\n pause: '(string|boolean)',\n wrap: 'boolean',\n touch: 'boolean'\n}\n\nconst ORDER_NEXT = 'next'\nconst ORDER_PREV = 'prev'\nconst DIRECTION_LEFT = 'left'\nconst DIRECTION_RIGHT = 'right'\n\nconst EVENT_SLIDE = `slide${EVENT_KEY}`\nconst EVENT_SLID = `slid${EVENT_KEY}`\nconst EVENT_KEYDOWN = `keydown${EVENT_KEY}`\nconst EVENT_MOUSEENTER = `mouseenter${EVENT_KEY}`\nconst EVENT_MOUSELEAVE = `mouseleave${EVENT_KEY}`\nconst EVENT_TOUCHSTART = `touchstart${EVENT_KEY}`\nconst EVENT_TOUCHMOVE = `touchmove${EVENT_KEY}`\nconst EVENT_TOUCHEND = `touchend${EVENT_KEY}`\nconst EVENT_POINTERDOWN = `pointerdown${EVENT_KEY}`\nconst EVENT_POINTERUP = `pointerup${EVENT_KEY}`\nconst EVENT_DRAG_START = `dragstart${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_CAROUSEL = 'carousel'\nconst CLASS_NAME_ACTIVE = 'active'\nconst CLASS_NAME_SLIDE = 'slide'\nconst CLASS_NAME_END = 'carousel-item-end'\nconst CLASS_NAME_START = 'carousel-item-start'\nconst CLASS_NAME_NEXT = 'carousel-item-next'\nconst CLASS_NAME_PREV = 'carousel-item-prev'\nconst CLASS_NAME_POINTER_EVENT = 'pointer-event'\n\nconst SELECTOR_ACTIVE = '.active'\nconst SELECTOR_ACTIVE_ITEM = '.active.carousel-item'\nconst SELECTOR_ITEM = '.carousel-item'\nconst SELECTOR_ITEM_IMG = '.carousel-item img'\nconst SELECTOR_NEXT_PREV = '.carousel-item-next, .carousel-item-prev'\nconst SELECTOR_INDICATORS = '.carousel-indicators'\nconst SELECTOR_INDICATOR = '[data-bs-target]'\nconst SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]'\nconst SELECTOR_DATA_RIDE = '[data-bs-ride=\"carousel\"]'\n\nconst POINTER_TYPE_TOUCH = 'touch'\nconst POINTER_TYPE_PEN = 'pen'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\nclass Carousel extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._items = null\n this._interval = null\n this._activeElement = null\n this._isPaused = false\n this._isSliding = false\n this.touchTimeout = null\n this.touchStartX = 0\n this.touchDeltaX = 0\n\n this._config = this._getConfig(config)\n this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element)\n this._touchSupported = 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0\n this._pointerEvent = Boolean(window.PointerEvent)\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n next() {\n if (!this._isSliding) {\n this._slide(ORDER_NEXT)\n }\n }\n\n nextWhenVisible() {\n // Don't call next when the page isn't visible\n // or the carousel or its parent isn't visible\n if (!document.hidden && isVisible(this._element)) {\n this.next()\n }\n }\n\n prev() {\n if (!this._isSliding) {\n this._slide(ORDER_PREV)\n }\n }\n\n pause(event) {\n if (!event) {\n this._isPaused = true\n }\n\n if (SelectorEngine.findOne(SELECTOR_NEXT_PREV, this._element)) {\n triggerTransitionEnd(this._element)\n this.cycle(true)\n }\n\n clearInterval(this._interval)\n this._interval = null\n }\n\n cycle(event) {\n if (!event) {\n this._isPaused = false\n }\n\n if (this._interval) {\n clearInterval(this._interval)\n this._interval = null\n }\n\n if (this._config && this._config.interval && !this._isPaused) {\n this._updateInterval()\n\n this._interval = setInterval(\n (document.visibilityState ? this.nextWhenVisible : this.next).bind(this),\n this._config.interval\n )\n }\n }\n\n to(index) {\n this._activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeIndex = this._getItemIndex(this._activeElement)\n\n if (index > this._items.length - 1 || index < 0) {\n return\n }\n\n if (this._isSliding) {\n EventHandler.one(this._element, EVENT_SLID, () => this.to(index))\n return\n }\n\n if (activeIndex === index) {\n this.pause()\n this.cycle()\n return\n }\n\n const order = index > activeIndex ?\n ORDER_NEXT :\n ORDER_PREV\n\n this._slide(order, this._items[index])\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _handleSwipe() {\n const absDeltax = Math.abs(this.touchDeltaX)\n\n if (absDeltax <= SWIPE_THRESHOLD) {\n return\n }\n\n const direction = absDeltax / this.touchDeltaX\n\n this.touchDeltaX = 0\n\n if (!direction) {\n return\n }\n\n this._slide(direction > 0 ? DIRECTION_RIGHT : DIRECTION_LEFT)\n }\n\n _addEventListeners() {\n if (this._config.keyboard) {\n EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event))\n }\n\n if (this._config.pause === 'hover') {\n EventHandler.on(this._element, EVENT_MOUSEENTER, event => this.pause(event))\n EventHandler.on(this._element, EVENT_MOUSELEAVE, event => this.cycle(event))\n }\n\n if (this._config.touch && this._touchSupported) {\n this._addTouchEventListeners()\n }\n }\n\n _addTouchEventListeners() {\n const start = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchStartX = event.clientX\n } else if (!this._pointerEvent) {\n this.touchStartX = event.touches[0].clientX\n }\n }\n\n const move = event => {\n // ensure swiping with one touch and not pinching\n this.touchDeltaX = event.touches && event.touches.length > 1 ?\n 0 :\n event.touches[0].clientX - this.touchStartX\n }\n\n const end = event => {\n if (this._pointerEvent && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH)) {\n this.touchDeltaX = event.clientX - this.touchStartX\n }\n\n this._handleSwipe()\n if (this._config.pause === 'hover') {\n // If it's a touch-enabled device, mouseenter/leave are fired as\n // part of the mouse compatibility events on first tap - the carousel\n // would stop cycling until user tapped out of it;\n // here, we listen for touchend, explicitly pause the carousel\n // (as if it's the second time we tap on it, mouseenter compat event\n // is NOT fired) and after a timeout (to allow for mouse compatibility\n // events to fire) we explicitly restart cycling\n\n this.pause()\n if (this.touchTimeout) {\n clearTimeout(this.touchTimeout)\n }\n\n this.touchTimeout = setTimeout(event => this.cycle(event), TOUCHEVENT_COMPAT_WAIT + this._config.interval)\n }\n }\n\n SelectorEngine.find(SELECTOR_ITEM_IMG, this._element).forEach(itemImg => {\n EventHandler.on(itemImg, EVENT_DRAG_START, e => e.preventDefault())\n })\n\n if (this._pointerEvent) {\n EventHandler.on(this._element, EVENT_POINTERDOWN, event => start(event))\n EventHandler.on(this._element, EVENT_POINTERUP, event => end(event))\n\n this._element.classList.add(CLASS_NAME_POINTER_EVENT)\n } else {\n EventHandler.on(this._element, EVENT_TOUCHSTART, event => start(event))\n EventHandler.on(this._element, EVENT_TOUCHMOVE, event => move(event))\n EventHandler.on(this._element, EVENT_TOUCHEND, event => end(event))\n }\n }\n\n _keydown(event) {\n if (/input|textarea/i.test(event.target.tagName)) {\n return\n }\n\n if (event.key === ARROW_LEFT_KEY) {\n event.preventDefault()\n this._slide(DIRECTION_RIGHT)\n } else if (event.key === ARROW_RIGHT_KEY) {\n event.preventDefault()\n this._slide(DIRECTION_LEFT)\n }\n }\n\n _getItemIndex(element) {\n this._items = element && element.parentNode ?\n SelectorEngine.find(SELECTOR_ITEM, element.parentNode) :\n []\n\n return this._items.indexOf(element)\n }\n\n _getItemByOrder(order, activeElement) {\n const isNext = order === ORDER_NEXT\n const isPrev = order === ORDER_PREV\n const activeIndex = this._getItemIndex(activeElement)\n const lastItemIndex = this._items.length - 1\n const isGoingToWrap = (isPrev && activeIndex === 0) || (isNext && activeIndex === lastItemIndex)\n\n if (isGoingToWrap && !this._config.wrap) {\n return activeElement\n }\n\n const delta = isPrev ? -1 : 1\n const itemIndex = (activeIndex + delta) % this._items.length\n\n return itemIndex === -1 ?\n this._items[this._items.length - 1] :\n this._items[itemIndex]\n }\n\n _triggerSlideEvent(relatedTarget, eventDirectionName) {\n const targetIndex = this._getItemIndex(relatedTarget)\n const fromIndex = this._getItemIndex(SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element))\n\n return EventHandler.trigger(this._element, EVENT_SLIDE, {\n relatedTarget,\n direction: eventDirectionName,\n from: fromIndex,\n to: targetIndex\n })\n }\n\n _setActiveIndicatorElement(element) {\n if (this._indicatorsElement) {\n const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement)\n\n activeIndicator.classList.remove(CLASS_NAME_ACTIVE)\n activeIndicator.removeAttribute('aria-current')\n\n const indicators = SelectorEngine.find(SELECTOR_INDICATOR, this._indicatorsElement)\n\n for (let i = 0; i < indicators.length; i++) {\n if (Number.parseInt(indicators[i].getAttribute('data-bs-slide-to'), 10) === this._getItemIndex(element)) {\n indicators[i].classList.add(CLASS_NAME_ACTIVE)\n indicators[i].setAttribute('aria-current', 'true')\n break\n }\n }\n }\n }\n\n _updateInterval() {\n const element = this._activeElement || SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n\n if (!element) {\n return\n }\n\n const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10)\n\n if (elementInterval) {\n this._config.defaultInterval = this._config.defaultInterval || this._config.interval\n this._config.interval = elementInterval\n } else {\n this._config.interval = this._config.defaultInterval || this._config.interval\n }\n }\n\n _slide(directionOrOrder, element) {\n const order = this._directionToOrder(directionOrOrder)\n const activeElement = SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element)\n const activeElementIndex = this._getItemIndex(activeElement)\n const nextElement = element || this._getItemByOrder(order, activeElement)\n\n const nextElementIndex = this._getItemIndex(nextElement)\n const isCycling = Boolean(this._interval)\n\n const isNext = order === ORDER_NEXT\n const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END\n const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV\n const eventDirectionName = this._orderToDirection(order)\n\n if (nextElement && nextElement.classList.contains(CLASS_NAME_ACTIVE)) {\n this._isSliding = false\n return\n }\n\n const slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName)\n if (slideEvent.defaultPrevented) {\n return\n }\n\n if (!activeElement || !nextElement) {\n // Some weirdness is happening, so we bail\n return\n }\n\n this._isSliding = true\n\n if (isCycling) {\n this.pause()\n }\n\n this._setActiveIndicatorElement(nextElement)\n this._activeElement = nextElement\n\n const triggerSlidEvent = () => {\n EventHandler.trigger(this._element, EVENT_SLID, {\n relatedTarget: nextElement,\n direction: eventDirectionName,\n from: activeElementIndex,\n to: nextElementIndex\n })\n }\n\n if (this._element.classList.contains(CLASS_NAME_SLIDE)) {\n nextElement.classList.add(orderClassName)\n\n reflow(nextElement)\n\n activeElement.classList.add(directionalClassName)\n nextElement.classList.add(directionalClassName)\n\n const completeCallBack = () => {\n nextElement.classList.remove(directionalClassName, orderClassName)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n activeElement.classList.remove(CLASS_NAME_ACTIVE, orderClassName, directionalClassName)\n\n this._isSliding = false\n\n setTimeout(triggerSlidEvent, 0)\n }\n\n this._queueCallback(completeCallBack, activeElement, true)\n } else {\n activeElement.classList.remove(CLASS_NAME_ACTIVE)\n nextElement.classList.add(CLASS_NAME_ACTIVE)\n\n this._isSliding = false\n triggerSlidEvent()\n }\n\n if (isCycling) {\n this.cycle()\n }\n }\n\n _directionToOrder(direction) {\n if (![DIRECTION_RIGHT, DIRECTION_LEFT].includes(direction)) {\n return direction\n }\n\n if (isRTL()) {\n return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT\n }\n\n return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV\n }\n\n _orderToDirection(order) {\n if (![ORDER_NEXT, ORDER_PREV].includes(order)) {\n return order\n }\n\n if (isRTL()) {\n return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT\n }\n\n return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT\n }\n\n // Static\n\n static carouselInterface(element, config) {\n let data = Data.get(element, DATA_KEY)\n let _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element)\n }\n\n if (typeof config === 'object') {\n _config = {\n ..._config,\n ...config\n }\n }\n\n const action = typeof config === 'string' ? config : _config.slide\n\n if (!data) {\n data = new Carousel(element, _config)\n }\n\n if (typeof config === 'number') {\n data.to(config)\n } else if (typeof action === 'string') {\n if (typeof data[action] === 'undefined') {\n throw new TypeError(`No method named \"${action}\"`)\n }\n\n data[action]()\n } else if (_config.interval && _config.ride) {\n data.pause()\n data.cycle()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Carousel.carouselInterface(this, config)\n })\n }\n\n static dataApiClickHandler(event) {\n const target = getElementFromSelector(this)\n\n if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {\n return\n }\n\n const config = {\n ...Manipulator.getDataAttributes(target),\n ...Manipulator.getDataAttributes(this)\n }\n const slideIndex = this.getAttribute('data-bs-slide-to')\n\n if (slideIndex) {\n config.interval = false\n }\n\n Carousel.carouselInterface(target, config)\n\n if (slideIndex) {\n Data.get(target, DATA_KEY).to(slideIndex)\n }\n\n event.preventDefault()\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_SLIDE, Carousel.dataApiClickHandler)\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE)\n\n for (let i = 0, len = carousels.length; i < len; i++) {\n Carousel.carouselInterface(carousels[i], Data.get(carousels[i], DATA_KEY))\n }\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Carousel to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Carousel)\n\nexport default Carousel\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): collapse.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElement,\n getSelectorFromElement,\n getElementFromSelector,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'collapse'\nconst DATA_KEY = 'bs.collapse'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n toggle: true,\n parent: ''\n}\n\nconst DefaultType = {\n toggle: 'boolean',\n parent: '(string|element)'\n}\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_COLLAPSE = 'collapse'\nconst CLASS_NAME_COLLAPSING = 'collapsing'\nconst CLASS_NAME_COLLAPSED = 'collapsed'\n\nconst WIDTH = 'width'\nconst HEIGHT = 'height'\n\nconst SELECTOR_ACTIVES = '.show, .collapsing'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"collapse\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Collapse extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._isTransitioning = false\n this._config = this._getConfig(config)\n this._triggerArray = SelectorEngine.find(\n `${SELECTOR_DATA_TOGGLE}[href=\"#${this._element.id}\"],` +\n `${SELECTOR_DATA_TOGGLE}[data-bs-target=\"#${this._element.id}\"]`\n )\n\n const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggleList.length; i < len; i++) {\n const elem = toggleList[i]\n const selector = getSelectorFromElement(elem)\n const filterElement = SelectorEngine.find(selector)\n .filter(foundElem => foundElem === this._element)\n\n if (selector !== null && filterElement.length) {\n this._selector = selector\n this._triggerArray.push(elem)\n }\n }\n\n this._parent = this._config.parent ? this._getParent() : null\n\n if (!this._config.parent) {\n this._addAriaAndCollapsedClass(this._element, this._triggerArray)\n }\n\n if (this._config.toggle) {\n this.toggle()\n }\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (this._element.classList.contains(CLASS_NAME_SHOW)) {\n this.hide()\n } else {\n this.show()\n }\n }\n\n show() {\n if (this._isTransitioning || this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n let actives\n let activesData\n\n if (this._parent) {\n actives = SelectorEngine.find(SELECTOR_ACTIVES, this._parent)\n .filter(elem => {\n if (typeof this._config.parent === 'string') {\n return elem.getAttribute('data-bs-parent') === this._config.parent\n }\n\n return elem.classList.contains(CLASS_NAME_COLLAPSE)\n })\n\n if (actives.length === 0) {\n actives = null\n }\n }\n\n const container = SelectorEngine.findOne(this._selector)\n if (actives) {\n const tempActiveData = actives.find(elem => container !== elem)\n activesData = tempActiveData ? Data.get(tempActiveData, DATA_KEY) : null\n\n if (activesData && activesData._isTransitioning) {\n return\n }\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_SHOW)\n if (startEvent.defaultPrevented) {\n return\n }\n\n if (actives) {\n actives.forEach(elemActive => {\n if (container !== elemActive) {\n Collapse.collapseInterface(elemActive, 'hide')\n }\n\n if (!activesData) {\n Data.set(elemActive, DATA_KEY, null)\n }\n })\n }\n\n const dimension = this._getDimension()\n\n this._element.classList.remove(CLASS_NAME_COLLAPSE)\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n\n this._element.style[dimension] = 0\n\n if (this._triggerArray.length) {\n this._triggerArray.forEach(element => {\n element.classList.remove(CLASS_NAME_COLLAPSED)\n element.setAttribute('aria-expanded', true)\n })\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n this._element.style[dimension] = ''\n\n this.setTransitioning(false)\n\n EventHandler.trigger(this._element, EVENT_SHOWN)\n }\n\n const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1)\n const scrollSize = `scroll${capitalizedDimension}`\n\n this._queueCallback(complete, this._element, true)\n this._element.style[dimension] = `${this._element[scrollSize]}px`\n }\n\n hide() {\n if (this._isTransitioning || !this._element.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const startEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n if (startEvent.defaultPrevented) {\n return\n }\n\n const dimension = this._getDimension()\n\n this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`\n\n reflow(this._element)\n\n this._element.classList.add(CLASS_NAME_COLLAPSING)\n this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW)\n\n const triggerArrayLength = this._triggerArray.length\n if (triggerArrayLength > 0) {\n for (let i = 0; i < triggerArrayLength; i++) {\n const trigger = this._triggerArray[i]\n const elem = getElementFromSelector(trigger)\n\n if (elem && !elem.classList.contains(CLASS_NAME_SHOW)) {\n trigger.classList.add(CLASS_NAME_COLLAPSED)\n trigger.setAttribute('aria-expanded', false)\n }\n }\n }\n\n this.setTransitioning(true)\n\n const complete = () => {\n this.setTransitioning(false)\n this._element.classList.remove(CLASS_NAME_COLLAPSING)\n this._element.classList.add(CLASS_NAME_COLLAPSE)\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._element.style[dimension] = ''\n\n this._queueCallback(complete, this._element, true)\n }\n\n setTransitioning(isTransitioning) {\n this._isTransitioning = isTransitioning\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...config\n }\n config.toggle = Boolean(config.toggle) // Coerce string values\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _getDimension() {\n return this._element.classList.contains(WIDTH) ? WIDTH : HEIGHT\n }\n\n _getParent() {\n let { parent } = this._config\n\n parent = getElement(parent)\n\n const selector = `${SELECTOR_DATA_TOGGLE}[data-bs-parent=\"${parent}\"]`\n\n SelectorEngine.find(selector, parent)\n .forEach(element => {\n const selected = getElementFromSelector(element)\n\n this._addAriaAndCollapsedClass(\n selected,\n [element]\n )\n })\n\n return parent\n }\n\n _addAriaAndCollapsedClass(element, triggerArray) {\n if (!element || !triggerArray.length) {\n return\n }\n\n const isOpen = element.classList.contains(CLASS_NAME_SHOW)\n\n triggerArray.forEach(elem => {\n if (isOpen) {\n elem.classList.remove(CLASS_NAME_COLLAPSED)\n } else {\n elem.classList.add(CLASS_NAME_COLLAPSED)\n }\n\n elem.setAttribute('aria-expanded', isOpen)\n })\n }\n\n // Static\n\n static collapseInterface(element, config) {\n let data = Data.get(element, DATA_KEY)\n const _config = {\n ...Default,\n ...Manipulator.getDataAttributes(element),\n ...(typeof config === 'object' && config ? config : {})\n }\n\n if (!data && _config.toggle && typeof config === 'string' && /show|hide/.test(config)) {\n _config.toggle = false\n }\n\n if (!data) {\n data = new Collapse(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Collapse.collapseInterface(this, config)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n // preventDefault only for <a> elements (which change the URL) not inside the collapsible element\n if (event.target.tagName === 'A' || (event.delegateTarget && event.delegateTarget.tagName === 'A')) {\n event.preventDefault()\n }\n\n const triggerData = Manipulator.getDataAttributes(this)\n const selector = getSelectorFromElement(this)\n const selectorElements = SelectorEngine.find(selector)\n\n selectorElements.forEach(element => {\n const data = Data.get(element, DATA_KEY)\n let config\n if (data) {\n // update parent attribute\n if (data._parent === null && typeof triggerData.parent === 'string') {\n data._config.parent = triggerData.parent\n data._parent = data._getParent()\n }\n\n config = 'toggle'\n } else {\n config = triggerData\n }\n\n Collapse.collapseInterface(element, config)\n })\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Collapse to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Collapse)\n\nexport default Collapse\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): dropdown.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n getElement,\n getElementFromSelector,\n isDisabled,\n isElement,\n isVisible,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'dropdown'\nconst DATA_KEY = 'bs.dropdown'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst ESCAPE_KEY = 'Escape'\nconst SPACE_KEY = 'Space'\nconst TAB_KEY = 'Tab'\nconst ARROW_UP_KEY = 'ArrowUp'\nconst ARROW_DOWN_KEY = 'ArrowDown'\nconst RIGHT_MOUSE_BUTTON = 2 // MouseEvent.button value for the secondary button, usually the right button\n\nconst REGEXP_KEYDOWN = new RegExp(`${ARROW_UP_KEY}|${ARROW_DOWN_KEY}|${ESCAPE_KEY}`)\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_CLICK = `click${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_DROPUP = 'dropup'\nconst CLASS_NAME_DROPEND = 'dropend'\nconst CLASS_NAME_DROPSTART = 'dropstart'\nconst CLASS_NAME_NAVBAR = 'navbar'\n\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"dropdown\"]'\nconst SELECTOR_MENU = '.dropdown-menu'\nconst SELECTOR_NAVBAR_NAV = '.navbar-nav'\nconst SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)'\n\nconst PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start'\nconst PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end'\nconst PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start'\nconst PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end'\nconst PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start'\nconst PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start'\n\nconst Default = {\n offset: [0, 2],\n boundary: 'clippingParents',\n reference: 'toggle',\n display: 'dynamic',\n popperConfig: null,\n autoClose: true\n}\n\nconst DefaultType = {\n offset: '(array|string|function)',\n boundary: '(string|element)',\n reference: '(string|element|object)',\n display: 'string',\n popperConfig: '(null|object|function)',\n autoClose: '(boolean|string)'\n}\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Dropdown extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._popper = null\n this._config = this._getConfig(config)\n this._menu = this._getMenuElement()\n this._inNavbar = this._detectNavbar()\n\n this._addEventListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle() {\n if (isDisabled(this._element)) {\n return\n }\n\n const isActive = this._element.classList.contains(CLASS_NAME_SHOW)\n\n if (isActive) {\n this.hide()\n return\n }\n\n this.show()\n }\n\n show() {\n if (isDisabled(this._element) || this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const parent = Dropdown.getParentFromElement(this._element)\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, relatedTarget)\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n // Totally disable Popper for Dropdowns in Navbar\n if (this._inNavbar) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'none')\n } else {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s dropdowns require Popper (https://popper.js.org)')\n }\n\n let referenceElement = this._element\n\n if (this._config.reference === 'parent') {\n referenceElement = parent\n } else if (isElement(this._config.reference)) {\n referenceElement = getElement(this._config.reference)\n } else if (typeof this._config.reference === 'object') {\n referenceElement = this._config.reference\n }\n\n const popperConfig = this._getPopperConfig()\n const isDisplayStatic = popperConfig.modifiers.find(modifier => modifier.name === 'applyStyles' && modifier.enabled === false)\n\n this._popper = Popper.createPopper(referenceElement, this._menu, popperConfig)\n\n if (isDisplayStatic) {\n Manipulator.setDataAttribute(this._menu, 'popper', 'static')\n }\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement &&\n !parent.closest(SELECTOR_NAVBAR_NAV)) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.on(elem, 'mouseover', noop))\n }\n\n this._element.focus()\n this._element.setAttribute('aria-expanded', true)\n\n this._menu.classList.toggle(CLASS_NAME_SHOW)\n this._element.classList.toggle(CLASS_NAME_SHOW)\n EventHandler.trigger(this._element, EVENT_SHOWN, relatedTarget)\n }\n\n hide() {\n if (isDisabled(this._element) || !this._menu.classList.contains(CLASS_NAME_SHOW)) {\n return\n }\n\n const relatedTarget = {\n relatedTarget: this._element\n }\n\n this._completeHide(relatedTarget)\n }\n\n dispose() {\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n update() {\n this._inNavbar = this._detectNavbar()\n if (this._popper) {\n this._popper.update()\n }\n }\n\n // Private\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK, event => {\n event.preventDefault()\n this.toggle()\n })\n }\n\n _completeHide(relatedTarget) {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE, relatedTarget)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(elem => EventHandler.off(elem, 'mouseover', noop))\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n this._menu.classList.remove(CLASS_NAME_SHOW)\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._element.setAttribute('aria-expanded', 'false')\n Manipulator.removeDataAttribute(this._menu, 'popper')\n EventHandler.trigger(this._element, EVENT_HIDDEN, relatedTarget)\n }\n\n _getConfig(config) {\n config = {\n ...this.constructor.Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (typeof config.reference === 'object' && !isElement(config.reference) &&\n typeof config.reference.getBoundingClientRect !== 'function'\n ) {\n // Popper virtual elements require a getBoundingClientRect method\n throw new TypeError(`${NAME.toUpperCase()}: Option \"reference\" provided type \"object\" without a required \"getBoundingClientRect\" method.`)\n }\n\n return config\n }\n\n _getMenuElement() {\n return SelectorEngine.next(this._element, SELECTOR_MENU)[0]\n }\n\n _getPlacement() {\n const parentDropdown = this._element.parentNode\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {\n return PLACEMENT_RIGHT\n }\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {\n return PLACEMENT_LEFT\n }\n\n // We need to trim the value because custom properties can also include spaces\n const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end'\n\n if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {\n return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP\n }\n\n return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM\n }\n\n _detectNavbar() {\n return this._element.closest(`.${CLASS_NAME_NAVBAR}`) !== null\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig() {\n const defaultBsPopperConfig = {\n placement: this._getPlacement(),\n modifiers: [{\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n }]\n }\n\n // Disable Popper if we have a static display\n if (this._config.display === 'static') {\n defaultBsPopperConfig.modifiers = [{\n name: 'applyStyles',\n enabled: false\n }]\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _selectMenuItem(event) {\n const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(isVisible)\n\n if (!items.length) {\n return\n }\n\n let index = items.indexOf(event.target)\n\n // Up\n if (event.key === ARROW_UP_KEY && index > 0) {\n index--\n }\n\n // Down\n if (event.key === ARROW_DOWN_KEY && index < items.length - 1) {\n index++\n }\n\n // index is -1 if the first keydown is an ArrowUp\n index = index === -1 ? 0 : index\n\n items[index].focus()\n }\n\n // Static\n\n static dropdownInterface(element, config) {\n let data = Data.get(element, DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data) {\n data = new Dropdown(element, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n }\n\n static jQueryInterface(config) {\n return this.each(function () {\n Dropdown.dropdownInterface(this, config)\n })\n }\n\n static clearMenus(event) {\n if (event && (event.button === RIGHT_MOUSE_BUTTON || (event.type === 'keyup' && event.key !== TAB_KEY))) {\n return\n }\n\n const toggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE)\n\n for (let i = 0, len = toggles.length; i < len; i++) {\n const context = Data.get(toggles[i], DATA_KEY)\n if (!context || context._config.autoClose === false) {\n continue\n }\n\n if (!context._element.classList.contains(CLASS_NAME_SHOW)) {\n continue\n }\n\n const relatedTarget = {\n relatedTarget: context._element\n }\n\n if (event) {\n const composedPath = event.composedPath()\n const isMenuTarget = composedPath.includes(context._menu)\n if (\n composedPath.includes(context._element) ||\n (context._config.autoClose === 'inside' && !isMenuTarget) ||\n (context._config.autoClose === 'outside' && isMenuTarget)\n ) {\n continue\n }\n\n // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu\n if (context._menu.contains(event.target) && ((event.type === 'keyup' && event.key === TAB_KEY) || /input|select|option|textarea|form/i.test(event.target.tagName))) {\n continue\n }\n\n if (event.type === 'click') {\n relatedTarget.clickEvent = event\n }\n }\n\n context._completeHide(relatedTarget)\n }\n }\n\n static getParentFromElement(element) {\n return getElementFromSelector(element) || element.parentNode\n }\n\n static dataApiKeydownHandler(event) {\n // If not input/textarea:\n // - And not a key in REGEXP_KEYDOWN => not a dropdown command\n // If input/textarea:\n // - If space key => not a dropdown command\n // - If key is other than escape\n // - If key is not up or down => not a dropdown command\n // - If trigger inside the menu => not a dropdown command\n if (/input|textarea/i.test(event.target.tagName) ?\n event.key === SPACE_KEY || (event.key !== ESCAPE_KEY &&\n ((event.key !== ARROW_DOWN_KEY && event.key !== ARROW_UP_KEY) ||\n event.target.closest(SELECTOR_MENU))) :\n !REGEXP_KEYDOWN.test(event.key)) {\n return\n }\n\n const isActive = this.classList.contains(CLASS_NAME_SHOW)\n\n if (!isActive && event.key === ESCAPE_KEY) {\n return\n }\n\n event.preventDefault()\n event.stopPropagation()\n\n if (isDisabled(this)) {\n return\n }\n\n const getToggleButton = () => this.matches(SELECTOR_DATA_TOGGLE) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE)[0]\n\n if (event.key === ESCAPE_KEY) {\n getToggleButton().focus()\n Dropdown.clearMenus()\n return\n }\n\n if (!isActive && (event.key === ARROW_UP_KEY || event.key === ARROW_DOWN_KEY)) {\n getToggleButton().click()\n return\n }\n\n if (!isActive || event.key === SPACE_KEY) {\n Dropdown.clearMenus()\n return\n }\n\n Dropdown.getInstance(getToggleButton())._selectMenuItem(event)\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler)\nEventHandler.on(document, EVENT_CLICK_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus)\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n event.preventDefault()\n Dropdown.dropdownInterface(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Dropdown to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Dropdown)\n\nexport default Dropdown\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): util/scrollBar.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport SelectorEngine from '../dom/selector-engine'\nimport Manipulator from '../dom/manipulator'\n\nconst SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top'\nconst SELECTOR_STICKY_CONTENT = '.sticky-top'\n\nconst getWidth = () => {\n // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n const documentWidth = document.documentElement.clientWidth\n return Math.abs(window.innerWidth - documentWidth)\n}\n\nconst hide = (width = getWidth()) => {\n _disableOverFlow()\n // give padding to element to balances the hidden scrollbar width\n _setElementAttributes('body', 'paddingRight', calculatedValue => calculatedValue + width)\n // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements, to keep shown fullwidth\n _setElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight', calculatedValue => calculatedValue + width)\n _setElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight', calculatedValue => calculatedValue - width)\n}\n\nconst _disableOverFlow = () => {\n const actualValue = document.body.style.overflow\n if (actualValue) {\n Manipulator.setDataAttribute(document.body, 'overflow', actualValue)\n }\n\n document.body.style.overflow = 'hidden'\n}\n\nconst _setElementAttributes = (selector, styleProp, callback) => {\n const scrollbarWidth = getWidth()\n SelectorEngine.find(selector)\n .forEach(element => {\n if (element !== document.body && window.innerWidth > element.clientWidth + scrollbarWidth) {\n return\n }\n\n const actualValue = element.style[styleProp]\n const calculatedValue = window.getComputedStyle(element)[styleProp]\n Manipulator.setDataAttribute(element, styleProp, actualValue)\n element.style[styleProp] = `${callback(Number.parseFloat(calculatedValue))}px`\n })\n}\n\nconst reset = () => {\n _resetElementAttributes('body', 'overflow')\n _resetElementAttributes('body', 'paddingRight')\n _resetElementAttributes(SELECTOR_FIXED_CONTENT, 'paddingRight')\n _resetElementAttributes(SELECTOR_STICKY_CONTENT, 'marginRight')\n}\n\nconst _resetElementAttributes = (selector, styleProp) => {\n SelectorEngine.find(selector).forEach(element => {\n const value = Manipulator.getDataAttribute(element, styleProp)\n if (typeof value === 'undefined') {\n element.style.removeProperty(styleProp)\n } else {\n Manipulator.removeDataAttribute(element, styleProp)\n element.style[styleProp] = value\n }\n })\n}\n\nconst isBodyOverflowing = () => {\n return getWidth() > 0\n}\n\nexport {\n getWidth,\n hide,\n isBodyOverflowing,\n reset\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): util/backdrop.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport EventHandler from '../dom/event-handler'\nimport { emulateTransitionEnd, execute, getTransitionDurationFromElement, reflow, typeCheckConfig } from './index'\n\nconst Default = {\n isVisible: true, // if false, we use the backdrop helper without adding any element to the dom\n isAnimated: false,\n rootElement: document.body, // give the choice to place backdrop under different elements\n clickCallback: null\n}\n\nconst DefaultType = {\n isVisible: 'boolean',\n isAnimated: 'boolean',\n rootElement: 'element',\n clickCallback: '(function|null)'\n}\nconst NAME = 'backdrop'\nconst CLASS_NAME_BACKDROP = 'modal-backdrop'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst EVENT_MOUSEDOWN = `mousedown.bs.${NAME}`\n\nclass Backdrop {\n constructor(config) {\n this._config = this._getConfig(config)\n this._isAppended = false\n this._element = null\n }\n\n show(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._append()\n\n if (this._config.isAnimated) {\n reflow(this._getElement())\n }\n\n this._getElement().classList.add(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n execute(callback)\n })\n }\n\n hide(callback) {\n if (!this._config.isVisible) {\n execute(callback)\n return\n }\n\n this._getElement().classList.remove(CLASS_NAME_SHOW)\n\n this._emulateAnimation(() => {\n this.dispose()\n execute(callback)\n })\n }\n\n // Private\n\n _getElement() {\n if (!this._element) {\n const backdrop = document.createElement('div')\n backdrop.className = CLASS_NAME_BACKDROP\n if (this._config.isAnimated) {\n backdrop.classList.add(CLASS_NAME_FADE)\n }\n\n this._element = backdrop\n }\n\n return this._element\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...(typeof config === 'object' ? config : {})\n }\n\n config.rootElement = config.rootElement || document.body\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _append() {\n if (this._isAppended) {\n return\n }\n\n this._config.rootElement.appendChild(this._getElement())\n\n EventHandler.on(this._getElement(), EVENT_MOUSEDOWN, () => {\n execute(this._config.clickCallback)\n })\n\n this._isAppended = true\n }\n\n dispose() {\n if (!this._isAppended) {\n return\n }\n\n EventHandler.off(this._element, EVENT_MOUSEDOWN)\n\n this._getElement().parentNode.removeChild(this._element)\n this._isAppended = false\n }\n\n _emulateAnimation(callback) {\n if (!this._config.isAnimated) {\n execute(callback)\n return\n }\n\n const backdropTransitionDuration = getTransitionDurationFromElement(this._getElement())\n EventHandler.one(this._getElement(), 'transitionend', () => execute(callback))\n emulateTransitionEnd(this._getElement(), backdropTransitionDuration)\n }\n}\n\nexport default Backdrop\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): modal.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n emulateTransitionEnd,\n getElementFromSelector,\n getTransitionDurationFromElement,\n isRTL,\n isVisible,\n reflow,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport { getWidth as getScrollBarWidth, hide as scrollBarHide, reset as scrollBarReset } from './util/scrollbar'\nimport BaseComponent from './base-component'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'modal'\nconst DATA_KEY = 'bs.modal'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n focus: true\n}\n\nconst DefaultType = {\n backdrop: '(boolean|string)',\n keyboard: 'boolean',\n focus: 'boolean'\n}\n\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_RESIZE = `resize${EVENT_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEUP_DISMISS = `mouseup.dismiss${EVENT_KEY}`\nconst EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_OPEN = 'modal-open'\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\nconst CLASS_NAME_STATIC = 'modal-static'\n\nconst SELECTOR_DIALOG = '.modal-dialog'\nconst SELECTOR_MODAL_BODY = '.modal-body'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"modal\"]'\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"modal\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Modal extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element)\n this._backdrop = this._initializeBackDrop()\n this._isShown = false\n this._ignoreBackdropClick = false\n this._isTransitioning = false\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown || this._isTransitioning) {\n return\n }\n\n if (this._isAnimated()) {\n this._isTransitioning = true\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, {\n relatedTarget\n })\n\n if (this._isShown || showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n\n scrollBarHide()\n\n document.body.classList.add(CLASS_NAME_OPEN)\n\n this._adjustDialog()\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, event => this.hide(event))\n\n EventHandler.on(this._dialog, EVENT_MOUSEDOWN_DISMISS, () => {\n EventHandler.one(this._element, EVENT_MOUSEUP_DISMISS, event => {\n if (event.target === this._element) {\n this._ignoreBackdropClick = true\n }\n })\n })\n\n this._showBackdrop(() => this._showElement(relatedTarget))\n }\n\n hide(event) {\n if (event) {\n event.preventDefault()\n }\n\n if (!this._isShown || this._isTransitioning) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n this._isShown = false\n const isAnimated = this._isAnimated()\n\n if (isAnimated) {\n this._isTransitioning = true\n }\n\n this._setEscapeEvent()\n this._setResizeEvent()\n\n EventHandler.off(document, EVENT_FOCUSIN)\n\n this._element.classList.remove(CLASS_NAME_SHOW)\n\n EventHandler.off(this._element, EVENT_CLICK_DISMISS)\n EventHandler.off(this._dialog, EVENT_MOUSEDOWN_DISMISS)\n\n this._queueCallback(() => this._hideModal(), this._element, isAnimated)\n }\n\n dispose() {\n [window, this._dialog]\n .forEach(htmlElement => EventHandler.off(htmlElement, EVENT_KEY))\n\n this._backdrop.dispose()\n super.dispose()\n\n /**\n * `document` has 2 events `EVENT_FOCUSIN` and `EVENT_CLICK_DATA_API`\n * Do not move `document` in `htmlElements` array\n * It will remove `EVENT_CLICK_DATA_API` event that should remain\n */\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n handleUpdate() {\n this._adjustDialog()\n }\n\n // Private\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: Boolean(this._config.backdrop), // 'static' option will be translated to true, and booleans will keep their value\n isAnimated: this._isAnimated()\n })\n }\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...config\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _showElement(relatedTarget) {\n const isAnimated = this._isAnimated()\n const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog)\n\n if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {\n // Don't move modal's DOM position\n document.body.appendChild(this._element)\n }\n\n this._element.style.display = 'block'\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.scrollTop = 0\n\n if (modalBody) {\n modalBody.scrollTop = 0\n }\n\n if (isAnimated) {\n reflow(this._element)\n }\n\n this._element.classList.add(CLASS_NAME_SHOW)\n\n if (this._config.focus) {\n this._enforceFocus()\n }\n\n const transitionComplete = () => {\n if (this._config.focus) {\n this._element.focus()\n }\n\n this._isTransitioning = false\n EventHandler.trigger(this._element, EVENT_SHOWN, {\n relatedTarget\n })\n }\n\n this._queueCallback(transitionComplete, this._dialog, isAnimated)\n }\n\n _enforceFocus() {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n this._element !== event.target &&\n !this._element.contains(event.target)) {\n this._element.focus()\n }\n })\n }\n\n _setEscapeEvent() {\n if (this._isShown) {\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n event.preventDefault()\n this.hide()\n } else if (!this._config.keyboard && event.key === ESCAPE_KEY) {\n this._triggerBackdropTransition()\n }\n })\n } else {\n EventHandler.off(this._element, EVENT_KEYDOWN_DISMISS)\n }\n }\n\n _setResizeEvent() {\n if (this._isShown) {\n EventHandler.on(window, EVENT_RESIZE, () => this._adjustDialog())\n } else {\n EventHandler.off(window, EVENT_RESIZE)\n }\n }\n\n _hideModal() {\n this._element.style.display = 'none'\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._isTransitioning = false\n this._backdrop.hide(() => {\n document.body.classList.remove(CLASS_NAME_OPEN)\n this._resetAdjustments()\n scrollBarReset()\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n })\n }\n\n _showBackdrop(callback) {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, event => {\n if (this._ignoreBackdropClick) {\n this._ignoreBackdropClick = false\n return\n }\n\n if (event.target !== event.currentTarget) {\n return\n }\n\n if (this._config.backdrop === true) {\n this.hide()\n } else if (this._config.backdrop === 'static') {\n this._triggerBackdropTransition()\n }\n })\n\n this._backdrop.show(callback)\n }\n\n _isAnimated() {\n return this._element.classList.contains(CLASS_NAME_FADE)\n }\n\n _triggerBackdropTransition() {\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n\n if (!isModalOverflowing) {\n this._element.style.overflowY = 'hidden'\n }\n\n this._element.classList.add(CLASS_NAME_STATIC)\n const modalTransitionDuration = getTransitionDurationFromElement(this._dialog)\n EventHandler.off(this._element, 'transitionend')\n EventHandler.one(this._element, 'transitionend', () => {\n this._element.classList.remove(CLASS_NAME_STATIC)\n if (!isModalOverflowing) {\n EventHandler.one(this._element, 'transitionend', () => {\n this._element.style.overflowY = ''\n })\n emulateTransitionEnd(this._element, modalTransitionDuration)\n }\n })\n emulateTransitionEnd(this._element, modalTransitionDuration)\n this._element.focus()\n }\n\n // ----------------------------------------------------------------------\n // the following methods are used to handle overflowing modals\n // ----------------------------------------------------------------------\n\n _adjustDialog() {\n const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight\n const scrollbarWidth = getScrollBarWidth()\n const isBodyOverflowing = scrollbarWidth > 0\n\n if ((!isBodyOverflowing && isModalOverflowing && !isRTL()) || (isBodyOverflowing && !isModalOverflowing && isRTL())) {\n this._element.style.paddingLeft = `${scrollbarWidth}px`\n }\n\n if ((isBodyOverflowing && !isModalOverflowing && !isRTL()) || (!isBodyOverflowing && isModalOverflowing && isRTL())) {\n this._element.style.paddingRight = `${scrollbarWidth}px`\n }\n }\n\n _resetAdjustments() {\n this._element.style.paddingLeft = ''\n this._element.style.paddingRight = ''\n }\n\n // Static\n\n static jQueryInterface(config, relatedTarget) {\n return this.each(function () {\n const data = Modal.getInstance(this) || new Modal(this, typeof config === 'object' ? config : {})\n\n if (typeof config !== 'string') {\n return\n }\n\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](relatedTarget)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n EventHandler.one(target, EVENT_SHOW, showEvent => {\n if (showEvent.defaultPrevented) {\n // only register focus restorer if modal will actually get shown\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n if (isVisible(this)) {\n this.focus()\n }\n })\n })\n\n const data = Modal.getInstance(target) || new Modal(target)\n\n data.toggle(this)\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Modal to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Modal)\n\nexport default Modal\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): offcanvas.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getElementFromSelector,\n isDisabled,\n isVisible,\n typeCheckConfig\n} from './util/index'\nimport { hide as scrollBarHide, reset as scrollBarReset } from './util/scrollbar'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport BaseComponent from './base-component'\nimport SelectorEngine from './dom/selector-engine'\nimport Manipulator from './dom/manipulator'\nimport Backdrop from './util/backdrop'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'offcanvas'\nconst DATA_KEY = 'bs.offcanvas'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\nconst ESCAPE_KEY = 'Escape'\n\nconst Default = {\n backdrop: true,\n keyboard: true,\n scroll: false\n}\n\nconst DefaultType = {\n backdrop: 'boolean',\n keyboard: 'boolean',\n scroll: 'boolean'\n}\n\nconst CLASS_NAME_SHOW = 'show'\nconst OPEN_SELECTOR = '.offcanvas.show'\n\nconst EVENT_SHOW = `show${EVENT_KEY}`\nconst EVENT_SHOWN = `shown${EVENT_KEY}`\nconst EVENT_HIDE = `hide${EVENT_KEY}`\nconst EVENT_HIDDEN = `hidden${EVENT_KEY}`\nconst EVENT_FOCUSIN = `focusin${EVENT_KEY}`\nconst EVENT_CLICK_DATA_API = `click${EVENT_KEY}${DATA_API_KEY}`\nconst EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY}`\nconst EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY}`\n\nconst SELECTOR_DATA_DISMISS = '[data-bs-dismiss=\"offcanvas\"]'\nconst SELECTOR_DATA_TOGGLE = '[data-bs-toggle=\"offcanvas\"]'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Offcanvas extends BaseComponent {\n constructor(element, config) {\n super(element)\n\n this._config = this._getConfig(config)\n this._isShown = false\n this._backdrop = this._initializeBackDrop()\n this._addEventListeners()\n }\n\n // Getters\n\n static get NAME() {\n return NAME\n }\n\n static get Default() {\n return Default\n }\n\n // Public\n\n toggle(relatedTarget) {\n return this._isShown ? this.hide() : this.show(relatedTarget)\n }\n\n show(relatedTarget) {\n if (this._isShown) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, EVENT_SHOW, { relatedTarget })\n\n if (showEvent.defaultPrevented) {\n return\n }\n\n this._isShown = true\n this._element.style.visibility = 'visible'\n\n this._backdrop.show()\n\n if (!this._config.scroll) {\n scrollBarHide()\n this._enforceFocusOnElement(this._element)\n }\n\n this._element.removeAttribute('aria-hidden')\n this._element.setAttribute('aria-modal', true)\n this._element.setAttribute('role', 'dialog')\n this._element.classList.add(CLASS_NAME_SHOW)\n\n const completeCallBack = () => {\n EventHandler.trigger(this._element, EVENT_SHOWN, { relatedTarget })\n }\n\n this._queueCallback(completeCallBack, this._element, true)\n }\n\n hide() {\n if (!this._isShown) {\n return\n }\n\n const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE)\n\n if (hideEvent.defaultPrevented) {\n return\n }\n\n EventHandler.off(document, EVENT_FOCUSIN)\n this._element.blur()\n this._isShown = false\n this._element.classList.remove(CLASS_NAME_SHOW)\n this._backdrop.hide()\n\n const completeCallback = () => {\n this._element.setAttribute('aria-hidden', true)\n this._element.removeAttribute('aria-modal')\n this._element.removeAttribute('role')\n this._element.style.visibility = 'hidden'\n\n if (!this._config.scroll) {\n scrollBarReset()\n }\n\n EventHandler.trigger(this._element, EVENT_HIDDEN)\n }\n\n this._queueCallback(completeCallback, this._element, true)\n }\n\n dispose() {\n this._backdrop.dispose()\n super.dispose()\n EventHandler.off(document, EVENT_FOCUSIN)\n }\n\n // Private\n\n _getConfig(config) {\n config = {\n ...Default,\n ...Manipulator.getDataAttributes(this._element),\n ...(typeof config === 'object' ? config : {})\n }\n typeCheckConfig(NAME, config, DefaultType)\n return config\n }\n\n _initializeBackDrop() {\n return new Backdrop({\n isVisible: this._config.backdrop,\n isAnimated: true,\n rootElement: this._element.parentNode,\n clickCallback: () => this.hide()\n })\n }\n\n _enforceFocusOnElement(element) {\n EventHandler.off(document, EVENT_FOCUSIN) // guard against infinite focus loop\n EventHandler.on(document, EVENT_FOCUSIN, event => {\n if (document !== event.target &&\n element !== event.target &&\n !element.contains(event.target)) {\n element.focus()\n }\n })\n element.focus()\n }\n\n _addEventListeners() {\n EventHandler.on(this._element, EVENT_CLICK_DISMISS, SELECTOR_DATA_DISMISS, () => this.hide())\n\n EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {\n if (this._config.keyboard && event.key === ESCAPE_KEY) {\n this.hide()\n }\n })\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n const data = Data.get(this, DATA_KEY) || new Offcanvas(this, typeof config === 'object' ? config : {})\n\n if (typeof config !== 'string') {\n return\n }\n\n if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config](this)\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * Data Api implementation\n * ------------------------------------------------------------------------\n */\n\nEventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {\n const target = getElementFromSelector(this)\n\n if (['A', 'AREA'].includes(this.tagName)) {\n event.preventDefault()\n }\n\n if (isDisabled(this)) {\n return\n }\n\n EventHandler.one(target, EVENT_HIDDEN, () => {\n // focus on trigger when it is closed\n if (isVisible(this)) {\n this.focus()\n }\n })\n\n // avoid conflict when clicking a toggler of an offcanvas, while another is open\n const allReadyOpen = SelectorEngine.findOne(OPEN_SELECTOR)\n if (allReadyOpen && allReadyOpen !== target) {\n Offcanvas.getInstance(allReadyOpen).hide()\n }\n\n const data = Data.get(target, DATA_KEY) || new Offcanvas(target)\n\n data.toggle(this)\n})\n\nEventHandler.on(window, EVENT_LOAD_DATA_API, () => {\n SelectorEngine.find(OPEN_SELECTOR).forEach(el => (Data.get(el, DATA_KEY) || new Offcanvas(el)).show())\n})\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n */\n\ndefineJQueryPlugin(Offcanvas)\n\nexport default Offcanvas\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): util/sanitizer.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nconst uriAttrs = new Set([\n 'background',\n 'cite',\n 'href',\n 'itemtype',\n 'longdesc',\n 'poster',\n 'src',\n 'xlink:href'\n])\n\nconst ARIA_ATTRIBUTE_PATTERN = /^aria-[\\w-]*$/i\n\n/**\n * A pattern that recognizes a commonly useful subset of URLs that are safe.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file):|[^#&/:?]*(?:[#/?]|$))/i\n\n/**\n * A pattern that matches safe data URLs. Only matches image, video and audio types.\n *\n * Shoutout to Angular 7 https://github.com/angular/angular/blob/7.2.4/packages/core/src/sanitization/url_sanitizer.ts\n */\nconst DATA_URL_PATTERN = /^data:(?:image\\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\\/(?:mpeg|mp4|ogg|webm)|audio\\/(?:mp3|oga|ogg|opus));base64,[\\d+/a-z]+=*$/i\n\nconst allowedAttribute = (attr, allowedAttributeList) => {\n const attrName = attr.nodeName.toLowerCase()\n\n if (allowedAttributeList.includes(attrName)) {\n if (uriAttrs.has(attrName)) {\n return Boolean(SAFE_URL_PATTERN.test(attr.nodeValue) || DATA_URL_PATTERN.test(attr.nodeValue))\n }\n\n return true\n }\n\n const regExp = allowedAttributeList.filter(attrRegex => attrRegex instanceof RegExp)\n\n // Check if a regular expression validates the attribute.\n for (let i = 0, len = regExp.length; i < len; i++) {\n if (regExp[i].test(attrName)) {\n return true\n }\n }\n\n return false\n}\n\nexport const DefaultAllowlist = {\n // Global attributes allowed on any supplied element below.\n '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],\n a: ['target', 'href', 'title', 'rel'],\n area: [],\n b: [],\n br: [],\n col: [],\n code: [],\n div: [],\n em: [],\n hr: [],\n h1: [],\n h2: [],\n h3: [],\n h4: [],\n h5: [],\n h6: [],\n i: [],\n img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],\n li: [],\n ol: [],\n p: [],\n pre: [],\n s: [],\n small: [],\n span: [],\n sub: [],\n sup: [],\n strong: [],\n u: [],\n ul: []\n}\n\nexport function sanitizeHtml(unsafeHtml, allowList, sanitizeFn) {\n if (!unsafeHtml.length) {\n return unsafeHtml\n }\n\n if (sanitizeFn && typeof sanitizeFn === 'function') {\n return sanitizeFn(unsafeHtml)\n }\n\n const domParser = new window.DOMParser()\n const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html')\n const allowlistKeys = Object.keys(allowList)\n const elements = [].concat(...createdDocument.body.querySelectorAll('*'))\n\n for (let i = 0, len = elements.length; i < len; i++) {\n const el = elements[i]\n const elName = el.nodeName.toLowerCase()\n\n if (!allowlistKeys.includes(elName)) {\n el.parentNode.removeChild(el)\n\n continue\n }\n\n const attributeList = [].concat(...el.attributes)\n const allowedAttributes = [].concat(allowList['*'] || [], allowList[elName] || [])\n\n attributeList.forEach(attr => {\n if (!allowedAttribute(attr, allowedAttributes)) {\n el.removeAttribute(attr.nodeName)\n }\n })\n }\n\n return createdDocument.body.innerHTML\n}\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): tooltip.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport * as Popper from '@popperjs/core'\n\nimport {\n defineJQueryPlugin,\n findShadowRoot,\n getElement,\n getUID,\n isElement,\n isRTL,\n noop,\n typeCheckConfig\n} from './util/index'\nimport {\n DefaultAllowlist,\n sanitizeHtml\n} from './util/sanitizer'\nimport Data from './dom/data'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'tooltip'\nconst DATA_KEY = 'bs.tooltip'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-tooltip'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\nconst DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn'])\n\nconst DefaultType = {\n animation: 'boolean',\n template: 'string',\n title: '(string|element|function)',\n trigger: 'string',\n delay: '(number|object)',\n html: 'boolean',\n selector: '(string|boolean)',\n placement: '(string|function)',\n offset: '(array|string|function)',\n container: '(string|element|boolean)',\n fallbackPlacements: 'array',\n boundary: '(string|element)',\n customClass: '(string|function)',\n sanitize: 'boolean',\n sanitizeFn: '(null|function)',\n allowList: 'object',\n popperConfig: '(null|object|function)'\n}\n\nconst AttachmentMap = {\n AUTO: 'auto',\n TOP: 'top',\n RIGHT: isRTL() ? 'left' : 'right',\n BOTTOM: 'bottom',\n LEFT: isRTL() ? 'right' : 'left'\n}\n\nconst Default = {\n animation: true,\n template: '<div class=\"tooltip\" role=\"tooltip\">' +\n '<div class=\"tooltip-arrow\"></div>' +\n '<div class=\"tooltip-inner\"></div>' +\n '</div>',\n trigger: 'hover focus',\n title: '',\n delay: 0,\n html: false,\n selector: false,\n placement: 'top',\n offset: [0, 0],\n container: false,\n fallbackPlacements: ['top', 'right', 'bottom', 'left'],\n boundary: 'clippingParents',\n customClass: '',\n sanitize: true,\n sanitizeFn: null,\n allowList: DefaultAllowlist,\n popperConfig: null\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_MODAL = 'modal'\nconst CLASS_NAME_SHOW = 'show'\n\nconst HOVER_STATE_SHOW = 'show'\nconst HOVER_STATE_OUT = 'out'\n\nconst SELECTOR_TOOLTIP_INNER = '.tooltip-inner'\n\nconst TRIGGER_HOVER = 'hover'\nconst TRIGGER_FOCUS = 'focus'\nconst TRIGGER_CLICK = 'click'\nconst TRIGGER_MANUAL = 'manual'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Tooltip extends BaseComponent {\n constructor(element, config) {\n if (typeof Popper === 'undefined') {\n throw new TypeError('Bootstrap\\'s tooltips require Popper (https://popper.js.org)')\n }\n\n super(element)\n\n // private\n this._isEnabled = true\n this._timeout = 0\n this._hoverState = ''\n this._activeTrigger = {}\n this._popper = null\n\n // Protected\n this._config = this._getConfig(config)\n this.tip = null\n\n this._setListeners()\n }\n\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Public\n\n enable() {\n this._isEnabled = true\n }\n\n disable() {\n this._isEnabled = false\n }\n\n toggleEnabled() {\n this._isEnabled = !this._isEnabled\n }\n\n toggle(event) {\n if (!this._isEnabled) {\n return\n }\n\n if (event) {\n const context = this._initializeOnDelegatedTarget(event)\n\n context._activeTrigger.click = !context._activeTrigger.click\n\n if (context._isWithActiveTrigger()) {\n context._enter(null, context)\n } else {\n context._leave(null, context)\n }\n } else {\n if (this.getTipElement().classList.contains(CLASS_NAME_SHOW)) {\n this._leave(null, this)\n return\n }\n\n this._enter(null, this)\n }\n }\n\n dispose() {\n clearTimeout(this._timeout)\n\n EventHandler.off(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this.tip && this.tip.parentNode) {\n this.tip.parentNode.removeChild(this.tip)\n }\n\n if (this._popper) {\n this._popper.destroy()\n }\n\n super.dispose()\n }\n\n show() {\n if (this._element.style.display === 'none') {\n throw new Error('Please use show on visible elements')\n }\n\n if (!(this.isWithContent() && this._isEnabled)) {\n return\n }\n\n const showEvent = EventHandler.trigger(this._element, this.constructor.Event.SHOW)\n const shadowRoot = findShadowRoot(this._element)\n const isInTheDom = shadowRoot === null ?\n this._element.ownerDocument.documentElement.contains(this._element) :\n shadowRoot.contains(this._element)\n\n if (showEvent.defaultPrevented || !isInTheDom) {\n return\n }\n\n const tip = this.getTipElement()\n const tipId = getUID(this.constructor.NAME)\n\n tip.setAttribute('id', tipId)\n this._element.setAttribute('aria-describedby', tipId)\n\n this.setContent()\n\n if (this._config.animation) {\n tip.classList.add(CLASS_NAME_FADE)\n }\n\n const placement = typeof this._config.placement === 'function' ?\n this._config.placement.call(this, tip, this._element) :\n this._config.placement\n\n const attachment = this._getAttachment(placement)\n this._addAttachmentClass(attachment)\n\n const { container } = this._config\n Data.set(tip, this.constructor.DATA_KEY, this)\n\n if (!this._element.ownerDocument.documentElement.contains(this.tip)) {\n container.appendChild(tip)\n EventHandler.trigger(this._element, this.constructor.Event.INSERTED)\n }\n\n if (this._popper) {\n this._popper.update()\n } else {\n this._popper = Popper.createPopper(this._element, tip, this._getPopperConfig(attachment))\n }\n\n tip.classList.add(CLASS_NAME_SHOW)\n\n const customClass = typeof this._config.customClass === 'function' ? this._config.customClass() : this._config.customClass\n if (customClass) {\n tip.classList.add(...customClass.split(' '))\n }\n\n // If this is a touch-enabled device we add extra\n // empty mouseover listeners to the body's immediate children;\n // only needed because of broken event delegation on iOS\n // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children).forEach(element => {\n EventHandler.on(element, 'mouseover', noop)\n })\n }\n\n const complete = () => {\n const prevHoverState = this._hoverState\n\n this._hoverState = null\n EventHandler.trigger(this._element, this.constructor.Event.SHOWN)\n\n if (prevHoverState === HOVER_STATE_OUT) {\n this._leave(null, this)\n }\n }\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n }\n\n hide() {\n if (!this._popper) {\n return\n }\n\n const tip = this.getTipElement()\n const complete = () => {\n if (this._isWithActiveTrigger()) {\n return\n }\n\n if (this._hoverState !== HOVER_STATE_SHOW && tip.parentNode) {\n tip.parentNode.removeChild(tip)\n }\n\n this._cleanTipClass()\n this._element.removeAttribute('aria-describedby')\n EventHandler.trigger(this._element, this.constructor.Event.HIDDEN)\n\n if (this._popper) {\n this._popper.destroy()\n this._popper = null\n }\n }\n\n const hideEvent = EventHandler.trigger(this._element, this.constructor.Event.HIDE)\n if (hideEvent.defaultPrevented) {\n return\n }\n\n tip.classList.remove(CLASS_NAME_SHOW)\n\n // If this is a touch-enabled device we remove the extra\n // empty mouseover listeners we added for iOS support\n if ('ontouchstart' in document.documentElement) {\n [].concat(...document.body.children)\n .forEach(element => EventHandler.off(element, 'mouseover', noop))\n }\n\n this._activeTrigger[TRIGGER_CLICK] = false\n this._activeTrigger[TRIGGER_FOCUS] = false\n this._activeTrigger[TRIGGER_HOVER] = false\n\n const isAnimated = this.tip.classList.contains(CLASS_NAME_FADE)\n this._queueCallback(complete, this.tip, isAnimated)\n this._hoverState = ''\n }\n\n update() {\n if (this._popper !== null) {\n this._popper.update()\n }\n }\n\n // Protected\n\n isWithContent() {\n return Boolean(this.getTitle())\n }\n\n getTipElement() {\n if (this.tip) {\n return this.tip\n }\n\n const element = document.createElement('div')\n element.innerHTML = this._config.template\n\n this.tip = element.children[0]\n return this.tip\n }\n\n setContent() {\n const tip = this.getTipElement()\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TOOLTIP_INNER, tip), this.getTitle())\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n setElementContent(element, content) {\n if (element === null) {\n return\n }\n\n if (isElement(content)) {\n content = getElement(content)\n\n // content is a DOM node or a jQuery\n if (this._config.html) {\n if (content.parentNode !== element) {\n element.innerHTML = ''\n element.appendChild(content)\n }\n } else {\n element.textContent = content.textContent\n }\n\n return\n }\n\n if (this._config.html) {\n if (this._config.sanitize) {\n content = sanitizeHtml(content, this._config.allowList, this._config.sanitizeFn)\n }\n\n element.innerHTML = content\n } else {\n element.textContent = content\n }\n }\n\n getTitle() {\n let title = this._element.getAttribute('data-bs-original-title')\n\n if (!title) {\n title = typeof this._config.title === 'function' ?\n this._config.title.call(this._element) :\n this._config.title\n }\n\n return title\n }\n\n updateAttachment(attachment) {\n if (attachment === 'right') {\n return 'end'\n }\n\n if (attachment === 'left') {\n return 'start'\n }\n\n return attachment\n }\n\n // Private\n\n _initializeOnDelegatedTarget(event, context) {\n const dataKey = this.constructor.DATA_KEY\n context = context || Data.get(event.delegateTarget, dataKey)\n\n if (!context) {\n context = new this.constructor(event.delegateTarget, this._getDelegateConfig())\n Data.set(event.delegateTarget, dataKey, context)\n }\n\n return context\n }\n\n _getOffset() {\n const { offset } = this._config\n\n if (typeof offset === 'string') {\n return offset.split(',').map(val => Number.parseInt(val, 10))\n }\n\n if (typeof offset === 'function') {\n return popperData => offset(popperData, this._element)\n }\n\n return offset\n }\n\n _getPopperConfig(attachment) {\n const defaultBsPopperConfig = {\n placement: attachment,\n modifiers: [\n {\n name: 'flip',\n options: {\n fallbackPlacements: this._config.fallbackPlacements\n }\n },\n {\n name: 'offset',\n options: {\n offset: this._getOffset()\n }\n },\n {\n name: 'preventOverflow',\n options: {\n boundary: this._config.boundary\n }\n },\n {\n name: 'arrow',\n options: {\n element: `.${this.constructor.NAME}-arrow`\n }\n },\n {\n name: 'onChange',\n enabled: true,\n phase: 'afterWrite',\n fn: data => this._handlePopperPlacementChange(data)\n }\n ],\n onFirstUpdate: data => {\n if (data.options.placement !== data.placement) {\n this._handlePopperPlacementChange(data)\n }\n }\n }\n\n return {\n ...defaultBsPopperConfig,\n ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)\n }\n }\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getAttachment(placement) {\n return AttachmentMap[placement.toUpperCase()]\n }\n\n _setListeners() {\n const triggers = this._config.trigger.split(' ')\n\n triggers.forEach(trigger => {\n if (trigger === 'click') {\n EventHandler.on(this._element, this.constructor.Event.CLICK, this._config.selector, event => this.toggle(event))\n } else if (trigger !== TRIGGER_MANUAL) {\n const eventIn = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSEENTER :\n this.constructor.Event.FOCUSIN\n const eventOut = trigger === TRIGGER_HOVER ?\n this.constructor.Event.MOUSELEAVE :\n this.constructor.Event.FOCUSOUT\n\n EventHandler.on(this._element, eventIn, this._config.selector, event => this._enter(event))\n EventHandler.on(this._element, eventOut, this._config.selector, event => this._leave(event))\n }\n })\n\n this._hideModalHandler = () => {\n if (this._element) {\n this.hide()\n }\n }\n\n EventHandler.on(this._element.closest(`.${CLASS_NAME_MODAL}`), 'hide.bs.modal', this._hideModalHandler)\n\n if (this._config.selector) {\n this._config = {\n ...this._config,\n trigger: 'manual',\n selector: ''\n }\n } else {\n this._fixTitle()\n }\n }\n\n _fixTitle() {\n const title = this._element.getAttribute('title')\n const originalTitleType = typeof this._element.getAttribute('data-bs-original-title')\n\n if (title || originalTitleType !== 'string') {\n this._element.setAttribute('data-bs-original-title', title || '')\n if (title && !this._element.getAttribute('aria-label') && !this._element.textContent) {\n this._element.setAttribute('aria-label', title)\n }\n\n this._element.setAttribute('title', '')\n }\n }\n\n _enter(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = true\n }\n\n if (context.getTipElement().classList.contains(CLASS_NAME_SHOW) || context._hoverState === HOVER_STATE_SHOW) {\n context._hoverState = HOVER_STATE_SHOW\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_SHOW\n\n if (!context._config.delay || !context._config.delay.show) {\n context.show()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_SHOW) {\n context.show()\n }\n }, context._config.delay.show)\n }\n\n _leave(event, context) {\n context = this._initializeOnDelegatedTarget(event, context)\n\n if (event) {\n context._activeTrigger[\n event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER\n ] = context._element.contains(event.relatedTarget)\n }\n\n if (context._isWithActiveTrigger()) {\n return\n }\n\n clearTimeout(context._timeout)\n\n context._hoverState = HOVER_STATE_OUT\n\n if (!context._config.delay || !context._config.delay.hide) {\n context.hide()\n return\n }\n\n context._timeout = setTimeout(() => {\n if (context._hoverState === HOVER_STATE_OUT) {\n context.hide()\n }\n }, context._config.delay.hide)\n }\n\n _isWithActiveTrigger() {\n for (const trigger in this._activeTrigger) {\n if (this._activeTrigger[trigger]) {\n return true\n }\n }\n\n return false\n }\n\n _getConfig(config) {\n const dataAttributes = Manipulator.getDataAttributes(this._element)\n\n Object.keys(dataAttributes).forEach(dataAttr => {\n if (DISALLOWED_ATTRIBUTES.has(dataAttr)) {\n delete dataAttributes[dataAttr]\n }\n })\n\n config = {\n ...this.constructor.Default,\n ...dataAttributes,\n ...(typeof config === 'object' && config ? config : {})\n }\n\n config.container = config.container === false ? document.body : getElement(config.container)\n\n if (typeof config.delay === 'number') {\n config.delay = {\n show: config.delay,\n hide: config.delay\n }\n }\n\n if (typeof config.title === 'number') {\n config.title = config.title.toString()\n }\n\n if (typeof config.content === 'number') {\n config.content = config.content.toString()\n }\n\n typeCheckConfig(NAME, config, this.constructor.DefaultType)\n\n if (config.sanitize) {\n config.template = sanitizeHtml(config.template, config.allowList, config.sanitizeFn)\n }\n\n return config\n }\n\n _getDelegateConfig() {\n const config = {}\n\n if (this._config) {\n for (const key in this._config) {\n if (this.constructor.Default[key] !== this._config[key]) {\n config[key] = this._config[key]\n }\n }\n }\n\n return config\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n _handlePopperPlacementChange(popperData) {\n const { state } = popperData\n\n if (!state) {\n return\n }\n\n this.tip = state.elements.popper\n this._cleanTipClass()\n this._addAttachmentClass(this._getAttachment(state.placement))\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.get(this, DATA_KEY)\n const _config = typeof config === 'object' && config\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Tooltip(this, _config)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Tooltip to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Tooltip)\n\nexport default Tooltip\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): popover.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport { defineJQueryPlugin } from './util/index'\nimport Data from './dom/data'\nimport SelectorEngine from './dom/selector-engine'\nimport Tooltip from './tooltip'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'popover'\nconst DATA_KEY = 'bs.popover'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst CLASS_PREFIX = 'bs-popover'\nconst BSCLS_PREFIX_REGEX = new RegExp(`(^|\\\\s)${CLASS_PREFIX}\\\\S+`, 'g')\n\nconst Default = {\n ...Tooltip.Default,\n placement: 'right',\n offset: [0, 8],\n trigger: 'click',\n content: '',\n template: '<div class=\"popover\" role=\"tooltip\">' +\n '<div class=\"popover-arrow\"></div>' +\n '<h3 class=\"popover-header\"></h3>' +\n '<div class=\"popover-body\"></div>' +\n '</div>'\n}\n\nconst DefaultType = {\n ...Tooltip.DefaultType,\n content: '(string|element|function)'\n}\n\nconst Event = {\n HIDE: `hide${EVENT_KEY}`,\n HIDDEN: `hidden${EVENT_KEY}`,\n SHOW: `show${EVENT_KEY}`,\n SHOWN: `shown${EVENT_KEY}`,\n INSERTED: `inserted${EVENT_KEY}`,\n CLICK: `click${EVENT_KEY}`,\n FOCUSIN: `focusin${EVENT_KEY}`,\n FOCUSOUT: `focusout${EVENT_KEY}`,\n MOUSEENTER: `mouseenter${EVENT_KEY}`,\n MOUSELEAVE: `mouseleave${EVENT_KEY}`\n}\n\nconst CLASS_NAME_FADE = 'fade'\nconst CLASS_NAME_SHOW = 'show'\n\nconst SELECTOR_TITLE = '.popover-header'\nconst SELECTOR_CONTENT = '.popover-body'\n\n/**\n * ------------------------------------------------------------------------\n * Class Definition\n * ------------------------------------------------------------------------\n */\n\nclass Popover extends Tooltip {\n // Getters\n\n static get Default() {\n return Default\n }\n\n static get NAME() {\n return NAME\n }\n\n static get Event() {\n return Event\n }\n\n static get DefaultType() {\n return DefaultType\n }\n\n // Overrides\n\n isWithContent() {\n return this.getTitle() || this._getContent()\n }\n\n setContent() {\n const tip = this.getTipElement()\n\n // we use append for html objects to maintain js events\n this.setElementContent(SelectorEngine.findOne(SELECTOR_TITLE, tip), this.getTitle())\n let content = this._getContent()\n if (typeof content === 'function') {\n content = content.call(this._element)\n }\n\n this.setElementContent(SelectorEngine.findOne(SELECTOR_CONTENT, tip), content)\n\n tip.classList.remove(CLASS_NAME_FADE, CLASS_NAME_SHOW)\n }\n\n // Private\n\n _addAttachmentClass(attachment) {\n this.getTipElement().classList.add(`${CLASS_PREFIX}-${this.updateAttachment(attachment)}`)\n }\n\n _getContent() {\n return this._element.getAttribute('data-bs-content') || this._config.content\n }\n\n _cleanTipClass() {\n const tip = this.getTipElement()\n const tabClass = tip.getAttribute('class').match(BSCLS_PREFIX_REGEX)\n if (tabClass !== null && tabClass.length > 0) {\n tabClass.map(token => token.trim())\n .forEach(tClass => tip.classList.remove(tClass))\n }\n }\n\n // Static\n\n static jQueryInterface(config) {\n return this.each(function () {\n let data = Data.get(this, DATA_KEY)\n const _config = typeof config === 'object' ? config : null\n\n if (!data && /dispose|hide/.test(config)) {\n return\n }\n\n if (!data) {\n data = new Popover(this, _config)\n Data.set(this, DATA_KEY, data)\n }\n\n if (typeof config === 'string') {\n if (typeof data[config] === 'undefined') {\n throw new TypeError(`No method named \"${config}\"`)\n }\n\n data[config]()\n }\n })\n }\n}\n\n/**\n * ------------------------------------------------------------------------\n * jQuery\n * ------------------------------------------------------------------------\n * add .Popover to jQuery only if jQuery is present\n */\n\ndefineJQueryPlugin(Popover)\n\nexport default Popover\n","/**\n * --------------------------------------------------------------------------\n * Bootstrap (v5.0.1): scrollspy.js\n * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)\n * --------------------------------------------------------------------------\n */\n\nimport {\n defineJQueryPlugin,\n getSelectorFromElement,\n getUID,\n isElement,\n typeCheckConfig\n} from './util/index'\nimport EventHandler from './dom/event-handler'\nimport Manipulator from './dom/manipulator'\nimport SelectorEngine from './dom/selector-engine'\nimport BaseComponent from './base-component'\n\n/**\n * ------------------------------------------------------------------------\n * Constants\n * ------------------------------------------------------------------------\n */\n\nconst NAME = 'scrollspy'\nconst DATA_KEY = 'bs.scrollspy'\nconst EVENT_KEY = `.${DATA_KEY}`\nconst DATA_API_KEY = '.data-api'\n\nconst Default = {\n offset: 10,\n method: 'auto',\n target: ''\n}\n\nconst DefaultType = {\n offset: 'number',\n method: 'string',\n target: '(string|element)'\n}\n\nconst EVENT_ACTIVATE = `activate${EVENT_KEY}`\nconst EVENT_SCROLL = `scroll${EVENT_KEY}`\nconst EVENT_LOAD_DATA_API = `load${EVENT_KEY}${DATA_API_KEY}`\n\nconst CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item'\nconst CLASS_NAME_ACTIVE = 'active'\n\nconst SELECTOR_DATA_SPY = '[data-bs-spy=\"scroll\"]'\nconst SELECTOR_NAV_LIST_GROUP = '.nav, .list-group'\nconst SELECTOR_NAV_LINKS = '.nav-link'\nconst SELECTOR_NAV_ITEMS = '.nav-item'\nconst SELECTOR_LIST_ITEMS = '.list-group-item'\nconst SELECTOR_DROPDOWN = '.dropdown'\nconst SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle'\n\nconst METHOD_OFFSET = 'offset'\nconst METHOD_POSITION = 'position'\n\n/**\n * ------------------------------------------------------------------------\n * Class Def (…)
|
/plugin/vkeyboard/ |
H A D | vkeyboard.js.unc | 1356 this.VKI_iframe.style.position = "absolute"; 1677 if (VKI_getStyle(elem, "position") == "fixed") { 1685 this.VKI_keyboard.style.position = this.VKI_target.keyboardPosition;
|
/plugin/combo/resources/library/rrdiagram/0.9.4.1/ |
H A D | rrdiagram.js.map | 1 {"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, '"') + '\"';\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 '<';\n case '>':\n return '>';\n case '&':\n return '&';\n case '\\'':\n return ''';\n case '\"':\n return '"';\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 [all...] |
/plugin/fckg/fckeditor/editor/js/ |
H A D | fckeditorcode_gecko.js | 48 …GetElementWindow(A);var E=null;while (A){var F=D.getComputedStyle(A,'').position;if (F&&F!='static… 88 …rFrameStyles=FCKTools.SaveStyles(A);var J=FCKTools.GetViewPaneSize(C);B.position="absolute";A.offs… 98 …'no';D.style.width=D.style.height='0px';FCKDomTools.SetElementStyles(D,{position:'absolute',zIndex… 109 …position='absolute';B.style.top='0px';var C=A._FCKToolbarPanelButtonLineDiv=B.appendChild(A.Docume…
|
H A D | fckeditorcode_ie.js | 37 …{A=document.createElement('DIV');A.id='___FCKHiddenDiv';var B=A.style;B.position='absolute';B.visi… 92 …rFrameStyles=FCKTools.SaveStyles(A);var J=FCKTools.GetViewPaneSize(C);B.position="absolute";A.offs… 100 …'no';D.style.width=D.style.height='0px';FCKDomTools.SetElementStyles(D,{position:'absolute',zIndex… 110 …position='absolute';B.style.top='0px';var C=A._FCKToolbarPanelButtonLineDiv=B.appendChild(A.Docume…
|