@pie-element/hotspot 10.0.0-next.42 → 10.0.0-next.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/module/element.js DELETED
@@ -1 +0,0 @@
1
- import{_dll_pie_lib__math_rendering as t}from"../../../@pie-lib/math-rendering-module@^4.0.5/module/index.js";import{_dll_react_dom as e,_dll_react as n,_dll_prop_types as r,_dll_mui__material_styles as i,_dll_pie_lib__correct_answer_toggle as a,_dll_pie_lib__render_ui as s}from"../../../@pie-lib/shared-module@^3.0.5/module/index.js";var o={exports:{}},l={},h=Symbol.for("react.element"),u=Symbol.for("react.portal"),c=Symbol.for("react.fragment"),d=Symbol.for("react.strict_mode"),f=Symbol.for("react.profiler"),g=Symbol.for("react.provider"),A=Symbol.for("react.context"),p=Symbol.for("react.forward_ref"),v=Symbol.for("react.suspense"),m=Symbol.for("react.memo"),C=Symbol.for("react.lazy"),y=Symbol.iterator;var b={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},w=Object.assign,E={};function S(t,e,n){this.props=t,this.context=e,this.refs=E,this.updater=n||b}function x(){}function I(t,e,n){this.props=t,this.context=e,this.refs=E,this.updater=n||b}S.prototype.isReactComponent={},S.prototype.setState=function(t,e){if("object"!=typeof t&&"function"!=typeof t&&null!=t)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,t,e,"setState")},S.prototype.forceUpdate=function(t){this.updater.enqueueForceUpdate(this,t,"forceUpdate")},x.prototype=S.prototype;var k=I.prototype=new x;k.constructor=I,w(k,S.prototype),k.isPureReactComponent=!0;var B=Array.isArray,P=Object.prototype.hasOwnProperty,R={current:null},Q={key:!0,ref:!0,__self:!0,__source:!0};function T(t,e,n){var r,i={},a=null,s=null;if(null!=e)for(r in void 0!==e.ref&&(s=e.ref),void 0!==e.key&&(a=""+e.key),e)P.call(e,r)&&!Q.hasOwnProperty(r)&&(i[r]=e[r]);var o=arguments.length-2;if(1===o)i.children=n;else if(1<o){for(var l=Array(o),u=0;u<o;u++)l[u]=arguments[u+2];i.children=l}if(t&&t.defaultProps)for(r in o=t.defaultProps)void 0===i[r]&&(i[r]=o[r]);return{$$typeof:h,type:t,key:a,ref:s,props:i,_owner:R.current}}function D(t){return"object"==typeof t&&null!==t&&t.$$typeof===h}var M=/\/+/g;function L(t,e){return"object"==typeof t&&null!==t&&null!=t.key?function(t){var e={"=":"=0",":":"=2"};return"$"+t.replace(/[=:]/g,function(t){return e[t]})}(""+t.key):e.toString(36)}function O(t,e,n,r,i){var a=typeof t;"undefined"!==a&&"boolean"!==a||(t=null);var s=!1;if(null===t)s=!0;else switch(a){case"string":case"number":s=!0;break;case"object":switch(t.$$typeof){case h:case u:s=!0}}if(s)return i=i(s=t),t=""===r?"."+L(s,0):r,B(i)?(n="",null!=t&&(n=t.replace(M,"$&/")+"/"),O(i,e,n,"",function(t){return t})):null!=i&&(D(i)&&(i=function(t,e){return{$$typeof:h,type:t.type,key:e,ref:t.ref,props:t.props,_owner:t._owner}}(i,n+(!i.key||s&&s.key===i.key?"":(""+i.key).replace(M,"$&/")+"/")+t)),e.push(i)),1;if(s=0,r=""===r?".":r+":",B(t))for(var o=0;o<t.length;o++){var l=r+L(a=t[o],o);s+=O(a,e,n,l,i)}else if(l=function(t){return null===t||"object"!=typeof t?null:"function"==typeof(t=y&&t[y]||t["@@iterator"])?t:null}(t),"function"==typeof l)for(t=l.call(t),o=0;!(a=t.next()).done;)s+=O(a=a.value,e,n,l=r+L(a,o++),i);else if("object"===a)throw e=String(t),Error("Objects are not valid as a React child (found: "+("[object Object]"===e?"object with keys {"+Object.keys(t).join(", ")+"}":e)+"). If you meant to render a collection of children, use an array instead.");return s}function _(t,e,n){if(null==t)return t;var r=[],i=0;return O(t,r,"","",function(t){return e.call(n,t,i++)}),r}function G(t){if(-1===t._status){var e=t._result;(e=e()).then(function(e){0!==t._status&&-1!==t._status||(t._status=1,t._result=e)},function(e){0!==t._status&&-1!==t._status||(t._status=2,t._result=e)}),-1===t._status&&(t._status=0,t._result=e)}if(1===t._status)return t._result.default;throw t._result}var z={current:null},F={transition:null},N={ReactCurrentDispatcher:z,ReactCurrentBatchConfig:F,ReactCurrentOwner:R};function H(){throw Error("act(...) is not supported in production builds of React.")}l.Children={map:_,forEach:function(t,e,n){_(t,function(){e.apply(this,arguments)},n)},count:function(t){var e=0;return _(t,function(){e++}),e},toArray:function(t){return _(t,function(t){return t})||[]},only:function(t){if(!D(t))throw Error("React.Children.only expected to receive a single React element child.");return t}},l.Component=S,l.Fragment=c,l.Profiler=f,l.PureComponent=I,l.StrictMode=d,l.Suspense=v,l.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=N,l.act=H,l.cloneElement=function(t,e,n){if(null==t)throw Error("React.cloneElement(...): The argument must be a React element, but you passed "+t+".");var r=w({},t.props),i=t.key,a=t.ref,s=t._owner;if(null!=e){if(void 0!==e.ref&&(a=e.ref,s=R.current),void 0!==e.key&&(i=""+e.key),t.type&&t.type.defaultProps)var o=t.type.defaultProps;for(l in e)P.call(e,l)&&!Q.hasOwnProperty(l)&&(r[l]=void 0===e[l]&&void 0!==o?o[l]:e[l])}var l=arguments.length-2;if(1===l)r.children=n;else if(1<l){o=Array(l);for(var u=0;u<l;u++)o[u]=arguments[u+2];r.children=o}return{$$typeof:h,type:t.type,key:i,ref:a,props:r,_owner:s}},l.createContext=function(t){return(t={$$typeof:A,_currentValue:t,_currentValue2:t,_threadCount:0,Provider:null,Consumer:null,_defaultValue:null,_globalName:null}).Provider={$$typeof:g,_context:t},t.Consumer=t},l.createElement=T,l.createFactory=function(t){var e=T.bind(null,t);return e.type=t,e},l.createRef=function(){return{current:null}},l.forwardRef=function(t){return{$$typeof:p,render:t}},l.isValidElement=D,l.lazy=function(t){return{$$typeof:C,_payload:{_status:-1,_result:t},_init:G}},l.memo=function(t,e){return{$$typeof:m,type:t,compare:void 0===e?null:e}},l.startTransition=function(t){var e=F.transition;F.transition={};try{t()}finally{F.transition=e}},l.unstable_act=H,l.useCallback=function(t,e){return z.current.useCallback(t,e)},l.useContext=function(t){return z.current.useContext(t)},l.useDebugValue=function(){},l.useDeferredValue=function(t){return z.current.useDeferredValue(t)},l.useEffect=function(t,e){return z.current.useEffect(t,e)},l.useId=function(){return z.current.useId()},l.useImperativeHandle=function(t,e,n){return z.current.useImperativeHandle(t,e,n)},l.useInsertionEffect=function(t,e){return z.current.useInsertionEffect(t,e)},l.useLayoutEffect=function(t,e){return z.current.useLayoutEffect(t,e)},l.useMemo=function(t,e){return z.current.useMemo(t,e)},l.useReducer=function(t,e,n){return z.current.useReducer(t,e,n)},l.useRef=function(t){return z.current.useRef(t)},l.useState=function(t){return z.current.useState(t)},l.useSyncExternalStore=function(t,e,n){return z.current.useSyncExternalStore(t,e,n)},l.useTransition=function(){return z.current.useTransition()},l.version="18.3.1",o.exports=l;var j=o.exports;var J,U=e;J=U.createRoot,U.hydrateRoot;var Y={};Object.defineProperty(Y,"__esModule",{value:!0});class W extends CustomEvent{constructor(t,e,n){super(W.TYPE,{bubbles:!0,composed:!0,detail:{complete:e,component:t,hasModel:n}}),this.component=t,this.complete=e}}W.TYPE="model-set";var X=Y.ModelSetEvent=W;class q extends CustomEvent{constructor(t,e){super(q.TYPE,{bubbles:!0,composed:!0,detail:{complete:e,component:t}}),this.component=t,this.complete=e}}q.TYPE="session-changed";var K=Y.SessionChangedEvent=q,V=Math.PI/180;const Z="undefined"!=typeof global?global:"undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope?self:{},$={_global:Z,version:"8.3.0",isBrowser:"undefined"!=typeof window&&("[object Window]"==={}.toString.call(window)||"[object global]"==={}.toString.call(window)),isUnminified:/param/.test(function(t){}.toString()),dblClickWindow:400,getAngle:t=>$.angleDeg?t*V:t,enableTrace:!1,pointerEventsEnabled:!0,autoDrawEnabled:!0,hitOnDragEnabled:!1,capturePointerEventsEnabled:!1,_mouseListenClick:!1,_touchListenClick:!1,_pointerListenClick:!1,_mouseInDblClickWindow:!1,_touchInDblClickWindow:!1,_pointerInDblClickWindow:!1,_mouseDblClickPointerId:null,_touchDblClickPointerId:null,_pointerDblClickPointerId:null,pixelRatio:"undefined"!=typeof window&&window.devicePixelRatio||1,dragDistance:3,angleDeg:!0,showWarnings:!0,dragButtons:[0,1],isDragging:()=>$.DD.isDragging,isDragReady:()=>!!$.DD.node,document:Z.document,_injectGlobal(t){Z.Konva=t}},tt=t=>{$[t.prototype.getClassName()]=t};$._injectGlobal($);class et{constructor(t=[1,0,0,1,0,0]){this.dirty=!1,this.m=t&&t.slice()||[1,0,0,1,0,0]}reset(){this.m[0]=1,this.m[1]=0,this.m[2]=0,this.m[3]=1,this.m[4]=0,this.m[5]=0}copy(){return new et(this.m)}copyInto(t){t.m[0]=this.m[0],t.m[1]=this.m[1],t.m[2]=this.m[2],t.m[3]=this.m[3],t.m[4]=this.m[4],t.m[5]=this.m[5]}point(t){var e=this.m;return{x:e[0]*t.x+e[2]*t.y+e[4],y:e[1]*t.x+e[3]*t.y+e[5]}}translate(t,e){return this.m[4]+=this.m[0]*t+this.m[2]*e,this.m[5]+=this.m[1]*t+this.m[3]*e,this}scale(t,e){return this.m[0]*=t,this.m[1]*=t,this.m[2]*=e,this.m[3]*=e,this}rotate(t){var e=Math.cos(t),n=Math.sin(t),r=this.m[0]*e+this.m[2]*n,i=this.m[1]*e+this.m[3]*n,a=this.m[0]*-n+this.m[2]*e,s=this.m[1]*-n+this.m[3]*e;return this.m[0]=r,this.m[1]=i,this.m[2]=a,this.m[3]=s,this}getTranslation(){return{x:this.m[4],y:this.m[5]}}skew(t,e){var n=this.m[0]+this.m[2]*e,r=this.m[1]+this.m[3]*e,i=this.m[2]+this.m[0]*t,a=this.m[3]+this.m[1]*t;return this.m[0]=n,this.m[1]=r,this.m[2]=i,this.m[3]=a,this}multiply(t){var e=this.m[0]*t.m[0]+this.m[2]*t.m[1],n=this.m[1]*t.m[0]+this.m[3]*t.m[1],r=this.m[0]*t.m[2]+this.m[2]*t.m[3],i=this.m[1]*t.m[2]+this.m[3]*t.m[3],a=this.m[0]*t.m[4]+this.m[2]*t.m[5]+this.m[4],s=this.m[1]*t.m[4]+this.m[3]*t.m[5]+this.m[5];return this.m[0]=e,this.m[1]=n,this.m[2]=r,this.m[3]=i,this.m[4]=a,this.m[5]=s,this}invert(){var t=1/(this.m[0]*this.m[3]-this.m[1]*this.m[2]),e=this.m[3]*t,n=-this.m[1]*t,r=-this.m[2]*t,i=this.m[0]*t,a=t*(this.m[2]*this.m[5]-this.m[3]*this.m[4]),s=t*(this.m[1]*this.m[4]-this.m[0]*this.m[5]);return this.m[0]=e,this.m[1]=n,this.m[2]=r,this.m[3]=i,this.m[4]=a,this.m[5]=s,this}getMatrix(){return this.m}setAbsolutePosition(t,e){var n=this.m[0],r=this.m[1],i=this.m[2],a=this.m[3],s=this.m[4],o=(n*(e-this.m[5])-r*(t-s))/(n*a-r*i),l=(t-s-i*o)/n;return this.translate(l,o)}decompose(){var t=this.m[0],e=this.m[1],n=this.m[2],r=this.m[3],i=t*r-e*n;let a={x:this.m[4],y:this.m[5],rotation:0,scaleX:0,scaleY:0,skewX:0,skewY:0};if(0!=t||0!=e){var s=Math.sqrt(t*t+e*e);a.rotation=e>0?Math.acos(t/s):-Math.acos(t/s),a.scaleX=s,a.scaleY=i/s,a.skewX=(t*n+e*r)/i,a.skewY=0}else if(0!=n||0!=r){var o=Math.sqrt(n*n+r*r);a.rotation=Math.PI/2-(r>0?Math.acos(-n/o):-Math.acos(n/o)),a.scaleX=i/o,a.scaleY=o,a.skewX=0,a.skewY=(t*n+e*r)/i}return a.rotation=ht._getRotation(a.rotation),a}}var nt=Math.PI/180,rt=180/Math.PI,it="Konva error: ",at={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,132,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,255,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[119,128,144],slategrey:[119,128,144],snow:[255,255,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,5]},st=/rgb\((\d{1,3}),(\d{1,3}),(\d{1,3})\)/,ot=[];const lt="undefined"!=typeof requestAnimationFrame&&requestAnimationFrame||function(t){setTimeout(t,60)},ht={_isElement:t=>!(!t||1!=t.nodeType),_isFunction:t=>!!(t&&t.constructor&&t.call&&t.apply),_isPlainObject:t=>!!t&&t.constructor===Object,_isArray:t=>"[object Array]"===Object.prototype.toString.call(t),_isNumber:t=>"[object Number]"===Object.prototype.toString.call(t)&&!isNaN(t)&&isFinite(t),_isString:t=>"[object String]"===Object.prototype.toString.call(t),_isBoolean:t=>"[object Boolean]"===Object.prototype.toString.call(t),isObject:t=>t instanceof Object,isValidSelector(t){if("string"!=typeof t)return!1;var e=t[0];return"#"===e||"."===e||e===e.toUpperCase()},_sign:t=>0===t||t>0?1:-1,requestAnimFrame(t){ot.push(t),1===ot.length&&lt(function(){const t=ot;ot=[],t.forEach(function(t){t()})})},createCanvasElement(){var t=document.createElement("canvas");try{t.style=t.style||{}}catch(t){}return t},createImageElement:()=>document.createElement("img"),_isInDocument(t){for(;t=t.parentNode;)if(t==document)return!0;return!1},_urlToImage(t,e){var n=ht.createImageElement();n.onload=function(){e(n)},n.src=t},_rgbToHex:(t,e,n)=>((1<<24)+(t<<16)+(e<<8)+n).toString(16).slice(1),_hexToRgb(t){t=t.replace("#","");var e=parseInt(t,16);return{r:e>>16&255,g:e>>8&255,b:255&e}},getRandomColor(){for(var t=(16777215*Math.random()|0).toString(16);t.length<6;)t="0"+t;return"#"+t},getRGB(t){var e;return t in at?{r:(e=at[t])[0],g:e[1],b:e[2]}:"#"===t[0]?this._hexToRgb(t.substring(1)):"rgb("===t.substr(0,4)?(e=st.exec(t.replace(/ /g,"")),{r:parseInt(e[1],10),g:parseInt(e[2],10),b:parseInt(e[3],10)}):{r:0,g:0,b:0}},colorToRGBA:t=>(t=t||"black",ht._namedColorToRBA(t)||ht._hex3ColorToRGBA(t)||ht._hex6ColorToRGBA(t)||ht._rgbColorToRGBA(t)||ht._rgbaColorToRGBA(t)||ht._hslColorToRGBA(t)),_namedColorToRBA(t){var e=at[t.toLowerCase()];return e?{r:e[0],g:e[1],b:e[2],a:1}:null},_rgbColorToRGBA(t){if(0===t.indexOf("rgb(")){var e=(t=t.match(/rgb\(([^)]+)\)/)[1]).split(/ *, */).map(Number);return{r:e[0],g:e[1],b:e[2],a:1}}},_rgbaColorToRGBA(t){if(0===t.indexOf("rgba(")){var e=(t=t.match(/rgba\(([^)]+)\)/)[1]).split(/ *, */).map(Number);return{r:e[0],g:e[1],b:e[2],a:e[3]}}},_hex6ColorToRGBA(t){if("#"===t[0]&&7===t.length)return{r:parseInt(t.slice(1,3),16),g:parseInt(t.slice(3,5),16),b:parseInt(t.slice(5,7),16),a:1}},_hex3ColorToRGBA(t){if("#"===t[0]&&4===t.length)return{r:parseInt(t[1]+t[1],16),g:parseInt(t[2]+t[2],16),b:parseInt(t[3]+t[3],16),a:1}},_hslColorToRGBA(t){if(/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.test(t)){const[e,...n]=/hsl\((\d+),\s*([\d.]+)%,\s*([\d.]+)%\)/g.exec(t),r=Number(n[0])/360,i=Number(n[1])/100,a=Number(n[2])/100;let s,o,l;if(0===i)return l=255*a,{r:Math.round(l),g:Math.round(l),b:Math.round(l),a:1};s=a<.5?a*(1+i):a+i-a*i;const h=2*a-s,u=[0,0,0];for(let t=0;t<3;t++)o=r+1/3*-(t-1),o<0&&o++,o>1&&o--,l=6*o<1?h+6*(s-h)*o:2*o<1?s:3*o<2?h+(s-h)*(2/3-o)*6:h,u[t]=255*l;return{r:Math.round(u[0]),g:Math.round(u[1]),b:Math.round(u[2]),a:1}}},haveIntersection:(t,e)=>!(e.x>t.x+t.width||e.x+e.width<t.x||e.y>t.y+t.height||e.y+e.height<t.y),cloneObject(t){var e={};for(var n in t)this._isPlainObject(t[n])?e[n]=this.cloneObject(t[n]):this._isArray(t[n])?e[n]=this.cloneArray(t[n]):e[n]=t[n];return e},cloneArray:t=>t.slice(0),degToRad:t=>t*nt,radToDeg:t=>t*rt,_degToRad:t=>(ht.warn("Util._degToRad is removed. Please use public Util.degToRad instead."),ht.degToRad(t)),_radToDeg:t=>(ht.warn("Util._radToDeg is removed. Please use public Util.radToDeg instead."),ht.radToDeg(t)),_getRotation:t=>$.angleDeg?ht.radToDeg(t):t,_capitalize:t=>t.charAt(0).toUpperCase()+t.slice(1),throw(t){throw new Error(it+t)},error(t){console.error(it+t)},warn(t){$.showWarnings&&console.warn("Konva warning: "+t)},each(t,e){for(var n in t)e(n,t[n])},_inRange:(t,e,n)=>e<=t&&t<n,_getProjectionToSegment(t,e,n,r,i,a){var s,o,l,h=(t-n)*(t-n)+(e-r)*(e-r);if(0==h)s=t,o=e,l=(i-n)*(i-n)+(a-r)*(a-r);else{var u=((i-t)*(n-t)+(a-e)*(r-e))/h;u<0?(s=t,o=e,l=(t-i)*(t-i)+(e-a)*(e-a)):u>1?(s=n,o=r,l=(n-i)*(n-i)+(r-a)*(r-a)):l=((s=t+u*(n-t))-i)*(s-i)+((o=e+u*(r-e))-a)*(o-a)}return[s,o,l]},_getProjectionToLine(t,e,n){var r=ht.cloneObject(t),i=Number.MAX_VALUE;return e.forEach(function(a,s){if(n||s!==e.length-1){var o=e[(s+1)%e.length],l=ht._getProjectionToSegment(a.x,a.y,o.x,o.y,t.x,t.y),h=l[0],u=l[1],c=l[2];c<i&&(r.x=h,r.y=u,i=c)}}),r},_prepareArrayForTween(t,e,n){var r,i=[],a=[];if(t.length>e.length){var s=e;e=t,t=s}for(r=0;r<t.length;r+=2)i.push({x:t[r],y:t[r+1]});for(r=0;r<e.length;r+=2)a.push({x:e[r],y:e[r+1]});var o=[];return a.forEach(function(t){var e=ht._getProjectionToLine(t,i,n);o.push(e.x),o.push(e.y)}),o},_prepareToStringify(t){var e;for(var n in t.visitedByCircularReferenceRemoval=!0,t)if(t.hasOwnProperty(n)&&t[n]&&"object"==typeof t[n])if(e=Object.getOwnPropertyDescriptor(t,n),t[n].visitedByCircularReferenceRemoval||ht._isElement(t[n])){if(!e.configurable)return null;delete t[n]}else if(null===ht._prepareToStringify(t[n])){if(!e.configurable)return null;delete t[n]}return delete t.visitedByCircularReferenceRemoval,t},_assign(t,e){for(var n in e)t[n]=e[n];return t},_getFirstPointerId:t=>t.touches?t.changedTouches[0].identifier:t.pointerId||999};function ut(t){return ht._isString(t)?'"'+t+'"':"[object Number]"===Object.prototype.toString.call(t)||ht._isBoolean(t)?t:Object.prototype.toString.call(t)}function ct(t){return t>255?255:t<0?0:Math.round(t)}function dt(){if($.isUnminified)return function(t,e){return ht._isNumber(t)||ht.warn(ut(t)+' is a not valid value for "'+e+'" attribute. The value should be a number.'),t}}function ft(t){if($.isUnminified)return function(e,n){let r=ht._isNumber(e),i=ht._isArray(e)&&e.length==t;return r||i||ht.warn(ut(e)+' is a not valid value for "'+n+'" attribute. The value should be a number or Array<number>('+t+")"),e}}function gt(){if($.isUnminified)return function(t,e){return ht._isNumber(t)||"auto"===t||ht.warn(ut(t)+' is a not valid value for "'+e+'" attribute. The value should be a number or "auto".'),t}}function At(){if($.isUnminified)return function(t,e){return ht._isString(t)||ht.warn(ut(t)+' is a not valid value for "'+e+'" attribute. The value should be a string.'),t}}function pt(){if($.isUnminified)return function(t,e){const n=ht._isString(t),r="[object CanvasGradient]"===Object.prototype.toString.call(t)||t&&t.addColorStop;return n||r||ht.warn(ut(t)+' is a not valid value for "'+e+'" attribute. The value should be a string or a native gradient.'),t}}function vt(){if($.isUnminified)return function(t,e){return!0===t||!1===t||ht.warn(ut(t)+' is a not valid value for "'+e+'" attribute. The value should be a boolean.'),t}}var mt="get",Ct="set";const yt={addGetterSetter(t,e,n,r,i){yt.addGetter(t,e,n),yt.addSetter(t,e,r,i),yt.addOverloadedGetterSetter(t,e)},addGetter(t,e,n){var r=mt+ht._capitalize(e);t.prototype[r]=t.prototype[r]||function(){var t=this.attrs[e];return void 0===t?n:t}},addSetter(t,e,n,r){var i=Ct+ht._capitalize(e);t.prototype[i]||yt.overWriteSetter(t,e,n,r)},overWriteSetter(t,e,n,r){var i=Ct+ht._capitalize(e);t.prototype[i]=function(t){return n&&null!=t&&(t=n.call(this,t,e)),this._setAttr(e,t),r&&r.call(this),this}},addComponentsGetterSetter(t,e,n,r,i){var a,s,o=n.length,l=ht._capitalize,h=mt+l(e),u=Ct+l(e);t.prototype[h]=function(){var t={};for(a=0;a<o;a++)t[s=n[a]]=this.getAttr(e+l(s));return t};var c=function(t){if($.isUnminified)return function(e,n){return ht.isObject(e)||ht.warn(ut(e)+' is a not valid value for "'+n+'" attribute. The value should be an object with properties '+t),e}}(n);t.prototype[u]=function(t){var n,a=this.attrs[e];for(n in r&&(t=r.call(this,t)),c&&c.call(this,t,e),t)t.hasOwnProperty(n)&&this._setAttr(e+l(n),t[n]);return this._fireChangeEvent(e,a,t),i&&i.call(this),this},yt.addOverloadedGetterSetter(t,e)},addOverloadedGetterSetter(t,e){var n=ht._capitalize(e),r=Ct+n,i=mt+n;t.prototype[e]=function(){return arguments.length?(this[r](arguments[0]),this):this[i]()}},addDeprecatedGetterSetter(t,e,n,r){ht.error("Adding deprecated "+e);var i=mt+ht._capitalize(e),a=e+" property is deprecated and will be removed soon. Look at Konva change log for more information.";t.prototype[i]=function(){ht.error(a);var t=this.attrs[e];return void 0===t?n:t},yt.addSetter(t,e,r,function(){ht.error(a)}),yt.addOverloadedGetterSetter(t,e)},backCompat(t,e){ht.each(e,function(e,n){var r=t.prototype[n],i=mt+ht._capitalize(e),a=Ct+ht._capitalize(e);function s(){r.apply(this,arguments),ht.error('"'+e+'" method is deprecated and will be removed soon. Use ""'+n+'" instead.')}t.prototype[e]=s,t.prototype[i]=s,t.prototype[a]=s})},afterSetFilter(){this._filterUpToDate=!1}};var bt=["arc","arcTo","beginPath","bezierCurveTo","clearRect","clip","closePath","createLinearGradient","createPattern","createRadialGradient","drawImage","ellipse","fill","fillText","getImageData","createImageData","lineTo","moveTo","putImageData","quadraticCurveTo","rect","restore","rotate","save","scale","setLineDash","setTransform","stroke","strokeText","transform","translate"];class wt{constructor(t){this.canvas=t,this._context=t._canvas.getContext("2d"),$.enableTrace&&(this.traceArr=[],this._enableTrace())}fillShape(t){t.fillEnabled()&&this._fill(t)}_fill(t){}strokeShape(t){t.hasStroke()&&this._stroke(t)}_stroke(t){}fillStrokeShape(t){t.attrs.fillAfterStrokeEnabled?(this.strokeShape(t),this.fillShape(t)):(this.fillShape(t),this.strokeShape(t))}getTrace(t,e){var n,r,i,a,s=this.traceArr,o=s.length,l="";for(n=0;n<o;n++)(i=(r=s[n]).method)?(a=r.args,l+=i,t?l+="()":ht._isArray(a[0])?l+="(["+a.join(",")+"])":(e&&(a=a.map(t=>"number"==typeof t?Math.floor(t):t)),l+="("+a.join(",")+")")):(l+=r.property,t||(l+="="+r.val)),l+=";";return l}clearTrace(){this.traceArr=[]}_trace(t){var e=this.traceArr;e.push(t),e.length>=100&&e.shift()}reset(){var t=this.getCanvas().getPixelRatio();this.setTransform(1*t,0,0,1*t,0,0)}getCanvas(){return this.canvas}clear(t){var e=this.getCanvas();t?this.clearRect(t.x||0,t.y||0,t.width||0,t.height||0):this.clearRect(0,0,e.getWidth()/e.pixelRatio,e.getHeight()/e.pixelRatio)}_applyLineCap(t){var e=t.getLineCap();e&&this.setAttr("lineCap",e)}_applyOpacity(t){var e=t.getAbsoluteOpacity();1!==e&&this.setAttr("globalAlpha",e)}_applyLineJoin(t){var e=t.attrs.lineJoin;e&&this.setAttr("lineJoin",e)}setAttr(t,e){this._context[t]=e}arc(t,e,n,r,i,a){this._context.arc(t,e,n,r,i,a)}arcTo(t,e,n,r,i){this._context.arcTo(t,e,n,r,i)}beginPath(){this._context.beginPath()}bezierCurveTo(t,e,n,r,i,a){this._context.bezierCurveTo(t,e,n,r,i,a)}clearRect(t,e,n,r){this._context.clearRect(t,e,n,r)}clip(){this._context.clip()}closePath(){this._context.closePath()}createImageData(t,e){var n=arguments;return 2===n.length?this._context.createImageData(t,e):1===n.length?this._context.createImageData(t):void 0}createLinearGradient(t,e,n,r){return this._context.createLinearGradient(t,e,n,r)}createPattern(t,e){return this._context.createPattern(t,e)}createRadialGradient(t,e,n,r,i,a){return this._context.createRadialGradient(t,e,n,r,i,a)}drawImage(t,e,n,r,i,a,s,o,l){var h=arguments,u=this._context;3===h.length?u.drawImage(t,e,n):5===h.length?u.drawImage(t,e,n,r,i):9===h.length&&u.drawImage(t,e,n,r,i,a,s,o,l)}ellipse(t,e,n,r,i,a,s,o){this._context.ellipse(t,e,n,r,i,a,s,o)}isPointInPath(t,e){return this._context.isPointInPath(t,e)}fill(t){t?this._context.fill(t):this._context.fill()}fillRect(t,e,n,r){this._context.fillRect(t,e,n,r)}strokeRect(t,e,n,r){this._context.strokeRect(t,e,n,r)}fillText(t,e,n,r){r?this._context.fillText(t,e,n,r):this._context.fillText(t,e,n)}measureText(t){return this._context.measureText(t)}getImageData(t,e,n,r){return this._context.getImageData(t,e,n,r)}lineTo(t,e){this._context.lineTo(t,e)}moveTo(t,e){this._context.moveTo(t,e)}rect(t,e,n,r){this._context.rect(t,e,n,r)}putImageData(t,e,n){this._context.putImageData(t,e,n)}quadraticCurveTo(t,e,n,r){this._context.quadraticCurveTo(t,e,n,r)}restore(){this._context.restore()}rotate(t){this._context.rotate(t)}save(){this._context.save()}scale(t,e){this._context.scale(t,e)}setLineDash(t){this._context.setLineDash?this._context.setLineDash(t):"mozDash"in this._context?this._context.mozDash=t:"webkitLineDash"in this._context&&(this._context.webkitLineDash=t)}getLineDash(){return this._context.getLineDash()}setTransform(t,e,n,r,i,a){this._context.setTransform(t,e,n,r,i,a)}stroke(t){t?this._context.stroke(t):this._context.stroke()}strokeText(t,e,n,r){this._context.strokeText(t,e,n,r)}transform(t,e,n,r,i,a){this._context.transform(t,e,n,r,i,a)}translate(t,e){this._context.translate(t,e)}_enableTrace(){var t,e,n=this,r=bt.length,i=this.setAttr,a=function(t){var r,i=n[t];n[t]=function(){return e=function(t){var e,n,r=[],i=t.length,a=ht;for(e=0;e<i;e++)n=t[e],a._isNumber(n)?n=Math.round(1e3*n)/1e3:a._isString(n)||(n+=""),r.push(n);return r}(Array.prototype.slice.call(arguments,0)),r=i.apply(n,arguments),n._trace({method:t,args:e}),r}};for(t=0;t<r;t++)a(bt[t]);n.setAttr=function(){i.apply(n,arguments);var t=arguments[0],e=arguments[1];"shadowOffsetX"!==t&&"shadowOffsetY"!==t&&"shadowBlur"!==t||(e/=this.canvas.getPixelRatio()),n._trace({property:t,val:e})}}_applyGlobalCompositeOperation(t){const e=t.attrs.globalCompositeOperation;!e||"source-over"===e||this.setAttr("globalCompositeOperation",e)}}["fillStyle","strokeStyle","shadowColor","shadowBlur","shadowOffsetX","shadowOffsetY","lineCap","lineDashOffset","lineJoin","lineWidth","miterLimit","font","textAlign","textBaseline","globalAlpha","globalCompositeOperation","imageSmoothingEnabled"].forEach(function(t){Object.defineProperty(wt.prototype,t,{get(){return this._context[t]},set(e){this._context[t]=e}})});class Et extends wt{_fillColor(t){var e=t.fill();this.setAttr("fillStyle",e),t._fillFunc(this)}_fillPattern(t){this.setAttr("fillStyle",t._getFillPattern()),t._fillFunc(this)}_fillLinearGradient(t){var e=t._getLinearGradient();e&&(this.setAttr("fillStyle",e),t._fillFunc(this))}_fillRadialGradient(t){var e=t._getRadialGradient();e&&(this.setAttr("fillStyle",e),t._fillFunc(this))}_fill(t){var e=t.fill(),n=t.getFillPriority();if(e&&"color"===n)this._fillColor(t);else{var r=t.getFillPatternImage();if(r&&"pattern"===n)this._fillPattern(t);else{var i=t.getFillLinearGradientColorStops();if(i&&"linear-gradient"===n)this._fillLinearGradient(t);else{var a=t.getFillRadialGradientColorStops();a&&"radial-gradient"===n?this._fillRadialGradient(t):e?this._fillColor(t):r?this._fillPattern(t):i?this._fillLinearGradient(t):a&&this._fillRadialGradient(t)}}}}_strokeLinearGradient(t){var e=t.getStrokeLinearGradientStartPoint(),n=t.getStrokeLinearGradientEndPoint(),r=t.getStrokeLinearGradientColorStops(),i=this.createLinearGradient(e.x,e.y,n.x,n.y);if(r){for(var a=0;a<r.length;a+=2)i.addColorStop(r[a],r[a+1]);this.setAttr("strokeStyle",i)}}_stroke(t){var e=t.dash(),n=t.getStrokeScaleEnabled();if(t.hasStroke()){if(!n){this.save();var r=this.getCanvas().getPixelRatio();this.setTransform(r,0,0,r,0,0)}this._applyLineCap(t),e&&t.dashEnabled()&&(this.setLineDash(e),this.setAttr("lineDashOffset",t.dashOffset())),this.setAttr("lineWidth",t.strokeWidth()),t.getShadowForStrokeEnabled()||this.setAttr("shadowColor","rgba(0,0,0,0)"),t.getStrokeLinearGradientColorStops()?this._strokeLinearGradient(t):this.setAttr("strokeStyle",t.stroke()),t._strokeFunc(this),n||this.restore()}}_applyShadow(t){var e,n,r,i=null!==(e=t.getShadowRGBA())&&void 0!==e?e:"black",a=null!==(n=t.getShadowBlur())&&void 0!==n?n:5,s=null!==(r=t.getShadowOffset())&&void 0!==r?r:{x:0,y:0},o=t.getAbsoluteScale(),l=this.canvas.getPixelRatio(),h=o.x*l,u=o.y*l;this.setAttr("shadowColor",i),this.setAttr("shadowBlur",a*Math.min(Math.abs(h),Math.abs(u))),this.setAttr("shadowOffsetX",s.x*h),this.setAttr("shadowOffsetY",s.y*u)}}class St extends wt{_fill(t){this.save(),this.setAttr("fillStyle",t.colorKey),t._fillFuncHit(this),this.restore()}strokeShape(t){t.hasHitStroke()&&this._stroke(t)}_stroke(t){if(t.hasHitStroke()){var e=t.getStrokeScaleEnabled();if(!e){this.save();var n=this.getCanvas().getPixelRatio();this.setTransform(n,0,0,n,0,0)}this._applyLineCap(t);var r=t.hitStrokeWidth(),i="auto"===r?t.strokeWidth():r;this.setAttr("lineWidth",i),this.setAttr("strokeStyle",t.colorKey),t._strokeFuncHit(this),e||this.restore()}}}var xt;class It{constructor(t){this.pixelRatio=1,this.width=0,this.height=0,this.isCache=!1;var e=(t||{}).pixelRatio||$.pixelRatio||function(){if(xt)return xt;var t=ht.createCanvasElement().getContext("2d");return xt=($._global.devicePixelRatio||1)/(t.webkitBackingStorePixelRatio||t.mozBackingStorePixelRatio||t.msBackingStorePixelRatio||t.oBackingStorePixelRatio||t.backingStorePixelRatio||1)}();this.pixelRatio=e,this._canvas=ht.createCanvasElement(),this._canvas.style.padding="0",this._canvas.style.margin="0",this._canvas.style.border="0",this._canvas.style.background="transparent",this._canvas.style.position="absolute",this._canvas.style.top="0",this._canvas.style.left="0"}getContext(){return this.context}getPixelRatio(){return this.pixelRatio}setPixelRatio(t){var e=this.pixelRatio;this.pixelRatio=t,this.setSize(this.getWidth()/e,this.getHeight()/e)}setWidth(t){this.width=this._canvas.width=t*this.pixelRatio,this._canvas.style.width=t+"px";var e=this.pixelRatio;this.getContext()._context.scale(e,e)}setHeight(t){this.height=this._canvas.height=t*this.pixelRatio,this._canvas.style.height=t+"px";var e=this.pixelRatio;this.getContext()._context.scale(e,e)}getWidth(){return this.width}getHeight(){return this.height}setSize(t,e){this.setWidth(t||0),this.setHeight(e||0)}toDataURL(t,e){try{return this._canvas.toDataURL(t,e)}catch(t){try{return this._canvas.toDataURL()}catch(t){return ht.error("Unable to get data URL. "+t.message+" For more info read https://konvajs.org/docs/posts/Tainted_Canvas.html."),""}}}}yt.addGetterSetter(It,"pixelRatio",void 0,dt());class kt extends It{constructor(t={width:0,height:0}){super(t),this.context=new Et(this),this.setSize(t.width,t.height)}}class Bt extends It{constructor(t={width:0,height:0}){super(t),this.hitCanvas=!0,this.context=new St(this),this.setSize(t.width,t.height)}}const Pt={get isDragging(){var t=!1;return Pt._dragElements.forEach(e=>{"dragging"===e.dragStatus&&(t=!0)}),t},justDragged:!1,get node(){var t;return Pt._dragElements.forEach(e=>{t=e.node}),t},_dragElements:new Map,_drag(t){const e=[];Pt._dragElements.forEach((n,r)=>{const{node:i}=n,a=i.getStage();a.setPointersPositions(t),void 0===n.pointerId&&(n.pointerId=ht._getFirstPointerId(t));const s=a._changedPointerPositions.find(t=>t.id===n.pointerId);if(s){if("dragging"!==n.dragStatus){var o=i.dragDistance();if(Math.max(Math.abs(s.x-n.startPointerPos.x),Math.abs(s.y-n.startPointerPos.y))<o)return;if(i.startDrag({evt:t}),!i.isDragging())return}i._setDragPosition(t,n),e.push(i)}}),e.forEach(e=>{e.fire("dragmove",{type:"dragmove",target:e,evt:t},!0)})},_endDragBefore(t){Pt._dragElements.forEach(e=>{const{node:n}=e,r=n.getStage();t&&r.setPointersPositions(t);if(!r._changedPointerPositions.find(t=>t.id===e.pointerId))return;"dragging"!==e.dragStatus&&"stopped"!==e.dragStatus||(Pt.justDragged=!0,$._mouseListenClick=!1,$._touchListenClick=!1,$._pointerListenClick=!1,e.dragStatus="stopped");const i=e.node.getLayer()||e.node instanceof $.Stage&&e.node;i&&i.batchDraw()})},_endDragAfter(t){Pt._dragElements.forEach((e,n)=>{"stopped"===e.dragStatus&&e.node.fire("dragend",{type:"dragend",target:e.node,evt:t},!0),"dragging"!==e.dragStatus&&Pt._dragElements.delete(n)})}};$.isBrowser&&(window.addEventListener("mouseup",Pt._endDragBefore,!0),window.addEventListener("touchend",Pt._endDragBefore,!0),window.addEventListener("mousemove",Pt._drag),window.addEventListener("touchmove",Pt._drag),window.addEventListener("mouseup",Pt._endDragAfter,!1),window.addEventListener("touchend",Pt._endDragAfter,!1));var Rt="absoluteOpacity",Qt="allEventListeners",Tt="absoluteTransform",Dt="absoluteScale",Mt="canvas",Lt="listening",Ot="mouseenter",_t="mouseleave",Gt="Shape",zt=" ",Ft="stage",Nt="transform",Ht="visible",jt=["xChange.konva","yChange.konva","scaleXChange.konva","scaleYChange.konva","skewXChange.konva","skewYChange.konva","rotationChange.konva","offsetXChange.konva","offsetYChange.konva","transformsEnabledChange.konva"].join(zt);let Jt=1;class Ut{constructor(t){this._id=Jt++,this.eventListeners={},this.attrs={},this.index=0,this._allEventListeners=null,this.parent=null,this._cache=new Map,this._attachedDepsListeners=new Map,this._lastPos=null,this._batchingTransformChange=!1,this._needClearTransformCache=!1,this._filterUpToDate=!1,this._isUnderCache=!1,this._dragEventId=null,this._shouldFireChangeEvents=!1,this.setAttrs(t),this._shouldFireChangeEvents=!0}hasChildren(){return!1}_clearCache(t){t!==Nt&&t!==Tt||!this._cache.get(t)?t?this._cache.delete(t):this._cache.clear():this._cache.get(t).dirty=!0}_getCache(t,e){var n=this._cache.get(t);return(void 0===n||(t===Nt||t===Tt)&&!0===n.dirty)&&(n=e.call(this),this._cache.set(t,n)),n}_calculate(t,e,n){if(!this._attachedDepsListeners.get(t)){const n=e.map(t=>t+"Change.konva").join(zt);this.on(n,()=>{this._clearCache(t)}),this._attachedDepsListeners.set(t,!0)}return this._getCache(t,n)}_getCanvasCache(){return this._cache.get(Mt)}_clearSelfAndDescendantCache(t){this._clearCache(t),t===Tt&&this.fire("absoluteTransformChange")}clearCache(){return this._cache.delete(Mt),this._clearSelfAndDescendantCache(),this._requestDraw(),this}cache(t){var e=t||{},n={};void 0!==e.x&&void 0!==e.y&&void 0!==e.width&&void 0!==e.height||(n=this.getClientRect({skipTransform:!0,relativeTo:this.getParent()}));var r=Math.ceil(e.width||n.width),i=Math.ceil(e.height||n.height),a=e.pixelRatio,s=void 0===e.x?n.x:e.x,o=void 0===e.y?n.y:e.y,l=e.offset||0,h=e.drawBorder||!1,u=e.hitCanvasPixelRatio||1;if(r&&i){s-=l,o-=l;var c=new kt({pixelRatio:a,width:r+=2*l,height:i+=2*l}),d=new kt({pixelRatio:a,width:0,height:0}),f=new Bt({pixelRatio:u,width:r,height:i}),g=c.getContext(),A=f.getContext();return f.isCache=!0,c.isCache=!0,this._cache.delete(Mt),this._filterUpToDate=!1,!1===e.imageSmoothingEnabled&&(c.getContext()._context.imageSmoothingEnabled=!1,d.getContext()._context.imageSmoothingEnabled=!1),g.save(),A.save(),g.translate(-s,-o),A.translate(-s,-o),this._isUnderCache=!0,this._clearSelfAndDescendantCache(Rt),this._clearSelfAndDescendantCache(Dt),this.drawScene(c,this),this.drawHit(f,this),this._isUnderCache=!1,g.restore(),A.restore(),h&&(g.save(),g.beginPath(),g.rect(0,0,r,i),g.closePath(),g.setAttr("strokeStyle","red"),g.setAttr("lineWidth",5),g.stroke(),g.restore()),this._cache.set(Mt,{scene:c,filter:d,hit:f,x:s,y:o}),this._requestDraw(),this}ht.error("Can not cache the node. Width or height of the node equals 0. Caching is skipped.")}isCached(){return this._cache.has(Mt)}getClientRect(t){throw new Error('abstract "getClientRect" method call')}_transformedRect(t,e){var n,r,i,a,s=[{x:t.x,y:t.y},{x:t.x+t.width,y:t.y},{x:t.x+t.width,y:t.y+t.height},{x:t.x,y:t.y+t.height}],o=this.getAbsoluteTransform(e);return s.forEach(function(t){var e=o.point(t);void 0===n&&(n=i=e.x,r=a=e.y),n=Math.min(n,e.x),r=Math.min(r,e.y),i=Math.max(i,e.x),a=Math.max(a,e.y)}),{x:n,y:r,width:i-n,height:a-r}}_drawCachedSceneCanvas(t){t.save(),t._applyOpacity(this),t._applyGlobalCompositeOperation(this);const e=this._getCanvasCache();t.translate(e.x,e.y);var n=this._getCachedSceneCanvas(),r=n.pixelRatio;t.drawImage(n._canvas,0,0,n.width/r,n.height/r),t.restore()}_drawCachedHitCanvas(t){var e=this._getCanvasCache(),n=e.hit;t.save(),t.translate(e.x,e.y),t.drawImage(n._canvas,0,0,n.width/n.pixelRatio,n.height/n.pixelRatio),t.restore()}_getCachedSceneCanvas(){var t,e,n,r,i=this.filters(),a=this._getCanvasCache(),s=a.scene,o=a.filter,l=o.getContext();if(i){if(!this._filterUpToDate){var h=s.pixelRatio;o.setSize(s.width/s.pixelRatio,s.height/s.pixelRatio);try{for(t=i.length,l.clear(),l.drawImage(s._canvas,0,0,s.getWidth()/h,s.getHeight()/h),e=l.getImageData(0,0,o.getWidth(),o.getHeight()),n=0;n<t;n++)"function"==typeof(r=i[n])?(r.call(this,e),l.putImageData(e,0,0)):ht.error("Filter should be type of function, but got "+typeof r+" instead. Please check correct filters")}catch(t){ht.error("Unable to apply filter. "+t.message+" This post my help you https://konvajs.org/docs/posts/Tainted_Canvas.html.")}this._filterUpToDate=!0}return o}return s}on(t,e){if(this._cache&&this._cache.delete(Qt),3===arguments.length)return this._delegate.apply(this,arguments);var n,r,i,a,s=t.split(zt),o=s.length;for(n=0;n<o;n++)i=(r=s[n].split("."))[0],a=r[1]||"",this.eventListeners[i]||(this.eventListeners[i]=[]),this.eventListeners[i].push({name:a,handler:e});return this}off(t,e){var n,r,i,a,s,o=(t||"").split(zt),l=o.length;if(this._cache&&this._cache.delete(Qt),!t)for(r in this.eventListeners)this._off(r);for(n=0;n<l;n++)if(a=(i=o[n].split("."))[0],s=i[1],a)this.eventListeners[a]&&this._off(a,s,e);else for(r in this.eventListeners)this._off(r,s,e);return this}dispatchEvent(t){var e={target:this,type:t.type,evt:t};return this.fire(t.type,e),this}addEventListener(t,e){return this.on(t,function(t){e.call(this,t.evt)}),this}removeEventListener(t){return this.off(t),this}_delegate(t,e,n){var r=this;this.on(t,function(t){for(var i=t.target.findAncestors(e,!0,r),a=0;a<i.length;a++)(t=ht.cloneObject(t)).currentTarget=i[a],n.call(i[a],t)})}remove(){return this.isDragging()&&this.stopDrag(),Pt._dragElements.delete(this._id),this._remove(),this}_clearCaches(){this._clearSelfAndDescendantCache(Tt),this._clearSelfAndDescendantCache(Rt),this._clearSelfAndDescendantCache(Dt),this._clearSelfAndDescendantCache(Ft),this._clearSelfAndDescendantCache(Ht),this._clearSelfAndDescendantCache(Lt)}_remove(){this._clearCaches();var t=this.getParent();t&&t.children&&(t.children.splice(this.index,1),t._setChildrenIndices(),this.parent=null)}destroy(){return this.remove(),this}getAttr(t){var e="get"+ht._capitalize(t);return ht._isFunction(this[e])?this[e]():this.attrs[t]}getAncestors(){for(var t=this.getParent(),e=[];t;)e.push(t),t=t.getParent();return e}getAttrs(){return this.attrs||{}}setAttrs(t){return this._batchTransformChanges(()=>{var e,n;if(!t)return this;for(e in t)"children"!==e&&(n="set"+ht._capitalize(e),ht._isFunction(this[n])?this[n](t[e]):this._setAttr(e,t[e]))}),this}isListening(){return this._getCache(Lt,this._isListening)}_isListening(t){if(!this.listening())return!1;const e=this.getParent();return!e||e===t||this===t||e._isListening(t)}isVisible(){return this._getCache(Ht,this._isVisible)}_isVisible(t){if(!this.visible())return!1;const e=this.getParent();return!e||e===t||this===t||e._isVisible(t)}shouldDrawHit(t,e=!1){if(t)return this._isVisible(t)&&this._isListening(t);var n=this.getLayer(),r=!1;Pt._dragElements.forEach(t=>{"dragging"===t.dragStatus&&("Stage"===t.node.nodeType||t.node.getLayer()===n)&&(r=!0)});var i=!e&&!$.hitOnDragEnabled&&r;return this.isListening()&&this.isVisible()&&!i}show(){return this.visible(!0),this}hide(){return this.visible(!1),this}getZIndex(){return this.index||0}getAbsoluteZIndex(){var t,e,n,r,i=this.getDepth(),a=this,s=0;return"Stage"!==a.nodeType&&function o(l){for(t=[],e=l.length,n=0;n<e;n++)r=l[n],s++,r.nodeType!==Gt&&(t=t.concat(r.getChildren().slice())),r._id===a._id&&(n=e);t.length>0&&t[0].getDepth()<=i&&o(t)}(a.getStage().getChildren()),s}getDepth(){for(var t=0,e=this.parent;e;)t++,e=e.parent;return t}_batchTransformChanges(t){this._batchingTransformChange=!0,t(),this._batchingTransformChange=!1,this._needClearTransformCache&&(this._clearCache(Nt),this._clearSelfAndDescendantCache(Tt)),this._needClearTransformCache=!1}setPosition(t){return this._batchTransformChanges(()=>{this.x(t.x),this.y(t.y)}),this}getPosition(){return{x:this.x(),y:this.y()}}getRelativePointerPosition(){if(!this.getStage())return null;var t=this.getStage().getPointerPosition();if(!t)return null;var e=this.getAbsoluteTransform().copy();return e.invert(),e.point(t)}getAbsolutePosition(t){let e=!1,n=this.parent;for(;n;){if(n.isCached()){e=!0;break}n=n.parent}e&&!t&&(t=!0);var r=this.getAbsoluteTransform(t).getMatrix(),i=new et,a=this.offset();return i.m=r.slice(),i.translate(a.x,a.y),i.getTranslation()}setAbsolutePosition(t){var e=this._clearTransform();this.attrs.x=e.x,this.attrs.y=e.y,delete e.x,delete e.y,this._clearCache(Nt);var n=this._getAbsoluteTransform().copy();return n.invert(),n.translate(t.x,t.y),t={x:this.attrs.x+n.getTranslation().x,y:this.attrs.y+n.getTranslation().y},this._setTransform(e),this.setPosition({x:t.x,y:t.y}),this._clearCache(Nt),this._clearSelfAndDescendantCache(Tt),this}_setTransform(t){var e;for(e in t)this.attrs[e]=t[e]}_clearTransform(){var t={x:this.x(),y:this.y(),rotation:this.rotation(),scaleX:this.scaleX(),scaleY:this.scaleY(),offsetX:this.offsetX(),offsetY:this.offsetY(),skewX:this.skewX(),skewY:this.skewY()};return this.attrs.x=0,this.attrs.y=0,this.attrs.rotation=0,this.attrs.scaleX=1,this.attrs.scaleY=1,this.attrs.offsetX=0,this.attrs.offsetY=0,this.attrs.skewX=0,this.attrs.skewY=0,t}move(t){var e=t.x,n=t.y,r=this.x(),i=this.y();return void 0!==e&&(r+=e),void 0!==n&&(i+=n),this.setPosition({x:r,y:i}),this}_eachAncestorReverse(t,e){var n,r,i=[],a=this.getParent();if(!e||e._id!==this._id){for(i.unshift(this);a&&(!e||a._id!==e._id);)i.unshift(a),a=a.parent;for(n=i.length,r=0;r<n;r++)t(i[r])}}rotate(t){return this.rotation(this.rotation()+t),this}moveToTop(){if(!this.parent)return ht.warn("Node has no parent. moveToTop function is ignored."),!1;var t=this.index;return this.parent.children.splice(t,1),this.parent.children.push(this),this.parent._setChildrenIndices(),!0}moveUp(){if(!this.parent)return ht.warn("Node has no parent. moveUp function is ignored."),!1;var t=this.index;return t<this.parent.getChildren().length-1&&(this.parent.children.splice(t,1),this.parent.children.splice(t+1,0,this),this.parent._setChildrenIndices(),!0)}moveDown(){if(!this.parent)return ht.warn("Node has no parent. moveDown function is ignored."),!1;var t=this.index;return t>0&&(this.parent.children.splice(t,1),this.parent.children.splice(t-1,0,this),this.parent._setChildrenIndices(),!0)}moveToBottom(){if(!this.parent)return ht.warn("Node has no parent. moveToBottom function is ignored."),!1;var t=this.index;return t>0&&(this.parent.children.splice(t,1),this.parent.children.unshift(this),this.parent._setChildrenIndices(),!0)}setZIndex(t){if(!this.parent)return ht.warn("Node has no parent. zIndex parameter is ignored."),this;(t<0||t>=this.parent.children.length)&&ht.warn("Unexpected value "+t+" for zIndex property. zIndex is just index of a node in children of its parent. Expected value is from 0 to "+(this.parent.children.length-1)+".");var e=this.index;return this.parent.children.splice(e,1),this.parent.children.splice(t,0,this),this.parent._setChildrenIndices(),this}getAbsoluteOpacity(){return this._getCache(Rt,this._getAbsoluteOpacity)}_getAbsoluteOpacity(){var t=this.opacity(),e=this.getParent();return e&&!e._isUnderCache&&(t*=e.getAbsoluteOpacity()),t}moveTo(t){return this.getParent()!==t&&(this._remove(),t.add(this)),this}toObject(){var t,e,n,r,i={},a=this.getAttrs();for(t in i.attrs={},a)e=a[t],ht.isObject(e)&&!ht._isPlainObject(e)&&!ht._isArray(e)||(n="function"==typeof this[t]&&this[t],delete a[t],r=n?n.call(this):null,a[t]=e,r!==e&&(i.attrs[t]=e));return i.className=this.getClassName(),ht._prepareToStringify(i)}toJSON(){return JSON.stringify(this.toObject())}getParent(){return this.parent}findAncestors(t,e,n){var r=[];e&&this._isMatch(t)&&r.push(this);for(var i=this.parent;i;){if(i===n)return r;i._isMatch(t)&&r.push(i),i=i.parent}return r}isAncestorOf(t){return!1}findAncestor(t,e,n){return this.findAncestors(t,e,n)[0]}_isMatch(t){if(!t)return!1;if("function"==typeof t)return t(this);var e,n,r=t.replace(/ /g,"").split(","),i=r.length;for(e=0;e<i;e++)if(n=r[e],ht.isValidSelector(n)||(ht.warn('Selector "'+n+'" is invalid. Allowed selectors examples are "#foo", ".bar" or "Group".'),ht.warn('If you have a custom shape with such className, please change it to start with upper letter like "Triangle".'),ht.warn("Konva is awesome, right?")),"#"===n.charAt(0)){if(this.id()===n.slice(1))return!0}else if("."===n.charAt(0)){if(this.hasName(n.slice(1)))return!0}else if(this.className===n||this.nodeType===n)return!0;return!1}getLayer(){var t=this.getParent();return t?t.getLayer():null}getStage(){return this._getCache(Ft,this._getStage)}_getStage(){var t=this.getParent();return t?t.getStage():void 0}fire(t,e={},n){return e.target=e.target||this,n?this._fireAndBubble(t,e):this._fire(t,e),this}getAbsoluteTransform(t){return t?this._getAbsoluteTransform(t):this._getCache(Tt,this._getAbsoluteTransform)}_getAbsoluteTransform(t){var e;if(t)return e=new et,this._eachAncestorReverse(function(t){var n=t.transformsEnabled();"all"===n?e.multiply(t.getTransform()):"position"===n&&e.translate(t.x()-t.offsetX(),t.y()-t.offsetY())},t),e;e=this._cache.get(Tt)||new et,this.parent?this.parent.getAbsoluteTransform().copyInto(e):e.reset();var n=this.transformsEnabled();if("all"===n)e.multiply(this.getTransform());else if("position"===n){const t=this.attrs.x||0,n=this.attrs.y||0,r=this.attrs.offsetX||0,i=this.attrs.offsetY||0;e.translate(t-r,n-i)}return e.dirty=!1,e}getAbsoluteScale(t){for(var e=this;e;)e._isUnderCache&&(t=e),e=e.getParent();const n=this.getAbsoluteTransform(t).decompose();return{x:n.scaleX,y:n.scaleY}}getAbsoluteRotation(){return this.getAbsoluteTransform().decompose().rotation}getTransform(){return this._getCache(Nt,this._getTransform)}_getTransform(){var t,e,n=this._cache.get(Nt)||new et;n.reset();var r=this.x(),i=this.y(),a=$.getAngle(this.rotation()),s=null!==(t=this.attrs.scaleX)&&void 0!==t?t:1,o=null!==(e=this.attrs.scaleY)&&void 0!==e?e:1,l=this.attrs.skewX||0,h=this.attrs.skewY||0,u=this.attrs.offsetX||0,c=this.attrs.offsetY||0;return 0===r&&0===i||n.translate(r,i),0!==a&&n.rotate(a),0===l&&0===h||n.skew(l,h),1===s&&1===o||n.scale(s,o),0===u&&0===c||n.translate(-1*u,-1*c),n.dirty=!1,n}clone(t){var e,n,r,i,a,s=ht.cloneObject(this.attrs);for(e in t)s[e]=t[e];var o=new this.constructor(s);for(e in this.eventListeners)for(r=(n=this.eventListeners[e]).length,i=0;i<r;i++)(a=n[i]).name.indexOf("konva")<0&&(o.eventListeners[e]||(o.eventListeners[e]=[]),o.eventListeners[e].push(a));return o}_toKonvaCanvas(t){t=t||{};var e=this.getClientRect(),n=this.getStage(),r=void 0!==t.x?t.x:e.x,i=void 0!==t.y?t.y:e.y,a=t.pixelRatio||1,s=new kt({width:t.width||e.width||(n?n.width():0),height:t.height||e.height||(n?n.height():0),pixelRatio:a}),o=s.getContext();return o.save(),(r||i)&&o.translate(-1*r,-1*i),this.drawScene(s),o.restore(),s}toCanvas(t){return this._toKonvaCanvas(t)._canvas}toDataURL(t){var e=(t=t||{}).mimeType||null,n=t.quality||null,r=this._toKonvaCanvas(t).toDataURL(e,n);return t.callback&&t.callback(r),r}toImage(t){if(!t||!t.callback)throw"callback required for toImage method config argument";var e=t.callback;delete t.callback,ht._urlToImage(this.toDataURL(t),function(t){e(t)})}setSize(t){return this.width(t.width),this.height(t.height),this}getSize(){return{width:this.width(),height:this.height()}}getClassName(){return this.className||this.nodeType}getType(){return this.nodeType}getDragDistance(){return void 0!==this.attrs.dragDistance?this.attrs.dragDistance:this.parent?this.parent.getDragDistance():$.dragDistance}_off(t,e,n){var r,i,a,s=this.eventListeners[t];for(r=0;r<s.length;r++)if(i=s[r].name,a=s[r].handler,!("konva"===i&&"konva"!==e||e&&i!==e||n&&n!==a)){if(s.splice(r,1),0===s.length){delete this.eventListeners[t];break}r--}}_fireChangeEvent(t,e,n){this._fire(t+"Change",{oldVal:e,newVal:n})}addName(t){if(!this.hasName(t)){var e=this.name(),n=e?e+" "+t:t;this.name(n)}return this}hasName(t){if(!t)return!1;const e=this.name();return!!e&&-1!==(e||"").split(/\s/g).indexOf(t)}removeName(t){var e=(this.name()||"").split(/\s/g),n=e.indexOf(t);return-1!==n&&(e.splice(n,1),this.name(e.join(" "))),this}setAttr(t,e){var n=this["set"+ht._capitalize(t)];return ht._isFunction(n)?n.call(this,e):this._setAttr(t,e),this}_requestDraw(){if($.autoDrawEnabled){const t=this.getLayer()||this.getStage();null==t||t.batchDraw()}}_setAttr(t,e){var n=this.attrs[t];(n!==e||ht.isObject(e))&&(null==e?delete this.attrs[t]:this.attrs[t]=e,this._shouldFireChangeEvents&&this._fireChangeEvent(t,n,e),this._requestDraw())}_setComponentAttr(t,e,n){var r;void 0!==n&&((r=this.attrs[t])||(this.attrs[t]=this.getAttr(t)),this.attrs[t][e]=n,this._fireChangeEvent(t,r,n))}_fireAndBubble(t,e,n){if(e&&this.nodeType===Gt&&(e.target=this),!((t===Ot||t===_t)&&(n&&(this===n||this.isAncestorOf&&this.isAncestorOf(n))||"Stage"===this.nodeType&&!n))){this._fire(t,e);var r=(t===Ot||t===_t)&&n&&n.isAncestorOf&&n.isAncestorOf(this)&&!n.isAncestorOf(this.parent);(e&&!e.cancelBubble||!e)&&this.parent&&this.parent.isListening()&&!r&&(n&&n.parent?this._fireAndBubble.call(this.parent,t,e,n):this._fireAndBubble.call(this.parent,t,e))}}_getProtoListeners(t){let e=this._cache.get(Qt);if(!e){e={};let t=Object.getPrototypeOf(this);for(;t;)if(t.eventListeners){for(var n in t.eventListeners){const r=t.eventListeners[n],i=e[n]||[];e[n]=r.concat(i)}t=Object.getPrototypeOf(t)}else t=Object.getPrototypeOf(t);this._cache.set(Qt,e)}return e[t]}_fire(t,e){(e=e||{}).currentTarget=this,e.type=t;const n=this._getProtoListeners(t);if(n)for(var r=0;r<n.length;r++)n[r].handler.call(this,e);const i=this.eventListeners[t];if(i)for(r=0;r<i.length;r++)i[r].handler.call(this,e)}draw(){return this.drawScene(),this.drawHit(),this}_createDragElement(t){var e=t?t.pointerId:void 0,n=this.getStage(),r=this.getAbsolutePosition(),i=n._getPointerById(e)||n._changedPointerPositions[0]||r;Pt._dragElements.set(this._id,{node:this,startPointerPos:i,offset:{x:i.x-r.x,y:i.y-r.y},dragStatus:"ready",pointerId:e})}startDrag(t,e=!0){Pt._dragElements.has(this._id)||this._createDragElement(t);Pt._dragElements.get(this._id).dragStatus="dragging",this.fire("dragstart",{type:"dragstart",target:this,evt:t&&t.evt},e)}_setDragPosition(t,e){const n=this.getStage()._getPointerById(e.pointerId);if(n){var r={x:n.x-e.offset.x,y:n.y-e.offset.y},i=this.dragBoundFunc();if(void 0!==i){const e=i.call(this,r,t);e?r=e:ht.warn("dragBoundFunc did not return any value. That is unexpected behavior. You must return new absolute position from dragBoundFunc.")}this._lastPos&&this._lastPos.x===r.x&&this._lastPos.y===r.y||(this.setAbsolutePosition(r),this._requestDraw()),this._lastPos=r}}stopDrag(t){const e=Pt._dragElements.get(this._id);e&&(e.dragStatus="stopped"),Pt._endDragBefore(t),Pt._endDragAfter(t)}setDraggable(t){this._setAttr("draggable",t),this._dragChange()}isDragging(){const t=Pt._dragElements.get(this._id);return!!t&&"dragging"===t.dragStatus}_listenDrag(){this._dragCleanup(),this.on("mousedown.konva touchstart.konva",function(t){if((!(void 0!==t.evt.button)||$.dragButtons.indexOf(t.evt.button)>=0)&&!this.isDragging()){var e=!1;Pt._dragElements.forEach(t=>{this.isAncestorOf(t.node)&&(e=!0)}),e||this._createDragElement(t)}})}_dragChange(){if(this.attrs.draggable)this._listenDrag();else{if(this._dragCleanup(),!this.getStage())return;const t=Pt._dragElements.get(this._id),e=t&&"dragging"===t.dragStatus,n=t&&"ready"===t.dragStatus;e?this.stopDrag():n&&Pt._dragElements.delete(this._id)}}_dragCleanup(){this.off("mousedown.konva"),this.off("touchstart.konva")}isClientRectOnScreen(t={x:0,y:0}){const e=this.getStage();if(!e)return!1;const n={x:-t.x,y:-t.y,width:e.width()+t.x,height:e.height()+t.y};return ht.haveIntersection(n,this.getClientRect())}static create(t,e){return ht._isString(t)&&(t=JSON.parse(t)),this._createNode(t,e)}static _createNode(t,e){var n,r,i,a=Ut.prototype.getClassName.call(t),s=t.children;e&&(t.attrs.container=e),$[a]||(ht.warn('Can not find a node with class name "'+a+'". Fallback to "Shape".'),a="Shape");if(n=new(0,$[a])(t.attrs),s)for(r=s.length,i=0;i<r;i++)n.add(Ut._createNode(s[i]));return n}}Ut.prototype.nodeType="Node",Ut.prototype._attrsAffectingSize=[],Ut.prototype.eventListeners={},Ut.prototype.on.call(Ut.prototype,jt,function(){this._batchingTransformChange?this._needClearTransformCache=!0:(this._clearCache(Nt),this._clearSelfAndDescendantCache(Tt))}),Ut.prototype.on.call(Ut.prototype,"visibleChange.konva",function(){this._clearSelfAndDescendantCache(Ht)}),Ut.prototype.on.call(Ut.prototype,"listeningChange.konva",function(){this._clearSelfAndDescendantCache(Lt)}),Ut.prototype.on.call(Ut.prototype,"opacityChange.konva",function(){this._clearSelfAndDescendantCache(Rt)});const Yt=yt.addGetterSetter;Yt(Ut,"zIndex"),Yt(Ut,"absolutePosition"),Yt(Ut,"position"),Yt(Ut,"x",0,dt()),Yt(Ut,"y",0,dt()),Yt(Ut,"globalCompositeOperation","source-over",At()),Yt(Ut,"opacity",1,dt()),Yt(Ut,"name","",At()),Yt(Ut,"id","",At()),Yt(Ut,"rotation",0,dt()),yt.addComponentsGetterSetter(Ut,"scale",["x","y"]),Yt(Ut,"scaleX",1,dt()),Yt(Ut,"scaleY",1,dt()),yt.addComponentsGetterSetter(Ut,"skew",["x","y"]),Yt(Ut,"skewX",0,dt()),Yt(Ut,"skewY",0,dt()),yt.addComponentsGetterSetter(Ut,"offset",["x","y"]),Yt(Ut,"offsetX",0,dt()),Yt(Ut,"offsetY",0,dt()),Yt(Ut,"dragDistance",null,dt()),Yt(Ut,"width",0,dt()),Yt(Ut,"height",0,dt()),Yt(Ut,"listening",!0,vt()),Yt(Ut,"preventDefault",!0,vt()),Yt(Ut,"filters",null,function(t){return this._filterUpToDate=!1,t}),Yt(Ut,"visible",!0,vt()),Yt(Ut,"transformsEnabled","all",At()),Yt(Ut,"size"),Yt(Ut,"dragBoundFunc"),Yt(Ut,"draggable",!1,vt()),yt.backCompat(Ut,{rotateDeg:"rotate",setRotationDeg:"setRotation",getRotationDeg:"getRotation"});class Wt extends Ut{constructor(){super(...arguments),this.children=[]}getChildren(t){if(!t)return this.children||[];const e=this.children||[];var n=[];return e.forEach(function(e){t(e)&&n.push(e)}),n}hasChildren(){return this.getChildren().length>0}removeChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.remove()}),this.children=[],this._requestDraw(),this}destroyChildren(){return this.getChildren().forEach(t=>{t.parent=null,t.index=0,t.destroy()}),this.children=[],this._requestDraw(),this}add(...t){if(arguments.length>1){for(var e=0;e<arguments.length;e++)this.add(arguments[e]);return this}var n=t[0];return n.getParent()?(n.moveTo(this),this):(this._validateAdd(n),n.index=this.getChildren().length,n.parent=this,n._clearCaches(),this.getChildren().push(n),this._fire("add",{child:n}),this._requestDraw(),this)}destroy(){return this.hasChildren()&&this.destroyChildren(),super.destroy(),this}find(t){return this._generalFind(t,!1)}findOne(t){var e=this._generalFind(t,!0);return e.length>0?e[0]:void 0}_generalFind(t,e){var n=[];return this._descendants(r=>{const i=r._isMatch(t);return i&&n.push(r),!(!i||!e)}),n}_descendants(t){let e=!1;const n=this.getChildren();for(const r of n){if(e=t(r),e)return!0;if(r.hasChildren()&&(e=r._descendants(t),e))return!0}return!1}toObject(){var t=Ut.prototype.toObject.call(this);return t.children=[],this.getChildren().forEach(e=>{t.children.push(e.toObject())}),t}isAncestorOf(t){for(var e=t.getParent();e;){if(e._id===this._id)return!0;e=e.getParent()}return!1}clone(t){var e=Ut.prototype.clone.call(this,t);return this.getChildren().forEach(function(t){e.add(t.clone())}),e}getAllIntersections(t){var e=[];return this.find("Shape").forEach(function(n){n.isVisible()&&n.intersects(t)&&e.push(n)}),e}_clearSelfAndDescendantCache(t){var e;super._clearSelfAndDescendantCache(t),this.isCached()||null===(e=this.children)||void 0===e||e.forEach(function(e){e._clearSelfAndDescendantCache(t)})}_setChildrenIndices(){var t;null===(t=this.children)||void 0===t||t.forEach(function(t,e){t.index=e}),this._requestDraw()}drawScene(t,e){var n=this.getLayer(),r=t||n&&n.getCanvas(),i=r&&r.getContext(),a=this._getCanvasCache(),s=a&&a.scene,o=r&&r.isCache;if(!this.isVisible()&&!o)return this;if(s){i.save();var l=this.getAbsoluteTransform(e).getMatrix();i.transform(l[0],l[1],l[2],l[3],l[4],l[5]),this._drawCachedSceneCanvas(i),i.restore()}else this._drawChildren("drawScene",r,e);return this}drawHit(t,e){if(!this.shouldDrawHit(e))return this;var n=this.getLayer(),r=t||n&&n.hitCanvas,i=r&&r.getContext(),a=this._getCanvasCache();if(a&&a.hit){i.save();var s=this.getAbsoluteTransform(e).getMatrix();i.transform(s[0],s[1],s[2],s[3],s[4],s[5]),this._drawCachedHitCanvas(i),i.restore()}else this._drawChildren("drawHit",r,e);return this}_drawChildren(t,e,n){var r,i=e&&e.getContext(),a=this.clipWidth(),s=this.clipHeight(),o=this.clipFunc(),l=a&&s||o;const h=n===this;if(l){i.save();var u=this.getAbsoluteTransform(n),c=u.getMatrix();if(i.transform(c[0],c[1],c[2],c[3],c[4],c[5]),i.beginPath(),o)o.call(this,i,this);else{var d=this.clipX(),f=this.clipY();i.rect(d,f,a,s)}i.clip(),c=u.copy().invert().getMatrix(),i.transform(c[0],c[1],c[2],c[3],c[4],c[5])}var g=!h&&"source-over"!==this.globalCompositeOperation()&&"drawScene"===t;g&&(i.save(),i._applyGlobalCompositeOperation(this)),null===(r=this.children)||void 0===r||r.forEach(function(r){r[t](e,n)}),g&&i.restore(),l&&i.restore()}getClientRect(t){var e,n,r,i,a,s=(t=t||{}).skipTransform,o=t.relativeTo,l={x:1/0,y:1/0,width:0,height:0},h=this;null===(e=this.children)||void 0===e||e.forEach(function(e){if(e.visible()){var s=e.getClientRect({relativeTo:h,skipShadow:t.skipShadow,skipStroke:t.skipStroke});0===s.width&&0===s.height||(void 0===n?(n=s.x,r=s.y,i=s.x+s.width,a=s.y+s.height):(n=Math.min(n,s.x),r=Math.min(r,s.y),i=Math.max(i,s.x+s.width),a=Math.max(a,s.y+s.height)))}});for(var u=this.find("Shape"),c=!1,d=0;d<u.length;d++){if(u[d]._isVisible(this)){c=!0;break}}return l=c&&void 0!==n?{x:n,y:r,width:i-n,height:a-r}:{x:0,y:0,width:0,height:0},s?l:this._transformedRect(l,o)}}yt.addComponentsGetterSetter(Wt,"clip",["x","y","width","height"]),yt.addGetterSetter(Wt,"clipX",void 0,dt()),yt.addGetterSetter(Wt,"clipY",void 0,dt()),yt.addGetterSetter(Wt,"clipWidth",void 0,dt()),yt.addGetterSetter(Wt,"clipHeight",void 0,dt()),yt.addGetterSetter(Wt,"clipFunc");const Xt=new Map,qt=void 0!==$._global.PointerEvent;function Kt(t){return Xt.get(t)}function Vt(t){return{evt:t,pointerId:t.pointerId}}function Zt(t,e){return Xt.get(t)===e}function $t(t,e){te(t);e.getStage()&&(Xt.set(t,e),qt&&e._fire("gotpointercapture",Vt(new PointerEvent("gotpointercapture"))))}function te(t,e){const n=Xt.get(t);if(!n)return;const r=n.getStage();r&&r.content,Xt.delete(t),qt&&n._fire("lostpointercapture",Vt(new PointerEvent("lostpointercapture")))}var ee="mouseleave",ne="mouseover",re="mouseenter",ie="mousemove",ae="mousedown",se="mouseup",oe="pointermove",le="pointerdown",he="pointerup",ue="pointercancel",ce="pointerout",de="pointerleave",fe="pointerover",ge="pointerenter",Ae="contextmenu",pe="touchstart",ve="touchend",me="touchmove",Ce="touchcancel",ye="wheel",be=[[re,"_pointerenter"],[ae,"_pointerdown"],[ie,"_pointermove"],[se,"_pointerup"],[ee,"_pointerleave"],[pe,"_pointerdown"],[me,"_pointermove"],[ve,"_pointerup"],[Ce,"_pointercancel"],[ne,"_pointerover"],[ye,"_wheel"],[Ae,"_contextmenu"],[le,"_pointerdown"],[oe,"_pointermove"],[he,"_pointerup"],[ue,"_pointercancel"],["lostpointercapture","_lostpointercapture"]];const we={mouse:{[ce]:"mouseout",[de]:ee,[fe]:ne,[ge]:re,[oe]:ie,[le]:ae,[he]:se,[ue]:"mousecancel",pointerclick:"click",pointerdblclick:"dblclick"},touch:{[ce]:"touchout",[de]:"touchleave",[fe]:"touchover",[ge]:"touchenter",[oe]:me,[le]:pe,[he]:ve,[ue]:Ce,pointerclick:"tap",pointerdblclick:"dbltap"},pointer:{[ce]:ce,[de]:de,[fe]:fe,[ge]:ge,[oe]:oe,[le]:le,[he]:he,[ue]:ue,pointerclick:"pointerclick",pointerdblclick:"pointerdblclick"}},Ee=t=>t.indexOf("pointer")>=0?"pointer":t.indexOf("touch")>=0?"touch":"mouse",Se=t=>{const e=Ee(t);return"pointer"===e?$.pointerEventsEnabled&&we.pointer:"touch"===e?we.touch:"mouse"===e?we.mouse:void 0};function xe(t={}){return(t.clipFunc||t.clipWidth||t.clipHeight)&&ht.warn("Stage does not support clipping. Please use clip for Layers or Groups."),t}const Ie=[];class ke extends Wt{constructor(t){super(xe(t)),this._pointerPositions=[],this._changedPointerPositions=[],this._buildDOM(),this._bindContentEvents(),Ie.push(this),this.on("widthChange.konva heightChange.konva",this._resizeDOM),this.on("visibleChange.konva",this._checkVisibility),this.on("clipWidthChange.konva clipHeightChange.konva clipFuncChange.konva",()=>{xe(this.attrs)}),this._checkVisibility()}_validateAdd(t){const e="Layer"===t.getType(),n="FastLayer"===t.getType();e||n||ht.throw("You may only add layers to the stage.")}_checkVisibility(){if(!this.content)return;const t=this.visible()?"":"none";this.content.style.display=t}setContainer(t){if("string"==typeof t){if("."===t.charAt(0)){var e=t.slice(1);t=document.getElementsByClassName(e)[0]}else{var n;n="#"!==t.charAt(0)?t:t.slice(1),t=document.getElementById(n)}if(!t)throw"Can not find container in document with id "+n}return this._setAttr("container",t),this.content&&(this.content.parentElement&&this.content.parentElement.removeChild(this.content),t.appendChild(this.content)),this}shouldDrawHit(){return!0}clear(){var t,e=this.children,n=e.length;for(t=0;t<n;t++)e[t].clear();return this}clone(t){return t||(t={}),t.container="undefined"!=typeof document&&document.createElement("div"),Wt.prototype.clone.call(this,t)}destroy(){super.destroy();var t=this.content;t&&ht._isInDocument(t)&&this.container().removeChild(t);var e=Ie.indexOf(this);return e>-1&&Ie.splice(e,1),this}getPointerPosition(){const t=this._pointerPositions[0]||this._changedPointerPositions[0];return t?{x:t.x,y:t.y}:(ht.warn("Pointer position is missing and not registered by the stage. Looks like it is outside of the stage container. You can set it manually from event: stage.setPointersPositions(event);"),null)}_getPointerById(t){return this._pointerPositions.find(e=>e.id===t)}getPointersPositions(){return this._pointerPositions}getStage(){return this}getContent(){return this.content}_toKonvaCanvas(t){(t=t||{}).x=t.x||0,t.y=t.y||0,t.width=t.width||this.width(),t.height=t.height||this.height();var e=new kt({width:t.width,height:t.height,pixelRatio:t.pixelRatio||1}),n=e.getContext()._context,r=this.children;return(t.x||t.y)&&n.translate(-1*t.x,-1*t.y),r.forEach(function(e){if(e.isVisible()){var r=e._toKonvaCanvas(t);n.drawImage(r._canvas,t.x,t.y,r.getWidth()/r.getPixelRatio(),r.getHeight()/r.getPixelRatio())}}),e}getIntersection(t){if(!t)return null;var e,n=this.children;for(e=n.length-1;e>=0;e--){const r=n[e].getIntersection(t);if(r)return r}return null}_resizeDOM(){var t=this.width(),e=this.height();this.content&&(this.content.style.width=t+"px",this.content.style.height=e+"px"),this.bufferCanvas.setSize(t,e),this.bufferHitCanvas.setSize(t,e),this.children.forEach(n=>{n.setSize({width:t,height:e}),n.draw()})}add(t,...e){if(arguments.length>1){for(var n=0;n<arguments.length;n++)this.add(arguments[n]);return this}super.add(t);var r=this.children.length;return r>5&&ht.warn("The stage has "+r+" layers. Recommended maximum number of layers is 3-5. Adding more layers into the stage may drop the performance. Rethink your tree structure, you can use Konva.Group."),t.setSize({width:this.width(),height:this.height()}),t.draw(),$.isBrowser&&this.content.appendChild(t.canvas._canvas),this}getParent(){return null}getLayer(){return null}hasPointerCapture(t){return Zt(t,this)}setPointerCapture(t){$t(t,this)}releaseCapture(t){te(t)}getLayers(){return this.children}_bindContentEvents(){$.isBrowser&&be.forEach(([t,e])=>{this.content.addEventListener(t,t=>{this[e](t)})})}_pointerenter(t){this.setPointersPositions(t);const e=Se(t.type);this._fire(e.pointerenter,{evt:t,target:this,currentTarget:this})}_pointerover(t){this.setPointersPositions(t);const e=Se(t.type);this._fire(e.pointerover,{evt:t,target:this,currentTarget:this})}_getTargetShape(t){let e=this[t+"targetShape"];return e&&!e.getStage()&&(e=null),e}_pointerleave(t){const e=Se(t.type),n=Ee(t.type);if(e){this.setPointersPositions(t);var r=this._getTargetShape(n),i=!Pt.isDragging||$.hitOnDragEnabled;r&&i?(r._fireAndBubble(e.pointerout,{evt:t}),r._fireAndBubble(e.pointerleave,{evt:t}),this._fire(e.pointerleave,{evt:t,target:this,currentTarget:this}),this[n+"targetShape"]=null):i&&(this._fire(e.pointerleave,{evt:t,target:this,currentTarget:this}),this._fire(e.pointerout,{evt:t,target:this,currentTarget:this})),this.pointerPos=void 0,this._pointerPositions=[]}}_pointerdown(t){const e=Se(t.type),n=Ee(t.type);if(e){this.setPointersPositions(t);var r=!1;this._changedPointerPositions.forEach(i=>{var a=this.getIntersection(i);Pt.justDragged=!1,$["_"+n+"ListenClick"]=!0;if(!(a&&a.isListening()))return;$.capturePointerEventsEnabled&&a.setPointerCapture(i.id),this[n+"ClickStartShape"]=a,a._fireAndBubble(e.pointerdown,{evt:t,pointerId:i.id}),r=!0;const s=t.type.indexOf("touch")>=0;a.preventDefault()&&t.cancelable&&s&&t.preventDefault()}),r||this._fire(e.pointerdown,{evt:t,target:this,currentTarget:this,pointerId:this._pointerPositions[0].id})}}_pointermove(t){const e=Se(t.type),n=Ee(t.type);if(!e)return;if(Pt.isDragging&&Pt.node.preventDefault()&&t.cancelable&&t.preventDefault(),this.setPointersPositions(t),!(!Pt.isDragging||$.hitOnDragEnabled))return;var r={};let i=!1;var a=this._getTargetShape(n);this._changedPointerPositions.forEach(s=>{const o=Kt(s.id)||this.getIntersection(s),l=s.id,h={evt:t,pointerId:l};var u=a!==o;if(u&&a&&(a._fireAndBubble(e.pointerout,Object.assign({},h),o),a._fireAndBubble(e.pointerleave,Object.assign({},h),o)),o){if(r[o._id])return;r[o._id]=!0}o&&o.isListening()?(i=!0,u&&(o._fireAndBubble(e.pointerover,Object.assign({},h),a),o._fireAndBubble(e.pointerenter,Object.assign({},h),a),this[n+"targetShape"]=o),o._fireAndBubble(e.pointermove,Object.assign({},h))):a&&(this._fire(e.pointerover,{evt:t,target:this,currentTarget:this,pointerId:l}),this[n+"targetShape"]=null)}),i||this._fire(e.pointermove,{evt:t,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id})}_pointerup(t){const e=Se(t.type),n=Ee(t.type);if(!e)return;this.setPointersPositions(t);const r=this[n+"ClickStartShape"],i=this[n+"ClickEndShape"];var a={};let s=!1;this._changedPointerPositions.forEach(o=>{const l=Kt(o.id)||this.getIntersection(o);if(l){if(l.releaseCapture(o.id),a[l._id])return;a[l._id]=!0}const h=o.id,u={evt:t,pointerId:h};let c=!1;$["_"+n+"InDblClickWindow"]&&$["_"+n+"InDblClickWindowId"]===h?(c=!0,clearTimeout(this[n+"DblTimeout"])):Pt.justDragged||($["_"+n+"InDblClickWindow"]=!0,$["_"+n+"InDblClickWindowId"]=h,clearTimeout(this[n+"DblTimeout"])),this[n+"DblTimeout"]=setTimeout(function(){$["_"+n+"InDblClickWindow"]=!1},$.dblClickWindow),l&&l.isListening()?(s=!0,this[n+"ClickEndShape"]=l,l._fireAndBubble(e.pointerup,Object.assign({},u)),$["_"+n+"ListenClick"]&&r&&r===l&&(l._fireAndBubble(e.pointerclick,Object.assign({},u)),c&&i&&i===l&&l._fireAndBubble(e.pointerdblclick,Object.assign({},u)))):(this[n+"ClickEndShape"]=null,$["_"+n+"ListenClick"]&&this._fire(e.pointerclick,{evt:t,target:this,currentTarget:this,pointerId:h}),c&&this._fire(e.pointerdblclick,{evt:t,target:this,currentTarget:this,pointerId:h}))}),s||this._fire(e.pointerup,{evt:t,target:this,currentTarget:this,pointerId:this._changedPointerPositions[0].id}),$["_"+n+"ListenClick"]=!1,t.cancelable&&t.preventDefault()}_contextmenu(t){this.setPointersPositions(t);var e=this.getIntersection(this.getPointerPosition());e&&e.isListening()?e._fireAndBubble(Ae,{evt:t}):this._fire(Ae,{evt:t,target:this,currentTarget:this})}_wheel(t){this.setPointersPositions(t);var e=this.getIntersection(this.getPointerPosition());e&&e.isListening()?e._fireAndBubble(ye,{evt:t}):this._fire(ye,{evt:t,target:this,currentTarget:this})}_pointercancel(t){this.setPointersPositions(t);const e=Kt(t.pointerId)||this.getIntersection(this.getPointerPosition());e&&e._fireAndBubble(he,Vt(t)),te(t.pointerId)}_lostpointercapture(t){te(t.pointerId)}setPointersPositions(t){var e=this._getContentPosition(),n=null,r=null;void 0!==(t=t||window.event).touches?(this._pointerPositions=[],this._changedPointerPositions=[],Array.prototype.forEach.call(t.touches,t=>{this._pointerPositions.push({id:t.identifier,x:(t.clientX-e.left)/e.scaleX,y:(t.clientY-e.top)/e.scaleY})}),Array.prototype.forEach.call(t.changedTouches||t.touches,t=>{this._changedPointerPositions.push({id:t.identifier,x:(t.clientX-e.left)/e.scaleX,y:(t.clientY-e.top)/e.scaleY})})):(n=(t.clientX-e.left)/e.scaleX,r=(t.clientY-e.top)/e.scaleY,this.pointerPos={x:n,y:r},this._pointerPositions=[{x:n,y:r,id:ht._getFirstPointerId(t)}],this._changedPointerPositions=[{x:n,y:r,id:ht._getFirstPointerId(t)}])}_setPointerPosition(t){ht.warn('Method _setPointerPosition is deprecated. Use "stage.setPointersPositions(event)" instead.'),this.setPointersPositions(t)}_getContentPosition(){if(!this.content||!this.content.getBoundingClientRect)return{top:0,left:0,scaleX:1,scaleY:1};var t=this.content.getBoundingClientRect();return{top:t.top,left:t.left,scaleX:t.width/this.content.clientWidth||1,scaleY:t.height/this.content.clientHeight||1}}_buildDOM(){if(this.bufferCanvas=new kt({width:this.width(),height:this.height()}),this.bufferHitCanvas=new Bt({pixelRatio:1,width:this.width(),height:this.height()}),$.isBrowser){var t=this.container();if(!t)throw"Stage has no container. A container is required.";t.innerHTML="",this.content=document.createElement("div"),this.content.style.position="relative",this.content.style.userSelect="none",this.content.className="konvajs-content",this.content.setAttribute("role","presentation"),t.appendChild(this.content),this._resizeDOM()}}cache(){return ht.warn("Cache function is not allowed for stage. You may use cache only for layers, groups and shapes."),this}clearCache(){return this}batchDraw(){return this.getChildren().forEach(function(t){t.batchDraw()}),this}}ke.prototype.nodeType="Stage",tt(ke),yt.addGetterSetter(ke,"container");var Be="hasShadow",Pe="shadowRGBA",Re="patternImage",Qe="linearGradient",Te="radialGradient";let De;function Me(){return De||(De=ht.createCanvasElement().getContext("2d"),De)}const Le={};class Oe extends Ut{constructor(t){let e;for(super(t);e=ht.getRandomColor(),!e||e in Le;);this.colorKey=e,Le[e]=this}getContext(){return ht.warn("shape.getContext() method is deprecated. Please do not use it."),this.getLayer().getContext()}getCanvas(){return ht.warn("shape.getCanvas() method is deprecated. Please do not use it."),this.getLayer().getCanvas()}getSceneFunc(){return this.attrs.sceneFunc||this._sceneFunc}getHitFunc(){return this.attrs.hitFunc||this._hitFunc}hasShadow(){return this._getCache(Be,this._hasShadow)}_hasShadow(){return this.shadowEnabled()&&0!==this.shadowOpacity()&&!!(this.shadowColor()||this.shadowBlur()||this.shadowOffsetX()||this.shadowOffsetY())}_getFillPattern(){return this._getCache(Re,this.__getFillPattern)}__getFillPattern(){if(this.fillPatternImage()){const t=Me().createPattern(this.fillPatternImage(),this.fillPatternRepeat()||"repeat");if(t&&t.setTransform){const e=new et;e.translate(this.fillPatternX(),this.fillPatternY()),e.rotate($.getAngle(this.fillPatternRotation())),e.scale(this.fillPatternScaleX(),this.fillPatternScaleY()),e.translate(-1*this.fillPatternOffsetX(),-1*this.fillPatternOffsetY());const n=e.getMatrix();t.setTransform({a:n[0],b:n[1],c:n[2],d:n[3],e:n[4],f:n[5]})}return t}}_getLinearGradient(){return this._getCache(Qe,this.__getLinearGradient)}__getLinearGradient(){var t=this.fillLinearGradientColorStops();if(t){for(var e=Me(),n=this.fillLinearGradientStartPoint(),r=this.fillLinearGradientEndPoint(),i=e.createLinearGradient(n.x,n.y,r.x,r.y),a=0;a<t.length;a+=2)i.addColorStop(t[a],t[a+1]);return i}}_getRadialGradient(){return this._getCache(Te,this.__getRadialGradient)}__getRadialGradient(){var t=this.fillRadialGradientColorStops();if(t){for(var e=Me(),n=this.fillRadialGradientStartPoint(),r=this.fillRadialGradientEndPoint(),i=e.createRadialGradient(n.x,n.y,this.fillRadialGradientStartRadius(),r.x,r.y,this.fillRadialGradientEndRadius()),a=0;a<t.length;a+=2)i.addColorStop(t[a],t[a+1]);return i}}getShadowRGBA(){return this._getCache(Pe,this._getShadowRGBA)}_getShadowRGBA(){if(this.hasShadow()){var t=ht.colorToRGBA(this.shadowColor());return"rgba("+t.r+","+t.g+","+t.b+","+t.a*(this.shadowOpacity()||1)+")"}}hasFill(){return this._calculate("hasFill",["fillEnabled","fill","fillPatternImage","fillLinearGradientColorStops","fillRadialGradientColorStops"],()=>this.fillEnabled()&&!!(this.fill()||this.fillPatternImage()||this.fillLinearGradientColorStops()||this.fillRadialGradientColorStops()))}hasStroke(){return this._calculate("hasStroke",["strokeEnabled","strokeWidth","stroke","strokeLinearGradientColorStops"],()=>this.strokeEnabled()&&this.strokeWidth()&&!(!this.stroke()&&!this.strokeLinearGradientColorStops()))}hasHitStroke(){const t=this.hitStrokeWidth();return"auto"===t?this.hasStroke():this.strokeEnabled()&&!!t}intersects(t){var e=this.getStage().bufferHitCanvas;return e.getContext().clear(),this.drawHit(e,null,!0),e.context.getImageData(Math.round(t.x),Math.round(t.y),1,1).data[3]>0}destroy(){return Ut.prototype.destroy.call(this),delete Le[this.colorKey],delete this.colorKey,this}_useBufferCanvas(t){var e;if(!this.getStage())return!1;if(!(null===(e=this.attrs.perfectDrawEnabled)||void 0===e||e))return!1;const n=t||this.hasFill(),r=this.hasStroke(),i=1!==this.getAbsoluteOpacity();if(n&&r&&i)return!0;const a=this.hasShadow(),s=this.shadowForStrokeEnabled();return!!(n&&r&&a&&s)}setStrokeHitEnabled(t){ht.warn("strokeHitEnabled property is deprecated. Please use hitStrokeWidth instead."),t?this.hitStrokeWidth("auto"):this.hitStrokeWidth(0)}getStrokeHitEnabled(){return 0!==this.hitStrokeWidth()}getSelfRect(){var t=this.size();return{x:this._centroid?-t.width/2:0,y:this._centroid?-t.height/2:0,width:t.width,height:t.height}}getClientRect(t={}){const e=t.skipTransform,n=t.relativeTo,r=this.getSelfRect(),i=!t.skipStroke&&this.hasStroke()&&this.strokeWidth()||0,a=r.width+i,s=r.height+i,o=!t.skipShadow&&this.hasShadow(),l=o?this.shadowOffsetX():0,h=o?this.shadowOffsetY():0,u=a+Math.abs(l),c=s+Math.abs(h),d=o&&this.shadowBlur()||0,f=u+2*d,g=c+2*d;let A=0;Math.round(i/2)!==i/2&&(A=1);const p={width:f+A,height:g+A,x:-Math.round(i/2+d)+Math.min(l,0)+r.x,y:-Math.round(i/2+d)+Math.min(h,0)+r.y};return e?p:this._transformedRect(p,n)}drawScene(t,e){var n,r,i=this.getLayer(),a=t||i.getCanvas(),s=a.getContext(),o=this._getCanvasCache(),l=this.getSceneFunc(),h=this.hasShadow(),u=a.isCache,c=e===this;if(!this.isVisible()&&!c)return this;if(o){s.save();var d=this.getAbsoluteTransform(e).getMatrix();return s.transform(d[0],d[1],d[2],d[3],d[4],d[5]),this._drawCachedSceneCanvas(s),s.restore(),this}if(!l)return this;if(s.save(),this._useBufferCanvas()&&!u){(r=(n=this.getStage().bufferCanvas).getContext()).clear(),r.save(),r._applyLineJoin(this);var f=this.getAbsoluteTransform(e).getMatrix();r.transform(f[0],f[1],f[2],f[3],f[4],f[5]),l.call(this,r,this),r.restore();var g=n.pixelRatio;h&&s._applyShadow(this),s._applyOpacity(this),s._applyGlobalCompositeOperation(this),s.drawImage(n._canvas,0,0,n.width/g,n.height/g)}else{if(s._applyLineJoin(this),!c){f=this.getAbsoluteTransform(e).getMatrix();s.transform(f[0],f[1],f[2],f[3],f[4],f[5]),s._applyOpacity(this),s._applyGlobalCompositeOperation(this)}h&&s._applyShadow(this),l.call(this,s,this)}return s.restore(),this}drawHit(t,e,n=!1){if(!this.shouldDrawHit(e,n))return this;var r=this.getLayer(),i=t||r.hitCanvas,a=i&&i.getContext(),s=this.hitFunc()||this.sceneFunc(),o=this._getCanvasCache(),l=o&&o.hit;if(this.colorKey||ht.warn("Looks like your canvas has a destroyed shape in it. Do not reuse shape after you destroyed it. If you want to reuse shape you should call remove() instead of destroy()"),l){a.save();var h=this.getAbsoluteTransform(e).getMatrix();return a.transform(h[0],h[1],h[2],h[3],h[4],h[5]),this._drawCachedHitCanvas(a),a.restore(),this}if(!s)return this;a.save(),a._applyLineJoin(this);if(!(this===e)){var u=this.getAbsoluteTransform(e).getMatrix();a.transform(u[0],u[1],u[2],u[3],u[4],u[5])}return s.call(this,a,this),a.restore(),this}drawHitFromCache(t=0){var e,n,r,i,a,s=this._getCanvasCache(),o=this._getCachedSceneCanvas(),l=s.hit,h=l.getContext(),u=l.getWidth(),c=l.getHeight();h.clear(),h.drawImage(o._canvas,0,0,u,c);try{for(r=(n=(e=h.getImageData(0,0,u,c)).data).length,i=ht._hexToRgb(this.colorKey),a=0;a<r;a+=4)n[a+3]>t?(n[a]=i.r,n[a+1]=i.g,n[a+2]=i.b,n[a+3]=255):n[a+3]=0;h.putImageData(e,0,0)}catch(t){ht.error("Unable to draw hit graph from cached scene canvas. "+t.message)}return this}hasPointerCapture(t){return Zt(t,this)}setPointerCapture(t){$t(t,this)}releaseCapture(t){te(t)}}Oe.prototype._fillFunc=function(t){t.fill()},Oe.prototype._strokeFunc=function(t){t.stroke()},Oe.prototype._fillFuncHit=function(t){t.fill()},Oe.prototype._strokeFuncHit=function(t){t.stroke()},Oe.prototype._centroid=!1,Oe.prototype.nodeType="Shape",tt(Oe),Oe.prototype.eventListeners={},Oe.prototype.on.call(Oe.prototype,"shadowColorChange.konva shadowBlurChange.konva shadowOffsetChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",function(){this._clearCache(Be)}),Oe.prototype.on.call(Oe.prototype,"shadowColorChange.konva shadowOpacityChange.konva shadowEnabledChange.konva",function(){this._clearCache(Pe)}),Oe.prototype.on.call(Oe.prototype,"fillPriorityChange.konva fillPatternImageChange.konva fillPatternRepeatChange.konva fillPatternScaleXChange.konva fillPatternScaleYChange.konva fillPatternOffsetXChange.konva fillPatternOffsetYChange.konva fillPatternXChange.konva fillPatternYChange.konva fillPatternRotationChange.konva",function(){this._clearCache(Re)}),Oe.prototype.on.call(Oe.prototype,"fillPriorityChange.konva fillLinearGradientColorStopsChange.konva fillLinearGradientStartPointXChange.konva fillLinearGradientStartPointYChange.konva fillLinearGradientEndPointXChange.konva fillLinearGradientEndPointYChange.konva",function(){this._clearCache(Qe)}),Oe.prototype.on.call(Oe.prototype,"fillPriorityChange.konva fillRadialGradientColorStopsChange.konva fillRadialGradientStartPointXChange.konva fillRadialGradientStartPointYChange.konva fillRadialGradientEndPointXChange.konva fillRadialGradientEndPointYChange.konva fillRadialGradientStartRadiusChange.konva fillRadialGradientEndRadiusChange.konva",function(){this._clearCache(Te)}),yt.addGetterSetter(Oe,"stroke",void 0,pt()),yt.addGetterSetter(Oe,"strokeWidth",2,dt()),yt.addGetterSetter(Oe,"fillAfterStrokeEnabled",!1),yt.addGetterSetter(Oe,"hitStrokeWidth","auto",gt()),yt.addGetterSetter(Oe,"strokeHitEnabled",!0,vt()),yt.addGetterSetter(Oe,"perfectDrawEnabled",!0,vt()),yt.addGetterSetter(Oe,"shadowForStrokeEnabled",!0,vt()),yt.addGetterSetter(Oe,"lineJoin"),yt.addGetterSetter(Oe,"lineCap"),yt.addGetterSetter(Oe,"sceneFunc"),yt.addGetterSetter(Oe,"hitFunc"),yt.addGetterSetter(Oe,"dash"),yt.addGetterSetter(Oe,"dashOffset",0,dt()),yt.addGetterSetter(Oe,"shadowColor",void 0,At()),yt.addGetterSetter(Oe,"shadowBlur",0,dt()),yt.addGetterSetter(Oe,"shadowOpacity",1,dt()),yt.addComponentsGetterSetter(Oe,"shadowOffset",["x","y"]),yt.addGetterSetter(Oe,"shadowOffsetX",0,dt()),yt.addGetterSetter(Oe,"shadowOffsetY",0,dt()),yt.addGetterSetter(Oe,"fillPatternImage"),yt.addGetterSetter(Oe,"fill",void 0,pt()),yt.addGetterSetter(Oe,"fillPatternX",0,dt()),yt.addGetterSetter(Oe,"fillPatternY",0,dt()),yt.addGetterSetter(Oe,"fillLinearGradientColorStops"),yt.addGetterSetter(Oe,"strokeLinearGradientColorStops"),yt.addGetterSetter(Oe,"fillRadialGradientStartRadius",0),yt.addGetterSetter(Oe,"fillRadialGradientEndRadius",0),yt.addGetterSetter(Oe,"fillRadialGradientColorStops"),yt.addGetterSetter(Oe,"fillPatternRepeat","repeat"),yt.addGetterSetter(Oe,"fillEnabled",!0),yt.addGetterSetter(Oe,"strokeEnabled",!0),yt.addGetterSetter(Oe,"shadowEnabled",!0),yt.addGetterSetter(Oe,"dashEnabled",!0),yt.addGetterSetter(Oe,"strokeScaleEnabled",!0),yt.addGetterSetter(Oe,"fillPriority","color"),yt.addComponentsGetterSetter(Oe,"fillPatternOffset",["x","y"]),yt.addGetterSetter(Oe,"fillPatternOffsetX",0,dt()),yt.addGetterSetter(Oe,"fillPatternOffsetY",0,dt()),yt.addComponentsGetterSetter(Oe,"fillPatternScale",["x","y"]),yt.addGetterSetter(Oe,"fillPatternScaleX",1,dt()),yt.addGetterSetter(Oe,"fillPatternScaleY",1,dt()),yt.addComponentsGetterSetter(Oe,"fillLinearGradientStartPoint",["x","y"]),yt.addComponentsGetterSetter(Oe,"strokeLinearGradientStartPoint",["x","y"]),yt.addGetterSetter(Oe,"fillLinearGradientStartPointX",0),yt.addGetterSetter(Oe,"strokeLinearGradientStartPointX",0),yt.addGetterSetter(Oe,"fillLinearGradientStartPointY",0),yt.addGetterSetter(Oe,"strokeLinearGradientStartPointY",0),yt.addComponentsGetterSetter(Oe,"fillLinearGradientEndPoint",["x","y"]),yt.addComponentsGetterSetter(Oe,"strokeLinearGradientEndPoint",["x","y"]),yt.addGetterSetter(Oe,"fillLinearGradientEndPointX",0),yt.addGetterSetter(Oe,"strokeLinearGradientEndPointX",0),yt.addGetterSetter(Oe,"fillLinearGradientEndPointY",0),yt.addGetterSetter(Oe,"strokeLinearGradientEndPointY",0),yt.addComponentsGetterSetter(Oe,"fillRadialGradientStartPoint",["x","y"]),yt.addGetterSetter(Oe,"fillRadialGradientStartPointX",0),yt.addGetterSetter(Oe,"fillRadialGradientStartPointY",0),yt.addComponentsGetterSetter(Oe,"fillRadialGradientEndPoint",["x","y"]),yt.addGetterSetter(Oe,"fillRadialGradientEndPointX",0),yt.addGetterSetter(Oe,"fillRadialGradientEndPointY",0),yt.addGetterSetter(Oe,"fillPatternRotation",0),yt.backCompat(Oe,{dashArray:"dash",getDashArray:"getDash",setDashArray:"getDash",drawFunc:"sceneFunc",getDrawFunc:"getSceneFunc",setDrawFunc:"setSceneFunc",drawHitFunc:"hitFunc",getDrawHitFunc:"getHitFunc",setDrawHitFunc:"setHitFunc"});var _e=[{x:0,y:0},{x:-1,y:-1},{x:1,y:-1},{x:1,y:1},{x:-1,y:1}],Ge=_e.length;class ze extends Wt{constructor(t){super(t),this.canvas=new kt,this.hitCanvas=new Bt({pixelRatio:1}),this._waitingForDraw=!1,this.on("visibleChange.konva",this._checkVisibility),this._checkVisibility(),this.on("imageSmoothingEnabledChange.konva",this._setSmoothEnabled),this._setSmoothEnabled()}createPNGStream(){return this.canvas._canvas.createPNGStream()}getCanvas(){return this.canvas}getNativeCanvasElement(){return this.canvas._canvas}getHitCanvas(){return this.hitCanvas}getContext(){return this.getCanvas().getContext()}clear(t){return this.getContext().clear(t),this.getHitCanvas().getContext().clear(t),this}setZIndex(t){super.setZIndex(t);var e=this.getStage();return e&&e.content&&(e.content.removeChild(this.getNativeCanvasElement()),t<e.children.length-1?e.content.insertBefore(this.getNativeCanvasElement(),e.children[t+1].getCanvas()._canvas):e.content.appendChild(this.getNativeCanvasElement())),this}moveToTop(){Ut.prototype.moveToTop.call(this);var t=this.getStage();return t&&t.content&&(t.content.removeChild(this.getNativeCanvasElement()),t.content.appendChild(this.getNativeCanvasElement())),!0}moveUp(){if(!Ut.prototype.moveUp.call(this))return!1;var t=this.getStage();return!(!t||!t.content)&&(t.content.removeChild(this.getNativeCanvasElement()),this.index<t.children.length-1?t.content.insertBefore(this.getNativeCanvasElement(),t.children[this.index+1].getCanvas()._canvas):t.content.appendChild(this.getNativeCanvasElement()),!0)}moveDown(){if(Ut.prototype.moveDown.call(this)){var t=this.getStage();if(t){var e=t.children;t.content&&(t.content.removeChild(this.getNativeCanvasElement()),t.content.insertBefore(this.getNativeCanvasElement(),e[this.index+1].getCanvas()._canvas))}return!0}return!1}moveToBottom(){if(Ut.prototype.moveToBottom.call(this)){var t=this.getStage();if(t){var e=t.children;t.content&&(t.content.removeChild(this.getNativeCanvasElement()),t.content.insertBefore(this.getNativeCanvasElement(),e[1].getCanvas()._canvas))}return!0}return!1}getLayer(){return this}remove(){var t=this.getNativeCanvasElement();return Ut.prototype.remove.call(this),t&&t.parentNode&&ht._isInDocument(t)&&t.parentNode.removeChild(t),this}getStage(){return this.parent}setSize({width:t,height:e}){return this.canvas.setSize(t,e),this.hitCanvas.setSize(t,e),this._setSmoothEnabled(),this}_validateAdd(t){var e=t.getType();"Group"!==e&&"Shape"!==e&&ht.throw("You may only add groups and shapes to a layer.")}_toKonvaCanvas(t){return(t=t||{}).width=t.width||this.getWidth(),t.height=t.height||this.getHeight(),t.x=void 0!==t.x?t.x:this.x(),t.y=void 0!==t.y?t.y:this.y(),Ut.prototype._toKonvaCanvas.call(this,t)}_checkVisibility(){const t=this.visible();this.canvas._canvas.style.display=t?"block":"none"}_setSmoothEnabled(){this.getContext()._context.imageSmoothingEnabled=this.imageSmoothingEnabled()}getWidth(){if(this.parent)return this.parent.width()}setWidth(){ht.warn('Can not change width of layer. Use "stage.width(value)" function instead.')}getHeight(){if(this.parent)return this.parent.height()}setHeight(){ht.warn('Can not change height of layer. Use "stage.height(value)" function instead.')}batchDraw(){return this._waitingForDraw||(this._waitingForDraw=!0,ht.requestAnimFrame(()=>{this.draw(),this._waitingForDraw=!1})),this}getIntersection(t){if(!this.isListening()||!this.isVisible())return null;for(var e=1,n=!1;;){for(let r=0;r<Ge;r++){const i=_e[r],a=this._getIntersection({x:t.x+i.x*e,y:t.y+i.y*e}),s=a.shape;if(s)return s;if(n=!!a.antialiased,!a.antialiased)break}if(!n)return null;e+=1}}_getIntersection(t){const e=this.hitCanvas.pixelRatio,n=this.hitCanvas.context.getImageData(Math.round(t.x*e),Math.round(t.y*e),1,1).data,r=n[3];if(255===r){const t=ht._rgbToHex(n[0],n[1],n[2]),e=Le["#"+t];return e?{shape:e}:{antialiased:!0}}return r>0?{antialiased:!0}:{}}drawScene(t,e){var n=this.getLayer(),r=t||n&&n.getCanvas();return this._fire("beforeDraw",{node:this}),this.clearBeforeDraw()&&r.getContext().clear(),Wt.prototype.drawScene.call(this,r,e),this._fire("draw",{node:this}),this}drawHit(t,e){var n=this.getLayer(),r=t||n&&n.hitCanvas;return n&&n.clearBeforeDraw()&&n.getHitCanvas().getContext().clear(),Wt.prototype.drawHit.call(this,r,e),this}enableHitGraph(){return this.hitGraphEnabled(!0),this}disableHitGraph(){return this.hitGraphEnabled(!1),this}setHitGraphEnabled(t){ht.warn("hitGraphEnabled method is deprecated. Please use layer.listening() instead."),this.listening(t)}getHitGraphEnabled(t){return ht.warn("hitGraphEnabled method is deprecated. Please use layer.listening() instead."),this.listening()}toggleHitCanvas(){if(this.parent&&this.parent.content){var t=this.parent;!!this.hitCanvas._canvas.parentNode?t.content.removeChild(this.hitCanvas._canvas):t.content.appendChild(this.hitCanvas._canvas)}}}ze.prototype.nodeType="Layer",tt(ze),yt.addGetterSetter(ze,"imageSmoothingEnabled",!0),yt.addGetterSetter(ze,"clearBeforeDraw",!0),yt.addGetterSetter(ze,"hitGraphEnabled",!0,vt());class Fe extends ze{constructor(t){super(t),this.listening(!1),ht.warn('Konva.Fast layer is deprecated. Please use "new Konva.Layer({ listening: false })" instead.')}}Fe.prototype.nodeType="FastLayer",tt(Fe);class Ne extends Wt{_validateAdd(t){var e=t.getType();"Group"!==e&&"Shape"!==e&&ht.throw("You may only add groups and shapes to groups.")}}Ne.prototype.nodeType="Group",tt(Ne);var He=Z.performance&&Z.performance.now?function(){return Z.performance.now()}:function(){return(new Date).getTime()};class je{constructor(t,e){this.id=je.animIdCounter++,this.frame={time:0,timeDiff:0,lastTime:He(),frameRate:0},this.func=t,this.setLayers(e)}setLayers(t){var e=[];return e=t?t.length>0?t:[t]:[],this.layers=e,this}getLayers(){return this.layers}addLayer(t){var e,n=this.layers,r=n.length;for(e=0;e<r;e++)if(n[e]._id===t._id)return!1;return this.layers.push(t),!0}isRunning(){var t,e=je.animations,n=e.length;for(t=0;t<n;t++)if(e[t].id===this.id)return!0;return!1}start(){return this.stop(),this.frame.timeDiff=0,this.frame.lastTime=He(),je._addAnimation(this),this}stop(){return je._removeAnimation(this),this}_updateFrameObject(t){this.frame.timeDiff=t-this.frame.lastTime,this.frame.lastTime=t,this.frame.time+=this.frame.timeDiff,this.frame.frameRate=1e3/this.frame.timeDiff}static _addAnimation(t){this.animations.push(t),this._handleAnimation()}static _removeAnimation(t){var e,n=t.id,r=this.animations,i=r.length;for(e=0;e<i;e++)if(r[e].id===n){this.animations.splice(e,1);break}}static _runFrames(){var t,e,n,r,i,a,s,o,l={},h=this.animations;for(r=0;r<h.length;r++)if(e=(t=h[r]).layers,n=t.func,t._updateFrameObject(He()),a=e.length,!n||!1!==n.call(t,t.frame))for(i=0;i<a;i++)void 0!==(s=e[i])._id&&(l[s._id]=s);for(o in l)l.hasOwnProperty(o)&&l[o].batchDraw()}static _animationLoop(){var t=je;t.animations.length?(t._runFrames(),ht.requestAnimFrame(t._animationLoop)):t.animRunning=!1}static _handleAnimation(){this.animRunning||(this.animRunning=!0,ht.requestAnimFrame(this._animationLoop))}}je.animations=[],je.animIdCounter=0,je.animRunning=!1;var Je={node:1,duration:1,easing:1,onFinish:1,yoyo:1},Ue=0,Ye=["fill","stroke","shadowColor"];class We{constructor(t,e,n,r,i,a,s){this.prop=t,this.propFunc=e,this.begin=r,this._pos=r,this.duration=a,this._change=0,this.prevPos=0,this.yoyo=s,this._time=0,this._position=0,this._startTime=0,this._finish=0,this.func=n,this._change=i-this.begin,this.pause()}fire(t){var e=this[t];e&&e()}setTime(t){t>this.duration?this.yoyo?(this._time=this.duration,this.reverse()):this.finish():t<0?this.yoyo?(this._time=0,this.play()):this.reset():(this._time=t,this.update())}getTime(){return this._time}setPosition(t){this.prevPos=this._pos,this.propFunc(t),this._pos=t}getPosition(t){return void 0===t&&(t=this._time),this.func(t,this.begin,this._change,this.duration)}play(){this.state=2,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire("onPlay")}reverse(){this.state=3,this._time=this.duration-this._time,this._startTime=this.getTimer()-this._time,this.onEnterFrame(),this.fire("onReverse")}seek(t){this.pause(),this._time=t,this.update(),this.fire("onSeek")}reset(){this.pause(),this._time=0,this.update(),this.fire("onReset")}finish(){this.pause(),this._time=this.duration,this.update(),this.fire("onFinish")}update(){this.setPosition(this.getPosition(this._time)),this.fire("onUpdate")}onEnterFrame(){var t=this.getTimer()-this._startTime;2===this.state?this.setTime(t):3===this.state&&this.setTime(this.duration-t)}pause(){this.state=1,this.fire("onPause")}getTimer(){return(new Date).getTime()}}class Xe{constructor(t){var e,n,r=this,i=t.node,a=i._id,s=t.easing||qe.Linear,o=!!t.yoyo;e=void 0===t.duration?.3:0===t.duration?.001:t.duration,this.node=i,this._id=Ue++;var l=i.getLayer()||(i instanceof $.Stage?i.getLayers():null);for(n in l||ht.error("Tween constructor have `node` that is not in a layer. Please add node into layer first."),this.anim=new je(function(){r.tween.onEnterFrame()},l),this.tween=new We(n,function(t){r._tweenFunc(t)},s,0,1,1e3*e,o),this._addListeners(),Xe.attrs[a]||(Xe.attrs[a]={}),Xe.attrs[a][this._id]||(Xe.attrs[a][this._id]={}),Xe.tweens[a]||(Xe.tweens[a]={}),t)void 0===Je[n]&&this._addAttr(n,t[n]);this.reset(),this.onFinish=t.onFinish,this.onReset=t.onReset,this.onUpdate=t.onUpdate}_addAttr(t,e){var n,r,i,a,s,o,l,h,u=this.node,c=u._id;if((i=Xe.tweens[c][t])&&delete Xe.attrs[c][i][t],n=u.getAttr(t),ht._isArray(e))if(r=[],s=Math.max(e.length,n.length),"points"===t&&e.length!==n.length&&(e.length>n.length?(l=n,n=ht._prepareArrayForTween(n,e,u.closed())):(o=e,e=ht._prepareArrayForTween(e,n,u.closed()))),0===t.indexOf("fill"))for(a=0;a<s;a++)if(a%2==0)r.push(e[a]-n[a]);else{var d=ht.colorToRGBA(n[a]);h=ht.colorToRGBA(e[a]),n[a]=d,r.push({r:h.r-d.r,g:h.g-d.g,b:h.b-d.b,a:h.a-d.a})}else for(a=0;a<s;a++)r.push(e[a]-n[a]);else-1!==Ye.indexOf(t)?(n=ht.colorToRGBA(n),r={r:(h=ht.colorToRGBA(e)).r-n.r,g:h.g-n.g,b:h.b-n.b,a:h.a-n.a}):r=e-n;Xe.attrs[c][this._id][t]={start:n,diff:r,end:e,trueEnd:o,trueStart:l},Xe.tweens[c][t]=this._id}_tweenFunc(t){var e,n,r,i,a,s,o,l,h=this.node,u=Xe.attrs[h._id][this._id];for(e in u){if(r=(n=u[e]).start,i=n.diff,l=n.end,ht._isArray(r))if(a=[],o=Math.max(r.length,l.length),0===e.indexOf("fill"))for(s=0;s<o;s++)s%2==0?a.push((r[s]||0)+i[s]*t):a.push("rgba("+Math.round(r[s].r+i[s].r*t)+","+Math.round(r[s].g+i[s].g*t)+","+Math.round(r[s].b+i[s].b*t)+","+(r[s].a+i[s].a*t)+")");else for(s=0;s<o;s++)a.push((r[s]||0)+i[s]*t);else a=-1!==Ye.indexOf(e)?"rgba("+Math.round(r.r+i.r*t)+","+Math.round(r.g+i.g*t)+","+Math.round(r.b+i.b*t)+","+(r.a+i.a*t)+")":r+i*t;h.setAttr(e,a)}}_addListeners(){this.tween.onPlay=()=>{this.anim.start()},this.tween.onReverse=()=>{this.anim.start()},this.tween.onPause=()=>{this.anim.stop()},this.tween.onFinish=()=>{var t=this.node,e=Xe.attrs[t._id][this._id];e.points&&e.points.trueEnd&&t.setAttr("points",e.points.trueEnd),this.onFinish&&this.onFinish.call(this)},this.tween.onReset=()=>{var t=this.node,e=Xe.attrs[t._id][this._id];e.points&&e.points.trueStart&&t.points(e.points.trueStart),this.onReset&&this.onReset()},this.tween.onUpdate=()=>{this.onUpdate&&this.onUpdate.call(this)}}play(){return this.tween.play(),this}reverse(){return this.tween.reverse(),this}reset(){return this.tween.reset(),this}seek(t){return this.tween.seek(1e3*t),this}pause(){return this.tween.pause(),this}finish(){return this.tween.finish(),this}destroy(){var t,e=this.node._id,n=this._id,r=Xe.tweens[e];for(t in this.pause(),r)delete Xe.tweens[e][t];delete Xe.attrs[e][n]}}Xe.attrs={},Xe.tweens={},Ut.prototype.to=function(t){var e=t.onFinish;t.node=this,t.onFinish=function(){this.destroy(),e&&e()},new Xe(t).play()};const qe={BackEaseIn(t,e,n,r){var i=1.70158;return n*(t/=r)*t*((i+1)*t-i)+e},BackEaseOut(t,e,n,r){var i=1.70158;return n*((t=t/r-1)*t*((i+1)*t+i)+1)+e},BackEaseInOut(t,e,n,r){var i=1.70158;return(t/=r/2)<1?n/2*(t*t*((1+(i*=1.525))*t-i))+e:n/2*((t-=2)*t*((1+(i*=1.525))*t+i)+2)+e},ElasticEaseIn(t,e,n,r,i,a){var s=0;return 0===t?e:1===(t/=r)?e+n:(a||(a=.3*r),!i||i<Math.abs(n)?(i=n,s=a/4):s=a/(2*Math.PI)*Math.asin(n/i),-i*Math.pow(2,10*(t-=1))*Math.sin((t*r-s)*(2*Math.PI)/a)+e)},ElasticEaseOut(t,e,n,r,i,a){var s=0;return 0===t?e:1===(t/=r)?e+n:(a||(a=.3*r),!i||i<Math.abs(n)?(i=n,s=a/4):s=a/(2*Math.PI)*Math.asin(n/i),i*Math.pow(2,-10*t)*Math.sin((t*r-s)*(2*Math.PI)/a)+n+e)},ElasticEaseInOut(t,e,n,r,i,a){var s=0;return 0===t?e:2==(t/=r/2)?e+n:(a||(a=r*(.3*1.5)),!i||i<Math.abs(n)?(i=n,s=a/4):s=a/(2*Math.PI)*Math.asin(n/i),t<1?i*Math.pow(2,10*(t-=1))*Math.sin((t*r-s)*(2*Math.PI)/a)*-.5+e:i*Math.pow(2,-10*(t-=1))*Math.sin((t*r-s)*(2*Math.PI)/a)*.5+n+e)},BounceEaseOut:(t,e,n,r)=>(t/=r)<1/2.75?n*(7.5625*t*t)+e:t<2/2.75?n*(7.5625*(t-=1.5/2.75)*t+.75)+e:t<2.5/2.75?n*(7.5625*(t-=2.25/2.75)*t+.9375)+e:n*(7.5625*(t-=2.625/2.75)*t+.984375)+e,BounceEaseIn:(t,e,n,r)=>n-qe.BounceEaseOut(r-t,0,n,r)+e,BounceEaseInOut:(t,e,n,r)=>t<r/2?.5*qe.BounceEaseIn(2*t,0,n,r)+e:.5*qe.BounceEaseOut(2*t-r,0,n,r)+.5*n+e,EaseIn:(t,e,n,r)=>n*(t/=r)*t+e,EaseOut:(t,e,n,r)=>-n*(t/=r)*(t-2)+e,EaseInOut:(t,e,n,r)=>(t/=r/2)<1?n/2*t*t+e:-n/2*(--t*(t-2)-1)+e,StrongEaseIn:(t,e,n,r)=>n*(t/=r)*t*t*t*t+e,StrongEaseOut:(t,e,n,r)=>n*((t=t/r-1)*t*t*t*t+1)+e,StrongEaseInOut:(t,e,n,r)=>(t/=r/2)<1?n/2*t*t*t*t*t+e:n/2*((t-=2)*t*t*t*t+2)+e,Linear:(t,e,n,r)=>n*t/r+e},Ke=ht._assign($,{Util:ht,Transform:et,Node:Ut,Container:Wt,Stage:ke,stages:Ie,Layer:ze,FastLayer:Fe,Group:Ne,DD:Pt,Shape:Oe,shapes:Le,Animation:je,Tween:Xe,Easings:qe,Context:wt,Canvas:It});class Ve extends Oe{_sceneFunc(t){var e=$.getAngle(this.angle()),n=this.clockwise();t.beginPath(),t.arc(0,0,this.outerRadius(),0,e,n),t.arc(0,0,this.innerRadius(),e,0,!n),t.closePath(),t.fillStrokeShape(this)}getWidth(){return 2*this.outerRadius()}getHeight(){return 2*this.outerRadius()}setWidth(t){this.outerRadius(t/2)}setHeight(t){this.outerRadius(t/2)}}function Ze(t,e,n,r,i,a,s){var o=Math.sqrt(Math.pow(n-t,2)+Math.pow(r-e,2)),l=Math.sqrt(Math.pow(i-n,2)+Math.pow(a-r,2)),h=s*o/(o+l),u=s*l/(o+l);return[n-h*(i-t),r-h*(a-e),n+u*(i-t),r+u*(a-e)]}function $e(t,e){var n,r,i=t.length,a=[];for(n=2;n<i-2;n+=2)r=Ze(t[n-2],t[n-1],t[n],t[n+1],t[n+2],t[n+3],e),isNaN(r[0])||(a.push(r[0]),a.push(r[1]),a.push(t[n]),a.push(t[n+1]),a.push(r[2]),a.push(r[3]));return a}Ve.prototype._centroid=!0,Ve.prototype.className="Arc",Ve.prototype._attrsAffectingSize=["innerRadius","outerRadius"],tt(Ve),yt.addGetterSetter(Ve,"innerRadius",0,dt()),yt.addGetterSetter(Ve,"outerRadius",0,dt()),yt.addGetterSetter(Ve,"angle",0,dt()),yt.addGetterSetter(Ve,"clockwise",!1,vt());class tn extends Oe{constructor(t){super(t),this.on("pointsChange.konva tensionChange.konva closedChange.konva bezierChange.konva",function(){this._clearCache("tensionPoints")})}_sceneFunc(t){var e,n,r,i=this.points(),a=i.length,s=this.tension(),o=this.closed(),l=this.bezier();if(a){if(t.beginPath(),t.moveTo(i[0],i[1]),0!==s&&a>4){for(n=(e=this.getTensionPoints()).length,r=o?0:4,o||t.quadraticCurveTo(e[0],e[1],e[2],e[3]);r<n-2;)t.bezierCurveTo(e[r++],e[r++],e[r++],e[r++],e[r++],e[r++]);o||t.quadraticCurveTo(e[n-2],e[n-1],i[a-2],i[a-1])}else if(l)for(r=2;r<a;)t.bezierCurveTo(i[r++],i[r++],i[r++],i[r++],i[r++],i[r++]);else for(r=2;r<a;r+=2)t.lineTo(i[r],i[r+1]);o?(t.closePath(),t.fillStrokeShape(this)):t.strokeShape(this)}}getTensionPoints(){return this._getCache("tensionPoints",this._getTensionPoints)}_getTensionPoints(){return this.closed()?this._getTensionPointsClosed():$e(this.points(),this.tension())}_getTensionPointsClosed(){var t=this.points(),e=t.length,n=this.tension(),r=Ze(t[e-2],t[e-1],t[0],t[1],t[2],t[3],n),i=Ze(t[e-4],t[e-3],t[e-2],t[e-1],t[0],t[1],n),a=$e(t,n);return[r[2],r[3]].concat(a).concat([i[0],i[1],t[e-2],t[e-1],i[2],i[3],r[0],r[1],t[0],t[1]])}getWidth(){return this.getSelfRect().width}getHeight(){return this.getSelfRect().height}getSelfRect(){var t=this.points();if(t.length<4)return{x:t[0]||0,y:t[1]||0,width:0,height:0};for(var e,n,r=(t=0!==this.tension()?[t[0],t[1],...this._getTensionPoints(),t[t.length-2],t[t.length-1]]:this.points())[0],i=t[0],a=t[1],s=t[1],o=0;o<t.length/2;o++)e=t[2*o],n=t[2*o+1],r=Math.min(r,e),i=Math.max(i,e),a=Math.min(a,n),s=Math.max(s,n);return{x:r,y:a,width:i-r,height:s-a}}}tn.prototype.className="Line",tn.prototype._attrsAffectingSize=["points","bezier","tension"],tt(tn),yt.addGetterSetter(tn,"closed",!1),yt.addGetterSetter(tn,"bezier",!1),yt.addGetterSetter(tn,"tension",0,dt()),yt.addGetterSetter(tn,"points",[],function(){if($.isUnminified)return function(t,e){return ht._isArray(t)?t.forEach(function(t){ht._isNumber(t)||ht.warn('"'+e+'" attribute has non numeric element '+t+". Make sure that all elements are numbers.")}):ht.warn(ut(t)+' is a not valid value for "'+e+'" attribute. The value should be a array of numbers.'),t}}());class en extends Oe{constructor(t){super(t),this.dataArray=[],this.pathLength=0,this.dataArray=en.parsePathData(this.data()),this.pathLength=0;for(var e=0;e<this.dataArray.length;++e)this.pathLength+=this.dataArray[e].pathLength;this.on("dataChange.konva",function(){this.dataArray=en.parsePathData(this.data()),this.pathLength=0;for(var t=0;t<this.dataArray.length;++t)this.pathLength+=this.dataArray[t].pathLength})}_sceneFunc(t){var e=this.dataArray;t.beginPath();for(var n=!1,r=0;r<e.length;r++){var i=e[r].command,a=e[r].points;switch(i){case"L":t.lineTo(a[0],a[1]);break;case"M":t.moveTo(a[0],a[1]);break;case"C":t.bezierCurveTo(a[0],a[1],a[2],a[3],a[4],a[5]);break;case"Q":t.quadraticCurveTo(a[0],a[1],a[2],a[3]);break;case"A":var s=a[0],o=a[1],l=a[2],h=a[3],u=a[4],c=a[5],d=a[6],f=a[7],g=l>h?l:h,A=l>h?1:l/h,p=l>h?h/l:1;t.translate(s,o),t.rotate(d),t.scale(A,p),t.arc(0,0,g,u,u+c,1-f),t.scale(1/A,1/p),t.rotate(-d),t.translate(-s,-o);break;case"z":n=!0,t.closePath()}}n||this.hasFill()?t.fillStrokeShape(this):t.strokeShape(this)}getSelfRect(){var t=[];this.dataArray.forEach(function(e){if("A"===e.command){var n=e.points[4],r=e.points[5],i=e.points[4]+r,a=Math.PI/180;if(Math.abs(n-i)<a&&(a=Math.abs(n-i)),r<0)for(let r=n-a;r>i;r-=a){const n=en.getPointOnEllipticalArc(e.points[0],e.points[1],e.points[2],e.points[3],r,0);t.push(n.x,n.y)}else for(let r=n+a;r<i;r+=a){const n=en.getPointOnEllipticalArc(e.points[0],e.points[1],e.points[2],e.points[3],r,0);t.push(n.x,n.y)}}else if("C"===e.command)for(let n=0;n<=1;n+=.01){const r=en.getPointOnCubicBezier(n,e.start.x,e.start.y,e.points[0],e.points[1],e.points[2],e.points[3],e.points[4],e.points[5]);t.push(r.x,r.y)}else t=t.concat(e.points)});for(var e,n,r=t[0],i=t[0],a=t[1],s=t[1],o=0;o<t.length/2;o++)e=t[2*o],n=t[2*o+1],isNaN(e)||(r=Math.min(r,e),i=Math.max(i,e)),isNaN(n)||(a=Math.min(a,n),s=Math.max(s,n));return{x:Math.round(r),y:Math.round(a),width:Math.round(i-r),height:Math.round(s-a)}}getLength(){return this.pathLength}getPointAtLength(t){var e,n=0,r=this.dataArray.length;if(!r)return null;for(;n<r&&t>this.dataArray[n].pathLength;)t-=this.dataArray[n].pathLength,++n;if(n===r)return{x:(e=this.dataArray[n-1].points.slice(-2))[0],y:e[1]};if(t<.01)return{x:(e=this.dataArray[n].points.slice(0,2))[0],y:e[1]};var i=this.dataArray[n],a=i.points;switch(i.command){case"L":return en.getPointOnLine(t,i.start.x,i.start.y,a[0],a[1]);case"C":return en.getPointOnCubicBezier(t/i.pathLength,i.start.x,i.start.y,a[0],a[1],a[2],a[3],a[4],a[5]);case"Q":return en.getPointOnQuadraticBezier(t/i.pathLength,i.start.x,i.start.y,a[0],a[1],a[2],a[3]);case"A":var s=a[0],o=a[1],l=a[2],h=a[3],u=a[4],c=a[5],d=a[6];return u+=c*t/i.pathLength,en.getPointOnEllipticalArc(s,o,l,h,u,d)}return null}static getLineLength(t,e,n,r){return Math.sqrt((n-t)*(n-t)+(r-e)*(r-e))}static getPointOnLine(t,e,n,r,i,a,s){void 0===a&&(a=e),void 0===s&&(s=n);var o=(i-n)/(r-e+1e-8),l=Math.sqrt(t*t/(1+o*o));r<e&&(l*=-1);var h,u=o*l;if(r===e)h={x:a,y:s+u};else if((s-n)/(a-e+1e-8)===o)h={x:a+l,y:s+u};else{var c,d,f=this.getLineLength(e,n,r,i),g=(a-e)*(r-e)+(s-n)*(i-n);c=e+(g/=f*f)*(r-e),d=n+g*(i-n);var A=this.getLineLength(a,s,c,d),p=Math.sqrt(t*t-A*A);l=Math.sqrt(p*p/(1+o*o)),r<e&&(l*=-1),h={x:c+l,y:d+(u=o*l)}}return h}static getPointOnCubicBezier(t,e,n,r,i,a,s,o,l){function h(t){return t*t*t}function u(t){return 3*t*t*(1-t)}function c(t){return 3*t*(1-t)*(1-t)}function d(t){return(1-t)*(1-t)*(1-t)}return{x:o*h(t)+a*u(t)+r*c(t)+e*d(t),y:l*h(t)+s*u(t)+i*c(t)+n*d(t)}}static getPointOnQuadraticBezier(t,e,n,r,i,a,s){function o(t){return t*t}function l(t){return 2*t*(1-t)}function h(t){return(1-t)*(1-t)}return{x:a*o(t)+r*l(t)+e*h(t),y:s*o(t)+i*l(t)+n*h(t)}}static getPointOnEllipticalArc(t,e,n,r,i,a){var s=Math.cos(a),o=Math.sin(a),l=n*Math.cos(i),h=r*Math.sin(i);return{x:t+(l*s-h*o),y:e+(l*o+h*s)}}static parsePathData(t){if(!t)return[];var e=t,n=["m","M","l","L","v","V","h","H","z","Z","c","C","q","Q","t","T","s","S","a","A"];e=e.replace(new RegExp(" ","g"),",");for(var r=0;r<n.length;r++)e=e.replace(new RegExp(n[r],"g"),"|"+n[r]);var i,a=e.split("|"),s=[],o=[],l=0,h=0,u=/([-+]?((\d+\.\d+)|((\d+)|(\.\d+)))(?:e[-+]?\d+)?)/gi;for(r=1;r<a.length;r++){var c=a[r],d=c.charAt(0);for(c=c.slice(1),o.length=0;i=u.exec(c);)o.push(i[0]);for(var f=[],g=0,A=o.length;g<A;g++)if("00"!==o[g]){var p=parseFloat(o[g]);isNaN(p)?f.push(0):f.push(p)}else f.push(0,0);for(;f.length>0&&!isNaN(f[0]);){var v,m,C,y,b,w,E,S,x,I,k=null,B=[],P=l,R=h;switch(d){case"l":l+=f.shift(),h+=f.shift(),k="L",B.push(l,h);break;case"L":l=f.shift(),h=f.shift(),B.push(l,h);break;case"m":var Q=f.shift(),T=f.shift();if(l+=Q,h+=T,k="M",s.length>2&&"z"===s[s.length-1].command)for(var D=s.length-2;D>=0;D--)if("M"===s[D].command){l=s[D].points[0]+Q,h=s[D].points[1]+T;break}B.push(l,h),d="l";break;case"M":l=f.shift(),h=f.shift(),k="M",B.push(l,h),d="L";break;case"h":l+=f.shift(),k="L",B.push(l,h);break;case"H":l=f.shift(),k="L",B.push(l,h);break;case"v":h+=f.shift(),k="L",B.push(l,h);break;case"V":h=f.shift(),k="L",B.push(l,h);break;case"C":B.push(f.shift(),f.shift(),f.shift(),f.shift()),l=f.shift(),h=f.shift(),B.push(l,h);break;case"c":B.push(l+f.shift(),h+f.shift(),l+f.shift(),h+f.shift()),l+=f.shift(),h+=f.shift(),k="C",B.push(l,h);break;case"S":m=l,C=h,"C"===(v=s[s.length-1]).command&&(m=l+(l-v.points[2]),C=h+(h-v.points[3])),B.push(m,C,f.shift(),f.shift()),l=f.shift(),h=f.shift(),k="C",B.push(l,h);break;case"s":m=l,C=h,"C"===(v=s[s.length-1]).command&&(m=l+(l-v.points[2]),C=h+(h-v.points[3])),B.push(m,C,l+f.shift(),h+f.shift()),l+=f.shift(),h+=f.shift(),k="C",B.push(l,h);break;case"Q":B.push(f.shift(),f.shift()),l=f.shift(),h=f.shift(),B.push(l,h);break;case"q":B.push(l+f.shift(),h+f.shift()),l+=f.shift(),h+=f.shift(),k="Q",B.push(l,h);break;case"T":m=l,C=h,"Q"===(v=s[s.length-1]).command&&(m=l+(l-v.points[0]),C=h+(h-v.points[1])),l=f.shift(),h=f.shift(),k="Q",B.push(m,C,l,h);break;case"t":m=l,C=h,"Q"===(v=s[s.length-1]).command&&(m=l+(l-v.points[0]),C=h+(h-v.points[1])),l+=f.shift(),h+=f.shift(),k="Q",B.push(m,C,l,h);break;case"A":y=f.shift(),b=f.shift(),w=f.shift(),E=f.shift(),S=f.shift(),x=l,I=h,l=f.shift(),h=f.shift(),k="A",B=this.convertEndpointToCenterParameterization(x,I,l,h,E,S,y,b,w);break;case"a":y=f.shift(),b=f.shift(),w=f.shift(),E=f.shift(),S=f.shift(),x=l,I=h,l+=f.shift(),h+=f.shift(),k="A",B=this.convertEndpointToCenterParameterization(x,I,l,h,E,S,y,b,w)}s.push({command:k||d,points:B,start:{x:P,y:R},pathLength:this.calcLength(P,R,k||d,B)})}"z"!==d&&"Z"!==d||s.push({command:"z",points:[],start:void 0,pathLength:0})}return s}static calcLength(t,e,n,r){var i,a,s,o,l=en;switch(n){case"L":return l.getLineLength(t,e,r[0],r[1]);case"C":for(i=0,a=l.getPointOnCubicBezier(0,t,e,r[0],r[1],r[2],r[3],r[4],r[5]),o=.01;o<=1;o+=.01)s=l.getPointOnCubicBezier(o,t,e,r[0],r[1],r[2],r[3],r[4],r[5]),i+=l.getLineLength(a.x,a.y,s.x,s.y),a=s;return i;case"Q":for(i=0,a=l.getPointOnQuadraticBezier(0,t,e,r[0],r[1],r[2],r[3]),o=.01;o<=1;o+=.01)s=l.getPointOnQuadraticBezier(o,t,e,r[0],r[1],r[2],r[3]),i+=l.getLineLength(a.x,a.y,s.x,s.y),a=s;return i;case"A":i=0;var h=r[4],u=r[5],c=r[4]+u,d=Math.PI/180;if(Math.abs(h-c)<d&&(d=Math.abs(h-c)),a=l.getPointOnEllipticalArc(r[0],r[1],r[2],r[3],h,0),u<0)for(o=h-d;o>c;o-=d)s=l.getPointOnEllipticalArc(r[0],r[1],r[2],r[3],o,0),i+=l.getLineLength(a.x,a.y,s.x,s.y),a=s;else for(o=h+d;o<c;o+=d)s=l.getPointOnEllipticalArc(r[0],r[1],r[2],r[3],o,0),i+=l.getLineLength(a.x,a.y,s.x,s.y),a=s;return s=l.getPointOnEllipticalArc(r[0],r[1],r[2],r[3],c,0),i+=l.getLineLength(a.x,a.y,s.x,s.y)}return 0}static convertEndpointToCenterParameterization(t,e,n,r,i,a,s,o,l){var h=l*(Math.PI/180),u=Math.cos(h)*(t-n)/2+Math.sin(h)*(e-r)/2,c=-1*Math.sin(h)*(t-n)/2+Math.cos(h)*(e-r)/2,d=u*u/(s*s)+c*c/(o*o);d>1&&(s*=Math.sqrt(d),o*=Math.sqrt(d));var f=Math.sqrt((s*s*(o*o)-s*s*(c*c)-o*o*(u*u))/(s*s*(c*c)+o*o*(u*u)));i===a&&(f*=-1),isNaN(f)&&(f=0);var g=f*s*c/o,A=f*-o*u/s,p=(t+n)/2+Math.cos(h)*g-Math.sin(h)*A,v=(e+r)/2+Math.sin(h)*g+Math.cos(h)*A,m=function(t){return Math.sqrt(t[0]*t[0]+t[1]*t[1])},C=function(t,e){return(t[0]*e[0]+t[1]*e[1])/(m(t)*m(e))},y=function(t,e){return(t[0]*e[1]<t[1]*e[0]?-1:1)*Math.acos(C(t,e))},b=y([1,0],[(u-g)/s,(c-A)/o]),w=[(u-g)/s,(c-A)/o],E=[(-1*u-g)/s,(-1*c-A)/o],S=y(w,E);return C(w,E)<=-1&&(S=Math.PI),C(w,E)>=1&&(S=0),0===a&&S>0&&(S-=2*Math.PI),1===a&&S<0&&(S+=2*Math.PI),[p,v,s,o,b,S,h,a]}}en.prototype.className="Path",en.prototype._attrsAffectingSize=["data"],tt(en),yt.addGetterSetter(en,"data");class nn extends tn{_sceneFunc(t){super._sceneFunc(t);var e=2*Math.PI,n=this.points(),r=n,i=0!==this.tension()&&n.length>4;i&&(r=this.getTensionPoints());var a,s,o=this.pointerLength(),l=n.length;if(i){const t=[r[r.length-4],r[r.length-3],r[r.length-2],r[r.length-1],n[l-2],n[l-1]],e=en.calcLength(r[r.length-4],r[r.length-3],"C",t),i=en.getPointOnQuadraticBezier(Math.min(1,1-o/e),t[0],t[1],t[2],t[3],t[4],t[5]);a=n[l-2]-i.x,s=n[l-1]-i.y}else a=n[l-2]-n[l-4],s=n[l-1]-n[l-3];var h=(Math.atan2(s,a)+e)%e,u=this.pointerWidth();this.pointerAtEnding()&&(t.save(),t.beginPath(),t.translate(n[l-2],n[l-1]),t.rotate(h),t.moveTo(0,0),t.lineTo(-o,u/2),t.lineTo(-o,-u/2),t.closePath(),t.restore(),this.__fillStroke(t)),this.pointerAtBeginning()&&(t.save(),t.beginPath(),t.translate(n[0],n[1]),i?(a=(r[0]+r[2])/2-n[0],s=(r[1]+r[3])/2-n[1]):(a=n[2]-n[0],s=n[3]-n[1]),t.rotate((Math.atan2(-s,-a)+e)%e),t.moveTo(0,0),t.lineTo(-o,u/2),t.lineTo(-o,-u/2),t.closePath(),t.restore(),this.__fillStroke(t))}__fillStroke(t){var e=this.dashEnabled();e&&(this.attrs.dashEnabled=!1,t.setLineDash([])),t.fillStrokeShape(this),e&&(this.attrs.dashEnabled=!0)}getSelfRect(){const t=super.getSelfRect(),e=this.pointerWidth()/2;return{x:t.x-e,y:t.y-e,width:t.width+2*e,height:t.height+2*e}}}nn.prototype.className="Arrow",tt(nn),yt.addGetterSetter(nn,"pointerLength",10,dt()),yt.addGetterSetter(nn,"pointerWidth",10,dt()),yt.addGetterSetter(nn,"pointerAtBeginning",!1),yt.addGetterSetter(nn,"pointerAtEnding",!0);class rn extends Oe{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.attrs.radius||0,0,2*Math.PI,!1),t.closePath(),t.fillStrokeShape(this)}getWidth(){return 2*this.radius()}getHeight(){return 2*this.radius()}setWidth(t){this.radius()!==t/2&&this.radius(t/2)}setHeight(t){this.radius()!==t/2&&this.radius(t/2)}}rn.prototype._centroid=!0,rn.prototype.className="Circle",rn.prototype._attrsAffectingSize=["radius"],tt(rn),yt.addGetterSetter(rn,"radius",0,dt());class an extends Oe{_sceneFunc(t){var e=this.radiusX(),n=this.radiusY();t.beginPath(),t.save(),e!==n&&t.scale(1,n/e),t.arc(0,0,e,0,2*Math.PI,!1),t.restore(),t.closePath(),t.fillStrokeShape(this)}getWidth(){return 2*this.radiusX()}getHeight(){return 2*this.radiusY()}setWidth(t){this.radiusX(t/2)}setHeight(t){this.radiusY(t/2)}}an.prototype.className="Ellipse",an.prototype._centroid=!0,an.prototype._attrsAffectingSize=["radiusX","radiusY"],tt(an),yt.addComponentsGetterSetter(an,"radius",["x","y"]),yt.addGetterSetter(an,"radiusX",0,dt()),yt.addGetterSetter(an,"radiusY",0,dt());class sn extends Oe{constructor(t){super(t),this.on("imageChange.konva",()=>{this._setImageLoad()}),this._setImageLoad()}_setImageLoad(){const t=this.image();t&&t.complete||t&&4===t.readyState||t&&t.addEventListener&&t.addEventListener("load",()=>{this._requestDraw()})}_useBufferCanvas(){return super._useBufferCanvas(!0)}_sceneFunc(t){const e=this.getWidth(),n=this.getHeight(),r=this.attrs.image;let i;if(r){const t=this.attrs.cropWidth,a=this.attrs.cropHeight;i=t&&a?[r,this.cropX(),this.cropY(),t,a,0,0,e,n]:[r,0,0,e,n]}(this.hasFill()||this.hasStroke())&&(t.beginPath(),t.rect(0,0,e,n),t.closePath(),t.fillStrokeShape(this)),r&&t.drawImage.apply(t,i)}_hitFunc(t){var e=this.width(),n=this.height();t.beginPath(),t.rect(0,0,e,n),t.closePath(),t.fillStrokeShape(this)}getWidth(){var t,e;return null!==(t=this.attrs.width)&&void 0!==t?t:null===(e=this.image())||void 0===e?void 0:e.width}getHeight(){var t,e;return null!==(t=this.attrs.height)&&void 0!==t?t:null===(e=this.image())||void 0===e?void 0:e.height}static fromURL(t,e){var n=ht.createImageElement();n.onload=function(){var t=new sn({image:n});e(t)},n.crossOrigin="Anonymous",n.src=t}}sn.prototype.className="Image",tt(sn),yt.addGetterSetter(sn,"image"),yt.addComponentsGetterSetter(sn,"crop",["x","y","width","height"]),yt.addGetterSetter(sn,"cropX",0,dt()),yt.addGetterSetter(sn,"cropY",0,dt()),yt.addGetterSetter(sn,"cropWidth",0,dt()),yt.addGetterSetter(sn,"cropHeight",0,dt());var on=["fontFamily","fontSize","fontStyle","padding","lineHeight","text","width","height"],ln="up",hn="right",un="down",cn="left",dn=on.length;class fn extends Ne{constructor(t){super(t),this.on("add.konva",function(t){this._addListeners(t.child),this._sync()})}getText(){return this.find("Text")[0]}getTag(){return this.find("Tag")[0]}_addListeners(t){var e,n=this,r=function(){n._sync()};for(e=0;e<dn;e++)t.on(on[e]+"Change.konva",r)}getWidth(){return this.getText().width()}getHeight(){return this.getText().height()}_sync(){var t,e,n,r,i,a,s,o=this.getText(),l=this.getTag();if(o&&l){switch(t=o.width(),e=o.height(),n=l.pointerDirection(),r=l.pointerWidth(),s=l.pointerHeight(),i=0,a=0,n){case ln:i=t/2,a=-1*s;break;case hn:i=t+r,a=e/2;break;case un:i=t/2,a=e+s;break;case cn:i=-1*r,a=e/2}l.setAttrs({x:-1*i,y:-1*a,width:t,height:e}),o.setAttrs({x:-1*i,y:-1*a})}}}fn.prototype.className="Label",tt(fn);class gn extends Oe{_sceneFunc(t){var e=this.width(),n=this.height(),r=this.pointerDirection(),i=this.pointerWidth(),a=this.pointerHeight(),s=this.cornerRadius();let o=0,l=0,h=0,u=0;"number"==typeof s?o=l=h=u=Math.min(s,e/2,n/2):(o=Math.min(s[0]||0,e/2,n/2),l=Math.min(s[1]||0,e/2,n/2),u=Math.min(s[2]||0,e/2,n/2),h=Math.min(s[3]||0,e/2,n/2)),t.beginPath(),t.moveTo(o,0),r===ln&&(t.lineTo((e-i)/2,0),t.lineTo(e/2,-1*a),t.lineTo((e+i)/2,0)),t.lineTo(e-l,0),t.arc(e-l,l,l,3*Math.PI/2,0,!1),r===hn&&(t.lineTo(e,(n-a)/2),t.lineTo(e+i,n/2),t.lineTo(e,(n+a)/2)),t.lineTo(e,n-u),t.arc(e-u,n-u,u,0,Math.PI/2,!1),r===un&&(t.lineTo((e+i)/2,n),t.lineTo(e/2,n+a),t.lineTo((e-i)/2,n)),t.lineTo(h,n),t.arc(h,n-h,h,Math.PI/2,Math.PI,!1),r===cn&&(t.lineTo(0,(n+a)/2),t.lineTo(-1*i,n/2),t.lineTo(0,(n-a)/2)),t.lineTo(0,o),t.arc(o,o,o,Math.PI,3*Math.PI/2,!1),t.closePath(),t.fillStrokeShape(this)}getSelfRect(){var t=0,e=0,n=this.pointerWidth(),r=this.pointerHeight(),i=this.pointerDirection(),a=this.width(),s=this.height();return i===ln?(e-=r,s+=r):i===un?s+=r:i===cn?(t-=1.5*n,a+=n):i===hn&&(a+=1.5*n),{x:t,y:e,width:a,height:s}}}gn.prototype.className="Tag",tt(gn),yt.addGetterSetter(gn,"pointerDirection","none"),yt.addGetterSetter(gn,"pointerWidth",0,dt()),yt.addGetterSetter(gn,"pointerHeight",0,dt()),yt.addGetterSetter(gn,"cornerRadius",0,ft(4));class An extends Oe{_sceneFunc(t){var e=this.cornerRadius(),n=this.width(),r=this.height();if(t.beginPath(),e){let i=0,a=0,s=0,o=0;"number"==typeof e?i=a=s=o=Math.min(e,n/2,r/2):(i=Math.min(e[0]||0,n/2,r/2),a=Math.min(e[1]||0,n/2,r/2),o=Math.min(e[2]||0,n/2,r/2),s=Math.min(e[3]||0,n/2,r/2)),t.moveTo(i,0),t.lineTo(n-a,0),t.arc(n-a,a,a,3*Math.PI/2,0,!1),t.lineTo(n,r-o),t.arc(n-o,r-o,o,0,Math.PI/2,!1),t.lineTo(s,r),t.arc(s,r-s,s,Math.PI/2,Math.PI,!1),t.lineTo(0,i),t.arc(i,i,i,Math.PI,3*Math.PI/2,!1)}else t.rect(0,0,n,r);t.closePath(),t.fillStrokeShape(this)}}An.prototype.className="Rect",tt(An),yt.addGetterSetter(An,"cornerRadius",0,ft(4));class pn extends Oe{_sceneFunc(t){const e=this._getPoints();t.beginPath(),t.moveTo(e[0].x,e[0].y);for(var n=1;n<e.length;n++)t.lineTo(e[n].x,e[n].y);t.closePath(),t.fillStrokeShape(this)}_getPoints(){const t=this.attrs.sides,e=this.attrs.radius||0,n=[];for(var r=0;r<t;r++)n.push({x:e*Math.sin(2*r*Math.PI/t),y:-1*e*Math.cos(2*r*Math.PI/t)});return n}getSelfRect(){const t=this._getPoints();var e=t[0].x,n=t[0].y,r=t[0].x,i=t[0].y;return t.forEach(t=>{e=Math.min(e,t.x),n=Math.max(n,t.x),r=Math.min(r,t.y),i=Math.max(i,t.y)}),{x:e,y:r,width:n-e,height:i-r}}getWidth(){return 2*this.radius()}getHeight(){return 2*this.radius()}setWidth(t){this.radius(t/2)}setHeight(t){this.radius(t/2)}}pn.prototype.className="RegularPolygon",pn.prototype._centroid=!0,pn.prototype._attrsAffectingSize=["radius"],tt(pn),yt.addGetterSetter(pn,"radius",0,dt()),yt.addGetterSetter(pn,"sides",0,dt());var vn=2*Math.PI;class mn extends Oe{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.innerRadius(),0,vn,!1),t.moveTo(this.outerRadius(),0),t.arc(0,0,this.outerRadius(),vn,0,!0),t.closePath(),t.fillStrokeShape(this)}getWidth(){return 2*this.outerRadius()}getHeight(){return 2*this.outerRadius()}setWidth(t){this.outerRadius(t/2)}setHeight(t){this.outerRadius(t/2)}}mn.prototype.className="Ring",mn.prototype._centroid=!0,mn.prototype._attrsAffectingSize=["innerRadius","outerRadius"],tt(mn),yt.addGetterSetter(mn,"innerRadius",0,dt()),yt.addGetterSetter(mn,"outerRadius",0,dt());class Cn extends Oe{constructor(t){super(t),this._updated=!0,this.anim=new je(()=>{var t=this._updated;return this._updated=!1,t}),this.on("animationChange.konva",function(){this.frameIndex(0)}),this.on("frameIndexChange.konva",function(){this._updated=!0}),this.on("frameRateChange.konva",function(){this.anim.isRunning()&&(clearInterval(this.interval),this._setInterval())})}_sceneFunc(t){var e=this.animation(),n=this.frameIndex(),r=4*n,i=this.animations()[e],a=this.frameOffsets(),s=i[r+0],o=i[r+1],l=i[r+2],h=i[r+3],u=this.image();if((this.hasFill()||this.hasStroke())&&(t.beginPath(),t.rect(0,0,l,h),t.closePath(),t.fillStrokeShape(this)),u)if(a){var c=a[e],d=2*n;t.drawImage(u,s,o,l,h,c[d+0],c[d+1],l,h)}else t.drawImage(u,s,o,l,h,0,0,l,h)}_hitFunc(t){var e=this.animation(),n=this.frameIndex(),r=4*n,i=this.animations()[e],a=this.frameOffsets(),s=i[r+2],o=i[r+3];if(t.beginPath(),a){var l=a[e],h=2*n;t.rect(l[h+0],l[h+1],s,o)}else t.rect(0,0,s,o);t.closePath(),t.fillShape(this)}_useBufferCanvas(){return super._useBufferCanvas(!0)}_setInterval(){var t=this;this.interval=setInterval(function(){t._updateIndex()},1e3/this.frameRate())}start(){if(!this.isRunning()){var t=this.getLayer();this.anim.setLayers(t),this._setInterval(),this.anim.start()}}stop(){this.anim.stop(),clearInterval(this.interval)}isRunning(){return this.anim.isRunning()}_updateIndex(){var t=this.frameIndex(),e=this.animation();t<this.animations()[e].length/4-1?this.frameIndex(t+1):this.frameIndex(0)}}Cn.prototype.className="Sprite",tt(Cn),yt.addGetterSetter(Cn,"animation"),yt.addGetterSetter(Cn,"animations"),yt.addGetterSetter(Cn,"frameOffsets"),yt.addGetterSetter(Cn,"image"),yt.addGetterSetter(Cn,"frameIndex",0,dt()),yt.addGetterSetter(Cn,"frameRate",17,dt()),yt.backCompat(Cn,{index:"frameIndex",getIndex:"getFrameIndex",setIndex:"setFrameIndex"});class yn extends Oe{_sceneFunc(t){var e=this.innerRadius(),n=this.outerRadius(),r=this.numPoints();t.beginPath(),t.moveTo(0,0-n);for(var i=1;i<2*r;i++){var a=i%2==0?n:e,s=a*Math.sin(i*Math.PI/r),o=-1*a*Math.cos(i*Math.PI/r);t.lineTo(s,o)}t.closePath(),t.fillStrokeShape(this)}getWidth(){return 2*this.outerRadius()}getHeight(){return 2*this.outerRadius()}setWidth(t){this.outerRadius(t/2)}setHeight(t){this.outerRadius(t/2)}}function bn(t){return Array.from(t)}yn.prototype.className="Star",yn.prototype._centroid=!0,yn.prototype._attrsAffectingSize=["innerRadius","outerRadius"],tt(yn),yt.addGetterSetter(yn,"numPoints",5,dt()),yt.addGetterSetter(yn,"innerRadius",0,dt()),yt.addGetterSetter(yn,"outerRadius",0,dt());var wn,En="auto",Sn="justify",xn="left",In="middle",kn="normal",Bn=" ",Pn=["fontFamily","fontSize","fontStyle","fontVariant","padding","align","verticalAlign","lineHeight","text","width","height","wrap","ellipsis","letterSpacing"],Rn=Pn.length;function Qn(){return wn||(wn=ht.createCanvasElement().getContext("2d"))}class Tn extends Oe{constructor(t){super(function(t){return(t=t||{}).fillLinearGradientColorStops||t.fillRadialGradientColorStops||t.fillPatternImage||(t.fill=t.fill||"black"),t}(t)),this._partialTextX=0,this._partialTextY=0;for(var e=0;e<Rn;e++)this.on(Pn[e]+"Change.konva",this._setTextData);this._setTextData()}_sceneFunc(t){var e=this.textArr,n=e.length;if(this.text()){var r,i=this.padding(),a=this.fontSize(),s=this.lineHeight()*a,o=this.verticalAlign(),l=0,h=this.align(),u=this.getWidth(),c=this.letterSpacing(),d=this.fill(),f=this.textDecoration(),g=-1!==f.indexOf("underline"),A=-1!==f.indexOf("line-through"),p=0,v=(p=s/2,0),m=0;for(t.setAttr("font",this._getContextFont()),t.setAttr("textBaseline",In),t.setAttr("textAlign",xn),o===In?l=(this.getHeight()-n*s-2*i)/2:"bottom"===o&&(l=this.getHeight()-n*s-2*i),t.translate(i,l+i),r=0;r<n;r++){v=0,m=0;var C,y,b,w=e[r],E=w.text,S=w.width,x=r!==n-1;if(t.save(),"right"===h?v+=u-S-2*i:"center"===h&&(v+=(u-S-2*i)/2),g&&(t.save(),t.beginPath(),t.moveTo(v,p+m+Math.round(a/2)),y=0===(C=E.split(" ").length-1),b=h===Sn&&x&&!y?u-2*i:S,t.lineTo(v+Math.round(b),p+m+Math.round(a/2)),t.lineWidth=a/15,t.strokeStyle=d,t.stroke(),t.restore()),A&&(t.save(),t.beginPath(),t.moveTo(v,p+m),y=0===(C=E.split(" ").length-1),b=h===Sn&&x&&!y?u-2*i:S,t.lineTo(v+Math.round(b),p+m),t.lineWidth=a/15,t.strokeStyle=d,t.stroke(),t.restore()),0!==c||h===Sn){C=E.split(" ").length-1;for(var I=bn(E),k=0;k<I.length;k++){var B=I[k];" "===B&&r!==n-1&&h===Sn&&(v+=(u-2*i-S)/C),this._partialTextX=v,this._partialTextY=p+m,this._partialText=B,t.fillStrokeShape(this),v+=this.measureSize(B).width+c}}else this._partialTextX=v,this._partialTextY=p+m,this._partialText=E,t.fillStrokeShape(this);t.restore(),n>1&&(p+=s)}}}_hitFunc(t){var e=this.getWidth(),n=this.getHeight();t.beginPath(),t.rect(0,0,e,n),t.closePath(),t.fillStrokeShape(this)}setText(t){var e=ht._isString(t)?t:null==t?"":t+"";return this._setAttr("text",e),this}getWidth(){return this.attrs.width===En||void 0===this.attrs.width?this.getTextWidth()+2*this.padding():this.attrs.width}getHeight(){return this.attrs.height===En||void 0===this.attrs.height?this.fontSize()*this.textArr.length*this.lineHeight()+2*this.padding():this.attrs.height}getTextWidth(){return this.textWidth}getTextHeight(){return ht.warn("text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height."),this.textHeight}measureSize(t){var e,n=Qn(),r=this.fontSize();return n.save(),n.font=this._getContextFont(),e=n.measureText(t),n.restore(),{width:e.width,height:r}}_getContextFont(){return this.fontStyle()+Bn+this.fontVariant()+Bn+(this.fontSize()+"px ")+this.fontFamily().split(",").map(t=>{const e=(t=t.trim()).indexOf(" ")>=0,n=t.indexOf('"')>=0||t.indexOf("'")>=0;return e&&!n&&(t=`"${t}"`),t}).join(", ")}_addTextLine(t){this.align()===Sn&&(t=t.trim());var e=this._getTextWidth(t);return this.textArr.push({text:t,width:e})}_getTextWidth(t){var e=this.letterSpacing(),n=t.length;return Qn().measureText(t).width+(n?e*(n-1):0)}_setTextData(){var t=this.text().split("\n"),e=+this.fontSize(),n=0,r=this.lineHeight()*e,i=this.attrs.width,a=this.attrs.height,s=i!==En&&void 0!==i,o=a!==En&&void 0!==a,l=this.padding(),h=i-2*l,u=a-2*l,c=0,d=this.wrap(),f="none"!==d,g="char"!==d&&f,A=this.ellipsis();this.textArr=[],Qn().font=this._getContextFont();for(var p=A?this._getTextWidth("…"):0,v=0,m=t.length;v<m;++v){var C=t[v],y=this._getTextWidth(C);if(s&&y>h)for(;C.length>0;){for(var b=0,w=C.length,E="",S=0;b<w;){var x=b+w>>>1,I=C.slice(0,x+1),k=this._getTextWidth(I)+p;k<=h?(b=x+1,E=I,S=k):w=x}if(!E)break;if(g){var B,P=C[E.length];(B=(P===Bn||"-"===P)&&S<=h?E.length:Math.max(E.lastIndexOf(Bn),E.lastIndexOf("-"))+1)>0&&(b=B,E=E.slice(0,b),S=this._getTextWidth(E))}if(E=E.trimRight(),this._addTextLine(E),n=Math.max(n,S),c+=r,!f||o&&c+r>u){var R=this.textArr[this.textArr.length-1];if(R)if(A)this._getTextWidth(R.text+"…")<h||(R.text=R.text.slice(0,R.text.length-3)),this.textArr.splice(this.textArr.length-1,1),this._addTextLine(R.text+"…");break}if((C=(C=C.slice(b)).trimLeft()).length>0&&(y=this._getTextWidth(C))<=h){this._addTextLine(C),c+=r,n=Math.max(n,y);break}}else this._addTextLine(C),c+=r,n=Math.max(n,y);if(o&&c+r>u)break}this.textHeight=e,this.textWidth=n}getStrokeScaleEnabled(){return!0}}Tn.prototype._fillFunc=function(t){t.fillText(this._partialText,this._partialTextX,this._partialTextY)},Tn.prototype._strokeFunc=function(t){t.strokeText(this._partialText,this._partialTextX,this._partialTextY)},Tn.prototype.className="Text",Tn.prototype._attrsAffectingSize=["text","fontSize","padding","wrap","lineHeight","letterSpacing"],tt(Tn),yt.overWriteSetter(Tn,"width",gt()),yt.overWriteSetter(Tn,"height",gt()),yt.addGetterSetter(Tn,"fontFamily","Arial"),yt.addGetterSetter(Tn,"fontSize",12,dt()),yt.addGetterSetter(Tn,"fontStyle",kn),yt.addGetterSetter(Tn,"fontVariant",kn),yt.addGetterSetter(Tn,"padding",0,dt()),yt.addGetterSetter(Tn,"align",xn),yt.addGetterSetter(Tn,"verticalAlign","top"),yt.addGetterSetter(Tn,"lineHeight",1,dt()),yt.addGetterSetter(Tn,"wrap","word"),yt.addGetterSetter(Tn,"ellipsis",!1,vt()),yt.addGetterSetter(Tn,"letterSpacing",0,dt()),yt.addGetterSetter(Tn,"text","",At()),yt.addGetterSetter(Tn,"textDecoration","");var Dn="normal";function Mn(t){t.fillText(this.partialText,0,0)}function Ln(t){t.strokeText(this.partialText,0,0)}class On extends Oe{constructor(t){super(t),this.dummyCanvas=ht.createCanvasElement(),this.dataArray=[],this.dataArray=en.parsePathData(this.attrs.data),this.on("dataChange.konva",function(){this.dataArray=en.parsePathData(this.attrs.data),this._setTextData()}),this.on("textChange.konva alignChange.konva letterSpacingChange.konva kerningFuncChange.konva fontSizeChange.konva",this._setTextData),this._setTextData()}_sceneFunc(t){t.setAttr("font",this._getContextFont()),t.setAttr("textBaseline",this.textBaseline()),t.setAttr("textAlign","left"),t.save();var e=this.textDecoration(),n=this.fill(),r=this.fontSize(),i=this.glyphInfo;"underline"===e&&t.beginPath();for(var a=0;a<i.length;a++){t.save();var s=i[a].p0;t.translate(s.x,s.y),t.rotate(i[a].rotation),this.partialText=i[a].text,t.fillStrokeShape(this),"underline"===e&&(0===a&&t.moveTo(0,r/2+1),t.lineTo(r,r/2+1)),t.restore()}"underline"===e&&(t.strokeStyle=n,t.lineWidth=r/20,t.stroke()),t.restore()}_hitFunc(t){t.beginPath();var e=this.glyphInfo;if(e.length>=1){var n=e[0].p0;t.moveTo(n.x,n.y)}for(var r=0;r<e.length;r++){var i=e[r].p1;t.lineTo(i.x,i.y)}t.setAttr("lineWidth",this.fontSize()),t.setAttr("strokeStyle",this.colorKey),t.stroke()}getTextWidth(){return this.textWidth}getTextHeight(){return ht.warn("text.getTextHeight() method is deprecated. Use text.height() - for full height and text.fontSize() - for one line height."),this.textHeight}setText(t){return Tn.prototype.setText.call(this,t)}_getContextFont(){return Tn.prototype._getContextFont.call(this)}_getTextSize(t){var e=this.dummyCanvas.getContext("2d");e.save(),e.font=this._getContextFont();var n=e.measureText(t);return e.restore(),{width:n.width,height:parseInt(this.attrs.fontSize,10)}}_setTextData(){var t=this,e=this._getTextSize(this.attrs.text),n=this.letterSpacing(),r=this.align(),i=this.kerningFunc();this.textWidth=e.width,this.textHeight=e.height;var a=Math.max(this.textWidth+((this.attrs.text||"").length-1)*n,0);this.glyphInfo=[];for(var s=0,o=0;o<t.dataArray.length;o++)t.dataArray[o].pathLength>0&&(s+=t.dataArray[o].pathLength);var l=0;"center"===r&&(l=Math.max(0,s/2-a/2)),"right"===r&&(l=Math.max(0,s-a));for(var h,u,c,d=bn(this.text()),f=this.text().split(" ").length-1,g=-1,A=0,p=function(){A=0;for(var e=t.dataArray,n=g+1;n<e.length;n++){if(e[n].pathLength>0)return g=n,e[n];"M"===e[n].command&&(h={x:e[n].points[0],y:e[n].points[1]})}return{}},v=function(e){var i=t._getTextSize(e).width+n;" "===e&&"justify"===r&&(i+=(s-a)/f);var o=0,l=0;for(u=void 0;Math.abs(i-o)/i>.01&&l<20;){l++;for(var d=o;void 0===c;)(c=p())&&d+c.pathLength<i&&(d+=c.pathLength,c=void 0);if(c==={}||void 0===h)return;var g=!1;switch(c.command){case"L":en.getLineLength(h.x,h.y,c.points[0],c.points[1])>i?u=en.getPointOnLine(i,h.x,h.y,c.points[0],c.points[1],h.x,h.y):c=void 0;break;case"A":var v=c.points[4],m=c.points[5],C=c.points[4]+m;0===A?A=v+1e-8:i>o?A+=Math.PI/180*m/Math.abs(m):A-=Math.PI/360*m/Math.abs(m),(m<0&&A<C||m>=0&&A>C)&&(A=C,g=!0),u=en.getPointOnEllipticalArc(c.points[0],c.points[1],c.points[2],c.points[3],A,c.points[6]);break;case"C":0===A?A=i>c.pathLength?1e-8:i/c.pathLength:i>o?A+=(i-o)/c.pathLength/2:A=Math.max(A-(o-i)/c.pathLength/2,0),A>1&&(A=1,g=!0),u=en.getPointOnCubicBezier(A,c.start.x,c.start.y,c.points[0],c.points[1],c.points[2],c.points[3],c.points[4],c.points[5]);break;case"Q":0===A?A=i/c.pathLength:i>o?A+=(i-o)/c.pathLength:A-=(o-i)/c.pathLength,A>1&&(A=1,g=!0),u=en.getPointOnQuadraticBezier(A,c.start.x,c.start.y,c.points[0],c.points[1],c.points[2],c.points[3])}void 0!==u&&(o=en.getLineLength(h.x,h.y,u.x,u.y)),g&&(g=!1,c=void 0)}},m=l/(t._getTextSize("C").width+n)-1,C=0;C<m&&(v("C"),void 0!==h&&void 0!==u);C++)h=u;for(var y=0;y<d.length&&(v(d[y]),void 0!==h&&void 0!==u);y++){var b=en.getLineLength(h.x,h.y,u.x,u.y),w=0;if(i)try{w=i(d[y-1],d[y])*this.fontSize()}catch(t){w=0}h.x+=w,u.x+=w,this.textWidth+=w;var E=en.getPointOnLine(w+b/2,h.x,h.y,u.x,u.y),S=Math.atan2(u.y-h.y,u.x-h.x);this.glyphInfo.push({transposeX:E.x,transposeY:E.y,text:d[y],rotation:S,p0:h,p1:u}),h=u}}getSelfRect(){if(!this.glyphInfo.length)return{x:0,y:0,width:0,height:0};var t=[];this.glyphInfo.forEach(function(e){t.push(e.p0.x),t.push(e.p0.y),t.push(e.p1.x),t.push(e.p1.y)});for(var e,n,r=t[0]||0,i=t[0]||0,a=t[1]||0,s=t[1]||0,o=0;o<t.length/2;o++)e=t[2*o],n=t[2*o+1],r=Math.min(r,e),i=Math.max(i,e),a=Math.min(a,n),s=Math.max(s,n);var l=this.fontSize();return{x:r-l/2,y:a-l/2,width:i-r+l,height:s-a+l}}}On.prototype._fillFunc=Mn,On.prototype._strokeFunc=Ln,On.prototype._fillFuncHit=Mn,On.prototype._strokeFuncHit=Ln,On.prototype.className="TextPath",On.prototype._attrsAffectingSize=["text","fontSize","data"],tt(On),yt.addGetterSetter(On,"data"),yt.addGetterSetter(On,"fontFamily","Arial"),yt.addGetterSetter(On,"fontSize",12,dt()),yt.addGetterSetter(On,"fontStyle",Dn),yt.addGetterSetter(On,"align","left"),yt.addGetterSetter(On,"letterSpacing",0,dt()),yt.addGetterSetter(On,"textBaseline","middle"),yt.addGetterSetter(On,"fontVariant",Dn),yt.addGetterSetter(On,"text",""),yt.addGetterSetter(On,"textDecoration",null),yt.addGetterSetter(On,"kerningFunc",null);var _n="tr-konva",Gn=["resizeEnabledChange","rotateAnchorOffsetChange","rotateEnabledChange","enabledAnchorsChange","anchorSizeChange","borderEnabledChange","borderStrokeChange","borderStrokeWidthChange","borderDashChange","anchorStrokeChange","anchorStrokeWidthChange","anchorFillChange","anchorCornerRadiusChange","ignoreStrokeChange"].map(t=>t+`.${_n}`).join(" "),zn="nodesRect",Fn=["widthChange","heightChange","scaleXChange","scaleYChange","skewXChange","skewYChange","rotationChange","offsetXChange","offsetYChange","transformsEnabledChange","strokeWidthChange"],Nn={"top-left":-45,"top-center":0,"top-right":45,"middle-right":-90,"middle-left":90,"bottom-left":-135,"bottom-center":180,"bottom-right":135};const Hn="ontouchstart"in $._global;var jn=["top-left","top-center","top-right","middle-right","middle-left","bottom-left","bottom-center","bottom-right"];function Jn(t,e,n){const r=n.x+(t.x-n.x)*Math.cos(e)-(t.y-n.y)*Math.sin(e),i=n.y+(t.x-n.x)*Math.sin(e)+(t.y-n.y)*Math.cos(e);return Object.assign(Object.assign({},t),{rotation:t.rotation+e,x:r,y:i})}function Un(t,e){const n=function(t){return{x:t.x+t.width/2*Math.cos(t.rotation)+t.height/2*Math.sin(-t.rotation),y:t.y+t.height/2*Math.cos(t.rotation)+t.width/2*Math.sin(t.rotation)}}(t);return Jn(t,e,n)}class Yn extends Ne{constructor(t){super(t),this._transforming=!1,this._createElements(),this._handleMouseMove=this._handleMouseMove.bind(this),this._handleMouseUp=this._handleMouseUp.bind(this),this.update=this.update.bind(this),this.on(Gn,this.update),this.getNode()&&this.update()}attachTo(t){return this.setNode(t),this}setNode(t){return ht.warn("tr.setNode(shape), tr.node(shape) and tr.attachTo(shape) methods are deprecated. Please use tr.nodes(nodesArray) instead."),this.setNodes([t])}getNode(){return this._nodes&&this._nodes[0]}_getEventNamespace(){return _n+this._id}setNodes(t=[]){return this._nodes&&this._nodes.length&&this.detach(),this._nodes=t,1===t.length&&this.useSingleNodeRotation()?this.rotation(t[0].getAbsoluteRotation()):this.rotation(0),this._nodes.forEach(t=>{const e=()=>{1===this.nodes().length&&this.useSingleNodeRotation()&&this.rotation(this.nodes()[0].getAbsoluteRotation()),this._resetTransformCache(),this._transforming||this.isDragging()||this.update()},n=t._attrsAffectingSize.map(t=>t+"Change."+this._getEventNamespace()).join(" ");t.on(n,e),t.on(Fn.map(t=>t+`.${this._getEventNamespace()}`).join(" "),e),t.on(`absoluteTransformChange.${this._getEventNamespace()}`,e),this._proxyDrag(t)}),this._resetTransformCache(),!!this.findOne(".top-left")&&this.update(),this}_proxyDrag(t){let e;t.on(`dragstart.${this._getEventNamespace()}`,n=>{e=t.getAbsolutePosition(),this.isDragging()||t===this.findOne(".back")||this.startDrag(n,!1)}),t.on(`dragmove.${this._getEventNamespace()}`,n=>{if(!e)return;const r=t.getAbsolutePosition(),i=r.x-e.x,a=r.y-e.y;this.nodes().forEach(e=>{if(e===t)return;if(e.isDragging())return;const r=e.getAbsolutePosition();e.setAbsolutePosition({x:r.x+i,y:r.y+a}),e.startDrag(n)}),e=null})}getNodes(){return this._nodes||[]}getActiveAnchor(){return this._movingAnchorName}detach(){this._nodes&&this._nodes.forEach(t=>{t.off("."+this._getEventNamespace())}),this._nodes=[],this._resetTransformCache()}_resetTransformCache(){this._clearCache(zn),this._clearCache("transform"),this._clearSelfAndDescendantCache("absoluteTransform")}_getNodeRect(){return this._getCache(zn,this.__getNodeRect)}__getNodeShape(t,e=this.rotation(),n){var r=t.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()}),i=t.getAbsoluteScale(n),a=t.getAbsolutePosition(n),s=r.x*i.x-t.offsetX()*i.x,o=r.y*i.y-t.offsetY()*i.y;const l=($.getAngle(t.getAbsoluteRotation())+2*Math.PI)%(2*Math.PI);return Jn({x:a.x+s*Math.cos(l)+o*Math.sin(-l),y:a.y+o*Math.cos(l)+s*Math.sin(l),width:r.width*i.x,height:r.height*i.y,rotation:l},-$.getAngle(e),{x:0,y:0})}__getNodeRect(){if(!this.getNode())return{x:-1e8,y:-1e8,width:0,height:0,rotation:0};const t=[];this.nodes().map(e=>{const n=e.getClientRect({skipTransform:!0,skipShadow:!0,skipStroke:this.ignoreStroke()});var r=[{x:n.x,y:n.y},{x:n.x+n.width,y:n.y},{x:n.x+n.width,y:n.y+n.height},{x:n.x,y:n.y+n.height}],i=e.getAbsoluteTransform();r.forEach(function(e){var n=i.point(e);t.push(n)})});const e=new et;var n,r,i,a;e.rotate(-$.getAngle(this.rotation())),t.forEach(function(t){var s=e.point(t);void 0===n&&(n=i=s.x,r=a=s.y),n=Math.min(n,s.x),r=Math.min(r,s.y),i=Math.max(i,s.x),a=Math.max(a,s.y)}),e.invert();const s=e.point({x:n,y:r});return{x:s.x,y:s.y,width:i-n,height:a-r,rotation:$.getAngle(this.rotation())}}getX(){return this._getNodeRect().x}getY(){return this._getNodeRect().y}getWidth(){return this._getNodeRect().width}getHeight(){return this._getNodeRect().height}_createElements(){this._createBack(),jn.forEach(function(t){this._createAnchor(t)}.bind(this)),this._createAnchor("rotater")}_createAnchor(t){var e=new An({stroke:"rgb(0, 161, 255)",fill:"white",strokeWidth:1,name:t+" _anchor",dragDistance:0,draggable:!0,hitStrokeWidth:Hn?10:"auto"}),n=this;e.on("mousedown touchstart",function(t){n._handleMouseDown(t)}),e.on("dragstart",t=>{e.stopDrag(),t.cancelBubble=!0}),e.on("dragend",t=>{t.cancelBubble=!0}),e.on("mouseenter",()=>{var n=$.getAngle(this.rotation()),r=function(t,e){if("rotater"===t)return"crosshair";e+=ht.degToRad(Nn[t]||0);var n=(ht.radToDeg(e)%360+360)%360;return ht._inRange(n,337.5,360)||ht._inRange(n,0,22.5)?"ns-resize":ht._inRange(n,22.5,67.5)?"nesw-resize":ht._inRange(n,67.5,112.5)?"ew-resize":ht._inRange(n,112.5,157.5)?"nwse-resize":ht._inRange(n,157.5,202.5)?"ns-resize":ht._inRange(n,202.5,247.5)?"nesw-resize":ht._inRange(n,247.5,292.5)?"ew-resize":ht._inRange(n,292.5,337.5)?"nwse-resize":(ht.error("Transformer has unknown angle for cursor detection: "+n),"pointer")}(t,n);e.getStage().content&&(e.getStage().content.style.cursor=r),this._cursorChange=!0}),e.on("mouseout",()=>{e.getStage().content&&(e.getStage().content.style.cursor=""),this._cursorChange=!1}),this.add(e)}_createBack(){var t=new Oe({name:"back",width:0,height:0,draggable:!0,sceneFunc(t){var e=this.getParent(),n=e.padding();t.beginPath(),t.rect(-n,-n,this.width()+2*n,this.height()+2*n),t.moveTo(this.width()/2,-n),e.rotateEnabled()&&t.lineTo(this.width()/2,-e.rotateAnchorOffset()*ht._sign(this.height())-n),t.fillStrokeShape(this)},hitFunc:(t,e)=>{if(this.shouldOverdrawWholeArea()){var n=this.padding();t.beginPath(),t.rect(-n,-n,e.width()+2*n,e.height()+2*n),t.fillStrokeShape(e)}}});this.add(t),this._proxyDrag(t),t.on("dragstart",t=>{t.cancelBubble=!0}),t.on("dragmove",t=>{t.cancelBubble=!0}),t.on("dragend",t=>{t.cancelBubble=!0}),this.on("dragmove",t=>{this.update()})}_handleMouseDown(t){this._movingAnchorName=t.target.name().split(" ")[0];var e=this._getNodeRect(),n=e.width,r=e.height,i=Math.sqrt(Math.pow(n,2)+Math.pow(r,2));this.sin=Math.abs(r/i),this.cos=Math.abs(n/i),"undefined"!=typeof window&&(window.addEventListener("mousemove",this._handleMouseMove),window.addEventListener("touchmove",this._handleMouseMove),window.addEventListener("mouseup",this._handleMouseUp,!0),window.addEventListener("touchend",this._handleMouseUp,!0)),this._transforming=!0;var a=t.target.getAbsolutePosition(),s=t.target.getStage().getPointerPosition();this._anchorDragOffset={x:s.x-a.x,y:s.y-a.y},this._fire("transformstart",{evt:t,target:this.getNode()}),this._nodes.forEach(e=>{e._fire("transformstart",{evt:t,target:e})})}_handleMouseMove(t){var e,n,r,i=this.findOne("."+this._movingAnchorName),a=i.getStage();a.setPointersPositions(t);const s=a.getPointerPosition();let o={x:s.x-this._anchorDragOffset.x,y:s.y-this._anchorDragOffset.y};const l=i.getAbsolutePosition();this.anchorDragBoundFunc()&&(o=this.anchorDragBoundFunc()(l,o,t)),i.setAbsolutePosition(o);const h=i.getAbsolutePosition();if(l.x!==h.x||l.y!==h.y){if("rotater"===this._movingAnchorName){var u=this._getNodeRect();e=i.x()-u.width/2,n=-i.y()+u.height/2;let r=Math.atan2(-n,e)+Math.PI/2;u.height<0&&(r-=Math.PI);const a=$.getAngle(this.rotation())+r,s=$.getAngle(this.rotationSnapTolerance()),o=function(t,e,n){let r=e;for(let i=0;i<t.length;i++){const a=$.getAngle(t[i]),s=Math.abs(a-e)%(2*Math.PI);Math.min(s,2*Math.PI-s)<n&&(r=a)}return r}(this.rotationSnaps(),a,s),l=Un(u,o-u.rotation);return void this._fitNodesInto(l,t)}var c=this.keepRatio()||t.shiftKey,d=this.centeredScaling()||t.altKey;if("top-left"===this._movingAnchorName){if(c){var f=d?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".bottom-right").x(),y:this.findOne(".bottom-right").y()};r=Math.sqrt(Math.pow(f.x-i.x(),2)+Math.pow(f.y-i.y(),2));var g=this.findOne(".top-left").x()>f.x?-1:1,A=this.findOne(".top-left").y()>f.y?-1:1;e=r*this.cos*g,n=r*this.sin*A,this.findOne(".top-left").x(f.x-e),this.findOne(".top-left").y(f.y-n)}}else if("top-center"===this._movingAnchorName)this.findOne(".top-left").y(i.y());else if("top-right"===this._movingAnchorName){if(c){f=d?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".bottom-left").x(),y:this.findOne(".bottom-left").y()};r=Math.sqrt(Math.pow(i.x()-f.x,2)+Math.pow(f.y-i.y(),2));g=this.findOne(".top-right").x()<f.x?-1:1,A=this.findOne(".top-right").y()>f.y?-1:1;e=r*this.cos*g,n=r*this.sin*A,this.findOne(".top-right").x(f.x+e),this.findOne(".top-right").y(f.y-n)}var p=i.position();this.findOne(".top-left").y(p.y),this.findOne(".bottom-right").x(p.x)}else if("middle-left"===this._movingAnchorName)this.findOne(".top-left").x(i.x());else if("middle-right"===this._movingAnchorName)this.findOne(".bottom-right").x(i.x());else if("bottom-left"===this._movingAnchorName){if(c){f=d?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".top-right").x(),y:this.findOne(".top-right").y()};r=Math.sqrt(Math.pow(f.x-i.x(),2)+Math.pow(i.y()-f.y,2));g=f.x<i.x()?-1:1,A=i.y()<f.y?-1:1;e=r*this.cos*g,n=r*this.sin*A,i.x(f.x-e),i.y(f.y+n)}p=i.position(),this.findOne(".top-left").x(p.x),this.findOne(".bottom-right").y(p.y)}else if("bottom-center"===this._movingAnchorName)this.findOne(".bottom-right").y(i.y());else if("bottom-right"===this._movingAnchorName){if(c){f=d?{x:this.width()/2,y:this.height()/2}:{x:this.findOne(".top-left").x(),y:this.findOne(".top-left").y()};r=Math.sqrt(Math.pow(i.x()-f.x,2)+Math.pow(i.y()-f.y,2));g=this.findOne(".bottom-right").x()<f.x?-1:1,A=this.findOne(".bottom-right").y()<f.y?-1:1;e=r*this.cos*g,n=r*this.sin*A,this.findOne(".bottom-right").x(f.x+e),this.findOne(".bottom-right").y(f.y+n)}}else console.error(new Error("Wrong position argument of selection resizer: "+this._movingAnchorName));if(d=this.centeredScaling()||t.altKey){var v=this.findOne(".top-left"),m=this.findOne(".bottom-right"),C=v.x(),y=v.y(),b=this.getWidth()-m.x(),w=this.getHeight()-m.y();m.move({x:-C,y:-y}),v.move({x:b,y:w})}var E=this.findOne(".top-left").getAbsolutePosition();e=E.x,n=E.y;var S=this.findOne(".bottom-right").x()-this.findOne(".top-left").x(),x=this.findOne(".bottom-right").y()-this.findOne(".top-left").y();this._fitNodesInto({x:e,y:n,width:S,height:x,rotation:$.getAngle(this.rotation())},t)}}_handleMouseUp(t){this._removeEvents(t)}getAbsoluteTransform(){return this.getTransform()}_removeEvents(t){if(this._transforming){this._transforming=!1,"undefined"!=typeof window&&(window.removeEventListener("mousemove",this._handleMouseMove),window.removeEventListener("touchmove",this._handleMouseMove),window.removeEventListener("mouseup",this._handleMouseUp,!0),window.removeEventListener("touchend",this._handleMouseUp,!0));var e=this.getNode();this._fire("transformend",{evt:t,target:e}),e&&this._nodes.forEach(e=>{e._fire("transformend",{evt:t,target:e})}),this._movingAnchorName=null}}_fitNodesInto(t,e){var n=this._getNodeRect();if(ht._inRange(t.width,2*-this.padding()-1,1))return void this.update();if(ht._inRange(t.height,2*-this.padding()-1,1))return void this.update();const r=this.flipEnabled();var i=new et;if(i.rotate($.getAngle(this.rotation())),this._movingAnchorName&&t.width<0&&this._movingAnchorName.indexOf("left")>=0){const e=i.point({x:2*-this.padding(),y:0});if(t.x+=e.x,t.y+=e.y,t.width+=2*this.padding(),this._movingAnchorName=this._movingAnchorName.replace("left","right"),this._anchorDragOffset.x-=e.x,this._anchorDragOffset.y-=e.y,!r)return void this.update()}else if(this._movingAnchorName&&t.width<0&&this._movingAnchorName.indexOf("right")>=0){const e=i.point({x:2*this.padding(),y:0});if(this._movingAnchorName=this._movingAnchorName.replace("right","left"),this._anchorDragOffset.x-=e.x,this._anchorDragOffset.y-=e.y,t.width+=2*this.padding(),!r)return void this.update()}if(this._movingAnchorName&&t.height<0&&this._movingAnchorName.indexOf("top")>=0){const e=i.point({x:0,y:2*-this.padding()});if(t.x+=e.x,t.y+=e.y,this._movingAnchorName=this._movingAnchorName.replace("top","bottom"),this._anchorDragOffset.x-=e.x,this._anchorDragOffset.y-=e.y,t.height+=2*this.padding(),!r)return void this.update()}else if(this._movingAnchorName&&t.height<0&&this._movingAnchorName.indexOf("bottom")>=0){const e=i.point({x:0,y:2*this.padding()});if(this._movingAnchorName=this._movingAnchorName.replace("bottom","top"),this._anchorDragOffset.x-=e.x,this._anchorDragOffset.y-=e.y,t.height+=2*this.padding(),!r)return void this.update()}if(this.boundBoxFunc()){const e=this.boundBoxFunc()(n,t);e?t=e:ht.warn("boundBoxFunc returned falsy. You should return new bound rect from it!")}const a=1e7,s=new et;s.translate(n.x,n.y),s.rotate(n.rotation),s.scale(n.width/a,n.height/a);const o=new et;o.translate(t.x,t.y),o.rotate(t.rotation),o.scale(t.width/a,t.height/a);const l=o.multiply(s.invert());this._nodes.forEach(t=>{var n;const r=t.getParent().getAbsoluteTransform(),i=t.getTransform().copy();i.translate(t.offsetX(),t.offsetY());const a=new et;a.multiply(r.copy().invert()).multiply(l).multiply(r).multiply(i);const s=a.decompose();t.setAttrs(s),this._fire("transform",{evt:e,target:t}),t._fire("transform",{evt:e,target:t}),null===(n=t.getLayer())||void 0===n||n.batchDraw()}),this.rotation(ht._getRotation(t.rotation)),this._resetTransformCache(),this.update(),this.getLayer().batchDraw()}forceUpdate(){this._resetTransformCache(),this.update()}_batchChangeChild(t,e){this.findOne(t).setAttrs(e)}update(){var t,e=this._getNodeRect();this.rotation(ht._getRotation(e.rotation));var n=e.width,r=e.height,i=this.enabledAnchors(),a=this.resizeEnabled(),s=this.padding(),o=this.anchorSize();this.find("._anchor").forEach(t=>{t.setAttrs({width:o,height:o,offsetX:o/2,offsetY:o/2,stroke:this.anchorStroke(),strokeWidth:this.anchorStrokeWidth(),fill:this.anchorFill(),cornerRadius:this.anchorCornerRadius()})}),this._batchChangeChild(".top-left",{x:0,y:0,offsetX:o/2+s,offsetY:o/2+s,visible:a&&i.indexOf("top-left")>=0}),this._batchChangeChild(".top-center",{x:n/2,y:0,offsetY:o/2+s,visible:a&&i.indexOf("top-center")>=0}),this._batchChangeChild(".top-right",{x:n,y:0,offsetX:o/2-s,offsetY:o/2+s,visible:a&&i.indexOf("top-right")>=0}),this._batchChangeChild(".middle-left",{x:0,y:r/2,offsetX:o/2+s,visible:a&&i.indexOf("middle-left")>=0}),this._batchChangeChild(".middle-right",{x:n,y:r/2,offsetX:o/2-s,visible:a&&i.indexOf("middle-right")>=0}),this._batchChangeChild(".bottom-left",{x:0,y:r,offsetX:o/2+s,offsetY:o/2-s,visible:a&&i.indexOf("bottom-left")>=0}),this._batchChangeChild(".bottom-center",{x:n/2,y:r,offsetY:o/2-s,visible:a&&i.indexOf("bottom-center")>=0}),this._batchChangeChild(".bottom-right",{x:n,y:r,offsetX:o/2-s,offsetY:o/2-s,visible:a&&i.indexOf("bottom-right")>=0}),this._batchChangeChild(".rotater",{x:n/2,y:-this.rotateAnchorOffset()*ht._sign(r)-s,visible:this.rotateEnabled()}),this._batchChangeChild(".back",{width:n,height:r,visible:this.borderEnabled(),stroke:this.borderStroke(),strokeWidth:this.borderStrokeWidth(),dash:this.borderDash(),x:0,y:0}),null===(t=this.getLayer())||void 0===t||t.batchDraw()}isTransforming(){return this._transforming}stopTransform(){if(this._transforming){this._removeEvents();var t=this.findOne("."+this._movingAnchorName);t&&t.stopDrag()}}destroy(){return this.getStage()&&this._cursorChange&&this.getStage().content&&(this.getStage().content.style.cursor=""),Ne.prototype.destroy.call(this),this.detach(),this._removeEvents(),this}toObject(){return Ut.prototype.toObject.call(this)}}Yn.prototype.className="Transformer",tt(Yn),yt.addGetterSetter(Yn,"enabledAnchors",jn,function(t){return t instanceof Array||ht.warn("enabledAnchors value should be an array"),t instanceof Array&&t.forEach(function(t){-1===jn.indexOf(t)&&ht.warn("Unknown anchor name: "+t+". Available names are: "+jn.join(", "))}),t||[]}),yt.addGetterSetter(Yn,"flipEnabled",!0,vt()),yt.addGetterSetter(Yn,"resizeEnabled",!0),yt.addGetterSetter(Yn,"anchorSize",10,dt()),yt.addGetterSetter(Yn,"rotateEnabled",!0),yt.addGetterSetter(Yn,"rotationSnaps",[]),yt.addGetterSetter(Yn,"rotateAnchorOffset",50,dt()),yt.addGetterSetter(Yn,"rotationSnapTolerance",5,dt()),yt.addGetterSetter(Yn,"borderEnabled",!0),yt.addGetterSetter(Yn,"anchorStroke","rgb(0, 161, 255)"),yt.addGetterSetter(Yn,"anchorStrokeWidth",1,dt()),yt.addGetterSetter(Yn,"anchorFill","white"),yt.addGetterSetter(Yn,"anchorCornerRadius",0,dt()),yt.addGetterSetter(Yn,"borderStroke","rgb(0, 161, 255)"),yt.addGetterSetter(Yn,"borderStrokeWidth",1,dt()),yt.addGetterSetter(Yn,"borderDash"),yt.addGetterSetter(Yn,"keepRatio",!0),yt.addGetterSetter(Yn,"centeredScaling",!1),yt.addGetterSetter(Yn,"ignoreStroke",!1),yt.addGetterSetter(Yn,"padding",0,dt()),yt.addGetterSetter(Yn,"node"),yt.addGetterSetter(Yn,"nodes"),yt.addGetterSetter(Yn,"boundBoxFunc"),yt.addGetterSetter(Yn,"anchorDragBoundFunc"),yt.addGetterSetter(Yn,"shouldOverdrawWholeArea",!1),yt.addGetterSetter(Yn,"useSingleNodeRotation",!0),yt.backCompat(Yn,{lineEnabled:"borderEnabled",rotateHandlerOffset:"rotateAnchorOffset",enabledHandlers:"enabledAnchors"});class Wn extends Oe{_sceneFunc(t){t.beginPath(),t.arc(0,0,this.radius(),0,$.getAngle(this.angle()),this.clockwise()),t.lineTo(0,0),t.closePath(),t.fillStrokeShape(this)}getWidth(){return 2*this.radius()}getHeight(){return 2*this.radius()}setWidth(t){this.radius(t/2)}setHeight(t){this.radius(t/2)}}function Xn(){this.r=0,this.g=0,this.b=0,this.a=0,this.next=null}Wn.prototype.className="Wedge",Wn.prototype._centroid=!0,Wn.prototype._attrsAffectingSize=["radius"],tt(Wn),yt.addGetterSetter(Wn,"radius",0,dt()),yt.addGetterSetter(Wn,"angle",0,dt()),yt.addGetterSetter(Wn,"clockwise",!1),yt.backCompat(Wn,{angleDeg:"angle",getAngleDeg:"getAngle",setAngleDeg:"setAngle"});var qn=[512,512,456,512,328,456,335,512,405,328,271,456,388,335,292,512,454,405,364,328,298,271,496,456,420,388,360,335,312,292,273,512,482,454,428,405,383,364,345,328,312,298,284,271,259,496,475,456,437,420,404,388,374,360,347,335,323,312,302,292,282,273,265,512,497,482,468,454,441,428,417,405,394,383,373,364,354,345,337,328,320,312,305,298,291,284,278,271,265,259,507,496,485,475,465,456,446,437,428,420,412,404,396,388,381,374,367,360,354,347,341,335,329,323,318,312,307,302,297,292,287,282,278,273,269,265,261,512,505,497,489,482,475,468,461,454,447,441,435,428,422,417,411,405,399,394,389,383,378,373,368,364,359,354,350,345,341,337,332,328,324,320,316,312,309,305,301,298,294,291,287,284,281,278,274,271,268,265,262,259,257,507,501,496,491,485,480,475,470,465,460,456,451,446,442,437,433,428,424,420,416,412,408,404,400,396,392,388,385,381,377,374,370,367,363,360,357,354,350,347,344,341,338,335,332,329,326,323,320,318,315,312,310,307,304,302,299,297,294,292,289,287,285,282,280,278,275,273,271,269,267,265,263,261,259],Kn=[9,11,12,13,13,14,14,15,15,15,15,16,16,16,16,17,17,17,17,17,17,17,18,18,18,18,18,18,18,18,18,19,19,19,19,19,19,19,19,19,19,19,19,19,19,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,20,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,21,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,23,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24,24];yt.addGetterSetter(Ut,"blurRadius",0,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"brightness",0,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"contrast",0,dt(),yt.afterSetFilter);function Vn(t,e,n,r,i){var a=n-e,s=i-r;return 0===a?r+s/2:0===s?r:s*((t-e)/a)+r}yt.addGetterSetter(Ut,"embossStrength",.5,dt(),yt.afterSetFilter),yt.addGetterSetter(Ut,"embossWhiteLevel",.5,dt(),yt.afterSetFilter),yt.addGetterSetter(Ut,"embossDirection","top-left",null,yt.afterSetFilter),yt.addGetterSetter(Ut,"embossBlend",!1,null,yt.afterSetFilter);yt.addGetterSetter(Ut,"enhance",0,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"hue",0,dt(),yt.afterSetFilter),yt.addGetterSetter(Ut,"saturation",0,dt(),yt.afterSetFilter),yt.addGetterSetter(Ut,"luminance",0,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"hue",0,dt(),yt.afterSetFilter),yt.addGetterSetter(Ut,"saturation",0,dt(),yt.afterSetFilter),yt.addGetterSetter(Ut,"value",0,dt(),yt.afterSetFilter);function Zn(t,e,n){var r=4*(n*t.width+e),i=[];return i.push(t.data[r++],t.data[r++],t.data[r++],t.data[r++]),i}function $n(t,e){return Math.sqrt(Math.pow(t[0]-e[0],2)+Math.pow(t[1]-e[1],2)+Math.pow(t[2]-e[2],2))}yt.addGetterSetter(Ut,"kaleidoscopePower",2,dt(),yt.afterSetFilter),yt.addGetterSetter(Ut,"kaleidoscopeAngle",0,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"threshold",0,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"noise",.2,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"pixelSize",8,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"levels",.5,dt(),yt.afterSetFilter);yt.addGetterSetter(Ut,"red",0,function(t){return this._filterUpToDate=!1,t>255?255:t<0?0:Math.round(t)}),yt.addGetterSetter(Ut,"green",0,function(t){return this._filterUpToDate=!1,t>255?255:t<0?0:Math.round(t)}),yt.addGetterSetter(Ut,"blue",0,ct,yt.afterSetFilter);yt.addGetterSetter(Ut,"red",0,function(t){return this._filterUpToDate=!1,t>255?255:t<0?0:Math.round(t)}),yt.addGetterSetter(Ut,"green",0,function(t){return this._filterUpToDate=!1,t>255?255:t<0?0:Math.round(t)}),yt.addGetterSetter(Ut,"blue",0,ct,yt.afterSetFilter),yt.addGetterSetter(Ut,"alpha",1,function(t){return this._filterUpToDate=!1,t>1?1:t<0?0:t});yt.addGetterSetter(Ut,"threshold",.5,dt(),yt.afterSetFilter),Ke.Util._assign(Ke,{Arc:Ve,Arrow:nn,Circle:rn,Ellipse:an,Image:sn,Label:fn,Tag:gn,Line:tn,Path:en,Rect:An,RegularPolygon:pn,Ring:mn,Sprite:Cn,Star:yn,Text:Tn,TextPath:On,Transformer:Yn,Wedge:Wn,Filters:{Blur:function(t){var e=Math.round(this.blurRadius());e>0&&function(t,e){var n,r,i,a,s,o,l,h,u,c,d,f,g,A,p,v,m,C,y,b,w,E,S,x,I=t.data,k=t.width,B=t.height,P=e+e+1,R=k-1,Q=B-1,T=e+1,D=T*(T+1)/2,M=new Xn,L=null,O=M,_=null,G=null,z=qn[e],F=Kn[e];for(i=1;i<P;i++)O=O.next=new Xn,i===T&&(L=O);for(O.next=M,l=o=0,r=0;r<B;r++){for(v=m=C=y=h=u=c=d=0,f=T*(b=I[o]),g=T*(w=I[o+1]),A=T*(E=I[o+2]),p=T*(S=I[o+3]),h+=D*b,u+=D*w,c+=D*E,d+=D*S,O=M,i=0;i<T;i++)O.r=b,O.g=w,O.b=E,O.a=S,O=O.next;for(i=1;i<T;i++)a=o+((R<i?R:i)<<2),h+=(O.r=b=I[a])*(x=T-i),u+=(O.g=w=I[a+1])*x,c+=(O.b=E=I[a+2])*x,d+=(O.a=S=I[a+3])*x,v+=b,m+=w,C+=E,y+=S,O=O.next;for(_=M,G=L,n=0;n<k;n++)I[o+3]=S=d*z>>F,0!==S?(S=255/S,I[o]=(h*z>>F)*S,I[o+1]=(u*z>>F)*S,I[o+2]=(c*z>>F)*S):I[o]=I[o+1]=I[o+2]=0,h-=f,u-=g,c-=A,d-=p,f-=_.r,g-=_.g,A-=_.b,p-=_.a,a=l+((a=n+e+1)<R?a:R)<<2,h+=v+=_.r=I[a],u+=m+=_.g=I[a+1],c+=C+=_.b=I[a+2],d+=y+=_.a=I[a+3],_=_.next,f+=b=G.r,g+=w=G.g,A+=E=G.b,p+=S=G.a,v-=b,m-=w,C-=E,y-=S,G=G.next,o+=4;l+=k}for(n=0;n<k;n++){for(m=C=y=v=u=c=d=h=0,f=T*(b=I[o=n<<2]),g=T*(w=I[o+1]),A=T*(E=I[o+2]),p=T*(S=I[o+3]),h+=D*b,u+=D*w,c+=D*E,d+=D*S,O=M,i=0;i<T;i++)O.r=b,O.g=w,O.b=E,O.a=S,O=O.next;for(s=k,i=1;i<=e;i++)o=s+n<<2,h+=(O.r=b=I[o])*(x=T-i),u+=(O.g=w=I[o+1])*x,c+=(O.b=E=I[o+2])*x,d+=(O.a=S=I[o+3])*x,v+=b,m+=w,C+=E,y+=S,O=O.next,i<Q&&(s+=k);for(o=n,_=M,G=L,r=0;r<B;r++)I[3+(a=o<<2)]=S=d*z>>F,S>0?(S=255/S,I[a]=(h*z>>F)*S,I[a+1]=(u*z>>F)*S,I[a+2]=(c*z>>F)*S):I[a]=I[a+1]=I[a+2]=0,h-=f,u-=g,c-=A,d-=p,f-=_.r,g-=_.g,A-=_.b,p-=_.a,a=n+((a=r+T)<Q?a:Q)*k<<2,h+=v+=_.r=I[a],u+=m+=_.g=I[a+1],c+=C+=_.b=I[a+2],d+=y+=_.a=I[a+3],_=_.next,f+=b=G.r,g+=w=G.g,A+=E=G.b,p+=S=G.a,v-=b,m-=w,C-=E,y-=S,G=G.next,o+=k}}(t,e)},Brighten:function(t){var e,n=255*this.brightness(),r=t.data,i=r.length;for(e=0;e<i;e+=4)r[e]+=n,r[e+1]+=n,r[e+2]+=n},Contrast:function(t){var e,n=Math.pow((this.contrast()+100)/100,2),r=t.data,i=r.length,a=150,s=150,o=150;for(e=0;e<i;e+=4)a=r[e],s=r[e+1],o=r[e+2],a/=255,a-=.5,a*=n,a+=.5,s/=255,s-=.5,s*=n,s+=.5,o/=255,o-=.5,o*=n,o+=.5,a=(a*=255)<0?0:a>255?255:a,s=(s*=255)<0?0:s>255?255:s,o=(o*=255)<0?0:o>255?255:o,r[e]=a,r[e+1]=s,r[e+2]=o},Emboss:function(t){var e=10*this.embossStrength(),n=255*this.embossWhiteLevel(),r=this.embossDirection(),i=this.embossBlend(),a=0,s=0,o=t.data,l=t.width,h=t.height,u=4*l,c=h;switch(r){case"top-left":a=-1,s=-1;break;case"top":a=-1,s=0;break;case"top-right":a=-1,s=1;break;case"right":a=0,s=1;break;case"bottom-right":a=1,s=1;break;case"bottom":a=1,s=0;break;case"bottom-left":a=1,s=-1;break;case"left":a=0,s=-1;break;default:ht.error("Unknown emboss direction: "+r)}do{var d=(c-1)*u,f=a;c+f<1&&(f=0),c+f>h&&(f=0);var g=(c-1+f)*l*4,A=l;do{var p=d+4*(A-1),v=s;A+v<1&&(v=0),A+v>l&&(v=0);var m=g+4*(A-1+v),C=o[p]-o[m],y=o[p+1]-o[m+1],b=o[p+2]-o[m+2],w=C,E=w>0?w:-w;if((y>0?y:-y)>E&&(w=y),(b>0?b:-b)>E&&(w=b),w*=e,i){var S=o[p]+w,x=o[p+1]+w,I=o[p+2]+w;o[p]=S>255?255:S<0?0:S,o[p+1]=x>255?255:x<0?0:x,o[p+2]=I>255?255:I<0?0:I}else{var k=n-w;k<0?k=0:k>255&&(k=255),o[p]=o[p+1]=o[p+2]=k}}while(--A)}while(--c)},Enhance:function(t){var e,n,r,i,a=t.data,s=a.length,o=a[0],l=o,h=a[1],u=h,c=a[2],d=c,f=this.enhance();if(0!==f){for(i=0;i<s;i+=4)(e=a[i+0])<o?o=e:e>l&&(l=e),(n=a[i+1])<h?h=n:n>u&&(u=n),(r=a[i+2])<c?c=r:r>d&&(d=r);var g,A,p,v,m,C,y,b,w;for(l===o&&(l=255,o=0),u===h&&(u=255,h=0),d===c&&(d=255,c=0),f>0?(A=l+f*(255-l),p=o-f*(o-0),m=u+f*(255-u),C=h-f*(h-0),b=d+f*(255-d),w=c-f*(c-0)):(A=l+f*(l-(g=.5*(l+o))),p=o+f*(o-g),m=u+f*(u-(v=.5*(u+h))),C=h+f*(h-v),b=d+f*(d-(y=.5*(d+c))),w=c+f*(c-y)),i=0;i<s;i+=4)a[i+0]=Vn(a[i+0],o,l,p,A),a[i+1]=Vn(a[i+1],h,u,C,m),a[i+2]=Vn(a[i+2],c,d,w,b)}},Grayscale:function(t){var e,n,r=t.data,i=r.length;for(e=0;e<i;e+=4)n=.34*r[e]+.5*r[e+1]+.16*r[e+2],r[e]=n,r[e+1]=n,r[e+2]=n},HSL:function(t){var e,n,r,i,a,s=t.data,o=s.length,l=Math.pow(2,this.saturation()),h=Math.abs(this.hue()+360)%360,u=127*this.luminance(),c=1*l*Math.cos(h*Math.PI/180),d=1*l*Math.sin(h*Math.PI/180),f=.299+.701*c+.167*d,g=.587-.587*c+.33*d,A=.114-.114*c-.497*d,p=.299-.299*c-.328*d,v=.587+.413*c+.035*d,m=.114-.114*c+.293*d,C=.299-.3*c+1.25*d,y=.587-.586*c-1.05*d,b=.114+.886*c-.2*d;for(e=0;e<o;e+=4)n=s[e+0],r=s[e+1],i=s[e+2],a=s[e+3],s[e+0]=f*n+g*r+A*i+u,s[e+1]=p*n+v*r+m*i+u,s[e+2]=C*n+y*r+b*i+u,s[e+3]=a},HSV:function(t){var e,n,r,i,a,s=t.data,o=s.length,l=Math.pow(2,this.value()),h=Math.pow(2,this.saturation()),u=Math.abs(this.hue()+360)%360,c=l*h*Math.cos(u*Math.PI/180),d=l*h*Math.sin(u*Math.PI/180),f=.299*l+.701*c+.167*d,g=.587*l-.587*c+.33*d,A=.114*l-.114*c-.497*d,p=.299*l-.299*c-.328*d,v=.587*l+.413*c+.035*d,m=.114*l-.114*c+.293*d,C=.299*l-.3*c+1.25*d,y=.587*l-.586*c-1.05*d,b=.114*l+.886*c-.2*d;for(e=0;e<o;e+=4)n=s[e+0],r=s[e+1],i=s[e+2],a=s[e+3],s[e+0]=f*n+g*r+A*i,s[e+1]=p*n+v*r+m*i,s[e+2]=C*n+y*r+b*i,s[e+3]=a},Invert:function(t){var e,n=t.data,r=n.length;for(e=0;e<r;e+=4)n[e]=255-n[e],n[e+1]=255-n[e+1],n[e+2]=255-n[e+2]},Kaleidoscope:function(t){var e,n,r,i,a,s,o,l,h,u=t.width,c=t.height,d=Math.round(this.kaleidoscopePower()),f=Math.round(this.kaleidoscopeAngle()),g=Math.floor(u*(f%360)/360);if(!(d<1)){var A=ht.createCanvasElement();A.width=u,A.height=c;var p=A.getContext("2d").getImageData(0,0,u,c);!function(t,e,n){var r,i,a,s,o=t.data,l=e.data,h=t.width,u=t.height,c=n.polarCenterX||h/2,d=n.polarCenterY||u/2,f=0,g=0,A=0,p=0,v=Math.sqrt(c*c+d*d);i=h-c,a=u-d,v=(s=Math.sqrt(i*i+a*a))>v?s:v;var m,C,y,b,w=u,E=h,S=360/E*Math.PI/180;for(C=0;C<E;C+=1)for(y=Math.sin(C*S),b=Math.cos(C*S),m=0;m<w;m+=1)i=Math.floor(c+v*m/w*b),f=o[0+(r=4*((a=Math.floor(d+v*m/w*y))*h+i))],g=o[r+1],A=o[r+2],p=o[r+3],l[0+(r=4*(C+m*h))]=f,l[r+1]=g,l[r+2]=A,l[r+3]=p}(t,p,{polarCenterX:u/2,polarCenterY:c/2});for(var v=u/Math.pow(2,d);v<=8;)v*=2,d-=1;var m=v=Math.ceil(v),C=0,y=m,b=1;for(g+v>u&&(C=m,y=0,b=-1),n=0;n<c;n+=1)for(e=C;e!==y;e+=b)l=4*(u*n+Math.round(e+g)%u),i=p.data[l+0],a=p.data[l+1],s=p.data[l+2],o=p.data[l+3],h=4*(u*n+e),p.data[h+0]=i,p.data[h+1]=a,p.data[h+2]=s,p.data[h+3]=o;for(n=0;n<c;n+=1)for(m=Math.floor(v),r=0;r<d;r+=1){for(e=0;e<m+1;e+=1)l=4*(u*n+e),i=p.data[l+0],a=p.data[l+1],s=p.data[l+2],o=p.data[l+3],h=4*(u*n+2*m-e-1),p.data[h+0]=i,p.data[h+1]=a,p.data[h+2]=s,p.data[h+3]=o;m*=2}!function(t,e,n){var r,i,a,s,o,l,h=t.data,u=e.data,c=t.width,d=t.height,f=n.polarCenterX||c/2,g=n.polarCenterY||d/2,A=0,p=0,v=0,m=0,C=Math.sqrt(f*f+g*g);i=c-f,a=d-g,C=(l=Math.sqrt(i*i+a*a))>C?l:C;var y,b,w,E=d,S=c,x=n.polarRotation||0;for(i=0;i<c;i+=1)for(a=0;a<d;a+=1)s=i-f,o=a-g,y=Math.sqrt(s*s+o*o)*E/C,b=(b=(180*Math.atan2(o,s)/Math.PI+360+x)%360)*S/360,w=Math.floor(b),A=h[0+(r=4*(Math.floor(y)*c+w))],p=h[r+1],v=h[r+2],m=h[r+3],u[0+(r=4*(a*c+i))]=A,u[r+1]=p,u[r+2]=v,u[r+3]=m}(p,t,{polarRotation:0})}},Mask:function(t){var e=function(t,e){var n=Zn(t,0,0),r=Zn(t,t.width-1,0),i=Zn(t,0,t.height-1),a=Zn(t,t.width-1,t.height-1),s=e||10;if($n(n,r)<s&&$n(r,a)<s&&$n(a,i)<s&&$n(i,n)<s){for(var o=function(t){for(var e=[0,0,0],n=0;n<t.length;n++)e[0]+=t[n][0],e[1]+=t[n][1],e[2]+=t[n][2];return e[0]/=t.length,e[1]/=t.length,e[2]/=t.length,e}([r,n,a,i]),l=[],h=0;h<t.width*t.height;h++){var u=$n(o,[t.data[4*h],t.data[4*h+1],t.data[4*h+2]]);l[h]=u<s?0:255}return l}}(t,this.threshold());return e&&(e=function(t,e,n){for(var r=[1,1,1,1,0,1,1,1,1],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),s=[],o=0;o<n;o++)for(var l=0;l<e;l++){for(var h=o*e+l,u=0,c=0;c<i;c++)for(var d=0;d<i;d++){var f=o+c-a,g=l+d-a;if(f>=0&&f<n&&g>=0&&g<e){var A=r[c*i+d];u+=t[f*e+g]*A}}s[h]=2040===u?255:0}return s}(e,t.width,t.height),e=function(t,e,n){for(var r=[1,1,1,1,1,1,1,1,1],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),s=[],o=0;o<n;o++)for(var l=0;l<e;l++){for(var h=o*e+l,u=0,c=0;c<i;c++)for(var d=0;d<i;d++){var f=o+c-a,g=l+d-a;if(f>=0&&f<n&&g>=0&&g<e){var A=r[c*i+d];u+=t[f*e+g]*A}}s[h]=u>=1020?255:0}return s}(e,t.width,t.height),e=function(t,e,n){for(var r=[1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9,1/9],i=Math.round(Math.sqrt(r.length)),a=Math.floor(i/2),s=[],o=0;o<n;o++)for(var l=0;l<e;l++){for(var h=o*e+l,u=0,c=0;c<i;c++)for(var d=0;d<i;d++){var f=o+c-a,g=l+d-a;if(f>=0&&f<n&&g>=0&&g<e){var A=r[c*i+d];u+=t[f*e+g]*A}}s[h]=u}return s}(e,t.width,t.height),function(t,e){for(var n=0;n<t.width*t.height;n++)t.data[4*n+3]=e[n]}(t,e)),t},Noise:function(t){var e,n=255*this.noise(),r=t.data,i=r.length,a=n/2;for(e=0;e<i;e+=4)r[e+0]+=a-2*a*Math.random(),r[e+1]+=a-2*a*Math.random(),r[e+2]+=a-2*a*Math.random()},Pixelate:function(t){var e,n,r,i,a,s,o,l,h,u,c,d,f,g,A=Math.ceil(this.pixelSize()),p=t.width,v=t.height,m=Math.ceil(p/A),C=Math.ceil(v/A),y=t.data;if(A<=0)ht.error("pixelSize value can not be <= 0");else for(d=0;d<m;d+=1)for(f=0;f<C;f+=1){for(i=0,a=0,s=0,o=0,h=(l=d*A)+A,c=(u=f*A)+A,g=0,e=l;e<h;e+=1)if(!(e>=p))for(n=u;n<c;n+=1)n>=v||(i+=y[(r=4*(p*n+e))+0],a+=y[r+1],s+=y[r+2],o+=y[r+3],g+=1);for(i/=g,a/=g,s/=g,o/=g,e=l;e<h;e+=1)if(!(e>=p))for(n=u;n<c;n+=1)n>=v||(y[(r=4*(p*n+e))+0]=i,y[r+1]=a,y[r+2]=s,y[r+3]=o)}},Posterize:function(t){var e,n=Math.round(254*this.levels())+1,r=t.data,i=r.length,a=255/n;for(e=0;e<i;e+=1)r[e]=Math.floor(r[e]/a)*a},RGB:function(t){var e,n,r=t.data,i=r.length,a=this.red(),s=this.green(),o=this.blue();for(e=0;e<i;e+=4)n=(.34*r[e]+.5*r[e+1]+.16*r[e+2])/255,r[e]=n*a,r[e+1]=n*s,r[e+2]=n*o,r[e+3]=r[e+3]},RGBA:function(t){var e,n,r=t.data,i=r.length,a=this.red(),s=this.green(),o=this.blue(),l=this.alpha();for(e=0;e<i;e+=4)n=1-l,r[e]=a*l+r[e]*n,r[e+1]=s*l+r[e+1]*n,r[e+2]=o*l+r[e+2]*n},Sepia:function(t){var e,n,r,i,a=t.data,s=a.length;for(e=0;e<s;e+=4)n=a[e+0],r=a[e+1],i=a[e+2],a[e+0]=Math.min(255,.393*n+.769*r+.189*i),a[e+1]=Math.min(255,.349*n+.686*r+.168*i),a[e+2]=Math.min(255,.272*n+.534*r+.131*i)},Solarize:function(t){var e=t.data,n=t.width,r=4*n,i=t.height;do{var a=(i-1)*r,s=n;do{var o=a+4*(s-1),l=e[o],h=e[o+1],u=e[o+2];l>127&&(l=255-l),h>127&&(h=255-h),u>127&&(u=255-u),e[o]=l,e[o+1]=h,e[o+2]=u}while(--s)}while(--i)},Threshold:function(t){var e,n=255*this.threshold(),r=t.data,i=r.length;for(e=0;e<i;e+=1)r[e]=r[e]<n?0:255}}});var tr={exports:{}},er={exports:{}},nr={};!function(t){function e(t,e){var n=t.length;t.push(e);t:for(;0<n;){var r=n-1>>>1,a=t[r];if(!(0<i(a,e)))break t;t[r]=e,t[n]=a,n=r}}function n(t){return 0===t.length?null:t[0]}function r(t){if(0===t.length)return null;var e=t[0],n=t.pop();if(n!==e){t[0]=n;t:for(var r=0,a=t.length,s=a>>>1;r<s;){var o=2*(r+1)-1,l=t[o],h=o+1,u=t[h];if(0>i(l,n))h<a&&0>i(u,l)?(t[r]=u,t[h]=n,r=h):(t[r]=l,t[o]=n,r=o);else{if(!(h<a&&0>i(u,n)))break t;t[r]=u,t[h]=n,r=h}}}return e}function i(t,e){var n=t.sortIndex-e.sortIndex;return 0!==n?n:t.id-e.id}if("object"==typeof performance&&"function"==typeof performance.now){var a=performance;t.unstable_now=function(){return a.now()}}else{var s=Date,o=s.now();t.unstable_now=function(){return s.now()-o}}var l=[],h=[],u=1,c=null,d=3,f=!1,g=!1,A=!1,p="function"==typeof setTimeout?setTimeout:null,v="function"==typeof clearTimeout?clearTimeout:null,m="undefined"!=typeof setImmediate?setImmediate:null;function C(t){for(var i=n(h);null!==i;){if(null===i.callback)r(h);else{if(!(i.startTime<=t))break;r(h),i.sortIndex=i.expirationTime,e(l,i)}i=n(h)}}function y(t){if(A=!1,C(t),!g)if(null!==n(l))g=!0,T(b);else{var e=n(h);null!==e&&D(y,e.startTime-t)}}function b(e,i){g=!1,A&&(A=!1,v(x),x=-1),f=!0;var a=d;try{for(C(i),c=n(l);null!==c&&(!(c.expirationTime>i)||e&&!B());){var s=c.callback;if("function"==typeof s){c.callback=null,d=c.priorityLevel;var o=s(c.expirationTime<=i);i=t.unstable_now(),"function"==typeof o?c.callback=o:c===n(l)&&r(l),C(i)}else r(l);c=n(l)}if(null!==c)var u=!0;else{var p=n(h);null!==p&&D(y,p.startTime-i),u=!1}return u}finally{c=null,d=a,f=!1}}"undefined"!=typeof navigator&&void 0!==navigator.scheduling&&void 0!==navigator.scheduling.isInputPending&&navigator.scheduling.isInputPending.bind(navigator.scheduling);var w,E=!1,S=null,x=-1,I=5,k=-1;function B(){return!(t.unstable_now()-k<I)}function P(){if(null!==S){var e=t.unstable_now();k=e;var n=!0;try{n=S(!0,e)}finally{n?w():(E=!1,S=null)}}else E=!1}if("function"==typeof m)w=function(){m(P)};else if("undefined"!=typeof MessageChannel){var R=new MessageChannel,Q=R.port2;R.port1.onmessage=P,w=function(){Q.postMessage(null)}}else w=function(){p(P,0)};function T(t){S=t,E||(E=!0,w())}function D(e,n){x=p(function(){e(t.unstable_now())},n)}t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(t){t.callback=null},t.unstable_continueExecution=function(){g||f||(g=!0,T(b))},t.unstable_forceFrameRate=function(t){0>t||125<t?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):I=0<t?Math.floor(1e3/t):5},t.unstable_getCurrentPriorityLevel=function(){return d},t.unstable_getFirstCallbackNode=function(){return n(l)},t.unstable_next=function(t){switch(d){case 1:case 2:case 3:var e=3;break;default:e=d}var n=d;d=e;try{return t()}finally{d=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=function(){},t.unstable_runWithPriority=function(t,e){switch(t){case 1:case 2:case 3:case 4:case 5:break;default:t=3}var n=d;d=t;try{return e()}finally{d=n}},t.unstable_scheduleCallback=function(r,i,a){var s=t.unstable_now();switch("object"==typeof a&&null!==a?a="number"==typeof(a=a.delay)&&0<a?s+a:s:a=s,r){case 1:var o=-1;break;case 2:o=250;break;case 5:o=1073741823;break;case 4:o=1e4;break;default:o=5e3}return r={id:u++,callback:i,priorityLevel:r,startTime:a,expirationTime:o=a+o,sortIndex:-1},a>s?(r.sortIndex=a,e(h,r),null===n(l)&&r===n(h)&&(A?(v(x),x=-1):A=!0,D(y,a-s))):(r.sortIndex=o,e(l,r),g||f||(g=!0,T(b))),r},t.unstable_shouldYield=B,t.unstable_wrapCallback=function(t){var e=d;return function(){var n=d;d=e;try{return t.apply(this,arguments)}finally{d=n}}}}(nr),er.exports=nr;const rr=n;tr.exports=function(t){var e={},n=rr,r=er.exports,i=Object.assign;function a(t){for(var e="https://reactjs.org/docs/error-decoder.html?invariant="+t,n=1;n<arguments.length;n++)e+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+t+"; visit "+e+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var s=n.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,o=Symbol.for("react.element"),l=Symbol.for("react.portal"),h=Symbol.for("react.fragment"),u=Symbol.for("react.strict_mode"),c=Symbol.for("react.profiler"),d=Symbol.for("react.provider"),f=Symbol.for("react.context"),g=Symbol.for("react.forward_ref"),A=Symbol.for("react.suspense"),p=Symbol.for("react.suspense_list"),v=Symbol.for("react.memo"),m=Symbol.for("react.lazy"),C=Symbol.for("react.offscreen"),y=Symbol.iterator;function b(t){return null===t||"object"!=typeof t?null:"function"==typeof(t=y&&t[y]||t["@@iterator"])?t:null}function w(t){if(null==t)return null;if("function"==typeof t)return t.displayName||t.name||null;if("string"==typeof t)return t;switch(t){case h:return"Fragment";case l:return"Portal";case c:return"Profiler";case u:return"StrictMode";case A:return"Suspense";case p:return"SuspenseList"}if("object"==typeof t)switch(t.$$typeof){case f:return(t.displayName||"Context")+".Consumer";case d:return(t._context.displayName||"Context")+".Provider";case g:var e=t.render;return(t=t.displayName)||(t=""!==(t=e.displayName||e.name||"")?"ForwardRef("+t+")":"ForwardRef"),t;case v:return null!==(e=t.displayName||null)?e:w(t.type)||"Memo";case m:e=t._payload,t=t._init;try{return w(t(e))}catch(t){}}return null}function E(t){var e=t.type;switch(t.tag){case 24:return"Cache";case 9:return(e.displayName||"Context")+".Consumer";case 10:return(e._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return t=(t=e.render).displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case 7:return"Fragment";case 5:return e;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return w(e);case 8:return e===u?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e}return null}function S(t){var e=t,n=t;if(t.alternate)for(;e.return;)e=e.return;else{t=e;do{!!(4098&(e=t).flags)&&(n=e.return),t=e.return}while(t)}return 3===e.tag?n:null}function x(t){if(S(t)!==t)throw Error(a(188))}function I(t){var e=t.alternate;if(!e){if(null===(e=S(t)))throw Error(a(188));return e!==t?null:t}for(var n=t,r=e;;){var i=n.return;if(null===i)break;var s=i.alternate;if(null===s){if(null!==(r=i.return)){n=r;continue}break}if(i.child===s.child){for(s=i.child;s;){if(s===n)return x(i),t;if(s===r)return x(i),e;s=s.sibling}throw Error(a(188))}if(n.return!==r.return)n=i,r=s;else{for(var o=!1,l=i.child;l;){if(l===n){o=!0,n=i,r=s;break}if(l===r){o=!0,r=i,n=s;break}l=l.sibling}if(!o){for(l=s.child;l;){if(l===n){o=!0,n=s,r=i;break}if(l===r){o=!0,r=s,n=i;break}l=l.sibling}if(!o)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(3!==n.tag)throw Error(a(188));return n.stateNode.current===n?t:e}function k(t){return null!==(t=I(t))?B(t):null}function B(t){if(5===t.tag||6===t.tag)return t;for(t=t.child;null!==t;){var e=B(t);if(null!==e)return e;t=t.sibling}return null}function P(t){if(5===t.tag||6===t.tag)return t;for(t=t.child;null!==t;){if(4!==t.tag){var e=P(t);if(null!==e)return e}t=t.sibling}return null}var R,Q=Array.isArray,T=t.getPublicInstance,D=t.getRootHostContext,M=t.getChildHostContext,L=t.prepareForCommit,O=t.resetAfterCommit,_=t.createInstance,G=t.appendInitialChild,z=t.finalizeInitialChildren,F=t.prepareUpdate,N=t.shouldSetTextContent,H=t.createTextInstance,j=t.scheduleTimeout,J=t.cancelTimeout,U=t.noTimeout,Y=t.isPrimaryRenderer,W=t.supportsMutation,X=t.supportsPersistence,q=t.supportsHydration,K=t.getInstanceFromNode,V=t.preparePortalMount,Z=t.getCurrentEventPriority,$=t.detachDeletedInstance,tt=t.supportsMicrotasks,et=t.scheduleMicrotask,nt=t.supportsTestSelectors,rt=t.findFiberRoot,it=t.getBoundingRect,at=t.getTextContent,st=t.isHiddenSubtree,ot=t.matchAccessibilityRole,lt=t.setFocusIfFocusable,ht=t.setupIntersectionObserver,ut=t.appendChild,ct=t.appendChildToContainer,dt=t.commitTextUpdate,ft=t.commitMount,gt=t.commitUpdate,At=t.insertBefore,pt=t.insertInContainerBefore,vt=t.removeChild,mt=t.removeChildFromContainer,Ct=t.resetTextContent,yt=t.hideInstance,bt=t.hideTextInstance,wt=t.unhideInstance,Et=t.unhideTextInstance,St=t.clearContainer,xt=t.cloneInstance,It=t.createContainerChildSet,kt=t.appendChildToContainerChildSet,Bt=t.finalizeContainerChildren,Pt=t.replaceContainerChildren,Rt=t.cloneHiddenInstance,Qt=t.cloneHiddenTextInstance,Tt=t.canHydrateInstance,Dt=t.canHydrateTextInstance,Mt=t.canHydrateSuspenseInstance,Lt=t.isSuspenseInstancePending,Ot=t.isSuspenseInstanceFallback,_t=t.getSuspenseInstanceFallbackErrorDetails,Gt=t.registerSuspenseInstanceRetry,zt=t.getNextHydratableSibling,Ft=t.getFirstHydratableChild,Nt=t.getFirstHydratableChildWithinContainer,Ht=t.getFirstHydratableChildWithinSuspenseInstance,jt=t.hydrateInstance,Jt=t.hydrateTextInstance,Ut=t.hydrateSuspenseInstance,Yt=t.getNextHydratableInstanceAfterSuspenseInstance,Wt=t.commitHydratedContainer,Xt=t.commitHydratedSuspenseInstance,qt=t.clearSuspenseBoundary,Kt=t.clearSuspenseBoundaryFromContainer,Vt=t.shouldDeleteUnhydratedTailInstances,Zt=t.didNotMatchHydratedContainerTextInstance,$t=t.didNotMatchHydratedTextInstance;function te(t){if(void 0===R)try{throw Error()}catch(t){var e=t.stack.trim().match(/\n( *(at )?)/);R=e&&e[1]||""}return"\n"+R+t}var ee=!1;function ne(t,e){if(!t||ee)return"";ee=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(e)if(e=function(){throw Error()},Object.defineProperty(e.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(e,[])}catch(t){var r=t}Reflect.construct(t,[],e)}else{try{e.call()}catch(t){r=t}t.call(e.prototype)}else{try{throw Error()}catch(t){r=t}t()}}catch(e){if(e&&r&&"string"==typeof e.stack){for(var i=e.stack.split("\n"),a=r.stack.split("\n"),s=i.length-1,o=a.length-1;1<=s&&0<=o&&i[s]!==a[o];)o--;for(;1<=s&&0<=o;s--,o--)if(i[s]!==a[o]){if(1!==s||1!==o)do{if(s--,0>--o||i[s]!==a[o]){var l="\n"+i[s].replace(" at new "," at ");return t.displayName&&l.includes("<anonymous>")&&(l=l.replace("<anonymous>",t.displayName)),l}}while(1<=s&&0<=o);break}}}finally{ee=!1,Error.prepareStackTrace=n}return(t=t?t.displayName||t.name:"")?te(t):""}var re=Object.prototype.hasOwnProperty,ie=[],ae=-1;function se(t){return{current:t}}function oe(t){0>ae||(t.current=ie[ae],ie[ae]=null,ae--)}function le(t,e){ae++,ie[ae]=t.current,t.current=e}var he={},ue=se(he),ce=se(!1),de=he;function fe(t,e){var n=t.type.contextTypes;if(!n)return he;var r=t.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===e)return r.__reactInternalMemoizedMaskedChildContext;var i,a={};for(i in n)a[i]=e[i];return r&&((t=t.stateNode).__reactInternalMemoizedUnmaskedChildContext=e,t.__reactInternalMemoizedMaskedChildContext=a),a}function ge(t){return null!=t.childContextTypes}function Ae(){oe(ce),oe(ue)}function pe(t,e,n){if(ue.current!==he)throw Error(a(168));le(ue,e),le(ce,n)}function ve(t,e,n){var r=t.stateNode;if(e=e.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var s in r=r.getChildContext())if(!(s in e))throw Error(a(108,E(t)||"Unknown",s));return i({},n,r)}function me(t){return t=(t=t.stateNode)&&t.__reactInternalMemoizedMergedChildContext||he,de=ue.current,le(ue,t),le(ce,ce.current),!0}function Ce(t,e,n){var r=t.stateNode;if(!r)throw Error(a(169));n?(t=ve(t,e,de),r.__reactInternalMemoizedMergedChildContext=t,oe(ce),oe(ue),le(ue,t)):oe(ce),le(ce,n)}var ye=Math.clz32?Math.clz32:function(t){return 0==(t>>>=0)?32:31-(be(t)/we|0)|0},be=Math.log,we=Math.LN2,Ee=64,Se=4194304;function xe(t){switch(t&-t){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&t;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&t;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return t}}function Ie(t,e){var n=t.pendingLanes;if(0===n)return 0;var r=0,i=t.suspendedLanes,a=t.pingedLanes,s=268435455&n;if(0!==s){var o=s&~i;0!==o?r=xe(o):0!==(a&=s)&&(r=xe(a))}else 0!==(s=n&~i)?r=xe(s):0!==a&&(r=xe(a));if(0===r)return 0;if(0!==e&&e!==r&&0===(e&i)&&((i=r&-r)>=(a=e&-e)||16===i&&4194240&a))return e;if(4&r&&(r|=16&n),0!==(e=t.entangledLanes))for(t=t.entanglements,e&=r;0<e;)i=1<<(n=31-ye(e)),r|=t[n],e&=~i;return r}function ke(t,e){switch(t){case 1:case 2:case 4:return e+250;case 8:case 16:case 32:case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e+5e3;default:return-1}}function Be(t){return 0!=(t=-1073741825&t.pendingLanes)?t:1073741824&t?1073741824:0}function Pe(){var t=Ee;return!(4194240&(Ee<<=1))&&(Ee=64),t}function Re(t){for(var e=[],n=0;31>n;n++)e.push(t);return e}function Qe(t,e,n){t.pendingLanes|=e,536870912!==e&&(t.suspendedLanes=0,t.pingedLanes=0),(t=t.eventTimes)[e=31-ye(e)]=n}function Te(t,e){var n=t.entangledLanes|=e;for(t=t.entanglements;n;){var r=31-ye(n),i=1<<r;i&e|t[r]&e&&(t[r]|=e),n&=~i}}var De=0;function Me(t){return 1<(t&=-t)?4<t?268435455&t?16:536870912:4:1}var Le=r.unstable_scheduleCallback,Oe=r.unstable_cancelCallback,_e=r.unstable_shouldYield,Ge=r.unstable_requestPaint,ze=r.unstable_now,Fe=r.unstable_ImmediatePriority,Ne=r.unstable_UserBlockingPriority,He=r.unstable_NormalPriority,je=r.unstable_IdlePriority,Je=null,Ue=null,Ye="function"==typeof Object.is?Object.is:function(t,e){return t===e&&(0!==t||1/t==1/e)||t!=t&&e!=e},We=null,Xe=!1,qe=!1;function Ke(t){null===We?We=[t]:We.push(t)}function Ve(){if(!qe&&null!==We){qe=!0;var t=0,e=De;try{var n=We;for(De=1;t<n.length;t++){var r=n[t];do{r=r(!0)}while(null!==r)}We=null,Xe=!1}catch(e){throw null!==We&&(We=We.slice(t+1)),Le(Fe,Ve),e}finally{De=e,qe=!1}}return null}var Ze=[],$e=0,tn=null,en=0,nn=[],rn=0,an=null,sn=1,on="";function ln(t,e){Ze[$e++]=en,Ze[$e++]=tn,tn=t,en=e}function hn(t,e,n){nn[rn++]=sn,nn[rn++]=on,nn[rn++]=an,an=t;var r=sn;t=on;var i=32-ye(r)-1;r&=~(1<<i),n+=1;var a=32-ye(e)+i;if(30<a){var s=i-i%5;a=(r&(1<<s)-1).toString(32),r>>=s,i-=s,sn=1<<32-ye(e)+i|n<<i|r,on=a+t}else sn=1<<a|n<<i|r,on=t}function un(t){null!==t.return&&(ln(t,1),hn(t,1,0))}function cn(t){for(;t===tn;)tn=Ze[--$e],Ze[$e]=null,en=Ze[--$e],Ze[$e]=null;for(;t===an;)an=nn[--rn],nn[rn]=null,on=nn[--rn],nn[rn]=null,sn=nn[--rn],nn[rn]=null}var dn=null,fn=null,gn=!1,An=!1,pn=null;function vn(t,e){var n=so(5,null,null,0);n.elementType="DELETED",n.stateNode=e,n.return=t,null===(e=t.deletions)?(t.deletions=[n],t.flags|=16):e.push(n)}function mn(t,e){switch(t.tag){case 5:return null!==(e=Tt(e,t.type,t.pendingProps))&&(t.stateNode=e,dn=t,fn=Ft(e),!0);case 6:return null!==(e=Dt(e,t.pendingProps))&&(t.stateNode=e,dn=t,fn=null,!0);case 13:if(null!==(e=Mt(e))){var n=null!==an?{id:sn,overflow:on}:null;return t.memoizedState={dehydrated:e,treeContext:n,retryLane:1073741824},(n=so(18,null,null,0)).stateNode=e,n.return=t,t.child=n,dn=t,fn=null,!0}return!1;default:return!1}}function Cn(t){return!(!(1&t.mode)||128&t.flags)}function yn(t){if(gn){var e=fn;if(e){var n=e;if(!mn(t,e)){if(Cn(t))throw Error(a(418));e=zt(n);var r=dn;e&&mn(t,e)?vn(r,n):(t.flags=-4097&t.flags|2,gn=!1,dn=t)}}else{if(Cn(t))throw Error(a(418));t.flags=-4097&t.flags|2,gn=!1,dn=t}}}function bn(t){for(t=t.return;null!==t&&5!==t.tag&&3!==t.tag&&13!==t.tag;)t=t.return;dn=t}function wn(t){if(!q||t!==dn)return!1;if(!gn)return bn(t),gn=!0,!1;if(3!==t.tag&&(5!==t.tag||Vt(t.type)&&!N(t.type,t.memoizedProps))){var e=fn;if(e){if(Cn(t))throw En(),Error(a(418));for(;e;)vn(t,e),e=zt(e)}}if(bn(t),13===t.tag){if(!q)throw Error(a(316));if(!(t=null!==(t=t.memoizedState)?t.dehydrated:null))throw Error(a(317));fn=Yt(t)}else fn=dn?zt(t.stateNode):null;return!0}function En(){for(var t=fn;t;)t=zt(t)}function Sn(){q&&(fn=dn=null,An=gn=!1)}function xn(t){null===pn?pn=[t]:pn.push(t)}var In=s.ReactCurrentBatchConfig;function kn(t,e){if(Ye(t,e))return!0;if("object"!=typeof t||null===t||"object"!=typeof e||null===e)return!1;var n=Object.keys(t),r=Object.keys(e);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!re.call(e,i)||!Ye(t[i],e[i]))return!1}return!0}function Bn(t){switch(t.tag){case 5:return te(t.type);case 16:return te("Lazy");case 13:return te("Suspense");case 19:return te("SuspenseList");case 0:case 2:case 15:return ne(t.type,!1);case 11:return ne(t.type.render,!1);case 1:return ne(t.type,!0);default:return""}}function Pn(t,e,n){if(null!==(t=n.ref)&&"function"!=typeof t&&"object"!=typeof t){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(a(309));var r=n.stateNode}if(!r)throw Error(a(147,t));var i=r,s=""+t;return null!==e&&null!==e.ref&&"function"==typeof e.ref&&e.ref._stringRef===s?e.ref:(e=function(t){var e=i.refs;null===t?delete e[s]:e[s]=t},e._stringRef=s,e)}if("string"!=typeof t)throw Error(a(284));if(!n._owner)throw Error(a(290,t))}return t}function Rn(t,e){throw t=Object.prototype.toString.call(e),Error(a(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t))}function Qn(t){return(0,t._init)(t._payload)}function Tn(t){function e(e,n){if(t){var r=e.deletions;null===r?(e.deletions=[n],e.flags|=16):r.push(n)}}function n(n,r){if(!t)return null;for(;null!==r;)e(n,r),r=r.sibling;return null}function r(t,e){for(t=new Map;null!==e;)null!==e.key?t.set(e.key,e):t.set(e.index,e),e=e.sibling;return t}function i(t,e){return(t=lo(t,e)).index=0,t.sibling=null,t}function s(e,n,r){return e.index=r,t?null!==(r=e.alternate)?(r=r.index)<n?(e.flags|=2,n):r:(e.flags|=2,n):(e.flags|=1048576,n)}function u(e){return t&&null===e.alternate&&(e.flags|=2),e}function c(t,e,n,r){return null===e||6!==e.tag?((e=fo(n,t.mode,r)).return=t,e):((e=i(e,n)).return=t,e)}function d(t,e,n,r){var a=n.type;return a===h?g(t,e,n.props.children,r,n.key):null!==e&&(e.elementType===a||"object"==typeof a&&null!==a&&a.$$typeof===m&&Qn(a)===e.type)?((r=i(e,n.props)).ref=Pn(t,e,n),r.return=t,r):((r=ho(n.type,n.key,n.props,null,t.mode,r)).ref=Pn(t,e,n),r.return=t,r)}function f(t,e,n,r){return null===e||4!==e.tag||e.stateNode.containerInfo!==n.containerInfo||e.stateNode.implementation!==n.implementation?((e=go(n,t.mode,r)).return=t,e):((e=i(e,n.children||[])).return=t,e)}function g(t,e,n,r,a){return null===e||7!==e.tag?((e=uo(n,t.mode,r,a)).return=t,e):((e=i(e,n)).return=t,e)}function A(t,e,n){if("string"==typeof e&&""!==e||"number"==typeof e)return(e=fo(""+e,t.mode,n)).return=t,e;if("object"==typeof e&&null!==e){switch(e.$$typeof){case o:return(n=ho(e.type,e.key,e.props,null,t.mode,n)).ref=Pn(t,null,e),n.return=t,n;case l:return(e=go(e,t.mode,n)).return=t,e;case m:return A(t,(0,e._init)(e._payload),n)}if(Q(e)||b(e))return(e=uo(e,t.mode,n,null)).return=t,e;Rn(t,e)}return null}function p(t,e,n,r){var i=null!==e?e.key:null;if("string"==typeof n&&""!==n||"number"==typeof n)return null!==i?null:c(t,e,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case o:return n.key===i?d(t,e,n,r):null;case l:return n.key===i?f(t,e,n,r):null;case m:return p(t,e,(i=n._init)(n._payload),r)}if(Q(n)||b(n))return null!==i?null:g(t,e,n,r,null);Rn(t,n)}return null}function v(t,e,n,r,i){if("string"==typeof r&&""!==r||"number"==typeof r)return c(e,t=t.get(n)||null,""+r,i);if("object"==typeof r&&null!==r){switch(r.$$typeof){case o:return d(e,t=t.get(null===r.key?n:r.key)||null,r,i);case l:return f(e,t=t.get(null===r.key?n:r.key)||null,r,i);case m:return v(t,e,n,(0,r._init)(r._payload),i)}if(Q(r)||b(r))return g(e,t=t.get(n)||null,r,i,null);Rn(e,r)}return null}function C(i,a,o,l){for(var h=null,u=null,c=a,d=a=0,f=null;null!==c&&d<o.length;d++){c.index>d?(f=c,c=null):f=c.sibling;var g=p(i,c,o[d],l);if(null===g){null===c&&(c=f);break}t&&c&&null===g.alternate&&e(i,c),a=s(g,a,d),null===u?h=g:u.sibling=g,u=g,c=f}if(d===o.length)return n(i,c),gn&&ln(i,d),h;if(null===c){for(;d<o.length;d++)null!==(c=A(i,o[d],l))&&(a=s(c,a,d),null===u?h=c:u.sibling=c,u=c);return gn&&ln(i,d),h}for(c=r(i,c);d<o.length;d++)null!==(f=v(c,i,d,o[d],l))&&(t&&null!==f.alternate&&c.delete(null===f.key?d:f.key),a=s(f,a,d),null===u?h=f:u.sibling=f,u=f);return t&&c.forEach(function(t){return e(i,t)}),gn&&ln(i,d),h}function y(i,o,l,h){var u=b(l);if("function"!=typeof u)throw Error(a(150));if(null==(l=u.call(l)))throw Error(a(151));for(var c=u=null,d=o,f=o=0,g=null,m=l.next();null!==d&&!m.done;f++,m=l.next()){d.index>f?(g=d,d=null):g=d.sibling;var C=p(i,d,m.value,h);if(null===C){null===d&&(d=g);break}t&&d&&null===C.alternate&&e(i,d),o=s(C,o,f),null===c?u=C:c.sibling=C,c=C,d=g}if(m.done)return n(i,d),gn&&ln(i,f),u;if(null===d){for(;!m.done;f++,m=l.next())null!==(m=A(i,m.value,h))&&(o=s(m,o,f),null===c?u=m:c.sibling=m,c=m);return gn&&ln(i,f),u}for(d=r(i,d);!m.done;f++,m=l.next())null!==(m=v(d,i,f,m.value,h))&&(t&&null!==m.alternate&&d.delete(null===m.key?f:m.key),o=s(m,o,f),null===c?u=m:c.sibling=m,c=m);return t&&d.forEach(function(t){return e(i,t)}),gn&&ln(i,f),u}return function t(r,a,s,c){if("object"==typeof s&&null!==s&&s.type===h&&null===s.key&&(s=s.props.children),"object"==typeof s&&null!==s){switch(s.$$typeof){case o:t:{for(var d=s.key,f=a;null!==f;){if(f.key===d){if((d=s.type)===h){if(7===f.tag){n(r,f.sibling),(a=i(f,s.props.children)).return=r,r=a;break t}}else if(f.elementType===d||"object"==typeof d&&null!==d&&d.$$typeof===m&&Qn(d)===f.type){n(r,f.sibling),(a=i(f,s.props)).ref=Pn(r,f,s),a.return=r,r=a;break t}n(r,f);break}e(r,f),f=f.sibling}s.type===h?((a=uo(s.props.children,r.mode,c,s.key)).return=r,r=a):((c=ho(s.type,s.key,s.props,null,r.mode,c)).ref=Pn(r,a,s),c.return=r,r=c)}return u(r);case l:t:{for(f=s.key;null!==a;){if(a.key===f){if(4===a.tag&&a.stateNode.containerInfo===s.containerInfo&&a.stateNode.implementation===s.implementation){n(r,a.sibling),(a=i(a,s.children||[])).return=r,r=a;break t}n(r,a);break}e(r,a),a=a.sibling}(a=go(s,r.mode,c)).return=r,r=a}return u(r);case m:return t(r,a,(f=s._init)(s._payload),c)}if(Q(s))return C(r,a,s,c);if(b(s))return y(r,a,s,c);Rn(r,s)}return"string"==typeof s&&""!==s||"number"==typeof s?(s=""+s,null!==a&&6===a.tag?(n(r,a.sibling),(a=i(a,s)).return=r,r=a):(n(r,a),(a=fo(s,r.mode,c)).return=r,r=a),u(r)):n(r,a)}}var Dn=Tn(!0),Mn=Tn(!1),Ln=se(null),On=null,_n=null,Gn=null;function zn(){Gn=_n=On=null}function Fn(t,e,n){Y?(le(Ln,e._currentValue),e._currentValue=n):(le(Ln,e._currentValue2),e._currentValue2=n)}function Nn(t){var e=Ln.current;oe(Ln),Y?t._currentValue=e:t._currentValue2=e}function Hn(t,e,n){for(;null!==t;){var r=t.alternate;if((t.childLanes&e)!==e?(t.childLanes|=e,null!==r&&(r.childLanes|=e)):null!==r&&(r.childLanes&e)!==e&&(r.childLanes|=e),t===n)break;t=t.return}}function jn(t,e){On=t,Gn=_n=null,null!==(t=t.dependencies)&&null!==t.firstContext&&(0!==(t.lanes&e)&&(Mi=!0),t.firstContext=null)}function Jn(t){var e=Y?t._currentValue:t._currentValue2;if(Gn!==t)if(t={context:t,memoizedValue:e,next:null},null===_n){if(null===On)throw Error(a(308));_n=t,On.dependencies={lanes:0,firstContext:t}}else _n=_n.next=t;return e}var Un=null;function Yn(t){null===Un?Un=[t]:Un.push(t)}function Wn(t,e,n,r){var i=e.interleaved;return null===i?(n.next=n,Yn(e)):(n.next=i.next,i.next=n),e.interleaved=n,Xn(t,r)}function Xn(t,e){t.lanes|=e;var n=t.alternate;for(null!==n&&(n.lanes|=e),n=t,t=t.return;null!==t;)t.childLanes|=e,null!==(n=t.alternate)&&(n.childLanes|=e),n=t,t=t.return;return 3===n.tag?n.stateNode:null}var qn=!1;function Kn(t){t.updateQueue={baseState:t.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Vn(t,e){t=t.updateQueue,e.updateQueue===t&&(e.updateQueue={baseState:t.baseState,firstBaseUpdate:t.firstBaseUpdate,lastBaseUpdate:t.lastBaseUpdate,shared:t.shared,effects:t.effects})}function Zn(t,e){return{eventTime:t,lane:e,tag:0,payload:null,callback:null,next:null}}function $n(t,e,n){var r=t.updateQueue;if(null===r)return null;if(r=r.shared,2&ns){var i=r.pending;return null===i?e.next=e:(e.next=i.next,i.next=e),r.pending=e,Xn(t,n)}return null===(i=r.interleaved)?(e.next=e,Yn(r)):(e.next=i.next,i.next=e),r.interleaved=e,Xn(t,n)}function tr(t,e,n){if(null!==(e=e.updateQueue)&&(e=e.shared,4194240&n)){var r=e.lanes;n|=r&=t.pendingLanes,e.lanes=n,Te(t,n)}}function nr(t,e){var n=t.updateQueue,r=t.alternate;if(null!==r&&n===(r=r.updateQueue)){var i=null,a=null;if(null!==(n=n.firstBaseUpdate)){do{var s={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===a?i=a=s:a=a.next=s,n=n.next}while(null!==n);null===a?i=a=e:a=a.next=e}else i=a=e;return n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,effects:r.effects},void(t.updateQueue=n)}null===(t=n.lastBaseUpdate)?n.firstBaseUpdate=e:t.next=e,n.lastBaseUpdate=e}function ir(t,e,n,r){var a=t.updateQueue;qn=!1;var s=a.firstBaseUpdate,o=a.lastBaseUpdate,l=a.shared.pending;if(null!==l){a.shared.pending=null;var h=l,u=h.next;h.next=null,null===o?s=u:o.next=u,o=h;var c=t.alternate;null!==c&&(l=(c=c.updateQueue).lastBaseUpdate)!==o&&(null===l?c.firstBaseUpdate=u:l.next=u,c.lastBaseUpdate=h)}if(null!==s){var d=a.baseState;for(o=0,c=u=h=null,l=s;;){var f=l.lane,g=l.eventTime;if((r&f)===f){null!==c&&(c=c.next={eventTime:g,lane:0,tag:l.tag,payload:l.payload,callback:l.callback,next:null});t:{var A=t,p=l;switch(f=e,g=n,p.tag){case 1:if("function"==typeof(A=p.payload)){d=A.call(g,d,f);break t}d=A;break t;case 3:A.flags=-65537&A.flags|128;case 0:if(null==(f="function"==typeof(A=p.payload)?A.call(g,d,f):A))break t;d=i({},d,f);break t;case 2:qn=!0}}null!==l.callback&&0!==l.lane&&(t.flags|=64,null===(f=a.effects)?a.effects=[l]:f.push(l))}else g={eventTime:g,lane:f,tag:l.tag,payload:l.payload,callback:l.callback,next:null},null===c?(u=c=g,h=d):c=c.next=g,o|=f;if(null===(l=l.next)){if(null===(l=a.shared.pending))break;l=(f=l).next,f.next=null,a.lastBaseUpdate=f,a.shared.pending=null}}if(null===c&&(h=d),a.baseState=h,a.firstBaseUpdate=u,a.lastBaseUpdate=c,null!==(e=a.shared.interleaved)){a=e;do{o|=a.lane,a=a.next}while(a!==e)}else null===s&&(a.shared.lanes=0);us|=o,t.lanes=o,t.memoizedState=d}}function ar(t,e,n){if(t=e.effects,e.effects=null,null!==t)for(e=0;e<t.length;e++){var r=t[e],i=r.callback;if(null!==i){if(r.callback=null,r=n,"function"!=typeof i)throw Error(a(191,i));i.call(r)}}}var sr={},or=se(sr),lr=se(sr),hr=se(sr);function ur(t){if(t===sr)throw Error(a(174));return t}function cr(t,e){le(hr,e),le(lr,t),le(or,sr),t=D(e),oe(or),le(or,t)}function dr(){oe(or),oe(lr),oe(hr)}function fr(t){var e=ur(hr.current),n=ur(or.current);n!==(e=M(n,t.type,e))&&(le(lr,t),le(or,e))}function gr(t){lr.current===t&&(oe(or),oe(lr))}var Ar=se(0);function pr(t){for(var e=t;null!==e;){if(13===e.tag){var n=e.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||Lt(n)||Ot(n)))return e}else if(19===e.tag&&void 0!==e.memoizedProps.revealOrder){if(128&e.flags)return e}else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break;for(;null===e.sibling;){if(null===e.return||e.return===t)return null;e=e.return}e.sibling.return=e.return,e=e.sibling}return null}var vr=[];function mr(){for(var t=0;t<vr.length;t++){var e=vr[t];Y?e._workInProgressVersionPrimary=null:e._workInProgressVersionSecondary=null}vr.length=0}var Cr=s.ReactCurrentDispatcher,yr=s.ReactCurrentBatchConfig,br=0,wr=null,Er=null,Sr=null,xr=!1,Ir=!1,kr=0,Br=0;function Pr(){throw Error(a(321))}function Rr(t,e){if(null===e)return!1;for(var n=0;n<e.length&&n<t.length;n++)if(!Ye(t[n],e[n]))return!1;return!0}function Qr(t,e,n,r,i,s){if(br=s,wr=e,e.memoizedState=null,e.updateQueue=null,e.lanes=0,Cr.current=null===t||null===t.memoizedState?gi:Ai,t=n(r,i),Ir){s=0;do{if(Ir=!1,kr=0,25<=s)throw Error(a(301));s+=1,Sr=Er=null,e.updateQueue=null,Cr.current=pi,t=n(r,i)}while(Ir)}if(Cr.current=fi,e=null!==Er&&null!==Er.next,br=0,Sr=Er=wr=null,xr=!1,e)throw Error(a(300));return t}function Tr(){var t=0!==kr;return kr=0,t}function Dr(){var t={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===Sr?wr.memoizedState=Sr=t:Sr=Sr.next=t,Sr}function Mr(){if(null===Er){var t=wr.alternate;t=null!==t?t.memoizedState:null}else t=Er.next;var e=null===Sr?wr.memoizedState:Sr.next;if(null!==e)Sr=e,Er=t;else{if(null===t)throw Error(a(310));t={memoizedState:(Er=t).memoizedState,baseState:Er.baseState,baseQueue:Er.baseQueue,queue:Er.queue,next:null},null===Sr?wr.memoizedState=Sr=t:Sr=Sr.next=t}return Sr}function Lr(t,e){return"function"==typeof e?e(t):e}function Or(t){var e=Mr(),n=e.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=t;var r=Er,i=r.baseQueue,s=n.pending;if(null!==s){if(null!==i){var o=i.next;i.next=s.next,s.next=o}r.baseQueue=i=s,n.pending=null}if(null!==i){s=i.next,r=r.baseState;var l=o=null,h=null,u=s;do{var c=u.lane;if((br&c)===c)null!==h&&(h=h.next={lane:0,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),r=u.hasEagerState?u.eagerState:t(r,u.action);else{var d={lane:c,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null};null===h?(l=h=d,o=r):h=h.next=d,wr.lanes|=c,us|=c}u=u.next}while(null!==u&&u!==s);null===h?o=r:h.next=l,Ye(r,e.memoizedState)||(Mi=!0),e.memoizedState=r,e.baseState=o,e.baseQueue=h,n.lastRenderedState=r}if(null!==(t=n.interleaved)){i=t;do{s=i.lane,wr.lanes|=s,us|=s,i=i.next}while(i!==t)}else null===i&&(n.lanes=0);return[e.memoizedState,n.dispatch]}function _r(t){var e=Mr(),n=e.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=t;var r=n.dispatch,i=n.pending,s=e.memoizedState;if(null!==i){n.pending=null;var o=i=i.next;do{s=t(s,o.action),o=o.next}while(o!==i);Ye(s,e.memoizedState)||(Mi=!0),e.memoizedState=s,null===e.baseQueue&&(e.baseState=s),n.lastRenderedState=s}return[s,r]}function Gr(){}function zr(t,e){var n=wr,r=Mr(),i=e(),s=!Ye(r.memoizedState,i);if(s&&(r.memoizedState=i,Mi=!0),r=r.queue,Vr(Hr.bind(null,n,r,t),[t]),r.getSnapshot!==e||s||null!==Sr&&1&Sr.memoizedState.tag){if(n.flags|=2048,Yr(9,Nr.bind(null,n,r,i,e),void 0,null),null===rs)throw Error(a(349));30&br||Fr(n,e,i)}return i}function Fr(t,e,n){t.flags|=16384,t={getSnapshot:e,value:n},null===(e=wr.updateQueue)?(e={lastEffect:null,stores:null},wr.updateQueue=e,e.stores=[t]):null===(n=e.stores)?e.stores=[t]:n.push(t)}function Nr(t,e,n,r){e.value=n,e.getSnapshot=r,jr(e)&&Jr(t)}function Hr(t,e,n){return n(function(){jr(e)&&Jr(t)})}function jr(t){var e=t.getSnapshot;t=t.value;try{var n=e();return!Ye(t,n)}catch(t){return!0}}function Jr(t){var e=Xn(t,1);null!==e&&Ts(e,t,1,-1)}function Ur(t){var e=Dr();return"function"==typeof t&&(t=t()),e.memoizedState=e.baseState=t,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:Lr,lastRenderedState:t},e.queue=t,t=t.dispatch=hi.bind(null,wr,t),[e.memoizedState,t]}function Yr(t,e,n,r){return t={tag:t,create:e,destroy:n,deps:r,next:null},null===(e=wr.updateQueue)?(e={lastEffect:null,stores:null},wr.updateQueue=e,e.lastEffect=t.next=t):null===(n=e.lastEffect)?e.lastEffect=t.next=t:(r=n.next,n.next=t,t.next=r,e.lastEffect=t),t}function Wr(){return Mr().memoizedState}function Xr(t,e,n,r){var i=Dr();wr.flags|=t,i.memoizedState=Yr(1|e,n,void 0,void 0===r?null:r)}function qr(t,e,n,r){var i=Mr();r=void 0===r?null:r;var a=void 0;if(null!==Er){var s=Er.memoizedState;if(a=s.destroy,null!==r&&Rr(r,s.deps))return void(i.memoizedState=Yr(e,n,a,r))}wr.flags|=t,i.memoizedState=Yr(1|e,n,a,r)}function Kr(t,e){return Xr(8390656,8,t,e)}function Vr(t,e){return qr(2048,8,t,e)}function Zr(t,e){return qr(4,2,t,e)}function $r(t,e){return qr(4,4,t,e)}function ti(t,e){return"function"==typeof e?(t=t(),e(t),function(){e(null)}):null!=e?(t=t(),e.current=t,function(){e.current=null}):void 0}function ei(t,e,n){return n=null!=n?n.concat([t]):null,qr(4,4,ti.bind(null,e,t),n)}function ni(){}function ri(t,e){var n=Mr();e=void 0===e?null:e;var r=n.memoizedState;return null!==r&&null!==e&&Rr(e,r[1])?r[0]:(n.memoizedState=[t,e],t)}function ii(t,e){var n=Mr();e=void 0===e?null:e;var r=n.memoizedState;return null!==r&&null!==e&&Rr(e,r[1])?r[0]:(t=t(),n.memoizedState=[t,e],t)}function ai(t,e,n){return 21&br?(Ye(n,e)||(n=Pe(),wr.lanes|=n,us|=n,t.baseState=!0),e):(t.baseState&&(t.baseState=!1,Mi=!0),t.memoizedState=n)}function si(t,e){var n=De;De=0!==n&&4>n?n:4,t(!0);var r=yr.transition;yr.transition={};try{t(!1),e()}finally{De=n,yr.transition=r}}function oi(){return Mr().memoizedState}function li(t,e,n){var r=Qs(t);n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},ui(t)?ci(e,n):null!==(n=Wn(t,e,n,r))&&(Ts(n,t,r,Rs()),di(n,e,r))}function hi(t,e,n){var r=Qs(t),i={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(ui(t))ci(e,i);else{var a=t.alternate;if(0===t.lanes&&(null===a||0===a.lanes)&&null!==(a=e.lastRenderedReducer))try{var s=e.lastRenderedState,o=a(s,n);if(i.hasEagerState=!0,i.eagerState=o,Ye(o,s)){var l=e.interleaved;return null===l?(i.next=i,Yn(e)):(i.next=l.next,l.next=i),void(e.interleaved=i)}}catch(t){}null!==(n=Wn(t,e,i,r))&&(Ts(n,t,r,i=Rs()),di(n,e,r))}}function ui(t){var e=t.alternate;return t===wr||null!==e&&e===wr}function ci(t,e){Ir=xr=!0;var n=t.pending;null===n?e.next=e:(e.next=n.next,n.next=e),t.pending=e}function di(t,e,n){if(4194240&n){var r=e.lanes;n|=r&=t.pendingLanes,e.lanes=n,Te(t,n)}}var fi={readContext:Jn,useCallback:Pr,useContext:Pr,useEffect:Pr,useImperativeHandle:Pr,useInsertionEffect:Pr,useLayoutEffect:Pr,useMemo:Pr,useReducer:Pr,useRef:Pr,useState:Pr,useDebugValue:Pr,useDeferredValue:Pr,useTransition:Pr,useMutableSource:Pr,useSyncExternalStore:Pr,useId:Pr,unstable_isNewReconciler:!1},gi={readContext:Jn,useCallback:function(t,e){return Dr().memoizedState=[t,void 0===e?null:e],t},useContext:Jn,useEffect:Kr,useImperativeHandle:function(t,e,n){return n=null!=n?n.concat([t]):null,Xr(4194308,4,ti.bind(null,e,t),n)},useLayoutEffect:function(t,e){return Xr(4194308,4,t,e)},useInsertionEffect:function(t,e){return Xr(4,2,t,e)},useMemo:function(t,e){var n=Dr();return e=void 0===e?null:e,t=t(),n.memoizedState=[t,e],t},useReducer:function(t,e,n){var r=Dr();return e=void 0!==n?n(e):e,r.memoizedState=r.baseState=e,t={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:t,lastRenderedState:e},r.queue=t,t=t.dispatch=li.bind(null,wr,t),[r.memoizedState,t]},useRef:function(t){return t={current:t},Dr().memoizedState=t},useState:Ur,useDebugValue:ni,useDeferredValue:function(t){return Dr().memoizedState=t},useTransition:function(){var t=Ur(!1),e=t[0];return t=si.bind(null,t[1]),Dr().memoizedState=t,[e,t]},useMutableSource:function(){},useSyncExternalStore:function(t,e,n){var r=wr,i=Dr();if(gn){if(void 0===n)throw Error(a(407));n=n()}else{if(n=e(),null===rs)throw Error(a(349));30&br||Fr(r,e,n)}i.memoizedState=n;var s={value:n,getSnapshot:e};return i.queue=s,Kr(Hr.bind(null,r,s,t),[t]),r.flags|=2048,Yr(9,Nr.bind(null,r,s,n,e),void 0,null),n},useId:function(){var t=Dr(),e=rs.identifierPrefix;if(gn){var n=on;e=":"+e+"R"+(n=(sn&~(1<<32-ye(sn)-1)).toString(32)+n),0<(n=kr++)&&(e+="H"+n.toString(32)),e+=":"}else e=":"+e+"r"+(n=Br++).toString(32)+":";return t.memoizedState=e},unstable_isNewReconciler:!1},Ai={readContext:Jn,useCallback:ri,useContext:Jn,useEffect:Vr,useImperativeHandle:ei,useInsertionEffect:Zr,useLayoutEffect:$r,useMemo:ii,useReducer:Or,useRef:Wr,useState:function(){return Or(Lr)},useDebugValue:ni,useDeferredValue:function(t){return ai(Mr(),Er.memoizedState,t)},useTransition:function(){return[Or(Lr)[0],Mr().memoizedState]},useMutableSource:Gr,useSyncExternalStore:zr,useId:oi,unstable_isNewReconciler:!1},pi={readContext:Jn,useCallback:ri,useContext:Jn,useEffect:Vr,useImperativeHandle:ei,useInsertionEffect:Zr,useLayoutEffect:$r,useMemo:ii,useReducer:_r,useRef:Wr,useState:function(){return _r(Lr)},useDebugValue:ni,useDeferredValue:function(t){var e=Mr();return null===Er?e.memoizedState=t:ai(e,Er.memoizedState,t)},useTransition:function(){return[_r(Lr)[0],Mr().memoizedState]},useMutableSource:Gr,useSyncExternalStore:zr,useId:oi,unstable_isNewReconciler:!1};function vi(t,e){if(t&&t.defaultProps){for(var n in e=i({},e),t=t.defaultProps)void 0===e[n]&&(e[n]=t[n]);return e}return e}function mi(t,e,n,r){n=null==(n=n(r,e=t.memoizedState))?e:i({},e,n),t.memoizedState=n,0===t.lanes&&(t.updateQueue.baseState=n)}var Ci={isMounted:function(t){return!!(t=t._reactInternals)&&S(t)===t},enqueueSetState:function(t,e,n){t=t._reactInternals;var r=Rs(),i=Qs(t),a=Zn(r,i);a.payload=e,null!=n&&(a.callback=n),null!==(e=$n(t,a,i))&&(Ts(e,t,i,r),tr(e,t,i))},enqueueReplaceState:function(t,e,n){t=t._reactInternals;var r=Rs(),i=Qs(t),a=Zn(r,i);a.tag=1,a.payload=e,null!=n&&(a.callback=n),null!==(e=$n(t,a,i))&&(Ts(e,t,i,r),tr(e,t,i))},enqueueForceUpdate:function(t,e){t=t._reactInternals;var n=Rs(),r=Qs(t),i=Zn(n,r);i.tag=2,null!=e&&(i.callback=e),null!==(e=$n(t,i,r))&&(Ts(e,t,r,n),tr(e,t,r))}};function yi(t,e,n,r,i,a,s){return"function"==typeof(t=t.stateNode).shouldComponentUpdate?t.shouldComponentUpdate(r,a,s):!(e.prototype&&e.prototype.isPureReactComponent&&kn(n,r)&&kn(i,a))}function bi(t,e,n){var r=!1,i=he,a=e.contextType;return"object"==typeof a&&null!==a?a=Jn(a):(i=ge(e)?de:ue.current,a=(r=null!=(r=e.contextTypes))?fe(t,i):he),e=new e(n,a),t.memoizedState=null!==e.state&&void 0!==e.state?e.state:null,e.updater=Ci,t.stateNode=e,e._reactInternals=t,r&&((t=t.stateNode).__reactInternalMemoizedUnmaskedChildContext=i,t.__reactInternalMemoizedMaskedChildContext=a),e}function wi(t,e,n,r){t=e.state,"function"==typeof e.componentWillReceiveProps&&e.componentWillReceiveProps(n,r),"function"==typeof e.UNSAFE_componentWillReceiveProps&&e.UNSAFE_componentWillReceiveProps(n,r),e.state!==t&&Ci.enqueueReplaceState(e,e.state,null)}function Ei(t,e,n,r){var i=t.stateNode;i.props=n,i.state=t.memoizedState,i.refs={},Kn(t);var a=e.contextType;"object"==typeof a&&null!==a?i.context=Jn(a):(a=ge(e)?de:ue.current,i.context=fe(t,a)),i.state=t.memoizedState,"function"==typeof(a=e.getDerivedStateFromProps)&&(mi(t,e,a,n),i.state=t.memoizedState),"function"==typeof e.getDerivedStateFromProps||"function"==typeof i.getSnapshotBeforeUpdate||"function"!=typeof i.UNSAFE_componentWillMount&&"function"!=typeof i.componentWillMount||(e=i.state,"function"==typeof i.componentWillMount&&i.componentWillMount(),"function"==typeof i.UNSAFE_componentWillMount&&i.UNSAFE_componentWillMount(),e!==i.state&&Ci.enqueueReplaceState(i,i.state,null),ir(t,n,i,r),i.state=t.memoizedState),"function"==typeof i.componentDidMount&&(t.flags|=4194308)}function Si(t,e){try{var n="",r=e;do{n+=Bn(r),r=r.return}while(r);var i=n}catch(t){i="\nError generating stack: "+t.message+"\n"+t.stack}return{value:t,source:e,stack:i,digest:null}}function xi(t,e,n){return{value:t,source:null,stack:null!=n?n:null,digest:null!=e?e:null}}function Ii(t,e){try{console.error(e.value)}catch(t){setTimeout(function(){throw t})}}var ki="function"==typeof WeakMap?WeakMap:Map;function Bi(t,e,n){(n=Zn(-1,n)).tag=3,n.payload={element:null};var r=e.value;return n.callback=function(){ys||(ys=!0,bs=r),Ii(0,e)},n}function Pi(t,e,n){(n=Zn(-1,n)).tag=3;var r=t.type.getDerivedStateFromError;if("function"==typeof r){var i=e.value;n.payload=function(){return r(i)},n.callback=function(){Ii(0,e)}}var a=t.stateNode;return null!==a&&"function"==typeof a.componentDidCatch&&(n.callback=function(){Ii(0,e),"function"!=typeof r&&(null===ws?ws=new Set([this]):ws.add(this));var t=e.stack;this.componentDidCatch(e.value,{componentStack:null!==t?t:""})}),n}function Ri(t,e,n){var r=t.pingCache;if(null===r){r=t.pingCache=new ki;var i=new Set;r.set(e,i)}else void 0===(i=r.get(e))&&(i=new Set,r.set(e,i));i.has(n)||(i.add(n),t=to.bind(null,t,e,n),e.then(t,t))}function Qi(t){do{var e;if((e=13===t.tag)&&(e=null===(e=t.memoizedState)||null!==e.dehydrated),e)return t;t=t.return}while(null!==t);return null}function Ti(t,e,n,r,i){return 1&t.mode?(t.flags|=65536,t.lanes=i,t):(t===e?t.flags|=65536:(t.flags|=128,n.flags|=131072,n.flags&=-52805,1===n.tag&&(null===n.alternate?n.tag=17:((e=Zn(-1,1)).tag=2,$n(n,e,1))),n.lanes|=1),t)}var Di=s.ReactCurrentOwner,Mi=!1;function Li(t,e,n,r){e.child=null===t?Mn(e,null,n,r):Dn(e,t.child,n,r)}function Oi(t,e,n,r,i){n=n.render;var a=e.ref;return jn(e,i),r=Qr(t,e,n,r,a,i),n=Tr(),null===t||Mi?(gn&&n&&un(e),e.flags|=1,Li(t,e,r,i),e.child):(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~i,aa(t,e,i))}function _i(t,e,n,r,i){if(null===t){var a=n.type;return"function"!=typeof a||oo(a)||void 0!==a.defaultProps||null!==n.compare||void 0!==n.defaultProps?((t=ho(n.type,null,r,e,e.mode,i)).ref=e.ref,t.return=e,e.child=t):(e.tag=15,e.type=a,Gi(t,e,a,r,i))}if(a=t.child,0===(t.lanes&i)){var s=a.memoizedProps;if((n=null!==(n=n.compare)?n:kn)(s,r)&&t.ref===e.ref)return aa(t,e,i)}return e.flags|=1,(t=lo(a,r)).ref=e.ref,t.return=e,e.child=t}function Gi(t,e,n,r,i){if(null!==t){var a=t.memoizedProps;if(kn(a,r)&&t.ref===e.ref){if(Mi=!1,e.pendingProps=r=a,0===(t.lanes&i))return e.lanes=t.lanes,aa(t,e,i);131072&t.flags&&(Mi=!0)}}return Ni(t,e,n,r,i)}function zi(t,e,n){var r=e.pendingProps,i=r.children,a=null!==t?t.memoizedState:null;if("hidden"===r.mode)if(1&e.mode){if(!(1073741824&n))return t=null!==a?a.baseLanes|n:n,e.lanes=e.childLanes=1073741824,e.memoizedState={baseLanes:t,cachePool:null,transitions:null},e.updateQueue=null,le(os,ss),ss|=t,null;e.memoizedState={baseLanes:0,cachePool:null,transitions:null},r=null!==a?a.baseLanes:n,le(os,ss),ss|=r}else e.memoizedState={baseLanes:0,cachePool:null,transitions:null},le(os,ss),ss|=n;else null!==a?(r=a.baseLanes|n,e.memoizedState=null):r=n,le(os,ss),ss|=r;return Li(t,e,i,n),e.child}function Fi(t,e){var n=e.ref;(null===t&&null!==n||null!==t&&t.ref!==n)&&(e.flags|=512,e.flags|=2097152)}function Ni(t,e,n,r,i){var a=ge(n)?de:ue.current;return a=fe(e,a),jn(e,i),n=Qr(t,e,n,r,a,i),r=Tr(),null===t||Mi?(gn&&r&&un(e),e.flags|=1,Li(t,e,n,i),e.child):(e.updateQueue=t.updateQueue,e.flags&=-2053,t.lanes&=~i,aa(t,e,i))}function Hi(t,e,n,r,i){if(ge(n)){var a=!0;me(e)}else a=!1;if(jn(e,i),null===e.stateNode)ia(t,e),bi(e,n,r),Ei(e,n,r,i),r=!0;else if(null===t){var s=e.stateNode,o=e.memoizedProps;s.props=o;var l=s.context,h=n.contextType;h="object"==typeof h&&null!==h?Jn(h):fe(e,h=ge(n)?de:ue.current);var u=n.getDerivedStateFromProps,c="function"==typeof u||"function"==typeof s.getSnapshotBeforeUpdate;c||"function"!=typeof s.UNSAFE_componentWillReceiveProps&&"function"!=typeof s.componentWillReceiveProps||(o!==r||l!==h)&&wi(e,s,r,h),qn=!1;var d=e.memoizedState;s.state=d,ir(e,r,s,i),l=e.memoizedState,o!==r||d!==l||ce.current||qn?("function"==typeof u&&(mi(e,n,u,r),l=e.memoizedState),(o=qn||yi(e,n,o,r,d,l,h))?(c||"function"!=typeof s.UNSAFE_componentWillMount&&"function"!=typeof s.componentWillMount||("function"==typeof s.componentWillMount&&s.componentWillMount(),"function"==typeof s.UNSAFE_componentWillMount&&s.UNSAFE_componentWillMount()),"function"==typeof s.componentDidMount&&(e.flags|=4194308)):("function"==typeof s.componentDidMount&&(e.flags|=4194308),e.memoizedProps=r,e.memoizedState=l),s.props=r,s.state=l,s.context=h,r=o):("function"==typeof s.componentDidMount&&(e.flags|=4194308),r=!1)}else{s=e.stateNode,Vn(t,e),o=e.memoizedProps,h=e.type===e.elementType?o:vi(e.type,o),s.props=h,c=e.pendingProps,d=s.context,l="object"==typeof(l=n.contextType)&&null!==l?Jn(l):fe(e,l=ge(n)?de:ue.current);var f=n.getDerivedStateFromProps;(u="function"==typeof f||"function"==typeof s.getSnapshotBeforeUpdate)||"function"!=typeof s.UNSAFE_componentWillReceiveProps&&"function"!=typeof s.componentWillReceiveProps||(o!==c||d!==l)&&wi(e,s,r,l),qn=!1,d=e.memoizedState,s.state=d,ir(e,r,s,i);var g=e.memoizedState;o!==c||d!==g||ce.current||qn?("function"==typeof f&&(mi(e,n,f,r),g=e.memoizedState),(h=qn||yi(e,n,h,r,d,g,l)||!1)?(u||"function"!=typeof s.UNSAFE_componentWillUpdate&&"function"!=typeof s.componentWillUpdate||("function"==typeof s.componentWillUpdate&&s.componentWillUpdate(r,g,l),"function"==typeof s.UNSAFE_componentWillUpdate&&s.UNSAFE_componentWillUpdate(r,g,l)),"function"==typeof s.componentDidUpdate&&(e.flags|=4),"function"==typeof s.getSnapshotBeforeUpdate&&(e.flags|=1024)):("function"!=typeof s.componentDidUpdate||o===t.memoizedProps&&d===t.memoizedState||(e.flags|=4),"function"!=typeof s.getSnapshotBeforeUpdate||o===t.memoizedProps&&d===t.memoizedState||(e.flags|=1024),e.memoizedProps=r,e.memoizedState=g),s.props=r,s.state=g,s.context=l,r=h):("function"!=typeof s.componentDidUpdate||o===t.memoizedProps&&d===t.memoizedState||(e.flags|=4),"function"!=typeof s.getSnapshotBeforeUpdate||o===t.memoizedProps&&d===t.memoizedState||(e.flags|=1024),r=!1)}return ji(t,e,n,r,a,i)}function ji(t,e,n,r,i,a){Fi(t,e);var s=!!(128&e.flags);if(!r&&!s)return i&&Ce(e,n,!1),aa(t,e,a);r=e.stateNode,Di.current=e;var o=s&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return e.flags|=1,null!==t&&s?(e.child=Dn(e,t.child,null,a),e.child=Dn(e,null,o,a)):Li(t,e,o,a),e.memoizedState=r.state,i&&Ce(e,n,!0),e.child}function Ji(t){var e=t.stateNode;e.pendingContext?pe(0,e.pendingContext,e.pendingContext!==e.context):e.context&&pe(0,e.context,!1),cr(t,e.containerInfo)}function Ui(t,e,n,r,i){return Sn(),xn(i),e.flags|=256,Li(t,e,n,r),e.child}var Yi,Wi,Xi,qi,Ki={dehydrated:null,treeContext:null,retryLane:0};function Vi(t){return{baseLanes:t,cachePool:null,transitions:null}}function Zi(t,e,n){var r,i=e.pendingProps,s=Ar.current,o=!1,l=!!(128&e.flags);if((r=l)||(r=(null===t||null!==t.memoizedState)&&!!(2&s)),r?(o=!0,e.flags&=-129):null!==t&&null===t.memoizedState||(s|=1),le(Ar,1&s),null===t)return yn(e),null!==(t=e.memoizedState)&&null!==(t=t.dehydrated)?(1&e.mode?Ot(t)?e.lanes=8:e.lanes=1073741824:e.lanes=1,null):(l=i.children,t=i.fallback,o?(i=e.mode,o=e.child,l={mode:"hidden",children:l},1&i||null===o?o=co(l,i,0,null):(o.childLanes=0,o.pendingProps=l),t=uo(t,i,n,null),o.return=e,t.return=e,o.sibling=t,e.child=o,e.child.memoizedState=Vi(n),e.memoizedState=Ki,t):$i(e,l));if(null!==(s=t.memoizedState)&&null!==(r=s.dehydrated))return function(t,e,n,r,i,s,o){if(n)return 256&e.flags?(e.flags&=-257,ta(t,e,o,r=xi(Error(a(422))))):null!==e.memoizedState?(e.child=t.child,e.flags|=128,null):(s=r.fallback,i=e.mode,r=co({mode:"visible",children:r.children},i,0,null),(s=uo(s,i,o,null)).flags|=2,r.return=e,s.return=e,r.sibling=s,e.child=r,1&e.mode&&Dn(e,t.child,null,o),e.child.memoizedState=Vi(o),e.memoizedState=Ki,s);if(!(1&e.mode))return ta(t,e,o,null);if(Ot(i))return r=_t(i).digest,ta(t,e,o,r=xi(s=Error(a(419)),r,void 0));if(n=0!==(o&t.childLanes),Mi||n){if(null!==(r=rs)){switch(o&-o){case 4:i=2;break;case 16:i=8;break;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:i=32;break;case 536870912:i=268435456;break;default:i=0}0!==(i=0!==(i&(r.suspendedLanes|o))?0:i)&&i!==s.retryLane&&(s.retryLane=i,Xn(t,i),Ts(r,t,i,-1))}return Js(),ta(t,e,o,r=xi(Error(a(421))))}return Lt(i)?(e.flags|=128,e.child=t.child,e=no.bind(null,t),Gt(i,e),null):(t=s.treeContext,q&&(fn=Ht(i),dn=e,gn=!0,pn=null,An=!1,null!==t&&(nn[rn++]=sn,nn[rn++]=on,nn[rn++]=an,sn=t.id,on=t.overflow,an=e)),(e=$i(e,r.children)).flags|=4096,e)}(t,e,l,i,r,s,n);if(o){o=i.fallback,l=e.mode,r=(s=t.child).sibling;var h={mode:"hidden",children:i.children};return 1&l||e.child===s?(i=lo(s,h)).subtreeFlags=14680064&s.subtreeFlags:((i=e.child).childLanes=0,i.pendingProps=h,e.deletions=null),null!==r?o=lo(r,o):(o=uo(o,l,n,null)).flags|=2,o.return=e,i.return=e,i.sibling=o,e.child=i,i=o,o=e.child,l=null===(l=t.child.memoizedState)?Vi(n):{baseLanes:l.baseLanes|n,cachePool:null,transitions:l.transitions},o.memoizedState=l,o.childLanes=t.childLanes&~n,e.memoizedState=Ki,i}return t=(o=t.child).sibling,i=lo(o,{mode:"visible",children:i.children}),!(1&e.mode)&&(i.lanes=n),i.return=e,i.sibling=null,null!==t&&(null===(n=e.deletions)?(e.deletions=[t],e.flags|=16):n.push(t)),e.child=i,e.memoizedState=null,i}function $i(t,e){return(e=co({mode:"visible",children:e},t.mode,0,null)).return=t,t.child=e}function ta(t,e,n,r){return null!==r&&xn(r),Dn(e,t.child,null,n),(t=$i(e,e.pendingProps.children)).flags|=2,e.memoizedState=null,t}function ea(t,e,n){t.lanes|=e;var r=t.alternate;null!==r&&(r.lanes|=e),Hn(t.return,e,n)}function na(t,e,n,r,i){var a=t.memoizedState;null===a?t.memoizedState={isBackwards:e,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i}:(a.isBackwards=e,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailMode=i)}function ra(t,e,n){var r=e.pendingProps,i=r.revealOrder,a=r.tail;if(Li(t,e,r.children,n),2&(r=Ar.current))r=1&r|2,e.flags|=128;else{if(null!==t&&128&t.flags)t:for(t=e.child;null!==t;){if(13===t.tag)null!==t.memoizedState&&ea(t,n,e);else if(19===t.tag)ea(t,n,e);else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break t;for(;null===t.sibling;){if(null===t.return||t.return===e)break t;t=t.return}t.sibling.return=t.return,t=t.sibling}r&=1}if(le(Ar,r),1&e.mode)switch(i){case"forwards":for(n=e.child,i=null;null!==n;)null!==(t=n.alternate)&&null===pr(t)&&(i=n),n=n.sibling;null===(n=i)?(i=e.child,e.child=null):(i=n.sibling,n.sibling=null),na(e,!1,i,n,a);break;case"backwards":for(n=null,i=e.child,e.child=null;null!==i;){if(null!==(t=i.alternate)&&null===pr(t)){e.child=i;break}t=i.sibling,i.sibling=n,n=i,i=t}na(e,!0,n,null,a);break;case"together":na(e,!1,null,null,void 0);break;default:e.memoizedState=null}else e.memoizedState=null;return e.child}function ia(t,e){!(1&e.mode)&&null!==t&&(t.alternate=null,e.alternate=null,e.flags|=2)}function aa(t,e,n){if(null!==t&&(e.dependencies=t.dependencies),us|=e.lanes,0===(n&e.childLanes))return null;if(null!==t&&e.child!==t.child)throw Error(a(153));if(null!==e.child){for(n=lo(t=e.child,t.pendingProps),e.child=n,n.return=e;null!==t.sibling;)t=t.sibling,(n=n.sibling=lo(t,t.pendingProps)).return=e;n.sibling=null}return e.child}function sa(t){t.flags|=4}function oa(t,e){if(null!==t&&t.child===e.child)return!0;if(16&e.flags)return!1;for(t=e.child;null!==t;){if(12854&t.flags||12854&t.subtreeFlags)return!1;t=t.sibling}return!0}if(W)Yi=function(t,e){for(var n=e.child;null!==n;){if(5===n.tag||6===n.tag)G(t,n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Wi=function(){},Xi=function(t,e,n,r,i){if((t=t.memoizedProps)!==r){var a=e.stateNode,s=ur(or.current);n=F(a,n,t,r,i,s),(e.updateQueue=n)&&sa(e)}},qi=function(t,e,n,r){n!==r&&sa(e)};else if(X){Yi=function(t,e,n,r){for(var i=e.child;null!==i;){if(5===i.tag){var a=i.stateNode;n&&r&&(a=Rt(a,i.type,i.memoizedProps,i)),G(t,a)}else if(6===i.tag)a=i.stateNode,n&&r&&(a=Qt(a,i.memoizedProps,i)),G(t,a);else if(4!==i.tag)if(22===i.tag&&null!==i.memoizedState)null!==(a=i.child)&&(a.return=i),Yi(t,i,!0,!0);else if(null!==i.child){i.child.return=i,i=i.child;continue}if(i===e)break;for(;null===i.sibling;){if(null===i.return||i.return===e)return;i=i.return}i.sibling.return=i.return,i=i.sibling}};var la=function(t,e,n,r){for(var i=e.child;null!==i;){if(5===i.tag){var a=i.stateNode;n&&r&&(a=Rt(a,i.type,i.memoizedProps,i)),kt(t,a)}else if(6===i.tag)a=i.stateNode,n&&r&&(a=Qt(a,i.memoizedProps,i)),kt(t,a);else if(4!==i.tag)if(22===i.tag&&null!==i.memoizedState)null!==(a=i.child)&&(a.return=i),la(t,i,!0,!0);else if(null!==i.child){i.child.return=i,i=i.child;continue}if(i===e)break;for(;null===i.sibling;){if(null===i.return||i.return===e)return;i=i.return}i.sibling.return=i.return,i=i.sibling}};Wi=function(t,e){var n=e.stateNode;if(!oa(t,e)){t=n.containerInfo;var r=It(t);la(r,e,!1,!1),n.pendingChildren=r,sa(e),Bt(t,r)}},Xi=function(t,e,n,r,i){var a=t.stateNode,s=t.memoizedProps;if((t=oa(t,e))&&s===r)e.stateNode=a;else{var o=e.stateNode,l=ur(or.current),h=null;s!==r&&(h=F(o,n,s,r,i,l)),t&&null===h?e.stateNode=a:(a=xt(a,h,n,s,r,e,t,o),z(a,n,r,i,l)&&sa(e),e.stateNode=a,t?sa(e):Yi(a,e,!1,!1))}},qi=function(t,e,n,r){n!==r?(t=ur(hr.current),n=ur(or.current),e.stateNode=H(r,t,n,e),sa(e)):e.stateNode=t.stateNode}}else Wi=function(){},Xi=function(){},qi=function(){};function ha(t,e){if(!gn)switch(t.tailMode){case"hidden":e=t.tail;for(var n=null;null!==e;)null!==e.alternate&&(n=e),e=e.sibling;null===n?t.tail=null:n.sibling=null;break;case"collapsed":n=t.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?e||null===t.tail?t.tail=null:t.tail.sibling=null:r.sibling=null}}function ua(t){var e=null!==t.alternate&&t.alternate.child===t.child,n=0,r=0;if(e)for(var i=t.child;null!==i;)n|=i.lanes|i.childLanes,r|=14680064&i.subtreeFlags,r|=14680064&i.flags,i.return=t,i=i.sibling;else for(i=t.child;null!==i;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=t,i=i.sibling;return t.subtreeFlags|=r,t.childLanes=n,e}function ca(t,e,n){var r=e.pendingProps;switch(cn(e),e.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return ua(e),null;case 1:case 17:return ge(e.type)&&Ae(),ua(e),null;case 3:return n=e.stateNode,dr(),oe(ce),oe(ue),mr(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==t&&null!==t.child||(wn(e)?sa(e):null===t||t.memoizedState.isDehydrated&&!(256&e.flags)||(e.flags|=1024,null!==pn&&(Os(pn),pn=null))),Wi(t,e),ua(e),null;case 5:gr(e),n=ur(hr.current);var i=e.type;if(null!==t&&null!=e.stateNode)Xi(t,e,i,r,n),t.ref!==e.ref&&(e.flags|=512,e.flags|=2097152);else{if(!r){if(null===e.stateNode)throw Error(a(166));return ua(e),null}if(t=ur(or.current),wn(e)){if(!q)throw Error(a(175));t=jt(e.stateNode,e.type,e.memoizedProps,n,t,e,!An),e.updateQueue=t,null!==t&&sa(e)}else{var s=_(i,r,n,t,e);Yi(s,e,!1,!1),e.stateNode=s,z(s,i,r,n,t)&&sa(e)}null!==e.ref&&(e.flags|=512,e.flags|=2097152)}return ua(e),null;case 6:if(t&&null!=e.stateNode)qi(t,e,t.memoizedProps,r);else{if("string"!=typeof r&&null===e.stateNode)throw Error(a(166));if(t=ur(hr.current),n=ur(or.current),wn(e)){if(!q)throw Error(a(176));if(t=e.stateNode,n=e.memoizedProps,(r=Jt(t,n,e,!An))&&null!==(i=dn))switch(i.tag){case 3:Zt(i.stateNode.containerInfo,t,n,!!(1&i.mode));break;case 5:$t(i.type,i.memoizedProps,i.stateNode,t,n,!!(1&i.mode))}r&&sa(e)}else e.stateNode=H(r,t,n,e)}return ua(e),null;case 13:if(oe(Ar),r=e.memoizedState,null===t||null!==t.memoizedState&&null!==t.memoizedState.dehydrated){if(gn&&null!==fn&&1&e.mode&&!(128&e.flags))En(),Sn(),e.flags|=98560,i=!1;else if(i=wn(e),null!==r&&null!==r.dehydrated){if(null===t){if(!i)throw Error(a(318));if(!q)throw Error(a(344));if(!(i=null!==(i=e.memoizedState)?i.dehydrated:null))throw Error(a(317));Ut(i,e)}else Sn(),!(128&e.flags)&&(e.memoizedState=null),e.flags|=4;ua(e),i=!1}else null!==pn&&(Os(pn),pn=null),i=!0;if(!i)return 65536&e.flags?e:null}return 128&e.flags?(e.lanes=n,e):((n=null!==r)!=(null!==t&&null!==t.memoizedState)&&n&&(e.child.flags|=8192,1&e.mode&&(null===t||1&Ar.current?0===ls&&(ls=3):Js())),null!==e.updateQueue&&(e.flags|=4),ua(e),null);case 4:return dr(),Wi(t,e),null===t&&V(e.stateNode.containerInfo),ua(e),null;case 10:return Nn(e.type._context),ua(e),null;case 19:if(oe(Ar),null===(i=e.memoizedState))return ua(e),null;if(r=!!(128&e.flags),null===(s=i.rendering))if(r)ha(i,!1);else{if(0!==ls||null!==t&&128&t.flags)for(t=e.child;null!==t;){if(null!==(s=pr(t))){for(e.flags|=128,ha(i,!1),null!==(t=s.updateQueue)&&(e.updateQueue=t,e.flags|=4),e.subtreeFlags=0,t=n,n=e.child;null!==n;)i=t,(r=n).flags&=14680066,null===(s=r.alternate)?(r.childLanes=0,r.lanes=i,r.child=null,r.subtreeFlags=0,r.memoizedProps=null,r.memoizedState=null,r.updateQueue=null,r.dependencies=null,r.stateNode=null):(r.childLanes=s.childLanes,r.lanes=s.lanes,r.child=s.child,r.subtreeFlags=0,r.deletions=null,r.memoizedProps=s.memoizedProps,r.memoizedState=s.memoizedState,r.updateQueue=s.updateQueue,r.type=s.type,i=s.dependencies,r.dependencies=null===i?null:{lanes:i.lanes,firstContext:i.firstContext}),n=n.sibling;return le(Ar,1&Ar.current|2),e.child}t=t.sibling}null!==i.tail&&ze()>ps&&(e.flags|=128,r=!0,ha(i,!1),e.lanes=4194304)}else{if(!r)if(null!==(t=pr(s))){if(e.flags|=128,r=!0,null!==(t=t.updateQueue)&&(e.updateQueue=t,e.flags|=4),ha(i,!0),null===i.tail&&"hidden"===i.tailMode&&!s.alternate&&!gn)return ua(e),null}else 2*ze()-i.renderingStartTime>ps&&1073741824!==n&&(e.flags|=128,r=!0,ha(i,!1),e.lanes=4194304);i.isBackwards?(s.sibling=e.child,e.child=s):(null!==(t=i.last)?t.sibling=s:e.child=s,i.last=s)}return null!==i.tail?(e=i.tail,i.rendering=e,i.tail=e.sibling,i.renderingStartTime=ze(),e.sibling=null,t=Ar.current,le(Ar,r?1&t|2:1&t),e):(ua(e),null);case 22:case 23:return Fs(),n=null!==e.memoizedState,null!==t&&null!==t.memoizedState!==n&&(e.flags|=8192),n&&1&e.mode?!!(1073741824&ss)&&(ua(e),W&&6&e.subtreeFlags&&(e.flags|=8192)):ua(e),null;case 24:case 25:return null}throw Error(a(156,e.tag))}function da(t,e){switch(cn(e),e.tag){case 1:return ge(e.type)&&Ae(),65536&(t=e.flags)?(e.flags=-65537&t|128,e):null;case 3:return dr(),oe(ce),oe(ue),mr(),65536&(t=e.flags)&&!(128&t)?(e.flags=-65537&t|128,e):null;case 5:return gr(e),null;case 13:if(oe(Ar),null!==(t=e.memoizedState)&&null!==t.dehydrated){if(null===e.alternate)throw Error(a(340));Sn()}return 65536&(t=e.flags)?(e.flags=-65537&t|128,e):null;case 19:return oe(Ar),null;case 4:return dr(),null;case 10:return Nn(e.type._context),null;case 22:case 23:return Fs(),null;default:return null}}var fa=!1,ga=!1,Aa="function"==typeof WeakSet?WeakSet:Set,pa=null;function va(t,e){var n=t.ref;if(null!==n)if("function"==typeof n)try{n(null)}catch(n){$s(t,e,n)}else n.current=null}function ma(t,e,n){try{n()}catch(n){$s(t,e,n)}}var Ca=!1;function ya(t,e,n){var r=e.updateQueue;if(null!==(r=null!==r?r.lastEffect:null)){var i=r=r.next;do{if((i.tag&t)===t){var a=i.destroy;i.destroy=void 0,void 0!==a&&ma(e,n,a)}i=i.next}while(i!==r)}}function ba(t,e){if(null!==(e=null!==(e=e.updateQueue)?e.lastEffect:null)){var n=e=e.next;do{if((n.tag&t)===t){var r=n.create;n.destroy=r()}n=n.next}while(n!==e)}}function wa(t){var e=t.ref;if(null!==e){var n=t.stateNode;t=5===t.tag?T(n):n,"function"==typeof e?e(t):e.current=t}}function Ea(t){var e=t.alternate;null!==e&&(t.alternate=null,Ea(e)),t.child=null,t.deletions=null,t.sibling=null,5===t.tag&&null!==(e=t.stateNode)&&$(e),t.stateNode=null,t.return=null,t.dependencies=null,t.memoizedProps=null,t.memoizedState=null,t.pendingProps=null,t.stateNode=null,t.updateQueue=null}function Sa(t){return 5===t.tag||3===t.tag||4===t.tag}function xa(t){t:for(;;){for(;null===t.sibling;){if(null===t.return||Sa(t.return))return null;t=t.return}for(t.sibling.return=t.return,t=t.sibling;5!==t.tag&&6!==t.tag&&18!==t.tag;){if(2&t.flags)continue t;if(null===t.child||4===t.tag)continue t;t.child.return=t,t=t.child}if(!(2&t.flags))return t.stateNode}}function Ia(t,e,n){var r=t.tag;if(5===r||6===r)t=t.stateNode,e?pt(n,t,e):ct(n,t);else if(4!==r&&null!==(t=t.child))for(Ia(t,e,n),t=t.sibling;null!==t;)Ia(t,e,n),t=t.sibling}function ka(t,e,n){var r=t.tag;if(5===r||6===r)t=t.stateNode,e?At(n,t,e):ut(n,t);else if(4!==r&&null!==(t=t.child))for(ka(t,e,n),t=t.sibling;null!==t;)ka(t,e,n),t=t.sibling}var Ba=null,Pa=!1;function Ra(t,e,n){for(n=n.child;null!==n;)Qa(t,e,n),n=n.sibling}function Qa(t,e,n){if(Ue&&"function"==typeof Ue.onCommitFiberUnmount)try{Ue.onCommitFiberUnmount(Je,n)}catch(t){}switch(n.tag){case 5:ga||va(n,e);case 6:if(W){var r=Ba,i=Pa;Ba=null,Ra(t,e,n),Pa=i,null!==(Ba=r)&&(Pa?mt(Ba,n.stateNode):vt(Ba,n.stateNode))}else Ra(t,e,n);break;case 18:W&&null!==Ba&&(Pa?Kt(Ba,n.stateNode):qt(Ba,n.stateNode));break;case 4:W?(r=Ba,i=Pa,Ba=n.stateNode.containerInfo,Pa=!0,Ra(t,e,n),Ba=r,Pa=i):(X&&(r=n.stateNode.containerInfo,i=It(r),Pt(r,i)),Ra(t,e,n));break;case 0:case 11:case 14:case 15:if(!ga&&null!==(r=n.updateQueue)&&null!==(r=r.lastEffect)){i=r=r.next;do{var a=i,s=a.destroy;a=a.tag,void 0!==s&&(2&a||4&a)&&ma(n,e,s),i=i.next}while(i!==r)}Ra(t,e,n);break;case 1:if(!ga&&(va(n,e),"function"==typeof(r=n.stateNode).componentWillUnmount))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(t){$s(n,e,t)}Ra(t,e,n);break;case 21:Ra(t,e,n);break;case 22:1&n.mode?(ga=(r=ga)||null!==n.memoizedState,Ra(t,e,n),ga=r):Ra(t,e,n);break;default:Ra(t,e,n)}}function Ta(t){var e=t.updateQueue;if(null!==e){t.updateQueue=null;var n=t.stateNode;null===n&&(n=t.stateNode=new Aa),e.forEach(function(e){var r=ro.bind(null,t,e);n.has(e)||(n.add(e),e.then(r,r))})}}function Da(t,e){var n=e.deletions;if(null!==n)for(var r=0;r<n.length;r++){var i=n[r];try{var s=t,o=e;if(W){var l=o;t:for(;null!==l;){switch(l.tag){case 5:Ba=l.stateNode,Pa=!1;break t;case 3:case 4:Ba=l.stateNode.containerInfo,Pa=!0;break t}l=l.return}if(null===Ba)throw Error(a(160));Qa(s,o,i),Ba=null,Pa=!1}else Qa(s,o,i);var h=i.alternate;null!==h&&(h.return=null),i.return=null}catch(t){$s(i,e,t)}}if(12854&e.subtreeFlags)for(e=e.child;null!==e;)Ma(e,t),e=e.sibling}function Ma(t,e){var n=t.alternate,r=t.flags;switch(t.tag){case 0:case 11:case 14:case 15:if(Da(e,t),La(t),4&r){try{ya(3,t,t.return),ba(3,t)}catch(e){$s(t,t.return,e)}try{ya(5,t,t.return)}catch(e){$s(t,t.return,e)}}break;case 1:Da(e,t),La(t),512&r&&null!==n&&va(n,n.return);break;case 5:if(Da(e,t),La(t),512&r&&null!==n&&va(n,n.return),W){if(32&t.flags){var i=t.stateNode;try{Ct(i)}catch(e){$s(t,t.return,e)}}if(4&r&&null!=(i=t.stateNode)){var s=t.memoizedProps;if(n=null!==n?n.memoizedProps:s,r=t.type,e=t.updateQueue,t.updateQueue=null,null!==e)try{gt(i,e,r,n,s,t)}catch(e){$s(t,t.return,e)}}}break;case 6:if(Da(e,t),La(t),4&r&&W){if(null===t.stateNode)throw Error(a(162));i=t.stateNode,s=t.memoizedProps,n=null!==n?n.memoizedProps:s;try{dt(i,n,s)}catch(e){$s(t,t.return,e)}}break;case 3:if(Da(e,t),La(t),4&r){if(W&&q&&null!==n&&n.memoizedState.isDehydrated)try{Wt(e.containerInfo)}catch(e){$s(t,t.return,e)}if(X){i=e.containerInfo,s=e.pendingChildren;try{Pt(i,s)}catch(e){$s(t,t.return,e)}}}break;case 4:if(Da(e,t),La(t),4&r&&X){i=(s=t.stateNode).containerInfo,s=s.pendingChildren;try{Pt(i,s)}catch(e){$s(t,t.return,e)}}break;case 13:Da(e,t),La(t),8192&(i=t.child).flags&&(s=null!==i.memoizedState,i.stateNode.isHidden=s,!s||null!==i.alternate&&null!==i.alternate.memoizedState||(As=ze())),4&r&&Ta(t);break;case 22:var o=null!==n&&null!==n.memoizedState;if(1&t.mode?(ga=(n=ga)||o,Da(e,t),ga=n):Da(e,t),La(t),8192&r){if(n=null!==t.memoizedState,(t.stateNode.isHidden=n)&&!o&&1&t.mode)for(pa=t,r=t.child;null!==r;){for(e=pa=r;null!==pa;){var l=(o=pa).child;switch(o.tag){case 0:case 11:case 14:case 15:ya(4,o,o.return);break;case 1:va(o,o.return);var h=o.stateNode;if("function"==typeof h.componentWillUnmount){var u=o,c=o.return;try{var d=u;h.props=d.memoizedProps,h.state=d.memoizedState,h.componentWillUnmount()}catch(t){$s(u,c,t)}}break;case 5:va(o,o.return);break;case 22:if(null!==o.memoizedState){za(e);continue}}null!==l?(l.return=o,pa=l):za(e)}r=r.sibling}if(W)t:if(r=null,W)for(e=t;;){if(5===e.tag){if(null===r){r=e;try{i=e.stateNode,n?yt(i):wt(e.stateNode,e.memoizedProps)}catch(e){$s(t,t.return,e)}}}else if(6===e.tag){if(null===r)try{s=e.stateNode,n?bt(s):Et(s,e.memoizedProps)}catch(e){$s(t,t.return,e)}}else if((22!==e.tag&&23!==e.tag||null===e.memoizedState||e===t)&&null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break t;for(;null===e.sibling;){if(null===e.return||e.return===t)break t;r===e&&(r=null),e=e.return}r===e&&(r=null),e.sibling.return=e.return,e=e.sibling}}break;case 19:Da(e,t),La(t),4&r&&Ta(t);break;case 21:break;default:Da(e,t),La(t)}}function La(t){var e=t.flags;if(2&e){try{if(W){t:{for(var n=t.return;null!==n;){if(Sa(n)){var r=n;break t}n=n.return}throw Error(a(160))}switch(r.tag){case 5:var i=r.stateNode;32&r.flags&&(Ct(i),r.flags&=-33),ka(t,xa(t),i);break;case 3:case 4:var s=r.stateNode.containerInfo;Ia(t,xa(t),s);break;default:throw Error(a(161))}}}catch(e){$s(t,t.return,e)}t.flags&=-3}4096&e&&(t.flags&=-4097)}function Oa(t,e,n){pa=t,_a(t)}function _a(t,e,n){for(var r=!!(1&t.mode);null!==pa;){var i=pa,a=i.child;if(22===i.tag&&r){var s=null!==i.memoizedState||fa;if(!s){var o=i.alternate,l=null!==o&&null!==o.memoizedState||ga;o=fa;var h=ga;if(fa=s,(ga=l)&&!h)for(pa=i;null!==pa;)l=(s=pa).child,22===s.tag&&null!==s.memoizedState?Fa(i):null!==l?(l.return=s,pa=l):Fa(i);for(;null!==a;)pa=a,_a(a),a=a.sibling;pa=i,fa=o,ga=h}Ga(t)}else 8772&i.subtreeFlags&&null!==a?(a.return=i,pa=a):Ga(t)}}function Ga(t){for(;null!==pa;){var e=pa;if(8772&e.flags){var n=e.alternate;try{if(8772&e.flags)switch(e.tag){case 0:case 11:case 15:ga||ba(5,e);break;case 1:var r=e.stateNode;if(4&e.flags&&!ga)if(null===n)r.componentDidMount();else{var i=e.elementType===e.type?n.memoizedProps:vi(e.type,n.memoizedProps);r.componentDidUpdate(i,n.memoizedState,r.__reactInternalSnapshotBeforeUpdate)}var s=e.updateQueue;null!==s&&ar(e,s,r);break;case 3:var o=e.updateQueue;if(null!==o){if(n=null,null!==e.child)switch(e.child.tag){case 5:n=T(e.child.stateNode);break;case 1:n=e.child.stateNode}ar(e,o,n)}break;case 5:var l=e.stateNode;null===n&&4&e.flags&&ft(l,e.type,e.memoizedProps,e);break;case 6:case 4:case 12:case 19:case 17:case 21:case 22:case 23:case 25:break;case 13:if(q&&null===e.memoizedState){var h=e.alternate;if(null!==h){var u=h.memoizedState;if(null!==u){var c=u.dehydrated;null!==c&&Xt(c)}}}break;default:throw Error(a(163))}ga||512&e.flags&&wa(e)}catch(t){$s(e,e.return,t)}}if(e===t){pa=null;break}if(null!==(n=e.sibling)){n.return=e.return,pa=n;break}pa=e.return}}function za(t){for(;null!==pa;){var e=pa;if(e===t){pa=null;break}var n=e.sibling;if(null!==n){n.return=e.return,pa=n;break}pa=e.return}}function Fa(t){for(;null!==pa;){var e=pa;try{switch(e.tag){case 0:case 11:case 15:var n=e.return;try{ba(4,e)}catch(t){$s(e,n,t)}break;case 1:var r=e.stateNode;if("function"==typeof r.componentDidMount){var i=e.return;try{r.componentDidMount()}catch(t){$s(e,i,t)}}var a=e.return;try{wa(e)}catch(t){$s(e,a,t)}break;case 5:var s=e.return;try{wa(e)}catch(t){$s(e,s,t)}}}catch(t){$s(e,e.return,t)}if(e===t){pa=null;break}var o=e.sibling;if(null!==o){o.return=e.return,pa=o;break}pa=e.return}}var Na=0,Ha=1,ja=2,Ja=3,Ua=4;if("function"==typeof Symbol&&Symbol.for){var Ya=Symbol.for;Na=Ya("selector.component"),Ha=Ya("selector.has_pseudo_class"),ja=Ya("selector.role"),Ja=Ya("selector.test_id"),Ua=Ya("selector.text")}function Wa(t){var e=K(t);if(null!=e){if("string"!=typeof e.memoizedProps["data-testname"])throw Error(a(364));return e}if(null===(t=rt(t)))throw Error(a(362));return t.stateNode.current}function Xa(t,e){switch(e.$$typeof){case Na:if(t.type===e.value)return!0;break;case Ha:t:{e=e.value,t=[t,0];for(var n=0;n<t.length;){var r=t[n++],i=t[n++],s=e[i];if(5!==r.tag||!st(r)){for(;null!=s&&Xa(r,s);)s=e[++i];if(i===e.length){e=!0;break t}for(r=r.child;null!==r;)t.push(r,i),r=r.sibling}}e=!1}return e;case ja:if(5===t.tag&&ot(t.stateNode,e.value))return!0;break;case Ua:if((5===t.tag||6===t.tag)&&null!==(t=at(t))&&0<=t.indexOf(e.value))return!0;break;case Ja:if(5===t.tag&&"string"==typeof(t=t.memoizedProps["data-testname"])&&t.toLowerCase()===e.value.toLowerCase())return!0;break;default:throw Error(a(365))}return!1}function qa(t){switch(t.$$typeof){case Na:return"<"+(w(t.value)||"Unknown")+">";case Ha:return":has("+(qa(t)||"")+")";case ja:return'[role="'+t.value+'"]';case Ua:return'"'+t.value+'"';case Ja:return'[data-testname="'+t.value+'"]';default:throw Error(a(365))}}function Ka(t,e){var n=[];t=[t,0];for(var r=0;r<t.length;){var i=t[r++],a=t[r++],s=e[a];if(5!==i.tag||!st(i)){for(;null!=s&&Xa(i,s);)s=e[++a];if(a===e.length)n.push(i);else for(i=i.child;null!==i;)t.push(i,a),i=i.sibling}}return n}function Va(t,e){if(!nt)throw Error(a(363));t=Ka(t=Wa(t),e),e=[],t=Array.from(t);for(var n=0;n<t.length;){var r=t[n++];if(5===r.tag)st(r)||e.push(r.stateNode);else for(r=r.child;null!==r;)t.push(r),r=r.sibling}return e}var Za=Math.ceil,$a=s.ReactCurrentDispatcher,ts=s.ReactCurrentOwner,es=s.ReactCurrentBatchConfig,ns=0,rs=null,is=null,as=0,ss=0,os=se(0),ls=0,hs=null,us=0,cs=0,ds=0,fs=null,gs=null,As=0,ps=1/0,vs=null;function ms(){ps=ze()+500}var Cs,ys=!1,bs=null,ws=null,Es=!1,Ss=null,xs=0,Is=0,ks=null,Bs=-1,Ps=0;function Rs(){return 6&ns?ze():-1!==Bs?Bs:Bs=ze()}function Qs(t){return 1&t.mode?2&ns&&0!==as?as&-as:null!==In.transition?(0===Ps&&(Ps=Pe()),Ps):0!==(t=De)?t:Z():1}function Ts(t,e,n,r){if(50<Is)throw Is=0,ks=null,Error(a(185));Qe(t,n,r),2&ns&&t===rs||(t===rs&&(!(2&ns)&&(cs|=n),4===ls&&_s(t,as)),Ds(t,r),1===n&&0===ns&&!(1&e.mode)&&(ms(),Xe&&Ve()))}function Ds(t,e){var n=t.callbackNode;!function(t,e){for(var n=t.suspendedLanes,r=t.pingedLanes,i=t.expirationTimes,a=t.pendingLanes;0<a;){var s=31-ye(a),o=1<<s,l=i[s];-1===l?0!==(o&n)&&0===(o&r)||(i[s]=ke(o,e)):l<=e&&(t.expiredLanes|=o),a&=~o}}(t,e);var r=Ie(t,t===rs?as:0);if(0===r)null!==n&&Oe(n),t.callbackNode=null,t.callbackPriority=0;else if(e=r&-r,t.callbackPriority!==e){if(null!=n&&Oe(n),1===e)0===t.tag?function(t){Xe=!0,Ke(t)}(Gs.bind(null,t)):Ke(Gs.bind(null,t)),tt?et(function(){!(6&ns)&&Ve()}):Le(Fe,Ve),n=null;else{switch(Me(r)){case 1:n=Fe;break;case 4:n=Ne;break;case 16:default:n=He;break;case 536870912:n=je}n=io(n,Ms.bind(null,t))}t.callbackPriority=e,t.callbackNode=n}}function Ms(t,e){if(Bs=-1,Ps=0,6&ns)throw Error(a(327));var n=t.callbackNode;if(Vs()&&t.callbackNode!==n)return null;var r=Ie(t,t===rs?as:0);if(0===r)return null;if(30&r||0!==(r&t.expiredLanes)||e)e=Us(t,r);else{e=r;var i=ns;ns|=2;var s=js();for(rs===t&&as===e||(vs=null,ms(),Ns(t,e));;)try{Ws();break}catch(e){Hs(t,e)}zn(),$a.current=s,ns=i,null!==is?e=0:(rs=null,as=0,e=ls)}if(0!==e){if(2===e&&0!==(i=Be(t))&&(r=i,e=Ls(t,i)),1===e)throw n=hs,Ns(t,0),_s(t,r),Ds(t,ze()),n;if(6===e)_s(t,r);else{if(i=t.current.alternate,!(30&r||function(t){for(var e=t;;){if(16384&e.flags){var n=e.updateQueue;if(null!==n&&null!==(n=n.stores))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!Ye(a(),i))return!1}catch(t){return!1}}}if(n=e.child,16384&e.subtreeFlags&&null!==n)n.return=e,e=n;else{if(e===t)break;for(;null===e.sibling;){if(null===e.return||e.return===t)return!0;e=e.return}e.sibling.return=e.return,e=e.sibling}}return!0}(i)||(e=Us(t,r),2===e&&(s=Be(t),0!==s&&(r=s,e=Ls(t,s))),1!==e)))throw n=hs,Ns(t,0),_s(t,r),Ds(t,ze()),n;switch(t.finishedWork=i,t.finishedLanes=r,e){case 0:case 1:throw Error(a(345));case 2:case 5:Ks(t,gs,vs);break;case 3:if(_s(t,r),(130023424&r)===r&&10<(e=As+500-ze())){if(0!==Ie(t,0))break;if(((i=t.suspendedLanes)&r)!==r){Rs(),t.pingedLanes|=t.suspendedLanes&i;break}t.timeoutHandle=j(Ks.bind(null,t,gs,vs),e);break}Ks(t,gs,vs);break;case 4:if(_s(t,r),(4194240&r)===r)break;for(e=t.eventTimes,i=-1;0<r;){var o=31-ye(r);s=1<<o,(o=e[o])>i&&(i=o),r&=~s}if(r=i,10<(r=(120>(r=ze()-r)?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Za(r/1960))-r)){t.timeoutHandle=j(Ks.bind(null,t,gs,vs),r);break}Ks(t,gs,vs);break;default:throw Error(a(329))}}}return Ds(t,ze()),t.callbackNode===n?Ms.bind(null,t):null}function Ls(t,e){var n=fs;return t.current.memoizedState.isDehydrated&&(Ns(t,e).flags|=256),2!==(t=Us(t,e))&&(e=gs,gs=n,null!==e&&Os(e)),t}function Os(t){null===gs?gs=t:gs.push.apply(gs,t)}function _s(t,e){for(e&=~ds,e&=~cs,t.suspendedLanes|=e,t.pingedLanes&=~e,t=t.expirationTimes;0<e;){var n=31-ye(e),r=1<<n;t[n]=-1,e&=~r}}function Gs(t){if(6&ns)throw Error(a(327));Vs();var e=Ie(t,0);if(!(1&e))return Ds(t,ze()),null;var n=Us(t,e);if(0!==t.tag&&2===n){var r=Be(t);0!==r&&(e=r,n=Ls(t,r))}if(1===n)throw n=hs,Ns(t,0),_s(t,e),Ds(t,ze()),n;if(6===n)throw Error(a(345));return t.finishedWork=t.current.alternate,t.finishedLanes=e,Ks(t,gs,vs),Ds(t,ze()),null}function zs(t){null!==Ss&&0===Ss.tag&&!(6&ns)&&Vs();var e=ns;ns|=1;var n=es.transition,r=De;try{if(es.transition=null,De=1,t)return t()}finally{De=r,es.transition=n,!(6&(ns=e))&&Ve()}}function Fs(){ss=os.current,oe(os)}function Ns(t,e){t.finishedWork=null,t.finishedLanes=0;var n=t.timeoutHandle;if(n!==U&&(t.timeoutHandle=U,J(n)),null!==is)for(n=is.return;null!==n;){var r=n;switch(cn(r),r.tag){case 1:null!=(r=r.type.childContextTypes)&&Ae();break;case 3:dr(),oe(ce),oe(ue),mr();break;case 5:gr(r);break;case 4:dr();break;case 13:case 19:oe(Ar);break;case 10:Nn(r.type._context);break;case 22:case 23:Fs()}n=n.return}if(rs=t,is=t=lo(t.current,null),as=ss=e,ls=0,hs=null,ds=cs=us=0,gs=fs=null,null!==Un){for(e=0;e<Un.length;e++)if(null!==(r=(n=Un[e]).interleaved)){n.interleaved=null;var i=r.next,a=n.pending;if(null!==a){var s=a.next;a.next=i,r.next=s}n.pending=r}Un=null}return t}function Hs(t,e){for(;;){var n=is;try{if(zn(),Cr.current=fi,xr){for(var r=wr.memoizedState;null!==r;){var i=r.queue;null!==i&&(i.pending=null),r=r.next}xr=!1}if(br=0,Sr=Er=wr=null,Ir=!1,kr=0,ts.current=null,null===n||null===n.return){ls=1,hs=e,is=null;break}t:{var s=t,o=n.return,l=n,h=e;if(e=as,l.flags|=32768,null!==h&&"object"==typeof h&&"function"==typeof h.then){var u=h,c=l,d=c.tag;if(!(1&c.mode||0!==d&&11!==d&&15!==d)){var f=c.alternate;f?(c.updateQueue=f.updateQueue,c.memoizedState=f.memoizedState,c.lanes=f.lanes):(c.updateQueue=null,c.memoizedState=null)}var g=Qi(o);if(null!==g){g.flags&=-257,Ti(g,o,l,0,e),1&g.mode&&Ri(s,u,e),h=u;var A=(e=g).updateQueue;if(null===A){var p=new Set;p.add(h),e.updateQueue=p}else A.add(h);break t}if(!(1&e)){Ri(s,u,e),Js();break t}h=Error(a(426))}else if(gn&&1&l.mode){var v=Qi(o);if(null!==v){!(65536&v.flags)&&(v.flags|=256),Ti(v,o,l,0,e),xn(Si(h,l));break t}}s=h=Si(h,l),4!==ls&&(ls=2),null===fs?fs=[s]:fs.push(s),s=o;do{switch(s.tag){case 3:s.flags|=65536,e&=-e,s.lanes|=e,nr(s,Bi(0,h,e));break t;case 1:l=h;var m=s.type,C=s.stateNode;if(!(128&s.flags||"function"!=typeof m.getDerivedStateFromError&&(null===C||"function"!=typeof C.componentDidCatch||null!==ws&&ws.has(C)))){s.flags|=65536,e&=-e,s.lanes|=e,nr(s,Pi(s,l,e));break t}}s=s.return}while(null!==s)}qs(n)}catch(t){e=t,is===n&&null!==n&&(is=n=n.return);continue}break}}function js(){var t=$a.current;return $a.current=fi,null===t?fi:t}function Js(){0!==ls&&3!==ls&&2!==ls||(ls=4),null===rs||!(268435455&us)&&!(268435455&cs)||_s(rs,as)}function Us(t,e){var n=ns;ns|=2;var r=js();for(rs===t&&as===e||(vs=null,Ns(t,e));;)try{Ys();break}catch(e){Hs(t,e)}if(zn(),ns=n,$a.current=r,null!==is)throw Error(a(261));return rs=null,as=0,ls}function Ys(){for(;null!==is;)Xs(is)}function Ws(){for(;null!==is&&!_e();)Xs(is)}function Xs(t){var e=Cs(t.alternate,t,ss);t.memoizedProps=t.pendingProps,null===e?qs(t):is=e,ts.current=null}function qs(t){var e=t;do{var n=e.alternate;if(t=e.return,32768&e.flags){if(null!==(n=da(n,e)))return n.flags&=32767,void(is=n);if(null===t)return ls=6,void(is=null);t.flags|=32768,t.subtreeFlags=0,t.deletions=null}else if(null!==(n=ca(n,e,ss)))return void(is=n);if(null!==(e=e.sibling))return void(is=e);is=e=t}while(null!==e);0===ls&&(ls=5)}function Ks(t,e,n){var r=De,i=es.transition;try{es.transition=null,De=1,function(t,e,n,r){do{Vs()}while(null!==Ss);if(6&ns)throw Error(a(327));n=t.finishedWork;var i=t.finishedLanes;if(null===n)return null;if(t.finishedWork=null,t.finishedLanes=0,n===t.current)throw Error(a(177));t.callbackNode=null,t.callbackPriority=0;var s=n.lanes|n.childLanes;if(function(t,e){var n=t.pendingLanes&~e;t.pendingLanes=e,t.suspendedLanes=0,t.pingedLanes=0,t.expiredLanes&=e,t.mutableReadLanes&=e,t.entangledLanes&=e,e=t.entanglements;var r=t.eventTimes;for(t=t.expirationTimes;0<n;){var i=31-ye(n),a=1<<i;e[i]=0,r[i]=-1,t[i]=-1,n&=~a}}(t,s),t===rs&&(is=rs=null,as=0),!(2064&n.subtreeFlags)&&!(2064&n.flags)||Es||(Es=!0,io(He,function(){return Vs(),null})),s=!!(15990&n.flags),15990&n.subtreeFlags||s){s=es.transition,es.transition=null;var o=De;De=1;var l=ns;ns|=4,ts.current=null,function(t,e){for(L(t.containerInfo),pa=e;null!==pa;)if(e=(t=pa).child,1028&t.subtreeFlags&&null!==e)e.return=t,pa=e;else for(;null!==pa;){t=pa;try{var n=t.alternate;if(1024&t.flags)switch(t.tag){case 0:case 11:case 15:case 5:case 6:case 4:case 17:break;case 1:if(null!==n){var r=n.memoizedProps,i=n.memoizedState,s=t.stateNode,o=s.getSnapshotBeforeUpdate(t.elementType===t.type?r:vi(t.type,r),i);s.__reactInternalSnapshotBeforeUpdate=o}break;case 3:W&&St(t.stateNode.containerInfo);break;default:throw Error(a(163))}}catch(e){$s(t,t.return,e)}if(null!==(e=t.sibling)){e.return=t.return,pa=e;break}pa=t.return}n=Ca,Ca=!1}(t,n),Ma(n,t),O(t.containerInfo),t.current=n,Oa(n),Ge(),ns=l,De=o,es.transition=s}else t.current=n;if(Es&&(Es=!1,Ss=t,xs=i),0===(s=t.pendingLanes)&&(ws=null),function(t){if(Ue&&"function"==typeof Ue.onCommitFiberRoot)try{Ue.onCommitFiberRoot(Je,t,void 0,!(128&~t.current.flags))}catch(t){}}(n.stateNode),Ds(t,ze()),null!==e)for(r=t.onRecoverableError,n=0;n<e.length;n++)r((i=e[n]).value,{componentStack:i.stack,digest:i.digest});if(ys)throw ys=!1,t=bs,bs=null,t;!!(1&xs)&&0!==t.tag&&Vs(),1&(s=t.pendingLanes)?t===ks?Is++:(Is=0,ks=t):Is=0,Ve()}(t,e,n,r)}finally{es.transition=i,De=r}return null}function Vs(){if(null!==Ss){var t=Me(xs),e=es.transition,n=De;try{if(es.transition=null,De=16>t?16:t,null===Ss)var r=!1;else{if(t=Ss,Ss=null,xs=0,6&ns)throw Error(a(331));var i=ns;for(ns|=4,pa=t.current;null!==pa;){var s=pa,o=s.child;if(16&pa.flags){var l=s.deletions;if(null!==l){for(var h=0;h<l.length;h++){var u=l[h];for(pa=u;null!==pa;){var c=pa;switch(c.tag){case 0:case 11:case 15:ya(8,c,s)}var d=c.child;if(null!==d)d.return=c,pa=d;else for(;null!==pa;){var f=(c=pa).sibling,g=c.return;if(Ea(c),c===u){pa=null;break}if(null!==f){f.return=g,pa=f;break}pa=g}}}var A=s.alternate;if(null!==A){var p=A.child;if(null!==p){A.child=null;do{var v=p.sibling;p.sibling=null,p=v}while(null!==p)}}pa=s}}if(2064&s.subtreeFlags&&null!==o)o.return=s,pa=o;else t:for(;null!==pa;){if(2048&(s=pa).flags)switch(s.tag){case 0:case 11:case 15:ya(9,s,s.return)}var m=s.sibling;if(null!==m){m.return=s.return,pa=m;break t}pa=s.return}}var C=t.current;for(pa=C;null!==pa;){var y=(o=pa).child;if(2064&o.subtreeFlags&&null!==y)y.return=o,pa=y;else t:for(o=C;null!==pa;){if(2048&(l=pa).flags)try{switch(l.tag){case 0:case 11:case 15:ba(9,l)}}catch(t){$s(l,l.return,t)}if(l===o){pa=null;break t}var b=l.sibling;if(null!==b){b.return=l.return,pa=b;break t}pa=l.return}}if(ns=i,Ve(),Ue&&"function"==typeof Ue.onPostCommitFiberRoot)try{Ue.onPostCommitFiberRoot(Je,t)}catch(t){}r=!0}return r}finally{De=n,es.transition=e}}return!1}function Zs(t,e,n){t=$n(t,e=Bi(0,e=Si(n,e),1),1),e=Rs(),null!==t&&(Qe(t,1,e),Ds(t,e))}function $s(t,e,n){if(3===t.tag)Zs(t,t,n);else for(;null!==e;){if(3===e.tag){Zs(e,t,n);break}if(1===e.tag){var r=e.stateNode;if("function"==typeof e.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===ws||!ws.has(r))){e=$n(e,t=Pi(e,t=Si(n,t),1),1),t=Rs(),null!==e&&(Qe(e,1,t),Ds(e,t));break}}e=e.return}}function to(t,e,n){var r=t.pingCache;null!==r&&r.delete(e),e=Rs(),t.pingedLanes|=t.suspendedLanes&n,rs===t&&(as&n)===n&&(4===ls||3===ls&&(130023424&as)===as&&500>ze()-As?Ns(t,0):ds|=n),Ds(t,e)}function eo(t,e){0===e&&(1&t.mode?(e=Se,!(130023424&(Se<<=1))&&(Se=4194304)):e=1);var n=Rs();null!==(t=Xn(t,e))&&(Qe(t,e,n),Ds(t,n))}function no(t){var e=t.memoizedState,n=0;null!==e&&(n=e.retryLane),eo(t,n)}function ro(t,e){var n=0;switch(t.tag){case 13:var r=t.stateNode,i=t.memoizedState;null!==i&&(n=i.retryLane);break;case 19:r=t.stateNode;break;default:throw Error(a(314))}null!==r&&r.delete(e),eo(t,n)}function io(t,e){return Le(t,e)}function ao(t,e,n,r){this.tag=t,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=e,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function so(t,e,n,r){return new ao(t,e,n,r)}function oo(t){return!(!(t=t.prototype)||!t.isReactComponent)}function lo(t,e){var n=t.alternate;return null===n?((n=so(t.tag,e,t.key,t.mode)).elementType=t.elementType,n.type=t.type,n.stateNode=t.stateNode,n.alternate=t,t.alternate=n):(n.pendingProps=e,n.type=t.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=14680064&t.flags,n.childLanes=t.childLanes,n.lanes=t.lanes,n.child=t.child,n.memoizedProps=t.memoizedProps,n.memoizedState=t.memoizedState,n.updateQueue=t.updateQueue,e=t.dependencies,n.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext},n.sibling=t.sibling,n.index=t.index,n.ref=t.ref,n}function ho(t,e,n,r,i,s){var o=2;if(r=t,"function"==typeof t)oo(t)&&(o=1);else if("string"==typeof t)o=5;else t:switch(t){case h:return uo(n.children,i,s,e);case u:o=8,i|=8;break;case c:return(t=so(12,n,e,2|i)).elementType=c,t.lanes=s,t;case A:return(t=so(13,n,e,i)).elementType=A,t.lanes=s,t;case p:return(t=so(19,n,e,i)).elementType=p,t.lanes=s,t;case C:return co(n,i,s,e);default:if("object"==typeof t&&null!==t)switch(t.$$typeof){case d:o=10;break t;case f:o=9;break t;case g:o=11;break t;case v:o=14;break t;case m:o=16,r=null;break t}throw Error(a(130,null==t?t:typeof t,""))}return(e=so(o,n,e,i)).elementType=t,e.type=r,e.lanes=s,e}function uo(t,e,n,r){return(t=so(7,t,r,e)).lanes=n,t}function co(t,e,n,r){return(t=so(22,t,r,e)).elementType=C,t.lanes=n,t.stateNode={isHidden:!1},t}function fo(t,e,n){return(t=so(6,t,null,e)).lanes=n,t}function go(t,e,n){return(e=so(4,null!==t.children?t.children:[],t.key,e)).lanes=n,e.stateNode={containerInfo:t.containerInfo,pendingChildren:null,implementation:t.implementation},e}function Ao(t,e,n,r,i){this.tag=e,this.containerInfo=t,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=U,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=Re(0),this.expirationTimes=Re(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Re(0),this.identifierPrefix=r,this.onRecoverableError=i,q&&(this.mutableSourceEagerHydrationData=null)}function po(t,e,n,r,i,a,s,o,l){return t=new Ao(t,e,n,o,l),1===e?(e=1,!0===a&&(e|=8)):e=0,a=so(3,null,null,e),t.current=a,a.stateNode=t,a.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Kn(a),t}function vo(t){if(!t)return he;t:{if(S(t=t._reactInternals)!==t||1!==t.tag)throw Error(a(170));var e=t;do{switch(e.tag){case 3:e=e.stateNode.context;break t;case 1:if(ge(e.type)){e=e.stateNode.__reactInternalMemoizedMergedChildContext;break t}}e=e.return}while(null!==e);throw Error(a(171))}if(1===t.tag){var n=t.type;if(ge(n))return ve(t,n,e)}return e}function mo(t){var e=t._reactInternals;if(void 0===e){if("function"==typeof t.render)throw Error(a(188));throw t=Object.keys(t).join(","),Error(a(268,t))}return null===(t=k(e))?null:t.stateNode}function Co(t,e){if(null!==(t=t.memoizedState)&&null!==t.dehydrated){var n=t.retryLane;t.retryLane=0!==n&&n<e?n:e}}function yo(t,e){Co(t,e),(t=t.alternate)&&Co(t,e)}function bo(t){return null===(t=k(t))?null:t.stateNode}function wo(){return null}return Cs=function(t,e,n){if(null!==t)if(t.memoizedProps!==e.pendingProps||ce.current)Mi=!0;else{if(0===(t.lanes&n)&&!(128&e.flags))return Mi=!1,function(t,e,n){switch(e.tag){case 3:Ji(e),Sn();break;case 5:fr(e);break;case 1:ge(e.type)&&me(e);break;case 4:cr(e,e.stateNode.containerInfo);break;case 10:Fn(0,e.type._context,e.memoizedProps.value);break;case 13:var r=e.memoizedState;if(null!==r)return null!==r.dehydrated?(le(Ar,1&Ar.current),e.flags|=128,null):0!==(n&e.child.childLanes)?Zi(t,e,n):(le(Ar,1&Ar.current),null!==(t=aa(t,e,n))?t.sibling:null);le(Ar,1&Ar.current);break;case 19:if(r=0!==(n&e.childLanes),128&t.flags){if(r)return ra(t,e,n);e.flags|=128}var i=e.memoizedState;if(null!==i&&(i.rendering=null,i.tail=null,i.lastEffect=null),le(Ar,Ar.current),r)break;return null;case 22:case 23:return e.lanes=0,zi(t,e,n)}return aa(t,e,n)}(t,e,n);Mi=!!(131072&t.flags)}else Mi=!1,gn&&1048576&e.flags&&hn(e,en,e.index);switch(e.lanes=0,e.tag){case 2:var r=e.type;ia(t,e),t=e.pendingProps;var i=fe(e,ue.current);jn(e,n),i=Qr(null,e,r,t,i,n);var s=Tr();return e.flags|=1,"object"==typeof i&&null!==i&&"function"==typeof i.render&&void 0===i.$$typeof?(e.tag=1,e.memoizedState=null,e.updateQueue=null,ge(r)?(s=!0,me(e)):s=!1,e.memoizedState=null!==i.state&&void 0!==i.state?i.state:null,Kn(e),i.updater=Ci,e.stateNode=i,i._reactInternals=e,Ei(e,r,t,n),e=ji(null,e,r,!0,s,n)):(e.tag=0,gn&&s&&un(e),Li(null,e,i,n),e=e.child),e;case 16:r=e.elementType;t:{switch(ia(t,e),t=e.pendingProps,r=(i=r._init)(r._payload),e.type=r,i=e.tag=function(t){if("function"==typeof t)return oo(t)?1:0;if(null!=t){if((t=t.$$typeof)===g)return 11;if(t===v)return 14}return 2}(r),t=vi(r,t),i){case 0:e=Ni(null,e,r,t,n);break t;case 1:e=Hi(null,e,r,t,n);break t;case 11:e=Oi(null,e,r,t,n);break t;case 14:e=_i(null,e,r,vi(r.type,t),n);break t}throw Error(a(306,r,""))}return e;case 0:return r=e.type,i=e.pendingProps,Ni(t,e,r,i=e.elementType===r?i:vi(r,i),n);case 1:return r=e.type,i=e.pendingProps,Hi(t,e,r,i=e.elementType===r?i:vi(r,i),n);case 3:t:{if(Ji(e),null===t)throw Error(a(387));r=e.pendingProps,i=(s=e.memoizedState).element,Vn(t,e),ir(e,r,null,n);var o=e.memoizedState;if(r=o.element,q&&s.isDehydrated){if(s={element:r,isDehydrated:!1,cache:o.cache,pendingSuspenseBoundaries:o.pendingSuspenseBoundaries,transitions:o.transitions},e.updateQueue.baseState=s,e.memoizedState=s,256&e.flags){e=Ui(t,e,r,n,i=Si(Error(a(423)),e));break t}if(r!==i){e=Ui(t,e,r,n,i=Si(Error(a(424)),e));break t}for(q&&(fn=Nt(e.stateNode.containerInfo),dn=e,gn=!0,pn=null,An=!1),n=Mn(e,null,r,n),e.child=n;n;)n.flags=-3&n.flags|4096,n=n.sibling}else{if(Sn(),r===i){e=aa(t,e,n);break t}Li(t,e,r,n)}e=e.child}return e;case 5:return fr(e),null===t&&yn(e),r=e.type,i=e.pendingProps,s=null!==t?t.memoizedProps:null,o=i.children,N(r,i)?o=null:null!==s&&N(r,s)&&(e.flags|=32),Fi(t,e),Li(t,e,o,n),e.child;case 6:return null===t&&yn(e),null;case 13:return Zi(t,e,n);case 4:return cr(e,e.stateNode.containerInfo),r=e.pendingProps,null===t?e.child=Dn(e,null,r,n):Li(t,e,r,n),e.child;case 11:return r=e.type,i=e.pendingProps,Oi(t,e,r,i=e.elementType===r?i:vi(r,i),n);case 7:return Li(t,e,e.pendingProps,n),e.child;case 8:case 12:return Li(t,e,e.pendingProps.children,n),e.child;case 10:t:{if(r=e.type._context,i=e.pendingProps,s=e.memoizedProps,Fn(0,r,o=i.value),null!==s)if(Ye(s.value,o)){if(s.children===i.children&&!ce.current){e=aa(t,e,n);break t}}else for(null!==(s=e.child)&&(s.return=e);null!==s;){var l=s.dependencies;if(null!==l){o=s.child;for(var h=l.firstContext;null!==h;){if(h.context===r){if(1===s.tag){(h=Zn(-1,n&-n)).tag=2;var u=s.updateQueue;if(null!==u){var c=(u=u.shared).pending;null===c?h.next=h:(h.next=c.next,c.next=h),u.pending=h}}s.lanes|=n,null!==(h=s.alternate)&&(h.lanes|=n),Hn(s.return,n,e),l.lanes|=n;break}h=h.next}}else if(10===s.tag)o=s.type===e.type?null:s.child;else if(18===s.tag){if(null===(o=s.return))throw Error(a(341));o.lanes|=n,null!==(l=o.alternate)&&(l.lanes|=n),Hn(o,n,e),o=s.sibling}else o=s.child;if(null!==o)o.return=s;else for(o=s;null!==o;){if(o===e){o=null;break}if(null!==(s=o.sibling)){s.return=o.return,o=s;break}o=o.return}s=o}Li(t,e,i.children,n),e=e.child}return e;case 9:return i=e.type,r=e.pendingProps.children,jn(e,n),r=r(i=Jn(i)),e.flags|=1,Li(t,e,r,n),e.child;case 14:return i=vi(r=e.type,e.pendingProps),_i(t,e,r,i=vi(r.type,i),n);case 15:return Gi(t,e,e.type,e.pendingProps,n);case 17:return r=e.type,i=e.pendingProps,i=e.elementType===r?i:vi(r,i),ia(t,e),e.tag=1,ge(r)?(t=!0,me(e)):t=!1,jn(e,n),bi(e,r,i),Ei(e,r,i,n),ji(null,e,r,!0,t,n);case 19:return ra(t,e,n);case 22:return zi(t,e,n)}throw Error(a(156,e.tag))},e.attemptContinuousHydration=function(t){if(13===t.tag){var e=Xn(t,134217728);null!==e&&Ts(e,t,134217728,Rs()),yo(t,134217728)}},e.attemptDiscreteHydration=function(t){if(13===t.tag){var e=Xn(t,1);null!==e&&Ts(e,t,1,Rs()),yo(t,1)}},e.attemptHydrationAtCurrentPriority=function(t){if(13===t.tag){var e=Qs(t),n=Xn(t,e);null!==n&&Ts(n,t,e,Rs()),yo(t,e)}},e.attemptSynchronousHydration=function(t){switch(t.tag){case 3:var e=t.stateNode;if(e.current.memoizedState.isDehydrated){var n=xe(e.pendingLanes);0!==n&&(Te(e,1|n),Ds(e,ze()),!(6&ns)&&(ms(),Ve()))}break;case 13:zs(function(){var e=Xn(t,1);if(null!==e){var n=Rs();Ts(e,t,1,n)}}),yo(t,1)}},e.batchedUpdates=function(t,e){var n=ns;ns|=1;try{return t(e)}finally{0===(ns=n)&&(ms(),Xe&&Ve())}},e.createComponentSelector=function(t){return{$$typeof:Na,value:t}},e.createContainer=function(t,e,n,r,i,a,s){return po(t,e,!1,null,0,r,0,a,s)},e.createHasPseudoClassSelector=function(t){return{$$typeof:Ha,value:t}},e.createHydrationContainer=function(t,e,n,r,i,a,s,o,l){return(t=po(n,r,!0,t,0,a,0,o,l)).context=vo(null),n=t.current,(a=Zn(r=Rs(),i=Qs(n))).callback=null!=e?e:null,$n(n,a,i),t.current.lanes=i,Qe(t,i,r),Ds(t,r),t},e.createPortal=function(t,e,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:l,key:null==r?null:""+r,children:t,containerInfo:e,implementation:n}},e.createRoleSelector=function(t){return{$$typeof:ja,value:t}},e.createTestNameSelector=function(t){return{$$typeof:Ja,value:t}},e.createTextSelector=function(t){return{$$typeof:Ua,value:t}},e.deferredUpdates=function(t){var e=De,n=es.transition;try{return es.transition=null,De=16,t()}finally{De=e,es.transition=n}},e.discreteUpdates=function(t,e,n,r,i){var a=De,s=es.transition;try{return es.transition=null,De=1,t(e,n,r,i)}finally{De=a,es.transition=s,0===ns&&ms()}},e.findAllNodes=Va,e.findBoundingRects=function(t,e){if(!nt)throw Error(a(363));e=Va(t,e),t=[];for(var n=0;n<e.length;n++)t.push(it(e[n]));for(e=t.length-1;0<e;e--)for(var r=(n=t[e]).x,i=r+n.width,s=n.y,o=s+n.height,l=e-1;0<=l;l--)if(e!==l){var h=t[l],u=h.x,c=u+h.width,d=h.y,f=d+h.height;if(r>=u&&s>=d&&i<=c&&o<=f){t.splice(e,1);break}if(!(r!==u||n.width!==h.width||f<s||d>o)){d>s&&(h.height+=d-s,h.y=s),f<o&&(h.height=o-d),t.splice(e,1);break}if(!(s!==d||n.height!==h.height||c<r||u>i)){u>r&&(h.width+=u-r,h.x=r),c<i&&(h.width=i-u),t.splice(e,1);break}}return t},e.findHostInstance=mo,e.findHostInstanceWithNoPortals=function(t){return null===(t=null!==(t=I(t))?P(t):null)?null:t.stateNode},e.findHostInstanceWithWarning=function(t){return mo(t)},e.flushControlled=function(t){var e=ns;ns|=1;var n=es.transition,r=De;try{es.transition=null,De=1,t()}finally{De=r,es.transition=n,0===(ns=e)&&(ms(),Ve())}},e.flushPassiveEffects=Vs,e.flushSync=zs,e.focusWithin=function(t,e){if(!nt)throw Error(a(363));for(e=Ka(t=Wa(t),e),e=Array.from(e),t=0;t<e.length;){var n=e[t++];if(!st(n)){if(5===n.tag&&lt(n.stateNode))return!0;for(n=n.child;null!==n;)e.push(n),n=n.sibling}}return!1},e.getCurrentUpdatePriority=function(){return De},e.getFindAllNodesFailureDescription=function(t,e){if(!nt)throw Error(a(363));var n=0,r=[];t=[Wa(t),0];for(var i=0;i<t.length;){var s=t[i++],o=t[i++],l=e[o];if((5!==s.tag||!st(s))&&(Xa(s,l)&&(r.push(qa(l)),++o>n&&(n=o)),o<e.length))for(s=s.child;null!==s;)t.push(s,o),s=s.sibling}if(n<e.length){for(t=[];n<e.length;n++)t.push(qa(e[n]));return"findAllNodes was able to match part of the selector:\n "+r.join(" > ")+"\n\nNo matching component was found for:\n "+t.join(" > ")}return null},e.getPublicRootInstance=function(t){return(t=t.current).child?5===t.child.tag?T(t.child.stateNode):t.child.stateNode:null},e.injectIntoDevTools=function(t){if(t={bundleType:t.bundleType,version:t.version,rendererPackageName:t.rendererPackageName,rendererConfig:t.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setErrorHandler:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:s.ReactCurrentDispatcher,findHostInstanceByFiber:bo,findFiberByHostInstance:t.findFiberByHostInstance||wo,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null,reconcilerVersion:"18.3.1"},"undefined"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)t=!1;else{var e=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(e.isDisabled||!e.supportsFiber)t=!0;else{try{Je=e.inject(t),Ue=e}catch(t){}t=!!e.checkDCE}}return t},e.isAlreadyRendering=function(){return!1},e.observeVisibleRects=function(t,e,n,r){if(!nt)throw Error(a(363));t=Va(t,e);var i=ht(t,n,r).disconnect;return{disconnect:function(){i()}}},e.registerMutableSourceForHydration=function(t,e){var n=e._getVersion;n=n(e._source),null==t.mutableSourceEagerHydrationData?t.mutableSourceEagerHydrationData=[e,n]:t.mutableSourceEagerHydrationData.push(e,n)},e.runWithPriority=function(t,e){var n=De;try{return De=t,e()}finally{De=n}},e.shouldError=function(){return null},e.shouldSuspend=function(){return!1},e.updateContainer=function(t,e,n,r){var i=e.current,a=Rs(),s=Qs(i);return n=vo(n),null===e.context?e.context=n:e.pendingContext=n,(e=Zn(a,s)).payload={element:t},null!==(r=void 0===r?null:r)&&(e.callback=r),null!==(t=$n(i,e,s))&&(Ts(t,i,s,a),tr(t,i,s)),s},e};var ir=tr.exports,ar={exports:{}},sr={ConcurrentRoot:1,ContinuousEventPriority:4,DefaultEventPriority:16,DiscreteEventPriority:1,IdleEventPriority:536870912,LegacyRoot:0};ar.exports=sr;const or={children:!0,ref:!0,key:!0,style:!0,forwardedRef:!0,unstable_applyCache:!0,unstable_applyDrawHitFromCache:!0};let lr=!1,hr=!1;const ur=".react-konva-event",cr={};function dr(t,e,n=cr){if(!lr&&"zIndex"in e&&(console.warn('ReactKonva: You are using "zIndex" attribute for a Konva node.\nreact-konva may get confused with ordering. Just define correct order of elements in your render function of a component.\nFor more info see: https://github.com/konvajs/react-konva/issues/194\n'),lr=!0),!hr&&e.draggable){var r=void 0!==e.x||void 0!==e.y,i=e.onDragEnd||e.onDragMove;r&&!i&&(console.warn("ReactKonva: You have a Konva node with draggable = true and position defined but no onDragMove or onDragEnd events are handled.\nPosition of a node will be changed during drag&drop, so you should update state of the react app as well.\nConsider to add onDragMove or onDragEnd events.\nFor more info see: https://github.com/konvajs/react-konva/issues/256\n"),hr=!0)}for(var a in n)if(!or[a]){var s="on"===a.slice(0,2),o=n[a]!==e[a];if(s&&o)"content"===(f=a.substr(2).toLowerCase()).substr(0,7)&&(f="content"+f.substr(7,1).toUpperCase()+f.substr(8)),t.off(f,n[a]);!e.hasOwnProperty(a)&&t.setAttr(a,void 0)}var l=e._useStrictMode,h={},u=!1;const c={};for(var a in e)if(!or[a]){s="on"===a.slice(0,2);var d=n[a]!==e[a];if(s&&d)"content"===(f=a.substr(2).toLowerCase()).substr(0,7)&&(f="content"+f.substr(7,1).toUpperCase()+f.substr(8)),e[a]&&(c[f]=e[a]);!s&&(e[a]!==n[a]||l&&e[a]!==t.getAttr(a))&&(u=!0,h[a]=e[a])}for(var f in u&&(t.setAttrs(h),fr(t)),c)t.on(f+ur,c[f])}function fr(t){if(!$.autoDrawEnabled){var e=t.getLayer()||t.getStage();e&&e.batchDraw()}}const gr={},Ar={};Ke.Node.prototype._applyProps=dr;const pr=setTimeout,vr=clearTimeout;function mr(t,e,n){e._remove(),t.add(e),e.setZIndex(n.getZIndex()),fr(t)}var Cr,yr,br=Object.freeze({__proto__:null,appendInitialChild:function(t,e){"string"!=typeof e?(t.add(e),fr(t)):console.error(`Do not use plain text as child of Konva.Node. You are using text: ${e}`)},createInstance:function(t,e,n){let r=Ke[t];r||(console.error(`Konva has no node with the type ${t}. Group will be used instead. If you use minimal version of react-konva, just import required nodes into Konva: "import "konva/lib/shapes/${t}" If you want to render DOM elements as part of canvas tree take a look into this demo: https://konvajs.github.io/docs/react/DOM_Portal.html`),r=Ke.Group);const i={},a={};for(var s in e){"on"===s.slice(0,2)?a[s]=e[s]:i[s]=e[s]}const o=new r(i);return dr(o,a),o},createTextInstance:function(t,e,n){console.error(`Text components are not supported for now in ReactKonva. Your text is: "${t}"`)},finalizeInitialChildren:function(t,e,n){return!1},getPublicInstance:function(t){return t},prepareForCommit:function(){return null},preparePortalMount:function(){return null},prepareUpdate:function(t,e,n,r){return Ar},resetAfterCommit:function(){},resetTextContent:function(t){},shouldDeprioritizeSubtree:function(t,e){return!1},getRootHostContext:function(){return gr},getChildHostContext:function(){return gr},scheduleTimeout:pr,cancelTimeout:vr,noTimeout:-1,shouldSetTextContent:function(t,e){return!1},isPrimaryRenderer:!1,warnsIfNotActing:!0,supportsMutation:!0,appendChild:function(t,e){e.parent===t?e.moveToTop():t.add(e),fr(t)},appendChildToContainer:function(t,e){e.parent===t?e.moveToTop():t.add(e),fr(t)},insertBefore:mr,insertInContainerBefore:function(t,e,n){mr(t,e,n)},removeChild:function(t,e){e.destroy(),e.off(ur),fr(t)},removeChildFromContainer:function(t,e){e.destroy(),e.off(ur),fr(t)},commitTextUpdate:function(t,e,n){console.error(`Text components are not yet supported in ReactKonva. You text is: "${n}"`)},commitMount:function(t,e,n){},commitUpdate:function(t,e,n,r,i){dr(t,i,r)},hideInstance:function(t){t.hide(),fr(t)},hideTextInstance:function(t){},unhideInstance:function(t,e){(null==e.visible||e.visible)&&t.show()},unhideTextInstance:function(t,e){},clearContainer:function(t){},detachDeletedInstance:function(){},getCurrentEventPriority:()=>ar.exports.DefaultEventPriority,now:er.exports.unstable_now,idlePriority:er.exports.unstable_IdlePriority,run:er.exports.unstable_runWithPriority}),wr=Object.defineProperty,Er=Object.defineProperties,Sr=Object.getOwnPropertyDescriptors,xr=Object.getOwnPropertySymbols,Ir=Object.prototype.hasOwnProperty,kr=Object.prototype.propertyIsEnumerable,Br=(t,e,n)=>e in t?wr(t,e,{enumerable:!0,configurable:!0,writable:!0,value:n}):t[e]=n,Pr=(t,e)=>{for(var n in e||(e={}))Ir.call(e,n)&&Br(t,n,e[n]);if(xr)for(var n of xr(e))kr.call(e,n)&&Br(t,n,e[n]);return t};function Rr(t,e,n){if(!t)return;if(!0===n(t))return t;let r=e?t.return:t.child;for(;r;){const t=Rr(r,e,n);if(t)return t;r=e?null:r.sibling}}function Qr(t){try{return Object.defineProperties(t,{_currentRenderer:{get:()=>null,set(){}},_currentRenderer2:{get:()=>null,set(){}}})}catch(e){return t}}"undefined"==typeof window||!(null==(Cr=window.document)?void 0:Cr.createElement)&&"ReactNative"!==(null==(yr=window.navigator)?void 0:yr.product)?o.exports.useEffect:o.exports.useLayoutEffect;const Tr=console.error;console.error=function(){const t=[...arguments].join("");if(!(null==t?void 0:t.startsWith("Warning:"))||!t.includes("useContext"))return Tr.apply(this,arguments);console.error=Tr};const Dr=Qr(o.exports.createContext(null));class Mr extends o.exports.Component{render(){return o.exports.createElement(Dr.Provider,{value:this._reactInternals},this.props.children)}}function Lr(){const t=function(){const t=o.exports.useContext(Dr);if(null===t)throw new Error("its-fine: useFiber must be called within a <FiberProvider />!");const e=o.exports.useId();return o.exports.useMemo(()=>{for(const n of[t,null==t?void 0:t.alternate]){if(!n)continue;const t=Rr(n,!1,t=>{let n=t.memoizedState;for(;n;){if(n.memoizedState===e)return!0;n=n.next}});if(t)return t}},[t,e])}(),[e]=o.exports.useState(()=>new Map);e.clear();let n=t;for(;n;){if(n.type&&"object"==typeof n.type){const t=void 0===n.type._context&&n.type.Provider===n.type?n.type:n.type._context;t&&t!==Dr&&!e.has(t)&&e.set(t,o.exports.useContext(Qr(t)))}n=n.return}return e}function Or(){const t=Lr();return o.exports.useMemo(()=>Array.from(t.keys()).reduce((e,n)=>r=>{return o.exports.createElement(e,null,o.exports.createElement(n.Provider,(i=Pr({},r),a={value:t.get(n)},Er(i,Sr(a)))));var i,a},t=>o.exports.createElement(Mr,Pr({},t))),[t])}const _r=t=>{const e=j.useRef(null),n=j.useRef(null),r=j.useRef(null),i=function(t){const e=j.useRef({});return j.useLayoutEffect(()=>{e.current=t}),j.useLayoutEffect(()=>()=>{e.current={}},[]),e.current}(t),a=Or(),s=e=>{const{forwardedRef:n}=t;n&&("function"==typeof n?n(e):n.current=e)};return j.useLayoutEffect(()=>(n.current=new Ke.Stage({width:t.width,height:t.height,container:e.current}),s(n.current),r.current=Fr.createContainer(n.current,ar.exports.LegacyRoot,!1,null),Fr.updateContainer(j.createElement(a,{},t.children),r.current),()=>{Ke.isBrowser&&(s(null),Fr.updateContainer(null,r.current,null),n.current.destroy())}),[]),j.useLayoutEffect(()=>{s(n.current),dr(n.current,t,i),Fr.updateContainer(j.createElement(a,{},t.children),r.current,null)}),j.createElement("div",{ref:e,id:t.id,accessKey:t.accessKey,className:t.className,role:t.role,style:t.style,tabIndex:t.tabIndex,title:t.title})},Gr="Group",zr="Rect",Fr=ir(br);Fr.injectIntoDevTools({findHostInstanceByFiber:()=>null,bundleType:0,version:j.version,rendererPackageName:"react-konva"});const Nr=j.forwardRef((t,e)=>j.createElement(Mr,{},j.createElement(_r,{...t,forwardedRef:e}))),Hr=r;class jr extends j.Component{constructor(t){super(t),jr.prototype.__init.call(this),this.state={image:null,showTooltip:!1}}componentDidMount(){this.loadImage()}componentDidUpdate(t){t.src!==this.props.src&&this.loadImage()}componentWillUnmount(){this.image.removeEventListener("load",this.handleLoad)}loadImage(){const{src:t}=this.props;this.image=new window.Image,this.image.src=t,this.image.addEventListener("load",this.handleLoad)}__init(){this.handleLoad=()=>{this.setState({image:this.image})}}render(){const{x:t,y:e,tooltip:n}=this.props,{image:r,showTooltip:i}=this.state;return j.createElement(Gr,null,j.createElement("Image",{width:20,height:20,x:t,y:e,image:r,onMouseEnter:()=>this.setState({showTooltip:!0}),onMouseLeave:()=>this.setState({showTooltip:!1})}),i&&n&&j.createElement("Label",{x:t-30,y:e+25},j.createElement("Tag",{fill:"white",cornerRadius:5,opacity:.9}),j.createElement("Text",{text:n,padding:5})))}}jr.propTypes={src:Hr.string.isRequired,x:Hr.number.isRequired,y:Hr.number.isRequired,tooltip:Hr.string.isRequired};var Jr="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAACAKADAAQAAAABAAACAAAAAAD4wtiGAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAABAAElEQVR4Ae2dCZwcZZn/n7e6e45kZjJJCIFwDSThTCAQrnAOIORAIICEI+RiEXCVU0QOkQRFRV1h19UVrwABdEH/QZEcyDHguuq60SiKq4AGRZArmStzdXe9/+etnurpnumjuuvoOn7Fh3R1Vb3X96np5/feRDhAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAARAAAR8SkD4NF/IFgiAQGECgiTfeOwCjaa8I+hPPYIGd9WmtqbjqYa61sEBOTEe1ydLKXclKVqFEHtIIZuETnWSJP+vNRPJiXzeIEiLqySEkLpOQhdS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",Ur="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AAAABGdBTUEAALGPC/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAhGVYSWZNTQAqAAAACAAFARIAAwAAAAEAAQAAARoABQAAAAEAAABKARsABQAAAAEAAABSASgAAwAAAAEAAgAAh2kABAAAAAEAAABaAAAAAAAAAEgAAAABAAAASAAAAAEAA6ABAAMAAAABAAEAAKACAAQAAAABAAACAKADAAQAAAABAAACAAAAAAD4wtiGAAAACXBIWXMAAAsTAAALEwEAmpwYAAABWWlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iWE1QIENvcmUgNS40LjAiPgogICA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPgogICAgICA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgpMwidZAABAAElEQVR4AeydB5wV1fXHf++9bcAuLFWQtlZAFLAkJtZdUeyKvcQC9o5RozGJLbYUjUSj/mMSFbuowd7jgiUaK11UVEQRkLa9v/f+5w476+6y++qUOzO/+Xx2570p9577PffNOffcMgA3EiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABEiABXQiEdBGEcpAACXRPoLwYxWiQvxyUICR7oDgcQx/1OR6SYxs347jx8cdjxtd4fOM9rdcl21WEQqhod1EF4m3f1fGK0MbvxvFYGJVyfplxfQuWlTW0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";const Yr=r;class Wr extends j.Component{constructor(t){super(t),Wr.prototype.__init.call(this),Wr.prototype.__init2.call(this),Wr.prototype.__init3.call(this),Wr.prototype.__init4.call(this),Wr.prototype.__init5.call(this),this.state={hovered:!1}}__init(){this.handleClick=t=>{const{onClick:e,id:n,selected:r,disabled:i}=this.props;i||(t.cancelBubble=!0,e({id:n,selected:!r,selector:"Mouse"}))}}__init2(){this.handleMouseEnter=()=>{const{disabled:t}=this.props;t||(document.body.style.cursor="pointer"),this.setState({hovered:!0})}}__init3(){this.handleMouseLeave=()=>{document.body.style.cursor="default",this.setState({hovered:!1})}}__init4(){this.getEvaluateOutlineColor=(t,e,n)=>e?"green":t?n:"red"}__init5(){this.getOutlineWidth=(t,e,n,r)=>n||!n&&!t&&e?r:0}render(){const{height:t,hotspotColor:e,hoverOutlineColor:n,selectedHotspotColor:r,isCorrect:i,isEvaluateMode:a,outlineColor:s,selected:o,width:l,x:h,y:u,evaluateText:c,strokeWidth:d,scale:f,markAsCorrect:g,showCorrectEnabled:A}=this.props,p=a?this.getEvaluateOutlineColor(i,g,s):s,v=this.getOutlineWidth(A,o,g,d),m=h+l/2-10,C=u+t/2-10;let y;A?(o&&i||!o&&!i)&&(y=Jr):o?y=i?Jr:Ur:i||(y=Ur);const{hovered:b}=this.state,w=b&&n;return j.createElement(Gr,{scaleX:f,scaleY:f},w&&j.createElement(zr,{x:h,y:u,width:l,height:t,stroke:o?"transparent":n,strokeWidth:d,listening:!1}),j.createElement(zr,{x:h,y:u,width:l,height:t,fill:o&&r?r:e,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:w&&!o?"transparent":p,strokeWidth:w&&!o?0:v,onMouseLeave:this.handleMouseLeave,onMouseEnter:this.handleMouseEnter,opacity:.5,cursor:"pointer"}),a&&y?j.createElement(jr,{src:y,x:m,y:C,tooltip:c}):null)}}Wr.propTypes={height:Yr.number.isRequired,hotspotColor:Yr.string.isRequired,id:Yr.string.isRequired,isCorrect:Yr.oneOfType([Yr.bool,Yr.string]),isEvaluateMode:Yr.bool.isRequired,hoverOutlineColor:Yr.string,disabled:Yr.bool.isRequired,onClick:Yr.func.isRequired,outlineColor:Yr.string.isRequired,selected:Yr.bool.isRequired,width:Yr.number.isRequired,x:Yr.number.isRequired,y:Yr.number.isRequired,evaluateText:Yr.string,strokeWidth:Yr.number,scale:Yr.number,selectedHotspotColor:Yr.string,markAsCorrect:Yr.bool.isRequired,showCorrectEnabled:Yr.bool.isRequired},Wr.defaultProps={isCorrect:!1,evaluateText:null,strokeWidth:5,scale:1};const Xr=r;class qr extends j.Component{constructor(t){super(t),qr.prototype.__init.call(this),qr.prototype.__init2.call(this),qr.prototype.__init3.call(this),qr.prototype.__init4.call(this),qr.prototype.__init5.call(this),qr.prototype.__init6.call(this),qr.prototype.__init7.call(this),this.state={hovered:!1}}__init(){this.getPolygonCenter=t=>{const e=t.map(({x:t})=>t),n=t.map(({y:t})=>t);return[(Math.min.apply(null,e)+Math.max.apply(null,e))/2,(Math.min.apply(null,n)+Math.max.apply(null,n))/2]}}__init2(){this.parsePointsForKonva=t=>{const e=[];return t.forEach(({x:t,y:n})=>{e.push(t),e.push(n)}),e}}__init3(){this.handleClick=t=>{const{onClick:e,id:n,selected:r,disabled:i}=this.props;i||(t.cancelBubble=!0,e({id:n,selected:!r,selector:"Mouse"}))}}__init4(){this.handleMouseEnter=()=>{const{disabled:t}=this.props;t||(document.body.style.cursor="pointer"),this.setState({hovered:!0})}}__init5(){this.handleMouseLeave=()=>{document.body.style.cursor="default",this.setState({hovered:!1})}}__init6(){this.getEvaluateOutlineColor=(t,e,n)=>e?"green":t?n:"red"}__init7(){this.getOutlineWidth=(t,e,n,r)=>n||!n&&!t&&e?r:0}render(){const{hotspotColor:t,isCorrect:e,isEvaluateMode:n,hoverOutlineColor:r,outlineColor:i,selected:a,points:s,evaluateText:o,strokeWidth:l,scale:h,markAsCorrect:u,selectedHotspotColor:c,showCorrectEnabled:d}=this.props,{hovered:f}=this.state,g=n?this.getEvaluateOutlineColor(e,u,i):i,A=this.getOutlineWidth(d,a,u,l),p=this.parsePointsForKonva(s),v=this.getPolygonCenter(s),m=v[0],C=v[1];let y;d?(a&&e||!a&&!e)&&(y=Jr):a?y=e?Jr:Ur:e||(y=Ur);const b=f&&r,w=p.filter((t,e)=>e%2==0),E=p.filter((t,e)=>e%2!=0),S=Math.min(...w),x=Math.max(...w),I=Math.min(...E),k=S,B=I,P=x-S,R=Math.max(...E)-I;return j.createElement(Gr,{scaleX:h,scaleY:h},b&&j.createElement(zr,{x:k,y:B,width:P,height:R,stroke:a?"transparent":r,strokeWidth:l}),j.createElement("Line",{points:p,closed:!0,fill:a&&c?c:t,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:b&&!a?"transparent":g,strokeWidth:b&&!a?0:A,onMouseLeave:this.handleMouseLeave,onMouseEnter:this.handleMouseEnter,opacity:.5,cursor:"pointer",position:"relative"}),n&&y?j.createElement(jr,{src:y,x:m,y:C,tooltip:o}):null)}}qr.propTypes={hotspotColor:Xr.string.isRequired,id:Xr.string.isRequired,isCorrect:Xr.bool.isRequired,isEvaluateMode:Xr.bool.isRequired,hoverOutlineColor:Xr.string,disabled:Xr.bool.isRequired,onClick:Xr.func.isRequired,outlineColor:Xr.string.isRequired,points:Xr.array.isRequired,selected:Xr.bool.isRequired,evaluateText:Xr.string,selectedHotspotColor:Xr.string,strokeWidth:Xr.number,scale:Xr.number,markAsCorrect:Xr.bool.isRequired,showCorrectEnabled:Xr.bool.isRequired},qr.defaultProps={evaluateText:null,strokeWidth:5,scale:1};const Kr=r;class Vr extends j.Component{constructor(t){super(t),Vr.prototype.__init.call(this),Vr.prototype.__init2.call(this),Vr.prototype.__init3.call(this),Vr.prototype.__init4.call(this),Vr.prototype.__init5.call(this),this.state={hovered:!1}}__init(){this.handleClick=t=>{const{onClick:e,id:n,selected:r,disabled:i}=this.props;i||(t.cancelBubble=!0,e({id:n,selected:!r,selector:"Mouse"}))}}__init2(){this.handleMouseEnter=()=>{const{disabled:t}=this.props;t||(document.body.style.cursor="pointer"),this.setState({hovered:!0})}}__init3(){this.handleMouseLeave=()=>{document.body.style.cursor="default",this.setState({hovered:!1})}}__init4(){this.getEvaluateOutlineColor=(t,e,n)=>e?"green":t?n:"red"}__init5(){this.getOutlineWidth=(t,e,n,r)=>n||!n&&!t&&e?r:0}render(){const{radius:t,hotspotColor:e,isCorrect:n,isEvaluateMode:r,hoverOutlineColor:i,outlineColor:a,selected:s,x:o,y:l,evaluateText:h,strokeWidth:u,scale:c,markAsCorrect:d,selectedHotspotColor:f,showCorrectEnabled:g}=this.props,{hovered:A}=this.state,p=r?this.getEvaluateOutlineColor(n,d,a):a,v=this.getOutlineWidth(g,s,d,u),m=o-10,C=l-10;let y;g?(s&&n||!s&&!n)&&(y=Jr):s?y=n?Jr:Ur:n||(y=Ur);const b=A&&i;return j.createElement(Gr,{scaleX:c,scaleY:c},b&&j.createElement(zr,{x:o-t,y:l-t,width:2*t,height:2*t,stroke:s?"transparent":i,strokeWidth:u}),j.createElement("Circle",{radius:t,fill:s&&f?f:e,onClick:this.handleClick,onTap:this.handleClick,draggable:!1,stroke:b&&!s?"transparent":p,strokeWidth:b&&!s?0:v,onMouseLeave:this.handleMouseLeave,onMouseEnter:this.handleMouseEnter,x:o,y:l,opacity:.5}),r&&y?j.createElement(jr,{src:y,x:m,y:C,tooltip:h}):null)}}Vr.propTypes={radius:Kr.number.isRequired,hotspotColor:Kr.string.isRequired,id:Kr.string.isRequired,isCorrect:Kr.oneOfType([Kr.bool,Kr.string]),isEvaluateMode:Kr.bool.isRequired,disabled:Kr.bool.isRequired,hoverOutlineColor:Kr.string,onClick:Kr.func.isRequired,outlineColor:Kr.string.isRequired,selected:Kr.bool.isRequired,x:Kr.number.isRequired,y:Kr.number.isRequired,evaluateText:Kr.string,strokeWidth:Kr.number,scale:Kr.number,selectedHotspotColor:Kr.string,markAsCorrect:Kr.bool.isRequired,showCorrectEnabled:Kr.bool.isRequired},Vr.defaultProps={isCorrect:!1,evaluateText:null,strokeWidth:5,scale:1};const Zr=r,{styled:$r}=i,ti=$r("div")(({theme:t})=>({marginTop:t.spacing(2),marginBottom:t.spacing(2),position:"relative",background:t.palette.common.white,border:`${t.spacing(1)} solid ${t.palette.common.white}`,width:"fit-content"})),ei=$r("div")({position:"relative",width:"fit-content"}),ni=$r("img")({alignItems:"center",display:"flex",justifyContent:"center"}),ri=$r(Nr)({left:0,top:0,position:"absolute"});class ii extends j.Component{constructor(...t){super(...t),ii.prototype.__init.call(this),ii.prototype.__init2.call(this)}isSelected(t){return!!this.props.session.answers.filter(e=>e.id===t.id)[0]}__init(){this.correctness=(t,e)=>t?e:!e}__init2(){this.getEvaluateText=(t,e)=>e&&t?"Correctly\nselected":e&&!t?"Should not have\nbeen selected":!e&&t?"Should have\nbeen selected":null}render(){const{dimensions:{width:t,height:e},disabled:n,hotspotColor:r,hoverOutlineColor:i,selectedHotspotColor:a,imageUrl:s,isEvaluateMode:o,outlineColor:l,onSelectChoice:h,shapes:{rectangles:u=[],polygons:c=[],circles:d=[]},scale:f,strokeWidth:g,showCorrect:A}=this.props,p=t*f,v=e*f;return j.createElement(ti,{style:{padding:g/2}},s?j.createElement(ei,null,j.createElement(ni,{alt:"hotspot-image",height:"auto",src:s,style:{width:p,height:v,maxWidth:p,maxHeight:v}})):null,j.createElement(ri,{height:v+g,width:p+g,x:g/2,y:g/2},j.createElement("Layer",null,u.map(t=>{const e=this.isSelected(t),s=o?this.correctness(t.correct,e):void 0,u=o?this.getEvaluateText(t.correct,e):null,c=!!(o&&A&&t.correct);return j.createElement(Wr,{scale:f,isEvaluateMode:o,isCorrect:s,evaluateText:u,disabled:n,selected:e,height:t.height,hotspotColor:r,hoverOutlineColor:i,selectedHotspotColor:a,id:t.id,key:t.id,onClick:h,outlineColor:l,width:t.width,x:t.x,y:t.y,strokeWidth:g,markAsCorrect:c,showCorrectEnabled:A})}),c.map(t=>{const e=this.isSelected(t),s=o?this.correctness(t.correct,e):void 0,u=o?this.getEvaluateText(t.correct,e):null,c=!!(o&&A&&t.correct);return j.createElement(qr,{scale:f,isEvaluateMode:o,isCorrect:!!s,evaluateText:u,disabled:n,selected:e,hotspotColor:r,id:t.id,key:t.id,onClick:h,outlineColor:l,points:t.points,strokeWidth:g,markAsCorrect:c,selectedHotspotColor:a,hoverOutlineColor:i,showCorrectEnabled:A})}),d.map(t=>{const e=this.isSelected(t),s=o?this.correctness(t.correct,e):void 0,u=o?this.getEvaluateText(t.correct,e):null,c=!!(o&&A&&t.correct);return j.createElement(Vr,{scale:f,isEvaluateMode:o,isCorrect:s,evaluateText:u,disabled:n,selected:e,radius:t.radius,hotspotColor:r,id:t.id,key:t.id,onClick:h,outlineColor:l,x:t.x,y:t.y,strokeWidth:g,markAsCorrect:c,selectedHotspotColor:a,hoverOutlineColor:i,showCorrectEnabled:A})}))))}}ii.propTypes={dimensions:Zr.object.isRequired,disabled:Zr.bool.isRequired,hotspotColor:Zr.string.isRequired,hoverOutlineColor:Zr.string,imageUrl:Zr.string.isRequired,isEvaluateMode:Zr.bool.isRequired,onSelectChoice:Zr.func.isRequired,outlineColor:Zr.string.isRequired,selectedHotspotColor:Zr.string,session:Zr.object.isRequired,shapes:Zr.object.isRequired,strokeWidth:Zr.number,scale:Zr.number,showCorrect:Zr.bool},ii.defaultProps={scale:1};const ai=r,si=a,{color:oi}=s,{Collapsible:li}=s,{hasText:hi}=s,{PreviewPrompt:ui}=s,{UiLayout:ci}=s,{hasMedia:di}=s,{styled:fi}=i;function gi(t){let e,n=t[0],r=1;for(;r<t.length;){const i=t[r],a=t[r+1];if(r+=2,("optionalAccess"===i||"optionalCall"===i)&&null==n)return;"access"===i||"optionalAccess"===i?(e=n,n=a(n)):"call"!==i&&"optionalCall"!==i||(n=a((...t)=>n.call(e,...t)),e=void 0)}return n}const Ai=fi(ci)({color:oi.text(),backgroundColor:oi.background(),position:"relative"}),pi=fi(li)(({theme:t})=>({marginBottom:t.spacing(2)}));class vi extends j.Component{constructor(t){super(t),vi.prototype.__init.call(this),this.state={showCorrect:!1,observer:null,scale:1}}componentDidMount(){this.observer=new MutationObserver(t=>{t.forEach(()=>{const t=gi([document,"access",t=>t.getElementById,"call",t=>t("question-container"),"optionalAccess",t=>t.style,"optionalAccess",t=>t.cssText]),e=gi([t,"optionalAccess",t=>t.substring,"call",e=>e(t.indexOf("--pie-zoom")+11,t.lastIndexOf("%"))]),n=gi([e,"optionalAccess",t=>t.replace,"call",t=>t(/\s/g,"")]);if(n){parseFloat(n)/100!==this.state.scale&&this.setState({scale:parseFloat(n)/100})}else n||1===this.state.scale||this.setState({scale:1})})});const t=document.getElementById("question-container");t&&this.observer.observe(t,{attributes:!0,attributeFilter:["style"]})}componentWillUnmount(){gi([this,"access",t=>t.observer,"optionalAccess",t=>t.disconnect,"call",t=>t()])}__init(){this.onToggle=()=>{const{showCorrect:t}=this.state;this.setState({showCorrect:!t})}}render(){const{session:t,model:{disabled:e,extraCSSRules:n,imageUrl:r,prompt:i,mode:a,multipleCorrect:s,shapes:o,outlineColor:l,hotspotColor:h,hoverOutlineColor:u,selectedHotspotColor:c,dimensions:d,rationale:f,teacherInstructions:g,strokeWidth:A,responseCorrect:p,language:v,fontSizeFactor:m,autoplayAudioEnabled:C,customAudioButton:y},onSelectChoice:b}=this.props,{showCorrect:w}=this.state,E="evaluate"===a,S=E&&!p,x=f&&(hi(f)||di(f)),I=g&&(hi(g)||di(g));return j.createElement(Ai,{extraCSSRules:n,id:"main-container",fontSizeFactor:m},I&&j.createElement(pi,{labels:{hidden:"Show Teacher Instructions",visible:"Hide Teacher Instructions"}},j.createElement(ui,{className:"prompt",prompt:g})),i&&j.createElement(ui,{className:"prompt",prompt:i,autoplayAudioEnabled:C,customAudioButton:y}),S&&j.createElement(si,{show:S,toggled:w,onToggle:this.onToggle.bind(this),language:v}),r?j.createElement(ii,{isEvaluateMode:E,session:t,dimensions:d,imageUrl:r,hotspotColor:h,hoverOutlineColor:u,selectedHotspotColor:c,multipleCorrect:s,outlineColor:l,onSelectChoice:b,shapes:o,disabled:e,strokeWidth:A,scale:this.state.scale,showCorrect:w}):null,x&&j.createElement(li,{labels:{hidden:"Show Rationale",visible:"Hide Rationale"}},j.createElement(ui,{className:"prompt",prompt:f})))}}function mi(t,e){t.audioStartTime=t.audioStartTime||e.audioStartTime,t.audioEndTime=t.audioEndTime||e.audioEndTime,!t.waitTime&&t.audioStartTime&&t.audioEndTime&&(t.waitTime=t.audioEndTime-t.audioStartTime)}vi.propTypes={model:ai.object.isRequired,onSelectChoice:ai.func.isRequired,session:ai.object.isRequired};const{renderMath:Ci}=t,{EnableAudioAutoplayImage:yi}=s;class bi extends HTMLElement{constructor(){super(),this._model=null,this._session=null,this._audioInitialized=!1,this.audioComplete=!1,this._root=null}set model(t){this._model=t,this.dispatchEvent(new X(this.tagName.toLowerCase(),this.isComplete(),!!this._model)),this._audioInitialized=!1,this._render()}isComplete(){if(!this._session||!this._session.answers)return!1;const{autoplayAudioEnabled:t,completeAudioEnabled:e}=this._model||{},n=this;if(t&&e&&!this.audioComplete&&n){const t=n.querySelector("audio"),e=t&&t.closest("#preview-prompt");if(t&&e)return!1}return!!Array.isArray(this._session.answers)&&this._session.answers.length>0}set session(t){t&&!t.answers&&(t.answers=[]),this._session=t,this._render()}get session(){return this._session}onSelectChoice(t){!function(t,e,n){const{id:r,selected:i}=n,{multipleCorrect:a}=e||{};if(t.answers=t.answers||[],i){const e={id:r};a?t.answers.push(e):t.answers=[e],t.selector=n.selector}else t.answers=t.answers.filter(t=>t.id!==r)}(this._session,this._model,t),this.dispatchEvent(new K(this.tagName.toLowerCase(),this.isComplete())),this._render()}_createAudioInfoToast(){const t=document.createElement("div");t.id="play-audio-info",Object.assign(t.style,{position:"absolute",top:0,width:"100%",height:"100%",display:"flex",justifyContent:"center",alignItems:"center",background:"white",zIndex:"1000",cursor:"pointer"});const e=document.createElement("img");return e.src=yi,e.alt="Click anywhere to enable audio autoplay",e.width=500,e.height=300,t.appendChild(e),t}connectedCallback(){this._render();new MutationObserver((t,e)=>{t.forEach(t=>{if("childList"===t.type){if(this._audioInitialized)return;const t=this.querySelector("audio"),n=t&&t.closest("#preview-prompt");if(!this._model)return;if(!this._model.autoplayAudioEnabled)return;if(t&&!n)return;if(!t)return;const r=this._createAudioInfoToast(),i=this.querySelector("#main-container"),a=()=>{this.querySelector("#play-audio-info")&&(t.play(),i.removeChild(r)),document.removeEventListener("click",a)};setTimeout(()=>{t.paused&&!this.querySelector("#play-audio-info")?(i.appendChild(r),document.addEventListener("click",a)):document.removeEventListener("click",a)},500);const s=()=>{mi(this._session,{audioStartTime:(new Date).getTime()});const e=this.querySelector("#play-audio-info");e&&i.removeChild(e),t.removeEventListener("playing",s)};t.addEventListener("playing",s);const o=()=>{mi(this._session,{audioEndTime:(new Date).getTime()});let{audioStartTime:e,audioEndTime:n,waitTime:r}=this._session;!r&&e&&n&&(this._session.waitTime=n-e),this.audioComplete=!0,this.dispatchEvent(new K(this.tagName.toLowerCase(),this.isComplete())),t.removeEventListener("ended",o)};t.addEventListener("ended",o),this._audio=t,this._handlePlaying=s,this._handleEnded=o,this._enableAudio=a,this._audioInitialized=!0,e.disconnect()}})}).observe(this,{childList:!0,subtree:!0})}_render(){if(this._model&&this._session){const t=j.createElement(vi,{model:this._model,session:this._session,onSelectChoice:this.onSelectChoice.bind(this)});this._root||(this._root=J(this)),this._root.render(t),queueMicrotask(()=>{Ci(this)})}}disconnectedCallback(){document.removeEventListener("click",this._enableAudio),this._audio&&(this._audio.removeEventListener("playing",this._handlePlaying),this._audio.removeEventListener("ended",this._handleEnded),this._audio=null),this._root&&this._root.unmount()}}export{bi as default};